Какое число чаще всего выпадает на кубике

от admin

Как жульничать при игре в кости – советы игрового эксперта

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

Сегодня подобные кубики известны, как «верхи и низы» [tops and bottoms]. Они полезны для нечестной игры, если вы склонны к подобным действиям, хотя не гарантируют постоянного выигрыша, и не выдерживают тщательного осмотра со стороны подозрительных соперников (им стоит только попросить рассмотреть кубик – и вас раскроют). Но при игре в кости есть несколько других вариантов жульничества, о некоторых из которых я вам расскажу.

Стоит отметить, что эти методы запрещено использовать в казино, и я не рекомендую вам использовать их в подобных заведениях – это лишь интересный метод изучения вероятностей.


Вероятности для честного кубика и для кубика «верх и низ».

У честной игральной кости вероятность выпадения любого числа из шести одинакова, и составляет 16,67%. В случае норвежского кубика числа 4 и 5 появляются в два раза чаще, поскольку они встречаются по два раза, поэтому для них вероятность равняется 1/3, 33,33%. В таблице перечислены эти вероятности.


Вероятности для суммы двух костей

Не нужно иметь особо живое воображение, чтобы понять, как можно использовать изменённые кости в свою пользу. Допустим, мы играем с двумя нормальными кубиками. Они могут выпасть 36-ю различными способами, и выдать 11 возможных вариантов суммы чисел. Например, любая из комбинаций 6+4, 4+6 и 5+5 даст в сумме 10.

Если мы будем использовать два изменённых кубика, на гранях которых есть только числа один, четыре и пять, мы не сможем выкинуть 11 или 12, поскольку на них нет шестёрок. Точно так же мы не можем выбросить три, поскольку у нас нет комбинации 1+2. Также мы не сможем получить комбинацию, сумма которой будет равна семи – а вероятность такой комбинации обычно наибольшая, 16,67%. В крэпс, игре в кости, в которую играют в казино, часто встречается ситуация, в которой вам совсем не нужна семёрка. Поэтому, если вы играете с костями, на которых невозможно выбросить семёрку, у вас будет преимущество.


Как не выбросить семёрку с двумя изменёнными кубиками

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


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

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

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

Кубик с изменённым центром тяжести («загруженный»)

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

С использованием костей «верх и низ» легко подсчитать вероятности выпадения различных сумм. С загруженным кубиком всё не так просто. Один из способов оценить вероятности – кинуть кубик много раз (возможно, тысячи), и посмотреть, какие числа выпадают, и как часто. Если вы увидите, что вероятность выпадения семи стала меньше, чем у честных кубиков, это может сыграть на руку при мошенничестве.

Контролируемые броски

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

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

Основы игрового баланса: случайность и вероятность наступления разных событий

Геймдизайнер Nival Анатолий Шестов опубликовал в своем блоге перевод очередной лекции курса «Принципы игрового баланса» игрового дизайнера Яна Шрайбера, который работал над такими проектами, как Marvel Trading Card Game и Playboy: the Mansion.

Редакция vc.ru публикует перевод с разрешения Шестова.

До сегодняшнего дня почти всё, о чем мы говорили, было детерминированным, и на прошлой неделе мы внимательно изучили транзитивную механику, разобрав её настолько подробно, насколько детально я могу объяснить. Но до сих пор мы не обращали внимание на другие аспекты многих игр, а именно на недетерминированные моменты — другими словами, случайность.

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

Игральные кости

Давайте начнем с чего-то простого — с бросания игральных костей. Когда большинство людей думает об игральных костях, они представляют себе шестигранный кубик, известный как d6. Но большинство геймеров видели множество других игральных костей: четырёхгранные (d4), восьмигранные (d8), двенадцатигранные (d12), двадцатигранные (d20). Если вы настоящий гик, у вас, может быть, где-то найдутся 30-гранные или 100-гранные кости.

Если вы не знакомы с данной терминологией, d означает игральную кость, а число, стоящее после него, — количество её граней. Если число стоит перед d, то оно обозначает количество игральных костей при бросании. Например, в игре «Монополия» вы бросаете 2d6.

Итак, в данном случае словосочетание «игральная кость» — условное обозначение. Существует огромное количество других генераторов случайных чисел, которые не выглядят как фигуры из пластика, но выполняют ту же функцию — генерируют случайное число от 1 до n. Обычную монету можно также представить в виде двугранной игральной кости d2.

Я видел два дизайна семигранной кости: одна из них выглядела как игральный кубик, а вторая была больше похожа на семигранный деревянный карандаш. Четырехгранный дрейдл, также известный как титотум, — аналог четырехгранной кости. Игровое поле с крутящейся стрелкой в игре Chutes & Ladders, где результат может быть от 1 до 6, соответствует шестигранной кости.

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

У игральных костей есть некоторые интересные свойства, о которых нам нужно знать. Во-первых, вероятность выпадения любой из граней одинакова (я предполагаю, что вы бросаете игральную кость правильной геометрической формы). Если вы хотите узнать среднее значение броска (тем, кто увлекается теорией вероятностей, оно известно как математическое ожидание), суммируйте значения на всех гранях и разделите это число на количество граней.

Сумма значений всех граней для стандартного шестигранного кубика равна 1 + 2 + 3 + 4 + 5 + 6 = 21. Делим 21 на количество граней и получаем среднее значение броска: 21 / 6 = 3,5. Это особый случай, потому что мы предполагаем, что все исходы равновероятны.

Что если у вас особенные игральные кости? Например, я видел игру с шестигранной игральной костью со специальными наклейками на гранях: 1, 1, 1, 2, 2, 3, поэтому она ведет себя как странная трехгранная игральная кость, с которой больше шансов, что выпадет число 1, чем 2, и скорее выпадет 2, чем 3. Какое среднее значение броска для этой кости? Итак, 1 + 1 + 1 + 2 + 2 + 3 = 10, делим на 6 — получается 5 / 3, или примерно 1,66. Таким образом, если у вас особенная игральная кость и игроки будут бросать три кости, а затем суммировать результаты — вы знаете, что сумма их броска будет равна примерно 5, и можете балансировать игру, основываясь на этом предположении.

Игральные кости и независимость

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

Если вы бросаете стандартный шестигранный кубик, и два раза подряд выпадает число 6 — вероятность того, что результатом следующего броска будет 6, точно так же равна 1 / 6. Вероятность не повышается от того, что кубик «нагрелся». В то же время вероятность не понижается: неверно рассуждать, что уже два раза подряд выпадало число 6, а значит, теперь должна выпасть другая грань.

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

Как сделать выпадение игральных костей более или менее случайным

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

Например, в случае 1d6 + 4 (то есть если вы один раз бросаете стандартную шестигранную игральную кость и прибавляете к результату 4), средним значением будет число от 5 до 10. Если вы бросаете 5d2, средним значением также будет число от 5 до 10. Результатом бросания 5d2 будут в основном числа 7 и 8, реже другие значения. Та же серия, даже то же среднее значение (в обоих случаях 7,5), но природа случайности разная.

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

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

Это не потому, что выпавшее число «заставляет» выпасть другое число, которое ещё не выпадало. А потому, что небольшая серия выпадения числа 6 (или 20, или другого числа) в итоге не так уж повлияет на результат, если вы бросите игральные кости ещё десять тысяч раз и в основном будет выпадать среднее значение. Сейчас у вас выпадет несколько больших чисел, а позже несколько маленьких — и со временем они приблизятся к среднему значению.

Это происходит не потому, что предыдущие броски влияют на игральные кости (серьёзно, игральная кость сделана из пластика, у неё нет мозгов, чтобы подумать: «Ой, давно не выпадало 2»), а потому, что так обычно происходит при большом количестве бросков игральных костей.

Таким образом, произвести расчеты для одного случайного броска игральной кости довольно несложно — по крайней мере, вычислить среднее значение броска. Есть также способы вычислить, «насколько случайно» что-либо происходит, и сказать, что результаты бросания 1d6 + 4 будут «более случайными», чем 5d2. Для 5d2 выпавшие результаты будут распределяться более равномерно. Для этого нужно вычислить среднеквадратическое отклонение: чем больше будет значение, тем более случайными окажутся результаты. Мне бы не хотелось сегодня приводить столько расчётов, эту тему я объясню позже.

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

Как вычислить вероятность при помощи подсчёта

Возможно, у вас возник вопрос: как мы можем вычислить точную вероятность выпадения определённого результата? На самом деле, это довольно важно для многих игр: если вы изначально бросаете игральную кость — скорее всего, есть какой-то оптимальный результат. Отвечаю: нам нужно посчитать два значения. Во-первых, общее число исходов при бросании игральной кости, а во вторых, число благоприятных исходов. Разделив второе значение на первое, вы получите нужную вероятность. Чтобы получить процентное соотношение, умножьте полученный результат на 100.

Вот очень простой пример. Вы хотите, чтобы выпало число 4 или выше, и один раз бросаете шестигранную игральную кость. Максимальное число исходов составляет 6 (1, 2, 3, 4, 5, 6). Из них 3 исхода (4, 5, 6) являются благоприятными. Значит, чтобы посчитать вероятность, делим 3 на 6 и получаем 0,5 или 50%.

Вот пример немного сложнее. Вы хотите, чтобы при бросании 2d6 выпало чётное число. Максимальное число исходов — 36 (по 6 вариантов для каждой игральной кости, одна кость не влияет на другую, поэтому умножаем 6 на 6 и получаем 36). Сложность вопроса данного типа заключается в том, что легко посчитать дважды. Например, при бросании 2к6 есть два варианта результата 3: 1+2 и 2+1. Они выглядят одинаково, но разница в том, какое число отображено на первой игральной кости и какое — на второй.

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

  • 2 (1+1);
  • 4 (1+3);
  • 4 (2+2);
  • 4 (3+1);
  • 6 (1+5);
  • 6 (2+4);
  • 6 (3+3);
  • 6 (4+2);
  • 6 (5+1);
  • 8 (2+6);
  • 8 (3+5);
  • 8 (4+4);
  • 8 (5+3);
  • 8 (6+2);
  • 10 (4+6);
  • 10 (5+5);
  • 10 (6+4);
  • 12 (6+6).

Оказывается, что есть 18 вариантов для благоприятного исхода из 36 — как и в предыдущем случае, вероятность равна 0,5 или 50%. Возможно, неожиданно, но довольно точно.

Моделирование методом Монте-Карло

Что если для такого подсчёта у вас слишком много игральных костей? Например, вы хотите знать, какова вероятность того, что выпадет сумма, равная 15 или больше, при броске 8d6. Для восьми игральных костей существует огромное множество разных результатов, и их подсчёт вручную займёт очень много времени — даже если мы найдем какое-нибудь хорошее решение, чтобы сгруппировать разные серии бросков игральных костей.

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

Если вы не разбираетесь в программировании и вам нужен не точный, а примерный ответ, вы можете смоделировать данную ситуацию в Excel, где вы подбросите 8d6 несколько тысяч раз и получите ответ. Чтобы бросить 1d6 в Excel, используйте формулу =FLOOR(RAND()*6)+1.

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

Как объединить независимые испытания

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

Как различить что-либо зависимое и независимое? В принципе, если вы можете выделить каждый бросок (или серию бросков) игральной кости как отдельное событие, то он независим. Например, мы бросаем 8к6 и хотим, чтобы выпала сумма, равная 15. Данное событие нельзя разделить на несколько независимых бросков игральных костей. Чтобы получить результат, вы вычисляете сумму всех значений, поэтому результат, выпавший на одной игральной кости, влияет на результаты, которые должны выпасть на других.

Вот пример независимых бросков: перед вами игра с игральными костями, и вы несколько раз бросаете шестигранные кубики. Чтобы вы остались в игре, при первом броске должно выпасть значение 2 или выше. Для второго броска — 3 или выше. Для третьего требуется 4 или выше, для четвертого — 5 или выше, для пятого — 6. Если все пять бросков успешные, вы выиграли. В данном случае все броски независимы. Да, если один бросок будет неудачным, он повлияет на результат всей игры, но один бросок не влияет на другой. Например, если ваш второй бросок игральных костей очень удачный, это никак не означает, что следующие броски будут так же хороши. Поэтому мы можем рассматривать вероятность каждого броска игральных костей отдельно.

Если у вас независимые вероятности и вы хотите знать, какова вероятность того, что все события наступят, вы определяете каждую индивидуальную вероятность и перемножаете их. Другой способ: если вы, чтобы описать несколько условий, используете союз «и» (например, какова вероятность наступления какого-то случайного события и какого-то другого независимого случайного события?) — посчитайте отдельные вероятности и перемножьте их.

Неважно, что вы считаете, — никогда не суммируйте независимые вероятности. Это распространённая ошибка. Чтобы понять, почему это неправильно, представьте себе ситуацию, когда вы подбрасываете монету и хотите знать, какова вероятность того, что два раза подряд выпадет «орёл». Вероятность выпадения каждой из сторон — 50%. Если вы суммируете эти две вероятности, вы получите 100% шанс того, что выпадет «орёл», но мы знаем, что это неправда, ведь два раза подряд могла бы выпасть «решка». Если вместо этого вы перемножите две вероятности, у вас получится 50% * 50% = 25% — это правильный ответ для расчёта вероятности выпадения «орла» два раза подряд.

Давайте вернёмся к игре с шестигранной игральной костью, где нужно, чтобы сначала выпало число больше чем 2, затем больше чем 3 — и так далее до 6. Каковы шансы того, что в данной серии из пяти бросков все исходы будут благоприятными?

Как говорилось выше, это независимые испытания, поэтому мы подсчитываем вероятность для каждого отдельного броска, а затем перемножаем их. Вероятность того, что исход первого броска будет благоприятным, равна 5/6. Второго — 4/6. Третьего — 3/6. Четвертого — 2/6, пятого — 1/6. Умножаем все результаты друг на друга и получаем примерно 1,5%. Победы в данной игре случаются довольно редко, поэтому, если вы добавите этот элемент в вашу игру, вам нужен будет довольно большой джекпот.

Отрицание

Вот ещё одна полезная подсказка: иногда сложно посчитать вероятность того, что событие наступит, зато легче определить шансы, что событие не наступит. Например, предположим, у нас есть ещё одна игра: вы бросаете 6d6 и выигрываете, если хотя бы один раз выпадет 6. Какова вероятность выигрыша?

В данном случае нужно учесть много вариантов. Возможно, выпадет одно число 6, то есть на одной из игральных костей выпадет число 6, а на других — числа от 1 до 5, тогда есть 6 вариантов того, на какой из игральных костей будет 6. Вам может выпасть число 6 на двух игральных костях, или на трёх, или на ещё большем количестве, и каждый раз нужно будет делать отдельный подсчёт, поэтому здесь легко запутаться.

Но давайте посмотрим на задачу с другой стороны. Вы проиграете, если ни на одной из игральных костей не выпадет число 6. В данном случае у нас есть 6 независимых испытаний. Вероятность того, что на каждой из игральных костей выпадет число, не равное 6, составляет 5/6. Перемножьте их — и получите примерно 33%. Таким образом, вероятность проигрыша составляет один к трём. Следовательно, вероятность выигрыша — 67% (или два к трём).

Из этого примера очевидно: если вы считаете вероятность того, что событие не наступит, нужно вычесть результат из 100%. Если вероятность выиграть равна 67%, то вероятность проиграть — 100% минус 67%, или 33%, и наоборот. Если сложно посчитать одну вероятность, но легко посчитать противоположную, посчитайте противоположную, а затем вычтите это число из 100%.

Соединяем условия для одного независимого испытания

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

Если вы хотите вычислить вероятность для нескольких не связанных между собой благоприятных исходов одного испытания, суммируйте вероятности каждого благоприятного исхода. Например, вероятность выпадения чисел 4, 5 или 6 на 1d6 равна сумме вероятности выпадения числа 4, вероятности выпадения числа 5 и вероятности выпадения числа 6. Данную ситуацию можно представить так: если вы в вопросе о вероятности используете союз «или» (например, какова вероятность того или иного исхода одного случайного события?) — подсчитайте отдельные вероятности и просуммируйте их.

Обратите внимание: когда вы вычислите все возможные исходы игры, сумма вероятностей их наступления должна быть равна 100%, иначе ваш расчёт был сделан неверно. Это хороший способ перепроверить свои вычисления. Например, вы проанализировали вероятность выпадения всех комбинаций в покере. Если вы просуммируете все полученные результаты, у вас должно получиться ровно 100% (или, по крайней мере, значение довольно близкое к 100%: если вы пользуетесь калькулятором, может возникнуть маленькая ошибка при округлении, но если суммируете точные числа вручную, всё должно сойтись). Если сумма не сходится, значит, вы, скорее всего, не учли какие-то комбинации или посчитали вероятности некоторых комбинаций неверно, и вычисления нужно перепроверить.

Неравные вероятности

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

Например, в одном из дополнений карточной игры Nuclear War есть игровое поле со стрелкой, от которого зависит результат запуска ракеты. Чаще всего она наносит обычный урон, более сильный или более слабый, но иногда урон усиливается в два или три раза, или ракета взрывается на стартовой площадке и причиняет вам вред, или происходит какое-то другое событие. В отличие от игрового поля со стрелкой в Chutes & Ladders или A Game of Life результаты игрового поля в Nuclear War неравновероятны. Некоторые секции игрового поля больше по размеру и стрелка останавливается на них гораздо чаще, в то время как другие секции очень маленькие и стрелка останавливается на них редко.

Итак, на первый взгляд, кость выглядит примерно следующим образом: 1, 1, 1, 2, 2, 3 — мы о ней уже говорили, она представляет из себя что-то вроде утяжелённой 1d3. Следовательно, нам нужно разделить все эти секции на равные части, найти самую маленькую единицу измерения, делитель, которому всё кратно, и затем представить ситуацию в виде d522 (или какой-то другой), где множество граней игральной кости будет отображать ту же ситуацию, но с большим количеством исходов. Это один из способов решения задачи, и он технически выполним, но есть более простой вариант.

Давайте вернёмся к нашей стандартной шестигранной игральной кости. Мы говорили, что для вычисления среднего значения броска для нормальной игральной кости нужно суммировать значения на всех гранях и разделить их на количество граней, но как именно происходит расчёт? Можно выразить это иначе. Для шестигранной игральной кости вероятность выпадения каждой грани равна точно 1/6. Теперь мы умножаем исход каждой грани на вероятность этого исхода (в данном случае 1/6 для каждой грани), а затем суммируем полученные значения. Таким образом, суммируя (1 * 1/6) + (2 * 1/6) + (3 * 1/6) + (4 * 1/6) + (5 * 1/6) + (6 * 1/6), получаем тот же результат (3,5), как и при расчёте выше. На самом деле мы считаем так каждый раз: умножаем каждый исход на вероятность этого исхода.

Можем ли мы произвести такой же расчёт для стрелки на игровом поле в игре Nuclear War? Конечно, можем. И если мы суммируем все найденные результаты, то получим среднее значение. Всё, что нам нужно сделать, — вычислить вероятность каждого исхода для стрелки на игровом поле и умножить на значение исхода.

Упомянутый метод расчёта среднего значения также подходит, если результаты равновероятны, но имеют разные преимущества — например, если вы бросаете игральную кость и выигрываете больше при выпадении одних граней, чем других. Например, возьмём игру, которая бывает в казино: вы делаете ставку и бросаете 2d6. Если выпадут три числа с наименьшим значением (2, 3, 4) или четыре числа с высоким значением (9, 10, 11, 12) — вы выиграете сумму, равную вашей ставке. Особенными являются числа с самым низким и самым высоким значением: если выпадет 2 или 12, вы выиграете в два раза больше, чем ваша ставка. Если выпадет любое другое число (5, 6, 7, 8), вы проиграете вашу ставку. Это довольно простая игра. Но какова вероятность выигрыша?

Начнем с того, что посчитаем, сколько раз вы можете выиграть. Максимальное число исходов при бросании 2d6 составляет 36. Каково количество благоприятных исходов?

  • Есть 1 вариант, что выпадет 2, и 1 вариант, что выпадет 12.
  • Есть 2 варианта, что выпадет 3 и 2 варианта, что выпадет 11.
  • Есть 3 варианта, что выпадет 4, и 3 варианта, что выпадет 10.
  • Есть 4 варианта, что выпадет 9.

Просуммировав все варианты, получаем 16 благоприятных исходов из 36. Таким образом, при нормальных условиях вы выиграете 16 раз из 36 возможных — вероятность выигрыша немного меньше, чем 50%.

Но в двух случаях из этих шестнадцати вы выиграете в два раза больше — это как выиграть дважды. Если вы будете играть в эту игру 36 раз, каждый раз делая ставку в $1, и каждый из всех возможных исходов выпадет один раз, вы выиграете в сумме $18 (на самом деле вы выиграете 16 раз, но два из них будут считаться как два выигрыша). Если вы играете 36 раз и выигрываете $18, не значит ли это, что вероятности равные?

Не торопитесь. Если вы посчитаете количество раз, когда можете проиграть, то у вас получится 20, а не 18. Если вы будете играть 36 раз, каждый раз делая ставку в $1, вы выиграете общую сумму в $18 при выпадении всех благоприятных исходов. Но вы проиграете общую сумму в $20 при выпадении всех 20 неблагоприятных исходов. В результате вы будете немного отставать: вы теряете в среднем $2 нетто за каждые 36 игр (вы также можете сказать, что теряете в среднем 1/18 доллара в день). Теперь вы видите, как легко в данном случае допустить ошибку и посчитать вероятность неправильно.

Перестановка

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

Пример данной ситуации из игры с игральными костями Farkle. Для каждого нового раунда вы бросаете 6d6. Если вам повезет и выпадут все возможные результаты 1-2-3-4-5-6 (стрейт), вы получите большой бонус. Какова вероятность того, что это произойдет? В данном случае есть множество вариантов выпадения данной комбинации.

Решение выглядит следующим образом: на одной из игральных костей (и только на одной) должно выпасть число 1. Сколько вариантов выпадения числа 1 на одной игральной кости? Вариантов 6, так как есть 6 игральных костей, и на любой из них может выпасть число 1. Соответственно, возьмите одну игральную кость и отложите её в сторону. Теперь на одной из оставшихся игральных костей должно выпасть число 2. Для этого есть 5 вариантов. Возьмите ещё одну игральную кость и отложите её в сторону. Затем на 4 из оставшихся игральных костей может выпасть число 3, на 3 из оставшихся игральных костей может выпасть число 4, на 2 костях — число 5. В итоге у вас остаётся одна игральная кость, на которой должно выпасть число 6 (в последнем случае игральная кость одна, и выбора нет).

Чтобы посчитать количество благоприятных исходов для выпадения комбинации «стрейт», мы умножаем все разные независимые варианты: 6 x 5 x 4 x 3 x 2 x 1=720 — похоже, есть довольно большое количество вариантов того, что выпадет эта комбинация.

Чтобы посчитать вероятность выпадения комбинации «стрейт», нам нужно разделить 720 на количество всех возможных исходов для бросания 6d6. Каково число всех возможных исходов? На каждой игральной кости может выпасть 6 граней, поэтому мы умножаем 6 x 6 x 6 x 6 x 6 x 6 = 46656 (число намного больше, чем предыдущее). Делим 720 на 46656 и получаем вероятность, равную примерно 1,5%. Если бы вы занимались дизайном этой игры, вам было бы полезно это знать, чтобы вы могли создать соответствующую систему подсчёта очков. Теперь мы понимаем, почему в игре Farkle вы получите такой большой бонус, если вам выпадет комбинация «стрейт»: это ситуация довольно редкая.

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

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

Если вы когда-либо раньше работали над онлайн-игрой с каким-нибудь генератором случайных чисел, то, скорее всего, сталкивались с ситуацией, когда игрок пишет в службу технической поддержки с жалобой, что генератор случайных чисел не показывает случайные числа. Он пришёл к такому выводу, потому что убил 4 монстров подряд и получил 4 совершенно одинаковые награды, а эти награды должны выпадать только в 10% случаев, поэтому такое, очевидно, почти никогда не должно происходить.

Вы делаете математический расчёт. Вероятность равна 1/10 * 1/10 * 1/10 * 1/10, то есть 1 исход из 10 тысяч — довольно редкий случай. Именно это пытается вам сказать игрок. Есть ли в данном случае проблема?

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

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

Карты и зависимость

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

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

Обратите внимание: когда я говорю «карты», я имею в виду любую игровую механику, в которой есть набор объектов и вы убираете один из объектов, не заменяя его. «Колода карт» в данном случае — аналог мешочка с фишками, из которого вы вынимаете одну фишку, или урны, из которой вынимают цветные шарики (я никогда не видел игр с урной, из которой бы вынимали цветные шарики, но преподаватели теории вероятностей по какой-то причине предпочитают данный пример).

Свойства зависимости

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

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

Например, если вы перетасуете стандартную колоду карт, откроете 51 карту и ни одна из них не будет трефовой дамой, то вы можете быть на 100% уверены, что оставшаяся карта — это трефовая дама. Если же вы перетасуете стандартную колоду карт и вынете 51 карту, не глядя на них, то вероятность того, что оставшаяся карта — трефовая дама, всё равно останется 1/52. Открывая каждую карту, вы получаете больше информации.

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

Вы тасуете стандартную колоду в 52 карты и вынимаете две карты. Какова вероятность того, что вы вынете пару? Есть несколько способов вычислить эту вероятность, но, пожалуй, самый простой выглядит следующим образом: какова вероятность того, что, вынув одну карту, вы не сможете вынуть пару? Эта вероятность равна нулю, поэтому не так важно, какую первую карту вы вынули, при условии, что она совпадает со второй. Неважно, какую именно карту мы вынем первой, у нас всё равно есть шанс вынуть пару. Поэтому вероятность вынуть пару после того, как вынули первую карту, равна 100%.

Какова вероятность того, что вторая карта совпадет с первой? В колоде остается 51 карта, и 3 из них совпадают с первой картой (вообще-то их было бы 4 из 52, но вы уже убрали одну из совпадающих карт, когда вынули первую карту), так что вероятность равна 1/17. Поэтому в следующий раз, когда за игрой в техасский холдем парень напротив вас за столом скажет: «Круто, ещё одна пара? Мне сегодня везет», вы будете знать, что с высокой долей вероятности он блефует.

Что если мы добавим два джокера, так что у нас в колоде будет 54 карты, и захотим узнать, какова вероятность вынуть пару? Первой картой может оказаться джокер, и тогда в колоде будет только одна карта, которая совпадёт, а не три. Как найти вероятность в данном случае? Мы разделим вероятности и перемножим каждую возможность.

Нашей первой картой может быть джокер или какая-нибудь другая карта. Вероятность вынуть джокер равна 2/54, вероятность вынуть какую-то другую карту — 52/54. Если первая карта — джокер (2/54), то вероятность того, что вторая карта совпадет с первой, равна 1/53. Перемножаем значения (мы можем перемножить их, потому что это отдельные события, и мы хотим, чтобы оба события произошли) и получаем 1/1431 — меньше чем одну десятую процента.

Если первой вы вынимаете какую-то другую карту (52/54), вероятность совпадения со второй картой равна 3/53. Перемножаем значения и получаем 78/1431 (немного больше, чем 5,5%). Что мы делаем с этими двумя результатами? Они не пересекаются, и мы хотим знать вероятность каждого из них, поэтому суммируем значения. Получаем окончательный результат 79/1431 (всё равно примерно 5,5%).

Если бы мы хотели быть уверенными в точности ответа, мы могли бы посчитать вероятность всех остальных возможных результатов: вынимание джокера и несовпадение со второй картой или вынимание какой-то другой карты и несовпадение со второй картой. Просуммировав эти вероятности и вероятность выигрыша, мы бы получили ровно 100%. Я не буду приводить здесь математический расчёт, но вы можете попробовать посчитать, чтобы перепроверить.

Парадокс Монти Холла

Это приводит нас к довольно известному парадоксу, который часто приводит многих в замешательство, — парадокс Монти Холла. Парадокс назван в честь ведущего телешоу Let’s Make a Deal. Для тех, кто никогда не видел это телешоу, скажу, что оно было противоположностью The Price Is Right.

В The Price Is Right ведущий (раньше ведущим был Боб Баркер, кто сейчас, Дрю Кэри? Неважно) — ваш друг. Он хочет, чтобы вы выиграли деньги или классные призы. Он пытается предоставить вам все возможности для выигрыша, при условии, что вы сможете угадать, сколько на самом деле стоят предметы, приобретенные спонсорами.

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

Один из самых известных мемов шоу был такой: перед вами три двери, дверь номер 1, дверь номер 2 и дверь номер 3. Вы можете бесплатно выбрать какую-то одну дверь. За одной из них находится великолепный приз — например, новый легковой автомобиль. За двумя другими дверьми нет никаких призов, обе они не представляют из себя никакой ценности. Они должны вас унизить, поэтому за ними не просто ничего, а что-то глупое, например, козёл или огромный тюбик зубной пасты — что угодно, только не новый легковой автомобиль.

Вы выбираете одну из дверей, Монти уже собирается открыть её, чтобы вы узнали, выиграли или нет… но подождите. Прежде чем узнать, давайте посмотрим на одну из тех дверей, которые вы не выбрали. Монти знает, за какой дверью находится приз, и он всегда может открыть дверь, за которой нет приза. «Вы выбираете дверь номер 3? Тогда давайте откроем дверь номер 1, чтобы показать, что за ней не было приза». А теперь он из щедрости предлагает вам возможность обменять выбранную дверь номер 3 на то, что находится за дверью номер 2.

В этот момент и возникает вопрос о вероятности: повышает ли эта возможность вашу вероятность выиграть, или понижает, или она остаётся неизменной? Как вы думаете?

Верный ответ: возможность выбрать другую дверь увеличивает вероятность выигрыша с 1/3 до 2/3. Это нелогично. Если раньше вы не сталкивались с данным парадоксом, то, скорее всего, вы думаете: подождите, как это: открыв одну дверь, мы волшебным образом изменили вероятность? Как мы уже видели на примере с картами, именно это и происходит, когда мы получаем больше информации. Очевидно, что, когда вы выбираете в первый раз, вероятность выигрыша равна 1/3. Когда открывается одна дверь, это совершенно не меняет вероятность выигрыша для первого выбора: всё равно вероятность равна 1/3. Но вероятность того, что другая дверь правильная, теперь равна 2/3.

Давайте посмотрим на этот пример с другой стороны. Вы выбираете дверь. Вероятность выигрыша равна 1/3. Я предлагаю вам поменять две другие двери, что и делает Монти Холл. Конечно, он открывает одну из дверей, чтобы показать, что за ней нет приза, но он всегда может так поступить, поэтому на самом деле это ничего не меняет. Конечно, вам захочется выбрать другую дверь.

Если вы не совсем разобрались с вопросом и нужно более убедительное объяснение, нажмите на эту ссылку, чтобы перейти к замечательному маленькому Flash-приложению, которое позволит вам изучить этот парадокс более подробно. Вы можете играть, начиная с примерно 10 дверей, и затем постепенно перейти к игре с тремя дверьми. Есть также симулятор, где вы можете играть с любым количеством дверей от 3 до 50 или запустить несколько тысяч симуляций и посмотреть, сколько раз вы бы выиграли, если бы играли.

Выбираете одну из трех дверей — вероятность выиграть равна 1/3. Теперь у вас есть две стратегии: поменять выбор после открытия неверной двери или нет. Если вы не меняете свой выбор, то вероятность так и останется 1/3, так как выбор идет только на первом этапе, и надо сразу угадать. Если же меняете, то выиграть вы можете, если выберете сперва неверную дверь (потом откроют другую неверную, останется верная — меняя решение, вы как раз её и берете). Вероятность выбрать в начале неверную дверь составляет 2/3 — вот и получается, что, поменяв свое решение, вы в два раза увеличиваете вероятность выигрыша.

Ремарка от преподавателя высшей математики и специалиста по игровому балансу Максима Солдатова — её, разумеется, не было у Шрайбера, но без неё понять это волшебное превращение достаточно трудно

И снова о парадоксе Монти Холла

Что касается самого шоу: даже если соперники Монти Холла не были сильны в математике, то он разбирался в ней хорошо. Вот что он делал, чтобы немного изменить игру. Если вы выбирали дверь, за которой находился приз, вероятность чего равна 1/3, он всегда предлагал вам возможность выбрать другую дверь. Вы выбрали легковой автомобиль, а затем поменяете его на козла и будете выглядеть довольно глупо — а это именно то, что нужно, ведь Холл своего рода злой парень.

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

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

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

Из оставшихся двух вариантов из трёх (вы изначально выбираете дверь без приза) в половине случаев ведущий предложит вам поменять решение, а в другой половине случаев — нет.

Половина от 2/3 — это 1/3, то есть в одном случае из трёх вы получите козла, в одном случае из трёх выберете неправильную дверь и ведущий предложит вам выбрать другую, и в одном случае из трёх вы выберете правильную дверь, но он опять же предложит другую.

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

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

Или он, решив, что вы умный и выберете другую дверь, предлагает вам этот шанс, потому что знает, что вы изначально угадали правильно и попадётесь на крючок? Или, может быть, он нетипично для себя добр и подталкивает вас сделать что-то, выгодное для вас, потому что он уже давно не дарил автомобилей и продюсеры говорят, что зрителям становится скучно, и лучше бы в скором времени подарить большой приз, чтобы рейтинги не падали?

Таким образом, Монти удается иногда предлагать выбор, и при этом общая вероятность выигрыша остается равной 1/3. Помните, что вероятность того, что вы проиграете сразу, равна 1/3. Вероятность того, что вы сразу угадаете правильно, равна 1/3, и в 50% этих случаев вы выиграете (1/3 x 1/2 = 1/6).

Вероятность того, что вы сначала угадаете неправильно, но потом у вас будет шанс выбрать другую дверь, равна 1/3, и в половине этих случаев вы выиграете (также 1/6). Суммируйте две не зависящие друг от друга возможности выигрыша — и вы получите вероятность, равную 1/3, поэтому неважно, останетесь вы при своём выборе или выберете другую дверь — общая вероятность вашего выигрыша на протяжении всей игры равна 1/3.

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

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

Парадокс мальчика и девочки

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

Задача: у меня есть друг с двумя детьми, хотя бы один ребёнок из них — девочка. Какова вероятность того, что второй ребёнок тоже девочка? Давайте предположим, что в любой семье шансы рождения девочки и мальчика составляют 50/50, и это справедливо для каждого ребёнка.

На самом деле, в сперме некоторых мужчин больше сперматозоидов с X-хромосомой или Y-хромосомой, поэтому вероятность немного меняется. Если вы знаете, что один ребёнок — девочка, вероятность появления второй девочки немного выше, кроме того, есть и другие условия, например, гермафродитизм. Но для решения этой задачи мы не будем принимать это во внимание и предположим, что рождение ребёнка — это независимое событие и рождение мальчика и девочки равновероятны.

Так как речь идёт о шансе 1/2, интуитивно мы ожидаем, что ответ будет, скорее всего, 1/2 или 1/4, или в знаменателе будет какое-то другое число, кратное двум. Но ответ — 1/3. Почему?

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

И снова о парадоксе мальчика и девочки

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

Вы можете подумать, что ответ всё равно будет 1/3: какое значение имеет вторник? Но и в этом случае интуиция нас подводит. Ответ — 13/27, что не просто не интуитивно, а очень странно. В чём дело в данном случае?

На самом деле, вторник изменяет вероятность, потому что мы не знаем, какой ребёнок родился во вторник, или, возможно, во вторник родились оба. В данном случае мы используем ту же логику: считаем все возможные комбинации, когда хотя бы один ребёнок — девочка, которая родилась во вторник. Как и в предыдущем примере, предположим, что детей зовут A и B. Комбинации выглядят следующим образом:

  • A — девочка, которая родилась во вторник, B — мальчик (в данной ситуации есть 7 возможностей, по одной для каждого дня недели, когда мог родиться мальчик).
  • В — девочка, которая родилась во вторник, А — мальчик (также 7 возможностей).
  • A — девочка, которая родилась во вторник, В — девочка, которая родилась в другой день недели (6 возможностей).
  • В — девочка, которая родилась во вторник, А — девочка, которая родилась не во вторник (также 6 вероятностей).
  • А и В — две девочки, которые родились во вторник (1 возможность, нужно обратить на это внимание, чтобы не посчитать дважды).

Суммируем и получаем 27 разных равновозможных комбинаций рождения детей и дней с хотя бы одной возможностью рождения девочки во вторник. Из них 13 возможностей, когда рождаются две девочки. Это также выглядит совершенно нелогично — похоже, данная задача была придумана только для того, чтобы вызвать головную боль. Если вы до сих пор озадачены, на сайте игрового теоретика Йеспера Юла есть хорошее объяснение этого вопроса.

Если сейчас вы работаете над игрой

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

Например, если вы создаёте RPG и думаете, какой должна быть вероятность, что игрок победит монстра в битве, спросите себя, какое процентное отношение побед кажется вам правильным. Обычно в случае с консольными RPG игроки очень расстраиваются при поражении, поэтому лучше, чтобы они проигрывали нечасто — в 10% случаев или меньше. Если вы дизайнер RPG, вы, наверно, знаете лучше, чем я, но нужно, чтобы у вас была базовая идея, какой должна быть вероятность.

Затем спросите себя, зависимые ли у вас вероятности (как с картами) или независимые (как с игральными костями). Разберите все возможные результаты и их вероятности. Убедитесь, что сумма всех вероятностей равна 100%. И, конечно, сравните полученные результаты со своими ожиданиями. Получается ли бросать игральные кости или вынимать карты так, как вы задумали, или видно, что значения нужно корректировать. И, конечно, если вы найдете недостатки, можете использовать те же расчёты, чтобы определить, насколько нужно поменять значения.

Задание на дом

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

Игра №1 — Драконьи кости

Это игра в кости, которую мы как-то раз придумали с коллегами (спасибо Джебу Хевенсу и Джесси Кингу), — она специально выносит мозг людям своими вероятностями. Это простая игра казино, которая называется «Драконьи кости», и это азартное соревнование в кости между игроком и заведением.

Вам дается обычный кубик 1d6. Цель игры — выбросить число больше, чем у заведения. Тому дается нестандартный 1d6 — такой же, как и у вас, но на одной из его граней вместо единицы — изображение дракона (таким образом, у казино кубик дракон-2-3-4-5-6). Если заведению выпадает дракон, оно автоматически выигрывает, а вы проигрываете. Если обоим выпадает одинаковое число — это ничья, и вы кидаете кости снова. Победит тот, кто выбросит большее число.

Разумеется, все складывается не совсем в пользу игрока, ведь у казино есть преимущество в виде грани дракона. Но действительно ли это так? Это вам и предстоит вычислить. Но сначала проверьте свою интуицию.

Предположим, что выигрыш составляет 2 к 1. Таким образом, если вы побеждаете, вы сохраняете свою ставку и получаете её удвоенную сумму. К примеру, если вы ставите 1 доллар и выигрываете — вы сохраняете этот доллар и получаете еще 2 сверху, итого 3 доллара. Если проигрываете — теряете только свою ставку. Сыграли бы вы? Чувствуете ли вы интуитивно, что вероятность больше, чем к 2 к 1, или все же считаете, что меньше? Другими словами, в среднем за 3 игры вы рассчитываете выиграть больше одного раза, или меньше, или один раз?

Как только разобрались с интуицией, применяйте математику. Для обеих игральных костей существует лишь 36 возможных положений, так что вы без проблем можете просчитать их все. Если вы не уверены в этом предложении «2 к 1», подумайте вот о чем: предположим, вы сыграли в игру 36 раз (каждый раз ставя по 1 доллару). Из-за каждой победы вы получаете 2 доллара, из-за проигрыша теряете 1, а ничья ничего не меняет. Посчитайте все свои вероятные выигрыши и проигрыши и решите, потеряете ли вы некоторую сумму долларов или же приобретете. Затем спросите себя, насколько права оказалась ваша интуиция. А затем осознайте, какой же я злодей.

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

Игра №2 — Бросок на удачу

Это азартная игра в кости, которая называется «Бросок на удачу» (также «Птичья клетка», потому что иногда кости не бросают, а помещают в большую проволочную клетку, напоминающую клетку из «Бинго»). Игра простая, суть сводится примерно вот к чему: поставьте, скажем, 1 доллар на число от 1 до 6. Затем вы бросаете 3d6. За каждую кость, на которой выпадает ваше число, вы получаете 1 доллар (и сохраняете свою изначальную ставку). Если ни на одной кости ваше число не выпадает, казино получает ваш доллар, а вы — ничего. Таким образом, если вы ставите на 1 и вам трижды выпадает единица на гранях, вы получаете 3 доллара.

Интуитивно кажется, что в этой игре равные шансы. Каждая кость — это индивидуальный шанс выиграть в 1 случае из 6, так что в сумме трех бросков ваш шанс выиграть равен 3 к 6. Однако, разумеется, помните, что вы слагаете три отдельные кости, и вам разрешено складывать только при условии, что мы говорим об отдельных выигрышных комбинациях одной и той же кости. Что-то вам нужно будет умножить.

Как только вы вычислите все возможные результаты (вероятно, это будет легче сделать в Excel, чем от руки, ведь их 216), игра на первый взгляд всё ещё выглядит четно-нечетной. На самом деле, у казино всё же больше шансов выиграть — насколько больше? В частности, сколько в среднем вы рассчитываете проиграть денег за каждый раунд игры?

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

Игра №3 — 5-карточный стад покер

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

Роял-флеш — это 10-J-Q-K-A в одной комбинации, всего их четыре, таким образом, существует четыре возможных способа получить роял-флеш. Рассчитайте вероятность того, что вам выпадет одна такая комбинация.

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

Игра №4 — Лотерея IMF

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

Я уже упоминал ранее игру Chron X, над которой когда-то работал, и там была одна очень интересная карта — лотерея IMF. Вот как она работала: вы использовали её в игре. После того как раунд завершался, карты перераспределялись, и была возможность в 10%, что карта выйдет из игры и что случайный игрок получит 5 единиц каждого типа ресурса, фишка которого присутствовала на этой карте. Карта вводилась в игру без единой фишки, но каждый раз, оставаясь в игре в начале следующего раунда, она получала одну фишку.

Таким образом, существовал 10% шанс того, что вы введете её в игру, раунд закончится, карта покинет игру, и никто ничего не получит. Если этого не произойдет (с вероятностью 90%), появляется 10% шанс (вообще-то 9%, поскольку это 10% из 90%), что в следующем раунде она покинет игру, и кто-то получит 5 единиц ресурсов. Если карта покинет игру через один раунд (10% от имеющихся 81%, так что вероятность — 8,1%), кто-то получит 10 единиц, ещё через раунд — 15, ещё — 20, и так далее. Вопрос: каково вообще ожидаемое значение числа ресурсов, которые вы получите от этой карты, когда она наконец покинет игру?

Обычно мы бы пытались решить эту задачу, вычислив возможность каждого исхода и умножив на количество всех исходов. Есть вероятность в 10%, что вы получите 0 (0,1 * 0 = 0). 9%, что вы получите 5 единиц ресурсов (9% * 5 = 0,45 ресурсов). 8,1% того, что вы получите 10 (8,1%*10=0,81 ресурсов — в целом, ожидаемое значение). И так далее. А потом мы бы всё это суммировали.

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

Если вы достаточно хорошо разбираетесь в программировании, напишите программу, которая будет симулировать эту карту. У вас должна быть временная петля, которая приводит переменную в исходное положение нуля, показывает случайное число и с вероятностью 10% переменная выходит из петли. В противоположном случае она добавляет к переменной 5, и цикл повторяется. Когда она наконец выйдет из петли, увеличьте общее число пробных пусков на 1 и общее число ресурсов (насколько — зависит от того, на каком значении остановилась переменная). Затем сбросьте переменную и начните заново.

Запустите программу несколько тысяч раз. В конце концов разделите общее количество ресурсов на общее количество пробегов — это и будет ваше ожидаемое значение метода Монте-Карло. Запустите программу несколько раз, чтобы удостовериться, что числа, которые вы получили, примерно одинаковы. Если разброс все еще велик, увеличьте число повторов во внешней петле, пока не начнете получать соответствия. Можете быть уверены: какие бы числа вы в итоге ни получили, они будут приблизительно верны.

Если же вы незнакомы с программированием (хотя даже если и знакомы), вот вам небольшое упражнение на проверку навыков работы с Excel. Если вы геймдизайнер, эти навыки никогда не будут лишними.

Сейчас вам очень пригодятся функции if и rand. Rand не требует значений, она всего лишь выдает случайное десятичное число от 0 до 1. Обычно мы совмещаем его с floor и плюсами и минусами, чтобы симулировать бросок кости, о чем я уже упоминал ранее. Впрочем, в этом случае мы всего лишь оставляем вероятность в 10%, что карта покинет игру, так что мы можем просто проверить, не составляет ли значение rand меньше 0,1, и больше не забивать себе этим голову.

If имеет три значения. По порядку: условие, которое либо верно, либо нет, затем значение, которое возвращается, если условие верно, и значение, которое возвращается, если условие неверно. Так что следующая функция будет возвращаться 5% времени, и 0 остальных 90% времени: =IF(RAND() -1, A1, IF(RAND()

Уровень 4: Вероятность и Случайность

Данный пост — перевод четвертой статьи из курса лекций «Принципы игрового баланса» за авторством профессионала и преподавателя Яна Шрайбера. Переводы предыдущих лекций вы можете посмотреть по ссылке.

Чтения/игры

Прочтите эту статью, написанную дизайнером Тайлером Сигманом, на “Gamasutra”. Я нежно называю её статьей о “волосах в ноздрях орка”, но в ней довольно хорошо изложены основы вероятностей в играх.

Тема этой недели

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

Игральные кости

Давайте начнем с чего-то простого: бросание игральных костей. Когда большинство людей думает об игральных костях, они представляют себе шестигранный кубик, известный как d6. Но большинство геймеров видели множество других игральных костей: четырёхгранные (d4), восьмигранные (d8), двенадцатигранные (d12), двадцатигранные (d20) … и если вы настоящий гик, у вас, может быть, где-то найдутся 30-гранные или 100-гранные кости. Если вы не знакомы с данной терминологией, “d” означает игральную кость, а число, стоящее после неё, сколько у неё граней. Если перед “d” стоит число, то оно обозначает количество игральных костей при бросании. Например, в игре “Монополия” вы бросаете 2d6.

Итак, в данном случае словосочетание “игральная кость” — условное обозначение. Существует огромное количество других генераторов случайных чисел, которые не имеют форму пластиковой глыбы, но выполняют ту же функцию генерации случайного числа от 1 до n. Обычную монету можно также представить себе в виде двугранной игральной кости d2. Я видел два дизайна семигранной кости: одна из них выглядела как игральный кубик, а вторая была больше похожа на семигранный деревянный карандаш. Четырехгранный дрейдл (также известный как титотум) является аналогом четырехгранной кости. Игровое поле с крутящейся стрелкой в игре “Chutes & Ladders”, где результат может быть от 1 до 6, соответствует шестигранной кости. Генератор случайных чисел в компьютере может создать любое число от 1 до 19, если дизайнер задаст такую команду, хотя в компьютере нет 19-гранной игральной кости (вообще о вероятности выпадения чисел на компьютере я буду говорить подробнее на следующей неделе). Хотя все эти предметы выглядят по-разному, на самом деле они равнозначны: у вас есть равные шансы выпадения одного из нескольких исходов.

У игральных костей есть некоторые интересные свойства, о которых нам нужно знать. Во-первых, вероятность выпадения любой из граней одинакова (я предполагаю, что вы бросаете правильную игральную кость, а не с неправильной геометрической формой). Таким образом, если вы хотите знать среднее значение броска (также известное среди увлекающихся темой вероятности как “математическое ожидаемое”), суммируйте значения всех граней и эту сумму разделите на количество граней. Среднее значение броска для стандартного шестигранного кубика равно 1+2+3+4+5+6 = 21, делим на количество граней (6) и получаем среднее значение 21/6 = 3,5. Это особый случай, потому что мы предполагаем, что все исходы равновероятны.

Что если у вас особенные игральные кости? Например, я видел игру с шестигранной игральной костью со специальными наклейками на гранях: 1, 1, 1, 2, 2, 3, поэтому она ведет себя как странная трехгранная игральная кость, с которой больше шансов, что выпадет число 1 чем 2, и 2 чем 3. Какое среднее значение броска для этой кости? Итак, 1+1+1+2+2+3 = 10, делим на 6, равно 5/3 или примерно 1,66. Таким образом, если у вас такая особенная игральная кость и игроки будут бросать три кости, а затем суммировать результаты, вы знаете, что примерная сумма их броска будет равна примерно 5, и вы можете балансировать игру основываясь на этом предположении.

Игральные кости и независимость

Как я уже говорил, мы исходим из предположения, что выпадение каждой грани равновероятно. Это не зависит от того, сколько игральных костей вы бросаете. Каждое бросание игральной кости независимо, это означает, что предыдущие броски не влияют на результаты последующих. При достаточном количестве испытаний вы обязательно заметите “серию” чисел, как, например, выпадение в основном более крупных или меньших значений, или другие особенности, и позже мы поговорим об этом, но это не значит, что игральные кости “горячие” или “холодные”. Если вы бросаете стандартный шестигранный кубик и два раза подряд выпадает число 6, вероятность того, что результатом следующего броска будет 6, точно также равна 1/6. Вероятность не повышается от того, что кубик “нагрелся”. Вероятность не понижается, потому что уже два раза подряд выпадало число 6, а значит теперь выпадет другая грань. (Конечно, если вы бросаете кубик двадцать раз и каждый раз выпадает число 6, шанс того, что в двадцать первый раз выпадет число 6 довольно высок… потому что, возможно, это значит, что у вас неправильные кубик!) Но если у вас правильный кубик, вероятность выпадения каждой из граней одинакова, независимо от результатов других бросков. Вы можете также представить себе, что каждый раз мы заменяем игральную кость, так, если выпало два раза подряд число 6, уберите “горячую” игральную кость из игры и замените её на новую шестигранную кость. Я прошу прощения, если кто-то из вас уже знал об этом, но мне необходимо было это прояснить, прежде чем двигаться дальше.

Как сделать выпадение игральных костей более или менее случайным

Давайте поговорим о том, как получить разные результаты на разных игральных костях. Если вы бросаете игральную кость только один раз или несколько раз, игра будет казаться более случайной, в том случае если у игральной кости будет больше граней. Чем больше раз вы бросаете игральную кость или чем больше игральных костей вы бросаете, тем больше результаты приближаются к среднему значению. Например, если вы бросаете 1d6+4 (т.е. стандартную шестигранную игральную кость один раз и прибавляете к результату 4), средним значением будет число от 5 до 10. Если вы бросаете 5d2, средним значением также будет число от 5 до 10. Но при бросании шестигранной игральной кости, вероятность выпадения чисел 5, 8 или 10 одинакова. Результатом бросания 5к2 будут в основном числа 7 и 8, реже другие значения. Та же серия, даже то же среднее значение (7,5 в обоих случаях), но природа случайности разная.

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

Позвольте мне объяснить. Если вы бросаете одну игральную кость, вероятность выпадения каждой из граней одинакова. Это значит, что если вы бросаете много игральных костей, на протяжении некоторого времени каждая грань будет выпадать примерно одинаковое количество раз. Чем больше костей вы бросаете, тем больше в совокупности результат будет приближаться к среднему значению. Это не потому что выпавшее число “заставляет” выпасть другое число, которое еще не выпадало. А потому что небольшая серия выпадения числа 6 (или 20, или другого числа) в итоге не будет иметь большого значения, если вы бросите игральные кости еще десять тысяч раз и в основном будет выпадать среднее значение… возможно, сейчас у вас выпадет несколько чисел с высоким значением, но, может быть, позже несколько чисел с низким значением и со временем они приблизятся к среднему значению. Не потому что предыдущие броски влияют на игральные кости (серьезно, игральная кость сделана из пластика, у неё нет мозгов, чтобы подумать: «ой, давно не выпадало 2»), а потому что это то, что обычно происходит при большом количестве бросков игральных костей. Небольшая серия повторяющихся чисел будет практически незаметна в большом количестве результатов.

Таким образом, произвести расчёты для одного случайного броска игральной кости довольно несложно, по крайней мере, что касается вычисления среднего значения броска. Есть также способы вычислить “насколько случайно” что-либо, способ сказать, что результаты бросания 1d6+4 будут “более случайными” чем 5d2, для 5d2 распределение выпадения результатов будет более равномерным, обычно для этого вы вычисляете среднеквадратическое отклонение, и чем больше будет значение, тем более случайными будут результаты, но для этого нужно сделать больше вычислений, чем мне бы хотелось приводить сегодня (эту темя я объясню позже). Единственное, что я прошу вас знать: как правило, чем меньше игральных костей бросается, тем больше случайность. И еще одно дополнение по этой теме: чем больше граней у игральной кости, тем больше случайность, так как у вас больше вариантов.

Как вычислить вероятность при помощи подсчёта

У вас, возможно, возник вопрос: как мы можем вычислить точную вероятность выпадения определенного результата? На самом деле это довольно важно для многих игр, потому что, если вы бросаете игральную кость, изначально, скорее всего, есть какой-то оптимальный результат. Ответ таков: нам нужно посчитать два значения. Во-первых, посчитайте максимальное число исходов при бросании игральной кости (независимо от того, какой будет исход). Затем посчитайте число благоприятных исходов. Разделив второе значение на первое, вы получите нужную вероятность. Чтобы получить процентное отношение, умножьте полученный результат на 100.

Вот очень простой пример. Вы хотите, чтобы выпало число 4 или выше и бросаете один раз шестигранную игральную кость. Максимальное число исходов составляет 6 (1, 2, 3, 4, 5, 6). Из них 3 исхода (4, 5, 6) являются благоприятными. Значит, чтобы посчитать вероятность, делим 3 на 6 и получаем 0,5 или 50%.

Вот пример немного сложнее. Вы хотите, чтобы выпало чётное число при бросании 2d6. Максимальное число исходов 36 (6 для каждой игральной кости, и так как одна игральная кость не влияет на другую, умножаем 6 результатов на 6 и получаем 36). Сложность вопроса данного типа заключается в том, что легко посчитать дважды. Например, на самом деле есть два варианта результата 3 при бросании 2к6: 1+2 и 2+1. Они выглядят одинаково, но разница в том, какое число отображено на первой игральной кости и какое на второй. Вы также можете представить себе, что игральные кости разных цветов, так, например, в данном случае одна игральная кость красного цвета, другая синего. Затем посчитайте количество вариантов выпадения чётного числа: 2 (1+1), 4 (1+3), 4 (2+2), 4 (3+1), 6 (1+5), 6 (2+4), 6 (3+3), 6 (4+2), 6 (5+1), 8 (2+6), 8 (3+5), 8 (4+4), 8 (5+3), 8 (6+2), 10 (4+6), 10 (5+5), 10 (6+4), 12 (6+6). Оказывается, что есть 18 вариантов для благоприятного исхода из 36, как и в предыдущем случае, вероятность будет равна 0,5 или 50%. Возможно, неожиданно, но довольно точно.

Моделирование методом Монте-Карло

Что если у вас для такого подсчёта слишком много игральных костей? Например, вы хотите знать какова вероятность того, что выпадет сумма равная 15 или больше при броске 8d6. Для восьми игральных костей существует МНОЖЕСТВО разных индивидуальных результатов и их подсчёт вручную займет очень много времени. Даже если мы найдем какое-нибудь хорошее решение, чтобы сгруппировать разные серии бросков игральных костей, всё равно на подсчёт понадобится очень много времени. В данном случае самым простым способом посчитать вероятность будет не считать вручную, а воспользоваться компьютером. Есть два способа подсчёта вероятности на компьютере.

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

int wincount=0, totalcount=0;

… // insert more loops here

float probability = wincount/totalcount;

Если вы не разбираетесь в программировании и вам просто нужен неточный, а примерный ответ, вы можете смоделировать данную ситуацию в Excel, где вы подбросите 8d6 несколько тысяч раз и получите ответ. Чтобы бросить 1d6 в Excel, используйте следующую формулу:

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

Как объединить независимые испытания

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

Как различить что-либо зависимое и независимое? В принципе, если вы можете выделить каждый бросок игральной кости (или серию бросков) как отдельное событие, то он независим. Например, мы хотим, чтобы выпала сумма равная 15, бросая 8к6, данный случай не может быть разделен на несколько независимых бросков игральных костей. Так как для результата вы считаете сумму значений всех игральных костей, результат, который выпал на одной игральной кости, влияет на результаты, которые должны выпасть на других игральных костях, потому что только суммируя все значения, вы получите требуемый результат.

Вот пример независимых бросков: перед вами игра с игральными костями, и вы несколько раз бросаете шестигранные кости. Чтобы остаться в игре, при первом броске вам должно выпасть число 2 или значение выше. Для второго броска — 3 или значение выше. Для третьего требуется 4 или выше, четвертого — 5 или выше, пятого — 6. Если все пять бросков успешные, вы выиграли. В данном случае все броски независимы. Да, если один бросок будет неудачным, он повлияет на результат всей игры, но один бросок не влияет на другой бросок. Например, если ваш второй бросок игральных костей очень удачный, это никак не влияет на вероятность того, что следующие броски будут такими же удачными. Поэтому мы можем рассматривать вероятность каждого броска игральных костей отдельно.

Если у вас отдельные, независимые вероятности и вы хотите знать, какова вероятность того, что все события наступят, вы определяете каждую индивидуальную вероятность и перемножаете их. Другой способ: если вы используете союз “и”, чтобы описать несколько условий (например, какова вероятность наступления какого-то случайного события и какого-то другого независимого случайного события?), посчитайте отдельные вероятности и перемножьте их.

Не важно, что вы считаете, никогда не суммируйте независимые вероятности. Это распространённая ошибка. Чтобы понять, почему это неправильно, представьте себе ситуацию, когда вы подбрасываете монету 50/50, вы хотите знать, какова вероятность того, что два раза подряд выпадет “орёл”. Вероятность выпадения каждой из сторон 50%, поэтому если вы суммируете эти две вероятности, вы получите 100% шанс того, что выпадет “орёл”, но мы знаем, что это не правда, потому что два раза подряд могла бы выпасть “решка”. Если вместо этого вы умножите эти две вероятности, у вас получится 50%*50% = 25%, и это правильный ответ для расчёта вероятности выпадения “орла” два раза подряд.

Давайте вернёмся к игре с шестигранной игральной костью, где нужно, чтобы сначала выпало число выше чем 2, затем выше чем 3 и т.д. до 6. Каковы шансы того, что в данной серии 5 бросаний все исходы будут благоприятными?

Как говорилось выше, это независимые испытания, и поэтому мы подсчитываем вероятность для каждого отдельного броска, а затем умножаем их. Вероятность того, что исход первого броска будет благоприятным, равна 5/6. Второго — 4/6. Третьего — 3/6. Четвертого — 2/6, пятого — 1/6. Умножаем все эти результаты и получаем примерно 1,5%… Таким образом, победа в данной игре бывает довольно редко, поэтому если вы добавите этот элемент в вашу игру, вам нужен будет довольно большой джекпот.

Отрицание

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

Например, предположим у нас есть еще одна игра и вы бросаете 6d6, и если хотя бы раз выпадет 6, вы выиграете. Какова вероятность выигрыша?

В данном случае нужно посчитать много вариантов. Возможно, выпадет одно число 6, т.е. на одной из игральных костей выпадет число 6, а на других числа от 1 до 5, и есть 6 вариантов того, на какой из игральных костей выпадет число 6. Затем вам может выпасть число 6 на двух игральных костях, или на трёх, или на еще большем количестве, и каждый раз нам нужно сделать отдельный подсчёт, поэтому в этом легко запутаться.

Но есть другой способ решения этой задачи, давайте посмотрим на неё с другой стороны. Вы проиграете если ни на одной из игральных костей не выпадет число 6. В данном случае у нас есть шесть независимых испытаний, вероятность каждого из них равна 5/6 (на игральной кости может выпасть любое другое число кроме 6). Умножьте их и получите примерно 33%. Таким образом, вероятность проигрыша составляет 1 к 3.

Следовательно, вероятность выигрыша равна 67% (или 2 к 3).

Из этого примера очевидно, что если вы считайте вероятность того, что событие не наступит, нужно вычесть результат из 100%. Если вероятность выиграть равна 67%, то вероятность проиграть — 100% минус 67%, или 33%. И наоборот. Если сложно посчитать одну вероятность, но легко посчитать противоположную, посчитайте противоположную, а затем вычтите из 100%.

Соединяем условия для одного независимого испытания

Чуть выше я говорил, что вы никогда не должны суммировать вероятности при независимых испытаниях. Есть ли какие-либо случаи, когда можно суммировать вероятности? — Да, в одной особенной ситуации.

Если вы хотите вычислить вероятность для нескольких, не связанных между собой, благоприятных исходов одного испытания, суммируйте вероятности каждого благоприятного исхода. Например, вероятность выпадения чисел 4, 5 или 6 на 1к6 равна сумме вероятности выпадения числа 4, вероятности выпадения числа 5 и вероятности выпадения числа 6. Также данную ситуацию можно представить себе следующим образом: если вы используете союз “или” в вопросе о вероятности (например, какова вероятность того или иного исхода одного случайного события?), подсчитайте отдельные вероятности и просуммируйте их.

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

Неравные вероятности

До сих пор мы предполагали, что каждая грань игральной кости выпадает с одинаковой периодичностью, потому что таким представляется себе принцип работы игральной кости. Но иногда вы сталкиваетесь с ситуацией, когда возможны разные исходы и у них разные шансы выпадения. Например, в одном из дополнений карточной игры “Nuclear War” есть игровое поле со стрелкой, от которого зависит результат запуска ракеты: в основном, она наносит обычный урон, более сильный или более слабый, но иногда урон усиливается в два или три раза, или ракета взрывается на стартовой площадке и причиняет вам вред, или происходит другое событие. В отличие от игрового поля со стрелкой в “Chutes & Ladders” или “A Game of Life” результаты игрового поля в “Nuclear War” неравновероятны. Некоторые секции игрового поля больше по размеру и стрелка останавливается на них гораздо чаще, в то время как другие секции очень маленькие и стрелка останавливается на них редко.

Итак, на первый взгляд кость выглядит примерно следующим образом: 1, 1, 1, 2, 2, 3; мы уже говорили о ней, она представляет собой что-то вроде утяжеленной 1d3, следовательно, нам нужно разделить все эти секции на равные части, найти самую маленькую единицу измерения, которой всё кратно и затем представить ситуацию в виде d522 (или какой-то другой), где множество граней игральной кости будет отображать ту же ситуацию, но с большим количеством исходов. И это один из способов решения задачи, и он технически выполним, но есть более простой способ.

Давайте вернемся к нашей стандартной шестигранной игральной кости. Мы говорили, что для того, чтобы посчитать среднее значение броска для нормальной игральной кости, нужно суммировать значения на всех гранях и разделить их на количество граней, но как именно происходит расчёт? Можно выразить это иначе. Для шестигранной игральной кости вероятность выпадения каждой грани равна точно 1/6. Теперь мы умножаем исход каждой грани на вероятность этого исхода (в данном случае 1/6 для каждой грани), затем суммируем полученные значения. Таким образом, суммируя (1*1/6) + (2*1/6) + (3*1/6) + (4*1/6) + (5*1/6) + (6*1/6), получаем тот же результат (3,5), как и при расчёте выше. На самом деле мы считаем так каждый раз: умножаем каждый исход на вероятность этого исхода.

Можем ли мы произвести такой же расчёт для стрелки на игровом поле в игре “Nuclear War”? Конечно, можем. И если мы суммируем все найденные результаты, то получим среднее значение. Всё, что нам нужно сделать, это вычислить вероятность каждого исхода для стрелки на игровом поле и умножить на исход.

Этот метод расчёта среднего значения, путем умножения каждого результата на его индивидуальную вероятность, также подходит, если результаты равновероятны, но имеют разные преимущества, например, если вы бросаете игральную кость и выигрываете больше при выпадении одних граней, чем других. Например, возьмем игру, которая бывает в казино: вы делаете ставку и бросаете 2d6. Если выпадут три числа с наименьшим значением (2, 3, 4) или четыре числа с высоким значением (9, 10, 11, 12), вы выиграете сумму, равную вашей ставке. Особенными являются числа с самым низким и самым высоким значением: если выпадет 2 или 12, вы выиграете в два раза больше, чем ваша ставка. Если выпадет любое другое число (5, 6, 7, 8), вы проиграете вашу ставку. Это довольно простая игра. Но какова вероятность выигрыша?

Начнем с того, что посчитаем, сколько раз вы можете выиграть:

  • Максимальное число исходов при бросании 2к6 составляет 36. Каково количество благоприятных исходов?
  • Есть 1 вариант того, что выпадет два и 1 вариант того, что выпадет двенадцать.
  • Есть 2 варианта того, что выпадет три и одиннадцать.
  • Есть 3 варианта того, что выпадет четыре и 3 варианта того, что выпадет десять.
  • Есть 4 варианта того, что выпадет девять.
  • Просуммировав все варианты, получаем число благоприятных исходов 16 из 36.

Таким образом, при нормальных условиях вы выиграете 16 раз из 36 возможных… вероятность выигрыша немного меньше чем 50%.

Но в двух случаях из этих 16 вы выиграете в два раза больше, т.е. это как выиграть дважды! Если вы будете играть в эту игру 36 раз, делая ставку в $1 каждый раз, и каждый из всех возможных исходов выпадет один раз, вы выиграете в сумме $18 (на самом деле вы выиграете 16 раз, но два раза из них будут считаться как два выигрыша). Если вы играете 36 раз и выигрываете $18, не значит ли это, что это равная вероятность?

Не торопитесь. Если вы посчитаете количество раз, когда вы можете проиграть, то у вас получится 20, не 18. Если вы будете играть 36 раз, делая каждый раз ставку в $1, вы выиграете общую сумму в $18 при выпадении всех благоприятных исходов… но вы проиграете общую сумму в $20 при выпадении всех 20 неблагоприятных исходов! В результате, вы будете немного отставать: вы теряете в среднем $2 нетто за каждые 36 игр (вы также можете сказать, что вы теряете в среднем 1/18 доллара в день). Теперь вы видите, как легко в данном случае допустить ошибку и посчитать вероятность неправильно!

Перестановка

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

Пример данной ситуации из игры с игральными костями “Farkle”. Для каждого нового раунда вы бросаете 6d6. Если вам повезет и выпадут все возможные результаты 1-2-3-4-5-6 (“стрейт”), вы получите большой бонус. Какова вероятность того, что это произойдет? В данном случае есть множество вариантов выпадения данной комбинации!

Решение выглядит следующим образом: на одной из игральных костей (и только на одной) должно выпасть число 1! Сколько вариантов выпадения числа 1 на одной игральной кости? Шесть, так как есть 6 игральных костей и на любой из них может выпасть число 1. Соответственно, возьмите одну игральную кость и отложите ее в сторону. Теперь, на одной из оставшихся игральных костей должно выпасть число 2. Для этого есть пять вариантов. Возьмите еще одну игральную кость и отложите ее в сторону. Затем следует, на четырех из оставшихся игральных костей может выпасть число 3, на трёх из оставшихся игральных костей может выпасть число 4, на двух — число 5 и в итоге у вас остается одна игральная кость, на которой должно выпасть число 6 (в последнем случае игральная кость одна и выбора нет). Чтобы посчитать количество благоприятных исходов для выпадения комбинации “стрейт”, мы умножаем все разные, независимые варианты: 6x5x4x3x2x1 = 720 — похоже, что есть довольно большое количество вариантов того, что выпадет эта комбинация.

Чтобы посчитать вероятность выпадения комбинации “стрейт”, нам нужно разделить 720 на количество всех возможных исходов для бросания 6d6. Каково число всех возможных исходов? На каждой игральной кости может выпасть 6 граней, поэтому мы умножаем 6x6x6x6x6x6 = 46656 (число намного больше!). Делим 720/46656 и получаем вероятность равную примерно 1,5%. Если бы вы занимались дизайном этой игры, вам бы полезно было это знать, чтобы вы могли создать соответствующую систему подсчёта очков. Теперь мы понимаем, почему в игре “Farkle” вы получите такой большой бонус, если вам выпадет комбинация “стрейт”, потому что эта ситуация довольно редкая!

Результат также интересен и по другой причине. На примере видно насколько на самом деле редко за короткий период выпадает результат, соответствующий вероятности. Конечно, если бы мы бросали несколько тысяч игральных костей, разные грани игральных костей выпадали бы довольно часто. Но когда мы бросаем только шесть игральных костей, почти никогда не случается так, чтобы выпала каждая из граней! Исходя из этого становится понятно, что глупо ожидать, что сейчас выпадет другая грань, которая еще не выпадала “потому что нам давно не выпадало число 6, а значит выпадет сейчас”.

Слушай, твой генератор случайных чисел сломался…

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

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

Вы делаете математический расчёт. 1/10*1/10*1/10*1/10 равно 1 из 10 000, что значит, что это довольно редкий случай. И именно это пытается вам сказать игрок. Есть ли в данном случае проблема?

Всё зависит от обстоятельств. Сколько игроков сейчас на вашем сервере? Предположим, у вас достаточно популярная игра и каждый день в неё играет 100 000 человек. Сколько игроков убьют четыре монстра подряд? Возможно все, несколько раз за день, но давайте предположим, что половина из них просто обмениваются разными предметами на аукционах или переписываются на RP серверах, или выполняют другие игровые действия, таким образом, на самом деле на монстров охотится только половина из них. Какова вероятность того, что кому-то выпадет одна и та же награда? При данной ситуации можно ожидать, что одна и та же награда может выпасть несколько раз за день, как минимум!

Кстати, поэтому кажется, что каждые несколько недель по крайней мере кто-то выигрывает в лотерею, даже если этим кем-то никогда не бываете вы или ваши знакомые. Если достаточное количество людей играет каждую неделю, есть вероятность того, что где-то найдется хотя бы один счастливчик… но если вы играете в лотерею, вероятность того, что вы выиграете меньше вероятности того, что вас пригласят на работу в “Infinity Ward”.

Карты и зависимость

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

Обратите внимание, что когда я говорю “карты”, я имею в виду любую игровую механику, в которой есть набор объектов и вы убираете один из объектов, не заменяя его, “колода карт” в данном случае аналог мешочку с фишками, из которого вы вынимаете одну фишку и не заменяете её, или урне, из которой вы вынимаете цветные шарики (на самом деле я никогда не видел игру, в которой бы была урна, из которой бы вынимали цветные шарики, но похоже, что преподаватели теории вероятности по какой-то причине предпочитают данный пример).

Свойства зависимости

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

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

Факт того, что мы смотрим на карты, также важен. Если я выну карту из колоды и не посмотрю на неё, у меня не будет дополнительной информации, и на самом деле вероятность не изменится. Это может прозвучать нелогично. Как простое переворачивание карты может волшебным образом изменить вероятность? Но это возможно, потому что вы можете посчитать вероятность для неизвестных предметов только исходя из того, что вы знаете. Например, если вы перетасуете стандартную колоду карт, откроете 51 карту и ни одна из них не будет трефовой дамой, вы будете знать со 100% уверенностью, что оставшаяся карта — это трефовая дама. Если же вы перетасуете стандартную колоду карт и вынете 51 карту, несмотря на них, то вероятность того, что оставшаяся карта — трефовая дама, будет всё равно 1/52. Открывая каждую карту, вы получаете больше информации.

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

Вы тасуете стандартную колоду в 52 карты и вынимаете две карты. Какова вероятность того, что вы вынете пару? Есть несколько способов вычислить эту вероятность, но, наверно, самый простой выглядит следующим образом: какова вероятность того, что вынув одну карту, вы не сможете вынуть пару? Эта вероятность равна нулю, поэтому не так важно какую первую карту вы вынули, при условии, что она совпадает со второй. Не важно какую именно карту мы вынем первой, у нас всё равно есть шанс вынуть пару, поэтому вероятность того, что мы можем вынуть пару, после того как вынули первую карту, равна 100%.

Какова вероятность того, что вторая карта совпадет с первой? В колоде остается 51 карта и 3 из них совпадают с первой картой (вообще-то их было бы 4 из 52, но вы уже убрали одну из совпадающих карт, когда вынули первую карту!), поэтому вероятность равна 1/17. (Поэтому, когда в следующий раз парень, сидящий за столом напротив вас за игрой в техасский холдем, скажет: “Круто, ещё одна пара? Мне сегодня везет”, вы будете знать, что есть довольно высокий шанс того, что он блефует.)

Что если мы добавим два джокера и теперь у нас в колоде 54 карты, и мы хотим знать какова вероятность вынуть пару? Первой картой может оказаться джокер и тогда в колоде будет только одна карта, а не три, которая совпадёт. Как найти вероятность в данном случае? Мы разделим вероятности и перемножим каждую возможность.

Нашей первой картой может быть джокер или какая-нибудь другая карта. Вероятность вынуть джокер равна 2/54, вероятность вынуть какую-то другую карту равна 52/54.

Если первая карта — джокер (2/54), то вероятность того, что вторая карта совпадет с первой равна 1/53. Перемножаем значения (мы можем перемножить их, потому что это отдельные события, и мы хотим, чтобы оба события произошли) и получаем 1/1431 — меньше чем одну десятую процента.

Если первой вы вынимаете какую-то другую карту (52/54), вероятность совпадения со второй картой равна 3/53. Перемножаем значения и получаем 78/1431 (немного больше чем 5,5%).

Что мы делаем с этими двумя результатами? Они не пересекаются, и мы хотим знать вероятность каждого из них, поэтому мы суммируем значения! Получаем окончательный результат 79/1431 (всё равно примерно 5,5%).

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

Парадокс Монти Холла

Это приводит нас к довольно известному парадоксу, который часто приводит многих в замешательство — парадокс Монти Холла. Парадокс назван в честь ведущего телешоу “Let’s Make a Deal” Монти Холла. Если вы никогда не видели это шоу, оно было противоположностью телешоу “The Price Is Right”. В “The Price Is Right” ведущий (раньше ведущим был Боб Баркер, сейчас это… Дрю Кэри? В любом случае…) — ваш друг. Он хочет, чтобы вы выиграли деньги или классные призы. Он пытается предоставить вам каждую возможность для выигрыша, при условии, что вы сможете угадать сколько на самом деле стоят предметы, приобретенные спонсорами.

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

Но один из самых известных мемов шоу был следующим: перед вами было три двери, и они назывались Дверь номер 1, Дверь номер 2 и Дверь номер 3. Вы могли выбрать какую-то одну дверь… бесплатно! За одной из этих дверей, находился великолепный приз, например, новый легковой автомобиль. За остальными дверями не было никаких призов, эти две двери не представляли собой никакой ценности. Их целью было унизить вас и поэтому не то, чтобы за ними совсем ничего не было, за ними было что-то, что выглядело глупо, например, за ними стоял козёл или огромный тюбик зубной пасты, или что-то… что-то, что точно было не новым легковым автомобилем.

Вы выбирали одну из дверей и Монти уже собирался открыть её, чтобы вы узнали выиграли вы или нет… но подождите, перед тем как мы узнаем, давайте посмотрим на одну из тех дверей, которую вы не выбрали. Так как Монти знает, за какой дверью находится приз, а есть только один приз и две двери, которые вы не выбрали, несмотря ни на что он всегда может открыть дверь, за которой нет приза. “Вы выбираете Дверь номер 3? Тогда, давайте откроем Дверь номер 1, чтобы показать, что за ней не было приза”. А теперь, из щедрости он предлагает вам шанс обменять выбранную Дверь номер 3 на то, что находится за Дверью номер 2. Именно в этот момент возникает вопрос о вероятности: возможность выбрать другую дверь повышает вашу вероятность выиграть или понижает, или она остаётся неизменной? Как вы думаете?

Верный ответ: возможность выбрать другую дверь увеличивает вероятность выигрыша с 1/3 до 2/3. Это нелогично. Если раньше вы не сталкивались с данным парадоксом, скорее всего, вы думаете: подождите, открыв одну дверь, мы волшебным образом изменили вероятность? Но как мы уже видели на примере с картами выше, это именно то, что происходит, когда мы получаем больше информации. Это очевидно, что вероятность выигрыша, когда вы выбираете в первый раз, равна 1/3, и я полагаю, что с этим все согласятся. Когда отрывается одна дверь, это совершенно не меняет вероятность выигрыша для первого выбора, всё равно вероятность равна 1/3, но это значит, что вероятность того, что другая дверь правильная теперь равна 2/3.

Давайте посмотрим на этот пример с другой стороны. Вы выбираете дверь. Вероятность выигрыша равна 1/3. Я предлагаю вам поменять две другие двери, что на самом деле и предлагает сделать Монти Холл. Конечно, он открывает одну из дверей, чтобы показать, что за ней нет приза, но он всегда может поступить так, поэтому это на самом деле ничего не меняет. Конечно, вам захочется выбрать другую дверь!

Если вы не совсем разобрались с этим вопросом, и вам нужно более убедительное объяснение, нажмите на эту ссылку, чтобы перейти к замечательному маленькому Flash приложению, которое позволит вам изучить этот парадокс более подробно. Вы можете играть, начиная с примерно 10 дверей и затем постепенно перейти к игре с тремя дверьми; есть также симулятор, где вы можете выбрать любое количество дверей от 3 до 50 и играть или запустить несколько тысяч симуляций и посмотреть сколько бы раз вы выиграли если бы играли.

Ремарка от преподавателя высшей математики и специалиста по игровому балансу Максима Солдатова, которой, разумеется, не было у Шрайбера, но без которой понять это волшебное превращение достаточно трудно:

Выбираете дверь, одну из трех, вероятность «выиграть» 1/3. Теперь у вас есть 2 стратегии: поменять после открытия неверной двери выбор или нет. Если вы не меняете свой выбор, то вероятность так и останется 1/3, так как выбор идет только на первом этапе, и надо сразу угадать, если же меняеете, то выиграть вы можете, если выберете сперва неверную дверь (потом откроют другую неверную, останется верная, ты меняя решение как раз ее и берешь)
Вероятность выбрать в начале неверную дверь 2/3, вот и получается, что поменяв свое решение вы вероятность выигрыша делаете в 2 раза больше

И снова о парадоксе Монти Холла

Что касается самого шоу, Монти Холл знал это, потому что даже если его соперники не были сильны в математике, он разбирается в ней хорошо. Вот что он делал, чтобы немного изменить игру. Если вы выбирали дверь, за которой находился приз, вероятность чего равна 1/3, он всегда предлагал вам возможность выбрать другую дверь. Ведь вы выбрали легковой автомобиль и затем вы поменяете его на козла и будете выглядеть довольно глупо, а это именно то, что ему нужно, потому что он своего рода злой парень. Но если вы выберите дверь, за которой не будет приза, только в половине таких случаев он предложит вам выбрать другую дверь, а в иных случаях он просто покажет вам вашего нового козла, и вы уйдете со сцены. Давайте проанализируем эту новую игру, в которой Монти Холл может выбрать предлагать вам шанс выбрать другую дверь или нет.

Предположим, он следует данному алгоритму: если вы выбираете дверь с призом, он всегда предлагает вам возможность выбрать другую дверь, в ином случае вероятность того, что он предложит вам выбрать другую дверь или подарит козла равна 50/50. Какова вероятность вашего выигрыша?

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

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

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

Как и покер, теперь это игра психологическая, а не математическая. Монти предложил вам выбор, потому что он думает, что вы простофиля, который не знает, что выбрать другую дверь — это “правильное” решение, и что вы упорно будете держаться за свой выбор, потому что психологически ситуация, когда вы выбрали автомобиль, а затем потеряли его, сложнее? Или он думает, что вы умный и выберите другую дверь, и он предлагает вам этот шанс, потому что он знает, что вы угадали изначально правильно и что вы попадётесь на крючок и окажетесь в ловушке? Или может быть он нетипично добр для себя и подталкивает вас сделать что-то в вашем личном интересе, потому что он уже давно не дарил легковой автомобиль, и его продюсеры говорят ему, что зрителям становится скучно и лучше бы он подарил большой приз в скором времени, чтобы рейтинги не падали?

Таким образом, Монти удается предлагать выбор (иногда) и при этом общая вероятность выигрыша остается равной 1/3. Помните, что вероятность того, что вы проиграете сразу, равна 1/3. Вероятность того, что вы угадаете сразу правильно, равна 1/3, и в 50% этих случаев вы выиграете (1/3 x 1/2 = 1/6). Вероятность того, что вы угадаете сначала неправильно, но потом у вас будет шанс выбрать другую дверь, равна 1/3, и в 50% этих случаев вы выиграете (также 1/6). Суммируйте две независящие друг от друга возможности выигрыша, и вы получите вероятность равную 1/3, поэтому не важно останетесь вы при своём выборе или выберите другую дверь, общая вероятность вашего выигрыша на протяжении всей игры равна 1/3… вероятность не становится больше, чем в той ситуации, когда вы бы угадали дверь и ведущий бы вам показал, что находится за этой дверью, без возможности выбрать другую дверь! Поэтому смысл предлагать возможность выбрать другую дверь не в том, чтобы изменить вероятность, а в том, чтобы сделать процесс принятия решения более увлекательным для телевизионного просмотра.

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

Парадокс мальчика и девочки

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

Задача: у меня есть друг с двумя детьми, хотя бы один ребёнок — девочка. Какова вероятность того, что второй ребёнок тоже девочка? Давайте предположим, что в любой семье шанс рождения девочки или мальчика 50/50 и это справедливо для каждого ребёнка (на самом деле в сперме некоторых мужчин больше сперматозоидов с X-хромосомой или Y-хромосомой, поэтому вероятность немного меняется, если вы знаете, что один ребёнок — девочка, вероятность рождения девочки немного выше, кроме того есть ещё другие условия, например, гермафродитизм, но для решения этой задачи, мы не будем принимать это во внимание и предположим, что рождение ребёнка — это независимое событие и вероятность рождения мальчика или девочки одинакова).

Так как речь идёт о шансе 1/2, интуитивно мы ожидаем, что ответ будет, скорее всего, 1/2 или 1/4, или какое-то другое круглое число, кратное двум. Но ответ: 1/3. Подождите, почему?

Сложность в данном случае в том, что информация, которая у нас есть, сокращает количество возможностей. Предположим, родители — фанаты Улицы Сезам и независимо от того, родился мальчик или девочка, назвали своих детей A и B. При нормальных условиях есть четыре равновероятные возможности: A и B — два мальчика, A и B — две девочки, A — мальчик и B — девочка, A — девочка и B — мальчик. Так как мы знаем, что хотя бы один ребёнок — девочка, мы можем исключить возможность, что A и B — два мальчика, таким образом, у нас остается три (всё ещё равновероятных) возможности. Если все возможности равновероятны и их три, мы знаем, что вероятность каждой из них равна 1/3. Только в одном из этих трёх вариантов оба ребёнка — две девочки, поэтому ответ 1/3.

И снова о парадоксе мальчика и девочки

Решение задачи становится ещё более нелогичнее. Представьте, что я скажу вам, что у моего друга двое детей и один ребёнок — девочка, которая родилась во вторник. Предположим, что при нормальных условиях вероятность рождения ребёнка в один из семи дней недели одинакова. Какова вероятность того, что второй ребёнок тоже девочка? Вы можете подумать, что ответ всё равно будет 1/3; какое значение имеет вторник? Но и в этом случае интуиция подводит нас. Ответ: 13/27, что не просто не интуитивно, это очень странно. В чём дело в данном случае?

На самом деле вторник меняет вероятность, потому что мы не знаем, какой ребёнок родился во вторник или возможно двое детей родились во вторник. В данном случае используем ту же логику, как и выше, мы считаем все возможные комбинации, когда хотя бы один ребёнок — девочка, которая родилась во вторник. Как и в предыдущем примере предположим, что детей зовут A и B, комбинации выглядят следующим образом:

  • A — девочка, которая родилась во вторник, B — мальчик (в данной ситуации есть 7 возможностей, по одной для каждого дня недели, когда мог родится мальчик).
  • В — девочка, которая родилась во вторник, А — мальчик (также 7 возможностей).
  • A — девочка, которая родилась во вторник, В — девочка, которая родилась в другой день недели (6 возможностей).
  • В — девочка, которая родилась во вторник, А — девочка, которая родилась не во вторник (также 6 вероятностей).
  • А и В — две девочки, которые родились во вторник (1 возможность, нужно обратить на это внимание, чтобы не посчитать дважды).

Суммируем и получаем 27 разных равновозможных комбинаций рождения детей и дней с хотя бы одной возможностью рождения девочки во вторник. Из них 13 возможностей, когда рождаются две девочки. Также это выглядит совершенно нелогично, и похоже данная задача создана только для того, чтобы вызвать головную боль. Если вы до сих пор озадачены этим примером, у игрового теоретика Йеспера Юла есть хорошее объяснение этого вопроса на его сайте.

Если сейчас вы работаете над игрой…

Если в игре, дизайном которой вы занимаетесь, есть случайность, это отличный повод проанализировать её. Выберите какой-нибудь элемент, который вы хотите проанализировать. Сначала спросите себя какова вероятность для данного элемента по вашим ожиданиям, какой она должна быть, по вашему мнению, в контексте игры. Например, если вы создаёте RPG и думаете, какой должна быть вероятность того, что игрок сможет победить монстра в битве, спросите себя какое процентное отношение побед кажется вам правильным. Обычно во время игры в консольные RPG, игроки очень расстраиваются при поражении, поэтому лучше, чтобы они проигрывали не часто… может в 10% случаев или меньше? Если вы дизайнер RPG, вы, наверно, знаете лучше, чем я, но нужно, чтобы у вас была базовая идея того, какой должна быть вероятность.

Затем спросите себя является ли это чем-то зависимым (как карты) или независимым (как игральные кости). Разберите все возможные результаты и их вероятности. Убедитесь в том, что сумма всех вероятностей равна 100%. И наконец, конечно, сравните полученные результаты с результатами ваших ожиданий. Происходит ли бросание игральных костей или вынимание карт таким образом, как вы задумали или вы видите, что вам нужно корректировать значения. И, конечно, если вы найдете, что нужно корректировать, вы можете использовать те же расчёты, чтобы определить насколько нужно что-то скорректировать!

Задание на дом

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

Игра №1 — Драконьи кости

Это игра в кости, которую мы как-то раз придумали с коллегами (спасибо Джебу Хэвенсу и Джесси Кингу!), и которая специально выносит мозг людям своими вероятностями. Это простая игра казино, которая называется “Драконьи кости”, и это азартное соревнование в кости между игроком и заведением. Вам дается обычный кубик 1d6. Цель игры — выбросить число больше, чем у заведения. Тому дается нестандартный 1d6 — такой же, как и у вас, но вместо единицы на одной грани — изображение Дракона (таким образом, у казино кубик Дракон-2-3-4-5-6). Если заведению выпадает Дракон, оно автоматически выигрывает, а вы — проигрываете. Если вам обоим выпадает одинаковое число, это ничья, и вы кидаете кости снова. Победит тот, кто выбросит большее число.

Разумеется, все складывается не совсем в пользу игрока, ведь у казино есть преимущество в виде грани Дракона. Но действительно ли это так? Вам и предстоит это вычислить. Но перед этим проверьте свою интуицию. Предположим, что выигрыш составляет 2 к 1. Таким образом, если вы побеждаете, вы сохраняете свою ставку и получаете ее удвоенную сумму. К примеру, если вы ставите 1 доллар и выигрываете, вы сохраняете этот доллар и получаете еще 2 сверху, итого — 3 доллара. Если проигрываете — теряете только свою ставку. Сыграли бы вы? Так вот, чувствуете ли вы интуитивно, что вероятность больше, чем к 2 к 1, или все же считаете, что меньше? Другими словами, в среднем за 3 игры вы рассчитываете выиграть более одного раза, или менее, или один раз?

Как только с интуицией разобрались, применяйте математику. Для обоих игральных костей существует лишь 36 возможных положений, так что вы без проблем можете просчитать их все. Если вы не уверены в этом предложении “2 к 1”, подумайте вот о чем: предположим, вы сыграли в игру 36 раз (каждый раз ставя по 1 доллару). Из-за каждой победы вы получаете 2 доллара, из-за проигрыша — теряете 1, а ничья ничего не меняет. Посчитайте все свои вероятные выигрыши и проигрыши и решите, потеряете ли вы некоторую сумму долларов, или же приобретете. Затем спросите себя, насколько права оказалась ваша интуиция. А затем — осознайте, какой же я злодей.

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

Игра №2 — Бросок на удачу

Это азартная игра в кости, которая называется “Бросок на удачу” (также “Птичья клетка”, потому что иногда кости не бросают, а помещают в большую проволочную клетку, напоминающую клетку из “Бинго”). Эта простая игра, суть которой сводится примерно к этому: поставьте, скажем, 1 доллар на число от 1 до 6. Затем вы бросаете 3d6. За каждую кость, на которой выпадает ваше число, вы получаете 1 доллар (и сохраняете свою изначальную ставку). Если ни на одной кости ваше число не выпадает, казино получает ваш доллар, а вы — ничего. Таким образом, если вы ставите на 1, и вам трижды выпадает единица на гранях, вы получаете 3 доллара.

Интуитивно кажется, что в этой игре равные шансы. Каждая кость — это индивидуальный, 1 к 6, шанс выиграть, так что в сумме всех трех ваш шанс выиграть равен 3 к 6. Однако, разумеется, помните, что вы слагаете три отдельных кости, и вам разрешено складывать только при условии, что мы говорим об отдельных выигрышных комбинациях одной и той же кости. Что-то вам нужно будет умножить.

Как только вы вычислите все возможные результаты (вероятно, это будет легче сделать в Excel, чем от руки, ведь их 216), игра на первый взгляд все еще выглядит четно-нечетной. Но на самом деле, у казино все же больше шансов выиграть — насколько больше? В частности, сколько в среднем вы рассчитываете проиграть денег за каждый раунд игры? Все, что вам нужно сделать — суммировать выигрыши и проигрыши всех 216 результатов, а затем разделить на 216, что должно быть довольно просто… Но, как видите, тут есть несколько ловушек, в которые вы можете попасть, и именно поэтому я говорю вам: если вам кажется, что в этой игре равные шансы на выигрыш, вы все неправильно поняли.

Игра №3 — 5-карточный стад покер

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

Роял-флеш — это 10-J-Q-K-A в одной комбинации, всего их четыре, таким образом, существует четыре возможных способа получить роял-флеш. Рассчитайте вероятность того, что вам выпадет одна такая комбинация.

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

Игра №4 — Лотерея IMF

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

Я уже упоминал ранее игру “Chron X”, над которой когда-то работал, и там была одна очень интересная карта — лотерея IMF. Вот как она работала: вы использовали ее в игре. После того, как раунд завершался, карты перераспределялись, и существовала возможность в 10%, что карта выйдет из игры, и что случайный игрок получит 5 единиц каждого типа ресурса, фишка которого присутствовала на этой карте. Карта вводилась в игру без единой фишки, но, каждый раз, оставаясь в игре в начале следующего раунда, она получала одну фишку. Таким образом, существовал 10% шанс того, что вы введете ее в игру, раунд закончится, карта покинет игру, и никто ничего не получит. Если этого не произойдет (с вероятностью 90%), появляется 10% шанс (вообще-то 9%, поскольку это 10% из 90%), что в следующем раунде она покинет игру, и кто-то получит 5 единиц ресурсов. Если карта покинет игру через один раунд (10% от имеющихся 81%, так что вероятность — 8,1%), кто-то получит 10 единиц, еще через раунд — 15, еще — 20, и так далее. Вопрос: каково вообще ожидаемое значение числа ресурсов, которые вы получите от этой карты, когда она наконец покинет игру?

Обычно мы бы попытались решить эту задачу, найдя возможность каждого исхода, и умножив на количество всех исходов. Таким образом, существует вероятность в 10%, что вы получите 0 (0.1*0 = 0). 9%, что вы получите 5 единиц ресурсов (9%*5 = 0.45 ресурсов). 8,1% того, что вы получите 10 (8.1%*10 = 0.81 ресурсов в целом, ожидаемое значение). И так далее. А потом мы бы все это суммировали.

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

Если вы достаточно хорошо разбираетесь в программировании, напишите программу, которая будет симулировать эту карту. У вас должна быть временная петля, которая приводит переменную в исходное положение нуля, показывает случайное число и с вероятностью 10% переменная выходит из петли. В противоположном случае она добавляет 5 к переменной, и цикл повторяется. Когда она наконец выйдет из петли, увеличьте общее число пробных пусков на 1 и общее число ресурсов (насколько — зависит от того, на каком значении остановилась переменная). Затем сбросьте переменную и начните заново. Запустите программу несколько тысяч раз. В конце концов разделите общее количество ресурсов на общее количество пробегов — это и будет ваше ожидаемое значение метода Монте-Карло. Запустите программу несколько раз, чтобы удостовериться, что числа, которые вы получили, примерно одинаковы; если разброс все еще велик, увеличьте число повторов во внешней петле, пока не начнете получать соответствия. Можете быть уверены, какие бы числа вы в итоге ни получили, они будут приблизительно верны.

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

Сейчас вам очень пригодятся функции IF и RAND. RAND не требует значений, она всего лишь выдает случайное десятичное число от 0 до 1. Обычно мы совмещаем его с FLOOR и плюсами и минусами, чтобы симулировать бросок кости, о чем я уже упоминал ранее. Впрочем, в этом случае мы всего лишь оставляем вероятность в 10% того, что карта покинет игру, так что мы можем просто проверить, не составляет ли значение RAND меньше 0,1, и больше не забивать себе этим голову.

IF имеет три значения. По порядку: условие, которое либо верно, либо нет, затем значение, которое возвращается, если условие верно, и значение, которое возвращается, если условие неверно. Так что следующая функция будет возвращаться 5% времени, и 0 остальных 90% времени:
=IF(RAND()<0.1,5,0)

Существует много способов установить эту команду, но я бы использовал такую формулу для ячейки, которая представляет первый раунд, скажем, это ячейка A1:

Здесь я использую негативную переменную в значении “эта карта не покинула игру и пока не отдала никаких ресурсов”. Так что, если первый раунд завершился, и карта покинула игру, A1 — это 0; в противоположном случае это -1.

Для следующей ячейки, представляющей второй раунд:

Так что, если первый раунд завершился, и карта сразу покинула игру, A1 — это 0 (число ресурсов), и эта ячейка просто скопирует это значение. В противоположном случае A1 — -1 (карта еще не покинула игру), и эта ячейка продолжает случайное движение: 10% времени она будет возвращать 5 единиц ресурсов, в остальное время ее значение будет по-прежнему равняться -1. Если применять эту формулу к добавочным ячейкам, мы получим добавочные раунды, и, какая бы ячейка ни выпала вам в конце, вы получите конечный результат (или -1, если карта так и не покинула игру после всех разыгранных вами раундов).

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

В Windows вы хотя бы можете нажать F9 для пересчета всех случайных чисел. Как и раньше, сделайте это несколько раз и посмотрите, одинаковы ли величины, которые вы получаете. Если разброс слишком велик, удвойте число пробегов и попробуйте снова.

Нерешенные задачи

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

Нерешенная задача №1: Лотерея IMF

Первая нерешенная задача — предыдущее задание на дом. Я легко могу применить метод Монте-Карло (с помощью С++ или же Excel), и буду уверен в ответе на вопрос “сколько ресурсов получит игрок”, но я не знаю точно, как предоставить точный доказуемый ответ математически (это же бесконечная серия). Если вы знаете ответ, опубликуйте его здесь… после того, как проверите его методом Монте-Карло, разумеется.

Нерешенная задача №2: Последовательности фигур

Эту задачу (и снова она выходит далеко за пределы задач, решаемых в этом блоге) мне подкинул один знакомый геймер более 10 лет тому назад. Он заметил одну интересную особенность, играя в Вегасе в блэк-джек: вынимая карты из башмака на 8 колод, он видел десять фигур подряд (фигура, или фигурная карта — 10, Джокер, Король или Королева, так что всего их 16 в стандартной колоде на 52 карты, таким образом, их 128 в башмаке на 416 карт). Какова вероятность того, что в этом башмаке по меньшей мере одна последовательность десяти или более фигур? Предположим, что их тасовали честно, в случайном порядке. (Или же, если вам так больше нравится, какова вероятность того, что нигде не встречается последовательность из десяти или более фигур?)

Можем упростить задачу. Вот последовательность из 416 частей. Каждая часть — 0 или 1. Есть 128 единиц и 288 нулей, случайно разбросанных по всей последовательности. Сколько существует способов в случайном порядке перемежить 128 единиц 288 нулями, и сколько раз в этих способах встретится как минимум одна группа десяти или более единиц?

Всякий раз, как я только принимался за решение этой задачи, она казалась мне легкой и очевидной, но, стоило мне углубиться в детали, она внезапно разваливалась на части и казалась мне просто-таки невозможной. Так что не торопитесь выпаливать ответ: сядьте, хорошенько подумайте, изучите условия задачи, попробуйте подставить реальные числа, потому что все люди, с которым я говорил об этой задаче (в том числе и несколько аспирантов, работающих в этой сфере), реагировали примерно одинаково: “Это же совершенно очевидно… ой, нет, погоди, совсем не очевидно”. Это тот самый случай, на который у меня нет метода для просчитывания всех вариантов. Я безусловно мог бы прогнать задачу методом брутфорса через компьютерный алгоритм, но гораздо более любопытно было бы узнать математический способ решения этой задачи.

Игральные кости и математика. Наиболее вероятные комбинации. ⁠ ⁠

Всем добрый вечер, сегодня поговорим о том, какие очки на костях наиболее вероятны. Запасайтесь чайками и печеньем, погнали!

Игральные кости и математика. Наиболее вероятные комбинации. Теория вероятностей, Вероятность, Кубики, Игральные кости, Длиннопост

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

У кубика 6 граней

Игральные кости и математика. Наиболее вероятные комбинации. Теория вероятностей, Вероятность, Кубики, Игральные кости, Длиннопост

из-за чего вероятность того, что выпадет каждая грань — это 1/6. И если от нас требуют сделать ставку на кол-во очков на одном кубике — это неважно, они (вероятности) все одинаковы. Однако существует миф, что в случае двух кубиков числа от 2 до 12 выпадают также с равной вероятностью. Это не так.

Почему же? А давайте сначала помоделируем, а потом докажем.

Игральные кости и математика. Наиболее вероятные комбинации. Теория вероятностей, Вероятность, Кубики, Игральные кости, Длиннопост

Эта страшная таблица — вероятности выпадения каждого из количеств очков на кубике. Как видим, вероятность 2 и 12 ничтожно мала, когда как 7 выпадет с вероятностью более 16%. Иначе говоря, в случае двух кубиков ставьте на 7!

Почему же это так? Докажем. Допустим каждый из двух кубиков вы кинули по 6 раз, и вам всегда выпадали разные числа (в среднем так и будет — ведь вероятности равные). Давайте найдем сумму для каждого очка броска.

Игральные кости и математика. Наиболее вероятные комбинации. Теория вероятностей, Вероятность, Кубики, Игральные кости, Длиннопост

Как видим, очень много раз выпала семерка, а вот 12 получается только в одном случае. Доказать это можно так:

12 — 6 + 6 (одна комбинация, P = 1/36)

11 — 5 + 6 или 6 + 5 (две, P = 1/18)

10 — 5 + 5 или 4 + 5 или 5 + 4 (три, P = 1/12)

9 — 5 + 4 или 6 + 3 или тоже самое зеркально

8 — 6 + 2 или 5 + 3 или 4 + 4 . или 2 + 6

7 — 6 + 1 или 5 + 2 . или 1 + 6

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

Ну и напоследок для 3-5 костей:

Игральные кости и математика. Наиболее вероятные комбинации. Теория вероятностей, Вероятность, Кубики, Игральные кости, Длиннопост

Игральные кости и математика. Наиболее вероятные комбинации. Теория вероятностей, Вероятность, Кубики, Игральные кости, Длиннопост

Игральные кости и математика. Наиболее вероятные комбинации. Теория вероятностей, Вероятность, Кубики, Игральные кости, Длиннопост

Что интересно, для 5 вероятность выпадения 5 и 30 очень маленькая. Ведь для того, чтобы выпало 5 — нужно чтобы 5 подряд кубиков дали 1. То есть 1/6 * 1/6 * 1/6. или 1/7776.

Вывод: если хотите самую вероятную комбинацию — ставьте на серединную сумму (для двух костей это будет 7, для 3 10 или 11 и т. д.).

Спасибо всем за прочтение!

Автор любит открывать очевидный взгляд на очевидные вещи!

Простенькая программа, моделирующая вероятности для разного количества костей (DEPTH)

А с какой вероятностью выпадает 7 на одном кубике?

там 6 во 2 и 3 случае вместо 5

Ответ Jeide в «Ответ на пост "С чем вы сталкивались, что в реальности случается раз на миллион?"»⁠ ⁠

Напомнило, как я жену и тестя учил варианту игры в кости. 5 игральных костей (кубиков) кидаются на стол. Засчитываются только 1 (100 очков), 5 (50 очков) и умножения для 3 (х100) и 4 (х1000) одинаковых костей, счет ведётся до 10000 очков.

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

Рассказать правила я решил по ходу игры:

— Сейчас я научу вас моему любимому варианту игры в кости — начал я. — Бросаем все 5 игральных костей.

Все 5 костей первым же броском выпадают одинаковыми — пятерками вверх, после чего я продолжил:

— Эпичность этого момента вы сможете оценить только после того, как мы сыграем несколько партий.

Такой бросок не прям невообразимо редок. Но я никогда за 25+ лет моей игры в кости не видел, чтобы вся партия состояла из одного такого броска. Для меня это выглядело примерно как в фильме «Блеф» с Челентано:

— У меня тузовый покер!

Dice странной формы ⁠ ⁠

Игральные кубики изначально делали из реальных костей — надкопытных суставов домашней скотины. К своей «кубической форме» они пришли не сразу. А когда пришли — тут же стали из нее выбираться.

К сожалению, в моей коллекции нет кубика-свиньи или кубиков-копии древнегерманских Lord&Lady, сделанных в форме человечков, закинувших ноги за уши. Зато есть кубик в кубе, кубик-шар, кубик-конструктор, кубик-юла… и все их можно использовать для игр.

Dice странной формы Игральные кости, Кубики, Dungeons & Dragons, Настольные ролевые игры, Наше НРИ, Длиннопост

Dice странной формы Игральные кости, Кубики, Dungeons & Dragons, Настольные ролевые игры, Наше НРИ, Длиннопост

Dice странной формы Игральные кости, Кубики, Dungeons & Dragons, Настольные ролевые игры, Наше НРИ, Длиннопост

Dice странной формы Игральные кости, Кубики, Dungeons & Dragons, Настольные ролевые игры, Наше НРИ, Длиннопост

Dice странной формы Игральные кости, Кубики, Dungeons & Dragons, Настольные ролевые игры, Наше НРИ, Длиннопост

Dice странной формы Игральные кости, Кубики, Dungeons & Dragons, Настольные ролевые игры, Наше НРИ, Длиннопост

Как я делаю свои кастомные дайсы — мастер-модель и молды⁠ ⁠

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

Список того, что мне пригодится:

1) Время и усидчивость – много.

2) Прямые (ну, или хотя бы не совсем кривые) руки – 2 шт.

3) Контакты местной фирмы, занимающейся 3D-печатью (или контакт друга с 3D-принтером).

4) Компьютер и минимальные знания 3D-моделирования.

5) Полировальная войлочная насадка – 1 шт.

6) Полировальная насадка-пуховка – 2 шт.

8) Аппарат для маникюра.

9) Наждачная бумага (P1000, P1500, P2000, P2500) – каждой по 2 листа.

10) Полировальные пасты 3M Fast Cut Plus и 3M Extra Fine Plus.

11) Вакуумная камера.

12) Мановакуумная камера.

13) Разные емкости для смешивания силикона и эпоксидной смолы.

14) Гелевые и спиртовые красители.

30мл эпоксидной смолы.

270 мл силикона.

17) Кубики Лего (или похожие).

19) Одноразовые перчатки.

Интригует? 🙂 Но начнем с самого начала.

Первое, что мне нужно сделать – это выбрать шрифт для цифр и сделать 3D-модели всех кубиков. В выборе шрифта главное, чтобы в нем не было слишком тонких линий в начертании цифр, так как они нормально пропечатаются только на тех кубах, где грани довольно большие, а на D20, например, просто пропадут. Слишком толстых линий тоже быть не должно, так как как раз на тех кубах, где грани довольно большие будет сложно выставлять поддержки при печати и сложно прокрашивать.

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

Моя моделька D20:

Как я делаю свои кастомные дайсы - мастер-модель и молды Своими руками, Настольные игры, Игральные кости, Dungeons & Dragons, Рукоделие с процессом, Молды, Ручная работа, Настольные ролевые игры, Крафт, DnD 5, Pathfinder, Кубики, Длиннопост

Когда все модельки кубов готовы, можно бежать в местную фирму, занимающуюся 3D-печатью, и радостно просить их напечатать все это дело. Единственным критерием, который у меня был к такой фирме, когда я обращалась в первый раз – это возможность напечатать кубы из фотополимера. Это немного дороже, зато на таких кубах сразу видно степень шлифовки-полировки, и они не ингибируют с силиконами на платиновой основе. Я знаю, что есть мастера, которые используют в качестве мастер-модели кубики, напечатанные из обычного пластика для 3D-принтера, потом отливают формы из силикона на оловянной основе (потому что с этим силиконом пластик вроде бы не ингибирует, а с силиконом на платиновой основе может), заливают туда эпоксидку, достают, и уже на основе этих кубов из эпоксидной смолы делают молды из силикона на платиновой основе. Но это все звучит жутко, долго, и вообще не мой случай.

Так вот, вернемся к 3D-печати. Казалось бы, все просто, но нет.

Первый раз я заказала печать 3D-модели дайсов в своем городе, и на следующий день они были готовы. Но когда я приехала их забирать, то очень и очень удивилась. Во-первых, из-за того, что кубы довольно маленькие, сложно оценить, должен ли быть D20 куб в высоту, например, 22мм или 23 мм? А это очень большая разница, если мы говорим о дайсах. И если все-таки 22мм, то от грани до грани или от вершины до вершины? Из-за этого, когда я получила свои кубы, то увидела, что часть из них была слишком маленькой, часть – слишком большой, и только два – D8 и D12 – были более-менее нормального размера. Во-вторых, те, кто мне печатал кубы совершенно не озаботились (а я заранее не попросила, так как не подумала) нормальным выставлением поддержек. В итоге я получила кубы, где часть поддержек оказалась прямо в углублениях цифр, откуда их было не достать ни скальпелем, ни тонкими насадками маникюрного аппарата. В-третьих, сами поддержки мне после печати срезали и немного зашлифовали, но в некоторых местах перестарались, убирая их следы. Поэтому, например, D8 получил две перешлифованных грани, которые оказались явно больше всех остальных, что нарушало и баланс, и эстетику куба. По своей неопытности исправить я это тоже в итоге не смогла. И в-четвертых, наплывы, которые я устала шлифовать в последствии.

Фото тех кубов-неудачников Х):

Как я делаю свои кастомные дайсы - мастер-модель и молды Своими руками, Настольные игры, Игральные кости, Dungeons & Dragons, Рукоделие с процессом, Молды, Ручная работа, Настольные ролевые игры, Крафт, DnD 5, Pathfinder, Кубики, Длиннопост

Второй раз я решила заказать печать модели кубов у другой печатной фирмы, но уже не из моего города. Эта фирма занималась в основном печатью миниатюр для различных настолок, и мой молодой человек, по совместительству мой ДМ, часто делал у них заказы. Качество миниатюр было довольно высоким, а кубы, как мне казалось – это несколько проще супер-детализированных минек. Если кратко, то после того, как мне пытались отпечатать дайсы около полутора месяцев, я получила дико перекошенные кубы с кучей наплывов 🙁 Передо мной извинились, сказали, что было слишком сложно, и они не справились, и вернули деньги.

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

Окей, у меня на руках наконец-то есть напечатанные кубы! Что дальше?

А дальше обработка мастер-модели. Это довольно долгий и однообразный процесс. Сначала шлифовка, потом полировка и мытье. Для этого мне обязательно нужен респиратор, перчатки и стакан воды, в котором я буду смачивать кубы, чтобы при шлифовке они меньше пылили, а бумага медленнее забивалась. На наждачной бумаге P1000 я стачиваю самые жесткие косяки (обычно у мастер-модели таких нет, только у самих кубов из эпоксидки), на Р1500 и далее – Р2000, Р2500 — я обрабатываю уже все грани – смочив кубик, вожу гранью по бумаге (обычно круговыми движениями, чтобы было равномернее). Здесь сложность в том, что ни в коем случае нельзя перетачивать, перешлифовывать какую-либо грань, иначе геометрия куба «поплывет». Такая шлифовка может занимать от 3 до12 часов в зависимости от состояния мастер-модели и от опыта мастера.

После этого начинается мой самый-самый любимый этап – полировка. Я намазываю куб пастой 3М Fast Cut Plus, вставляю в дремель войлочную насадку и полирую грани до прозрачности. Потом меняю насадку на пуховку и еще раз прохожусь по кубу, доводя его до кристальной прозрачности с пастой 3M Extra Fine Plus. В конце всех процедур куб блестит, сверкает и на ощупь становится очень гладким. К сожалению, у меня нет необработанной мастер-модели именно кубов, чтобы показать в сравнении, но есть мастер-модель болванок без цифр:

Как я делаю свои кастомные дайсы - мастер-модель и молды Своими руками, Настольные игры, Игральные кости, Dungeons & Dragons, Рукоделие с процессом, Молды, Ручная работа, Настольные ролевые игры, Крафт, DnD 5, Pathfinder, Кубики, Длиннопост

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

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

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

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

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

Есть два типа молдов для дайсов: sprue и squish. Sprue – как следует из названия – это использование вспомогательного литника для отливки дайса. Прикладываю изображение с просторов интернета, чтобы было понятнее.

Как я делаю свои кастомные дайсы - мастер-модель и молды Своими руками, Настольные игры, Игральные кости, Dungeons & Dragons, Рукоделие с процессом, Молды, Ручная работа, Настольные ролевые игры, Крафт, DnD 5, Pathfinder, Кубики, Длиннопост

Squish – это просто форма с крышечкой. Я буду лить именно такие молды, потому что они мне кажутся удобнее и безопаснее. Плюс, я люблю запихивать в дайсы всякие штуки, а со сквишами это делать куда удобнее.

Литье молдов начинается с большой подготовки. Так как у меня нет специальных форм для заливки кубов силиконом, чтобы молды потом было оттуда удобно извлекать и дозаливать, я использую конструктор типа Лего для этих целей. Я собираю из Лего такую мега-форму на семь ячеек, вырезаю по её форме картонку, обклеенную скотчем, и обклеиваю края Лего двусторонним скотчем. Вот так это выглядит:

Как я делаю свои кастомные дайсы - мастер-модель и молды Своими руками, Настольные игры, Игральные кости, Dungeons & Dragons, Рукоделие с процессом, Молды, Ручная работа, Настольные ролевые игры, Крафт, DnD 5, Pathfinder, Кубики, Длиннопост

Для чего это надо? Семь ячеек по количеству кубов (2D4 – пирамидка и кристаллик – будут в одной ячейке справа) – это семь отдельных молдов, по одному на каждый из кубов. Отполированные мастер модели я приклею к картонке таким образом, чтобы каждый кубик оказался в центре своей ячейки, а потом приклею к картонке и конструкцию из Лего. Приклеивать конструкцию из Лего нужно для того, чтобы силикон не вытек за пределы конструкции, а кубы – чтобы их не подняло силиконом вверх.

Вот так выглядят кубики:

Как я делаю свои кастомные дайсы - мастер-модель и молды Своими руками, Настольные игры, Игральные кости, Dungeons & Dragons, Рукоделие с процессом, Молды, Ручная работа, Настольные ролевые игры, Крафт, DnD 5, Pathfinder, Кубики, Длиннопост

Зачем такая аккуратность? Казалось бы, что логичнее было бы просто наклеить двусторонний скотч полосами на картонку и не париться – приклелись бы и кубики, и конструкция из Лего, но дело в том, что двусторонний скотч ингибирует с платиновым силиконом. Тогда зачем использовать именно его? По моим предыдущим рассказам кажется, что силикон на оловянной основе куда проще в деле. Да, возможно, так и есть, но платиновый силикон дольше сохраняет свою форму в неизменном состоянии, меньше страдает от смолы, и в целом формы из него получаются долговечнее. В среднем, одной формы хватает на 15-20 заливок. Иногда больше (например, формы для D6 и D4 самые живучие, видимо потому, что при извлечении кубов форма почти не растягивается и поэтому не деформируется), иногда меньше (формы для D10 и D100 живут ярко, умирают быстро).

Вот так выглядит готовая к заливке силиконом форма:

Как я делаю свои кастомные дайсы - мастер-модель и молды Своими руками, Настольные игры, Игральные кости, Dungeons & Dragons, Рукоделие с процессом, Молды, Ручная работа, Настольные ролевые игры, Крафт, DnD 5, Pathfinder, Кубики, Длиннопост

Я обязательно проверяю, чтобы все кубы были вверх одной стороной, например, каким-нибудь критом – либо наибольшим, либо наименьшим своим значением, потому что иногда это может сыграть, как, например, с морскими кубиками – Under The Sea – где песок опустился под своей тяжестью и давлением вниз и осел четко на сторонах с наибольшим значением.

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

Как я делаю свои кастомные дайсы - мастер-модель и молды Своими руками, Настольные игры, Игральные кости, Dungeons & Dragons, Рукоделие с процессом, Молды, Ручная работа, Настольные ролевые игры, Крафт, DnD 5, Pathfinder, Кубики, Длиннопост

Для первичной заливки мне понадобится где-то

200мл (100 мл одного компонента и 100 мл другого, но у разных силиконов могут быть разные пропорции). Это объем с запасом, чтобы не пришлось потом дозаливать, так как часть силикона вытечет при вакуумировании, часть затечет внутрь блоков Лего, из которых состоит сама форма, ну и еще часть просто просочится наружу, несмотря на двусторонний скотч. После того, как силикон тщательно перемешан, я заливаю его в формы и отправляю форму в вакуумную камеру на 1,5-2 минуты, чтобы из силикона вышел весь воздух.

Выходит он, кстати, довольно крипово Х)

Как я делаю свои кастомные дайсы - мастер-модель и молды Своими руками, Настольные игры, Игральные кости, Dungeons & Dragons, Рукоделие с процессом, Молды, Ручная работа, Настольные ролевые игры, Крафт, DnD 5, Pathfinder, Кубики, Длиннопост

Дальше все просто – я жду где-то около 12 часов (а лучше выждать столько, сколько написано в инструкции к силикону) и извлекаю молды из формы.

Как я делаю свои кастомные дайсы - мастер-модель и молды Своими руками, Настольные игры, Игральные кости, Dungeons & Dragons, Рукоделие с процессом, Молды, Ручная работа, Настольные ролевые игры, Крафт, DnD 5, Pathfinder, Кубики, Длиннопост

Теперь нужно немного привести их в порядок, отрезав лишнее.

Как я делаю свои кастомные дайсы - мастер-модель и молды Своими руками, Настольные игры, Игральные кости, Dungeons & Dragons, Рукоделие с процессом, Молды, Ручная работа, Настольные ролевые игры, Крафт, DnD 5, Pathfinder, Кубики, Длиннопост

Теперь гораздо лучше 🙂

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

70мл), кладу в вакуумную камеру на 1,5-2 минуты, выжидаю около 12 часов до полного засыхания. Чтобы силикон не прилип друг к другу, нужно создать разделительный слой. Для этого я заранее, на этапе запихивания молдов в Лего, щедро (но не слишком) намазываю верх молда вазелином. Я перепробовала разные разделители для силикона за разную стоимость, но этот – лучший 😀

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

Как я делаю свои кастомные дайсы - мастер-модель и молды Своими руками, Настольные игры, Игральные кости, Dungeons & Dragons, Рукоделие с процессом, Молды, Ручная работа, Настольные ролевые игры, Крафт, DnD 5, Pathfinder, Кубики, Длиннопост

Если вы прочитали, и вам понравилось, пожалуйста, поддержите меня комментарием, потому что я реально МНОГО времени потратила на эти материалы и собираюсь потратить еще столько же на следующую часть.

Читать:
Программа которая переводит в машинные коды программы

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