Poker-AI.org

Poker AI and Botting Discussion Forum
It is currently Tue Jul 16, 2019 7:54 am

All times are UTC




Post new topic Reply to topic  [ 6 posts ] 
Author Message
PostPosted: Sun Apr 14, 2019 2:01 am 
Offline
New Member

Joined: Sun Apr 14, 2019 1:30 am
Posts: 4
Hi,

I'm trying to code up something that could categorise hand strength on the flop including draws.

The motivation is to take the output of PioSolver report_IP_Full.csv files and run them through code to get Check and Bet Frequencies when you have different types of hands, such as for BUvsBB single raised pot how often does Pio think you should CBet TPTK or Pair+GS or OESD or Combo Draw. Basically get a type of decision tree which could form a heuristic for correct play which might be easily for a player to recall in realtime or could form the basis of an online assistance tool.

In terms of the programming I've looked up lot of hand evaluators but they are all concentrated on efficient assessment of who wins at showdown. I've yet to come across something that could take hole cards + Flop (or Turn) and categorise our hand a la Pio's "Range Explorer" or FlopZilla's Statistics.

I have made some naive code but it is pretty slow at the moment (running over +90k combos of starting hand + Flop is painful) and I can imagine someone much better than me at programming might have tackled this problem before and uploaded to GitHub.

Any help much appreciated! :D


Top
 Profile  
 
PostPosted: Sun Apr 14, 2019 8:14 am 
Offline
Site Admin
User avatar

Joined: Sun Feb 24, 2013 9:39 pm
Posts: 574
I don't know anything about Pio or FlopZilla so I don't really understand the question. When I needed to evaluate strength on the flop at speed I pre-calculated all the hole vs hole strength matrices for all 1755 isomorphic flops and put them on disk. The occupy about 5Gb. You could either load each matrix as required or keep all in memory if memory constrained.


Top
 Profile  
 
PostPosted: Sun Apr 14, 2019 8:48 am 
Offline
New Member

Joined: Sun Apr 14, 2019 1:30 am
Posts: 4
spears wrote:
I don't know anything about Pio or FlopZilla so I don't really understand the question. When I needed to evaluate strength on the flop at speed I pre-calculated all the hole vs hole strength matrices for all 1755 isomorphic flops and put them on disk. The occupy about 5Gb. You could either load each matrix as required or keep all in memory if memory constrained.

PioSolver allows me to give it a range for me and my opponent pre-flop together with stacksize, pre-flop pot size and position. I can then ask PioSolver to solve the decision tree for a subset of flops which is representative of the full game:
https://www.piosolver.com/blogs/news/62725637-choosing-a-subset-of-flops-to-represent-the-whole-game

I ran BBvsBU in a single raised flop over 198 flops. PioSolver was then able to give me a CSV file which outputs the optimal decisions for each combination of hole cards and flop. With the ranges I selected this ended up being 92353 combinations for the in position player when facing a check on the flop.

Here is an example of the kind of information output into the csv:
    Flop, Hand, BET Pot%, BET 0.5Pot%, BET 0.25Pot%, CHECK%
    6s 4s 2d, 5c4c, 2.93, 5.90, 21.89, 69.28
The % numbers say how often you should perform said action to be balanced in your play.

I have 92k lines like this that I want to group into categories like made hands such as:
    Straight flush, Four of a kind, Full house, Flush, Straight, Three of a kind, Two pair, One pair
As well as drawing hands such as:
    Flush draw, Open Ended Straight Draw, GutShot, Combo draw, Pair + Draw, Overcards

Basically if I had a good function that I could pass my hole cards and the board which outputs what type of made hand/drawing hand you hold I would do multiple solves in PioSolver for different situations then perform slicing and analysis on the outputs based on these categories to infer the correct play, or generate some rules of thumb. All of this stuff is early days for me so I could for sure be thinking about this in the wrong way.


Top
 Profile  
 
PostPosted: Sun Apr 14, 2019 9:50 pm 
Offline
Site Admin
User avatar

Joined: Sun Feb 24, 2013 9:39 pm
Posts: 574
- https://gist.github.com/sntran/8012387 shows a 5 card hand evaluator. You can definitely figure out the made hand categories from this. I don't know if you figure the draws or or not.
- You need a 5 card hand evaluator
- You might take a look at http://www.poker-ai.org/archive/www.pok ... ?f=3&t=353


Top
 Profile  
 
PostPosted: Sun Apr 14, 2019 10:07 pm 
Offline
New Member

Joined: Sun Apr 14, 2019 1:30 am
Posts: 4
Thanks for the link. I’ll check it out and see if I can modify it to get the draws.


Top
 Profile  
 
PostPosted: Tue Apr 16, 2019 12:36 am 
Offline
Senior Member

Joined: Fri Nov 25, 2016 10:42 pm
Posts: 122
spears wrote:
I don't know anything about Pio or FlopZilla so I don't really understand the question. When I needed to evaluate strength on the flop at speed I pre-calculated all the hole vs hole strength matrices for all 1755 isomorphic flops and put them on disk. The occupy about 5Gb. You could either load each matrix as required or keep all in memory if memory constrained.


Nice idea, thanks for sharing. Would you like to share your file where you calculated flop equity?


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 6 posts ] 

All times are UTC


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
cron
Powered by phpBB® Forum Software © phpBB Group