Как всегда выигрывать в цуефа

от admin

Как выигрывать в игре камень-ножницы-бумага? (реализация оптимальной стратегии в Wolfram Mathematica)

Перевод поста Джона Маклуна (Jon Mcloone, директор департамента международного бизнеса и стратегического развития Wolfram Research). Оригинал поста: How to Win at Rock-Paper-Scissors
Скачать пост в виде документа Mathematica

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

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

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

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

Для начала нам необходимо просто иметь возможность начать игру. На тот момент уже была разработана и доступна демонстрация, позволяющая играть в камень-ножницы-бумагу, но это было не совсем то, что мне нужно, поэтому я написал свою версию. Этот пункт не требует особых пояснений:

По большей части этот код описывает пользовательский интерфейс и правила игры. Вся стратегия компьютерного игрока содержится в этой функции:

где 1 соответствует камню, 2 — бумаге и 3 — ножницам. Это оптимальное решение. Как бы вы ни играли, вы выиграете столько же игр, сколько и компьютер, и ваш показатель побед будет колебаться в районе нуля.

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

Первый аргумент функции представляет собой историю прошлых игр. Например, в наборе данных, представленных ниже, компьютер (вторая колонка — второй элемент каждого подсписка) только что сыграл бумагу (ей соответствует число 2) против камня, сыгранного человеком (число 1). Это видно по последнему элементу списка. Также видно, что такая ситуация уже возникала дважды, и оба раза следующим ходом человека был снова камень.

Второй аргумент это количество последних элементов истории, по которым и будет вестись поиск. В данном случае в качестве аргумента функции передано число 1, что осуществляет поиск в данных только случаев вхождения <1,2>. Если мы выберем 2, то функция будет искать вхождения последовательности <3,2>, <1,2>и вернёт пустой список, поскольку такая последовательность ранее не встречалась.

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

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

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

Таким образом из этих двух проверок мы можем обнаружить, что первый даёт оценку в 100%, что следующим выбором человека будет камень, а второй показывает, что с 75% вероятностью человек выберет камень и с 25% вероятностью — ножницы.

И здесь я несколько застопорился в решении задачи.

В данном случае два предсказания по крайне мере более менее близки по результату, хотя и расходятся в численных значениях вероятностей. Но если вы проводите поиск по трём «срезам» данных c рядом различных длин истории, и результаты предсказаний противоречивы — как их объединить?

Я поместил заметку об этой проблеме в папку «Написать про это в блог» и забыл о ней до тех пор, пока несколько недель назад не произошёл спор о том, как осветить концепцию «статистической значимости» в курсе Computer-Based Math.

Я понял, что вопрос состоит не в том, как скомбинировать полученные предсказания, а в том, как определить, какое из предсказаний наиболее значимое. Одно из предсказаний могло бы быть более значимым, чем остальные, поскольку оно отражает более выраженную тенденцию или, может быть, основано на большем наборе данных. Это было неважно для меня, и поэтому я просто использовал p-значение теста на значимость (с нулевой гипотезой о том, что оба игрока играют случайно), чтобы упорядочить полученные предсказания.

Думаю, мне следовало бы прислушаться к нашему же первому принципу о том, что первым шагом в решении любой математической проблемы является “верная постановка вопроса”.

Теперь, если мы возьмём последний полученный нами результат, обнаруживается, что лучшее предсказание — камень, имеющее p-значение 0.17. Это значит, что лишь с вероятностью 0.17, данные, используемые для данного предсказания, отклоняются от дискретного равномерного распределения (DiscreteUniformDistribution[<1,3>]), причём скорее случайно, чем из-за систематической ошибки, производимой человеческом или по какой-либо другой причине, которая могла изменить распределение.

Чем меньше это p-значение, тем более уверенными мы можем быть в том, что нашли настоящий шаблон поведения. Так что мы просто осуществляем предсказания для различных длин истории и срезов данных и выбираем предсказание с наименьшим p-значением.

И делаем такой выбор, который побьёт выбор человека.

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

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

Конечно, такое решение хорошо только против примитивных попыток казаться случайным. Его предсказуемость делает его подверженным возможному проигрышу против хорошо просчитанной и намеченной стратегии. Крайне интересно попробовать победить эту программу при помощи интуиции. Это возможно, но если вы перестанете думать либо будете думать слишком усердно, вы скоро отстанете. Конечно, программа могла бы с лёгкостью это сделать, применяя тот же алгоритм с целью предсказать следующий ход этой программы.

Такой подход ведёт к началу некой «гонки вооружений», соревнований по написанию алгоритмов, которые будут выигрывать в камень-ножницы-бумагу у алгоритма соперника, и единственный способ прекратить это — вернуться к стратегии равновесия Нэша, осуществляя выбор через RandomInteger[<1,3>].

Дополнение 1
В том случае, если вы не знаете, как играть в эту игру, правила таковы: вы выбираете камень, ножницы или бумагу, используя один из трёх жестов, показанных одновременно вами и вашим соперником. Камень побеждает ножницы (делает их тупыми), ножницы побеждают бумагу (они её режут), а бумага побеждает камень (она его заворачивает). Победивший получает одно очко, в случае ничьей оба игрока не получают очков.

Благодарю Сергея Шевчука за помощь, оказанную в переводе данного поста.

Все секреты победы в игре «Камень, ножницы, бумага»

Все секреты победы в игре «Камень, ножницы, бумага»

Невозможно вспомнить, когда появилась эта игра. Она была с нами с самого детства — в нее играли даже наши родители и дедушки. Однако, они вряд ли знали оптимальные стратегии, как победить в игре «Камень, ножницы, бумага». Мы обязательно про это расскажем, а сначала — немного истории и правил.

Когда появилась «Камень, ножницы, бумага»

На самом деле «Камень, ножницы, бумага» пришла к нам из Японии. Она довольно распространена в Азии — играть в нее любят и в Южной Корее, и в Малайзии и даже в Непале. По японски ее название звучит «Джан, кен, пон». Первые два слога в названии, по-видимому, представляют собой одно слово, которое означает «два кулака». Слово «пон» в японском языке ничего не обозначает, но возможно оно попало в название из китайского, ведь сами японцы предполагают, что игра пришла к ним из Китая.

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

Правила «Камень, ножницы, бумага»

Два игрока. Три фигуры. Три попытки. Только один конечный результат. Камень бьет ножницы, которые бьют бумагу, которая бьет камень. Ни один из предметов не является доминантным над всеми другими. Каждая игра заканчивается явным победителем и проигравшим, а в случае страшной ничьей — мгновенным реваншем. Чтобы определить победителя из двух участников игры, нужно в среднем 1,5 попытки, для определения победителя из трех игроков нужно в среднем 2,25 попытки. По теории вероятностей в классическом варианте вероятность победы, проигрыша и переигровки — одинаковая: 1/3=0,333. Это идеальный интернациональный способ жеребьевки. В «камень, ножницы, бумага» нет места предвзятости, мухлежу или несправедливости. Все просто.

Читать:
Почему принтер печатает с конца

С другой стороны, если все было так просто, то не существовало бы глобальных научных исследований и соревнований по этой «простой» игре. Да, вы все правильно поняли: есть всемирный чемпионат по игре в «камень, ножницы, бумага» и организация the World Rock Paper Scissors Association («Всемирная ассоциация "камень, ножницы, бумага""). Несмотря на то, что исход идеальной игры случаен, при наличии определенных навыков игры с реальными противниками ее исход можно предугадать, так как многие люди сознательно не действуют случайным образом или даже не способны на такое. Но вам же это вся эта общеобразовательная информация неинтересна, вам рецепт успеха подавай, верно? Тут все действительно просто.

Как всегда побеждать в «Камень, ножницы, бумага»

Есть несколько стратегий. Начнем с научной. В 2015 году трое китайских исследователей Чжицзянь Ван, Бин Сюй и Хай-джун Чжоу провели масштабный эксперимент. Они наблюдали за 360 студентами, разделенными на 60 команд по шесть человек, каждая из которых должна была сыграть 300 раундов в «камень, ножницы, бумага». На все про все ушло более двух часов. И вот выводы, к которым пришли ученые:

  • Люди, которые победили, как правило, снова выбирают тот же предмет
  • Проигравшие практически всегда меняют предмет

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

Если вы победили, соперник ожидает в следующем раунде от вас тот же предмет, которым вы только что его победили. Другими словами, если вы показали камень, который победил ножницы, то соперник ждет от вас опять камень и готовится показать бумагу. Значит, вам надо показать ножницы. Следовательно, второе правило:

Профессиональные игроки в «камень, ножницы, бумага» говорят, что хоть и есть только 27 возможных комбинаций в трех раундах, восемь из них — «Великие восемь гамбитов» — являются наиболее широко используемыми и имеют полуофициальные названия.

  • "Лавина» — камень, камень, камень
  • "Клерк» — бумага, бумага, бумага
  • "Ящик с инструментами» — ножницы, ножницы, ножницы
  • "Крещендо» — бумага, ножницы, камень
  • "Развязка» — камень, ножницы, бумага
  • "Пачка денег» — камень, бумага, бумага
  • "Бумажная кукла» — ножницы, бумага, бумага
  • "Сэндвич» — бумага, ножницы, бумага

В дополнение к этим комбинациям, обсуждая выигрышные стратегии, профессиональные игроки в один голос говорят о способности предсказать следующий ход противника через положение и движение его играющей руки. В 2012 году японцы построили робота по имени Janken (так по-японски называется эта игра). Он побеждал человека в «камень, ножницы, бумага» со стопроцентным результатом не с помощью определенной стратегии, а за счет анализа движений с помощью высокоскоростной камеры. Для распознавания ему было достаточно 20 миллисекунд. Спустя год ученые из лаборатории Исикавы Оку изобрели вторую версию машины, который распознавал движения всего лишь за миллисекунду.

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

Как выиграть в камень, ножницы, бумага

В создании этой статьи участвовала наша опытная команда редакторов и исследователей, которые проверили ее на точность и полноту.

Команда контент-менеджеров wikiHow тщательно следит за работой редакторов, чтобы гарантировать соответствие каждой статьи нашим высоким стандартам качества.

Количество просмотров этой статьи: 46 567.

Хоть и считается, что «Камень, ножницы, бумага» — это игра на удачу, на самом деле это не так! В зависимости от опыта оппонента вы можете наблюдать за основными закономерностями в его игре, воспользоваться статистическими тенденциями или ввести противника в заблуждение, чтобы успешно одержать победу.

Изображение с названием Win at Rock, Paper, Scissors Step 1

  • Камень, по статистике, — самый популярный ход, его выбирают в 35,4 % случаев. [1] X Источник информации

Изображение с названием Win at Rock, Paper, Scissors Step 2

  • В игре «Камень, ножницы, бумага» ножницы выбирают реже всего, лишь в 29,6 % случаев. [2] X Источник информации

Изображение с названием Win at Rock, Paper, Scissors Step 3

  • Например, если ваш соперник бросил ножницы два раза подряд, можно допустить, что он не сделает этого и в третий раз. Он либо выберет камень, либо бумагу. В таком случае вам лучше бросить бумагу, потому что она либо побьет камень, либо принесет вам ничью против бумаги. [3] X Источник информации

Изображение с названием Win at Rock, Paper, Scissors Step 4

  • Например, объясняя, что камень бьет ножницы, используйте для этого фигуру ножниц (вместо камня), а потом снова используйте знак ножниц, разъясняя, что они бьют бумагу. Так вы заложите образ ножниц в подсознание своего противника, он, скорее всего, машинально разыграет их в первом раунде. Будьте готовы бросить камень, чтобы побить его ножницы. [4] X Источник информации

Изображение с названием Win at Rock, Paper, Scissors Step 5

Изображение с названием Win at Rock, Paper, Scissors Step 6

  • Например, если оппонент выиграл у вас с камнем, вам стоит в следующий раз выбрать бумагу, чтобы побить камень соперника, который он, скорее всего, использует снова. [6] X Источник информации

Изображение с названием Win at Rock, Paper, Scissors Step 7

  • Например, если соперник указательным пальцем зажимает в кулаке большой, можно предположить, что соперник выберет камень. [7] X Источник информации
  • Если рука соперника расслаблена, скорее всего, он покажет бумагу.
  • Если расслаблены средний и указательный пальцы, скорее всего, он бросит ножницы. [8] X Источник информации

Изображение с названием Win at Rock, Paper, Scissors Step 8

  • Например, скажите сопернику, что собираетесь бросить камень. Поскольку ваш оппонент будет думать, что на самом деле вы не выберете камень, он предположит, что вы покажете бумагу или ножницы. И, скорее всего, в свою очередь, он бросит ножницы или камень, чтобы побить вашу бумагу или ножницы. Таким образом, когда вы выберете камень, вы либо побьете его ножницы, либо сыграете в ничью с его камнем. В любом случае вы не проиграете! [9] X Источник информации

Изображение с названием Win at Rock, Paper, Scissors Step 9

  • С другой стороны, бумага рассматривается как самый пассивный ход, поэтому не стоит ожидать его от проигрывающего соперника. [10] X Источник информации

Изображение с названием Win at Rock, Paper, Scissors Step 10

  • Бумага будет бить камень (самый распространенный ход). И хотя ножницы могут побить бумагу, их выбирают реже всего, а значит, шансы проиграть менее вероятны.

Изображение с названием Win at Rock, Paper, Scissors Step 11

Изображение с названием Win at Rock, Paper, Scissors Step 12

Изображение с названием Win at Rock, Paper, Scissors Step 13

Изображение с названием Win at Rock, Paper, Scissors Step 14

Изображение с названием Win at Rock, Paper, Scissors Step 15

  • Если оба игрока выбрасывают один и тот же знак, это приводит к ничьей. [14] X Источник информации

Изображение с названием Win at Rock, Paper, Scissors Step 16

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

Дополнительные статьи

свистеть с помощью пальцев

громко свистеть

вызвать Кровавую Мэри

сделать лук и стрелы

делать кроссворды

связать себя веревкой

развлечься дома одному

стрелять из лука

играть на игровых автоматах

выиграть в UNO

стрелять аптечными резинками

  1. ↑http://www.telegraph.co.uk/men/thinking-man/11051704/How-to-always-win-at-rock-paper-scissors.html
  2. ↑http://www.telegraph.co.uk/men/thinking-man/11051704/How-to-always-win-at-rock-paper-scissors.html
  3. ↑http://worldrps.com/how-to-beat-anyone-at-rock-paper-scissors/
  4. ↑http://worldrps.com/how-to-beat-anyone-at-rock-paper-scissors/
  5. ↑https://www.psychologytoday.com/blog/the-blame-game/201504/the-surprising-psychology-rock-paper-scissors
  6. ↑https://arstechnica.com/science/2014/05/win-at-rock-paper-scissors-by-knowing-thy-opponent/
  7. ↑http://www.telegraph.co.uk/men/thinking-man/11051704/How-to-always-win-at-rock-paper-scissors.html
  8. ↑https://www.psychologytoday.com/blog/the-blame-game/201504/the-surprising-psychology-rock-paper-scissors
  9. ↑http://worldrps.com/how-to-beat-anyone-at-rock-paper-scissors/
  1. ↑https://www.psychologytoday.com/blog/the-blame-game/201504/the-surprising-psychology-rock-paper-scissors
  2. ↑http://www.telegraph.co.uk/men/thinking-man/11051704/How-to-always-win-at-rock-paper-scissors.html
  3. ↑http://www.grandparents.com/grandkids/activities-games-and-crafts/rock-paper-scissors
  4. ↑http://www.grandparents.com/grandkids/activities-games-and-crafts/rock-paper-scissors
  5. ↑http://worldrps.com/game-basics/the-official-rules-of-rock-paper-scissors/
  6. ↑http://worldrps.com/game-basics/the-official-rules-of-rock-paper-scissors/

Об этой статье

Команда wikiHow

В создании этой статьи участвовала наша опытная команда редакторов и исследователей, которые проверили ее на точность и полноту.

Команда контент-менеджеров wikiHow тщательно следит за работой редакторов, чтобы гарантировать соответствие каждой статьи нашим высоким стандартам качества. Количество просмотров этой статьи: 46 567.

Как всегда выигрывать в «Камень, ножницы, бумага»

Фото автора Пётр Глухов

Одному Богу известно, сколько спорных ситуаций в детстве решалось с помощью игры в «Камень, ножницы, бумага». Да что там малышня, полным-полно взрослых ребятушек, находящих легкий выход за считанные секунды и выброшенный знак. Так что же скрывается за незатейливым выкидыванием пальцев: воля случая или выверенная стратегия? Ученые твердо знают ответ и дают свой победоносный рецепт.

Совсем недавно коллектив китайских исследователей из Чжэцзянского университета (Zhejiang University) оповестил мир о смелых выводах своих психологических тестов. Ученые с декабря 2010 г. по март текущего провели 5 экспериментальных циклов. Каждый цикл включал в себя 12 сессий c 6 участниками. Итого, общее количество испытуемых достигло 360 человек. Соотношение полов составило 217:143 с женским перевесом (попросту девушки активней записывались). Студент или аспирант мог участвовать в исследовании лишь единожды. Люди находились вне зоны видимости друг друга, перед экранами монитора. Тем самым был исключен вербальный и визуальный контакт. Каждый из участников затратил от полутора до двух часов на 300 игр со случайным соперником. Стимулом к победам служило небольшое денежное вознаграждение за каждый выигранный раунд.

Так что же необходимо знать для победы? После наблюдения за огромным количеством «сражений», ученые обнаружили, что игрок, победивший своего противника в текущей партии, с большей вероятностью повторит свои действия в следующем раунде, а с меньшей вероятностью станет что-либо менять.

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

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

Проиграли? Выкиньте тот знак, который бьет последний победный знак вашего оппонента.

Выиграли? Не продолжайте показывать тот же знак, вместо этого выкиньте последнюю комбинацию вашего проигравшего соперника.

Все еще не до конца понятно? Вот какие выигрышные стратегии помогут вам оставаться непобедимыми:

Если вы победили в последней игре…

  • …выкинув камень, переходите к ножницам в следующей схватке
  • …выкинув ножницы, переходите к бумаге в следующей схватке
  • …выкинув бумагу, переходите к камню в следующей схватке

Если вы проиграли в последней игре (и противник не в курсе этой методики)…

  • …выкинув камень, переходите к ножницам в следующей схватке
  • …выкинув ножницы, переходите к бумаге в следующей схватке
  • …выкинув бумагу, переходите к камню в следующей схватке

Если вы проиграли в последней игре (и противник в курсе этой методики)…

  • …выкинув камень, переходите к бумаге в следующей схватке
  • …выкинув ножницы, переходите к камню в следующей схватке
  • …выкинув бумагу, переходите к ножницам в следующей схватке

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

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

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

Похожие статьи