Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Updating strange attack boards

Author: Ricardo Gibert

Date: 08:37:28 03/19/03

Go up one level in this thread


On March 19, 2003 at 09:54:02, Uri Blass wrote:

>On March 19, 2003 at 09:29:04, Matthias Gemuh wrote:
>
>>On March 19, 2003 at 08:28:02, Ricardo Gibert wrote:
>>
>>>On March 19, 2003 at 06:33:01, Matthias Gemuh wrote:
>>>
>>>>I decided to stop chess programming but even the latest version of my program
>>>>sucks. How can I quit in peace?
>>>>It calculates this attack information (bitboards of attackers to 64 squares)
>>>>    BITBOARD AttacksTo[64]
>>>>from scratch at each node. I tried to do this incremementally and it quickly got
>>>>messy and buggy because of sliding pieces, castle, en passant.
>>>>How do you attack attack boards (even the conventional type)?
>>>>
>>>>/Matthias.
>>>
>>>
>>>Let me share a couple of observations I have made concerning the development of
>>>amateur chess programs.
>>>
>>>The 1st big mistake I see repeatedly is being in too much of a rush make their
>>>programs strong by adding "fancy stuff." A very simple program can be fairly
>>>strong (> 2200 elo). You just need to get the fundamental things to work right
>>>*first*. Gerbil is a good example of what is possible with a reasonably simple
>>>program (about 2400 ICC rating). Don't layer the "fancy stuff" on top of the
>>>incorrectly implemented fundamental stuff.
>>
>>
>>Hi Ricardo,
>>I, indeed, do layer "fancy stuff" on junk :).
>>That explains why my prog scores a miserable 260/300 WAC at 5sec/pos on 1.8GHz.
>>BTW, my prog (BigLion) is at least 5 times slower than Gerbil, but equal in
>>strength at 1 minute/move.
>>If I should ever come back to chess programming, I think I would follow your
>>instructions. I just want to correct my fancy stuff now (my evaluation function
>>depends heavily on it).
>>Thanks,
>>Matthias.
>
>Did you try to spend time to search for the reason that your program is so weak
>in WAC?
>
>If you find a position that other programs are more than 100 times faster than
>biglion then it may tell you about bugs in your program.
>
>Movei solved 276 position on WAC in 1 second on 1GHz so I do not believe that
>lack of speed is the only problem of biglion.
>
>I do not think that speed optimization are bad idea.
>speed optimization can also tell you about bugs in your program.


Let me clarify what I mean by "speed optimizations." A program with low NPS
*can* be an indication of improper implementation. NPS should be at a reasonable
level. Rectifying such bugs I do not consider a "speed optimization", but rather
simply "bug fixing." Ditto for time to depth, etc.

I should have said, "Remember: Think simple, clear and *correct*."


>
>If you do something that should do the same thing faster and it does not do the
>same thing faster then you can discover that the bug is in your program and not
>in the speed optimization.
>
>I discovered some minutes ago a bug in latest movei and it seems that the making
>a move and undoing a move can change the evaluation of a position(the change was
>very small and was only 0.05 pawns but I will investigate the problem).
>
>I tried to do my program faster by avoiding some makemove that I am sure that I
>am going to prune later as illogical but in order to check if I have no bugs
>I decided instead of making the move to have nodes++ with no move to see if I
>get the same number of nodes.
>
>I found that I did not get the same number of nodes and the reason was that
>avoiding make,unmake move changed the evaluation after 5377435 nodes by 0.05
>pawns and changed pruning decision(I still do not know the reason at this
>point).
>
>Uri



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.