flopnflush wrote:

You should read the Johanson et al. paper and the related thread first, if you haven't already.

http://poker-ai.org/phpbb/viewtopic.php?f=25&t=2381Thanks for the link. Really interresting paper and thread. I saw yout kmeans++ implementation on github. Big thanks for it!

Thre is still a lot of unclear spots so i try to go step by step through the authors' algorithm.

First i realised, we have to precluster the hands to calculate potential.

What abstraction algorithm (S) do you recommend? A naive way would be to take all EHS entry for the round, sort them, and divide them into n equal sized Cluster, where size = numer of all combinations for round / number of desired clusters.

But i bet there is some better method.

Then do a bottom up loop from the turn.

Calculate the mean of each river cluster. I guess this is a simple mean calculation. eg.: cluster 1 :{0.2, 0.21, 0.23, 0.25}

0.2 + 0.21 + 0.23 + 0.25 = 0.89 / 4 =

**0.2225**. Which is not a member of the data set. Could it be problem?

calculate the distance between every river cluster pair's means. Eg. 0.2225 (from above) and 0.332 => 0.1095. Sounds to simple. What do they mean with distance metric d<sup>n+1</sup>?

What does point x mean?

Does this make sence to anyone?

**Quote:**

Next, we compute histograms Hn(xn), where the i-th element of Hn(xn) is the fraction of the time that chance’s next move will send xn into cluster i in An+1