f(x) = 1 / (1 + 10^(-k*x))
mit k = 1/800.winningRate ← (child.totalValue/child.v isits) if blackToMove then
winningRate ← 1 − winningRate end if
uctVal ←winningRate+sqrt(2∗log(cur.visits)/child.visits) if uctVal ≥ bestVal then
g(x) = 0.5+atan(1/10000000*(x/2)^3)/3.14159265
x f(x) g(x)
-1.000 0,05324 0,02541
-900 0,06976 0,03479
-800 0,09091 0,04934
-700 0,11766 0,07294
-600 0,15098 0,11291
-500 0,19168 0,18122
-400 0,24025 0,28522
-300 0,29661 0,39639
-200 0,35994 0,46827
-100 0,42854 0,49602
0 0,50000 0,50000
100 0,57146 0,50398
200 0,64006 0,53173
300 0,70339 0,60361
400 0,75975 0,71478
500 0,80832 0,81878
600 0,84902 0,88709
700 0,88234 0,92706
800 0,90909 0,95066
900 0,93024 0,96521
1.000 0,94676 0,97459
2 * ((10.000.000 * tan(pi * abs(x-0.5))) ^ (1/3))
x < 0.5
zu negieren.abs
brauchte ich, weil ich pow
benutzt hatte, um die 3. Wurzel zu berechnen.Powered by mwForum 2.29.3 © 1999-2014 Markus Wichitill