vondele/chessgraph

Bounds

dav1312 opened this issue · 4 comments

It would be better if the alpha/beta bounds were the score difference to the current position, not to the starting position

Does #4 address your concerns? @dav1312

Note that with e.g. python chessgraph.py --salpha 5 --sbeta 5 --position FEN you will now get a reasonable graph for any FEN, without having to know the precise evaluation of the position.

I can't test right now but it seems to do what I wanted

Great. Once you have tested it, feel free to close the issue. :)

Now that I was able to test it it doesn't seem to be doing what I wanted.
Basically, due to chessdb's eval decay, every few ply there is a "random" 1cp change in the position eval that can go up or down.

For example:

Move Eval
g4 -1.20
d5 -1.20
e3 -1.20
Nc6 -1.20
d4 -1.20
e5 -1.21
Nc3 -1.21
Be6 -1.22

In my idea, a bound of +-1 would not stop at the end, because the eval of the previous move was within those bounds.
In the current implementation, a 1cp bound will never reach the last move.


Note that this is not just about the eval decay since my idea extends to inaccurate moves too for example.
If I ask for 10cp bounds in a 0cp starting position, the current implementation limits the amount of moves to only the ones that are +-10cp, but my idea would allow a series of innacuracies as long as they are within those bounds like 0 -> 10 -> 20 -> 30 -> 40 -> 30