Too bad I forgot how to do it.. I quit physics for optimization
The flow of Komodo eval
Moderator: Ras
-
whereagles
- Posts: 565
- Joined: Thu Nov 13, 2014 12:03 pm
Re: The flow of Komodo eval
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
Too bad I forgot how to do it.. I quit physics for optimization
-
Laskos
- Posts: 10948
- Joined: Wed Jul 26, 2006 10:21 pm
- Full name: Kai Laskos
Re: The flow of Komodo eval
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
-
Laskos
- Posts: 10948
- Joined: Wed Jul 26, 2006 10:21 pm
- Full name: Kai Laskos
Re: The flow of Komodo eval
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.
-
Laskos
- Posts: 10948
- Joined: Wed Jul 26, 2006 10:21 pm
- Full name: Kai Laskos
Re: The flow of Komodo eval
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.
-
whereagles
- Posts: 565
- Joined: Thu Nov 13, 2014 12:03 pm
Re: The flow of Komodo eval
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. (...)
-
nimh
- Posts: 46
- Joined: Sun Nov 30, 2014 12:06 am
Re: The flow of Komodo eval
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)I'd like to try it out to see if it yields a more reliable strength-accuracy relationship than before.
-
mjlef
- Posts: 1494
- Joined: Thu Mar 30, 2006 2:08 pm
Re: The flow of Komodo eval
Kai,
You do some beautiful work.
Mark
You do some beautiful work.
Mark
-
gordonr
- Posts: 237
- Joined: Thu Aug 06, 2009 8:04 pm
- Location: UK
Re: The flow of Komodo eval
+1mjlef wrote:Kai,
You do some beautiful work.
Mark
-
Mathboy
- Posts: 33
- Joined: Sat Nov 23, 2013 7:12 am
Re: The flow of Komodo eval
Thanks, this is wonderful work.
Do you think the vector field looks the same at very different time controls?
John
Do you think the vector field looks the same at very different time controls?
John
-
fern
- Posts: 8755
- Joined: Sun Feb 26, 2006 4:07 pm
Re: The flow of Komodo eval
And now, Kai, in plain English, what are the conclusion of that statistical exercize?
Fern
Fern