Wednesday
Jan042012
In Defense of Rajlich and Rybka
Wednesday, January 4, 2012 at 12:36AM In early 2011, Vasik Rajlich was accused by the International Computer Games Association (ICGA) of plagiarism in writing his famous chess program Rybka, he was stripped of the world championship titles won with Rybka from 2007 to 2010, and banned for life from ICGA events. (Other than that, I think they liked him.)
It has been quite a while now, but there's a new and vigorous defense of Rajlich by one Dr. Søren Riis against what the author considers ICGA overreach. Two parts are out now (there's a third part coming soon), and they can be read here and here. He makes some interesting points, and it's good that Rajlich has someone defending him.
Thoughts?
tagged
Rybka,
Vasik Rajlich,
computer chess
Rybka,
Vasik Rajlich,
computer chess
Reader Comments (9)
It would be good if Chessbase actually published the other side, instead of only presenting material that helps them sell Rybka.
[DM: True, they haven't said anything (is that really surprising?), but please take it up with ChessBase. Meanwhile, if you've got a link to an ICGA response, by all means provide it!]
I don't have much sympathy. Rajlich was given ample opportunity to defend himself and was invited repeatedly to offer a defence prior to the decision made by ICGA. He declined to do so, apart from an email to David Levy in which he stated "Rybka does not "include game-playing code written by others", aside from standard exceptions which wouldn't count as 'game-playing" and "The vague phrase "derived from game-playing code written by others" also does not in my view apply to Rybka."
By entering an ICGA event, Rajlich agreed to the regulations - he could have cleared this up immediately and easily but instead his code had to be disassembled. Rajlich has spoken about this here (www.youtube.com/watch?v=cQshTNJ4pSM) but I think there may be a petard involved...
Also, I think it's interesting Chessbase is highlighting this now, given their silence on the ICGA decision - which I found surprising at the time. Rajlich could have nipped all this in the bud and easily proved his innocence by showing the ICGA his source, instead, we now have chess programmers vs chess programmers six months after the fact.
In the meantime, the train has left the station and Houdini alighted.
He makes a good case going after rule #2 and the evidence here. That said, I don't know nearly enough about engines to judge some of his statements. His point on algorithmic overlap (if true) puts a serious dent in any kind of plagiarism proof in computer chess.
Lache though? Nah, 4 years is not that unreasonable.
Apparently the author is a moderator on the Rybka forum, so I find it hard to see his articles as any more free from bias than the bias he claims prejudiced the ICGA's decision. At least the signers of the report identified their affiliations...
Moreover, from reading the articles so far, he does not address all of the points raised in the report. What he does mention, he repeatedly makes light of the evidence while ignoring the refutations to his arguments that have been available and presented for months. It's the kind of petty, one-sided editorial you'd usually find in the political arena.
To quote Dr. Hyatt's reaction, "His comments in this 'report' are identical to comments he has been making on the Rybka forum for months. Like 'everybody copies ideas, so all programs are derivatives' or 'Vas only copied ideas' even though code copying is presented in the report. Or 'Rybka 1.6.1 doesn't count because that was prior to the first commercial version'. No reason WHY it 'doesn't count' except that it is highly damning and 100% convincing. So with no way to refute it, just ignore/discount it as not important. He has lots of factual errors in his stuff, going back to the original 'we did not examine a version that competed' even though we know that 2.3.2a DID compete as the operator (Lukas C.) clearly stated this while he was in the tournament, and posted same on the Rybka forum where it was found and pointed out last year when this erupted... In short, nothing new. Same old, same old..."
To quickly clarify your last sentence, Rajlich was never defenseless. The ICGA and those independently involved in compiling the evidence in the report repeatedly contacted Rajlich months in advance to present some defense, to repudiate or refute or clarify or contextualize any of the evidence that was being found and presented, but he never responded. Any appearance of one-sidedness to the publication of the report or the ICGA's verdict is strictly because of Rajlich's staunch policy of nolo contendere throughout the whole proceedings. It seems that if the evidence were so weak, it would have been much easier for Rajlich to defend himself long before any verdict was rendered.
Just three thoughts:
Mr Riis is/was a moderator of the official Rykba forum.
Blatantly Chessbase is not a chess-news site, but rather a self-serving Rykba-vendor.
Nowadays there are (at least two) stronger engines.
[DM: Ouch, not a lot of ChessBase love here! Obviously they have an interest in the matter, and I agree that Riis's relationship with Rybka (which may not be a paying one) ought to be mentioned as well. Still, this is ad hominem, as are Riis's remarks about the ICGA's vested interests.]
I read the article and thought it had merit. I had trouble believing that Rybka got to be the very best computer playing software by stealing code.from an open source. Having some experience with writing code, professionals do not reinvent the wheel every time they do a program. What counts is how the new innovative things are done. Yes you can just copy someone else's code line for line change a few minor things and pretend it is something new. Which is wrong. But if you take something that exists and provide a major improvement that is done every day. All engineering whether software or hardware relies on the use of public domain information.I realize that companies do there best to minimize competition by suing them for copyright infringement. However, most of time it only makes lawyers rich and does little to slow their competitors.
I enjoy trying out different engines, both commercial and freeware (and I do miss the TCEC site). Very few ever think alike when the positions are unclear and slightly in favor of oneside or the other. Even when there are clear cut winning lines, the best programs will often struggle to find the best lines even with the same resources. This shows me how different the programs are.
Dr. Søren Riis best point was that Rybka was so superior to everything else for quite a while that what ever was similar to other programs could not have been significant.
As I mentioned in another post I used to work in several large banks in IT.
Whenever we were audited (regularly)... the auditors *had to* find something, otherwise it would look like they're not doing their job.
Also my experience with these big bureaucracies (i.e. auditors as well) is "kafka-esque"... they usually punish the wrong things/people.
(e.g. we were pulled up on things we were doing *honestly/right thing practically* to improve security that we could have easily hidden (and put the security at risk) and not been "caught out on", we explained everything to the auditors but they just see things in terms of their quotas and ticks and crosses)
Probably the 13 competitors all signing that document put big pressure on the auditors to "find something".. (auditors also have their masters).
Auditors are a bit like bad teachers, in the sense that if they were brilliant in their field (in this case IT) they'd be out doing what the rybka programmer is doing, not ticking and crossing boxes in some meaningless excel spreadsheet.
They were both interesting articles. Some of what he had to say was rather compelling (e.g., the "family tree" of engines based on how they all evaluate a set of benchmark positions, and how Rajlich was openly giving interviews way back when where he discussed having studied the program he was alleged to have copied and described what he had learned about its algorithms), some of it not so much (e.g., the rule was silly and outdated at the time, and subsequent engines copied Rybka far more than Rybka could possibly have copied Fruit -- ironic, but what's that got to do with the issue at hand except maybe all the engines since 2006 should be stripped and barred for life...).
Without reading what the other side had to say about it (the author's summary of that was very condensed), it's hard to make a judgment one way or the other. It seems like it would be an extremely hard thing to prove one way or the other unless you had both source codes in hand and could examine them line by line. The article was completely silent on this point, which seems like the only truly relevant one.
=wild=
I recall awhile ago you shared a link to an interview where Rajlich explains why he chose not to participate in the procedures to defend himself during the investigation. To my (admittedly limited) knowledge his statements about ICGA in that interview remain unchallenged and unaddressed by the ICGA, and until that changes I see no reason not to give him the benefit of the doubt. I agree with Viis' statement that it's wrong to personify actions and imply character flaws without a high standard of evidence: do not attribute to malice that which could be attributed to ignorance.
On the other hand, I believe it would benefit Rajlich and friends to stop making unsolicited (i.e. not directly addressing the ICGA's claims) statements such as, "Rybka is an original program by any reasonable standard," unless Rajlich wants public attention and wants the public to get involved in the ICGA vs. Rajlich discussions.
It's my personal opinion that Rajlich has made a fascinating contribution to chess, that the ICGA may have mishandled the investigation, and that therefore claims that Rajlich's work is unoriginal ought to be null and void. Even supposing that playing parts of Rybka were not original (and therefore plagarized), in that scenario Rajlich could still be commended for the non-trivial things he accomplished such as optimizing Rybka and contributing to our understanding of chess programs and computers in general.