Tu décris un spot, 0regret calcule la stratégie d'équilibre, et tu explores chaque main, chaque carte et chaque fréquence dans une interface claire. Pas de compte, pas d'abonnement, pas de cloud.
Trois commandes. Zéro regret.
./0regret solve spot.txt --serve
Démo animée réalisée à partir d'un vrai solve du spot turn Q♠ J♥ 6♣ 2♦ (pot 20, tapis 90), sur un Mac M3 8 Go. Les fréquences et EV affichées sont celles calculées par 0regret. C'est exactement ce que tu vois dans l'interface, où le spot se saisit à la souris : plateau, pot, tapis, ranges.
Directement dans l'interface : tu cliques le plateau carte par carte, tu remplis le pot, le tapis effectif et les tailles de mise, puis tu peins les deux ranges au pinceau — ou tu les colles au format Pio. L'estimation (nœuds, mémoire, durée) s'affiche avant même de lancer le calcul, et le même spot se relit ensuite dans un fichier de configuration :
board = Qs Jh 6c 2d oop_range = 22+, A2s+, KTo+ turn_bet = 50, 100
0regret affiche la précision à chaque étape et s'arrête quand la cible est atteinte. La solution est sauvegardée.
./0regret solve spot.txt --serve
Grille 13×13, fréquence de chaque action, EV et équité main par main, carte par carte au turn et au river.
./0regret serve spot.0r
0regret cherche la stratégie qu'aucun adversaire ne peut exploiter. Il fait jouer les deux joueurs l'un contre l'autre des centaines de fois, et chacun corrige à chaque tour ce qu'il regrette de ne pas avoir joué. Quand plus personne n'a de regret, c'est l'équilibre.
L'algorithme oublie peu à peu ses premières erreurs pour converger plus vite (Discounted CFR). Nous avons réglé son dosage sur de vrais spots : 3 à 9 % d'itérations en moins que le réglage publié.
Chaque calcul traite toutes les combinaisons ensemble au lieu de main par main, et répartit le travail sur tous les cœurs de ton processeur.
Sur K♠7♠2♠, un 5♥ et un 5♣ au turn mènent au même jeu. 0regret ne le calcule qu'une fois : −39 % sur deux couleurs, −37 % sur un board pairé, −71 % en monochrome.
Les gros arbres sont stockés sur 16 bits au lieu de 32. Un arrondi aléatoire et sans biais garde exactement la même précision finale : de quoi résoudre des flops sur un Mac de 8 Go.
Impose une stratégie à un nœud, par exemple « il ne bluffe jamais ici », et regarde tout le reste de l'arbre s'adapter. Face à un IP qui ne bluffe jamais, le call d'OOP passe de 50 % à 0 %.
Lance une série de flops, pondérés par leur fréquence réelle, et lis la stratégie agrégée par texture dans un rapport filtrable. Le calcul reprend où il s'était arrêté.
| Test | Résultat | Ce que ça prouve |
|---|---|---|
| Toutes les mains de 7 cartes | 133 784 560 | Le classement des mains est exact sur toutes les combinaisons possibles. |
| Jeu jouet à solution connue | 1,5 bluff · 50 % call | 0regret retrouve exactement la théorie : bluffs, fréquence de call et EV. |
| Contre-calcul main par main | 5 décimales | Une seconde implémentation indépendante donne les mêmes EV et la même exploitabilité. |
| Fusion des couleurs | identique | Avec ou sans fusion, chaque nœud donne les mêmes nombres. |
| Rake et verrous | 5 décimales | Les mêmes contrôles passent avec rake et node locking activés. |
Les salles de poker interdisent les solvers aux tables et savent les détecter. 0regret s'utilise pour la review et l'entraînement, hors session.
Le postflop en heads-up, du flop au river, avec tes ranges préflop. Le préflop et les pots à trois joueurs ou plus restent hors de son champ.