- tokio based async exploration - rust slab allocation based tree structure for regret minimization - perfect hashing for faster hand ranking - a TUI via https://ratatui.rs/
Creating your own poker bot and having them compete in an arena should be less than 100 lines of code: https://docs.rs/rs_poker/latest/rs_poker/arena/index.html
I need more eyes on the implementation, and more attempts to make the algorithms and agents state of the art. I know I can't have found the optimal configurations and algorithms; I'd love for the open source community to prove me wrong.
There's one glaring limitation that I need to fix. Right now the CFR agents can't predict their opponents hands so all regret minimization is either using the exact hand (so pretty conservative) or random (so too wide). I have some ideas here but I need more data and more discussion.
direct github: https://github.com/elliottneilclark/rs-poker