Similar presentations:
Разработка искусственного интеллекта для решения рутинных задач
1.
Разработкаискусственного
интеллекта для решения
рутинных задач
Выполнили:
Машинников Алексей
Каракулова Екатерина
Руководитель:
Исупов Сергей
2.
АктуальностьГлобальная проблема
Глобальная цель
3.
Цели и задачиЦель: разработка робота, справляющегося с простейшей человеческой задачей.
Проблема: для решения человеческих задач необходимо обладать чувствами, интеллектом
и средствами воздействия на физические объекты, соответственно локально встают
проблемы: компьютерного зрения, компьютерного интеллекта, механических манипуляторов.
Задачи:
1. Выбор предмета разработки.
2. Изучение теории программирования, искусственного интеллекта, машиностроения.
3. Разработка алгоритмической базы для решаемой проблемы.
4. Разработка модели робота, решающего поставленную задачу при помощи
алгоритмической базы.
4.
Выбор объектаразработки
Выбор объекта разработки был обусловлен следующими критериями:
1. Возможность применить компьютерное зрение.
2. Возможность применить искусственный интеллект.
3. Возможность применения манипуляторов.
Руководствуясь критериями, в качестве объекта разработки мы выбрали
робота, самостоятельно играющего в игру «Words of wonders», где нам
понадобится:
1. Компьютерное зрение, чтобы определять текущее состояние игры.
2. Искусственный интеллект, чтобы определять слова для ввода.
3. Манипулятор для ввода действий игрока.
5.
Структура проектаРобот
Алгоритмы
Генераторы
Нейросети
6.
Главный алгоритм работыЗагрузка справочника слов
Пока не закончатся уровни:
Выбор следующего уровня
Решение уровня:
Снимок экрана
Распознавание доступных букв
Распознавание структуры кроссворда
Получение списка возможных слов
7.
Главный алгоритм работыУмный алгоритм перебора слов:
Выбор наиболее привлекательного слова
Ввод выбранного слов
Исключение лишних слов из списка согласно новому состоянию
Если умный алгоритм не справился:
Простой алгоритм перебора слов:
Ввод очередного слова из списка
Если простой алгоритм не справился:
Перебор всех возможных комбинаций:
Ввод очередной комбинации
8.
Сверточные нейросетиНейронные сети — это модели машинного обучения, состоящие из взаимосвязанных
узлов, которые обрабатывают информацию для принятия решений.
Один из видов нейронных сетей – сверточные нейросети, которыми мы пользовались
для распознавания изображений и их классификации.
Сверточные нейросети – это особый тип нейронных сетей, которые помогают
компьютерам видеть и понимать изображения и видео.
9.
Нейросети проектаДанные нейросети для проекта были разработаны самостоятельно:
Классификация
круга
Распознавание
буквы
Определение
границ
кроссворда
Распознавание
размера
кроссворда
Распознавание
типа ячейки
10.
Алгоритмы проектапоиск возможных слов
структура кроссворда
наполнение кроссворда
поиск лучшего слова
фильтрация кроссворда
аварийный перебор слов
11.
Генераторы проектаКруга с
буквами
Букв
Фонов
Ячеек
Кроссвордов
12.
МатрицаБазой для большинства алгоритмов является матрица кроссворда, получаемая
компьютерным зрением.
13.
Псевдо-робот«Псевдо-робот» - программа, управляющая положением курсора. Алгоритмическая база
разрабатывается на «псевдо-роботе», а телефон с игрой заменен на эмулятор.
Такое решение позволяет отладить алгоритмическую часть проекта, не сталкиваясь с
проблемами механики, которые так же являются частью проекта, но которыми на данном этапе
можно пренебречь.
На текущий момент «псевдо-робот» умеет управлять курсором мыши, а именно:
1. Передвигать его
2. Зажимать клавишу
3. Отпускать клавишу
С использованием таких простых команд реализована более сложная функция – ввод слова на
круге.
14.
Текущее состояние разработкиНа данный момент алгоритм умеет:
1. Проходить уровень умным алгоритмом.
2. Проходить уровень перебором возможных комбинаций.
3. Проходить уровень перебором подходящих слов.
Прохождение производится на эмуляторе при помощи
курсора мыши.
Гифка
15.
Показатели проекта в цифрах30 секунд
Робот тратит на решение одного уровня
8 дней
Потребуется для прохождения всей игры или 23380 уровней
10 человек
Решают столько же уровней за определенный промежуток
времени , сколько 1 робот
16.
Показатели проекта в цифрахРобот в среднем тратит 30 секунд на решение уровня.
При это робот угадывает с первого раза 4 из 5 слов.
В словаре робота более 300000 слов, которыми он может пользоваться.
В игре 23380 уровней, поэтому прохождение игры при идеальной работе алгоритма
займет 195 часов или 8 дней, при условии, что алгоритм будет работать непрерывно.
Средний человек решает средний уровень за 5 минут.
В среднем, алгоритм может решить столько же уровней за определенный
промежуток времени, сколько и 10 человек вместе.
17.
Дорожная картаПроект еще находится в стадии разработки, имеет промежуточные результаты, но не обладает
своей конечной формой. Для его завершения мы запланировали следующие работы:
Улучшение справочника: расширение допустимых слов, исключение некорректных слов, ввод
системы рейтинга слов
Отладка основного алгоритма: устранение неточностей, дообучение сетей
Разработка компьютерного зрения для определения служебных экранов: необходимая функция для
зацикливания работы программы
Разработка физической модели робота: игра будет запущена на телефоне, а управлять ей будет
рука-манипулятор при помощи стилуса
Запуск стрима: перманентная съемка процесса работы робота и ее трансляция на популярные
платформы, с целью популяризации нашей работы
18.
Применение нашего проектаНаш проект затрагивает такие моменты, как искусственный интеллект,
компьютерное зрение и робототехника. Нашу небольшую разработку далее
можно масштабировать на все возможные сферы, где присутствуют рутинные
работы. Например:
Компьютерное зрение, которое мы используем в проекте можно использовать
для распознавания текстов, предметов или объектов, классифицировать объекты
по различным признакам.
Алгоритмическую базу проекта можно использовать для различных других
программ и нейросетей, изучающих или прогнозирующих тексты, например таких
как ChatGPT.
Руку-манипулятор можно использовать практически в любой сфере – от
машиностроения до нейрохирургии или от игры в пинг-понг до 3d печати.
19.
ЗаключениеВ ходе работы мы написали множество алгоритмов на языке Python, обучили ряд
нейросетей, разработали прототип робота, который способен самостоятельно играть в
простую логическую игру.
Цели проекта частично достигнуты, однако сам проект еще находится в стадии
разработки.
На основе разработанного нами искусственного интеллекта могут быть разработаны ИИ
для других сфер, в которых требуется распознать текст и неким образом
проанализировать его или выполнить операции с ним.
Но самой большой ценностью данного проекта является опыт, который мы получаем в
процессе работы над ним. Создав текущее решение, перед нами откроются двери в мир
серьезных разработок и технологий.