Previous World Champion Engine Authors Speak Out...

Discussion of anything and everything relating to chess playing software and machines.

Moderators: bob, hgm, Harvey Williamson

Forum rules
This textbox is used to restore diagrams posted with the [d] tag before the upgrade.
Ant_Gugdin
Posts: 60
Joined: Sun Dec 26, 2010 8:13 pm

Re: Pervious World Champion Engine Authors Speak Out...

Post by Ant_Gugdin » Sat Mar 05, 2011 1:54 pm

Sean Evans wrote:I took a look at the Rybka forum to see if this topic was allowed to be posted and it was there. I was fascinated by the fan-boys trying to defend Rybka as an original program :lol:

http://rybkaforum.net/cgi-bin/rybkaforu ... ?tid=21059

Cordially,

Sean
Here's an attempt at a defence by Nelson Hernandez:
The contention here is Rajlich violated the terms of the GPL, or in my real estate analogy he was a squatter. My sense, based on the conviction of accusers, is that he probably did what was alleged. However I also perceive that this event took place over five years ago, which is an eternity in computer chess, and on top of that the passage of time in computer chess is measured not so much in years as in ELO points. If something can be described as "hundreds of ELO points ago" that's a very long time ago. It's practically ancient history. And if Rybka 1.0 Beta was indeed a Fruit derivative, that does not have much bearing at all on the current commercial version of Rybka, which undoubtedly has been overhauled from end to end several times over.
In other words: R1 beta was a rip-off but the genius of Vas has since added several hundred ELO points, so it's all OK. Doesn't this contain a rather large and unsubstantiated assumption: that the ELO advancement since R1 beta has been achieved by honest means?

If it is correct that pre-Fruit Rybkas contained stolen Crafty code, then Vas has demonstrated a clear propensity to write his engines by stealing from whatever strong open-source engines were available at the time. It follows that a comparison of later Rybka versions with whatever strong open-source engines were available at the time those engines were written may produce interesting results. Has anyone tried decompiling R3 and R4 and cross-checking against Stockfish?

Of course, other strong open-source engines were available when R4 was written. :) :) We know that IPPOLIT and Robbolito were not identical to Rybka 3 and, according to "Head Comrade Yakov," contained "improveds" which might usefully have been added to Rybka. Wouldn't it be ironic if R4 contained plagiarised IPPOLIT code?

Steve B
Posts: 3697
Joined: Tue Jul 31, 2007 2:26 pm
Contact:

Re: Pervious World Champion Engine Authors Speak Out...

Post by Steve B » Sat Mar 05, 2011 2:31 pm

Tom Barrister wrote: So if the assumptions of Mr. Hyatt and company are correct, Mr. Rajlich started his chess programming career by plagiarizing/stealing-from (insert your own word(s) if neither of those work for you) Crafty. After making some alterations, he then improved this engine by plagiarizing/stealing-from Fruit..
Remarkable development

Crafty--->Rybka (early versions)
lets call this the Crafty(Rybka version)
then
Fruit---->Crafty(Rybka version)=Rybka 1.0 beta
arrows dont do justice to these shenanigans
perhaps someone can one day draw a diagram
sort of like a Hierarchy tree(no pun intended with the Hiarcs engine..but hey..with this guy ya never know )

there is a bit of irony in all of this
Vas used to come here in the early days (pre-2006 when the forum was under the old software ) and ask alot of programming questions..invariably these questions would be answered by Bob (and others of course)
i guess Vas just decided "the hell with it "and ill just copy Crafty and go from there
in this case"there" being to copy stuff from Fruit when that came along

i propose the following if all of this is borne out by the ICGA investigation(in addition to the Rybka engine having all of its ICGA World Championship titles stripped and prize money clawed back)
firstly:
Rybka should have Bob and Fabien listed as its co-authors from hereon in

secondly ..the name "Rybka "should be changed to something else:
a few suggestions:
Crafruity
Fruafty
Crabka
Babka(l just happen to love Chocolate Babka)

Mortified Regards
Steve

Tom Barrister
Posts: 227
Joined: Tue Oct 05, 2010 3:29 pm

Re: Pervious World Champion Engine Authors Speak Out...

Post by Tom Barrister » Sat Mar 05, 2011 2:52 pm

Ant_Gugdin wrote:
In other words: R1 beta was a rip-off but the genius of Vas has since added several hundred ELO points, so it's all OK. Doesn't this contain a rather large and unsubstantiated assumption: that the ELO advancement since R1 beta has been achieved by honest means?
That sums up what I said, which is what most who support the theory have also assumed: Mr. Rajlich has probably taken things from other engines the whole time..

A few minutes ago, I made a post on the Rybka forum, summing up what I said here earlier. We'll see how long the post lasts. Assuming it isn't deleted, all of the usual lame defenses will be offered, plus all the usual finger-pointing and character-attacking, "a new poster is saying this, so it doesn't mean anything", etc.
This production is being brought to you by Rybka: "The engine made from scratch.™"

bob
Posts: 20477
Joined: Mon Feb 27, 2006 6:30 pm
Location: Birmingham, AL

Re: Pervious World Champion Engine Authors Speak Out...

Post by bob » Sat Mar 05, 2011 3:20 pm

Tom Barrister wrote:I've been following the latest few pages here, and while the technical part is beyond me, the gist of what's being discovered isn't.

From what I'm reading, the gist is that the latest beliefs are:

The very early versions of Rybka or pre-Rybka were taken near-verbatim from Crafty and then changed or added to in some way.

At some point, some/many things from Fruit were plugged in and made compatible with what was there already (i.e. Crafty).

Then it was rewritten to make the transition from mailbox to bitboard(s).

So if the assumptions of Mr. Hyatt and company are correct, Mr. Rajlich started his chess programming career by plagiarizing/stealing-from (insert your own word(s) if neither of those work for you) Crafty. After making some alterations, he then improved this engine by plagiarizing/stealing-from Fruit.

This part of your statement is not so cut-and-dried. There is no doubt that Rybka 1.6.1 had a lot of Crafty. Only question is, why was the early versions so weak when you look at CCT results. However, there was likely a pre-fruit 1.0 or whatever and we don't know much about that. Was it original, and later pre-fruit versions started over using Crafty?

Then there is the Rybka 1.6.1 to post-fruit Rybka 1.0-beta. It is not so easy to discover exactly what happened. He might have copied fruit completely, then took the bitboard parts from Crafty and merged them in. Or he might have started from Crafty and merged the critical parts of fruit in. That might be very difficult to pin down, not that it matters since either approach is still wrongt.


And now I get the impression that some of the Rajlich supporters think that Mr. Rajlich has been exonerated because it's been proven that Rybka 1.0 beta wasn't entirely based upon Fruit.

Baloney.

If Mr. Rajlich has done this not once, but twice, it would be ludicrous to believe that he hasn't been doing it all along, meaning since then as well.

In other words, it's not a stretch to believe that Rybka 2 stole ideas from some engines, Rybka 3 stole ideas from some more engines, or that Rybka 4 stole even more ideas from other engines.

It's quite possible that the mighty Rybka could be a mosaic of the best features of the various engines out there. It could be any or all of various things taken from:

1) The open source engines.

2) Closed source engines to which he somehow got the code, via others.

3) Closed source engines that were decompiled/reverse-engineered (or whatever the correct term is).

4) Ideas gleaned from reading various discussions or from talks with others.

So Mr. Rajlich's abilities as a programmer may be as a decompiler and whatever tech-speak term describes somebody who can take the ideas of others, and/or whatever works in other programs, and patch them into his engine.

For all we know, Rybka may be an aggregation of Crafty, Fruit/Toga, Zappa/(Paderborn), Shredder, Hiarcs, Fritz, Junior, Glarung/Stockfish, Spike, Pro-Deo/Rebel, Loop, Chess-Tiger, Ruffian, Jonny, Spike, Bright, Sjeng, etc.

Rybka might not have original idea one in it, save for what's needed to make the thing work.

Mr. Rajlich is a strong chess player, That would certainly help him figure out what worked best. A lot of testing of various bits and pieces would also help weed out the bad parts and validate the good.

Of course, the Rajlich supporters will rise up and say "you can't prove (whatever)!". I don't need to. The cliche "Once a thief, always a thief" comes immediately to mind. As I said earlier (and long before the allegations of (pre) Rybka containing Crafty came up), it would surprise me if Rybka didn't contain bits and pieces of several engines. Somebody who will wholesale-copy something over and claim it to be original won't usually have any scruples about doing the same in the future.

Nor would it matter if Mr. Rajlich never cheated again after version 1.0 beta. Nor would it matter if Rybka 2, 3, and/or 4 were completely rewritten from scratch, a prospect which to me seems about as likely as Osama bin Laden being invited to the White House for dinner. One violation is too many, and the brazen way in which it's been perpetuated and defended shows little or no remorse for the actions, nor any intention to admit such actions or correct them in the future.

bob
Posts: 20477
Joined: Mon Feb 27, 2006 6:30 pm
Location: Birmingham, AL

Re: Pervious World Champion Engine Authors Speak Out...

Post by bob » Sat Mar 05, 2011 3:26 pm

Sean Evans wrote:
Tom Barrister wrote:I've been following the latest few pages here, and while the technical part is beyond me, the gist of what's being discovered isn't.

From what I'm reading, the gist is that the latest beliefs are:

The very early versions of Rybka or pre-Rybka were taken near-verbatim from Crafty and then changed or added to in some way.

At some point, some/many things from Fruit were plugged in and made compatible with what was there already (i.e. Crafty).

Then it was rewritten to make the transition from mailbox to bitboard(s).

So if the assumptions of Mr. Hyatt and company are correct, Mr. Rajlich started his chess programming career by plagiarizing/stealing-from (insert your own word(s) if neither of those work for you) Crafty. After making some alterations, he then improved this engine by plagiarizing/stealing-from Fruit.

And now I get the impression that some of the Rajlich supporters think that Mr. Rajlich has been exonerated because it's been proven that Rybka 1.0 beta wasn't entirely based upon Fruit.

Baloney.

If Mr. Rajlich has done this not once, but twice, it would be ludicrous to believe that he hasn't been doing it all along, meaning since then as well.

In other words, it's not a stretch to believe that Rybka 2 stole ideas from some engines, Rybka 3 stole ideas from some more engines, or that Rybka 4 stole even more ideas from other engines.

It's quite possible that the mighty Rybka could be a mosaic of the best features of the various engines out there. It could be any or all of various things taken from:

1) The open source engines.

2) Closed source engines to which he somehow got the code, via others.

3) Closed source engines that were decompiled/reverse-engineered (or whatever the correct term is).

4) Ideas gleaned from reading various discussions or from talks with others.

So Mr. Rajlich's abilities as a programmer may be as a decompiler and whatever tech-speak term describes somebody who can take the ideas of others, and/or whatever works in other programs, and patch them into his engine.

For all we know, Rybka may be an aggregation of Crafty, Fruit/Toga, Zappa/(Paderborn), Shredder, Hiarcs, Fritz, Junior, Glarung/Stockfish, Spike, Pro-Deo/Rebel, Loop, Chess-Tiger, Ruffian, Jonny, Spike, Bright, Sjeng, etc.

Rybka might not have original idea one in it, save for what's needed to make the thing work.

Mr. Rajlich is a strong chess player, That would certainly help him figure out what worked best. A lot of testing of various bits and pieces would also help weed out the bad parts and validate the good.

Of course, the Rajlich supporters will rise up and say "you can't prove (whatever)!". I don't need to. The cliche "Once a thief, always a thief" comes immediately to mind. As I said earlier (and long before the allegations of (pre) Rybka containing Crafty came up), it would surprise me if Rybka didn't contain bits and pieces of several engines. Somebody who will wholesale-copy something over and claim it to be original won't usually have any scruples about doing the same in the future.

Nor would it matter if Mr. Rajlich never cheated again after version 1.0 beta. Nor would it matter if Rybka 2, 3, and/or 4 were completely rewritten from scratch, a prospect which to me seems about as likely as Osama bin Laden being invited to the White House for dinner. One violation is too many, and the brazen way in which it's been perpetuated and defended shows little or no remorse for the actions, nor any intention to admit such actions or correct them in the future.
Well said Tom, I think you have summarized my beliefs in one post :D

Just out of curiosity is it relatively easy to stop programmers from breaking into a chess programs software? I believe MS Windows has such protection.

Cordially,

Sean
It is probably impossible. One can encrypt the executable, and have it decrypted on-the-fly when loading it into memory, but then you can fire up the debugger and look at the decrypted code. Harder, but not impossible. The problem is that the program has to be executed. And if it has to be executed, it has to be real machine-language instructions. We once bought a 1 year compiler license while I was at USM in Hattiesburg MS. After 3 months the thing started saying the lease was out (we bought it in Early October, and on Jan 1 it quit working.) Company was not helpful. I used a hardware emulator I had written to run the thing and trace the execution flow. I found the date checking code, which was actually built at execution time so that a debugger could not find the date system call, and I "restored" the compiler to operational status for the remainder of the 1 year period.

I do not believe it is possible to produce something that will execute, and which will be impossible to look at.

K I Hyams
Posts: 3508
Joined: Fri Mar 31, 2006 9:21 pm

Re: Pervious World Champion Engine Authors Speak Out...

Post by K I Hyams » Sat Mar 05, 2011 6:44 pm

Steve B wrote: i propose the following if all of this is borne out by the ICGA investigation(in addition to the Rybka engine having all of its ICGA World Championship titles stripped and prize money clawed back)
firstly:
Rybka should have Bob and Fabien listed as its co-authors
Yes, it could be put onto his marketing material, together with a list of all of his quotes similar to and including:
Vas Rajlich wrote: all of the Rybka versions are original, in the sense that I always wrote the source code myself

Uri Blass
Posts: 8556
Joined: Wed Mar 08, 2006 11:37 pm
Location: Tel-Aviv Israel

Re: Pervious World Champion Engine Authors Speak Out...

Post by Uri Blass » Sat Mar 05, 2011 7:56 pm

Tom Barrister wrote:I've been following the latest few pages here, and while the technical part is beyond me, the gist of what's being discovered isn't.

From what I'm reading, the gist is that the latest beliefs are:

The very early versions of Rybka or pre-Rybka were taken near-verbatim from Crafty and then changed or added to in some way.

At some point, some/many things from Fruit were plugged in and made compatible with what was there already (i.e. Crafty).

Then it was rewritten to make the transition from mailbox to bitboard(s).

So if the assumptions of Mr. Hyatt and company are correct, Mr. Rajlich started his chess programming career by plagiarizing/stealing-from (insert your own word(s) if neither of those work for you) Crafty. After making some alterations, he then improved this engine by plagiarizing/stealing-from Fruit.

And now I get the impression that some of the Rajlich supporters think that Mr. Rajlich has been exonerated because it's been proven that Rybka 1.0 beta wasn't entirely based upon Fruit.

Baloney.

If Mr. Rajlich has done this not once, but twice, it would be ludicrous to believe that he hasn't been doing it all along, meaning since then as well.

In other words, it's not a stretch to believe that Rybka 2 stole ideas from some engines, Rybka 3 stole ideas from some more engines, or that Rybka 4 stole even more ideas from other engines.

It's quite possible that the mighty Rybka could be a mosaic of the best features of the various engines out there. It could be any or all of various things taken from:

1) The open source engines.

2) Closed source engines to which he somehow got the code, via others.

3) Closed source engines that were decompiled/reverse-engineered (or whatever the correct term is).

4) Ideas gleaned from reading various discussions or from talks with others.

So Mr. Rajlich's abilities as a programmer may be as a decompiler and whatever tech-speak term describes somebody who can take the ideas of others, and/or whatever works in other programs, and patch them into his engine.

For all we know, Rybka may be an aggregation of Crafty, Fruit/Toga, Zappa/(Paderborn), Shredder, Hiarcs, Fritz, Junior, Glarung/Stockfish, Spike, Pro-Deo/Rebel, Loop, Chess-Tiger, Ruffian, Jonny, Spike, Bright, Sjeng, etc.

Rybka might not have original idea one in it, save for what's needed to make the thing work.

Mr. Rajlich is a strong chess player, That would certainly help him figure out what worked best. A lot of testing of various bits and pieces would also help weed out the bad parts and validate the good.

Of course, the Rajlich supporters will rise up and say "you can't prove (whatever)!". I don't need to. The cliche "Once a thief, always a thief" comes immediately to mind. As I said earlier (and long before the allegations of (pre) Rybka containing Crafty came up), it would surprise me if Rybka didn't contain bits and pieces of several engines. Somebody who will wholesale-copy something over and claim it to be original won't usually have any scruples about doing the same in the future.

Nor would it matter if Mr. Rajlich never cheated again after version 1.0 beta. Nor would it matter if Rybka 2, 3, and/or 4 were completely rewritten from scratch, a prospect which to me seems about as likely as Osama bin Laden being invited to the White House for dinner. One violation is too many, and the brazen way in which it's been perpetuated and defended shows little or no remorse for the actions, nor any intention to admit such actions or correct them in the future.
What you say is not correct because ideas are free and you cannot steal ideas.

I am sure that other programmers also use ideas from other people and you can see a jump in strength of commercial chess programs that are not rybka after fruit appeared because fruit was free source code that people learned from it.

Shredder improved not more than 20 elo per year before fruit and in the first years after fruit shredder made bigger improvement per year and it is not only Shredder but also Fritz.

I will be surprised if Rybka include part of pieces of commercial programs that did not come with source code.

The free programs with source code are good enough and it is easier to use them.

Dirt
Posts: 2851
Joined: Wed Mar 08, 2006 9:01 pm
Location: Irvine, CA, USA

Re: Pervious World Champion Engine Authors Speak Out...

Post by Dirt » Sat Mar 05, 2011 8:53 pm

Tom Barrister wrote:In other words, it's not a stretch to believe that Rybka 2 stole ideas from some engines, Rybka 3 stole ideas from some more engines, or that Rybka 4 stole even more ideas from other engines.

It's quite possible that the mighty Rybka could be a mosaic of the best features of the various engines out there. It could be any or all of various things taken from:

1) The open source engines.

2) Closed source engines to which he somehow got the code, via others.

3) Closed source engines that were decompiled/reverse-engineered (or whatever the correct term is).

4) Ideas gleaned from reading various discussions or from talks with others.
Be careful here. This is all legal, except perhaps decompiling of closed source programs (which depends on the jurisdiction and the license it is offered under; and I've seen no evidence of Vas doing this anyhow).
Tom Barrister wrote:...whatever tech-speak term describes somebody who can take the ideas of others, and/or whatever works in other programs, and patch them into his engine.
The only term that comes to mind is "good programmer".

I'm not condoning the apparent theft of Crafty code here, nor the possible unauthorized used of Fruit code. If he had GPLed his source there would be no problem with using the Fruit code, though.

Sean Evans
Posts: 1777
Joined: Thu Jun 05, 2008 8:58 pm
Location: Canada

Re: Pervious World Champion Engine Authors Speak Out...

Post by Sean Evans » Sat Mar 05, 2011 10:59 pm

Looks like another one at Rybka forum, Jeroen really has his back up :lol:

http://rybkaforum.net/cgi-bin/rybkaforu ... ?tid=21082

bob
Posts: 20477
Joined: Mon Feb 27, 2006 6:30 pm
Location: Birmingham, AL

Re: Pervious World Champion Engine Authors Speak Out...

Post by bob » Sun Mar 06, 2011 12:05 am

Sean Evans wrote:Looks like another one at Rybka forum, Jeroen really has his back up :lol:

http://rybkaforum.net/cgi-bin/rybkaforu ... ?tid=21082
The old "everybody else has done it so it is not wrong for me to do it either." Although clearly not _everybody_ has done this...

Post Reply