или
Заказать новую работу(фрагменты работы)
Учебное заведение: | Вузы города Омск > Сибирский институт бизнеса и информационных технологий |
Тип работы: | Дипломные работы |
Категория: | Информатика |
Год сдачи: | 2012 |
Количество страниц: | 85 |
Оценка: | 5 |
Дата публикации: | 21.01.2019 |
Количество просмотров: | 525 |
Рейтинг работы: |
Стремительное развитие технологий искусственного интеллекта требует большого количества специалистов, владеющих этими технологиями. В то же время, данная область науки весьма обширна, а рамки учебного процесса не всегда позволяют в полной мере охватить все ее аспекты.
Одним из способов решения данной проблемы может быть создание электронных средств обучения, обладающих свойством интерактивности, что позволяет проверить теорию и закрепить полученные знания на практических примерах.
Таким образом, целью данного дипломного проекта являлось создание интерактивной системы обучения интеллектуальным технологиям, которую также можно назвать «электронный учебник».
(фрагменты работы)
Затем алгоритм опускается к другим потомкам потомков и не рассматривает их родительские состояния, если их значения больше или равны данному значению бета. Аналогичные процедуры можно описать для альфа-отсечения по потомкам второго поколения вершины МАХ.
Существуют два условия останова алгоритма поиска на основе значений альфа и бета:
поиск может быть остановлен ниже любого узла MIN, значение бета которого меньше или равно значению альфа любого из его предков МАХ;
поиск может быть остановлен ниже любого узла МАХ, значение альфа которого больше или равно значению бета любого из его предков MIN.
Таким образом, альфа-бета-усечение выражает отношение между узлами уровней п и п + 2. При этом из рассмотрения могут быть исключены целые поддеревья с корнями на уровне п + 1. Например, на рисунке 3.5 изображено пространство поиска просмотренное с помощью процедуры обычного минимакса, а на рисунке 3.6 – то же самое пространство поиска, к которому применен алгоритм альфа-бета-усечения. Заметим, что результирующее возвращаемое значение идентично полученному в алгоритме минимакса, но при этом процедура альфа-бета-усечения значительно экономичнее минимакса.
Рисунок 3.5
3.3.2 Описание программной реализации
Программа представляет собой реализацию игры «Крестики-нолики» [2]. При этом в качестве соперника человека выступает компьютер.
Основные данные программы представлены следующим образом:
перечисление TSquare, которое содержит описания содержимого клеток игрового поля: EMPTY – пусто, CROSS – крестик, NUL – нолик;
TPos типа TSquare – массив для хранения состояния игрового поля;
RetPos типа TPos – переменная для записи лучшего хода.
В зависимости от сделанного пользователем выбора, первый ход делает либо пользователь, либо компьютер. В любом случае первый игрок выступает в роли МАХ и играет «крестиками», а второй – в роли MIN и играет «ноликами».
После первого хода программа запускает рекурсивную функцию Search для поиска наилучшего ответного хода. Входными параметрами функции являются:
s типа TSquare – фигуры игрока МАХ;
alpha, beta типа Integer – максимум и минимум оценки состояния;
ply типа Integer – глубина поиска.
Функция возвращает значение типа Integer. Значение (– 1) означает проигрыш игрока MIN, значение (0) – ничью, остальные значения соответствуют эвристической оценке игровой ситуации
Сначала функция проверяет наличие замкнутой линии однотипных фигур по вертикали, горизонтали и диагоналям. В случае нахождения такой линии функция прекращает свою работу и на экран выводится модальное окно с сообщением о выигрыше. В случае отсутствия замкнутой линии запускается цикл для просмотра возможных ответных ходов.
Перед запуском цикла сбрасывается признак наличия пустых клеток на игровом поле. В процессе выполнения тела цикла на игровом поле ищется пустая клетка. Если таковая есть, то признак наличия пустых клеток устанавливается и в найденную клетку помещается фигура. После этого происходит рекурсивный вызов функции с параметрами, соответствующими полученной игровой ситуации. По окончанию рекурсивного поиска найденное эвристическое значение сравнивается с имеющимся значением максимума (alpha). В случае превышения найденного значения над альфой, последняя получает новое значение, равное найденному, и полученная позиция запоминается как лучший ход. После этого, позиция восстанавливается, то есть, помещенная в клетку фигура удаляется. В конце цикла
Похожие работы