The fact that Rybka obfuscate search reporting is known from the time that rybka is released(for everybody who tried to test rybka1 beta at depth 1) so it is clearly not news not for me and not for Ed.JuLieN wrote:Also, this comment is especially interesting:
Ed, if you read this, (plus Vas dodging all the questions in Rybka forum this week), doesn't it shake your conviction (that appears so illogical to me and others...) ?Rick Fadden, Barre, Vermont, USA
In the News article "A Gross Miscarriage of Justice in Computer Chess (part three), Soren Riis mentions my name and he gives a summary of my contribution. What he wrote is wrong, and this causes a problem.
Correction: The subject of my posts was "Strelka is a reverse engineered Rybka." I was demonstrating that Strelka source code exactly matched disassembled Rybka 1.0 beta. My posts could be interpreted as a defense of Vas Rajlick, because my focus was that someone else had copied from him, with Strelka matching what is in the Rybka binary. So many years later this author interprets my Stelka related comparison as making a false claim related to copying Fruit. Re-read my posts. If I mention the Fruit claims, it is just as a side comment. On that whole Fruit subject I was a spectator not an instigator.
Something else that should be reported though: in looking inside the Rybka 1.0 beta binary I found that Vas Rajlich was lying about how deep Rybka was searching, how many nodes it searched, and the Nodes per second reporting. In the code I point out that Vas includes a lot of code to "obfuscate" and to hide the fact that Rybka was a "fast, deep searcher", not a "slow searcher with max chess knowledge."
So I gave all kinds of supporting evidence that Vas obfuscated within his node reporting logic. I showed for example that when you enter a depth of search limit, Vas changes the input number to keep the limit consistent with his internal logic. (I could describe this in more detail.) So here's what I did to further prove this point: I created a binary patch of Rybka 1.0 beta to remove the math and instructions that hide the actual reported depth of search, and I posted this patch in the forum. With the patch applied to Rybka 1.0 beta the chess engine plays as before, and search proceeds exactly as before, *but* the program then properly displays it's actual search depth, nodes encountered, and nodes per second. (Frankly it's really neat seeing what Rybka is actually doing versus the false impression that Vas intends us to see.) Others used this patch to then watch Rybka play while reporting it's actual depth of search, and *they* noted that once you see the true search things look visibly very much like Fruit's reported search.
Keep in mind there was an initial legitimate question that I posed to Vas in the Rybka forum "Why did you obfuscate search reporting?" Vas reported in his own forum that he likes to think of nodes differently than other people, but everyone reading this weak excuse pretty well figured there was another reason why his code deliberately obfuscates it's search. People noted that Rybka search looked like Fruit search once the obfuscation was removed. Further investigation into possible coping of Fruit, pursued by other people, not me... may have been driven by this exposed blatant obfuscation.
My role was to send out information that I found during my effort to demonstrate that Strelka was a reverse engineered Rybka binary. The search depth obfuscation code that I found in that process bothered me, and I wanted to tell people what was in the code. In the Rybka forum I asked Vas to remove this obfuscation from future versions of Rybka, and Vas replied that he would likely keep this in Rybka. I see that even the latest versions of Rybka still include this search depth and nodes per second obfuscation.
Notice I didn't post anything after giving out my patch. I had written to Robert Hyatt (I've interacted with Bob since the 70's) explaining about this obfuscation built into Rybka, but I did not pursue the topic further. I never participated in an effort to prove that Rybka copied from Fruit.
It is clear for every programmer that no program can see so much tactics that Rybka can see at depth 1 so probably rybka searches deeper than depth 1 when it reports depth 1.
I do not agree that "People noted that Rybka search looked like Fruit search once the obfuscation was removed."
This is simply not correct.
Strelka that is very similiar to Rybka1 beta without the obfuscation and I never noticed that Rybka search looked like Fruit search based on the output of both engines.
Obfuscation does not change the observed search and I easily noticed that Strelka1.8's search is almost the same as Rybka1 beta search
It is easy to see that there are positions when Rybka's output at depth 6,7,8 is almost the same as Strelka's output at depth 9,10,11
It does not happen with Rybka and Fruit for the simple reason that Rybka is clearly different than fruit.
Note that I also disagree with K I Hyams that Strelka is a fruit clone.
Strelka that is free source code has little in common with fruit.
The move generator of strelka is clearly different and is based on bitboards.
The evaluation is also different(and it is not close to be exact translation of fruit's evaluation).
The evaluation
