Author: John Scalo
Date: 15:47:04 12/30/97
Go up one level in this thread
On December 30, 1997 at 17:02:22, Robert Hyatt wrote: > >Best starting point is to write a SEE module. You can use this in the >following ways: > >1. ordering captures. It is more accurate than MVV/LVA (most valuable >victim, least valuable attacker) because MVV/LVA looks at ugly captures >first... IE it would try a QXR where R is defended before it would try >NXP where the P is hanging. I found a significant benefit of using SEE >in both Cray Blitz and Crafty. > >2. If your SEE is "good" you can use it to toss losing captures in the >q-search and not even try them. IE QxP where the P is defended such >that >this is a losing capture. But the point is that if you leave losers >out, >it saves a lot of worthless search. I found that doing this cut the >size >of my tree by just over 50%. That is, using SEE ordering was 10% better >than using MVV/LVA, based on extensive testing for a big argument in >r.g.c.c >last year, and then you can save 50% more by tossing captures (q-search >only) >that appear to be losing... > >MVV/LVA is "ok", but is really a hardware-based algorithm where SEE >can't >be done in a single cycle, while hardware can pick the MVV part in one >cycle, >and the LVA part in the next. But SEE is more accurate, the only issue >being how much time does it take to execute. Using bitmaps it is very >fast... I dream of an efficent SEE, but I only use bitboards to a limited extent. I can't figure out how to create an efficient SEE without going with full-blown bitboards, which I don't want to do because I feel like I'd basically be copying Crafty. I maintain bitboards of all pieces, passed pawns, and several huge arrays that help make generating captures fast, although I still need to check for interposing pieces when it comes to sliders. Any suggestions on how to create an SEE in such a scheme? Thanks, -j
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.