Rybka is made out of People! (serious problem exposed)

Discussion of chess software programming and technical issues.

Moderator: Ras

rfadden

Re: Rybka is made out of People! (serious problem exposed)

Post by rfadden »

So I consider the Problem/Issue essentially resolved: The author has considered this input, and he indicates he's taking his own fresh approach in Rybka 3.0.

I like that! I feel that my concern has been heard and I'm happy with the overall process of discussion here and there.

Thanks everyone!
Rick
User avatar
Ross Boyd
Posts: 114
Joined: Wed Mar 08, 2006 9:52 pm
Location: Wollongong, Australia

Re: Rybka is made out of People! (serious problem exposed)

Post by Ross Boyd »

Well, after reading the (mostly) negative reactions to Rick's original post I'm glad to see that Vas has responded in the Rybka forum and has agreed to revisit the way Rybka 3 counts nodes.

IMHO Rick was a little 'over the top' in some ways - and yes it is old news to most.... however, nobody had documented the _exact_ mechanism that Rybka was using for node counts. But, I guess, knowing these details for 2 years and 'sitting on your hands' must have led to a certain uncorking when he decided to 'reveal all'. It was definitely interesting reading from a chess programmer's POV. Thanks Rick for posting your findings.

On another 'deciphering Rybka' topic, when Rybka first came out I had the subjective opinion that she employed a multi-level search with special extensions for passed pawn conditions. Through observing her games I felt Rybka's passed pawn eval was more sophisticated than most, and seemed to strongly encourage the coordination of supporting pieces to build a well-protected path to promotion.

When Strelka's code was released I had the opportunity to see how this was accomplished. I'm amazed at how fiendishly simple and elegant Rybka's approach was.... just a simple attacker/defender count of the passed pawn's remaining steps to promotion.

All this bears out something Vas said a few years ago that he was mostly interested in in discovering which eval terms are actually important to a chess engine's strength. There are many terms that are either counter productive or just too costly and this too was confirmed by Fruit's success with a simple eval.

Oh, one other story.... in my engine TRACE... for years I had wanted to evaluate piece constellations or material imbalances as it is called in order to avoid bad simplifications and for pruning. I could never work out a good way to implement it... until one night lying in bed I had a 'Eureka' moment and came up with a simple and obvious array indexed by all the piece counts. Voila! It was a little cache unfriendly but with the right weightings had great potential. I was very excited and coded this into TRACE 2.

Unbelievably, Strelka code was released maybe 6 or more months later and what do I see? The EXACT SAME material imbalance lookup..... the main difference was that Strelka/Rybka had the actual evaluation weightings and it all worked.

I guess that's because Vas is a genius and I'm, well, I'm just an Australian.

Ross