Что это за игра
«Свинья» — игра в кости с одним решением, которое повторяется снова и снова: бросить ещё раз или остановиться, пока не поздно.
В свой ход вы бросаете одну кость сколько угодно раз. Каждый бросок прибавляет выпавшее к очкам хода — кроме единицы, которая сжигает их и передаёт кость сопернику. Кнопка «Стоп» переносит очки хода в банк и тоже передаёт кость. Кто первым наберёт в банке 100, тот выиграл; ничьих не бывает. Правила умещаются в три фразы, но верный ответ на вопрос «ещё разок?» зависит сразу от трёх чисел: вашего банка, банка соперника и того, сколько уже поставлено на текущий ход.
Что здесь значит «решена»
В 2004 году Тодд Неллер и Клифтон Прессер опубликовали работу «Optimal play of the dice game Pig»: для каждого из примерно полумиллиона состояний игры они вычислили итерацией ценности точную вероятность выигрыша после броска и после остановки. Играть оптимально — значит каждый раз выбирать большее из двух чисел. Эта страница проводит тот же расчёт прямо в браузере, когда вы включаете верхний уровень, — у машины это занимает около секунды.
Два уточнения, ради которых стоит быть точным. Первое: оптимальная стратегия — это не «стоп на N» ни для какого N. Если нарисовать границу между «бросать» и «стоп» в трёх измерениях, получится бугристая кривая поверхность — знаменитый «горб», — которую не воспроизводит ни одно простое правило. Второе: машина знает вероятность, а не исход. Она может сыграть безошибочную партию и проиграть её. Решённая игра в кости остаётся игрой в кости.
Ваши шансы
Это самая дружелюбная решённая игра на сайте. В Ниме формула назначает победителя заранее; здесь кость продолжает голосовать. Против оптимального игрока человек с любой разумной стратегией всё равно выигрывает заметную долю партий — простые правила вроде «стоп на 20» уступают совершенству считанные проценты.
Поэтому интересный вопрос не в том, можно ли обыграть верхний уровень — можно, и нередко, — а в том, выигрываете ли вы чаще, чем положено по вероятности. На одной партии это удача. На пятидесяти эти несколько процентов становятся видны.
За кого играет машина на каждом уровне
- «Стоп на 20»: бросает, пока ход не стоит 20 очков, и записывает. Классическая эвристика из учебника — надёжная, предсказуемая и уязвимая, когда счёт перекошен.
- «Держит темп»: поднимает планку, когда отстаёт, осторожничает, когда ведёт, и бежит к 100, как только чей-то банк подбирается к финишу. Эвристика в духе правила Неллера и Прессера «держи темп и заканчивай гонку».
- «Оптимальная стратегия»: полная таблица Неллера—Прессера, посчитанная в вашем браузере. В каждом состоянии машина знает свою точную вероятность выигрыша и выбирает лучшую ветку. Её нельзя переиграть — только перебросить.