"Информатика", Семёнов А.Л., Рудченко Т.А.
В играх с ходами по очереди победа зависит не только от выбранного хода, но и от ответа соперника. Чтобы найти надёжный способ выиграть, игру описывают через позиции — состояния перед ходом, — и проверяют, куда ведут разрешённые действия. Равновесная выигрышная стратегия учитывает, что оба участника будут играть наилучшим образом. Такой разбор помогает понять, кто может гарантировать победу, а кто не сможет изменить исход даже удачным на вид ходом.
Текст подготовлен нейронной сетью по теме параграфа и не заменяет учебник — важные факты и формулировки сверяйте с ним.
Игра с двумя игроками — это игра, в которой участники по очереди делают ходы по правилам, а исход зависит от этих ходов. Например, игроки могут по очереди забирать фишки со стола. Это определение помогает понять, чьи действия нужно учитывать при поиске способа выиграть.
Позиция в игре — состояние перед ходом игрока: например, число оставшихся фишек или расположение фигур. Два разных набора уже сделанных ходов могут привести к одной и той же позиции. Поэтому позиция нужна, чтобы разбирать игру по состояниям, а не заново пересчитывать всю историю.
Выигрышная стратегия — правило выбора ходов, которое позволяет добиться победы независимо от ответов соперника. Это не один заранее выбранный ход: продолжение зависит от того, что сделает другой игрок. Понятие помогает отличить гарантированный план от надежды на ошибку соперника.
Равновесная выигрышная стратегия — выигрышная стратегия, рассчитанная на то, что соперник тоже будет выбирать лучшие для себя ходы. Иными словами, игрок не строит план на том, что другой участник растеряется или ошибётся. Такое определение нужно, чтобы оценить, можно ли действительно гарантировать победу.
Для анализа важнее знать текущую позицию, чем перечислять все предыдущие ходы. Если на столе осталось четыре фишки, разрешённые действия и возможные продолжения определяются этим числом, а не тем, каким путём к нему пришли. Благодаря этому похожие части игры можно сравнивать и разбирать одинаково.
Из каждой позиции нужно выписать все разрешённые ходы и новые позиции, которые после них получатся. Например, если можно взять одну или две фишки, то из пяти фишек можно перейти к четырём или к трём. Полный список нужен, потому что игрок не обязан выбирать только тот ход, который первым пришёл в голову.
Позиция выигрышная для того, кому предстоит ход, если он может перевести игру в позицию, проигрышную для соперника. Если такой ход найден, он создаёт препятствие для любого дальнейшего плана соперника: тот получает состояние, в котором нет хода к своей победе. Поэтому мало найти просто разрешённый ход — надо проверить, каким будет положение после него.
Удобно начинать с конца игры: там правила сразу показывают, кто победил и какие позиции уже проигрышны для следующего игрока. Затем рассматривают позиции, из которых можно попасть в эти конечные состояния, и отмечают выигрышные. Продвигаясь назад по возможным ходам, можно классифицировать и начальную позицию, не перебирая игру вслепую.
При построении равновесной стратегии нельзя рассчитывать на удобный или случайный ответ соперника. Если у него есть несколько разрешённых ходов, стратегия должна сохранять возможность победы при каждом из них. Именно поэтому для выигрышной позиции достаточно найти один удачный ход, а проигрышной она не станет, если хотя бы один ответ соперника оставит вас в трудном положении.
| Что проверяем | Выигрышная позиция | Проигрышная позиция |
|---|---|---|
| Есть ли ход, ведущий к позиции, проигрышной для соперника | Да, достаточно найти хотя бы один такой ход | Нет, все ходы ведут к выигрышным позициям соперника |
| Какой результат получится при наилучшей игре обоих участников | Игрок, которому предстоит ход, может гарантировать победу | При наилучшей игре соперник может не дать этому игроку победить |
| Как действовать игроку, которому предстоит ход | Выбрать ход в проигрышную позицию соперника | Соперник может ответить так, чтобы получить преимущество |
| На что рассчитывает стратегия | На собственный правильный выбор при любом ответе соперника | Победа может зависеть от ошибки соперника |
Проверяй строки таблицы по очереди: сначала перечисли ходы из позиции, затем оцени, куда они ведут. Для выигрышной позиции найди хотя бы один ход в проигрышную для соперника; для проигрышной проверь, что подходящего хода нет. Всегда рассуждай так, будто соперник заметит самый сильный ответ.
На столе лежат пять фишек, за ход разрешено взять одну или две, а победит тот, кто заберёт последнюю. Нужно выбрать первый ход и заранее понять, как отвечать на разные действия соперника. Для этого выясним, какие малые количества оставляют игрока без способа гарантировать победу.
Ответ: первый игрок берёт две фишки. Затем он берёт столько, чтобы вместе с ходом соперника получилось три: на ход в одну фишку отвечает двумя, на ход в две — одной.
Теперь начальное количество равно восьми, а правила не изменились. Чтобы понять, может ли первый игрок гарантировать победу, найдём проигрышные позиции с конца. Нужно учитывать оба возможных хода соперника, а не рассчитывать на один удобный ответ.
Ответ: да, первый игрок может гарантировать победу: ему нужно взять одну фишку и оставить семь. После хода соперника он сможет оставить ему три или семь фишек — проигрышные позиции для игрока, которому предстоит ход.
Здесь разрешённых ходов больше, поэтому проверять нужно все три ответа. Начнём с конца и будем искать количества, которые удобно оставлять сопернику. При таком правиле проигрышные позиции повторяются через четыре фишки.
Ответ: у первого игрока нет стратегии, гарантирующей победу. Второй игрок может после каждого хода первого дополнить число взятых фишек до четырёх: если первый взял одну, второй берёт три; если два — два; если три — один. Так после пары ходов снова будет оставаться число, кратное четырём, и в итоге первый игрок получит проигрышную позицию.
Ошибка — назвать ход выигрышным, потому что он выглядит удачным. Так можно не заметить ответ, который переворачивает положение. Проверь себя: после этого хода рассмотри лучший ответ соперника, а затем продолжи анализ.
Иногда выигрышной считают любую позицию, из которой можно сделать ход. Но наличие хода ничего не говорит о результате: он может привести соперника к удобному состоянию. Убедись, что выбранный ход ведёт именно в проигрышную для соперника позицию.
Если рассмотреть только один ответ соперника, стратегия может оказаться ненадёжной. Такой пропуск часто происходит, когда хочется быстрее найти красивый план. Перечисли все разрешённые ответы и проверь, что стратегия работает при каждом из них.
Выигрышную стратегию путают с цепочкой ходов, записанной заранее. Но заранее неизвестно, какой ход выберет соперник, поэтому продолжение надо выбирать по текущей позиции. Проверь себя: для каждого возможного ответа соперника должен быть предусмотрен подходящий следующий ход.
Чтобы разбирать такие игры, нужно уметь читать правила, перечислять разрешённые ходы и отслеживать, как меняется состояние после каждого действия. Это похоже на пошаговое выполнение алгоритма: после одного действия мы получаем новые данные и решаем, что делать дальше. Навык пригодится в играх с фишками, числами и несколькими кучами, а также при составлении алгоритмов, зависящих от действий другого участника.
Что в игре называют позицией?
Позиция — это состояние игры перед ходом: например, сколько фишек осталось на столе. По позиции можно определить, какие ходы разрешены и к чему они приведут.
Чем выигрышный ход отличается от выигрышной стратегии?
Выигрышный ход — отдельное действие, после которого сопернику остаётся проигрышная позиция. Выигрышная стратегия — правило выбора ходов на протяжении игры, которое учитывает разные ответы соперника и гарантирует победу.
Как определить, выигрышная позиция или проигрышная?
Позиция выигрышная, если из неё есть ход в проигрышную позицию для соперника. Если все разрешённые ходы ведут в выигрышные позиции соперника, позиция проигрышная.
Почему при поиске стратегии нужно учитывать все ответы соперника?
Соперник может выбрать любой разрешённый ход, в том числе самый неудобный для нас. Если стратегия работает только при одном его ответе, она не гарантирует победу.
С чего начинать анализ игры?
Начни с конечных позиций, где игра уже заканчивается и результат известен по правилам. Затем шаг за шагом проверь позиции, из которых можно попасть в уже изученные.
Равновесные выигрышные стратегии