Something very strange [Strelka]

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

Moderator: Ras

Dann Corbit
Posts: 12814
Joined: Wed Mar 08, 2006 8:57 pm
Location: Redmond, WA USA

Re: Something very strange [Strelka]

Post by Dann Corbit »

Uri Blass wrote:
Dann Corbit wrote:And you do not understand what I am saying. If Osipov has borrowed ideas from Fruit (and most people are saying that he has and in my opinion he has) then it is not possible for his program to ply like Rybka and yet still use the ideas of Fruit.

Don't you see the dilemma? I see two possibilities:
1. They are not so much clones like most people think
2. Something unimaginable.

I am sure that there are more possibilities than these, but it is where I am stuck.

My puzzlement is that I cannot understand it.
I do not understand the problem.
There is no rule that using ideas from fruit is illegal

I see no contradiction between the following that I believe to be correct:

1)Rybka is using ideas from fruit.
2)Strelka is using ideas from fruit.
3)Strelka(version1.8) was designed to play similiar to rybka
by reverse engineering rybka and using ideas from fruit.

Uri
I have not tested it myself thoroughly, but I still cannot believe that the programs Rybka and Strelka play identically or nearly identically. Now, I think it could appear that way especially if bugs were introduced to be the same in both programs and so those would stand out. If we test these sorts of positions, we may imagine that they play identically because other programs play very differently. But I imagine that playing a large number of games we should see lots of difference shere and there.
Nid Hogge

Re: Something very strange [Strelka]

Post by Nid Hogge »

Dann Corbit wrote:
Did you even bother to read what was quoted above? I think not.

Go to the cited link, read the material, and then decide what you think is legal or illegal. I think you do not understand what is legal or illegal.

According to my understanding, as far as Rybka, I doubt if it is possible for Yusipov to have committed a crime according to what we know (It would have been illegal, for instance, to modify the binary and sell that I imagine). Now, with regards to Fruit it could be possible because of GPL restrictions. On the other hand I am not a legal expert so I can be wrong about the use of Rybka 1.0 also.

Now, moral issues are altogether different, but I do not choose what is moral for other persons -- I choose only for myself what is moral for me and let others decide what is moral for them.
Yes in fact I did. So Rybka does not have any patents licensed under it's name. But I think only going by the raw rules is not justified. I'm not legal expert either, but I dunno, for me personally it doesn't make sense. But like you said, each person has differnet morals I guess. sure I could be wrong on the exact legality of the issue in it's purest form but either way it still smells bad IMO.

btw, he DID initially plan to go commercial with it. I guess he was too afraid from a legal action in this case from Convekta which AFAIK is also russian based.
Uri Blass
Posts: 11150
Joined: Thu Mar 09, 2006 12:37 am
Location: Tel-Aviv Israel

Re: Something very strange [Strelka]

Post by Uri Blass »

Dann Corbit wrote:
Uri Blass wrote:
Dann Corbit wrote:And you do not understand what I am saying. If Osipov has borrowed ideas from Fruit (and most people are saying that he has and in my opinion he has) then it is not possible for his program to ply like Rybka and yet still use the ideas of Fruit.

Don't you see the dilemma? I see two possibilities:
1. They are not so much clones like most people think
2. Something unimaginable.

I am sure that there are more possibilities than these, but it is where I am stuck.

My puzzlement is that I cannot understand it.
I do not understand the problem.
There is no rule that using ideas from fruit is illegal

I see no contradiction between the following that I believe to be correct:

1)Rybka is using ideas from fruit.
2)Strelka is using ideas from fruit.
3)Strelka(version1.8) was designed to play similiar to rybka
by reverse engineering rybka and using ideas from fruit.

Uri
I have not tested it myself thoroughly, but I still cannot believe that the programs Rybka and Strelka play identically or nearly identically. Now, I think it could appear that way especially if bugs were introduced to be the same in both programs and so those would stand out. If we test these sorts of positions, we may imagine that they play identically because other programs play very differently. But I imagine that playing a large number of games we should see lots of difference shere and there.
Similiarity between strelka1.8 and rybka1.0beta is not only about identical bugs but also about other things.

There are positions when they are not the same but it is clear that the similiarity was designed and not something random.

Here is another example for similiarity between strelka1.8 and rybka1.0beta

New game - Rybka 2.3.2a 32-bit
[d]rnbqkbnr/pppppppp/8/8/2BPPB2/2N2N2/PPP2PPP/R2QK2R w KQkq - 0 1

Analysis by Strelka 1.8 UCI:

1.Nf3-e5 e7-e6 2.Qd1-h5 Qd8-f6 3.g2-g3
± (0.83) Depth: 5 00:00:00
1.Nf3-e5 e7-e6 2.d4-d5 Ng8-f6 3.0-0 Bf8-c5 4.d5xe6 f7xe6
± (0.81) Depth: 6 00:00:00 26kN
1.0-0 e7-e6 2.d4-d5 Ng8-f6 3.d5xe6 f7xe6 4.Nf3-e5
± (0.87) Depth: 7 00:00:00 148kN
1.0-0 d7-d6 2.e4-e5 h7-h6 3.Qd1-d3 Qd8-d7 4.e5-e6 f7xe6 5.Qd3-g6+ Ke8-d8
± (0.91) Depth: 8 00:00:00 364kN
1.0-0 d7-d6 2.e4-e5 Bc8-f5 3.Nf3-h4 Bf5-c8 4.e5xd6 c7xd6 5.Rf1-e1
± (0.97) Depth: 9 00:00:01 664kN
1.0-0 d7-d6 2.e4-e5 e7-e6 3.e5xd6 c7xd6 4.Bc4-b5+ Nb8-c6 5.Bb5xc6+ b7xc6 6.Qd1-d3 Ng8-f6 7.Rf1-e1
± (0.99) Depth: 10 00:00:02 1306kN

(, 12.01.2008)

New game - Rybka 2.3.2a 32-bit
rnbqkbnr/pppppppp/8/8/2BPPB2/2N2N2/PPP2PPP/R2QK2R w KQkq - 0 1

Analysis by Rybka 1.0 Beta 32-bit:

1.0-0
± (0.82) Depth: 3 00:00:00
1.Nf3-e5
± (0.83) Depth: 3 00:00:00
1.Nf3-e5
± (0.81) Depth: 4 00:00:00
1.Nf3-e5 e7-e6
± (0.78) Depth: 5 00:00:00
1.0-0 e7-e6
± (0.87) Depth: 5 00:00:00
1.0-0 e7-e6 2.d4-d5
± (0.91) Depth: 6 00:00:00 23kN
1.0-0 d7-d6 2.e4-e5 Bc8-d7
± (0.95) Depth: 7 00:00:00 51kN
1.0-0 d7-d6 2.e4-e5 g7-g6 3.Rf1-e1
± (0.96) Depth: 8 00:00:01 97kN
(, 12.01.2008)


Comparison of the scores of both programs(depth x of rybka is equivalent to depth x+2 of strelka):

Strelka 0.83/5 0.81/6 0.87/7 0.91/8 0.97/9 0.99/10
Rybka 0.83/3 0.81/4 0.87/5 0.91/6 0.95/7 0.96/8

Uri
Nid Hogge

Re: Something very strange [Strelka]

Post by Nid Hogge »

Dann Corbit wrote:If Osipov has borrowed ideas from Fruit (and most people are saying that he has and in my opinion he has) then it is not possible for his program to ply like Rybka and yet still use the ideas of Fruit.

Don't you see the dilemma? I see two possibilities:
1. They are not so much clones like most people think
2. Something unimaginable.

I am sure that there are more possibilities than these, but it is where I am stuck.

My puzzlement is that I cannot understand it.
OK I'm not so sure what do you mean. I might be bulk, but trying to be honest I still don't understand.

If I got it right youre saying that using ideas from both Rybka and Fruit could not blend together to create an hybrid engine?(=Strelka).

IIRC Strelka and Rybka play 100% similar only on a few positions. with other lines it presents different PV, I think because osipov added his own tricks that caused it to have a differnet play-style. Vas says "Some of the transplanted ideas, such as the null verification search, are rather naive implementations of the approach in Fruit/Toga, although my first impression is that that code itself is original."
So maybe he used most of Rybka code and added fruit like code in other parts of the engine. Thats how I understood it anyway Image.
Dann Corbit
Posts: 12814
Joined: Wed Mar 08, 2006 8:57 pm
Location: Redmond, WA USA

Re: Something very strange [Strelka]

Post by Dann Corbit »

Nid Hogge wrote:
Dann Corbit wrote:If Osipov has borrowed ideas from Fruit (and most people are saying that he has and in my opinion he has) then it is not possible for his program to ply like Rybka and yet still use the ideas of Fruit.

Don't you see the dilemma? I see two possibilities:
1. They are not so much clones like most people think
2. Something unimaginable.

I am sure that there are more possibilities than these, but it is where I am stuck.

My puzzlement is that I cannot understand it.
OK I'm not so sure what do you mean. I might be bulk, but trying to be honest I still don't understand.

If I got it right youre saying that using ideas from both Rybka and Fruit could not blend together to create an hybrid engine?(=Strelka).

IIRC Strelka and Rybka play 100% similar only on a few positions. with other lines it presents different PV, I think because osipov added his own tricks that caused it to have a differnet play-style. Vas says "Some of the transplanted ideas, such as the null verification search, are rather naive implementations of the approach in Fruit/Toga, although my first impression is that that code itself is original."
So maybe he used most of Rybka code and added fruit like code in other parts of the engine. Thats how I understood it anyway Image.
Actually, this is much more what I had expected (I have not done my own investigation). I have heard many people say that it plays exactly like Rybka (identical, even). Of course we know this is not true because it is not as strong as Rybka. But (according to what I know) it has borrowed things from more than one source and implemented them. Therefore, we should be utterly astounded if they played exactly the same.

If you have investigated the issue and found that they indeed do play differently, then *my* expectation is fullfilled.

So perhaps now you see what my dilemma was. I had only heard that Strelka plays exactly like Rybka, but knowing what I knew, I did not see how that was possible. So you have corroberated what I imagined to be the case.
Dann Corbit
Posts: 12814
Joined: Wed Mar 08, 2006 8:57 pm
Location: Redmond, WA USA

Re: Something very strange [Strelka]

Post by Dann Corbit »

Nid Hogge wrote:
Dann Corbit wrote:
Did you even bother to read what was quoted above? I think not.

Go to the cited link, read the material, and then decide what you think is legal or illegal. I think you do not understand what is legal or illegal.

According to my understanding, as far as Rybka, I doubt if it is possible for Yusipov to have committed a crime according to what we know (It would have been illegal, for instance, to modify the binary and sell that I imagine). Now, with regards to Fruit it could be possible because of GPL restrictions. On the other hand I am not a legal expert so I can be wrong about the use of Rybka 1.0 also.

Now, moral issues are altogether different, but I do not choose what is moral for other persons -- I choose only for myself what is moral for me and let others decide what is moral for them.
Yes in fact I did. So Rybka does not have any patents licensed under it's name. But I think only going by the raw rules is not justified. I'm not legal expert either, but I dunno, for me personally it doesn't make sense. But like you said, each person has differnet morals I guess. sure I could be wrong on the exact legality of the issue in it's purest form but either way it still smells bad IMO.

btw, he DID initially plan to go commercial with it. I guess he was too afraid from a legal action in this case from Convekta which AFAIK is also russian based.
Now morally, I feel like you do. For instance, if Srelka's strength was found to have come from reverse engineered ideas from Rybka, then I would never have purchased a copy. But I would not presume to tell someone else what to do.

For me, the most reprehisible part is intellectual dishonesty. It smells like :
http://en.wikipedia.org/wiki/Plagerism
to me.

Personally, I think we should write software in the same way that we write a reference work for techical publication. If there is an algorithm, we should give the source. My concept of how "Literary Programming" ought to be embodied is much closer to how reference publication is performed in the academic community. But it is jusy my opinion and it carries no legal weight at all.
Uri Blass
Posts: 11150
Joined: Thu Mar 09, 2006 12:37 am
Location: Tel-Aviv Israel

Re: Something very strange [Strelka]

Post by Uri Blass »

Nid Hogge wrote:
Dann Corbit wrote:If Osipov has borrowed ideas from Fruit (and most people are saying that he has and in my opinion he has) then it is not possible for his program to ply like Rybka and yet still use the ideas of Fruit.

Don't you see the dilemma? I see two possibilities:
1. They are not so much clones like most people think
2. Something unimaginable.

I am sure that there are more possibilities than these, but it is where I am stuck.

My puzzlement is that I cannot understand it.
OK I'm not so sure what do you mean. I might be bulk, but trying to be honest I still don't understand.

If I got it right youre saying that using ideas from both Rybka and Fruit could not blend together to create an hybrid engine?(=Strelka).

IIRC Strelka and Rybka play 100% similar only on a few positions. with other lines it presents different PV, I think because osipov added his own tricks that caused it to have a differnet play-style. Vas says "Some of the transplanted ideas, such as the null verification search, are rather naive implementations of the approach in Fruit/Toga, although my first impression is that that code itself is original."
So maybe he used most of Rybka code and added fruit like code in other parts of the engine. Thats how I understood it anyway Image.
null move verification search is in strelka2.0 and based on my understanding of the code it was not in strelka1.8(but I am not sure if I understood strelka's code).

Uri
Uri Blass
Posts: 11150
Joined: Thu Mar 09, 2006 12:37 am
Location: Tel-Aviv Israel

Re: Something very strange [Strelka]

Post by Uri Blass »

<snipped>
Dann Corbit wrote: Actually, this is much more what I had expected (I have not done my own investigation). I have heard many people say that it plays exactly like Rybka (identical, even). Of course we know this is not true because it is not as strong as Rybka.
Of course they are not identical but not being strong as rybka proves nothing because it is possible to get something weaker than rybka by having something that is play the same except being 20% slower.

It is easy to prove that strelka is different than rybka simply by showing that the analysis is different in one position and even similiar analysis that I showed are not exactly the same.

I also understood that strelka2.0 is probably stronger than rybka1.0 beta
based on what I read in rating lists.

Uri
Nid Hogge

Re: Something very strange [Strelka]

Post by Nid Hogge »

Dann Corbit wrote: Actually, this is much more what I had expected (I have not done my own investigation). I have heard many people say that it plays exactly like Rybka (identical, even). Of course we know this is not true because it is not as strong as Rybka. But (according to what I know) it has borrowed things from more than one source and implemented them. Therefore, we should be utterly astounded if they played exactly the same.

If you have investigated the issue and found that they indeed do play differently, then *my* expectation is fullfilled.

So perhaps now you see what my dilemma was. I had only heard that Strelka plays exactly like Rybka, but knowing what I knew, I did not see how that was possible. So you have corroberated what I imagined to be the case.
Ok, Thanks for claryfing! Image Glad we could get it through.

I'm pretty sure this is indeed the case from all that heard and seen. I agree with you and I think it clears alot off this issue.
Last edited by Nid Hogge on Sat Jan 12, 2008 7:53 am, edited 1 time in total.
Nid Hogge

Re: Something very strange [Strelka]

Post by Nid Hogge »

Dann Corbit wrote:
Now morally, I feel like you do. For instance, if Srelka's strength was found to have come from reverse engineered ideas from Rybka, then I would never have purchased a copy. But I would not presume to tell someone else what to do.

For me, the most reprehisible part is intellectual dishonesty. It smells like :
http://en.wikipedia.org/wiki/Plagerism
to me.

Personally, I think we should write software in the same way that we write a reference work for techical publication. If there is an algorithm, we should give the source. My concept of how "Literary Programming" ought to be embodied is much closer to how reference publication is performed in the academic community. But it is jusy my opinion and it carries no legal weight at all.
Well I'm glad we could agree on something : P . I would pretty much feel and do the same, and TBH, actually my opinions are not far off from your's, but I guess this is another topic. Anyhow I basiclly support this path and agree with your general views. But Hopefully cases like this won't arise again, so we won't need to get to those issues in the first place.