SCID / stockfish help

Discussion of chess software programming and technical issues.

Moderator: Ras

afzzq

SCID / stockfish help

Post by afzzq »

I've been trying to use SCID and stockfish on Windows 7 64-bit to analyze positions.

Frequently stockfish insists on a 0.00 score even though the position clearly is not equal. I think that what is happening is that when I move back and forth on the position, stockfish is not correctly clearing its hash table, so that it somehow believes the position has been reached previously.

What's the best way to use stockfish with scid? Is the problem I described a known one, and how does one avoid it?
User avatar
Eelco de Groot
Posts: 4669
Joined: Sun Mar 12, 2006 2:40 am
Full name:   Eelco de Groot

Re: SCID / stockfish help

Post by Eelco de Groot »

afzzq wrote:I've been trying to use SCID and stockfish on Windows 7 64-bit to analyze positions.

Frequently stockfish insists on a 0.00 score even though the position clearly is not equal. I think that what is happening is that when I move back and forth on the position, stockfish is not correctly clearing its hash table, so that it somehow believes the position has been reached previously.

What's the best way to use stockfish with scid? Is the problem I described a known one, and how does one avoid it?
If you analyze positions moving back and forth without clearing hash, Stockfish will think it is a draw already after a first repetition. Most programs excluding the clones of Rybka work this way. If that is not what you want you can manually clear hash or reload the engine, which I believe should be easily possible with SCID, but it is not sufficient to avoid your problem. There is also a clear hash option in the UCI options but unloading and then reloading the engine seems a surer way to clear hash. To make certain no draws which you do not intend are counted you have to know it is not just about hash, also the game history, this is not cleared if you clear hash. You have to make sure you are not running a single time repetition because it will be counted 0.00 even after clearing hash, if that repetition is in the game score.

There is no learning in Stockfish so moving back and forth really is very inefficient, I would avoid this altogether, it is maybe preferable to have reproducible results instead, at least that is what I would do, start every position again with a fresh loaded engine.

Moving forward should work better than moving backward because it mimics what happens in a game, moving forward Stockfish does keep its hash at least some of it in my experience, even in analysis mode but I can't guarantee this actually works well. Learning engines do this much better.

Eelco
Debugging is twice as hard as writing the code in the first
place. Therefore, if you write the code as cleverly as possible, you
are, by definition, not smart enough to debug it.
-- Brian W. Kernighan
User avatar
hgm
Posts: 28386
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: SCID / stockfish help

Post by hgm »

If you retract the moves, rather than playing the inverse move, you should not get this effect. Otherwise the engine is seriously buggy...
User avatar
Greg Strong
Posts: 388
Joined: Sun Dec 21, 2008 6:57 pm
Location: Washington, DC

Re: SCID / stockfish help

Post by Greg Strong »

hgm wrote:If you retract the moves, rather than playing the inverse move, you should not get this effect. Otherwise the engine is seriously buggy...
Or SCID is buggy ...
jwes
Posts: 778
Joined: Sat Jul 01, 2006 7:11 am

Re: SCID / stockfish help

Post by jwes »

Greg Strong wrote:
hgm wrote:If you retract the moves, rather than playing the inverse move, you should not get this effect. Otherwise the engine is seriously buggy...
Or SCID is buggy ...
It turns out that SCID is buggy, but the error has the opposite effect. When analyzing games, SCID does not send path information with positions to analyze so it cannot recognize repetitions that occur earlier in the game.