Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Move Generators: Are They All the Same?

Author: Uri Blass

Date: 06:43:09 11/17/02

Go up one level in this thread


On November 17, 2002 at 09:31:07, Bob Durrett wrote:

>
>Recently, I expressed my perception/impression that chess engines were all very
>similar.  But some people said that wasn't so.
>
>Now, I am interested in move generators.  I would like to know, for my own
>education, whether or not most people use the same basic ideas in producing
>their own move generators.  Are the move generators in common usage all very
>similar?

No

Movei's move generator is different.

Most move generators generate pseudo legal moves when movei generates only legal
moves.

There are also move generators that use bitboard and mve generators that use
0x88 and move generators that use none of them.

Tscp is an example for program with 0x88
gnu4chess is faster but also use 0x88 based on my understanding(I did not read
it's source code so I am not sure)
Crafty is an example for program with bitboard
Ax is an example for program that does not use 0x88 and does not use bitboard
and does not have legal move generator.

>
>Are there just a few different kinds of good move generators?  Or, are there as
>many different kinds of good move generators as there are chess engine
>programmers?

There are less good move generators than chess programmers for the simple reason
that a lot of programmers write move generators that are not good.

I believe that there are also a lot of similiar move generators but I did not
try to investigate source codes of a lot of programs to find out.

>
>Which, of the different kinds of move generators are best suited for use in
>chess engines?  Are there several different kinds of move generators which all
>do well in chess engines?
>
>Also interested in knowing how critical the move generator is to a chess engine.
> In other words, if the move generator used is inefficient or somehow not right,
>would that mean that the chess engine would never be any good?

If the move generator has serious bugs than the engine may do selective search
and not be good.

It is still possible that the move generator generates only part of the moves
and the engine is good.

An example is old commercial Junior(Junior5)

It did not generate underpromotions so Junior basically did selective search but
it did not prevent Junior to get good results in tournament.

This was corrected in Junior6 but the reason was not problems of bad results but
the fact that users did not like the fact that it ignores underpromotions.

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.