Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Forced moves

Author: Bruce Moreland

Date: 17:54:08 07/29/99

Go up one level in this thread



On July 29, 1999 at 18:58:12, Ian Osgood wrote:

>Do other program authors curtail the search when there is a forced move at the
>root?
>
>How do you detect that a root move may be forced?
>
>Could you compare the values of the best and second-best root moves after a
>search iteration to detect a forced root move?  (Granted, the second-best score
>won't be accurate due to alpha-beta, but I figure that if the difference was
>greater than a queen's value, you could still conclude that the best move was
>forced.)

The only sure way to do this is if there is only one legal move.

Any other technique is going to leave you open to cases where you can make
mistakes, and I'm sure there are cases where you'll miss a win or make a losing
move, and you won't do this if you'll think longer.

If you decide that you can live with walking into losses and missing wins, the
first question is why did you decide that you can live with this.

One reason is to impress the humans, or avoid having them call you stupid.  This
is a valid reason, in my opinion.

Another reason is that you save time on the clock this way, and in a computer vs
computer game with both sides thinking on the opponent's time, you could
initiate a sequence of instant moves this way, rather than walk into a situation
where your opponent has a sequence of instance moves.  I don't know if the
strength gain is higher from catching mistakes, or having extra time or going
for an instant-move sequence, but I'll bet on the latter.

Now the question is deciding what is forced. An obvious clue is that the search
sticks with one move more or less forever.  Another clue might be that all of
the other moves can be refuted in a small amount of time, but I haven't
experimented with this.  And if you need to restrict this because you are doing
forced moves that aren't really forced, you can restrict it so that you only do
this if the program wants to make a recapturing move.

bruce



This page took 0.03 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.