Quote:
Originally Posted by zachvac
No, you can easily find an exact nemesis given a strategy. Construct the game tree for this game with the given strategy. Now examine each leaf. It will either have an obvious payout or a showdown. At showdowns you can determine how to play every hand, determine the payout based on the range villain arrives there with, and go up the tree choosing the max at every decision.
I was actually referring to the initial construction of the neural network - the training algorithm, whatever it is, HAS to have some function to evaluate the fitness of the net. Maybe I misunderstood Cangurino though and he was actually talking about finding the nemesis.
In which case, I agree with you. But also... the decision tree is very large. There are about 134 million board + hole card combos (just your hole cards and the board, i.e. C(52,7). For each potential board run out there are a LOT of potential betting patterns. To make a rough approximation, pretend that we don't care about bet size and there's never more than 4 bets per round. I counted 17 betting patterns per street but I may have miscounted, I just enumerated them by hand real quick. For 4 streets of betting this means 17^4 or 83,521.
So the total tree should be around 17^4 * C(52,7) or about 11 trillion. This is for HU, for 3 players it would be much much worse. If we represented the tree using a 4 byte float per node, that would be around 44.7 terrabytes. A 8 byte double would obviously be twice that.
I mean it seems vaguely doable with enough firepower but it's not simple either.
And if you allow different bet sizes and uncapped raises it's much much much worse.