Главная » Хабрахабр » Стратегия игры в телепатию

Стратегия игры в телепатию


Одно из изданий этой механики

Вы и второй игрок берёте по 3 карты из этой колоды. Есть колода из 100 карт с натуральными числами от 1 до 100, каждого по одному. Но нельзя меняться информацией между собой и показывать карту до момента, пока она не будет положена на стол. Задача — одну за одной выложить их на стол в порядке возрастания. То есть нельзя говорить, стучать по столу, подмигивать и так далее — ничего нельзя.

В момент, когда первая же карта ложится неправильно — оба игрока проигрывают. Если в конце игры 6 карт выложены правильно, оба игрока выигрывают.

Возможно, он даже не говорит на известных вам языках. Ваша задача — выиграть в этой игре. С вами играет человек, которого вы до этого не видели. И он с большой вероятностью уже пробовал играть в эту игру с другими людьми сегодня. Но он точно землянин. Какова ваша стратегия?

Не спешите под кат, сначала подумайте чуть-чуть, пожалуйста.
Сначала смотрим на транзакции и доступную информацию:

  1. Есть акт выкладывания карты — это, фактически, передача информации о том, что «это карта минимальная из тех, что у меня на руке, и я считаю её минимальной в принципе».
  2. Есть невыкладывание карты: это значит, что «я колеблюсь относительно гипотезы минимальности значения карты». Невыкладывание карты — это функция времени, то есть паузы между действиями тоже передают значимую информацию.
  3. Есть визуальное расположение карты на руке — откуда именно из этих трёх карт она тащится. Скорее всего, эта информация пока шум, но она есть.

Теперь мы должны подумать о том, как правильно действовать в этой игре. Предположим, у вас есть карты:

11, 47, 93

На столе, фактически, лежит карта 0 (только её не видно), что позволяет нам уравнять первый ход с другими по условиям матмодели.

Карты оппонента мы не знаем.

Первое приближение

Первая стратегия — выкладывать карты по очереди со вторым игроком. По мере возрастания. В целом, учитывая распределение, это будет иметь какой-то смысл (по крайней мере, лучше, чем случайные действия).

Но в случае, если у второго игрока в руках набор вроде 5, 33, 41, естественно, это не сработает.

Второе приближение

Разбиваем интервал от 1 до 100 на 6 частей по количеству карт, получаем 16,(6). Считаем, что каждая следующая карта должна ложиться в этот интервал и кладём её, если она ложится, и не кладём, если нет. Если у нас две карты ложатся в этот интервал — кладём обе подряд.

Третье приближение

Начинаем считать матожидание появления следующей карты. Это значит, что чем больше интервал между нашими картами в руке, тем меньше вероятность выкладывания следующей карты с нашей стороны. Мы не выкладываем свою карту, если вероятность показывает, что действие должен сделать второй игрок.

Все три метода страдают очевидными недостатком: они не гарантируют победу.

Четвёртое приближение

Тут нам впервые начинает быть нужна помощь второго игрока. Мы должны залезть ему в голову и попытаться понять, как мыслит он. Скорее всего, он полуинтутивино или сознательно придёт к чему-то подобному — если непохоже, что карту надо выкладывать, то он будет ждать. Если похоже, то выложит сразу.

Например, если на столе карта 45, а у него есть карта 46 — очевидно, что он сделает это почти мгновенно.
Если мы положили 45, а у него есть 47 — тоже очевидно, что он сделает это мгновенно, потому что если бы у нас была 46, мы бы её сразу же и положили за 45.
Если у нас есть 48, а он не выложил 47 сразу — значит, можно класть 48.
Если он видит, что мы не выложили 48, а у него есть 49, то он кладёт её.

То есть дальше задача превращается в измерение функции времени между выкладкой карт. Но есть важный переход к тому, почему именно так.

Переходим к взаимодействию игроков

Когда игроки не могут меняться информацией, в действие вступает интересная часть теории игр. Теория игр вообще странная штука, которая предполагает, что вокруг вас только и исключительно рациональные люди. И землянин, который играет с вами, тоже рациональный.

Как бы вы оба оптимально действовали? Теория игр предлагает следующий вариант: предположим, что вы могли бы договориться до игры.

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

То есть вопрос «о чём бы мы договорились» равен в этой ситуации вопросу «как бы вы оба оптимально действовали в принципе, если бы знали, что другой игрок тоже будет оптимально действовать?»

Цель-то у игроков одна.

Каждая новая означала бы, что наши следующие карты довольно дальше и дальше от последней выложенной. Скорее всего, мы бы начали отсчитывать секунды от выкладки последней карты. В идеальном случае если бы наша карта была на 15 единиц больше последней, а карта второго игрока — на 20 единиц, то мы бы выкладывали на 15-й секунде, а он бы — на 20-й секунде.

Раз уже мы решили считать секунды между выкладкой карт на то, чтобы давать шанс другому игроку сходить, то зачем останавливаться? Что приводит нас к модели, когда можно играть вслепую и вообще без игроков. На 17-й секунде надо выложить карту 17, если она есть. Модель в финале на любое количество игроков выглядит так: каждый про себя отсчитывает время и выкладывает карту на текущем номере секунды. Для этого даже не нужно видеть никакие другие действия игроков. И так далее. И даже знать, сколько их.

Есть другие оптимальные стратегии, но они, в целом, слабее. Так вы будете выигрывать всегда и гарантированно.

Это может быть и день, и минута, но, согласитесь, это куда менее вероятно в общей ситуации. Почему такт — это секунда? Потому что мы с некоторой натяжкой пользуемся общим для землян фреймворком.

Потому что он сделал то же самое — создал у себя в голове нас, договорился с нами и начал действовать. Понимаете, что только что случилось? Мы создали в голове второго игрока, договорились с ним — и если он рационален, то он настоящий это понял и действует именно так, как договорено.

Потому что есть чёткий критерий, к какой стратегии нужно идти. То есть знание, что все в игре рациональны позволяет договариваться без передачи информации.

Конечно, тут есть очевидная проблема.

Чуть в сторону от рационализма

Проблема в том, что игроки нерациональны. Люди вообще нерациональны, смиритесь с этим.

Замрите на секудну и загадайте число, предполагая, что с вами играет весь Хабр, включая маркетологов, которые публикуют посты в корпоративных блогах. Мы играли в компании в игру «Загадай число от 1 до 100, и если оно будет равняться половине от среднезагаданного, ты выиграешь».

Готово?

Правильный, но неверный ответ

Решение там индуктивное: поскольку нам нужна половина от среднего, то загадывать больше 50 не имеет смысла (нам же нужна половина). Пользуясь доводами теории игр, надо загадывать строго 1. Игроки это поняли, поэтому загадывать больше 25 нет смысла… и так мы доходим до 1.

А прикол в том, что мы не знаем, станет ли кто-то так думать в принципе среди игроков. Нам нужен прогноз доли игроков, которые будут пользоваться такой стратегией. Ну и мы не знаем, сколько итераций в размышлениях игрок пройдёт. И мы даже не знаем, как умный игрок оценивает способность других игроков думать. То есть нам нужна поправка на то, что даже полностью рациональные люди внесли поправки на нерациональных.

Обычно на практике результат (число, которое надо было загадывать) бывает в районе 4-15. В эту игру несколько раз играли в газетах. У нас первый же игрок загадал 92. Наше среднее было 16, то есть нужно было загадать 8, чтобы выиграть. Я на него рассчитывал и полагался, зная результаты двух его последних переговоров.

Причина — у меня был более реалистичный прогноз, чем тот, что даёт рациональная теория игр. Я в этой ситуации повёл себя неправильно с точки зрения теории, но выиграл.

Например, скорее всего, может сложиться так, что он интуитивно поймёт разницу во времени, но не сможет разделить случаи с интервалом в 20 или 30 единиц от выложенной карты. Поэтому следующий слой рационализма в игре в телепатию — предположить, насколько наш второй игрок способен повторить те же вычисления и скорректировать свою стратегию по этому. Скорее всего, нам придётся выравниваться под его масштаб времени (нелинейную шкалу, похожую на квадратичную). Придётся подстраиваться на лету во время игры — по его ходам. Его нерациональные действия снизят наши общие шансы на победу, но наши действия помогут выправить то, что получится.

Но просто он может не понять. Разумеется, если бы мы ему объяснили про секунды, он бы понял и согласился (в подавляющем числе случаев). Или в его культурном коде нет понятия времени. Или посчитать тактом что-то другое. Такова жизнь. Или оно не такое, как у нас. Но мы сделали, что смогли, и пары с нами будут выигрывать чуть чаще, чем пары из двух нерациональных людей.

Возможно, если мы поймём, что он полностью неадекват, нам нужно будет переключить стратегию на расчёт матожидания его карты и своей карты.

Например, если на игротеке отрубают свет, у аниматоров есть аварийная фишка: включить фонарь, сообщить всем, что сейчас фонарь выключится, и нужно по очереди досчитать до ста (это примерно половина от участников). Механика имеет несколько практических приложений. Если сбились или выкрикнули одновременно два голоса — надо начинать с самого начала. Каждый может кричать только одно число один раз. Обычно питание удаётся восстановить куда раньше, чем игроки досчитают. Потом выключить фонарь, крикнуть «один» и пойти выяснять, что происходит. А поскольку им объяснили, как играть, мало кто пугается.


Оставить комментарий

Ваш email нигде не будет показан
Обязательные для заполнения поля помечены *

*

x

Ещё Hi-Tech Интересное!

Ложные срабатывания в PVS-Studio: как глубока кроличья нора

Наша команда оказывает быструю и эффективную поддержку клиентов. В поддержке принимают участие только программисты, так как вопросы нам тоже задают программисты и над многими из них приходится подумать. Хочется описать одно из недавних обращений в поддержку на тему ложного срабатывания, ...

Онлайн контест по решению задачи из теории игр

Привет, Хабр! На факультативе по теории игр мы решаем различные интересные задачи, и я хотел бы поделиться с вами одной из таких. Меня зовут Миша, и я студент. Описание игры «Я люблю вархаммер, поэтому решил адаптировать условие» Играют двое. 1. ...