- •Министерство образования и науки Российской Федерации
- •Лабораторная работа № 1
- •Данные и знания
- •Синтаксис языка Пролог
- •Семантика языка Пролог
- •Алгоритм работы Пролог-машины.
- •Пример построения базы правил на Пролог
- •Задание на лабораторную работу
- •Лабораторная работа № 2
- •Использование списков в Пролог.
- •Использование накапливающего параметра
- •Управление перебором
- •Задание на лабораторную работу
- •Лабораторная работа № 3
- •Представление задачи в терминах пространства состояний
- •Слепые методы поиска
- •Методы эвристического поиска
- •Поиск оптимального пути
- •3.4 Задание на лабораторную работу
- •Лабораторная работа № 4
- •Основные понятия теории игр
- •Представление игры в матричной форме
- •Представление игры в виде игрового дерева
- •Задание на лабораторную работу
Представление игры в матричной форме
Рисунок
1 – Матрица игры
Рассмотрим антагонистическую игру двух сторон (m.n), представленную в матричной форме. Поиск оптимальных стратегий игроков осуществляется, используя так называемый «принцип минимакса». По этому принципу для игрока А оптимальной является максиминная стратегия, т.е. стратегия, максимизирующая минимальный выигрыш игрока А. Этот гарантированный выигрыш называется нижней ценой игры. Обозначим его а.
Дня игрока В оптимальной является минимаксная стратегия, минимизирующая максимальный проигрыш игрока В. Этот проигрыш, которым может ограничиться игрок В , называется верхней ценой игры. Обозначим его р.
Можно показать, что в общем случае а <= р. Если а = р = V, то имеем игру с седловой точкой, а выигрыш V называется ценой игры. Стратегии А*, В* дающие выигрыш V называются оптимальными, чистыми стратегиями, а их совокупность называется решением игры. При наличии седловой точки в игре говорят, что игра решается в чистых стратегиях.
Седловых точек может быть несколько, в этом случае имеется несколько оптимальных стратегий. При этом во всех седловых точках платежи одинаковы и равны цене игры V . На рисунке 2 приведена матрица игры (3x4) с седловой точкой.
Представление игры в виде игрового дерева
Заметим, что при моделировании реальных процессов принятия решений приведение игры к матричной форме является трудной, а иногда и практически невыполнимой задачей из-за необозримого множества стратегий.
Однако, в некоторых случаях можно найти приемлемую стратегию, основываясь промежуточной оценке игровой ситуации. При этом матричная форма решения неприемлема, но можно производить поиск по дереву. Для получения более правильной оценки ситуации можно производить оценивание после серии ходов. Получаемая оценка называется статической, а процедура, производящая оценку статическим оценщиком. Положительное значение оценки обычно говорит о преимуществе одного игрока, а отрицательное о преимуществе другого.
Игровое дерево это семантическое дерево, в котором узлы обозначают игровые ситуации, а ветви обозначают ходы.
При работе с игровым деревом часто вместо термина игрок используют термин максимизатор т.к. основной задачей игрока является получение максимального выигрыша, а вместо термина противник используют термин минимизатор потому что он стремиться минимизировать выигрыш игрока.
Минимах процедура
Стратегия данного метода предельно проста: каждый игрок на своем уровне делает выбор согласно своей роли – максимизатор выбирает ситуацию, приводящую к максимальному выигрышу, а минимизатор – к минимальному.
Рисунок 3 – Дерево игры
Процедура, реализующая данную стратегию следующая:
Если достигнута предельная глубина поиска, то провести статическое оценивание игровой ситуации и вернуть оценку
Иначе если это уровень минимизатора применить процедуру минимакса ко всем детям текущего узла, вернуть наименьший результат
Иначе применить процедуру минимакса ко всем детям текущего узла, вернуть наибольший результат