книга DipMaster-Shop.RU
поиск
карта
почта
Главная На заказ Готовые работы Способы оплаты Партнерство Контакты F.A.Q. Поиск
Разработка программы, позволяющей автоматизировать движение материалов на складе ( Дипломная работа, 49 стр. )
Разработка программы – игра «Ханойские башни», и рассмотрение некоторых особенностей создания программ ( Контрольная работа, 10 стр. )
Разработка программы для сравнения дискретной динамической системы и её компьютерного аналога ( Курсовая работа, 12 стр. )
Разработка программы «Сведения о N рабочих» и сопроводительной документации ( Курсовая работа, 33 стр. )
Разработка программы «Сведения о 10 заводах» и сопроводительной документацию ( Курсовая работа, 32 стр. )
Разработка программы для автоматизации учета и предварительных заказов на предприятиях различных сфер деятельности ( Дипломная работа, 95 стр. )
Разработка программы на языке Microsoft Visual Basic for Application ( Курсовая работа, 20 стр. )
Разработка программы на языке Turbo Pascal ( Курсовая работа, 38 стр. )
Разработка процедуры пространственной индексации записей метаданных в базе данных ( Курсовая работа, 10 стр. )
Разработка распределенной Mediation-системы с графическим интерфейсом ( Отчет по практике, 20 стр. )
Разработка распределенной информационно-аналитической системы по Чукотскому и Берингову морям ( Курсовая работа, 22 стр. )
РАЗРАБОТКА РЕЛЯЦИОННОЙ МОДЕЛИ ДАННЫХ «УПРАВЛЕНИЕ СКЛАДСКИМИ ОПЕРАЦИЯМИ». ( Курсовая работа, 31 стр. )
РАЗРАБОТКА САМООБУЧАЮЩЕЙСЯ СИСТЕМЫ ПОДАЧИ ТОПЛИВА ДЛЯ ДВС С МОДИФИЦИРОВАННОЙ СИСТЕМОЙ ПИТАНИЯ. МОДУЛЬ САМООБУЧЕНИЯ. ( Курсовая работа, 8 стр. )
Разработка сетевой КПК игры аркадного жанра «Танки» ( Курсовая работа, 45 стр. )
Разработка систем для операций с базой данных автосалона, позволяющей просматривать списки моделей и клиентов, а также формировать заказы, счета и отчеты по продажам 2008-37 ( Курсовая работа, 37 стр. )
Разработка систем для операций с базой данных автосалона, позволяющей просматривать списки моделей и клиентов, а также формировать заказы, счета и отчеты по продажам ( Курсовая работа, 37 стр. )
Разработка системы автоматизации рабочего места менеджера по учету складу предприятия ООО «Сибобслуживание» ( Дипломная работа, 87 стр. )
Разработка системы удаленного тестирования знаний WEBTEST ( Курсовая работа, 43 стр. )
Разработка способа шифрования и его программная реализация ( Контрольная работа, 8 стр. )
РАЗРАБОТКА СРЕДСТВ ИНТЕГРАЦИИ MICROSOFT PROJECT 2007 С СИСТЕМОЙ УПРАВЛЕНИЯ ПРЕДПРИЯТИЕМ ( Курсовая работа, 54 стр. )
Разработка структуры проектируемой базы данных и её реализация средствами SQL, VBA, объектов DAO………………………………………… ( Курсовая работа, 32 стр. )
Разработка технического оформления выставки ( Контрольная работа, 13 стр. )
Разработка части прототипа управления АНПА на базе программной платформы Player ( Курсовая работа, 12 стр. )
Распараллеливание программы генерации расписания занятий ( Курсовая работа, 64 стр. )
Распознавание периферийных устройств ( Контрольная работа, 8 стр. )

Содержание

Содержание 2

Введение 4

1.1. Глоссарий 4

1.2. Описание предметной области 4

1.3. Неформальная постановка задачи 5

1.4. Обзор существующих методов решения 5

1.4.1. Java AI Programming Contest 5

1.4.2. Learning Machine Challenge 6

1.4.3. JRobots 6

1.4.4. Arimaa-challenge 6

1.4.5. Real-Time Battle 6

1.4.6. Вывод 6

2. Требования к окружению 7

2.1. Требования к аппаратному обеспечению 7

2.2. Требования к программному обеспечению 7

2.3. Требования к пользователям 7

3. Архитектура системы (общие требования) 9

4. Спецификация данных 11

4.1. Описание формата и структуры данных. 11

4.1.1. Конфигурационный файл системы 11

4.1.2. База данных системы 11

4.1.3. Программы ИИ 11

4.1.4. Файлы карт 11

4.2. Описание сущности 11

4.2.1. Сущность «Профили» (Logins) 11

4.2.2. Сущность «Администратор системы» (iviRoot) 11

4.2.3. Сущность «Тип Игры» (GameType) 12

4.2.4. Сущность «Программа ИИ» (Ai) 12

4.2.5. Сущность «Карта» (Map) 12

4.2.6. Сущность «Турнир» (Tournament) 13

4.2.7. Сущность «Группа матчей» (Batch) 13

4.2.8. Сущность «Участник матча» (MatchMember) 14

4.2.9. Сущность «Матч» (Match) 14

4.2.10. Сущность «Проведение группы матчей» (BatchExecution) 15

4.2.11. Сущность «Проведение матча» (MatchExecution) 15

4.2.12. Сущность «Очки участника матча» (Score) 16

4.2.13. Сущность «Очередь на проведение» (BatchExecQueue) 16

4.3. Описание протокола 17

4.3.1. Протокол взаимодействия между подсистемой управления соревнованием и web-интерфейсом системы. 17

4.3.2. Протокол взаимодействия между арбитром и подсистемой управления соревнования 17

4.3.3. Протокол взаимодействия между арбитром и программой искусственного интеллекта 18

5. Функциональные требования 18

5.1. Web-интерфейс системы 18

5.2. Подсистема управления соревнованием 19

5.3. Арбитр 19

5.4. Подсистема вывода данных о ходе игры 19

6. Требование к интерфейсу 19

6.1. Web-интерфейс системы 19

6.2. Арбитр 19

6.3. Подсистема управления соревнованием 20

7. Проект 20

7.1. Средства реализации 20

7.1.1. Web-Интерфейс Системы 20

7.1.2. База данных системы 20

7.1.3. Арбитр 20

7.1.4. Подсистема управления соревнованием и подсистема вывода данных о ходе игры 21

8. Модули и алгоритмы 21

8.1. Web-интерфейс системы 21

8.2. Система управления соревнованием. 23

8.3. Арбитр 24

8.4. Подсистема вывода данных о ходе игры 26

8.5. Алгоритмы взаимодействия элементов подсистемы. 26

8.5.1. Управление данными системы. 26

8.5.2. Проведение соревнования. 26

8.6. Проект интерфейса 28

8.6.1. Web-интерфейс системы 28

8.6.2. Арбитр 28

8.6.3. Подсистема управления соревнованием 28

8.6.4. Подсистема вывода данных о ходе игры 29

9. Структуры данных 31

10. Реализация и тестирование 32

10.1. Реализация 32

10.2. Тестирование 33

Заключение 35

Список литературы 36

Введение

1.1. Глоссарий

ИИ – искусственный интеллект.

Программа ИИ – программный продукт, имитирующий искусственный интеллект.

Игрок – автор программы ИИ.

Программа ИИ – программный продукт, имитирующий искусственный интеллект. Данный программный продукт строго определённым интерфейсом.

Соревнование ИИ – последовательность игр с участием некоторого множества программ ИИ, в процессе которой выясняется преимущество одной программы ИИ перед другой.

Арбитр – программный продукт, способный провести соревнование ИИ.

Пошаговая игра – игра, в которой участники ходят по очереди.

Карта игры – набор установленных параметров игры.

Матч игры – игра одного или более программ ИИ на одной карте.

Результаты матча – некоторая числовая характеристика, отражающая деятельность программ ИИ во время матча.

Группа матчей – несколько матчей результаты которых корректно сравнивать.

1.2. Описание предметной области

Каждый год в рамках Весеннего турнира юных программистов проводится конкурс «Игровой искусственный интеллект».

Участникам конкурса предлагается реализовать программу, имитирующую игровой искусственный интеллект, для игры в определённую пошаговую игру. Программа участника конкурса определяет следующий шаг, исходя из текущего состояния игры.

Во время конкурса программы ИИ играют друг с другом. Программа, которая набрала большее число очков, считается лучшей.

Каждый год для проведения этого конкурса организаторами составляются новые правила игры и публикуются на сайте ИМиКН (см.[15]). Программы предоставляются жюри в виде исполняемых файлов. Во время официальной части конкурса все желающие могут наблюдать за ходом соревнования.

В настоящее время для проведения соревнований используется управляющая система, способная организовать и отобразить в реальном времени игру пары игроков. Для поведения соревнования приходится запускать эту систему множество раз для игры каждой пары участников. Если программ ИИ n штук, и правила игры предполагают матчи между двумя программами ИИ, то необходимо провести встреч. Настройка управляющей системы перед каждым раундом соревнований проводится вручную, что с учетом увеличения участников является трудоёмкой задачей.

Задачу сокращения времени проведения конкурса можно решить за счет автоматизации процесса проведения соревнования.

1.3. Неформальная постановка задачи

В рамках данной курсовой работы должен быть разработан программный продукт, предоставляющий ряд функций по автоматизации проведения конкурса

Для организаторов конкурса:

o Генерация турнирной таблицы.

o Автоматическое проведение соревнований программ ИИ по турнирной таблице.

o Удобный ввод данных об участниках, турнирах, программах ИИ.

Для участников конкурса:

o Регистрация в системе.

o Проведение соревнований своей программы ИИ и программ ИИ других участников.

o Обеспечение возможности наблюдения за ходом соревнований.

o Просмотр итогов конкурса.

Необходимо выполнение следующих условий:

• Система для организации онлайн соревнований программ ИИ должна быть реализована как клиент-серверное приложение.

• Администрирование и доступ к данным должен быть доступен по сети.

• Система должна быть гибкой: переход к новой игре должен быть максимально простым.

• Для примера, система должна позволять проводить соревнования программ ИИ по правилам игры Весеннего турнира академии юных программистов 2007 года.

• Система должна быть хорошо документирована.

1.4. Обзор существующих методов решения

В настоящий момент существует множество систем автоматического проведения соревнований ИИ в сети.

1.4.1. Java AI Programming Contest

Система, расположенная по адресу: http://ece.fsa.ucl.ac.be/adagneli/aicontest/, предназначена для проведения онлайн соревнований программ ИИ в симуляторе гонок. Цель ИИ провести болид между всеми маячками, учитывая инерцию, возможность столкновения и т.п.

Программа просмотра реализована как Java-applet. Данная система является закрытой и поддерживает только программы ИИ написанные на языке Java.

1.4.2. Learning Machine Challenge

Официальный сайт системы www.a-i.com. Система для проведения соревнований chat-bot’ов.

Исходный код системы тестирования является открытым, но представляет собой аналог управляющей системы, существующей в ИМиКН на данный момент.

1.4.3. JRobots

Система, расположенная по адресу http://jrobots.sourceforge.net/, по принципу работы аналогична системе Java AI Programmig contest, но в данной системе программы ИИ управляют действиями боевых роботов.

1.4.4. Arimaa-challenge

Система, расположенная по адресу http://www.arimaa.com, предназначена для проведения онлайн соревнований программ ИИ в игре Arimaa – аналог шахмат. Данный сайт предоставляет возможности просмотра записи ходов в наглядной программе просмотра.

Программа просмотра реализована как Java-applet. Данная система является закрытой.

1.4.5. Real-Time Battle

Список литературы

[1] Российская ассоциация искусственного интеллекта. http://www.raai.org

[2] Рожков М. В. Дипломная работа «Система автоматического тестирования программ и организации соревнований по программированию»

[3] Вентцель Е.С. Введение в исследование операций, М.: Изд. «Советское радио», 1964

[4] Оуэн Г. Теория игр. М.: Мир, 1971. 229с.

[5] Бикнер К. Экономичный Web-дизайн /Кэрри Бикнер; Пер. с англ. Д.С. Ремизова М.: НТ Пресс, 2005. -248с.: ил.

[6] Гото К. и Котлер Э. Вёб-редизайн: книга Келли Гото и Эмили Котлер. – пер. с англ. – СПб: Символ-Плюс, 2003. – 376с. цв. ил.

[7] Нильсен Я. Веб-дизайн: книга Якоба Нильсена – Пер.с анг. СПб: Символ-Плюс, 2003 – 512 с. цв. ил.

[8] Драхвелидзе П.Г., Марков Е.П. Delphi 2005 для Win32 – СПб.: БХВ-Питербург, 2005 – 1136 с.:ил.

[9] Фелёнов М.Е. Библия Delphi – СПб.: БХВ-Питербур, 2004 – 880 с.:ил.

[10] Культин Н.Б. Delphi6, Программирование на Object Pascal

[11] Спецификация HTML 4.0 http://www.w3.org/TR/REC-html40

[12] Cascading Style Sheets, level 2 CSS2 Specification (Каскадные Таблицы Стилей, уровень 2 Спецификация CSS2) http://www.w3.org/TR/REC-CSS2

[13] Template Toolkit (русская редакция) http://www.template-toolkit.ru

[14] Кленин А. С. Технология Методические указания по подготовке и защите отчётов на специализации «Прикладная математика. Системное программирование», ДВГУ, 2006,

[15] Сайт ИМиКН http://imcs.dvgu.ru

приложений нет

2000-2024 © Copyright «DipMaster-Shop.ru»