Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: What constitutes a clone?

Author: Mridul Muralidharan

Date: 22:39:47 02/15/05

Go up one level in this thread


On February 15, 2005 at 21:08:08, Andrew Wagner wrote:

>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.
>
>[snip]
>
>To add a completely useless illustration, this reminds me of an age-old riddle.
>A bald man is someone who has no hair. What about the person with one hair?
>Well, ok, for all intents and purposes, he's bald too. What about the guy with
>two hairs? You gotta admit, we would consider him bald, too. And you can keep
>going on like this. Where's the line?
>
>As was pointed out elsewhere in this thread, you can't "steal" a line like 'int
>i;'. That's just standard coding practice. But I think if there's some concept
>that an engine uses uniquely, that you use without giving credit, that's a
>violation of the GNU licensing agreement. I don't know that you can call the
>whole engine a clone, but that part of it is certainly inappropriate.

Good point - and I like the analogy :)
In computer chess especially , there are hardly any "secrets" - yes there are
tuning params , variations of move ordering , pruning , etc - but all techniques
are "known" (well , commercials might have something "interesting" ;) )
Eval is also an approximation and gross simplification of what humans consider.
So when will you start accusing someone of cloning ?
I think only the laziest of programmers who are cloners will get caught - sadly
:( with some imagination , I am pretty sure that even with most of the code
intact , you can make an undetectable clone of fruit or gnuchess or crafty.

Mridul



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.