Code: Select all
Sum = (legal_games[1] / Total_games[1]) * U(1)
+ (legal_games[2] / Total_games[2]) * U(1) * U(2)
...
+ (legal_games[13] / Total_games[13]) * U(1) * U(2) * U(3) ... * U(13)
Code: Select all
Sum = (legal_games / total_games) * U(1) * U(2) * U(3) .... * U(13)
Code: Select all
Sum = ((legal_games + 1) / (total_games + 1)) * U(1) * U(2) * U(3) .... * U(13)
And if you count it as illegal which means you increment the total_games count only
Code: Select all
Sum = ((legal_games) / (total_games + 1)) * U(1) * U(2) * U(3) .... * U(13)
They are both wrong because they are being multiplied by the incorrect upper bound when
it should have been the upper bound perft value for that ply where the game terminated.
The correct _unbiased_ estimator will be to consider that the shorter game never happened i.e don't increment any of the counters
Code: Select all
Sum = ((legal_games) / (total_games)) * U(1) * U(2) * U(3) .... * U(13)
Let me make sure we are on the same page first before we continue.