Тема: Исследование и программная реализация алгоритма компьютерной игры
Закажите новую по вашим требованиям
Представленный материал является образцом учебного исследования, примером структуры и содержания учебного исследования по заявленной теме. Размещён исключительно в информационных и ознакомительных целях.
Workspay.ru оказывает информационные услуги по сбору, обработке и структурированию материалов в соответствии с требованиями заказчика.
Размещение материала не означает публикацию произведения впервые и не предполагает передачу исключительных авторских прав третьим лицам.
Материал не предназначен для дословной сдачи в образовательные организации и требует самостоятельной переработки с соблюдением законодательства Российской Федерации об авторском праве и принципов академической добросовестности.
Авторские права на исходные материалы принадлежат их законным правообладателям. В случае возникновения вопросов, связанных с размещённым материалом, просим направить обращение через форму обратной связи.
📋 Содержание
Введение 5
Глава 1 Постановка задачи исследования алгоритма компьютерной игры «Пятнашки» 7
1.1 Математическое описание головоломки «Пятнашки» 7
1.2 Методы решения головоломки «Пятнашки» 9
1.3 Анализ алгоритмов для решения скользящей головоломки 12
1.3.1 Алгоритм поиска в ширину 12
1.3.2 Алгоритм A* 14
Глава 2 Исследование возможности применения алгоритма А* для решения
головоломки «Пятнашки» 20
2.1 Модель решателя головоломки «Пятнашки» на основе алгоритма
А* 20
2.2 Методика разработки решателя «Пятнашек» на основе алгоритма
А* 23
Глава 3 Реализация и тестирование компьютерной игры «Пятнашки» 27
3.1 Выбор средства разработки программы 27
3.2 Реализация и тестирование компьютерной игры «Пятнашки» 29
3.3 Реализация и тестирование решателя игры «Пятнашки» 32
Заключение 36
Список используемой литературы и используемых источников 38
Приложение А Программный код игры «Пятнашки» 41
Приложение Б Программный код решателя игры «Пятнашки» 47
📖 Введение
Как и обычные игры, компьютерные игры сильно различаются и включают в себя как сложные онлайн-миры с несколькими игроками (известные как многопользовательские онлайн-игры), так и простые головоломки для одного игрока. Последние очень популярны среди пользователей [3].
Головоломки очень хорошо развивают пространственное мышление, невероятно важное во многих сферах деятельности. В большей степени это касается художников, дизайнеров, архитекторов, инженеров, режиссеров, писателей и прочих творческих личностей [4].
Одной из таких компьютерных игр-головоломок является игра «Пятнашки», известная за рубежом под названием «Sliding puzzle».
Как правило, в основу любой компьютерной головоломки положен определенный алгоритм.
Исследование и программная реализация алгоритма игры «Пятнашки» представляет научный и практический интерес.
Объектом исследования бакалаврской работы является компьютерная игра «Пятнашки».
Предметом исследования бакалаврской работы является алгоритм компьютерной игры «Пятнашки».
Цель бакалаврской работы - исследование и программная реализация алгоритма компьютерной игры «Пятнашки».
Для достижения данной цели необходимо выполнить следующие задачи:
- выполнить постановку задачи исследования алгоритма компьютерной игры «Пятнашки»;
- проанализировать алгоритм компьютерной игры «Пятнашки»;
- разработать и протестировать программу, реализующую алгоритм компьютерную игру «Пятнашки».
Методы исследования - теория алгоритмов, методы и технологии разработки программного обеспечения.
Практическая значимость бакалаврской работы заключается в разработке программы, позволяющий решить головоломку «Пятнашки».
Данная работа состоит из введения, трех глав, заключения и списка используемой литературы и используемых источников.
Первая глава работы посвящена постановке задачи исследования алгоритма компьютерной игры «Пятнашки».
Вторая глава работы посвящена анализу алгоритма компьютерной игры «Пятнашки».
В третьей главе рассматривается процесс разработки и тестирования программы, реализующей алгоритм игры «Пятнашки».
В заключении описываются результаты выполнения выпускной квалификационной работы.
Выпускная квалификационная работа состоит из 50 страниц текста, 15 рисунков, 2 таблиц и 25 источников.
✅ Заключение
Выполненные в рамках бакалаврской работы задачи представлены следующими основными результатами:
- произведена постановка задачи исследования алгоритма компьютерной игры «Пятнашки». Как показал анализ, поиск оптимального решения (наименьшего числа ходов) является NP- полным. Головоломка разрешима тогда и только тогда, когда в последовательности имеется четное число инверсий (неупорядоченных пар). Путем полного поиска в ширину было доказано, что ни одна конфигурация головоломки из 15 не требует более 80 ходов. Для решения головоломки «Пятнашки» используются алгоритмы наподобие алгоритма А*. Алгоритм IDA* полезен, когда проблема связана с нехваткой памяти. Как и в случае A*, эвристика должна иметь определенные свойства, чтобы гарантировать оптимальность (кратчайшие пути). Поставлена задача исследования и программной реализации алгоритма A* для решения головоломки «Пятнашки»;
- исследована возможности применения алгоритма А* для решения головоломки «Пятнашки». Как показал анализ, эвристический поиск - это метод информированного поиска. Эвристическое значение сообщает алгоритму, какой путь обеспечит решение как можно раньше. Эвристическая функция используется для генерации этого эвристического значения. Ключевой особенностью алгоритма A* является то, что он отслеживает каждый посещенный узел, что помогает игнорировать уже посещенные узлы, экономя огромное количество времени. У него также есть список, содержащий все узлы, которые осталось изучить, и он выбирает наиболее оптимальный узел из этого списка, тем самым экономя время, не исследуя ненужные или менее оптимальные узлы. Результаты исследования подтвердили возможность использования алгоритма A* для решения головоломки «Пятнашки»;
- выполнены реализация и тестирование программ компьютерной игры «Пятнашки» и ее решателя. Для реализации программ выбраны язык Python и среда Jupyter Notebook. В процессе реализации программы использованы модули библиотеки языка Python random, tnicker и time. Построены диаграммы классов программ и описана их спецификация. Выполнено функциональное тетсирование разработанных программ. Тестирование программ игры «Пятнашки» и ее решателя «Пятнашки» подтвердили их работоспособность.
Результаты бакалаврской работы могут представлять интерес для разработчиков и специалистов, занимающимся разработкой компьютерных игр-головоломок.





