Slashdot videos: Now with more Slashdot!

View

Discuss

Share

We've improved Slashdot's video section; now you can view our video interviews, product close-ups and site visits with all the usual Slashdot options to comment, share, etc. No more walled garden! It's a work in progress -- we hope you'll check it out (Learn more about the recent updates).

An anonymous reader writes "Rybka, the winner of the last four World Computer Chess Championships, has been found guilty by a panel of 34 chess engine programmers of plagiarizing two open-source chess engines: Crafty and Fruit. The governing body of the WCCC, the International Computer Games Association, is even demanding that Rybka's author — the international chess master and MIT graduate Vasik Rajlich — returns the trophies and prize money that he fraudulently won. Rybka will no longer be allowed to compete in the World Championships, and the ICGA is asking other tournaments around the world to do the same."

Sounds like he at least made improvements to them, and isn't that what open source is supposed to be all about? In fact, the article even acknowledges "ICGA isn’t even disqualifying Rybka because it copies Fruit — rather, it’s simply upset that Rajlich claims his engine is original, and refuses to give credit where it’s due." Okay, so maybe he should have given the other coders credit, but why should that disqualify him from winning? He still won. He didn't cheat. He didn't steal the code from the other engines (it was open source). His biggest offense is denying the other coders credit.

I think he should have to share the prize with the other coders (since they contributed code to the final product). But it still doesn't take away from the fact that his fork won. It doesn't justify taking away the win, as if he had cheated. His engine is still the best, open source code and all.

And, nothing against FOSS, but why on earth would you even release code designed for competition as open source, BTW? Aren't you essentially unzipping your fly and telling you competitors all your secrets? Couldn't releasing the source code wait until after the software was "retired" from competition?

If he refused to disclose that he used open source code then he most likely violated the terms of the open source license and therefore did indeed cheat. Open Source [wikipedia.org] is not the same as Public Domain [wikipedia.org].

TFA points out that Rajlich could exonerate himself by showing the source code, but then says that this isn't possible:

It’s a tricky situation, though: with Rybka now outlawed from the WCCC, and with the ICGA asking other tournaments to block its entry, the only real way Rajlich and the rest of the Rybka team can clear their names is to show their source code — a financially untenable move. In short, Rybka is stuck between a rock and a hard place.

This doesn't really hold up. Yes, Rajlich is trying to sell his software, so he can't open-source it to the world. But to exonerate himself he doesn't have to release the source-code to the world; he simply needs to arrange for the source code to be shown to the expert panel. As long as they can both confirm that: (1) the provided source compiles to the binary used in competition, and (2) there is no substantial overlap between the provided source and other known codebases, then he's in the clear. The expert panel doesn't have to retain copies of the source code beyond the review period (all copies could be destroyed).

So, really, it should be possible for Rajlich to demonstrate the originality of his code without releasing it or decreasing his commercial opportunities. The fact that he hasn't done this is strange. In that sense, it sounds to me like the ICGA made the right decision here.

To come to this rather epic and libelous conclusion, the ICGA assembled a 34-person panel of programmers who have competed in past championships to analyze Rybka. Unfortunately, Rybka’s source code has never been available, so reverse engineering and straight-up move-evaluation comparison was used to analyze the originality of Rajlich’s chess engine. The panel unanimously agreed that newer versions of Rybka are based on Fruit — and worse, that the early beta versions were based on Crafty, another open-source chess engine.

So in other words:- They empaneled as the "jury" a bunch of assholes who were predisposed to want Rajlich banned from competition (he kept beating them, four competitions in a row).- They based their decision on "move evaluation", a decidedly touchy subject given that in any Chess situation, it should be theoretically possible to find an optimal move and the more optimal the engines, the more optimal moves they'll make.

So, people with a motive to try to force Rajlich into a no-win situation got a chance to... hey look, a no-win situation!

It’s a tricky situation, though: with Rybka now outlawed from the WCCC, and with the ICGA asking other tournaments to block its entry, the only real way Rajlich and the rest of the Rybka team can clear their names is to show their source code — a financially untenable move. In short, Rybka is stuck between a rock and a hard place.

ICGA fucked up royally. What they SHOULD have done is demanded a closed-doors, clean-room evaluation of the Rybka source code. Instead, they're playing the "burn him at the stake" card, banning him from ever competing again and demanding he "come clean" when for all they know, his source is original and just plays better chess than the other, also-highly-optimized (and likely to make the same "optimal moves" on basic chess theory for the most part) competitors.

As someone who is no chess master but can count, you are wrong. Those horsies move in Ls and each one has two possible Ls he could move into . Plus the pawns can move one spot or two spots. So that is 8 more moves. Up to 20 already. There might be more, but I am too busy playing Go to count.