Асновы гульнявога балансу: выпадковасць і верагоднасць розных падзей
Геймдызайнер Nival Анатоль Шэстаў апублікаваў у сваім блогу пераклад чарговай лекцыі курса «Прынцыпы гульнявога балансу» гульнёвага дызайнера Яна Шрайбера, які працаваў над такімі праектамі, як Marvel Trading Card Game і Playboy: the Mansion. Пераклад публікуецца з дазволу Шэстава.
Да сенняшняга дня амаль усё, пра што мы гаварылі, было дэтэрмінаваным, і на мінулым тыдні мы ўважліва вывучылі транзітыўную механіку, разбраўшы яе настолькі падрабязна, наколькі я магу гэта растлумачыць. Але дагэтуль мы не звярталі ўвагі на іншыя аспекты многіх гульняў, а менавіта на недэтэрмінаваныя моманты – іншымі словамі, выпадковасць.
Разуменне прыроды выпадковасці вельмі важнае для гульнёвых дызайнераў. Мы ствараем сістэмы, якія ўплываюць на карыстацкі досвед у той ці іншай гульні, таму нам трэба ведаць, як гэтыя сістэмы працуюць. Калі ў сістэме ёсць выпадковасць, трэба разумець прыроду гэтай выпадковасці і ведаць, як яе змяніць, каб атрымаць патрэбныя вынікі.
Кінанне кубікаў
Давайце пачнем з чаго-небудзь простага – з кідка ігральных костак. Калі большасць людзей думае пра ігральныя кости, яны ўяўляюць сабе шасцігранны кубік, вядомы як 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 вынік з 10000 – даволі рэдкі выпадак. Роўна гэта і спрабуе вам сказаць ігрок. Ці ёсць у гэтым выпадку праблема?
Усё залежыць ад абставінаў. Колькі гульцоў цяпер на вашым серверы? Дапусцім, у вас дастаткова папулярная гульня, і кожны дзень у яе гуляе 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, ён заўсёды прапаноўваў вам магчымасць абраць іншую дзверы. Вы выбралі легкавы аўтамабіль, а потым памяняеце яго на козу і будзеце выглядаць даволі тупа – а гэта менавіта тое, што трэба, бо Холл ў нейкай ступені злое жыццё.
Але калі вы абралі дзверы, за якой не будзе прыза, то ён прапануе вам выбраць іншую толькі ў палове выпадкаў, альбо проста пакажа вам вашага новага козла, і вы сыдзеце са сцэны. Давайце прааналізуем гэтую новую гульню, у якой Монці Холл можа вырашаць, прапаноўваць вам шанец выбраць іншую дзверы або не.
Дапусцім, ён сочыць за гэтым алгарытмам: калі вы абіраеце дзверы з прызам, ён заўсёды прапануе вам магчымасць выбраць іншую дзверы, у адваротным выпадку ён з роўнай верагоднасцю прапануе вам памяняць выбар або падарыць козла. Якая верагоднасць вашага выйгрышу?
У адным з трох выпадкаў вы адразу абіраеце дзверы, за якой знаходзіцца прыз, і вядучы прапануе вам выбраць іншую.
Застаўшыхся двух варыянтаў з трох (вы спачатку абіраеце дзверы без прыза) ў палове выпадкаў вядучы прапануе вам памяняць рашэнне, а ў другой палове – не.
Палова ад 2/3 – гэта 1/3, то бок у адным выпадку з трох вы атрымаеце козла, у адным выпадку з трох абярэце няправільную дзверы і вядучы прапануе вам выбраць іншую, і ў адным выпадку з трох вы абярэце правільную дзверы, але ён зноў жа прапануе іншую.
Калі вядучы прапануе выбраць іншую дзверы, мы ўжо ведаем, што той адзін выпадак з трох, калі ён падарыць нам козла і мы пойдзем, не адбыўся. Гэта карысная інфармацыя: яна азначае, што нашы шанцы на выйгрыш змяніліся. Два выпадкі з трох, калі ў нас ёсць магчымасць выбару: у адным выпадку гэта значыць, што мы ўгадалі правільна, а ў іншым, што мы ўгадалі няправільна, таму, калі нам увогуле прапанавалі магчымасць выбраць, значыць верагоднасць нашага выйгрышу роўная 1/2, і з пункту гледжання матэматыкі неважна, заставацца пры сваім выбары або абіраць іншую дзверы.
Як і ў покеры, гэта псіхалагічная гульня, а не матэматычная. Чаму Монці прапануе вам выбар? Ён думае, што вы простак, які не ведае, што выбраць іншую дзверы – «правільнае» рашэнне і будзе ўпарта трымацца свайго выбару (бо псіхалагічна складаней сітуацыя, калі вы абралі аўтамабіль, а потым яго страцілі)?
Ці ён, вырашыўшы, што вы разумны і абярыце іншую дзверы, прапаноўвае вам гэты шанец, бо ведае, што вы спачатку ўгадалі правільна і трапіцеся на кручок? А можа, ён нехарактэрна для сябе добры і падштурхоўвае вас зрабіць нешта, выгоднае для вас, бо ён даўно не аддаваў аўтамабіляў і прадзюсары кажуць, што гледачам становіцца сумна, і лепш бы ў хуткім часе аддаць вялікі прыз, каб рэйтынгі не ўпалі?
Такім чынам, Монці ўдаецца часам прапаноўваць выбар, і пры гэтым агульная верагоднасць выйгрышу застаецца роўнай 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 магчымасцяў, па адной для кожнага дня тыдня, калі мог нарадзіцца хлопчык).
- B – дзяўчынка, якая нарадзілася ў аўторак, A – хлопчык (таксама 7 магчымасцяў).
- A – дзяўчынка, якая нарадзілася ў аўторак, B – дзяўчынка, якая нарадзілася ў іншы дзень тыдня (6 магчымасцяў).
- B – дзяўчынка, якая нарадзілася ў аўторак, A – дзяўчынка, якая нарадзілася не ў аўторак (таксама 6 магчымасцяў).
- A і B – дзве дзяўчынкі, якія нарадзіліся ў аўторак (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 – Кідок на шчасце
Гэта азартная гульня ў кості, якая называецца «Кідок на шчасце» (таксама «Клетка для птушак», бо часам кости не кідаюць, а змяшчаюць у вялікую дротавую клетку, падобную на клетку з «Bingo»). Гульня простая, сутнасць прыкладна такая: пастаўце, скажам, 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()<0.1,5,0).
Існуе шмат спосабаў задаць гэтую каманду, але я б выкарыстаў такую формулу для ячэйкі, якая прадстаўляе першы раўнд, скажам, гэта ячэйка A1: =IF(RAND()<0.1,0,-1). Тут я выкарыстоўваю негатыўную пераменную ў значэнні «гэтая карта не пакінула гульню і пакуль не аддала ніякіх рэсурсаў». Так што, калі першы раўнд завершаны і карта пакінула гульню, A1 – гэта 0; у адваротным выпадку гэта -1. Для наступнай ячэйкі, якая прадстаўляе другі раўнд: =IF(A1>-1, A1, IF(RAND()<0.1,5,-1)). Так што, калі першы раўнд завершаны і карта адразу пакінула гульню, A1 – гэта 0 (колькасць рэсурсаў), і гэтая ячэйка проста скапіруе гэта значэнне. У процілеглым выпадку A1 – гэта -1 (карта яшчэ не пакінула гульню), і гэтая ячэйка працягвае выпадковае руханне: 10% часу яна будзе вяртаць 5 адзінак рэсурсу, у астатні час яе значэнне будзе па-ранейшаму роўнае -1. Калі прымяняць гэтую формулу да дадатковых ячэек, якія прадстаўляюць наступныя раўнды, мы атрымаем дадатковыя раўнды, і якая б ячэйка ні выйшла ў канцы, вы атрымаеце канчатковы вынік (або -1, калі карта так і не пакінула гульню пасля ўсіх разыграных вамі раўндаў).
Узяйце гэты шэраг ячэек, які прадстаўляе адзін раўнд з гэтай картай, і скапіруйце і ўстаўце некалькі сотняў (ці тысяч) радкоў. Магчыма, нам і не ўдасца зрабіць бясконцы тэст у Excel (існуе абмежаванае колькасць ячэек у табліцы), але прынамсі мы можам разгледзець большасць выпадкаў. Затым выдзеліце адну ячэйку, у якой вы памесціце сярэдняе значэнне вынікаў ўсіх раўндаў – Excel любязна прапануе для гэтага функцыю average().
У Windows вы хаця б можаце націснуць F9 для пераліку ўсіх выпадковых лікаў. Як і раней, зрабіце гэта некалькі разоў і паглядзіце, ці атрымліваеце вы аднолькавыя значэнні. Калі разбежка занадта вялікая, падвойце колькасць прабегаў і паспрабуйце зноў.
Невырашаныя задачы
Калі вы выпадкова маеце навуковую ступень у галіне тэорыі верагоднасцяў і прыведзеныя задачы здаюцца вам занадта лёгкімі – вось дзве задачы, над якімі я ламаю галаву гады, але, нажаль, я не настолькі добры ў матэматыцы, каб іх вырашыць.
Невырашаная задача №1: Латарэя IMF
Першая невырашаная задача – папярэдняе дамашняе заданне. Я лёгка магу прымяніць метад Монці-Карла (з дапамогай C++ або Excel) і буду ўпэўнены ў адказе на пытанне «колькі рэсурсаў атрымае гулец», але я не ведаю дакладна, як даць дакладны даказальны адказ матэматычна (гэта ж бясконцая серыя).
Невырашаная задача №2: Паслядоўнасці фігур
Гэтую задачу (яна таксама выходзіць далёка за межы задач, якія рашаюцца ў гэтым блогу) мне падкінуў адзін знаёмы геймер больш за дзесяць гадоў таму. Падчас гульні ў блэкджэк у Вегасе ён заўважыў адну цікавасць: вымаючы карты з шыны на 8 калод, ён бачыў дзесяць фігур запар (фігура або фігурная карта – 10, Вале, Кароль або Каралева, так што ўсяго іх 16 у стандартнай калодзе на 52 карты або 128 у шыны на 416 карт).
Якая верагоднасць таго, што ў гэтай шыны па меншай меры адна паслядоўнасць дзесяці або больш фігур? Дапусцім, што іх тасавалі сумленна, у выпадковым парадку. Ці, калі вам больш падабаецца, якая верагоднасць таго, што нідзе не сустракаецца паслядоўнасць з дзесяці або больш фігур?
Можам спрасціць задачу. Вось паслядоўнасць з 416 частак. Кожная частка – 0 або 1. Ёсць 128 адзінак і 288 нулёў, выпадкова размешчаных па ўсёй паслядоўнасці. Колькі існуе спосабаў выпадкова перамяшаць 128 адзінак паміж 288 нулямі і колькі разоў у гэтых спосабах сустрэнецца як мінімум адна група з дзесяці або больш адзінак?
Кожны раз, як толькі я прымаўся за вырашэнне гэтай задачы, яна здавалася мне лёгкай і відавочнай, але стаіла паглыбіцца ў дэталі, як яна раптам развальвалася на часткі і ўяўлялася проста немагчымай.
Так што не спяшайцеся выплюхваць адказ: сядзьце, добра падумайце, вывучыце ўмовы, паспрабуйце падставіць рэальныя лікі, бо ўсе людзі, з якімі я казаў пра гэтую задачу (у тым ліку некалькі аспірантаў, якія працуюць у гэтай сферы), рэагавалі прыкладна аднолькава: «Гэта ж цалкам відавочна… о, не, пачакай, зусім не відавочна». Гэта той выпадак, калі ў мяне няма метаду для пралічэння ўсіх магчымасцяў. Я, безумоўна, мог бы пракруціць задачу метадам грубай сілы праз кампутарны алгарытм, але значна цікавей было б знайсці матэматычны спосаб рашэння.
Усяго артыкулаў: 1164
Новыя артыкулы ў казіно блогу
Новыя пытанні і адказы
Інфармацыя аб публікацыі
| Параметры | Размешчана на нашым сайце |
|---|---|
| Дата дадання | 7 лютага 2016 г. у 18:50 |
| Апошняя рэдакцыя | 29 красавіка 2026 г. у 07:46 |
| Праглядаў | 1149 |
Аўтар артыкула
| Параметры | Артыкул Асновы гульнявога балансу: выпадковасць і верагоднасць розных падзей падрыхтаваны і апублікаваны |
|---|---|
| Апублікавана |
|
| Аўтар артыкула |
|