Page 1 of 2

Revisiting Strelka/Rybka

Posted: Tue Jan 25, 2011 12:58 am
by BB+
The other thread has become rather untidy, so I put this here.

Responding to the 9 statements of Osipov, VR says (Jul 12 2007): http://rybkaforum.net/cgi-bin/rybkaforu ... 9#pid18939
Note that this explanation is itself bogus:

a) 'Osipov' claims that he changed the Fruit board representation from mailbox to bitboard and got a 2x speedup in performance. This is simply a clueless comment, there would be no speedup of anywhere near this magnitude.
b) 'Osipov' claims to take only Rybka's eval and search, yet Strelka 1.8 uses Rybka's exact UCI output strings.
c) 'Osipov' claims that he added a Winboard parser (after date of Fruit 2.1 release) so that Strelka could play in Ridderkerk - another clueless comment.
d) ...

I will think a little bit about this. Maybe what I should do is get the Strelka 1.8 source code, claim it as my own, and release it under GPL.

With these anonymous cloners who risk nothing, and with current Rybka level, computer chess may be headed for some turbulence.

Vas
For point (a), I don't think 2x is a ridiculous expectation, especially if you compare to 64-bit. I suspect what Osipov says is simply an over-statement (perhaps just rounding up, when it is really something like ~70% faster).

For point (b), this is false (particularly the word "exactly"). I download Strelka 1.8 UCI and get:
go depth 5
info depth 1
info depth 1  score cp 18 time 0 nodes 18 nps 0 pv g1f3
[...]
Note in particular the two spaces between "info depth 1" and "score cp 18 ...". This is not the case with Rybka 1.0 Beta.
go depth 5
info depth 3
info depth 3 score cp 7 time 3 nodes 235 nps 80213 pv b1c3
So I'm not sure what VR means with this claim -- perhaps the ordering of the [score, time, nodes, nps, pv] elements? This is to be considered original?!

For point (c), I don't know enough about Ridderkerk and Winboard. Is Osipov's explanation reasonable?
8. After all for no apparent reason I wanted to make an engine and participate in tournaments. At the site WBEC I read the requirements for the engines - there has been emphasis on the fact that should be maintained the protocol Winboard and UCI-engines must work through an adapter Polyglot. I decided that writing Winboard-protocol is the shortest path. At least, that has to saving me the study of Polyglot. I looked in the Internet, and found the source code of Beowulf, from which I copied the protocol. Then it turned out that man who wrote Beowulf -- Corbit, subsequently investigated the source code of Strelka, and he was very surprised to find in it the code of Beowulf.
It could just be that Osipov is "clueless" (to use VR's word)... :lol:

Re: Revisiting Strelka/Rybka

Posted: Tue Jan 25, 2011 9:09 pm
by BB+
a) 'Osipov' claims that he changed the Fruit board representation from mailbox to bitboard and got a 2x speedup in performance. This is simply a clueless comment, there would be no speedup of anywhere near this magnitude
For point (a), I don't think 2x is a ridiculous expectation, especially if you compare to 64-bit.
I tested Rybka 1.0 Beta in 32-bit with wine versus the same in 64-bit with microwine on my Phenom 1055T, and it was 223 Kn/s to 387 Kn/s, so a 70% gain from 64-bit, even before any bitboard considerations. So this could just be a bit of a mis-understanding, though the fact that Strelka was originally only released in 32-bit might bolster VR's interpretation somewhat.

Re: Revisiting Strelka/Rybka

Posted: Tue Jan 25, 2011 10:32 pm
by jury_osipov
BB+ wrote:It could just be that Osipov is "clueless" (to use VR's word)... :lol:
You are right. 4 years ago I was "clueless" in computer chess.

Re: Revisiting Strelka/Rybka

Posted: Tue Jan 25, 2011 10:50 pm
by zwegner
I think Vasik is right about the speedup from bitboards--Rybka's NPS is way lower than Fruit's!

Re: Revisiting Strelka/Rybka

Posted: Tue Jan 25, 2011 11:01 pm
by BB+
You must mean Rybka 1.0 Beta, while the node-counting thread points out that Rybka 1.3 was much faster in NPS (possibly due to accounting irregularities). :lol:

Sarcasm aside, in that thread VR reports only a 20% speed-up with 64-bit, though maybe by 2005 things were different.

Re: Revisiting Strelka/Rybka

Posted: Thu Jan 27, 2011 7:56 pm
by kingliveson
http://rybkaforum.net/cgi-bin/rybkaforu ... ?tid=12995
Vasik Rajlich wrote:There was an open-"source" (using the term loosely) clone of Rybka 3 released in the spring. Unlike the last time, there was no real attempt to hide the cloning - the hackers were even kind enough to keep me updated via email.

Vas
http://www.talkchess.com/forum/viewtopi ... 867#390867
Osipov Jury wrote:
Albert Silver wrote: Yes, the links are bogus though. The statements predated his later admissions that Strelka was heavily based on RE of Rybka, though there were a number of parts of the RE that were incomprehensible to him. He also added parts of Fruit and other things, which was what made it such a strange patchwork piece of code. His correspondence with Vas after he came clean was quite enlightening. I got it from ChessOk who translated the messages between the two to ease communication.

I never wrote to Vasik that the Strelka is based on the RE code of Rybka. I wrote him that I studied the code of Rybka with disassembler.
Would it be reading too much into this that it might be what Vas was referencing when he said Ippolit authors contacted him?

Re: Revisiting Strelka/Rybka

Posted: Thu Jan 27, 2011 9:22 pm
by kingliveson
Albert Silver wrote: Are you claiming that you did not suggest Strelka be packaged with Rybka as a variant/flavor of it? That was the reason I was even brought in. As a variant of his program, his permission was required, and frankly, the idea wasn't a happy one since it wasn't just a variant, it was a variant in which the source code was widespread. This was actually the Pandora's Box you really opened. Clones and derivatives had existed before, but this was the first time someone decided to spam the source code everywhere ALSO.
Osipov Jury wrote:Convekta, i.e. Viktor Zakharov, made me an offer to release the Strelka for mobile systems. Convekta created a graphical interface, but the engine was missing. Vas has promised to make a mobile version of the Rybka, but did not. Convekta turned to me and several other programmers to use their engines. Not together with Rybka or as a variant of Rybka, but instead of it.
I accepted this offer and sent the source code for porting.
But then Vas inexplicably vetoed the project. And that surprised not only me, but Viktor too.

My letter to Vas in response to his questions (translate by V.Zakharov):

Code: Select all

Hi Vas,
 
 First of all I would like to excuse for my public pronouncements, that
 Rybka was developed on the basis of Fruit. There were only subjective
 guesses and I didn't have right to share unchecked thoughts publicly.
 
 Unfortunatelly sometimes I am able to perform unadequite actions, that
 can be approved only by my current heavy psychologic state.
 
 Beleive me I am sincere fan of your talants. For future I promise not
 to do any steps that can be bring any damage to you.
 
 Now the answers on your questions:
 
 1) I started Rybka code research at January, 2007. I did this time to
 time till April. I can't calculate exactly how much time I spent.
 I consider myself as amateur in dissassembly, so my experience can't be
 considered as representative. I guess that Dark Avenger from Brasil -
 most serious professional in this domain. I think he will not have
 problems FULLY to reverse Rybka code and to understand the algorithms.
 But this is only about Rybka 1.0.beta. I am sure that similar work
 concerning latest Rybka versions is practically impossible. They
 contains much more code, so to understand the algorithms it will take
 a few years of heavy work. I am amazed how you was able to write so
 much in a short period. ?!!!
 
 2) I always worked alone. There was no team. Even there were no people
 to discuss my ideas with somebody.
 
 3) I researched the code of another chess programs. But it was long
 time ago (7 years or so). These were old by today measuring versions
 of Hiarcs and Fritz. Fritz is most sophisticated. I saw that it was
 written on assembly language, and some tricks were used that were
 hardly to transform to high-level language (sometimes impossibly).
 
 4) I am not going to clone Rybka or any other chess program in future.
 It is not interesting to me. I have a lot of my own ideas that I would
 like to implement. The trial to write the program on Rybka basis was
 only an experiment and may be a bad joke. I think it was a silly action.
 
 5) I am going to develop my own original ideas in future. But I
 am not going to release any commercial product. I am not going to
 compete with you or other chess programmers. It is just interesting to
 me to solve difficult tasks and to have pleasure from this exploration
 process.
 
 6) I didn't give to anybody source code of latest Strelka version. But
 this code doesn't differ much from the first version. Changes in
 algorithm are minimal. So I can say that source code of first Strelka
 have Sergey Markov, Dan Corbit and Bryan Hoffmann. I would like to ask
 your advice can I have moral right (first of all before you) to present
 Strelka source code to a few more programmers? If you say that it is
 wrong, I will follow your advice. No need to describe reasons for this.
 Just agree or no.
 
 Best regards, Jury

Reply of Vas:

Code: Select all

Hi Yury,

thanks very much for your interesting comments.

In my view, it would be good if you continued working and released an
engine with all components in your own hand. Studying Rybka and using what
you have learned is perfectly normal. Selling your engine is also normal -
you can find a distributor to handle all details and most users will use
it for free anyway 

If you prefer to work only on selected aspects, I can consider to give you
public permission to use selected Rybka 1.0 components such as some of my
eval tables. Please ask me and I will think about it.

I would discourage any of the following:

1) Working in secret with no public releases.
2) Releasing partly-cloned engine without original author permission.
3) Releasing current source code.

Of course, these issues are all your business. I can only give my personal
opinion.

Anyway, good luck. If there are any things in Rybka which you found
interesting, please don't hesitate to ask me about them.

Best regards,
Vas
http://www.talkchess.com/forum/viewtopi ... 971#390971

Jury's response is confirmed in an interview of Victor Zakharov from Convekta -- See: http://www.open-chess.org/viewtopic.php ... a232#p9149

Re: Revisiting Strelka/Rybka

Posted: Thu Jan 27, 2011 11:44 pm
by BB+
I guess that Dark Avenger from Brasil - most serious professional in this domain.
My memory was that he claimed to use a Brazil proxy (he posts from multiple countries in this thread).
Incidentally, that thread has VR "not caring" about Rybka 1.0 Beta :!: (Jul 8 2007):
And in fact I don't really care - this Rybka 1.0 is ancient. If somebody wants to have some fun with this version, knock yourself out :)

Re: Revisiting Strelka/Rybka

Posted: Fri Jan 28, 2011 5:37 am
by BB+
Jury Osipov is also the name of the President of the Russian Academy of the Sciences since 1991 (narrowly winning re-election a few years back). http://en.wikipedia.org/wiki/Yury_Osipov
Science 6 June 2008:
Vol. 320 no. 5881 pp. 1270-1271

MOSCOW—Despite unprecedented opposition, which included fellow academicians calling for him to step aside, Yuri Osipov was reelected last week to a fourth term as president of the Russian Academy of Sciences (RAS). The election, in which two candidates who challenged Osipov received a combined 46% of the secret ballots, made clear that RAS is split at a time when many members feel its future is insecure. Osipov's return “will bring the academy to deep stagnation,” says academician Alexandr Spirin, who had made a public call for the 71-year-old mathematician not to seek reelection. [...] When the votes were counted, Osipov had received 52%, whereas Fortov got 39% and Valery Chereshnev 7% [...] “This is an unprecedented situation that so many people voted against the president.”
Read the rest at http://www.sciencemag.org/content/320/5881/1270.1.full

Re: Revisiting Strelka/Rybka

Posted: Fri Jan 28, 2011 12:04 pm
by jury_osipov
BB+ wrote:Jury Osipov is also the name of the President of the Russian Academy of the Sciences since 1991
And also:

Sergey Markov - russian chess programmer, author of Smarthink.
Sergey Markov - russian political scientist and journalist.

Aleksey Morozov - ukrainian chess programmer, author of Booot.
Aleksey Morozov - russian ice hockey player.