Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: What constitutes a clone?

Author: Robert Hyatt

Date: 07:46:39 02/16/05

Go up one level in this thread


On February 15, 2005 at 18:38:43, John Merlino wrote:

>I'm not trying to start a brutally long thread here, but I'm just curious about
>how people feel about a particularly touchy subject -- clones. What, in your
>mind, would lead you to the conclusion that an engine is a clone?
>
>Let's forget trying to find ways to PROVE that a clone is a clone; I'm just
>trying to define one. For the sake of argument, assume that the author of this
>engine in question tells you exactly what he did and did not do, and you must
>decide whether to call it a clone or not.
>
>Here are some hypothetical questions to start the debate:
>
>If the author took Crafty and completely rewrote the evaluation code and nothing
>else, would it be a clone?
>
>How about if the author rewrote the evaluation code and search algorithm only,
>but left the hashing code, et. al.?
>
>How about if the author rewrote everything EXCEPT for the evaluation?
>
>How about if the author rewrote everything EXCEPT for Crafty's evaluation of
>passed pawns?
>
>I think you can see where I'm driving. Obviously, many engine authors have
>studied Crafty and other engines whose authors have graciously provided their
>source code. But, for an engine to not be considered a clone, does it have to be
>absolutely 100% the work of the author? (Forget about Nalimov's EGTB probing
>code and any other code that can be used with permission).
>
>Many thanks in advance for your thoughts,
>
>jm (who's just preparing for any eventuality during his upcoming stint as
>moderator :-)


Here is my thinking.

1.  The things that give a program its "personality" are the evaluation and the
search itself.  The search defines the program's tactical ability, the
evaluation defines the programs non-tactical chess playing ability.  Copying
either/both should not be allowed.

2.  Other parts such as the opening book are probably OK.  For example how many
are using a GUI that handles the book outside of the engine?  That seems
difficult to stop.  Of course a "shared opening book" is a no-no, since that is
another part of a program that defines its playing skill level.

If there is something that produces a single correct answer, such as "what is
the set of moves for this position?" or "what is the updated chess position
after making or unmaking this move?" or "what is the expected (SEE) win/loss for
capturing on this square?" or "is the king in check?" then there is little
reason to worry about those parts being copied, because copied or written from
scratch, they by necessity produce exactly the same answer.  But the eval and
search don't have that characteristic.



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.