Too bad I forgot how to do it.. I quit physics for optimization

Moderator: Ras
Come on, I tried to present as intuitively and graphically as it gets. The graphical reading is just "if one starts with Komodo eval of +1.2 pawn advantage at move 30, on average, the game will go to +1.6 pawn advantage to move 40 against an equal opponent to Komodo". Vector field is just a fancy name, follow the arrows for the same purpose, to track the progress of Komodo move by move for different starting evals.whereagles wrote:lol... I feel like sourcing-out that vector field and get a quantum field theory description of it. Probably akin to some non-renormalizable ghost-matter interacting theory.
Too bad I forgot how to do it.. I quit physics for optimization
Well, it's more likely that the game will end in Win than in Draw, but just probabilistically.Dann Corbit wrote:If the score is above 70 cp on the 10th move, you are trapped in the vector field of doom.
I suspect, from your previous work, that you do possess most high-school math, and it's what I most often use myself.nimh wrote:I've never been interested in maths, I'm weak at it.
I know.. There is nothing too deep to it. It just reminded me of the good old daysLaskos wrote:(...) I tried to present as intuitively and graphically as it gets. (...)
I think it's the best and easiest if I use the original logistic function you gave me a while ago.Laskos wrote:I suspect, from your previous work, that you do possess most high-school math, and it's what I most often use myself.nimh wrote:I've never been interested in maths, I'm weak at it.
So first you have a high-school function for the boundary Win-Draw:
eval[x] = 5*0.75/(5 + 0.75*sqrt(30) - 0.75*sqrt(x))
x is the variable move number. This formula gives the eval at move x for the boundary Win-Draw.
Then you asked for that f(x):
f[x] = 0.5 + 0.5 * theta(y[x] - eval[x])
Theta is the step function:
theta[x] is 1 for x>0, 0 otherwise, for our purposes.
You don't need to know anything on fancy generalized functions. If you don't want to use "if" and such, then if your software supports abs or sign operations, theta is very easy to write as:
theta[x] = (1 + abs[x]/x)/2
If your software doesn't know even abs operation, I can concoct an ad hoc "engineering" representation of theta for our purposes, in elementary functions.
Say theta[x] = 1 / (1+exp[-100*x])
It has the accuracy of an eval difference of 0.01, sufficient for us. An overflow might happen, but you can easily manage.
Code: Select all
((1+(EXP(G26/1,2)-EXP(-G26/1,2))/(EXP(G26/1,2)+EXP(-G26/1,2)))/2)
+1mjlef wrote:Kai,
You do some beautiful work.
Mark