A Poker Playing AI created by
team Half Suited
Kesha, Joe, Ted and Tom
Learn a new language
Apply all our learning at Makers
Explore data structures and back end development
Produce a tangible product
Write our own code, unassisted
Gambled with a taking on such a huge project
Step by step approach
Solid communication on project direction, stand ups and retros
Flexible MVPs
Started simple to help learn Java, deck of cards, dealer and bot
First bot analysis was dealing with the first two cards
Slowly built up the model to include a card evaluator, hand comparer, hand weigher and second player
Linked all together using a GUI
Takes the first two cards and assigns a weight
Adds their values together and applies bonus
+2 if it contains a high card (10 or higher)
+10 if both cards are a high card
+8 if the hand is suited
+5 if the hand has to consecutive cards
+8 if the hand is suited
x2 if the cards are a pair
Cards from flop, turn and river are given to its hand
Calculates the best 5 card hand
Bets accordingly
Calculates possible draws
Adds a bonus weight
+26 if the hand is one off a flush
+13 if the hand is one off a straight, straight flush or fullhouse
-13 if the cards in hand are not in the best 5 cards
+7 if one card in hand is in the best 5 cards
+20 if both cards in hand are in the best 5 cards
Working bot that beats James at poker
99% test coverage
Strong OOP, and SRP
Taught ourselves a new language
Daily stand-ups and retrospectives, pair programming
Had fun
Check out our blog
pokerprogressioninjava.wordpress.com