Стратегия ведения игры роботом с применением системы технического зрения
Объектом исследования является задача по разработке стратегии ведения игры пасьянс “Паук”. Цель работы – разработка стратегии ведения игры и на её основе создание робота с применением технического зрения. В процессе исследования проводились поиски методов для стратегии ведения игры и распознавания карт на игровом поле.
В результате исследования разработаны алгоритмы ведения игры пасьянс “Паук” и распознавания карт на игровом поле, на основе которых создан робот на языке программирования С++.
Основные конструктивные, технологические и технико-эксплуатационные характеристики: робот состоит из камеры, ЭВМ и эмулятор устройства ввода . При разработке использовалось ПО: ОС Lubuntu 16.04, IDE Code Blocks 13.12 и Arduino IDE, библиотека OpenCV 3.2.
Введение ……………………………………………………………………………………………………… 14
1. Обзор литературы и научных источников…………………………………………………. 16
1.1 Обзор исследований о пасьянс «Паук» ………………………………………………… 16
1.1.1 История возникновения пасьянса «Паук» ……………………………………… 16
1.1.2 Правила игры пасьянса «Паук» …………………………………………………….. 16
1.1.3 Исследование игры пасьянса «Паук»…………………………………………….. 17
1.2 Техническое зрение …………………………………………………………………………….. 18
1.2.1 История компьютерного зрения ……………………………………………………. 20
1.2.2 Литературные источники по компьютерному зрению……………………. 21
1.2.3 Интернет источники по компьютерному зрению …………………………… 23
1.2.4 Материалы от вузов по компьютерному зрению……………………………. 23
1.2.5 Исследования распознавания игровых карт …………………………………… 24
2. Выбор методов и технических решений ……………………………………………………. 25
2.1 Выбор методов реализации выигрышной стратегии…………………………….. 25
2.1.1 Постановка задачи………………………………………………………………………… 25
2.1.2 Описание методов решения задачи ……………………………………………….. 26
2.1.3 Сравнение методов и выбор оптимального……………………………………. 29
2.2 Выбор методов распознавания на изображения …………………………………… 31
2.2.1 Постановка задачи распознавания на изображения ……………………….. 31
2.2.2 Описание методов распознавания на изображения ………………………… 32
2.2.3 Сравнение методов распознавания на изображения ………………………. 35
2.3 Выбор технологий эмуляции устройства ввода ……………………………………. 36
3. Реализация алгоритма и проектирование робота ………………………………………. 38
3.1 Выбор программного обеспечения для реализации алгоритмов …………… 38
3.2 Реализация алгоритма стратегии ведения игры ……………………………………. 40
3.2.1 Настройка среды разработки ………………………………………………………… 40
3.2.2 Разработка библиотек классов ………………………………………………………. 42
3.2.3 Реализация алгоритма …………………………………………………………………… 43
3.3 Реализация алгоритма распознавания карт на изображении …………………. 44
3.3.1 Установка библиотеки OpenCV…………………………………………………….. 44
3.3.2 Выбор камеры для проекта …………………………………………………………… 46
3.3.3 Обработка изображений и контурный анализ ……………………………….. 47
3.3.4 Распознавание карт по ключевым точкам и реализация алгоритма … 51
3.4 Разработка эмулятор клавиатуры ………………………………………………………… 52
3.4.1 Выбор аппаратной и программной платформы ……………………………… 52
3.4.2 Реализация аппаратной составляющей ………………………………………….. 53
3.4.2 Реализация программной составляющей ………………………………………. 55
3.5 Тестирование и оценка результатов …………………………………………………….. 56
4 Финансовый менеджмент, ресурсоэффективность и ресурсосбережение ……. 58
4.1 Предпроектный анализ ……………………………………………………………………….. 58
4.1.1 Потенциальные потребители результатов исследования ……………….. 58
4.1.2 Анализ конкурентных технических решений с позиции
ресурсоэффективности и ресурсосбережения………………………………………… 58
4.1.3 FAST-анализ ………………………………………………………………………………… 60
4.1.4 Диаграмма Исикава ………………………………………………………………………. 63
4.1.5 SWOT-анализ ……………………………………………………………………………….. 64
4.1.6 Оценка готовности проекта к коммерциализации ………………………….. 65
4.2 Инициация проекта …………………………………………………………………………….. 67
4.3 Планирование управления научно-техническим проектом…………………… 68
4.3.1 Иерархическая структура работ проекта ……………………………………….. 68
4.3.2 Контрольные события проекта ……………………………………………………… 69
4.3.3 План проекта ………………………………………………………………………………… 69
4.3.4 Бюджет научного исследования ……………………………………………………. 71
4.3.4.1 Расчет затрат на сырье, материалы, покупные изделия и
полуфабрикаты …………………………………………………………………………………. 71
4.3.4.2 Расчет затрат на специальное оборудование для научных работ 72
4.3.4.3 Основная заработная плата исполнителей темы ……………………… 73
4.3.4.4 Отчисления во внебюджетные фонды (страховые отчисления) .. 73
4.3.4.5 Накладные расходы ……………………………………………………………….. 74
4.3.4.6 Формирование бюджета затрат научно-исследовательского
проекта……………………………………………………………………………………………… 75
4.3.5 Организационная структура проекта …………………………………………….. 75
4.4 Определение ресурсной, финансовой, бюджетной, социальной и
экономической эффективности исследования …………………………………………… 76
4.4.1. Оценка научно-технического уровня НИР ……………………………………. 76
5. Социальная ответственность ……………………………………………………………………. 79
Введение ………………………………………………………………………………………………….. 79
5.1 Производственная безопасность …………………………………………………………. 79
5.1.1 Анализ выявленных вредных факторов при разработке и
эксплуатации проектируемого решения ………………………………………………… 79
5.1.1.1 Освещение……………………………………………………………………………… 80
5.1.1.2 Вибрация ……………………………………………………………………………….. 81
5.1.1.3 Микроклимат …………………………………………………………………………. 82
5.1.1.4 Шум ………………………………………………………………………………………. 83
5.1.1.5 Электромагнитные излучения ………………………………………………… 83
5.1.1.6. Психофизиологические факторы …………………………………………… 84
5.1.2. Анализ выявленных опасных факторов при разработке и
эксплуатации проектируемого решения ………………………………………………… 84
5.1.2.1 Электрический ток …………………………………………………………………. 85
5.1.2.2 Короткое замыкание ………………………………………………………………. 86
5.1.2.3 Статическое электричество …………………………………………………….. 86
5.1.3. Рекомендации по минимизации влияний на работника на примере
освещения ……………………………………………………………………………………………. 87
5.2 Экологическая безопасность ……………………………………………………………….. 89
5.2.1 Утилизация комплектующих ПК ………………………………………………….. 90
5.2.2 Утилизация люминесцентных ламп ………………………………………………. 90
5.3 Защита в чрезвычайных ситуациях ……………………………………………………… 91
5.3.1 Перечень возможных ЧС на объекте …………………………………………….. 91
5.3.2 Меры по предотвращению и ликвидации ЧС и их последствий …….. 92
5.4 Правовые и организационные вопросы обеспечения безопасности ……… 93
5.4.1. Специальные правовые нормы трудового законодательства …………. 93
5.4.2. Организационные мероприятия при компоновке рабочей зоны ……. 94
Заключение ……………………………………………………………………………………………… 95
Заключение …………………………………………………………………………………………………. 96
Список использованных источников ……………………………………………………………. 97
Приложение А …………………………………………………………………………………………… 102
Приложение Б ……………………………………………………………………………………………. 116
Приложение В ……………………………………………………………………………………………. 119
Приложение Г ……………………………………………………………………………………………. 122
Приложение Д……………………………………………………………………………………………. 123
Приложение Е ……………………………………………………………………………………………. 124
Приложение Ж …………………………………………………………………………………………… 126
Приложение З ……………………………………………………………………………………………. 127
Приложение И …………………………………………………………………………………………… 131
Приложение K …………………………………………………………………………………………… 133
Современные роботы проникли в очень многие сферы человеческой
жизни. И во многом они превосходят или находятся наравне с человеком. Так в
игровой сфере роботы отметились недавними победами в Го и Dota 2[1].
В данной работе рассматривается вариант разработки алгоритма и
реализация на его на основе робота, который играет пасьянс «Паук».
Было проведено тестирование алгоритма, сравнение количества
выигранных партий и затраченного времени на партию при разных количествах
мастей со статистикой игры людей в пасьянс.
Далее был спроектирован и создан робот, который имитирует человека с
точки зрения компьютера и игры. Для этого была использована технология
технического зрения, которая позволяет производить обнаружение,
отслеживание и классификацию объектов[2], как бы имитируя зрение человека.
Для устройства ввода был создан эмулятор, который распознается
компьютером как клавиатура и позволяет эмулировать нажатия клавиш или их
сочетаний.
Целью данной работы является разработка стратегии ведения игры и на
её основе создание робота с применением технического зрения.
Для решения поставленной цели необходимо выполнить следующие
задачи:
Исследование методов реализации выигрышной стратегии и выбор
оптимального метода;
Исследование методов распознавания на изображения;
Разработка и реализация алгоритма выигрышной стратегии ведения игры;
Разработка и реализация алгоритма распознавания карт на изображении;
Проектирование и интеграция устройств ввода-вывода в робота;
Тестирование и оценка эффективности алгоритма.
Выполнение данной цели решает проблемы теории управления,
робототехники, компьютерного зрения:
Из теории управления в работе решаются проблемы:
определения оптимального хода;
стратегии ведения игры.
Из робототехники в работе решаются проблемы:
конструкции робота;
сбора и передачи данных.
Из компьютерного зрения в работе решаются проблемы:
распознавания игрового поля;
распознавания игральных карт;
определения положение карт.
Объектом исследования в данной работе является алгоритмы
выигрышной стратегии ведения игры и технического зрения, применяемые для
игры роботом в пасьянс «Паук».
Предметом исследования является задача проектирования и разработки
робота, реализующего алгоритмы выигрышной стратегии ведения игры и
технического зрения.
Научной новизной данной работы является использование алгоритмов
выигрышной стратегии ведения игры и распознавания карт на изображении.
Реализация работы: в ходе выполнения работы был разработан
прототип.
1. Обзор литературы и научных источников
В данной главе приведены работы, касающиеся тем, затронутых в
диссертации.
В результате создания данного раздела был проведен анализ выявленных
вредных и опасных факторов при эксплуатации проектируемого решения и
даны рекомендации по улучшению освещения на рабочем месте. Также
рассмотрены утилизации комплектующих ПК и люминесцентных ламп.
Проведены мероприятия по защите от чрезвычайных ситуаций в частности
пожара, а также рассмотрены правовые и организационные вопросы
обеспечения безопасности. Таким образом рабочее место и помещение, где оно
находится, соответствует всем нормам и безопасно для работников.
Заключение
В данной работе была проведена разработка стратегии ведения игры, и на
её основе с применением технического зрения был создан робот.
В ходе работы были выбраны методы реализации выигрышной стратегии
и распознавания карт на изображения. Для выигрышной стратегии
использовался метод ветвей и границ, а для распознавания карт на изображении
– сочетание контурного анализа и распознавания по ключевым точкам.
Кроме того, для робота была выбрана камера и разработан эмулятор
клавиатуры. В качестве камеры использовалась Logitech c270, а эмулятор
клавиатуры разрабатывался на основе двух Arduino micro pro.
Также было выбрано программное обеспечение для реализации
алгоритма и язык программирования. В качестве операционной системы
выбрана Lubuntu 16.10, среды разработки – Code Blocks, языка
программирования – С++. Для разработки программного обеспечения
эмулятора использована Arduino IDE.
Было проведено сравнение работы разработанного робота с выборкой
результатов партий различной сложности, сыгранных людьми. В итоге процент
выигранных партий оказался несколько ниже.
В дальнейшем разработанные алгоритмы и устройства могут быть
использованы как вместе, так и по отдельности в образовательной деятельности
или игровой сфере.
В ходе выполнения работы был получен опыт работы с языком
программирования С++, работой с библиотеками OpenCV на Linux и
использования сред разработки Code Blocks и Arduino IDE.
Последние выполненные заказы
Хочешь уникальную работу?
Больше 3 000 экспертов уже готовы начать работу над твоим проектом!