Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: quiescence deep

Author: José Carlos

Date: 12:10:42 08/04/04

Go up one level in this thread


On August 04, 2004 at 14:52:45, Cesar Contreras wrote:

>I'm having problems figuring out how to implement an SEE, i supose you need to
>generate all moves to both sides, ordering on any way the captures, and
>calculate the captures. Any info you can add will be apreciated.
>
>Thx

  You don't need to generate moves, only attacks to a given square. The idea of
SEE (static exchange evaluator) is to predict the outcome of a capture sequence
in a given square statically. So you want to know all pieces of both colors that
attack that square. Then, your sort the pieces by increasing value (try to
capture with small pieces first) and start simulating the captures, keeping
track of the material.
  Consider this position:

[D]rnbqkb1r/pp2pppp/2p2n2/3p4/4P3/2NP4/PPP2PPP/R1BQKBNR w KQkq - 0 4

  You want to know the SEE of the two possible captures:
  1. Nxd5: black can take with pawn, knight and queen, in this order. Black
takes with pawn (you eliminate Pc6 from the list). Now you're at -2.00
(1.00-3.00). You can take with Pe4. exd4 and you're at -1.00; you can stop here
because you know for sure you're gonna lose material with Nxd5
  2. exd5: again cxd5, Nxd5 and Qxd5 for black. First cxd5. Eval=0. You still
have one attacker, the knight: Nxd5 (+1.00). Black Nxd5 (-2.00) for you. You
have no more attackers, so you review the capture list. You see you can sit
after black's cxd5 with eval 0. So SEE value for exd5 is zero.

  This is the idea. The implementation is more fun if you figure out ;)

  José C.



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.