Hi All,
I'd like to outline here my AI implementation strategy, any feedback would be very welcome.
I'm basing my development on this paper:
http://www2.cs.uregina.ca/~hilder/my_st ... Thesis.pdfI'm developing it using OpenTestBed/Meerkat API. My approach is to use an ANN to actualy play poker (as opposed to just model opponents). Right now I'm collecting the following information from the game state as input to my ANN:
- Hand Strenght
- Hand Potential
- Amount to call
- Eligible pot
- My amount in pot
- # active players
- Stage (including pre-flop)
- My distance from button
- Chips (mine and from opponents)
- Some basic opponent modeling
and my ANN outputs the action that should be performed (fold, check/call, bet/raise)
As a proof of concept, I've trained my ANN with 10000 hands of FL-HU cash games played between two SimpleBots, with 5% error. Then I used a Genetic Algorithm to evolve this ANN so now it beats SimpleBot consistently.
My next step is to setup a tournament style game play so I can put all candidates in each generation of my GA to play against each other, hoping that it can evolve even further.
Also, I'm changing my ANN to play NoLimit games, and the output now is (fold, check/call, bet/raise low, medium, high, all-in)
Any comments?