Author: Tony Werten
Date: 12:39:10 10/06/01
Go up one level in this thread
On October 06, 2001 at 05:23:50, Tim Foden wrote: >On October 06, 2001 at 00:14:08, Robert Hyatt wrote: > >>On October 05, 2001 at 21:06:06, Paul wrote: >> >>>On October 05, 2001 at 20:42:21, Robert Hyatt wrote: >>> >>>>On October 05, 2001 at 19:15:19, Paul wrote: >>>> >>>>>On October 05, 2001 at 14:59:28, Robert Hyatt wrote: >>>>> >>>>>>On October 05, 2001 at 12:33:06, José Carlos wrote: >>>>>> >>>>>>> Due to recent posts about SEE, I've decided to implement it. I have a doubt. >>>>>>>In this position: >>>>>>> >>>>>>>[D]6rk/3n4/6p1/8/8/3B4/P2R4/7K w - - 0 1 >>>>>>> >>>>>>> white has only a capture: Bxg6. If I understood right, SEE looks only for >>>>>>>captures in one square, so it will try: Bxg6 Rxg6 and I'm losing a bishop for a >>>>>>>pawn. So SEE will tell me Bxg6 loses, and I'll discard a move that actually >>>>>>>gives me a pawn for free. Is this correct? >>>>>>> >>>>>>> José C. >>>>>> >>>>>> >>>>>>That is correct. But notice this is only "discarded" somewhere in the >>>>>>q-search (in my case.) I _never_ throw moves out in the normal search. >>>>>>This will be searched near the end, because it looks like it loses a >>>>>>piece for a pawn. But it _will_ be searched. The q-search will be wrong. >>>>>>But then it is possible that your RxN can't be played either because your >>>>>>rook might be pinned. That gets too complicated for this kind of simple/static >>>>>>analysis... >>>>>> >>>>>>The q-search is _full_ of errors, because it is by definition not exhaustive >>>>>>at all. Which means it overlooks pins. forks, skewers, etc already. What's >>>>>>one more small error tree in that forest? :) >>>>> >>>>>Bob, could you explain what you mean by 'it overlooks pins'? >>>>> >>>>>Groetjes, >>>>>Paul >>>> >>>> >>>>Sure... the typical SEE code (at least that implemented in Crafty, and what I >>>>did in Cray Blitz) looks at one specific target square for exchanges. It >>>>doesn't pay any attention to absolute or regular pins (ie if a piece is >>>>pinned on my king by your rook, I can _still_ use that piece in the sequence >>>>of captures. It is less accurate, but the errors in the q-search are so >>>>large, this is "noise" basically. >>>> >>>>In the example given at the start of this thread, we have a discovered attack >>>>that SEE misses as well. BxP, and when the opponent plays something takes >>>>bishop, he has a piece hanging to the discovered attack exposed when we moved >>>>the bishop to take the pawn. >>>> >>>>Other things include overloaded pieces. The point is that _all_ that is >>>>considered is "which pieces bear on the target square, whether they are >>>>pinned, overloaded, or anything else?" >>> >>>Ahh ... I read your statement above like this: A qsearch even without a SEE >>>overlooks pins, etc. But that can't be, or can it? >>> >>>So a qsearch without a SEE seems to be a heck of a lot more accurate than one >>>with? Reading what you say above, and thinking about it for the first time in my >>>chess programming life, I don't understand it works at all ... yet everybody's >>>using it! Hmmm ... :) >>> >>>Paul >> >> >>OK... your first conclusion is right: "A q-search without SEE is more >>accurate." But you have to add "it is also 2x-3x _slower_ because you will >>look at so many ridiculous captures, you will search a ply less deep. >> >>That is the reason we are doing this. To cut the size of the tree by tossing >>those lemon captures. > >This is why I wondered whether it would be possible to add enough intelligence >the SEE to detect (most?) situations where it could be wrong. Or to put it >another way... to understand when the situation is too complex. In these cases >it could tell the q-search that it's value is suspect. Then the q-search could >ignore the SEE in these situation, and would still be acurrate, but also still >fast. What you are looking for is SOMA and super-SOMA. A kind of SEE but then for the whole board. It has been done for shogi but not much luck in chess yet. Tony > >I still need to think about this :) > >Cheers, Tim.
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.