Rybka questions and answers

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

Moderators: hgm, Rebel, chrisw

bob
Posts: 20943
Joined: Mon Feb 27, 2006 7:30 pm
Location: Birmingham, AL

Re: Rybka questions and answers

Post by bob »

chrisw wrote:
bob wrote:
Uri Blass wrote:Vas also responded in the rybka Forum

http://rybkaforum.net/cgi-bin/rybkaforu ... =99683;hl=
The problem is, his statement is pure and utter nonsense. He is making _no_ distinction between "program" and "algorithm". Yes we order moves the same way, more or less. But the "how" is hugely different. For example, let's say everyone does moves in _exactly_ this order:

hash
winning captures
equal captures
killer moves.
rest of moves

how many that have written programs do this: Search hash move before generating a single move? Search killers before generating non-captures? Generate captures and non-captures separately? Generate captures and non-captures and check evasions separately? generate captures and non-captures and check-evasions and qsearch checking moves separately? How many rank captures by SEE, vs MVV/LVA? If you are in check, do you generate legal moves only, or generate pseudo-legal and exclude illegal ones by testing for in check after making the move? Or reject it by capturing the king?

The _programming_ differences are limitless. Very much like the room full of monkeys, except that each monkey is a programmer. So while the "algorithms" might look close, the programming will not. And to suggest that it will is _really_ a dishonest statement. One can find dozens of academic references on detecting plagiarism in programming, where we don't give 40,000 line projects.

This post was just so much nonsense that it is hard to believe a _real_ programmer would write such garbage. That makes him look worse than had he remained silent, in fact.
Interesting you ignore this part of his post

Vas wrote:
Generally, code theft is easy to show - just show the two sections of identical code, side-by-side. There isn't much to debate in such cases.


and choose to insult him instead.
Looks to me like Z and CT have already "put up" and shown identical code. Do es that then mean he is guilty?

I stand by my statement that his "brushing off" the copying issue is utter nonsense. I can give some far less complex examples than chess and describe results I have had turned in if you want. I gave a good refutation of his "we all do the same kind of move ordering" which is a high-level algorithm. We are, however, talking about low-level programming. Two different topics entirely.

It's put up or shut time, Bob.

Show the sections of identical code, Rybka - Fruit.

I don't know either way. Maybe they exist and maybe they don't, but I, for sure, and others probably, are not going to believe these accusations without them.
Look at Z's post somewhere near the top, since Terry "bumped" it (last night I think). It has code from both.

I believe that could be defined as "put up" in fact.
bob
Posts: 20943
Joined: Mon Feb 27, 2006 7:30 pm
Location: Birmingham, AL

Re: Rybka questions and answers

Post by bob »

chrisw wrote:
kranium wrote:
swami wrote:
kranium wrote: i'm suggesting you are not completely unbiased, as you have made your position clear...
Norm, I don't think Chris is biased, he has made several well reasoned posts although I have only some 3/4 of his posts concerning this issue.

If anything at all, I would argue that you are little more biased than what you wrote of Chris since you have posted some things that are obvious exaggerations to the extent such as the one where you claimed that 2 engines are nearly 40-50% identical. :wink:

Ofcourse, I'm not being critical, just writing what I honestly think in order to try to refute your point that looks bit provocative.
Hi Swami-
yes i see your point. i wasn't trying to exaggerate...i posted immediately afterward that it probably wasn't accurate, and only an esitmate.

as far as possible bias by Chris, i simply meant that he has made his position clear...(and is therefore no longer impartial.)
My position is that an accused person is innocent until proven guilty.

What's yours?
Mine is the same, but the evidence has become substantial. We have the gun that killed someone. We have fingerprints on the gun. We have gunshot residue on the suspect. We have established motive. We have established opportunity. The suspect was seen entering and leaving the building during the time the victim was killed. Gunshots were heard from inside the building while the suspect was there. The suspect had victim's blood on his clothes. All we lack is an eye-witness. But the case _still_ looks pretty bad and people have been convicted on far less.
bob
Posts: 20943
Joined: Mon Feb 27, 2006 7:30 pm
Location: Birmingham, AL

Re: Rybka questions and answers

Post by bob »

chrisw wrote:
bob wrote:
kranium wrote:
gerold wrote:
chrisw wrote:Vas has this to say, together with a proposal.

Rybka is and was always completely original. He is aware there are rumours about Fruit for a long time but never really understood where they are coming from. He is more than happy to try and address concrete questions or curious similarities with Fruit.

So, may I suggest you use this thread to put together a concrete and formal concern list to send to Vas. He can answer here, or here by email or on Rybkaforum or wherever.

Basically, prepare a list of concerns/question which have some suitable evidential backing, and append the evidence/data. We'll email it to him.



Christophe/Zach - do you want to put together a (small) team to do this?
Thanks for your efforts regarding Rybka. I think Rybka is clean.
Vas does not really have to say anything or show anyone his code.

Best to you,

Gerold.
Hi Gerold,

i agree, he should not and does not have to show anyone his code.
he seems interested in answering the questions, though...

people are simply requesting an explanation as to why hundreds of (identical/equivilent) lines of code appear in both fruit 2.1 and strelka 2.0.,
etc.
i think that's a fair question...
Unfortunately, based on a post of his (link given above) you are not likely to get substantive answers. Just "it is likely that if we use the same algorithm, we will produce the same code." Even though decades of academic experience spread over every university offering a computer science or programming degree says otherwise.
I see. So there's no point in putting concrete concerns with evidence to him because, according to you, you won't get a substantive answer. Your decades trll you so.

Are you actually able to generate a list of concrete concerns? For example some code similarities between Rybka and Fruit?

If not, the case against Rybka is just so much hot air.
I have two so far. common code between strelka and Rybka 1 beta, already published. Which follows common code between strelka and Fruit, also already published. So that is part 1.

Second part is the common code between Rybka 1 and fruit, which was _also_ published here. Three programs with lots of code in common, defying any possible laws or probability on independent generation of identical code.

Yes, one might duplicate single lines. How many ways are there to do a read or write? But if you assign 30 students the task of producing a random number generator, with no outside access to the internet so that they do everything on their own, you are not going to get duplicate algorithms, much less duplicate code.

There is nothing wrong with erring on the side of conservatism. But you can't take the Uri approach and require the existance of some circumstance that has a probability of 10e-75 to support an argument. A monkey _could_ produce the same code as is in Crafty. But what is the probability and is that a realistic assumption for the argument? I doubt anyone would say "yes".
bob
Posts: 20943
Joined: Mon Feb 27, 2006 7:30 pm
Location: Birmingham, AL

Re: Rybka questions and answers

Post by bob »

Your quote is not exactly correct. Should be:

"Innocent until proven guilty beyond a _reasonable_ doubt". One can _never_ prove something with 100% certainty as there is an escape at many different points, although some might depend on interdimensional or time travel or something else that might well be possible, but has not been done to date.

So "beyond a reasonable doubt" is different.
Tony

Re: Rybka questions and answers

Post by Tony »

bob wrote:
Uri Blass wrote:Vas also responded in the rybka Forum

http://rybkaforum.net/cgi-bin/rybkaforu ... =99683;hl=
The problem is, his statement is pure and utter nonsense. He is making _no_ distinction between "program" and "algorithm". Yes we order moves the same way, more or less. But the "how" is hugely different. For example, let's say everyone does moves in _exactly_ this order:

hash
winning captures
equal captures
killer moves.
rest of moves

how many that have written programs do this: Search hash move before generating a single move? Search killers before generating non-captures? Generate captures and non-captures separately? Generate captures and non-captures and check evasions separately? generate captures and non-captures and check-evasions and qsearch checking moves separately? How many rank captures by SEE, vs MVV/LVA? If you are in check, do you generate legal moves only, or generate pseudo-legal and exclude illegal ones by testing for in check after making the move? Or reject it by capturing the king?

The _programming_ differences are limitless. Very much like the room full of monkeys, except that each monkey is a programmer. So while the "algorithms" might look close, the programming will not. And to suggest that it will is _really_ a dishonest statement. One can find dozens of academic references on detecting plagiarism in programming, where we don't give 40,000 line projects.

This post was just so much nonsense that it is hard to believe a _real_ programmer would write such garbage. That makes him look worse than had he remained silent, in fact.
It's pretty pointless Bob,

he responded the best way he could.

Making statements that 99% of the people will accept, knowing that the 1% that know he's talking nonsens will not be believed/ will be outshouted.

Good bussinessmen.

Tony
bob
Posts: 20943
Joined: Mon Feb 27, 2006 7:30 pm
Location: Birmingham, AL

Re: Rybka questions and answers

Post by bob »

Titu wrote:
Zach Wegner wrote:
chrisw wrote:Vas has this to say, together with a proposal.

Rybka is and was always completely original. He is aware there are rumours about Fruit for a long time but never really understood where they are coming from. He is more than happy to try and address concrete questions or curious similarities with Fruit.

So, may I suggest you use this thread to put together a concrete and formal concern list to send to Vas. He can answer here, or here by email or on Rybkaforum or wherever.

Basically, prepare a list of concerns/question which have some suitable evidential backing, and append the evidence/data. We'll email it to him.

Christophe/Zach - do you want to put together a (small) team to do this?
I am game, but this entire process will happen in the open. I'll post the list here, and Vas can answer here or on the Rybka forum. Though I would also call Norman biased of course, I think it's fair to say that you've been decidedly pro-Rybka stance throughout the discussion, so I think it's reasonable to ask to deal with Vas directly and in the public.

Well, now this thread is already getting long, so I'll start off a new thread with just questions/similarities etc.
Zach,
well put. I am sure you will be fair. I agree with you that Norman might not be unbiased. I am not sure about other experts either, who have been anti-Vas or Rybka for a long time (long before this issue), whether they will be biased or not.

On the other hand, as a human it's difficult to be totally unbiased about some issues. For examle, I remember you calling Vas's statement (that Rybka 3 MP efficiency might be better than other programs) about MP efficiency BS, even though you at that time did not measure and compare the MP efficiency with Zappa, :wink: .
There are some things we _do_ know without having to "compare". We _know_ what the overhead issues are because of imperfect move ordering, and no one can overcome those no matter how talented. I am still waiting for someone to publish some one-thread, two-thread, four-thread and eight-thread time-to-depth numbers for Rybka. We've had hundreds of those published for Crafty, and others.

Then we don't need "claims" just a "calculator".

I can even provide a test set that several of us can run with 1, 2, 4 and 8 threads, if you'd like and then we can test that "better scaling is better than others" statement factually rather than as marketing-speak.
chrisw

Re: Rybka questions and answers

Post by chrisw »

bob wrote:
chrisw wrote:
bob wrote:
Uri Blass wrote:Vas also responded in the rybka Forum

http://rybkaforum.net/cgi-bin/rybkaforu ... =99683;hl=
The problem is, his statement is pure and utter nonsense. He is making _no_ distinction between "program" and "algorithm". Yes we order moves the same way, more or less. But the "how" is hugely different. For example, let's say everyone does moves in _exactly_ this order:

hash
winning captures
equal captures
killer moves.
rest of moves

how many that have written programs do this: Search hash move before generating a single move? Search killers before generating non-captures? Generate captures and non-captures separately? Generate captures and non-captures and check evasions separately? generate captures and non-captures and check-evasions and qsearch checking moves separately? How many rank captures by SEE, vs MVV/LVA? If you are in check, do you generate legal moves only, or generate pseudo-legal and exclude illegal ones by testing for in check after making the move? Or reject it by capturing the king?

The _programming_ differences are limitless. Very much like the room full of monkeys, except that each monkey is a programmer. So while the "algorithms" might look close, the programming will not. And to suggest that it will is _really_ a dishonest statement. One can find dozens of academic references on detecting plagiarism in programming, where we don't give 40,000 line projects.

This post was just so much nonsense that it is hard to believe a _real_ programmer would write such garbage. That makes him look worse than had he remained silent, in fact.
Interesting you ignore this part of his post

Vas wrote:
Generally, code theft is easy to show - just show the two sections of identical code, side-by-side. There isn't much to debate in such cases.


and choose to insult him instead.
Looks to me like Z and CT have already "put up" and shown identical code. Do es that then mean he is guilty?

I stand by my statement that his "brushing off" the copying issue is utter nonsense. I can give some far less complex examples than chess and describe results I have had turned in if you want. I gave a good refutation of his "we all do the same kind of move ordering" which is a high-level algorithm. We are, however, talking about low-level programming. Two different topics entirely.

It's put up or shut time, Bob.

Show the sections of identical code, Rybka - Fruit.

I don't know either way. Maybe they exist and maybe they don't, but I, for sure, and others probably, are not going to believe these accusations without them.
Look at Z's post somewhere near the top, since Terry "bumped" it (last night I think). It has code from both.

I believe that could be defined as "put up" in fact.
Well, Zach posted some stuff and made five points. Point five was challenged by Vas on Rybka forum. Zach has had to withdraw it as wrong. And I bet you Terry and many others who are not C and assembly programmers don't understand Zach's other points either, yet they accept them and 'bump' them as if holy grail found.

Does Zach's disassembly show identical code? Really?

High priest programmers of computer chess say complicated and indecipherable stuff and everybody else who wants to believe in guilt just accepts it. Yet the material begins to fall over with just one question.
Titu

Re: Rybka questions and answers

Post by Titu »

bob wrote:
Titu wrote:
Zach Wegner wrote:
chrisw wrote:Vas has this to say, together with a proposal.

Rybka is and was always completely original. He is aware there are rumours about Fruit for a long time but never really understood where they are coming from. He is more than happy to try and address concrete questions or curious similarities with Fruit.

So, may I suggest you use this thread to put together a concrete and formal concern list to send to Vas. He can answer here, or here by email or on Rybkaforum or wherever.

Basically, prepare a list of concerns/question which have some suitable evidential backing, and append the evidence/data. We'll email it to him.

Christophe/Zach - do you want to put together a (small) team to do this?
I am game, but this entire process will happen in the open. I'll post the list here, and Vas can answer here or on the Rybka forum. Though I would also call Norman biased of course, I think it's fair to say that you've been decidedly pro-Rybka stance throughout the discussion, so I think it's reasonable to ask to deal with Vas directly and in the public.

Well, now this thread is already getting long, so I'll start off a new thread with just questions/similarities etc.
Zach,
well put. I am sure you will be fair. I agree with you that Norman might not be unbiased. I am not sure about other experts either, who have been anti-Vas or Rybka for a long time (long before this issue), whether they will be biased or not.

On the other hand, as a human it's difficult to be totally unbiased about some issues. For examle, I remember you calling Vas's statement (that Rybka 3 MP efficiency might be better than other programs) about MP efficiency BS, even though you at that time did not measure and compare the MP efficiency with Zappa, :wink: .
There are some things we _do_ know without having to "compare". We _know_ what the overhead issues are because of imperfect move ordering, and no one can overcome those no matter how talented. I am still waiting for someone to publish some one-thread, two-thread, four-thread and eight-thread time-to-depth numbers for Rybka. We've had hundreds of those published for Crafty, and others.

Then we don't need "claims" just a "calculator".

I can even provide a test set that several of us can run with 1, 2, 4 and 8 threads, if you'd like and then we can test that "better scaling is better than others" statement factually rather than as marketing-speak.
Ok, let's say that the depths and the NPS numbers are bogus in Rybka. From user point of view Vas was suggesting something like this (maybe not exactly the same):

Let's play a 100 games match, Rybka 3 vs Zappa Mexico II(which might have the best scaling according to many) with 4 cores.

Then another 100 games match with 8 cores (same books and GUI).

If the result increases, then Rybka 3 have the better scaling than Zappa otherwise worse.

Would this be a valid test?
chrisw

Re: Rybka questions and answers

Post by chrisw »

Zach Wegner wrote:
chrisw wrote:Fair enough. What you do need to do is create one list, with concerns solidly argued and backed with evidence.
Well, creating one list is not exactly trivial, as evidence is still being collected. It would take quite a while to make a complete list, so I'll post most of what I have and then others can add other things. Then Vas can answer them as they come up I suppose.
I'm sorry you think I am decidely pro-Rybka, because that's not what I am, nor what I've been doing, decidedly or otherwise. I've been in meta-mode. The problem with any forum, this one included, is that it can get itself into collectively wrong mode. To prevent that it needs someone challenging assumptions, arguing against and presenting an opposite case - then you really have to prove your position rather than just get into universal agreement. Rolf was fulfilling that role, but now he's stopped and I'm doing it instead. In normal circumstances it might not matter, to be collectively wrong, but when dealing with someone elses reputation and income then a degree of caution is needed.
I agree. It's good to have someone asking questions. That's all I was referring to really--you have been consistently arguing on the side of Rybka.
It's my contrarian nature, plus there's not much point in my arguing on your side, there's enough of you already ;-)
Terry McCracken
Posts: 16465
Joined: Wed Aug 01, 2007 4:16 am
Location: Canada

Re: Rybka questions and answers

Post by Terry McCracken »

chrisw wrote:
bob wrote:
chrisw wrote:
bob wrote:
Uri Blass wrote:Vas also responded in the rybka Forum

http://rybkaforum.net/cgi-bin/rybkaforu ... =99683;hl=
The problem is, his statement is pure and utter nonsense. He is making _no_ distinction between "program" and "algorithm". Yes we order moves the same way, more or less. But the "how" is hugely different. For example, let's say everyone does moves in _exactly_ this order:

hash
winning captures
equal captures
killer moves.
rest of moves

how many that have written programs do this: Search hash move before generating a single move? Search killers before generating non-captures? Generate captures and non-captures separately? Generate captures and non-captures and check evasions separately? generate captures and non-captures and check-evasions and qsearch checking moves separately? How many rank captures by SEE, vs MVV/LVA? If you are in check, do you generate legal moves only, or generate pseudo-legal and exclude illegal ones by testing for in check after making the move? Or reject it by capturing the king?

The _programming_ differences are limitless. Very much like the room full of monkeys, except that each monkey is a programmer. So while the "algorithms" might look close, the programming will not. And to suggest that it will is _really_ a dishonest statement. One can find dozens of academic references on detecting plagiarism in programming, where we don't give 40,000 line projects.

This post was just so much nonsense that it is hard to believe a _real_ programmer would write such garbage. That makes him look worse than had he remained silent, in fact.
Interesting you ignore this part of his post

Vas wrote:
Generally, code theft is easy to show - just show the two sections of identical code, side-by-side. There isn't much to debate in such cases.


and choose to insult him instead.
Looks to me like Z and CT have already "put up" and shown identical code. Do es that then mean he is guilty?

I stand by my statement that his "brushing off" the copying issue is utter nonsense. I can give some far less complex examples than chess and describe results I have had turned in if you want. I gave a good refutation of his "we all do the same kind of move ordering" which is a high-level algorithm. We are, however, talking about low-level programming. Two different topics entirely.

It's put up or shut time, Bob.

Show the sections of identical code, Rybka - Fruit.

I don't know either way. Maybe they exist and maybe they don't, but I, for sure, and others probably, are not going to believe these accusations without them.
Look at Z's post somewhere near the top, since Terry "bumped" it (last night I think). It has code from both.

I believe that could be defined as "put up" in fact.
Well, Zach posted some stuff and made five points. Point five was challenged by Vas on Rybka forum. Zach has had to withdraw it as wrong. And I bet you Terry and many others who are not C and assembly programmers don't understand Zach's other points either, yet they accept them and 'bump' them as if holy grail found.

Does Zach's disassembly show identical code? Really?

High priest programmers of computer chess say complicated and indecipherable stuff and everybody else who wants to believe in guilt just accepts it. Yet the material begins to fall over with just one question.

:lol: :lol: :lol: :lol: :lol: