Computer Chess Club Archives




Subject: Re: Secrets of Rybka and Fruit from my point of view

Author: Uri Blass

Date: 03:47:50 12/16/05

Go up one level in this thread

On December 16, 2005 at 01:49:44, Stuart Cracraft wrote:

>On December 15, 2005 at 21:14:17, Ryan B. wrote:
>>On December 15, 2005 at 19:57:45, Uri Blass wrote:
>>>On December 15, 2005 at 19:38:51, Stuart Cracraft wrote:
>>>>On December 15, 2005 at 19:18:37, Uri Blass wrote:
>>>>>I also agree and I never underestimated fruit's evaluation.
>>>>>It is possible that the main reason for it's superior evaluation is the idea of
>>>>>average between opening and endgame but it is fact that it has a superior
>>>>Really? Just the line from fruit:eval.c:
>>>>  eval = ((opening * (256 - phase)) + (endgame * phase)) / 256;
>>>>I find that VERY hard to believe. That concept has been around a
>>>>very long-time.
>>>I do not read much source code of free programs so I do not know but I wonder
>>>if free source code programs before fruit use that idea and have for every term
>>>endgame evaluation and opening evaluation.
>>>I use it for some things and I learned the idea from fruit but most of my
>>>evaluation does not use that idea and I may rewrite the evaluation and test.
>>>>You must propose something better.
>>>>Superior evaluation?
>>>>That code is trivially small.
>>>>So, small is beautiful?
>>>bigger has the potential to be better but it is not always better.
>>>I believe that Rybka's evaluation is even better than fruit's evaluation but
>>>fruit's evaluation is better than the evaluation of most top programs including
>>A strong point of Fruits eval is that it is more accurate than it is deep.  Many
>>people think they will have a better eval by having more knowledge but end of
>>having bad chess knowledge that does not work well this other knowledge in the
>Perhaps some kind soul could just take the Fruit 2.1 eval and implement
>it in their program and tell us the difference in Arena-play for the two
>of them in a round-robin with many others.
>Any takers?

I do not think that it is an easy job to do it without bugs.

I think that the best plan to do it has the following steps:
1)translate fruit's evaluation to human language.
2)modify fruit to calculate some type of perft function on it's evaluation
3)implement every component of fruit on your program
4)check that your program has no mistake in predicting fruit's evaluation by
calculating the same perft function on fruit code.

If somebody does steps 1 and 2 then it is going to encourage me to try 3 and 4.


This page took 0 seconds to execute

Last modified: Thu, 15 Apr 21 08:11:13 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.