Lets solve poker in open source | rs-poker (CFR, GTO poker) + range-reader ( GPT ML Model)
For 10 years I have been building rs-poker a poker library with lots of fun features (parallel ICM, bit level optimizations for hand ranking, verified implementations via fuzzing, omaha hand rank, etc). Lately I have been working on reinforcement learning arena implementation here. Recently things have gotten more interesting as I have made enough progress that I think open source has a good chance here. But I need help.
The current state is this after we just released V5.0.0 of rs-poker:

- Scalable Multi-Threaded CFR Agent
- Memory optimized game tree, that reduces fragementation
- State of the art Nash Equilibrium via little-sorry's Predictive DCFR+
- Regret pruning ala Stockfish chess engine
- TUI Based UI for Agent comparison or game generation with stats and graphs.
- Open Hand History support for generation. You can read about OHH here: https://hh-specs.handhistory.org/
However Anyone who has used piosovler or the like knows that one of the hard parts is determining what cards remain in an opponents hand (They call this Opponent Profiling). So currently rs-poker either models an exact hand, making the agents almost omniscient (they can't see the cards to be dealt) or against randomized hand (which over values your own hand way too much).
That's where range-reader steps in. Range reader is a machine learning model that from the pattern of bets can tell you what distribution (or range) of the 1326 starting holdem hands the opponent could be holding. You can read about it on the github readme here: https://github.com/Otter-Crew/range-read... It's a GPT model with poker shaped embeddings, unique sequence structure with blinds based values, with automated experimentation and evaluation.
Today I've released a set of open hand history games as a dataset on Hugging Face: https://huggingface.co/datasets/otter-cr... That dataset is about 600,000 games played by agents against each other. It's not perfect CFR play, but it should be reasonable for study and experimentation. Have fun.
Here's what we need:
- More hand histories. We need more data in OHH format. I need data. You can anonymize it through rs-poker on your machine before sending it. my email is: [email][email protected][/email]
- Code submissions that make the agents better against each other, more competitive etc.
- Anyone who has access to GPU enabled fleets so that we can generate CFR games with a high tree depth and ML model for hand exploration.
- Anyone who wants to discuss using these ideas, email me: [email][email protected][/email] or come to the githubs linked here: rs-poker range-reader or little-sorry