- •1. Элементы теории игр
- •1.1. Основные понятия
- •1.2. Матричные игры
- •1.3. Принцип минимакса. Седловые точки
- •1.4. Смешанные стратегии
- •1.5. Пример полного решения матричной игры
- •2.2. Математическая модель
- •1.6. Задания для самостоятельной работы}
- •2.Задача о назначениях
- •2.1. Содержательная постановка
- •2.3. Венгерский метод
- •2.4. Алгоритм венгерского метода
- •2.5. Пример
- •2.6. Задания для самостоятельной работы
- •3.Задача коммивояжера
- •Постановка задачи
- •Метод ветвей и границ
- •Метод ветвей и границ для решения задачи коммивояжера.
- •Вычисление оценки для множества .
- •Выбор дуги для ветвления.
- •3.4 Пример
- •3.5. Задания для самостоятельной работы
- •4.Динамическое программирование
- •4.1. Постановка задачи
- •4.2. Построение модели дп
- •4.3. Построение вычислительной схемы дп
- •4.4. Несколько замечаний к методу дп
- •4.5. Задачи распределения ресурсов
- •5.6. Пример решения задачи распределения ресурсов
- •4.7. Задачи о замене оборудования.
- •4.8. Пример решения задачи о замене оборудования
- •5.9. Задания для самостоятельной работы
1.2. Матричные игры
Матричной игрой называется конечная игра двух лиц с нулевой суммой.
Так как число
стратегий каждого игрока в матричной
игре конечно, то их можно пронумеровать.
Будем считать, что игрок
имеет стратегии
=1,
…, m,
а игрок
- стратегии
=1,
…, n.
В дальнейшем будем называть их чистыми
стратегиями (ч.с.)
Функции выигрыша
игроков в матричной игре могут быть
заданы в виде платежной
матрицы
=(
)
размера
,
где
- выигрыш игрока
(и, соответственно, проигрыш игрока
)
в ситуации (
,
).
Пример 1.2. Игра "Два числа".
Играют двое. Каждый из игроков втайне от другого записывает одно из двух чисел: 1 или 2. Затем числа предъявляются и подводится итог. Если оба записали 1, то выигрывает 1 очко, а если оба записали 2, то выигрывает 2 очка. Если записал меньшее число, то выигрывает 1 очко; в противном случае выигрывает 2 очка. В любой ситуации выигрыш игрока равен проигрышу соперника.
Здесь у каждого из игроков имеется по две ч.с.: записать 1 или записать 2. Платежная матрица игры изображена на рис. 2, строки соответствуют стратегиям игрока , столбцы - стратегиям игрока .
|
1 |
2 |
|
|
|
О |
Р |
1 |
-1 |
1 |
|
|
О |
-1 |
1 |
2 |
-2 |
2 |
|
|
Р |
1 |
-1 |
Рис. 3
Рис. 2
Пример 1.3. Игра в орлянку.
Игрок кладет монету, игрок , не видя, пытается угадать, какой стороной положил монету игрок - "орлом" (О) или "решкой" (Р). Угадал - выиграл 1 очко (а в этом случае проиграл 1 очко), не угадал - проиграл 1 очко (а выиграл 1 очко).
В этой игре у каждого из игроков имеется по две ч.с. : у игрока - положить монету "орлом" или "решкой", у игрока - назвать "орел" или "решку". Платежная матрица игры изображена на рис. 3.
1.3. Принцип минимакса. Седловые точки
Будем предполагать, что игроки ведут себя разумно и каждый из них стремится максимизировать свой выигрыш. Попытаемся выяснить, как следовало бы действовать игрокам в матричной игре, чтобы добиться поставленной цели.
Предположим, что игроки и участвуют в матричной игре с платежной матрицей =( ) размера . Выбирая чистую стратегию, игрок выбирает строку , а игрок - столбец . Выигрыш или, что то же, проигрыш в этой ситуации равен . Ясно, что игрок будет стараться увеличить , в то время как будет пытаться его уменьшить.
Если игрок
выбрал ч.с.
,
то
должен ответить такой стратегией
,
чтобы выигрыш
был наименьшим среди чисел
,
обозначим его
:
.
Величина есть наименьший, то есть гарантированный выигрыш игрока при выборе им ч.с. . Значит, игроку выгодно выбрать ту стратегию, которая даст наибольшее значение :
.
Стратегия
,
для которой
,
максиминной
стратегией
игрока
.
Аналогично рассуждая, получаем, что величина
есть наибольший,
то есть гарантированный
проигрыш
игрока
при выборе им ч.с.
.
Игроку
из всех стратегий выгодно выбрать
минимаксную
ч.с.,
при которой его гарантированный проигрыш
минимален:
.
Величины
и
называются соответственно нижней
и верхней
ценой игры в ч.с.
Еще раз подчеркнем, что выбрав максиминную ч.с., игрок гарантированно получит выигрыш, не меньший , а игрок , выбрав минимаксную ч.с., не проиграет больше .
Описанные рассуждения носят название принципа минимакса (или принципа гарантированного результата). Кратко этот принцип может быть сформулирован следующим образом: каждый игрок должен стремиться максимально увеличить свой гарантированный выигрыш.
Легко показать,
что в любой матричной игре
.
Например,
в игре "Два числа" (пример 1.2)
,
а в игре в орлянку (пример 1.3)
.
Хорошо известно
[2], что равенство
имеет место тогда и только тогда, когда
платежная матрица
имеет седловую
точку, то
есть существует такая пара номеров
,
что
для любых
,
.
Седловая точка платежной матрицы дает ситуацию равновесия
в матричной игре,
когда игроку
невыгодно отступать от своей максиминной
ч.с.
,
а игроку
- от минимаксной ч.с.
,
поскольку отклоняясь от этих стратегий,
игроки могут разве что уменьшить свой
выигрыш. Если
- седловая точка, то стратегии
называются оптимальными
ч.с. Пара
оптимальных ч.с. называется решением
игры в ч.с.,
а сама матричная игра - разрешимой
в ч.с. Величина
называется в этом случае ценой
игры в ч.с.
Если же
,
то матрица
не имеет седловой точки. В такой игре
ситуации равновесия нет, и она не
разрешима в ч.с.
Между играми с седловой точкой и без нее существует огромная разница, которая проявляется особенно ярко при многократном повторении игры. Поясним эту разницу на примерах 1.2 и 1.3.
Рассмотрим игру "Два числа" (пример 1.2) и подумаем, как поведут себя разумные игроки в этой игре. Если выберет ч.с. 1, то есть запишет 1, он может выиграть 1 очко (если запишет 2), но может и проиграть 1 очко (если запишет 1). Если же выберет ч.с. 2, то он может выиграть 2 очка (если запишет 2), но может и проиграть 2 очка (если запишет 1). А поскольку игрок разумен, то он наверняка выберет ч.с. 1 (при этом он вообще не проигрывает). И тогда игроку ничего другого не остается, как выбрать меньшее из зол и записать число 1.
Итак, в этой игре есть ситуация равновесия (1,1), когда игрокам невыгодно отступать от своих оптимальных ч.с. =1, =1, сколько бы ни продолжалась игра. Правда, при этом каждый раз будет проигрывать 1 очко, но, выбирая число 2, он проиграет еще больше. Игроку тем более невыгодно отступать от избранной стратегии, так как записав число 2, он вместо выигрыша проиграет 1 очко. Оба даже могут заранее объявить о своих намерениях, секретность в играх с седловой точкой не имеет никакого значения.
Иное дело в игре в орлянку (пример 1.3). В этой игре седловой точки нет, и игрокам имеет смысл скрывать свои намерения от соперника. Если при многократном повторении игры один из игроков будет все время придерживаться какой-либо одной ч.с. или даже выбирать свои ч.с. по некоторой заранее определенной схеме, то его разумный соперник может понять это и принять контрмеры. Единственный разумный выход видится в следующем: в такой игре игроки должны выбирать свои ч.с. случайно, но сама схема рандомизации должна выбираться разумно. В этом и состоит идея использования смешанных стратегий.
