Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Attack Table Question

Author: Peter Fendrich

Date: 08:38:54 03/22/04

Go up one level in this thread


On March 22, 2004 at 11:15:35, Dann Corbit wrote:

>On March 22, 2004 at 07:44:35, Peter Fendrich wrote:
>
>>On March 22, 2004 at 07:06:53, Tord Romstad wrote:
>>
>>>On March 22, 2004 at 03:40:57, Daniel Shawul wrote:
>>>
>>>>Hello
>>>>
>>>>I have decided to use attack tables. I just did
>>>>a rough implementation of it at the beginning of the eval
>>>>according to Ed's paper. The problem is the thing dropped the nodecount
>>>>by almost 40% .  Initial position nodecount was 800000 and now it is 500000.
>>>>Do incremental move attack tables help? And how do i update the table? It seems
>>>>very difficult to update a sliding move and other special cases.
>>>
>>>Hello Daniel,
>>>
>>>Yes, attack tables tend to be expensive.  I calculate them from scratch at
>>>every node, and my impression is that most others (including Ed) does the
>>>same.  Perhaps it would be possible to do it faster by some sort of
>>>incremental updating, but I am fairly sure it would still slow you down a lot.
>>
>>...and also provide a new source of bugs that are very hard to find.
>>/Peter
>
>In debug mode, you calculate both incrementally and a complete recalculation.
>Then compare in an assert.  Then it is very easy to spot any problem.

Dann!
What do you think I'm using?

The problem here is that you must first know that you have a bug.
Depending of the usage a bug like this will announce itself
as sometimes strange play. You have to dig in enormous search trees in order to
find out what really happened. What function is involved and when.
Sometimes it's better to re-read the code and try to find it out that way.
If the tables are used so that illegal moves or similar things happens it's of
course an easier task.

One of the hardest bugs to detect is in the evaluation function. Things like
giving a bounus to white instead of black in certain situations. It's very hard
to even know that the bug is there without re-reading the code or using
sofisticated own-written verification-code. I think incremental attacking tables
could give similar problems. Are you really sure that the used values are the
current or did you forget incrementing in some rare situations.

/Peter


>>>You simply have to decide whether it is worth the cost.
>>>
>>>Tord



This page took 0 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.