Computer Chess Club Archives




Subject: bugs, Bugs and BUGS!

Author: milix

Date: 04:39:37 05/27/04

Chess enging bugs (CEBUGS) are very different than normal bugs (BUGS). They are
very good in hiding from debuggers. They are also very good in covering one
another so the engine seems to behave normaly, except if it plays a very
important match. Sometimes CEBUGS are very productive and when they are
eliminated the engine's strength drops about 50-150 points. Of course they have
to be eliminated otherwise the engine cannot deliver a mate in KQvsK or it
always thinks that passed pawns are Gods. CEBUGS are also layered and they are
very cooperative. In the first layer we have the evaluation bugs (usualy +
instead of -). In the next layer we can find search bugs (improper alpha - beta
windows, or wrong score sign or null-move bugs). In the final layer we meet the
most powerful bugs ever, the transposition table bugs. These bugs have a stealth
ability, they are protecting the bugs in the first two layers while their
actions mimic the behaviour of an evaluation term or a search property (like
failing low).

I am sure that other bugs exists in my engine but I haven't had the honor to
meet them yet.

PS: In the Null-Move search you might have forgotten to clear the ep-square as
well as to restore it. This bug is very easy to detect and fix. But if you have
forgotten to update the hash signature (if you encode ep square in the hash
signature) then you are very lucky. You have met a Predator-like bug.

This page took 0.05 seconds to execute

Last modified: Thu, 15 Apr 21 08:11:13 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.