Author: Uri Blass
Date: 04:24:32 01/13/02
Go up one level in this thread
On January 13, 2002 at 07:11:31, Sune Fischer wrote: >On January 13, 2002 at 06:55:14, Uri Blass wrote: > >>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. > >But how will he now that numberofmoves=1 if he finds them incrementally? >If king not inCheck -> first try the hashmove, then...... >When he is about to try the hashmove, he has no idea about the number of pseudo >moves. You are right I undertsand the problem and in this case numberofmoves may be 1 only because of the fact that he did not generate all the pseudo legal moves. 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.