Piccolo bug di Wizard

    • BlackLoter
      BlackLoter
      Bronzo
      Presente da: 08-31-2010 Contributi: 25
      C'è un piccolo "bug", o meglio, una piccola approssimazione che fa Wizard quando calcola l'equity di push o di call di cui ero a conoscenza da parecchio tempo, però avevo sempre pensato che questa approssimazione fosse ininfluente e quindi non gli avevo mai dato seguito.
      Questo fino a quando recentemente mi è stata mostrata una mano in cui Wizard dava "fold" con differenziale -0.09 mentre in realtà il call avrebbe avuto un differenziale +0.07, la discrepanza totale era quindi di 0.16%, un quantità piccola ma non proprio trascurabile, soprattutto in certi spot.
      Facendo qualche test ho poi verificato che in certe situazione reali la discrepanza può arrivare attorno al 0.30%, differenza che in genere è sufficiente a cambiare un call marginale in un call netto, oppure un fold in un call.

      "Qual è questo bug?" Vi starete chiedendo...
      In pratica Wizard ignora gli "split pot", o per spiegarlo meglio, considera gli split pot come se fossero stati vinti metà delle volte da un giocatore e metà dall'altro (analogamente per i 3 way pot). Questo in ICM non è corretto, perché l'equity di uno split pot è maggiore di metà dell'equity di una vittoria (a meno di non essere in HU). In situazioni di bolla l'equity di split pot può essere molto maggiore di mezza equity di vittoria e la probabilità di split in molti casi è significativa: attorno al 4%.

      Ora, per evidenziare il bug, che io ho riprodotto nella versione che ho attualmente di Wizard (1.0.2.019), basta riprodurre la mano qui sotto. Se qualcuno ha l'ultima versione di Wizard già pronta può verificare il bug, sebbene dai log di aggiornamento di Wizard non mi risulta che questa cosa sia stata modificata/corretta.
      Ecco la prova da fare:



      Questa è una situazione irreale, in cui il bug però appare in modo lampante: UTG pusha soltanto AA, di conseguenza se BB chiama splitterà quasi sempre il pot. L'equity derivante dal call è in realtà 25.96% circa, quindi il differenziale del call non è -1% come ci dice Wizard ma +5%.
      Potete verificarlo da soli con pokerstove e icmexplorer, mettendo tutti e 3 i casi (vince BB, vince UTG, split) e relative probabiltà ed equity.
      Comunque la cosa è abbastanza intuitiva: se chiamiamo splitteremo il 96% delle volte e dividendoci le chips dell'ante e dello SB la nostra equity diventa circa 26.2%

      Come dicevo, una divergenza così grande dipende solo dalla situazione irreale di test che ho creato, nei casi reali però la differenza può arrivare ai 0.20%/0.30%
  • 3 risposte
    • giulios87
      giulios87
      Bronzo
      Presente da: 06-23-2010 Contributi: 1.205
      Ho provato a mettere la mano su Wizard (ho l'ultima versione, la 1.0.2.025) ed ho ottenuto gli stessi risultati.
    • arahell
      arahell
      Bronzo
      Presente da: 07-04-2009 Contributi: 5.826
      Ciao ragazzi,

      grazie mille per la segnalazione, ho appena inviato una mail al support di Wizard, speriamo sistemino a breve la cosa :) Grazie ancora !

      A presto,
      Arahell
    • BlackLoter
      BlackLoter
      Bronzo
      Presente da: 08-31-2010 Contributi: 25
      L'originale di arahellCiao ragazzi,

      grazie mille per la segnalazione, ho appena inviato una mail al support di Wizard, speriamo sistemino a breve la cosa :) Grazie ancora !

      A presto,
      Arahell
      Grazie dell'info, sarà interessante sapere se lo sistemano perché in effetti non è facilissimo farlo.
      Sui pot a due giocatori non dovrebbe essere difficilissimo, però sui pot a 3 giocatori è un po' più complesso: possono splittare i primi 3, oppure i primi 2, oppure esserci un vincitore con gli altri due che splittano... insomma c'è un tot di lavoro da fare
      Bisognerebbe anche vedere se hanno a disposizione solo i dati sull'equity o anche sugli split pot (a 2 e 3 giocatori)