Simulace herních strategií v číselných loteriích s využitím agentního modelování
Autor(ka) práce:
Vodolán, Tomáš
Typ práce:
Bakalářská práce
Vedoucí práce:
Moreová, Barbara
Oponenti práce:
Zeman, Václav
Jazyk práce:
Česky
Abstrakt:
Bakalářská práce se zabývá návrhem, implementací a vyhodnocením agentního simulačního modelu číselné loterie ve formátu 6/49. Cílem práce je pomocí Monte Carlo simulace posoudit, zda různé sázkové strategie mohou dlouhodobě změnit finanční výkonnost hráčů a jaký dopad má chování hráčské populace na stabilitu provozovatele loterie. Model je implementován v jazyce Python a využívá objektově orientovaný návrh, strategický návrhový vzor, agentní reprezentaci hráčů a pseudonáhodný generátor MT19937 inicializovaný pomocí SeedSequence. Základní experiment ve variantě thesis pracuje s 1 000 Monte Carlo běhy, 52 koly v každém běhu a 100 agenty. Robustnostní deep běh používá 10 000 běhů. Výsledky potvrzují zápornou očekávanou hodnotu modelové loterie. V deep běhu dosahuje náhodná strategie průměrného ROI -81,83 %, strategie fixních čísel -82,84 %, Martingale -87,81 %, HotCold hot -82,60 % a HotCold cold -83,11 %. Nejvýraznější rozdíl se projevuje u Martingale, kde míra skutečného bankrotu hráčů dosahuje 59,24 %. Strategie HotCold hot a HotCold cold jsou v robustnostním běhu prakticky shodné, což odpovídá nezávislosti losování. V deep běhu bylo prodáno 61 936 517 tiketů. Teoreticky očekávaný počet jackpotů činil 4,43 a pozorovány byly 4 jackpoty. Tento výsledek je v souladu s kombinatorickou pravděpodobností jackpotu 1 : 13 983 816. V testovaných scénářích nebyl pozorován bankrot provozovatele. Výsledky je proto vhodné interpretovat tak, že v daném modelovém nastavení je provozovatel stabilní, ale přesné posouzení extrémního jackpotového rizika by vyžadovalo navazující stresové scénáře.
Klíčová slova:
agentní modelování; Monte Carlo simulace; číselná loterie; sázkové strategie; Martingale; gambler’s fallacy; hot-hand fallacy; Mersenne Twister; Python
Název práce:
Simulation of Playing Strategies in Number Lotteries Using Agent-Based Modeling
Autor(ka) práce:
Vodolán, Tomáš
Typ práce:
Bachelor thesis
Vedoucí práce:
Moreová, Barbara
Oponenti práce:
Zeman, Václav
Jazyk práce:
Česky
Abstrakt:
This bachelor thesis focuses on the design, implementation and evaluation of an agent-based simulation model of a 6/49 numerical lottery. The aim is to use Monte Carlo simulation to examine whether different betting strategies can change the long-term financial performance of players and how player behaviour affects the stability of the lottery operator. The model is implemented in Python and uses object-oriented design, the Strategy design pattern, an agent representation of players and the MT19937 pseudorandom number generator initialized through SeedSequence. 4 The main thesis experiment consists of 1 000 Monte Carlo runs, 52 rounds in each run and 100 agents. A robustness deep run uses 10 000 runs. The results confirm the negative expected value of the model lottery. In the deep run, the average ROI is -81.83 % for the random strategy, -82.84 % for fixed numbers, -87.81 % for Martingale, -82.60 % for HotCold hot and -83.11 % for HotCold cold. The most visible difference is found for Martingale, where the actual player bankruptcy rate reaches 59.24 %. HotCold hot and HotCold cold are practically identical in the robustness run, which is consistent with the independence of lottery draws. In the deep run, 61 936 517 tickets were sold. The expected number of jackpots was 4.43 and 4 jackpots were observed. This result is consistent with the combinatorial jackpot probability of 1 in 13 983 816. No operator bankruptcy was observed in the tested scenarios. Therefore, the results should be interpreted as evidence of operator stability under the tested model configuration, while a more precise evaluation of extreme jackpot risk would require additional stress scenarios.
Klíčová slova:
agent-based modelling; Monte Carlo simulation; numerical lottery; betting strategies; Martingale; gambler’s fallacy; hot-hand fallacy; Mersenne Twister; Python