Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Blathy problem - mate in 16

Author: Ross Boyd

Date: 15:54:25 04/17/05

Go up one level in this thread


On April 17, 2005 at 11:15:42, Mike Byrne wrote:

>On April 17, 2005 at 04:41:14, John J. J. Smith wrote:
>
>>On April 17, 2005 at 00:20:21, Mike Byrne wrote:
>>
>>>On April 16, 2005 at 22:13:45, John J. J. Smith wrote:
>>>
>>>>[d]8/8/8/2p5/1pp5/brpp4/qpprpK1P/1nkbn3 w - - 0 1
>>>>
>>>>This seems to be a difficult problem for most engines. The key move is 2.h3.
>>>>2.h4 only leads to a draw
>>>
>>>Added a little code to Crafty handle the case where the one side has only one
>>>piece to disable null move.
>>>
>>What exactly did you do? Crafty 19.19 (Chessbase version) can't solve this. Nor
>>can Fritz and Junior.
>
>The position is unique and is a null move killer.   Black has_ALL_of_its_pieces
>- but can just shuffle the Q around.  White has one pawn but can change the
>tempo by moving the pawn 1 or two squares.
>
>Any program that solves this either does not have null move or turns it off for
>this position.
>
>You can have Crafty solve this by turning null move off manually --
>all the line below without the quote to your crafty.rc file
>"sel 0 0"   (note: if you leave this in crafty.rc for regular game play - crafty
>will play weaker.  It is a good tool to use see if a problem why a position is
>not solved to see if the search is being impacted by null move.   The normal
>setting is "sel 2 3")
>
>But what I did was added code that says if one side has just one piece ,
>do_null=0 and have it skip the null move code in search.c if do_null==0.
>
>I can see why an author would not bother even considering changing code for this
>oddball position.  Most modern programs do use null move of some sort, null move
>does allow programs to play stronger in most positions.  Most program do turn
>off null move with very few pieces on the board.  This is the extreme case where
>the potentially winning side has just one piece and the losing side still has
>ALL of its pieces.

Which makes me think a low legal move count would be a better indicator of when
to avoid null moving, rather than the usual "if (total_side_to_move_pieces < x)"
condition. I think Movei generates legal moves and so is able to use this
method.

Food for thought,

Ross


> The code change I made has little practicality in real chess
>play as null move is usually inactivated with just a few pieces on the board
>anyway and that covers most situations which occur in a real game where one side
>has one piece.
>
>
>Best,
>
>Michael



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.