Опубликован: 08.04.2009 | Уровень: для всех | Доступ: платный
Лекция 11:

Анализ игр

11.2. Цена игры

Анализируя игры в предыдущем разделе, мы использовали следующие (очевидные) правила:

  1. Если из некоторой позиции p можно пойти (по стрелкам) в некоторую проигрышную (для попавшего в нее игрока) позицию, то позиция p является выигрышной (для попавшего в нее).
  2. Если из некоторой позиции p можно пойти только в выигрышные позиции, то позиция p является проигрышной.

11.2.1. Доказать, что если число позиций в игре конечно, нет циклов (нельзя вернуться в однажды пройденную позицию) и про все заключительные позиции (где нельзя сделать хода) известно, кто выигрывает, то правила 1 и 2 однозначно разбивают все позиции на выигрышные и проигрышные.

Решение. Будем применять эти правила, пока это возможно. Ясно, что никакая позиция не будет объявлена одновременно выигрышной и проигрышной (для попавшего в нее). Надо лишь доказать, что не останется "сомнительных" позиций (не отнесенных ни к выигрышным, ни к проигрышным). Заметим, что из каждой сомнительной позиции ведет стрелка хотя бы в одну сомнительную позицию. (В самом деле, если все стрелки ведут в несомненные позиции, то либо все они выигрышные, либо есть хоть одна проигрышная, и можно было бы воспользоваться одним из двух правил.) Значит, идя по стрелкам в сомнительные позиции, мы рано или поздно получим цикл, что противоречит предположению.

11.2.2. Сформулировать и доказать аналогичное утверждение для игр, допускающих ничьи.

Игры с ничейным исходом являются частными случаями конечных игр с полной информацией и нулевой суммой, рассматриваемых в теории игр. Чтобы задать такую игру, необходимо:

  1. указать конечное множество, элементы которого называются позициями;
  2. для каждой позиции указать, является ли она заключительной (игра закончена) или нет;
  3. для каждой заключительной позиции указать результат игры (число); это число понимается как сумма денег, которую один игрок платит другому;
  4. для каждой незаключительной позиции указать, кто из игроков должен делать ход в этой позиции и какие разрешены ходы (в какие позиции этот игрок может перейти);
  5. указать начальную позицию игры.

При этом требуется, чтобы не было циклов (нельзя было вернуться в уже пройденную позицию после нескольких ходов).

Позиции игры удобно рассматривать как вершины графа и изображать точками; возможные ходы при этом становятся ребрами графа и изображаются стрелками. Игру можно рассматривать как передвижение фишки, обозначающей текущую позицию игры, по этому графу. В каждой вершине написано, кто должен делать ход (если игра не кончилась) или кто и сколько выиграл (если игра кончилась). Одна из вершин указана как начальная позиция.

Будем называть игроков Макс и Мин и считать, что результат игры определяет, сколько Мин платит Максу. (Мотивировка: Макс хочет, чтобы это число было максимальным, а Мин - минимальным - а лучше всего отрицательным, поскольку тогда он получает деньги!) Кто из игроков делает первый ход, определяется начальной позицией. Заметим, что мы теперь не предполагаем, что игроки ходят по очереди: один и тот же игрок может делать несколько ходов подряд.

(Тем самым, например, в игре со спичками каждый кружок на рисунке 11.1 теперь превращается в две позиции: с ходом Макса и с ходом Мина.)

Игра, в которой один из игроков выигрывает, а другой проигрывает, соответствует значениям \pm 1 в заключительных вершинах ( +1 означает выигрыш Макса, -1 означает выигрыш Мина). Игры с ничейными исходами получатся, если приписать число 0 ничейным позициям.

Определим теперь понятие стратегии. Стратегия для Макса (или Мина) определяет, как он должен ходить в каждой из позиций (где ход за ним); формально это функция s, определенная на множестве позиций, где ход за ним. Значениями этой функции являются позиции, при этом ходы должны быть допустимыми, то есть из p в s(p) должна вести стрелка.

Стратегии такого типа называют в теории игр позиционными, подчеркивая, что выбор хода зависит лишь от текущей позиции, но не от истории игры (как мы в эту позицию попали). (Другие стратегии нам не понадобятся, так что слово "позиционная" мы будем опускать.)

Если фиксировать стратегии для Макса и Мина, то исход игры предопределен: эти стратегии однозначно определяют последовательность позиций ("партию") и результат игры.

11.2.3. Доказать, что для любой игры G можно найти число c и стратегии M и m для Макса и Мина, при которых:

(1) Макс, пользуясь стратегией M, гарантирует себе выигрыш не менее c, как бы ни играл Мин;

(2) Мин, пользуясь стратегией m, гарантирует себе проигрыш не более c, как бы ни играл Макс.

Число c называют ценой игры G. Заметим, что цена игры определяется однозначно: из условий (1) и (2) следует, что у Макса нет стратегии, гарантирующей ему выигрыш больше c (поскольку она не может это сделать против стратегии m ), а у Мина нет стратегии, гарантирующей ему проигрыш меньше c.

Для игр с двумя исходами утверждение задачи (называемое теоремой Цермело означает, что ровно у одного из игроков имеется выигрышная стратегия. Если разрешить и ничьи, то либо у одного из игроков есть выигрышная стратегия, либо у обоих есть стратегия, гарантирующая ничью.

Решение. Пусть p - произвольная позиция игры G. Рассмотрим игру G_p, которая отличается от G лишь начальной позицией, и эта начальная позиция есть p. (Если p - заключительная вершина, то игра G_p тривиальна: игра кончается, не начавшись, и игрокам сообщается результат игры.) Как мы сейчас увидим, цену игры G_p (как функцию от p ) можно определить рекурсивно, начиная с заключительных позиций.

Более точно, рассмотрим следующее рекурсивное определение некоторой функции c, определенной на вершинах графа:

  • c(p) равно выигрышу Макса (=проигрышу Мина) в позиции p, если позиция p является заключительной;
  • c(p)=max\{c(p')\}, если в вершине p ходит Макс; максимум берется по всем вершинам p', в которые Макс может пойти из p по правилам игры;
  • c(p)=min\{c(p')\}, если в вершине p ходит Мин; минимум берется по всем вершинам p', в которые Мин может пойти из p по правилам игры.

Лемма. Это определение корректно: существует и единственна функция c (аргументы - вершины графа, значения - числа), удовлетворяющая указанным требованиям.

Доказательство леммы. Назовем рангом вершины максимальное число ходов, которое можно сделать из этой вершины. Поскольку по предположению в игре нет циклов, то ранг любой вершины не больше числа вершин. Докажем индукцией по k, что существует и единственна функция c, определенная на вершинах ранга не больше k и удовлетворяющая рекурсивному определению. Для k=0 это очевидно. Шаг индукции использует такое (очевидное) замечание: если из вершины p можно сделать ход в вершину p', то ранг вершины p' меньше ранга вершины p. Поэтому рекурсивное определение однозначно задает значения на вершинах ранга k, если известны значения на вершинах меньших рангов. Лемма доказана.

Осталось доказать, что значение c(p) является ценой игры G_p. Рассмотрим следующую (позиционную) стратегию для Макса: из вершины p ходить в ту вершину p', для которой значение c(p') максимально (и равно c(p) ). Если Макс следует этой стратегии, то независимо от ходов Мина значение c(q) для текущей вершины q не убывает в ходе игры (при ходах Мина оно убывать вообще не может, при ходах Макса оно не убывает по построению стратегии). Тем самым в вершине p Максу гарантирован выигрыш не меньше c(p). Аналогичным образом, если Мин ходит в ту вершину p', где достигается минимум c(p') (равный c(p) ), то значение c(q) не возрастает в ходе игры и потому Мин проигрывает не более c(p).

Теорема Цермело доказана.

Татьяна Новикова
Татьяна Новикова
Россия, Пошатово
Artem Bardakov
Artem Bardakov
Россия