Pham Hoang Minh prof. dr hab. Jacek Mańdziuk
-
Upload
rose-salas -
Category
Documents
-
view
46 -
download
0
description
Transcript of Pham Hoang Minh prof. dr hab. Jacek Mańdziuk
![Page 1: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/1.jpg)
11
Metody Sztucznej Inteligencji do budowania mocnego gracza w
Pokerze: teoria, zastosowanie i wyniki
Pham Hoang Minhprof. dr hab. Jacek Mańdziuk
![Page 2: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/2.jpg)
22
Odmiana Pokera „Texas Holdem”
• Cztery fazy rozgrywki:• Pre-flop• Flop• Turn • River
![Page 3: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/3.jpg)
33
Wprowadzenie
• Wieloosobowa rywalizacja
• Gra o niepełnej informacji (prywatne karty)
• Stochatyczna gra (losowe rozdanie kart)
• Probabilistyczne wnioskowanie
• Ocena ryzyka
• Analiza gry przeciwników
• Blefowanie
![Page 4: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/4.jpg)
44
Aktualny stan systemów AI
• Poki (Univ. Alberta) : intermediate level for full-ring (10 players) limit Texas Hold’em
• Hyperborean (Univ. Alberta) : advanced level for heads-up (2-players) limit Texas Hold’em (hold 7000 hands against world-class opponents)
First place in AAAI Computer Poker Competition • BluffBot (Teppo Salonen ) : advanced level in heads-up
limit Texas Hold ’Em. Second place in AAAI • GS2 (Univ. Pittsburgh) : Third place in AAAI • Monash BPP (Univ. Monash) : Fourth place in AAAI
![Page 5: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/5.jpg)
55
Umiejętności niezbędne mocnego gracza w Pokerze
• Cechy które mocny gracz musi posiadać :
– Hand Evaluation : ocena siły swojej ręki
– Unpredictability
– Bluffing
– Opponent Modeling
![Page 6: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/6.jpg)
66
Betting Strategy
• Betting Strategy dzieli się na:
– „Pre-flop”
– „Post-flop”
• Fazy te znacząco się od siebie różnią:
– Pre-flop : 2 „hole cards”, wcześniejsze akcje graczy podczas 1-szej licytacji
– Post-flop : pełniejszy kontekst gry, „2 hole cards” i „community cards”, historię wcześniejszych decyzji licytacji przeciwników
![Page 7: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/7.jpg)
77
Betting Strategies w „Pre-flop”
• Wiedza eksperska:
– Sklansky’s rankings (Rangi Sklanskiego)
– Hutchison system (System Hutchisona)
• Symulacje:
– Pre-flop simulation• Te metody służą do wyliczenie wartości ręki
(2 hole cards) podczas fazy „Pre-flop”
![Page 8: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/8.jpg)
88
Wiedza eksperska
• Sklansky’s ranking
• Hutchison system
• Przypisanie każdej ręki pewnej ilości punktów wg. ustalonych reguł przez profesjonalistów gry Poker, na podstawie których podejmiemy decyzję licytacji
![Page 9: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/9.jpg)
99
Sklansky Ranking (full-ring Holdem)
![Page 10: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/10.jpg)
1010
Pre-flop simulation
1. Polega na obliczenie kilka milionów partii, gdzie wszystcy gracze wybierają „call” podczas pierwszej licytacji (Big blind)
2. Po czym pozostałe karty zostają rozdane bez jakikolwiek dalszych zakładów
– Nierealistyczna sytuacja
– Jednak daje podstawowe przybliżoną ocenę ręki w fazie Pre-flop
![Page 11: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/11.jpg)
1111
Wyniki Pre-flop simulation (HPoker)
![Page 12: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/12.jpg)
1212
Betting Strategies w „Post-flop”
• Fix Expert Betting Strategy
• Simulation-Based Betting Strategy
• Game Tree-Based Betting Strategy
![Page 13: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/13.jpg)
1313
Ważne pojęcia w „Post-flop”
• Crude Player Strength• Bias Matrix• Bias Player Strength • Multi-player Considerations• Player Potential• Pot Odds• Effective Player Strength• Probability Triples• Noise-Factors• Bluffing
![Page 14: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/14.jpg)
1414
Crude Player Strength
• Prawdopodobieństwo, że dana ręka jest lepsza od ręki aktywnych oponentów
• Zakładamy, że przeciwnik posiada C(2,n) możliwych dwóch kart właśnych z tym samym prawdopodobieństwem
Gdzie :
C - kombinacja
n - liczba nierozdanych kart
![Page 15: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/15.jpg)
1515
Crude Player Strength
• Lepsza ręka : +1pkt
• Remis : +1/2 pkt
• Gorsza ręka : +0 pkt
• Siła ręki = suma pkt/ilość możliwych rąk
• Np. dla pewnej ręki CPS wynosi 58%, tzn. ona ma 58% więcej szansy niż losowa ręka
• Lepsza metoda obliczenia siły ręki używa Bias Matrix
![Page 16: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/16.jpg)
1616
Crude Player Strength (pseudo-kod)
![Page 17: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/17.jpg)
1717
Bias Matrix
• Zakładaliśmy podczas obliczanie „Crude Player Strength”, że wszystkie kombinacje 2 „hole cards” są tak samo prawdopodobne (dodaliśmy po 1)
• W prawdziwej grze się znacznie od siebie różnią• Aby to uwzględnić używamy „Bias Matrix” (Tablicę
Wag) do uwzględnienie prawdopodobieństwa tych kombinacji
• Każdy przeciwnik posiada właśny „Bias Matrix” w każdej partii
![Page 18: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/18.jpg)
1818
Bias Matrix po call, raise na początku fazy Flop (HPoker)
![Page 19: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/19.jpg)
1919
Bias Matrix (pseudo-kod)
![Page 20: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/20.jpg)
2020
Bias Player Strength (pseudo-kod)
![Page 21: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/21.jpg)
2121
Multi-player Considerations
• Uwzględnienie wielu graczy dla Player StrengthPS(n) = PS(p1) * PS(p2) * ... * PS(pn)
p1,p2,...,pn - przeciwnicy
• Nie jest to dokładna wartość, ponieważ PS przeciwników nie są niezależne, np. Bias Matrix tego nie uwzględnia
![Page 22: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/22.jpg)
2222
Multi-player Considerations (HPoker)
![Page 23: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/23.jpg)
2323
Player Potential
• Po „Flop” jeszcze następują fazy „turn” i „river”
• 2 nieukazane karty mogą znacznie zmienić siłę naszej ręki
• Player Potential dzieli się na:
– Positive Potential (PPot) – Negative Potential (NPot)
![Page 24: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/24.jpg)
2424
Player Potential
• PPot : prawdopodobieństwo, że nasza aktualna, nie najlepsza ręka się polepszy i wygramy partię.
PPot = P(ahead|behind) + P(tied|behind)/2 + P(ahead|tied)/2
• NPot : prawdopodobieństwo, że nasza aktualna, najmocniejsza ręka przy stole się pogorszy i przegramy partię.NPot = P(behind|ahead) + P(behind|tied)/2 + P(tied|ahead)/2
![Page 25: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/25.jpg)
2525
Player Potential (pseudo-kod)
HandPotential(ourCards, boardCards)
{
ourRank = obliczenie_siły_naszej_ręki
foreach oppCards in allCases
{
// Obliczenie wszyskich przypadków wystąpienia kart w turn i river
foreach case in turn
foreach case in river
obliczenie_indeksów_dla_różnych_sytuacjach
}
obliczenie PPot i NPot na postawie wyliczonych indeksów
return(PPot, NPot);
}
![Page 26: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/26.jpg)
2626
Pot Odds
• Stosunek rozmiaru „pot_size” (sumy zakładu na stole) do minimalnej kwoty naszej licytacji
• Mówi nam, czy z naszą aktualną ręką warto grać dalej (opłacalność inwestycji)
Immediate_pod_odds = amount_to_call / (pot_size + amount_to_call)
![Page 27: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/27.jpg)
2727
Pot Odds (przykład)Immediate_pod_odds = 10zł / (50zł + 10zł) 0.167
• Jeżeli postanowimy „call” w sytuacji, gdy mamy więcej niż 16.7% na osiągnięcie wygrywającej ręki, to oczekiwana opłacalność jest pozytywna
• W przypadku gdy mamy 15% szansy wygranej, wówczas nie opłaca się „call”
Wartość oczekiwana inwestycji = (50zł*0.15) – (10zł*0.85) = -1zł
![Page 28: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/28.jpg)
2828
Effective Player Strength
• EPS łączy w sobie siły i potencjał ręki. Daje względną miarę siły naszej ręki w porównaniu z rękami przeciwnikówEPS = P(ahead)*P(opponent do not improve) + P(behind)*P(we improve) EPS = PS*(1-NPot) + (1-PS)*PPot
• PPot ważniejszy od NPot EPS = PS + (1-PS)*PPot (dla NPot = 0)
• Uwzględnienie wielu graczyEPS(i) = PS(i) + (1-PS(i))*PPot(i)
![Page 29: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/29.jpg)
2929
Effective Player Strength
• W HPoker uzywany jest 3 rodzaje EPS:
– biasEPS (używa Bias Player Strength)– uniEPS (używa Uniform Player Strength)– uniRandEPS (używa Uniform Player Strength
przeciw jednego losowego gracza)
![Page 30: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/30.jpg)
3030
Probability Triples
• Uporządkowana trójka wartości:PT = {fall,call,raise}, gdzie fall + call + raise = 1
• Reprezentuje dystrybucję prawdopodobieństwa ze następna akcja licytacji w zadanym kontekscie gry będzie odpowiednio:
„fold”, „call”, „raise”
![Page 31: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/31.jpg)
3131
Użycie Probability Triples
1. Fix Expert Betting Strategy używa Probabilty Triples do wyboru akcji (fold, call, raise)
2. Opponent Modelling używa Probabilty Triples do modyfikacji „Bias Table”
3. Simulation-Based Betting Strategy używa Probabilty Triples do wyboru akcji dla zasymulowanego przeciwnika
4. Game Tree-Based Betting Strategy używa Probabilty Triples do wyboru akcji dla zasymulowanego przeciwnika
![Page 32: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/32.jpg)
3232
Noise-Factors• Wartość z przedziału [0,1]
• Reprezentuje niepewność naszej wiedzy, jak akcja wykonana przez przeciwnika odwierciedla posiadanych przez niego kart
• Modyfikuje „Probability Triples”
(dystrybucja {Pr(fold), Pr(call), Pr(raise)}) używana w „Bias Matrix”.
• Każde zdarzenie a w dystrybucji jest zmienionea = a – a*b + b/|D|
gdzie: b - noise-factor, D – probability distribution, |D| = 3
![Page 33: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/33.jpg)
3333
Noise-Factors (przykład)
• Probability Triples {0.0, 0.2, 0.8}noise-factor = 0.5
Obliczenie:Pr(fold) = 0 – 0*0.5 + 0.5/3 = 1/6 = 0.167
Pr(call) = 0.2 – 0.2*0.5 + 1/6 = 0.267
Pr(raise) = 0.8 – 0.8*0.5 + 1/6 = 0.567
• Po uwzględnieniu noice-factor
Probability Triples {0.167, 0.267, 0.567}
![Page 34: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/34.jpg)
3434
Bluffing
• Umożliwia wygranie partii z słabą ręką
• Powoduje niepokój przeciwników
• Każdy gracz moze mieć stałą wartość blefu, lub zmienny w czasie (w zalezności od stanu gry)
• System może tworzyć teoretycznie optymalną częstość blefowania w poszczególnych sytuacjach
![Page 35: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/35.jpg)
3535
Pozostałe atrybuty licytacji
• Względna pozycja licytacji
• Historia licytacji aktualnej partii
• Kieszeń przeciwnika
• ...
![Page 36: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/36.jpg)
3636
Fix Expert Betting Strategy
• Sztwna formuła stworzona dzięki wiedzy eksperskiej i ekperymentalnie
• Daje odpowiedz na rozsądną licytację
• Używamy następujących kroków:
1) Obliczenie „Effective Player Strength” (EPS)
2) Zamiana EPS w Probability Triples
{Pr(fold), Pr(call), Pr(raise)} (ekperymentalnie)
3) Generowanie losowej liczby [0,1] i użycie jej do wyboru jednej z akcji z dystrybucji
![Page 37: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/37.jpg)
3737
Fix Expert Betting Strategy
4) W zalezności od stanu gry (bet ratio, stakes, ...)
modyfikujemy współczynnik blefu
5) Użycie współczynnika blefu do zmiany decyzji
6) Użycie współczynnika inPot do zmiany decyzji
7) Wykonujemy akcję ‘raise’ jeżeli
pot_odds < Player Strength
8) W wersji No limit : kwota zakładu jest zalezna od Player Strength
![Page 38: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/38.jpg)
3838
Simulation-Based Betting Strategy
• Próba zastosowania algorytmu podobnego do MiniMax w dziedzinie gry Poker
• Selective Sampling wybiera do symulacji najbardziej prawdopodobne przypadki występowania kart (przeciwników), np. używając „Bias Matrix”
• Przeprowadzimy symulacje do końca i zbieramy wyniki każdy z tych prób
![Page 39: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/39.jpg)
3939
Simulation-Based Betting Strategy
• Z odpowiednio dużą liczbę prób, symulacji daje wartość oczekiwaną akcji
• Dla każdej próby, ręka jest zasymulowana 2 razy:
– call (check)
– raise (bet)
• Nie używamy pełnych przeszukiwań
• Używamy rzadkich, lecz głębokich symulacji wielokrotnie aż do liści
![Page 40: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/40.jpg)
4040
Różnica między klasycznym drzewem gry a symulacją
![Page 41: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/41.jpg)
4141
Simulation (pseudo-kod)
Simulation()
{
trials = callEV = raiseEV = 0;
while (trials < MAX_TRIALS)
{
przydzielKarty();
callEV += simulate(call);
raiseEV += simulate(raise);
trials++;
}
callEV = callEV / trials;
raiseEV = raiseEV / trials;
return(callEV, raiseEV);
}
![Page 42: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/42.jpg)
4242
Simulation-Based Betting Strategy
• Dla każdej decyzji używamy 200-300 symulacji, ze względu na ograniczenie czasowe gry
• Po kilkuset symulacji średnia ilość zwycięstw lub przegranych po akcji „call”, „raise” zbiega sie do
oczekiwanych wartości akcji (Expected Value EV)
• EV dla „fold” może być obliczony bez symulacji, ponieważ nie wpływa na przyszłych zysków czy strat
![Page 43: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/43.jpg)
4343
Zalety i Wady Simulation-Based Betting Strategy
• W przeciwieństwie do Fix Expert Betting Strategy, nie jest on sztywną strategią
• Może drastycznie się zmienić w zalezności od „opponent models”
• Dostosowuje się do różnych oponentów
• Silna relacja jakości symulacji do funkcji oceny akcji przeciwników (Opponent Modeling)
• Taktyka przeciwnika (bluffing, slowplaying, check-raising) jest odkryta podczas symulacji
![Page 44: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/44.jpg)
4444
Game Tree-Based Betting Strategy
• ExpectiMax to bezpośrednia próba używania MiniMax w Pokerze.
• Zamiast wybrania najlepszej akcji w każdym kroku, akcję wykonuje Opponent Model przeciwnika
• Otrzymujemy teraz najlepszą strategię do gry przeciwko konkretnemu przeciwnikowi
• Aktualnie użyty w wersji Texas Hold’em heads-up (2-players) w systemie Hyperborean (PsOpti) uniwerstytetu Alberta
![Page 45: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/45.jpg)
4545
Game Tree-Based Betting Strategy
![Page 46: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/46.jpg)
4646
Opponent Modeling
• Nie istnieje system gry Pokera bez dobrego modelowania przeciwników (Opponent Modeling)
• Każdy silny gracz Pokera musi zmieniac swój sposób gry, dostosowując się do sposobu gry przeciwników
• Niektórzy przeciwnicy mogą często blefować, a niektórzy rzadko
![Page 47: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/47.jpg)
4747
Opponent Modeling
• Używa się Opponent Modeling do przynajmniej 2 celów : – wnioskowanie siły ręki przeciwnika, bazując
się na jego wcześniejszych akcji– przewidywanie jego akcji w konkretnych
sytuacjach • Główny cel „Opponent Modeling” to zgadnięcie
akcji przeciwników (Predictor)• Praca Predictor’a to zamiana konkretnego stanu
gry na dystrybuanty prawdopodobieństwa akcji(Probability Triples)
![Page 48: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/48.jpg)
4848
Predictor models
• Expert Systems
• Neural Networks
– Backpropagation– Radial– Probabilistic– Generalized Regression
• Decision Trees
• Linear Discriminant Analysis
• Quadratic Discriminant Analysis
• Mixed Model
![Page 49: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/49.jpg)
4949
Expert Systems
• Używamy sztywnych reguł jako do przewidywania akcji przeciwnika (np. uzywając Fix Expert Betting Strategy)
• Zakładamy, ze gracz bedzie się grał w rozsądny sposób w poszczególnych sytuacjach (generic opponent modeling)
• Nie jest to skuteczna metoda, ale daje przyzwoity punkt odniesienia dla innych metod modelowania oponentów
• Bardzo użyteczna metoda, gdy gramy z przeciwnikiem po raz pierwszy
![Page 50: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/50.jpg)
5050
Inputs data for Predictors
![Page 51: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/51.jpg)
5151
Neural Networks
• Bardziej ogólny system do modelowania przeciwników
• Posiada dużą zdolność do uogólniania informacji, odporność na szum
• Bardzo dobre wyniki kiedy parametry danych wejściowych są zależne od siebie nieliniowo
• Używamy np. prosta sieć jednokierunkowa (feed-forward) z algorytmem uczącym backpropagation
![Page 52: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/52.jpg)
5252
Backpropagation Neural Networks
![Page 53: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/53.jpg)
5353
Decision Trees
• Mniejsza odporność na szum oraz nieliniowo zależnych parametrów danych wejściowych
• Reprezentacja prosta do zrozumienia dla człowieka, łatwo można określić jaką wiedzę zostało nauczone drzewo
• Osiągnął jeden z najlepszych wyników podczas eksperymentu z Opponent Models dla HPoker w wersji Limit i Unlimit
![Page 54: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/54.jpg)
5454
Decision Trees (przykład)
![Page 55: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/55.jpg)
5555
Linear & Quadratic Discriminant Analysis
• Metody używają Modelu Liniowego do klasyfikacji
• Niezbyt dobrze sobie radzą jeżeli dane wejściowe są zależne nieliniowo
• Podczas eksperymentu z Opponent Models dla HPoker osiągają dosyć słabe wyniki w porównaniu z innymi modelami
![Page 56: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/56.jpg)
5656
Mixed Model
• Możemy mieć dylemat, którego z „predictors” używać
• Eleganckie rozwiązanie jest użycie tych wszystkich metod, poprzez głosowanie
• Wybieramy akcję którą wybrało najwięcej Predictors
![Page 57: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/57.jpg)
5757
Opponent Modeling podsumowanie
• Kluczowe do tworzenia mocnego gracza w Pokerze
• Opponent Modeling w Pokerze posiada największą liczbę problemów podczas uczenia systemu:
– uncertainty
– noise (missing information)
– szybka nauka i uogólnianie za pomocą małej liczby przykładów treningowych, często z niepełnymi informacjami
– Ograniczenia związane z naturą gry czasu rzeczywistego. Np. 2,3 s na podjęcie decyzji
![Page 58: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/58.jpg)
5858
Eksperymenty HPoker v.06
• Aktualne eksperymenty przeprowadziłem dla dwóch trybów gry :
– Limit 10$/20$ blinds, 1000$ initial stake
– No limit 50$/100$ blinds, 10000$ initial stake
• Gracza AIs używali różne formuły Fix Expert Betting Strategy (wspomagane przez Predictors) :
– EPS : biasEPS, uniEPS, uniRandEPS, mixEPS,
– PS : loose, tight, rational, mix
• Gracza AIs z Simulation-Based Betting Strategy jeszcze w fazie implementacji
![Page 59: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/59.jpg)
5959
Limit Human vs AIs
![Page 60: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/60.jpg)
6060
Limit Only AIs
![Page 61: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/61.jpg)
6161
Limit mixEPS vs alwaysCall
![Page 62: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/62.jpg)
6262
Limit mixEPS vs alwaysRaise
![Page 63: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/63.jpg)
6363
Limit mixEPS vs tight
![Page 64: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/64.jpg)
6464
Limit mixEPS vs loose
![Page 65: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/65.jpg)
6565
Limit mixEPS vs rational
![Page 66: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/66.jpg)
6666
Limit wyniki Predictors
![Page 67: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/67.jpg)
6767
No limit Human vs AIs
![Page 68: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/68.jpg)
6868
No limit Human vs AIs
![Page 69: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/69.jpg)
6969
No limit Human vs AIs
![Page 70: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/70.jpg)
7070
No limit Human vs AIs
![Page 71: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/71.jpg)
7171
No limit Human vs mixEPS
![Page 72: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/72.jpg)
7272
No limit Human vs mixEPS
![Page 73: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/73.jpg)
7373
No limit wyniki Predictors
![Page 74: Pham Hoang Minh prof. dr hab. Jacek Mańdziuk](https://reader036.fdocument.pub/reader036/viewer/2022062421/56812adf550346895d8ec90b/html5/thumbnails/74.jpg)
7474
Dziękuję za uwagę!