Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: No explosions

Author: Uri Blass

Date: 03:55:14 01/13/02

Go up one level in this thread


On January 13, 2002 at 06:48:22, Sune Fischer wrote:

>On January 13, 2002 at 05:14:44, Uri Blass wrote:
>
>>>>If you find the legal moves incrementally, how can you check for
>>>>numberofmoves==1 at the first move, or do you simply forget about it then?
>>>>
>>>
>>>In the case of check, I create only check evasions, that is, _real_ legal moves.
>>>Partly because it is faster for move generation, and partly because it makes the
>>>check for this extension a lot faster.
>>>
>>>>And why the inCheck and numberOfMoves==1, can't you forget about the inCheck and
>>>>just extend +1 if there is only one legal move?
>>>
>>>No because I only do it of there's a check also. I don't generate real legal
>>>moves at all nodes, only check nodes.
>>
>>If I understand correctly numberofMoves means number of legal moves when you are
>>in check
>
>Yes
>
>>and number of pseudo legal moves when you are not in check.
>
>I'm not sure how he does that, I think he finds the moves incrementally which is
>faster than generating all the moves. It would be a problem then to know how
>many possible moves there are, which is why he needs the inCheck condition.
>
>I do it differently, I almost never generate only legal moves. I simply do not
>know when the king is in check (I don't use bitboards for movegen), so I have to
>go one ply deeper to see if the king is captured. This will lead to trouble at
>some point, so I'm thinking of changing it.
>
>>In this case you still can extend +1 only if NumberofMoves=1 because the only
>>case when Numberofmoves=1 the number of legal moves is always at most 1(it can
>>be also 0 in some stalemate situations when there is only 1 pseudo legal move)
>
>There will be more than 1 pseudo legal move if there are more than one attacked
>square around the king.

I understand it but my point is that numberofmoves=1 when the king is not in
check means exactly one pseudolegal move and it means at most 1 legal move.

Uri



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.