časť 07
Prečo v duele začínajúci hráč vyhráva 93 % hier
Pri dvoch rovnako silných hráčoch (AI) vyhrá ten, kto začína, v 93 % partií. Ako sme na to prišli, čo sme skúšali opraviť a prečo rozhodlo losovanie.
Predstav si hru, v ktorej sa dvaja rovnako silní hráči postavia k rovnakej mape. Nikto nepodvádza, kocky sú férové, pravidlá pre oboch rovnaké. Jediný rozdiel: jeden je na ťahu prvý. A tento jediný rozdiel rozhodne 93 partií zo 100.
Presne takto vyzerajú Kniežatstvá[1] v Audamire pre dvoch rovnako silných AI súperov. O poradí v pôvodnej hre sa nenašiel žiadny spoľahlivý údaj, takže ide o meranie tejto hry. Číslo je nečakané a na prvý pohľad sa mu ani nechce veriť. Preto sa oplatí povedať, ako sme naň prišli, a ešte viac, čo sme s ním urobili.
Podozrenie, ktoré sa nedá vyvrátiť pocitom
Pri hre s kockami sa dá všetko zvaliť na šťastie. Kocky padli zle. Súperovi padajú stále dobre. Pocit nie je argument, a keď sa hra robí tak, aby sa dala vyvážiť, treba merať.
Pravidlá, ktoré budeme merať, sú jednoduché a pochádzajú z pôvodnej hry:
- Každé políčko drží stoh kociek (najviac 8).
- Útočník aj obranca hodia všetkými kockami na svojom stohu. Vyšší súčet vyhráva, pri remíze vyhráva obranca.
- Po víťazstve sa na dobyté políčko presunú všetky kocky okrem jednej. Po prehre ostane útočníkovi jediná.
- Na konci ťahu dostane hráč nové kocky podľa veľkosti svojej najväčšej súvislej oblasti a rozdelia sa náhodne medzi jeho políčka.
Posledné pravidlo je skryté jadro hry. Kto dobýja, rastie. Kto rastie, dostáva viac kociek. Kto dostáva viac kociek, dobýja ďalej. Takáto spätná väzba sa v hrách volá snowball, snehová guľa.
Meranie: rovnakí hráči, rôzne poradie
Aby sa dal rozlíšiť vplyv zručnosti od vplyvu poradia, treba hráčov vyrovnať. V nástroji tools/fairness.js hrajú všetci rovnako silní AI súperi (úroveň 2, „priemerný hráč“). Nástroj počíta dve veci: podiel výhier podľa čísla sedadla a podiel výhier toho, kto v danej partii začínal. Meranie trvá necelé tri sekundy. Výsledok dnes (20. 10. 2026), stredná mapa, tvar políčka „Náhodné tvary“, 400 partií na meranie:
Pri dvoch hráčoch začínajúci vyhráva 93,3 %, pri troch 61,3 %, pri štyroch 41,8 % (spravodlivý podiel je 25 %). Pri ôsmich hráčoch už 15,8 % a rozdiel od spravodlivých 12,5 % sa v šume stráca. Priemerná partia pri dvoch hráčoch trvá 8 kôl, pri ôsmich takmer 20.
Prečo to tak je
Toto je moje vysvetlenie, nie meranie. Prvý hráč zaútočí na mape, na ktorej nikto nestihol prideliť posily. Každé políčko, ktoré dobyje, zväčší jeho najväčšiu oblasť, takže na konci ťahu dostane viac kociek. Druhý hráč začína s menším majetkom a menším prírastkom. Pri dvoch hráčoch sa spätná väzba neprerušuje, lebo nie je tretí, ktorý by sa postavil víťazovi do cesty. Pri ôsmich hráčoch sa prvý hráč okamžite stretne s ďalšími siedmimi, takže výhoda sa rozplynie.
Čo sme skúšali opraviť
Prvá myšlienka je tá najstaršia: vyrovnať to. V šachu hrá biely prvý a jeho skóre (remíza za pol bodu) je v štatistikách okolo 52 až 56 %. V Go dostáva biely za druhý ťah body navyše, takzvané komi, a jeho hodnota sa v histórii upravovala: podľa japonských pravidiel stúpla z 5,5 na 6,5 bodu v roku 2002, dnes je to 6,5 alebo 7,5 podľa pravidiel. Skúsili sme to aj tu: druhému hráčovi sme pridali štartovacie kocky.
| Kocky navyše pre druhého hráča | Výhra prvého hráča |
|---|---|
| žiadne | približne 95 % |
| +25 % | približne 56 % |
| +50 % | približne 9 % |
Tri riadky, jeden problém. Oprava, ktorá z 95 % urobí 56 %, o ďalších 25 % kociek zmení výsledok na 9 %. Dvojhráčová partia je citlivá ako ostrie noža. Kompenzácia, ktorá by fungovala pre všetky mapy a všetky úrovne hráčov, by bola krehká a hráč by ju navyše cítil ako nespravodlivosť v opačnom smere.
Čo sme urobili namiesto toho
V Kniežatstvách začína náhodný hráč. Výhoda prvého ťahu tým nezmizne, len sa spravodlivo rozdelí: každé sedadlo vyhráva zhruba svoj podiel. Pri štyroch hráčoch to vychádza 24,8 / 22,8 / 28,0 / 24,5 %. A keď si hráč vyberie hru pre dvoch, hra mu to povie otvorene: duel rozhoduje najmä to, kto začína.
To posledné je zámer. Radšej priznať obmedzenie, než ho skrývať za zložité kompenzácie.
Zručnosť sa prejaví tam, kde je dosť rozhodnutí
S náhodným štartom sa dá merať aj niečo, čo hráča zaujíma viac: ako veľmi záleží na tom, ako hrá. Namiesto hráča hrá úroveň 2 (priemerná) a úroveň 3 (dobrá) proti protivníkom z AI:
| Počet hráčov | 2 | 3 | 4 | 5 | 6 | 8 |
|---|---|---|---|---|---|---|
| spravodlivý podiel | 50 % | 33 % | 25 % | 20 % | 17 % | 13 % |
| priemerný hráč | 52 % | 34 % | 26 % | 20 % | 14 % | 14 % |
| dobrý hráč | 55 % | 56 % | 51 % | 51 % | 47 % | 47 % |
Priemerný hráč vyhráva zhruba spravodlivý podiel. Pri väčšom počte hráčov vyhráva dobrý hráč zhruba dvakrát až štyrikrát viac než spravodlivý podiel. Pri dvoch hráčoch sa však zručnosť skoro nerozlíši (52 % oproti 55 %), lebo duel rozhodne poradie. Čím viac hráčov, tým viac rozhodnutí, a tým viac priestoru, v ktorom sa dá hrať lepšie.
(Tabuľka je z merania 18. 10.: 800 partií na každý údaj tabuľky, chyba okolo ±3 percentuálnych bodov, tvar políčka „Náhodné tvary“.)
Tri úrovne umelej inteligencie a pokus, ktorý nevyšiel
Protivníci majú tri úrovne sily: Slabá útočí aj pri zlých šanciach a vyberá takmer náhodne, Normálna útočí pri priaznivých šanciach a snaží sa spájať územia, Silná navyše počíta s odvetou, teda s rizikom pre zdrojové aj dobyté políčko. Sila sa nenastavovala od oka, merala sa turnajom:
- Silná porazí Normálnu v 71,5 % partií jeden na jedného (800 partií dnes; v dokumentácii 73 %).
- V turnaji všetkých troch úrovní naraz vyhráva Slabá 5,8 %, Normálna 31,3 % a Silná 62,8 %.
Štvrtá úroveň, „expert“, nevznikla. Skúšali sme automaticky ladené váhy aj simulácie Monte Carlo, ktoré dohrávajú zvyšok ťahu aj s odvetou súpera. Silnú úroveň nepredbehli. Namerali sme okolo 50 %, teda nič. Hra je z veľkej časti o šťastí a posily sa rozdeľujú náhodne, takže dodatočná „múdrosť“ nemá do čoho zasiahnuť.
Rozhodnutie: takáto úroveň nebude. Keď sa rozdiel nedá zmerať, nemáš čo ponúknuť ani čo opraviť. Je to jedno z najužitočnejších pravidiel, ktoré práca s meraním priniesla.
Čo si z toho odnášam
- Podozrenie je lacné, meranie je ešte lacnejšie. Štyristo partií trvá necelé tri sekundy a argument o šťastí sa skončí.
- Citlivú vec neopravuj počtom navyše. Ak malá zmena obráti výsledok, nie je to nastaviteľné číslo, je to páka. Páku nahraď losovaním.
- Povedz hráčovi pravdu o hre. Dvojhráčový duel s jasnou výhodou prvého ťahu je v poriadku, ak to hráč vie.
- Vedz, kedy prestať. Pokus o „experta“ sa dal ukončiť jedným číslom okolo 50 %.
V ďalšom článku sa pozrieme na to, ako z tohto merania vznikol celý systém: obtiažnosť každého nastavenia hry sa dnes vyjadruje v bodoch a body vznikajú simuláciou.
Zdroje a poznámky
- Merania:
node tools/fairness.js --classic N --games 400,node tools/tournament.js 400 2,3anode tools/tournament.js 300 1,2,3, spustené 20. 10. 2026 (Node, 16 vlákien). - Rozhodnutia a tabuľka zručnosti:
docs/DESIGN.md§3 a §19, postup meraniadocs/TUNING.md§7 a §8. - Šach: skóre bieleho okolo 52 až 56 % (remíza za pol bodu) podľa prehľadu First-move advantage in chess; čisté výhry bieleho sú nižšie, okolo 35 až 40 %, a v elitných partiách pribúda remíz. Go: komi 6,5 (japonské a kórejské pravidlá) a 7,5 (čínske a americké), v Japonsku z 5,5 na 6,5 v septembri 2002, podľa Komi (Go).
Poznámky
- Do verzie 0.65.6 z 31. októbra 2026 sa volal Klasik. ↩︎