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.
bob
Posts: 20639
Joined: Mon Feb 27, 2006 6:30 pm
Location: Birmingham, AL

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

Post by bob » Thu Mar 03, 2011 3:29 am

playjunior wrote:
bob wrote:
playjunior wrote:I agree that Hyatt being in the committee seems wrong.

Hyatt to me is one of the main accusers, he has systematically gathered, structured and argued for the evidence that Rybka is a Fruit clone.

People who have such direct involvement (on any side) cannot be considered "impartial judges".

The best would be if they have some scientists/authors from related fields, like go/checkers/whatever who can fully comprehend the evidence presented but do not have any previous involvement in the issue, whatsoever.
This is what has been wrong with this process from the beginning. You are assuming facts not in evidence. I am not a judge. I will not decide innocence or guilt. I will not hand down a sentence. I am simply supposed to keep the investigation on the topic of "Did Vas copy parts of Fruit (or other programs) verbatim?" We are starting with Rybka 1 beta, but that is not the only version that will be addressed. We may go back to earlier versions, or to later versions (thru Rybka 4) since all have competed.

The panel that will do this is quite large and consists of a large number of programmers. The three "secretariat" members are simply there to try to keep the discussion limited to the specific topic of the investigation, and prevent all the other noise that always shows up here on CCC from obfuscating the technical merits of the arguments being made.

But nobody is paying attention to the document David sent out describing our function. They are making up their own incorrect assumptions and then complaining that those are not fair. However, they are also not real.
In U.S. where you are from to the best of my knowledge, the judge does not decide innocence or guilt, the jury does. The judge is largely responsible for the procedure, as you are in this case.

If you were to stand a trial, would you agree to have as the person responsible for moderating a fair and impartial process someone who has actively gathered, structured and argued on the prosecution side?
That is pretty much the way it works. Who do you think pays the judge? Do you find them in the same building with the district attorney that prosecutes the case? In some types of cases a judge does decide the result. In a jury trial he does not.


Surely there are many specialists who haven't had such a direct involvement in accusing Rajlich, and who could be a moderator? Many wouldn't have your credentials in the field but is that so crucial for moderation? So the question here is: why not someone else as a judge? After years of finger-pointing there at last is a hope for a credible process; by sitting as a judge you are giving the other party the opportunity to call this a witch hunt and dismiss the whole process, on the objective basis that one of the main accusers is sitting as a judge!
To sit on a bench, or try a case, you have to have the proper credentials, experience, training, background, education, etc. I would not want someone off the street to serve as judge for any trial involving me. I'd want a judge that is familiar with the law. There are always checks and balances. My only goal here is to make certain all the evidence is presented, and that Vas has a chance to respond point by point. And for this tete' a tete' to continue until everything that needs saying has been said, by both sides. Then the ICGA will have the ball kicked into their court to decide what, if anything, should be done...

I want judges that are willing to punish. I want prosecutors that diligently try to prove a defendant guilty. I want a vigorous defense of that defendant so that at the end of the day, hopefully justice will be served. At some point, you have to trust the system, and the people involved. In this case I believe there will be enough evidence available that the ICGA won't have to give much thought to innocence or guilt, and that they will have access to all the mitigating arguments the defense might present. At that point, it is their ballgame.

Darkmoon
Posts: 191
Joined: Mon Dec 14, 2009 11:48 pm

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

Post by Darkmoon » Thu Mar 03, 2011 4:34 am

First off- Mr. Walkins is not "BB" who I believe to be Shaun Press. I stated on Hiarcs forum, 99.9 % of "BB's" posts on Rybka forum were from Australia. It is apparent that Mr. Walkins is responsible for the collating of the data and this panel still will need to produce the originate of the study for Q&A.

I also find it reprehensible that these hearing are being conducted out of public view.

And, I cannot wait to hear the sidebar blather that these panelist will produce now and during the hearings to justify their own egoism.


http://chessexpress.blogspot.com/2007/0 ... n-bbs.html

benstoker
Posts: 342
Joined: Tue Jan 19, 2010 1:05 am

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

Post by benstoker » Thu Mar 03, 2011 4:59 am

playjunior wrote:
bob wrote:
playjunior wrote:I agree that Hyatt being in the committee seems wrong.

Hyatt to me is one of the main accusers, he has systematically gathered, structured and argued for the evidence that Rybka is a Fruit clone.

People who have such direct involvement (on any side) cannot be considered "impartial judges".

The best would be if they have some scientists/authors from related fields, like go/checkers/whatever who can fully comprehend the evidence presented but do not have any previous involvement in the issue, whatsoever.
This is what has been wrong with this process from the beginning. You are assuming facts not in evidence. I am not a judge. I will not decide innocence or guilt. I will not hand down a sentence. I am simply supposed to keep the investigation on the topic of "Did Vas copy parts of Fruit (or other programs) verbatim?" We are starting with Rybka 1 beta, but that is not the only version that will be addressed. We may go back to earlier versions, or to later versions (thru Rybka 4) since all have competed.

The panel that will do this is quite large and consists of a large number of programmers. The three "secretariat" members are simply there to try to keep the discussion limited to the specific topic of the investigation, and prevent all the other noise that always shows up here on CCC from obfuscating the technical merits of the arguments being made.

But nobody is paying attention to the document David sent out describing our function. They are making up their own incorrect assumptions and then complaining that those are not fair. However, they are also not real.
In U.S. where you are from to the best of my knowledge, the judge does not decide innocence or guilt, the jury does. The judge is largely responsible for the procedure, as you are in this case.

If you were to stand a trial, would you agree to have as the person responsible for moderating a fair and impartial process someone who has actively gathered, structured and argued on the prosecution side?

Surely there are many specialists who haven't had such a direct involvement in accusing Rajlich, and who could be a moderator? Many wouldn't have your credentials in the field but is that so crucial for moderation? So the question here is: why not someone else as a judge? After years of finger-pointing there at last is a hope for a credible process; by sitting as a judge you are giving the other party the opportunity to call this a witch hunt and dismiss the whole process, on the objective basis that one of the main accusers is sitting as a judge!
That's why there are THREE panelists. Did you know that committees in Congress are comprised of not just Republicans, but also Democrats? Isn't that amazing. Did you know that extremely biased judges sit on appellate courts? Guess what - there's never just ONE appellate judge presiding over a case. At a minimum three, up to 9. Guess what. The US Supreme Court has 9 justices. Guess what. Most city councils have extremely biased councilmembers. Imagine that! Guess what. There's always more than one councilmember! Ain't that nifty! Guess what. Regulatory agency administrative hearings are usually presided over by no more than and not less than - count 'em up dawg - 3, that's THREE, administrative hearing officers. Ain't that just nifty. I wonder why society seems to always have more than one judge, or one judge whose decisions are subject to review by a panel of other judges. Hmmm. I wonder what that's all about! Could it be that society has come to expect people are biased. Is bias wrong? Or, does the adversarial process, the argument and counterargument between extremely biased, opposing views produce the closest we can hope to get to accepted truth in judgment? Indeed, this process will be all the MORE reliable BECAUSE Hyatt is on the panel. We KNOW that at least ONE panelist will not be a mere shill, stooge, comrade, apparatchik for monied interests. That is a very satisfying fact. And, we KNOW that the monied interests, fanboys, and just plain ol' reasonable folk will speak up and challenge the evidence presented, and judgments or opinions offered, and, yes, any bias perceived. There is bias everywhere! No escape from bias.

So, shut up about bias.

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

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

Post by Tom Barrister » Thu Mar 03, 2011 5:10 am

Even though the threaded reply will appear to be to Mr. Stoker, this is a general reply to the thread.

I would be surprised if Mr. Rajlich replies at all to these proceedings. I would be tenfold more surprised if he admits to any violations.

The reason is that, as Mr. Speight noted, being found in violation by a group of computer programmers and banned from tournament participation is a far cry from losing a lawsuit for damages in a civil court. This is where the problem lies for Mr. Rajlich: if he participates in the proceedings and admits he copied Fruit or Crafty or anything else in violation of the GPL, copyright, etc.., he's given a potential litigant (i.e. Mr. Letouzey, the Free Software Foundation, etc.) a powerful tool to use in court. If he participates and denies everything, and he's sued later and it's proven that he lied, it can weigh against him as far as damages go. The safest bet for Mr. Rajlich is to simply clam up and refuse to play----a conclusion that I'm sure he and/or his lawyers came to long ago.
This production is being brought to you by Rybka: "The engine made from scratch.™"

Darkmoon
Posts: 191
Joined: Mon Dec 14, 2009 11:48 pm

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

Post by Darkmoon » Thu Mar 03, 2011 6:22 am

bob wrote:
Ant_Gugdin wrote:
geots wrote:You have said that even if found innocent, he is still guilty in your eyes. I will go you one better. If he is found guilty- he is still innocent in my eyes. Only the victim of being railroaded by a bunch of second place finishers.
What is the basis for your certainty that Vas is innocent? I imagine that Bob would say he is certain of guilt because he has reviewed the evidence and drawn conclusions from it. Have you?

That said, I think there are legitimate objections to Bob's role given that he has already expressed strong views on the subject.
Again, for the record, I am neither judge or jury. Just someone (one of three) that makes sure that every bit of evidence is brought into public view, and that Vas can, if he chooses, address each and every piece of evidence, point by point. And then those presenting the evidence can respond. And repeat until nothing new comes up. We don't need impartiality. We need fairness. Anyone that believes I am not fair in such undertakings is simply sadly mistaken. I am not going to hide evidence, or disallow Vas (or others) to respond to each piece of evidence presented. It _will_ be fair. I don't believe you could find any impartial people now since the evidence has been under discussion for a couple of years.

As a human, I am quite capable of looking at something critically, and the concluding "Bob, you made a mistake there." When that is justified. But remember, here, I was run over by a red volkswagon. I got the license plate. A dozen people caught this on video. We have clear facial photographs. We have fingerprints from the steel bar that the driver used to bang on me as he ran over me. We have a hundred eye witnesses. We found the volkswagon at the person's house. Car is titled to him. His fingerprints inside. People saw him arrive home at a time consistent with leaving the accident scene and driving directly home. My blood on the front bumper. My fingerprints on the hood where I braced with my hands as I was hit. Etc. So I _know_ exactly what happened. No subjective guesswork. Just a clear and compelling trail from accident to person driving. That's what we have here. Clear and compelling evidence. And now we have evidence that before he copied Fruit, he copied a version of Crafty between version 16.0 and 19.0. We will quantify this more accurately. There is a lot that will be seen that has not been common knowledge yet. I am certain that a rational person, after looking at what we have already seen, much less what else will be shown, will be unable to conclude anything but "something stinks here. Badly..."

Do you really want me to somehow believe that the person that ran over me is innocent, with all the evidence we had? Yet I could still run a perfectly fair trial if called on to do so, giving him every opportunity to address each point of evidence and discredit it if possible.
But you have influence over those who will make juridical decisions - and you are on a panel that has yet to even convene. I think you couldn't help yourself- and, now you're trying to talk your way out of an extremely pejorative situation where you have obviously compromised yourself and the panel.

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

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

Post by Uri Blass » Thu Mar 03, 2011 6:24 am

bob wrote:
SuneF wrote:
mhull wrote: In programming, especially a chess program, adopting significantly large and critical blocks of very specific symbiotic logic and factored weights verbatim is only permissible in an acknowledged code fork. It certainly couldn't pass the smell test as an original work. And the distance between subsequent versions to the plagiarized starting point will hardly matter (to most people) if a programmer is shown to be so dishonest.
Ordinarily yes. What makes the Rybka situation special is that Vas couldn't have adopted "significantly large and critical blocks of very specific symbiotic logic and factored weights verbatim" as Rybka is bitboard and Fruit is mailbox. At least for the evaluation and move generation code it would have to be coded completely different - that is a fact.
NO it isn't "a fact". There are parts of my eval that are not "bitboard-centric". Low-level stuff is, but not all. Ditto for move generation. One can hide much with macros.

And then there is the issue of hashing, which would be the same in the eval whether you use bitboards or not (pawn hash, perhaps king safety as some use). And then we get to critical things like search, move ordering, pruning, reductions, extensions. He could have copied significant parts. And you are overlooking the issue that we now know that he copied parts of Crafty, which _is_ a bitboard program. Suddenly the changes to Fruit's eval don't appear to be so difficult since all the support code may well have been copied (we are quantifying this as I write.)



We also know that Rybka has new important material terms in the evaluation and the search seems original as well.
"seems" original? How would one conclude that. PVs, depth and node counts are intentionally misrepresented to hide search details. Every think to wonder "why"???

What they need to prove then, is either that some other parts of the engine contains large parts of copied code (for instance the hashing or protocol) or that large parts of the bitboard code is functionally equivalent to the mailbox code. The latter is a bit problematic however, as most engines are known to contain certain large parts of functionally equivalent codes, like for instance the SEE, Qsearch, Nullmove and so forth. No one would claim Fruit was a derivative of Crafty just because it had sections of nullmove code that was functionally equivalent to Crafty for instance.
More is coming.


What annoys me most about this whole issue is that we do not have objective means and rules to specify what is legal to copy and what is not. It's always a judgement call in every single case. This makes the whole process too ad hoc and un-scientific IMHO.
At the basic level, nothing can be copied. We have at least agreed previously that everyone can use egtb.cpp if they get Eugene's permission. Ditto for my rotated bitboard move generation (and now Pradu's magic move generation code). Hopefully as this progresses, we can finally formalize a statement about this specific issue. I still like my idea of it is ok to copy F(x) where we have a relationship Y = F(X) where for each unique value of X, there is one and only one unique value Y that the function can return. Move generators. SEE. SAN input/output. Not evaluation, or search, or move ordering, or hashing, or any of a number of other things. Whether everyone will agree to that or not is unknown, but it offers a pretty precise definition that any decent programmer can understand and follow.

The process should be reversed, first we need to establish what is legal and what is not, then we need to decide how to punish the rule breakers and only then does it make sense to begin considering the individual engines. Otherwise we are having a trial and jury with no accepted laws to judge by.
For fruit it is easier. _nothing_ can be copied because of the GPL. Unless the copied/modified source is also released, which it was not.
I do not think that move generator is something that you have only one input one output because the move generator clearly has effect on move ordering.

Do you generate queen move first or rook move first or maybe dependent on the position?

You can replace the order of moves after you generate them but it takes time and if 2 moves have equal score for move ordering they are going to be searched at the order you generated them so move generator clearly effect move ordering.

benstoker
Posts: 342
Joined: Tue Jan 19, 2010 1:05 am

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

Post by benstoker » Thu Mar 03, 2011 6:26 am

Tom Barrister wrote:Even though the threaded reply will appear to be to Mr. Stoker, this is a general reply to the thread.

I would be surprised if Mr. Rajlich replies at all to these proceedings. I would be tenfold more surprised if he admits to any violations.

The reason is that, as Mr. Speight noted, being found in violation by a group of computer programmers and banned from tournament participation is a far cry from losing a lawsuit for damages in a civil court. This is where the problem lies for Mr. Rajlich: if he participates in the proceedings and admits he copied Fruit or Crafty or anything else in violation of the GPL, copyright, etc.., he's given a potential litigant (i.e. Mr. Letouzey, the Free Software Foundation, etc.) a powerful tool to use in court. If he participates and denies everything, and he's sued later and it's proven that he lied, it can weigh against him as far as damages go. The safest bet for Mr. Rajlich is to simply clam up and refuse to play----a conclusion that I'm sure he and/or his lawyers came to long ago.
GONG! There's only one room in this building. He can't hide behind a planter.

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

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

Post by Uri Blass » Thu Mar 03, 2011 6:44 am

bob wrote:
Uri Blass wrote:
Tom Barrister wrote:
jdart wrote:
mhull wrote: No matter how much it morphed from version 1, it still stands upon the shoulders of Fruit 2.1. Without the Fruit fundamentals it would not be where it is.
And that is probably true of most strong engines now. I think few have not borrowed some algorithm or trick from Fruit. But only one is being accused of cloning.

--Jon
There's a difference between borrowing an idea (a "trick" as you say), and using the verbatim engine as a starting point, as it's been alleged that Mr. Rajlich has done. The question for engines as a whole is: where is the line drawn, e.g. what constitutes a violation?
The claim is not that Rajlich used the full fruit engine as a starting point but that part of the code of Rybka is copied from fruit.

I do not express opinion about that claim but it is impossible to prove that Rybka used fruit as a starting point when it is clear that most of the code is clearly different(move generator for example is clearly different than fruit and many other parts of the code are also different because they are dependent on the structure of the move generator).

I express no opinion if significant part is the same but even in this case this significant part is not most of the code.
What if the move generator comes from Crafty? We already have some evidence of other parts of Crafty being directly copied in the pre-fruit versions. It might be worse than you think.
I believe that Rybka was not free in the pre-fruit versions.
How did you get the source of Rybka before fruit.

Did somebody who test rybka at that time send you the program?

gerold
Posts: 10121
Joined: Wed Mar 08, 2006 11:57 pm
Location: van buren,missouri

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

Post by gerold » Thu Mar 03, 2011 6:46 am

benstoker wrote:
Tom Barrister wrote:Even though the threaded reply will appear to be to Mr. Stoker, this is a general reply to the thread.

I would be surprised if Mr. Rajlich replies at all to these proceedings. I would be tenfold more surprised if he admits to any violations.

The reason is that, as Mr. Speight noted, being found in violation by a group of computer programmers and banned from tournament participation is a far cry from losing a lawsuit for damages in a civil court. This is where the problem lies for Mr. Rajlich: if he participates in the proceedings and admits he copied Fruit or Crafty or anything else in violation of the GPL, copyright, etc.., he's given a potential litigant (i.e. Mr. Letouzey, the Free Software Foundation, etc.) a powerful tool to use in court. If he participates and denies everything, and he's sued later and it's proven that he lied, it can weigh against him as far as damages go. The safest bet for Mr. Rajlich is to simply clam up and refuse to play----a conclusion that I'm sure he and/or his lawyers came to long ago.
GONG! There's only one room in this building. He can't hide behind a planter.
He may wait awhile and sue some people for lost of business and win. :- }

mar
Posts: 2007
Joined: Fri Nov 26, 2010 1:00 pm
Location: Czech Republic
Full name: Martin Sedlak

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

Post by mar » Thu Mar 03, 2011 9:20 am

bob wrote:
Uri Blass wrote:
Tom Barrister wrote:
jdart wrote:
mhull wrote: No matter how much it morphed from version 1, it still stands upon the shoulders of Fruit 2.1. Without the Fruit fundamentals it would not be where it is.
And that is probably true of most strong engines now. I think few have not borrowed some algorithm or trick from Fruit. But only one is being accused of cloning.

--Jon
There's a difference between borrowing an idea (a "trick" as you say), and using the verbatim engine as a starting point, as it's been alleged that Mr. Rajlich has done. The question for engines as a whole is: where is the line drawn, e.g. what constitutes a violation?
The claim is not that Rajlich used the full fruit engine as a starting point but that part of the code of Rybka is copied from fruit.

I do not express opinion about that claim but it is impossible to prove that Rybka used fruit as a starting point when it is clear that most of the code is clearly different(move generator for example is clearly different than fruit and many other parts of the code are also different because they are dependent on the structure of the move generator).

I express no opinion if significant part is the same but even in this case this significant part is not most of the code.
What if the move generator comes from Crafty? We already have some evidence of other parts of Crafty being directly copied in the pre-fruit versions. It might be worse than you think.
If Rybka's (1B or later) movegenerator (and perhaps more) comes from Crafty then why is it not mentioned in the evidence? That would perhaps change a lot of people's opinion.
Considering R1B-Fruit, how much elo is root move ordering, similar PST and perhaps part of time management? I expected much more similarities in search (but see none of that in the evidence), that's where Rybka's strength must have come from IMHO. This corresponds to what Vas said in a 2005 interview, i.e. that he took things from Fruit worth approx. 20 elo. If I'm wrong then I'm sorry, I'm only expressing my worthless opinion. Thanks.

Post Reply