Ciao a tutti,
oggi c'era un interessante articolo su pokerstrategy.com (che potete trovare QUI) che volevo discutere qui con voi.
Saro' un post un po' lungo, dove cerchero' di mettere anche le mie opinioni e vi invito ad esprimere le vostre, perche' e' un evento molto importante e con delle serie implicazioni per il mondo del poker.
Per chi non conosce bene l'inglese o chi non ha voglia di leggerlo riassumo brevemente qui:
Nel 2017, Carnegie Mellon ha sviluppato Libratus, un AI in grado di giocare heads up NLHE in modo profittevole contro giocatori professionisti (Jason Les, Dong Kim, Daniel McAulay and Jimmy Chou). Su 120.000 mani aveva 14.7 BB / 100, che rappresentano una vittoria schiacciante di Libratus contro gli umani.
Questa notizia ha fatto molto scalpore, ma comunque e' stata minimizzata nel mondo pokersitico dicendo che giocare HU e giocare 6max era completamente diverso e sarebbe passato del tempo prima che si sarebbe riusciti ad estenderlo al 6max.
Fast-forward ad oggi, su Science e' stato pubblicato un'articolo dove viene presentato Pluribus, un estensione di Libratus capace di giocare 6 max.
Pluribus e' stato realizzato sempre dalla Carnegie Mellon in collaborazione con Facebook, ed il suo algoritmo di learning e' basato unicamente su self-play. Per i non addetti ai lavori, vuol dire che nessun umano consiglia una strategia, ma e' l'AI giocando ripetutamente contro altre 5 copie di se stessa che migliora gradualmente la sua strategia. Per migliorare la sua strategia usa una variante di CFR+ (Counterfactual Regret Minimization Plus), che e' un algoritmo di minimizzazione del regret. Qua si va sul tecnico ma se siete interessati magari ve lo racconto in un altro post
L'idea alla base e' che dopo aver giocato delle mani, guarda le mosse che ha fatto e vede se c'era una mossa migliore che poteva fare in un certo momento (ad esempio al river potevo vincere di piu' andando all-in invece che facendo solo check back). La differenza tra la mossa migliore che potevo fare e quella che ho realmente fatto si chiama regret (rimpianto). L'obbiettivo dell'algoritmo e' di trovare ad ogni iterazione una strategia "migliore", dove per migliore si intende che cerca di evitare di rimpiangere le scelte che ha fatto.
Dopo 8 giorni di training (che possono sembrare molti ma in realta' per un problema complicato del genere non lo sono), ha creato una strategia di base (chiamata blueprint strategy) con cui iniziava a giocare ma durante il gioco, migliorava questa strategia in base alle situazioni in cui si trovava.
Per valutare la capacita' dell'AI e' stato creato un tavolo 6max, dove seduti c'erano 5 umani (tra Jimmy Chou, Seth Davies, Michael Gagliano, Anthony Gregg, Dong Kim, Jason Les, Linus Loeliger, Daniel McAulay, Greg Merson, Nicholas Petrangelo, Sean Ruane, Trevor Savage e Jacob Toole) ed un AI.
Nel tavolo venivano usati degli alias fissi, cosi' le persone non sapevano contro chi stavano giocando (e non potessero ad esempio colludere contro l'AI) ma comunque potevano tracciare la strategia degli avversari.
Sono state giocate 10.000 mani, e Pluribus ha ottenuto 45 milliBB / hand (45 milli Big Blind per Mano, quindi non BB/100) che corrispondono quindi a 0.045 BB / hand = 4.5BB/100. In termini monetari, Pluribus giocando il 50$/100$ vinceva (in media) 5$ per mano. Considerando che seduti al tavolo c'erano solo giocatori professionisti, rappresenta un win rate di un giocatore decisamente vincente.
Legendo il paper originale, che potete trovare QUI.
Le cose secondo me piu' interessanti sono le seguenti:
- La blueprint strategy, cioe' la strategia di base che usa, e' stata calcolata usando un server con 64-core con 512 GB di Ram, in soli 8 giorni. Per un gioco con la complessita' del poker, e' veramente poco. In termini di costo, affitare una macchina del genere per 8 giorni costa 150$.
Immaginate voi di studiare per 8 giorni, spendendo 150$, e diventare top reg del NL10000. - In game, Pluribus gira su due Intel Haswell E5-2695 v3 CPUs e usa meno di 128 GB di RAM. Anche qua e' veramente poco, considerate che AlphaGo per giocare a GO usava 1920 CPUs e 280 GPUs!!
- Impiega, in media, 20 secondi per ogni mano per scegliere la linea da giocare. Anche qua e' strabiliante, l'AI non va nella tank a pensare per minuti e minuti prima di sparare una strategia ma e' molto veloce nel trovarla.
- Dopo un po' di iterazioni Pluribus ha eliminato qualsiasi strategia di limping (eccetto che da SB). Citando il coach che cita qualcun'altro "il LIMP e' il male". Non serviva Pluribus per dirlo, ma se limpate e perdete ve lo meritate :f_grin:.
- La lezione piu' importante pero' secondo me e' in questo ultimo punto. Pluribus non adatta la sua strategia agli avversari (non che non sia giusto farlo, ma e' molto piu' complesso da gestire) ma quello che fa e' giocare una strategia bilanciata. Questo e' un grande punto a favore nella diatriba GTO vs Exploitative Play per il team GTO. Quando Pluribus deve effettuare una decisione ragiona nel modo seguente: in ogni punto della mano, tiene conto del range di mani con cui arriva in quello spot data la sua strategia di base e cerca di bilanciare la sua strategia per ogni mano del suo range in modo' da essere imprevedibile. Per chi conosce il mondo dei solver, questo ragionamento suonera' familiare. Pluribus pensa in termini di range e non di mani.
Per chi di voi ancora non si e' addormentato leggendo sopra, vi domando che implicazioni avra' tutto cio' nel mondo del poker. E' vero che e' il risultato della ricerca rimarra' parzialmente segreto, ma esistono persone in grado di capire e replicare il funzionamento (almeno parzialmente) di Pluribus. Non e' una novita' che in alcune room imperversano bot "simil GTO" che in alcuni casi colludono anche tra di loro.
Il problema non oggi ne' domani, ma fra qualche anno. Cosa succedera' al mondo del poker online? Gia' il panorama online e' in declino e se appariranno sempre piu' AI in grado di giocare e vincere senza sosta, non solo i giocatori ricreativi ma anche reg perderanno la voglia di giocare. Diventera' una guerra fantascientifica tra AI?
Basta vedere come i solver hanno cambiato il gioco, per competere a certi livelli c'e' bisogno del supporto dei solver per trovare strategia vincenti. Questo approccio ibrido tra computer e umano, lentamente preferira' la componente in silicio. Gia' adesso i giocatori vincenti sono quelli che, studiando con i solver, cercano di approssimare (ed adattare) al meglio delle loro capacita' la strategia che i solver sputano fuori. Una strategia approssimata di una ottimale, perde sempre contro quella originale.
La morale della favola e' che siamo noi l'anello debole, l'edge del computer andra' solo aumentando e mi domando a questo punto quanto sara' profittevole impiegare tempo e risorse per studiare del poker, visto che si sta combattendo una guerra gia' persa in partenza.
Che ne pensate?

