Позиция в игре
Позиция в игре — это полное описание текущего состояния игры, по которому можно определить доступные ходы и дальнейший результат. Позиции сравнивают по тому, может ли игрок, которому предстоит ходить, добиться победы при правильной игре обоих участников.
Позиция является вершиной в модели комбинаторной игры. Из неё игрок выбирает один из разрешённых ходов, и игра переходит в новую позицию. Поэтому решение задачи часто состоит в классификации всех достижимых позиций.
Классификация позиций
Если игрок, которому нужно сделать ход, может при некоторой стратегии гарантировать победу, позицию называют выигрышной. Если же при любых его действиях соперник может добиться победы, позиция проигрышная. Для конечных игр без ничьих каждая позиция относится ровно к одному из этих двух классов.
Здесь \(P\) — текущая позиция, \(Moves(P)\) — множество позиций, достижимых одним ходом, а \(W\) и \(L\) обозначают выигрышность и проигрышность. Терминальная позиция без разрешённых ходов считается проигрышной для игрока, который должен ходить.
В куче лежит \(1\) камень, за ход можно убрать \(1\) немесе \(2\) камня. Ходящий убирает последний камень, поэтому позиция с одной кучей из \(1\) камня выигрышная. Позиция с \(0\) камней проигрышная: ход сделать нельзя. Позиция с \(3\) камнями также выигрышная, поскольку можно перейти в проигрышную позицию с \(1\) камнем, убрав \(2\).
Позиция — это не сам ход и не стратегия. Ход описывает переход из одной позиции в другую, а стратегия задаёт правила выбора ходов на всём протяжении партии. Все возможные переходы между позициями образуют граф игры.
Позиция является выигрышной, если из неё существует ход:
Главное
- Позиция полностью описывает состояние игры и доступные из него ходы.
- Выигрышная позиция имеет ход в проигрышную; проигрышная не имеет ходов в выигрышные позиции.
- Позиции и переходы между ними удобно представлять графом и классифицировать динамически.