Анализ игр
11.2. Цена игры
Анализируя игры в предыдущем разделе, мы использовали следующие (очевидные) правила:
- Если из некоторой позиции
можно пойти (по стрелкам) в некоторую проигрышную (для попавшего в нее игрока) позицию, то позиция
является выигрышной (для попавшего в нее).
- Если из некоторой позиции
можно пойти только в выигрышные позиции, то позиция
является проигрышной.
11.2.1. Доказать, что если число позиций в игре конечно, нет циклов (нельзя вернуться в однажды пройденную позицию) и про все заключительные позиции (где нельзя сделать хода) известно, кто выигрывает, то правила 1 и 2 однозначно разбивают все позиции на выигрышные и проигрышные.
Решение. Будем применять эти правила, пока это возможно. Ясно, что никакая позиция не будет объявлена одновременно выигрышной и проигрышной (для попавшего в нее). Надо лишь доказать, что не останется "сомнительных" позиций (не отнесенных ни к выигрышным, ни к проигрышным). Заметим, что из каждой сомнительной позиции ведет стрелка хотя бы в одну сомнительную позицию. (В самом деле, если все стрелки ведут в несомненные позиции, то либо все они выигрышные, либо есть хоть одна проигрышная, и можно было бы воспользоваться одним из двух правил.) Значит, идя по стрелкам в сомнительные позиции, мы рано или поздно получим цикл, что противоречит предположению.
11.2.2. Сформулировать и доказать аналогичное утверждение для игр, допускающих ничьи.
Игры с ничейным исходом являются частными случаями конечных игр с полной информацией и нулевой суммой, рассматриваемых в теории игр. Чтобы задать такую игру, необходимо:
- указать конечное множество, элементы которого называются позициями;
- для каждой позиции указать, является ли она заключительной (игра закончена) или нет;
- для каждой заключительной позиции указать результат игры (число); это число понимается как сумма денег, которую один игрок платит другому;
- для каждой незаключительной позиции указать, кто из игроков должен делать ход в этой позиции и какие разрешены ходы (в какие позиции этот игрок может перейти);
- указать начальную позицию игры.
При этом требуется, чтобы не было циклов (нельзя было вернуться в уже пройденную позицию после нескольких ходов).
Позиции игры удобно рассматривать как вершины графа и изображать точками; возможные ходы при этом становятся ребрами графа и изображаются стрелками. Игру можно рассматривать как передвижение фишки, обозначающей текущую позицию игры, по этому графу. В каждой вершине написано, кто должен делать ход (если игра не кончилась) или кто и сколько выиграл (если игра кончилась). Одна из вершин указана как начальная позиция.
Будем называть игроков Макс и Мин и считать, что результат игры определяет, сколько Мин платит Максу. (Мотивировка: Макс хочет, чтобы это число было максимальным, а Мин - минимальным - а лучше всего отрицательным, поскольку тогда он получает деньги!) Кто из игроков делает первый ход, определяется начальной позицией. Заметим, что мы теперь не предполагаем, что игроки ходят по очереди: один и тот же игрок может делать несколько ходов подряд.
(Тем самым, например, в игре со спичками каждый кружок на рисунке 11.1 теперь превращается в две позиции: с ходом Макса и с ходом Мина.)
Игра, в которой один из игроков выигрывает, а другой
проигрывает, соответствует значениям
в заключительных вершинах (
означает выигрыш Макса,
означает выигрыш Мина). Игры с ничейными исходами
получатся, если приписать число
ничейным позициям.
Определим теперь понятие стратегии. Стратегия
для Макса (или Мина) определяет, как он должен
ходить в каждой из позиций (где ход за ним); формально это
функция , определенная на множестве позиций, где ход за
ним. Значениями этой функции являются позиции, при этом
ходы должны быть допустимыми, то есть из
в
должна вести стрелка.
Стратегии такого типа называют в теории игр позиционными, подчеркивая, что выбор хода зависит лишь от текущей позиции, но не от истории игры (как мы в эту позицию попали). (Другие стратегии нам не понадобятся, так что слово "позиционная" мы будем опускать.)
Если фиксировать стратегии для Макса и Мина, то исход игры предопределен: эти стратегии однозначно определяют последовательность позиций ("партию") и результат игры.
11.2.3.
Доказать, что для любой игры можно найти число
и стратегии
и
для Макса и Мина, при которых:
(1) Макс, пользуясь стратегией , гарантирует себе
выигрыш не менее
, как бы ни играл Мин;
(2) Мин, пользуясь стратегией , гарантирует себе
проигрыш не более
, как бы ни играл Макс.
Число называют ценой игры
.
Заметим, что цена игры
определяется однозначно: из условий
(1) и (2) следует, что у Макса нет стратегии, гарантирующей
ему выигрыш больше
(поскольку она не может это сделать
против стратегии
), а у Мина нет стратегии,
гарантирующей ему проигрыш меньше
.
Для игр с двумя исходами утверждение задачи (называемое теоремой Цермело означает, что ровно у одного из игроков имеется выигрышная стратегия. Если разрешить и ничьи, то либо у одного из игроков есть выигрышная стратегия, либо у обоих есть стратегия, гарантирующая ничью.
Решение. Пусть - произвольная позиция
игры
.
Рассмотрим игру
, которая отличается от
лишь
начальной позицией, и эта начальная позиция есть
. (Если
- заключительная вершина, то игра
тривиальна:
игра кончается, не начавшись, и игрокам сообщается
результат игры.) Как мы сейчас увидим, цену игры
(как
функцию от
) можно определить рекурсивно, начиная
с заключительных позиций.
Более точно, рассмотрим следующее рекурсивное определение
некоторой функции , определенной на вершинах графа:
-
равно выигрышу Макса (=проигрышу Мина) в позиции
, если позиция
является заключительной;
-
, если в вершине
ходит Макс; максимум берется по всем вершинам
, в которые Макс может пойти из
по правилам игры;
-
, если в вершине
ходит Мин; минимум берется по всем вершинам
, в которые Мин может пойти из
по правилам игры.
Лемма. Это определение корректно: существует
и единственна функция (аргументы - вершины графа,
значения - числа), удовлетворяющая указанным требованиям.
Доказательство леммы. Назовем рангом вершины
максимальное число ходов, которое можно сделать из этой
вершины. Поскольку по предположению в игре нет циклов, то ранг любой вершины не больше числа вершин. Докажем
индукцией по , что существует и единственна
функция
,
определенная на вершинах ранга не больше
и удовлетворяющая рекурсивному определению. Для
это
очевидно. Шаг индукции использует такое (очевидное)
замечание: если из вершины
можно сделать ход
в вершину
, то ранг вершины
меньше ранга
вершины
. Поэтому рекурсивное определение однозначно
задает значения на вершинах ранга
, если известны значения на вершинах меньших рангов. Лемма доказана.
Осталось доказать, что значение является ценой
игры
. Рассмотрим следующую (позиционную) стратегию
для Макса: из вершины
ходить в ту вершину
, для
которой значение
максимально (и равно
).
Если
Макс следует этой стратегии, то независимо от ходов Мина
значение
для текущей вершины
не убывает в ходе
игры (при ходах Мина оно убывать вообще не может, при ходах
Макса оно не убывает по построению стратегии). Тем самым
в вершине
Максу гарантирован выигрыш не
меньше
.
Аналогичным образом, если Мин ходит в ту вершину
, где
достигается минимум
(равный
), то значение
не возрастает в ходе игры и потому Мин проигрывает
не более
.
Теорема Цермело доказана.