Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Help with Static Exchange Evaluator

Author: Robert Hyatt

Date: 15:25:52 07/19/99

Go up one level in this thread


On July 19, 1999 at 16:02:37, Vincent Diepeveen wrote:

>On July 19, 1999 at 10:48:52, Robert Hyatt wrote:
>
>>On July 19, 1999 at 06:03:38, Vincent Diepeveen wrote:
>>
>>>On July 19, 1999 at 00:48:56, Robert Hyatt wrote:
>>>
>>>>On July 18, 1999 at 17:27:12, William Bryant wrote:
>>>>
>>>>>I have created a SEE routine for my program (following the general plan of
>>>>>Swap()
>>>>>from Crafty) and now have a question about where it should be implemented.
>>>>>
>>>>>I initially implemented it in the move generator.  When generating captures, if
>>>>>the Captured_Piece - Capturing_Piece <0, I would uses a SEE score of < 0 to
>>>>>discard the move, never searching it.
>>>>>
>>>>>This created an overall speed up but leaves a number of questions.
>>>>>
>>>>>Some positions require a sacrifice to find the winning line.  These positions
>>>>>are never found because the sacrifice move is always discarded and never
>>>>>searched.
>>>>
>>>>
>>>>
>>>>this is totally unsafe.  In the full-width part of the search, you should be
>>>>able to look at these 'losers' at some point in the search, after the good
>>>>captures, killers, etc...  In the q-search you can afford to ignore them since
>>>>the q-search is already full of errors anyway...
>>>
>>>i disagree here. You can very cheap do checks in qsearch and see these
>>>tricks 4 ply earlier.
>>>
>>>Let us list the programs that do some checks in qsearch,
>>>and the ones that do not a single one
>>>
>>>The programs from which i suspect (if u grow older you
>>>grow wiser) doing checks in qsearch (alfabetical listed):
>>>Diep
>>>Fritz
>>>Genius
>>>Hiarcs
>>>The King (chessmaster 4000 etc)
>>>Lambchop
>>>Nimzo
>>>Rebel
>>>Virtual Chess
>>>Zarkovx
>>>
>>>The programs from which is suspect not doing them:
>>>Crafty
>>>Ferret
>>>Junior
>>>
>>>
>>>He what a big coincidence, the programmers of the non-doing check in
>>>qsearch are more convinced about getting kicked silly by programs
>>>outsearching them.
>>>
>>>In fact crafty at 12 ply is in fact searching 8 ply
>>>tactical for some tricks which probably fall outside the
>>>horizon anyway, which is kind of weird.
>>>
>>>Ferret already gets a huge depth and has all kind of extensions
>>>seemingly; in a position where my DIEP searches 13 ply at the
>>>same hardware, both Ferret with way over half a million nodes got
>>>only 11 or 12 ply in paderborn in the middlegame against fritz
>>>fritz not doing better bye the way, as the paderborn version
>>>seemed having all kinds of extensions too, although fritz532
>>>searches deeper in that position!
>>>
>>>Junior already gets like 17 ply anyway tactical (positional 8 ply),
>>>and with R=2 it's unlikely that you miss something tactical then,
>>>even though when talking about checks it sees obviously 4 ply less.
>>>
>>>But crafty. Oh crafty. Crafty does a very limited recapture extension.
>>>mate threats are extended very slightly, so that last helps a little,
>>>but further it simply sees tactical 4 ply less when we're talking
>>>about a check threat.
>>>
>>
>>My point is this.  Your checks are good for some tactical shots.  They are
>>awful for common positions.  Because you are running down stuff in the q-search
>>that is totally wasted.  And if you waste time here, you lose time elsewhere.
>
>What are you talking about,
>i don't do checks in common positions of course!
>
>I do only useful checks.
>

right... and I only buy stocks that go _up_ too.  :)  If you knew which
checks were 'useful' and which were not, you could solve the game from the
root position.




>>For every position you find where a check in the q-search helps, There are
>>hundreds of positions where it hurts just as much or more.  If my game results
>
>NO doubt 1.e4,e5 2.Qg4,Nf6 Qxd7+
>to name a bad check.
>
>Of course we wanna prevent bad checks.


Qxd7 is trivial to prove bad if it is just tossing a queen.  But there are
_lots_ of other checks that are bad, yet they are not obviously bad.  And
extensions make the tree big.  And then following checks in the q-search make
it even bigger.

When you can prove to me that my 'simplified q-search' is bad, I'll change.
However, I am doing ok by using it so far... and this lets me work on the
search itself, without worrying about the q-search which is always full of
errors anyway...


>
>
>>were bad, I'd be looking at why.  But I do just fine at present.  I have older
>>versions of Crafty that _did_ do checks in the q-search (trivial to implement)
>>but they don't play better because of it, IMHO.
>
>Well hopefully you don't try all capturing moves either in qsearch,
>is kind of wasting nodes too:


Nope... haven't done that in years...  Cray Blitz used SEE to control the
q-search 20 years ago in fact...


>
>d4,d5 e4,dxe4 qh5 qxd4 qxh7 qxb2 qxh8 qxa1 qxg8 qxb1 etc.
>
>>If you want to solve tactical problems, it is probably a good idea to do them.
>>If you want to win _games_ I am not so sure.  IE when you use my quad p6/200,
>>you are about 1/2 as fast as my quad xeon, yet when we play I don't see any
>>tactical oversights by my program, generally...  And the extra depth on the
>>positional moves I get helps significantly when there are no king-chasing
>>tactics...
>>
>>
>>
>>
>>>Of course when getting 12-13 ply, chance is not big you miss tactics
>>>anyway.
>>>
>>>>>
>>>>>Is this the tradeoff of this heuristic?
>>>>>
>>>>>Is there a better way to apply the SEE rather than to all capture moves as they
>>>>>are generated?
>>>>>
>>>>>Are there other heuristics that allow these discarded moves to be found in the
>>>>>right positions?
>>>>>
>>>>>Here is an example position:
>>>>>1rr3k1/4ppb1/2q1bnp1/1p2B1Q1/6P1/2p2P2/2P1B2R/2K4R w - -
>>>>>It is from a list of mating positions posted by Dan
>>>>>
>>>>>I can find the winning mate in 0:32 without the SEE,
>>>>>and never with the SEE.
>>>>>
>>>>>Thanks in advance.
>>>>>
>>>>>William
>>>>>wbryant@ix.netcom.com



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.