Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Quiescent Pruning.

Author: Anthony Cozzie

Date: 10:08:28 10/07/03

Go up one level in this thread


On October 07, 2003 at 12:29:18, Tord Romstad wrote:

>On October 07, 2003 at 08:27:40, Anthony Cozzie wrote:
>
>>On October 06, 2003 at 22:24:18, macaroni wrote:
>>
>>>What are the usualy ways of pruning the quiescent search. I don't use bitboard,
>>>so that cuts out some stuff, and makes a swap function heaps harder. At the
>>>moment, I just say a capture is no good if it doesn't increase the score above
>>>alpha-margin (50 centipawns for position stuff at the moment). Are there any
>>>other simple, or sort of simple ways?
>>>Cheers
>>
>>1. You stepped on a mine here.  Your "I don't use bitboards, because ____" will
>>start a huge flamewar.  Mark my words.
>
>He didn't say "I don't use bitboards, because ____", just "I don't use
>bitboards".  Hence, no flamewar.  :-)

I'm sorta disappointed, actually.

>>2. When you say "swap-off" function, I think you mean a capture evaluator.
>>However, there is no reason you can't write a capture evaluator without
>>bitboards (actually, there isn't really a good way to do it _with_ bitboards
>>IMO).
>
>I agree.  Writing a static exchange evaluator is more or less equally
>difficult in all common board representations.
>
>Tord

I think I said that it was harder with bitboards ;)  However, it is not exactly
_easy_ to write in any representation.

The logic runs like this:  A big part of capture evaluation is xray: if I have
Ba1 + Qb2, my pawn at e5 is defended twice, not once.  With bitboards, figuring
this stuff out is very annoying, because get_attacks_bishop(E5) will not find
the bishop.  To make things even more annoying, imagine Pf6, Pe5, Qb2, and Ba1 -
now we have to deal with pawns as well. With a 64 byte or 0x88 board, you just
keep scanning.  This is why Zappa's capture evaluation actually doesn't use the
bitboards (slight fib, but mainly it scans).  I'm working on incremental attack
tables right now so that I don't have to mess with it.

anthony

P.S. I believe SEE refers to capture analysis in place of Q search, although
perhaps its meaning has changed somewhat.



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