Is Belka a Rybka?

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

Moderator: Ras

Christopher Conkie
Posts: 6074
Joined: Sat Apr 01, 2006 9:34 pm
Location: Scotland

Re: Belka Settings please help me

Post by Christopher Conkie »

GenoM wrote:
Christopher Conkie wrote:
If anyone wants to make "Conka" -- of course, at the moment.
Beat you...

We have got a Clonka already....don't want you (or anyone else) getting confused. That would be "L"ish.
User avatar
GenoM
Posts: 914
Joined: Wed Mar 08, 2006 9:46 pm
Location: Plovdiv, Bulgaria
Full name: Evgenii Manev

Re: Belka Settings please help me

Post by GenoM »

Yes, "Conka" would be the first choice of "Vas". May be you could suggest this brilliant idea to him? You're so close to him, I believe you can :)
take it easy :)
mjlef
Posts: 1494
Joined: Thu Mar 30, 2006 2:08 pm

Re: Is Belka a Rybka?

Post by mjlef »

Here is an interesting experiment. Talke Belka 1.8.13. It comes with two files. One is a header file (EvalConsts.h) describing what some variables do. Although the comments ar ein Russian, I had a Bulgarian friend translate the comments for me. Variable names are very close to what is used in the Piece Square Table (PST.cpp) file that comes with Fruit. For example:

extern int BishopLine[8];

in Fruit this is:

static const int BishopLine[8] = {
-3, -1, +0, +1, +1, +0, -1, -3,
};

In fact, most of the names appear in Fruit and have the same apparent meanings. There are som new terms (not a lot), sveral involving a more detailed passed pawn evaluation.

So, I go to thinking. the person.txt file lets you set new values to be used for any of the terms in person.txt. If you have an empty person.txt, it reverst all values to whatever the defaults are. You can quikly figure out what the default values are by putting numbers in one line like this:

BishopLine 0 0 0 0 0 0 0 0

that would set these values to all 0. You then run a short search to a fixed depth, change the values and run again. When I did this, and used the fact written here that 3399 is a "pawn", so 33.9 would be 1/100 th a pawn (used in Fruit), the values for BishopLine when divided by 33.9 come out to:

-3, -1, 0, 1, 1, 0,-1, -3

Exactly the values used in Fruit 2.1. And this is true for all the "Line" variables I tried, and many of the other constants as well. If Belka is a clone it certainly has a lot of Fruit in it.

This seems to be evidence that the author starte dwith Fruit as a model, which I think was mentioned here.
User avatar
GenoM
Posts: 914
Joined: Wed Mar 08, 2006 9:46 pm
Location: Plovdiv, Bulgaria
Full name: Evgenii Manev

Re: Is Belka a Rybka?

Post by GenoM »

Hi Marc
I think you've missed something: there was an examination of sources of Strelka (by experts in this field) and their conclusion was that Strelka is not a clone of Fruit.
take it easy :)
User avatar
Graham Banks
Posts: 44973
Joined: Sun Feb 26, 2006 10:52 am
Location: Auckland, NZ

Re: Is Belka a Rybka?

Post by Graham Banks »

Harvey Williamson wrote:
Graham Banks wrote:
geots wrote:Harvey, correct me if im wrong. The whole Strelka issue is what it is: it just depends on who you ask right now. But for anyone to create a program or offshoot of one, and name it Belka- seems like just a slap in the face to anyone who seriously cares about computer chess.

Best,
My understanding is that the Belkas are just beta versions of a modified Strelka put together by the WildCat author.
I doubt there will be an actual final engine release called Belka. Probably just a new and improved Strelka.

Regards, Graham.
Another post from the Rybka forum today:
Ray,

first, I appreciate the work of the CCRL. I understand also that internally, this is a difficult topic for you, as you have some Strelka advocates in your team and as this has turned into an emotional topic for some people.

Your explanation, however, just doesn't cut it. Why don't you test Patriot or El Chinito or any of the other clones? Since when are you obligated to wait for a court case? Explain it to yourself however you like, but you are making a statement.

http://www.quotedb.com/quotes/29

Vas
This is good enough for me. I will no longer be testing Strelka now that Vas has publicly made this statement.

Regards, Graham.
gbanksnz at gmail.com
Uri Blass
Posts: 11070
Joined: Thu Mar 09, 2006 12:37 am
Location: Tel-Aviv Israel

Re: Is Belka a Rybka?

Post by Uri Blass »

GenoM wrote:Hi Marc
I think you've missed something: there was an examination of sources of Strelka (by experts in this field) and their conclusion was that Strelka is not a clone of Fruit.
My opinion is that strelka is not a clone of fruit.
I did not claim that the author did not learn from fruit code but I think that he did not start from fruit code and modify it.

Thanks to mark lefler for his comments and maybe they can help me to understand strelka better.

I have a modified version of strelka that is smaller.
Note that somebody asked me to send him the exe file of the modified version of strelka that is smaller and there is no xoring of arrays with random numbers.

I did not answer him and I am not sure if the author allows me to send an exe that is based on smaller code(when there is no modification in the output).

Another note is that Vas claims that he did not xor arrays with random numbers so it is not clear what is the reason that the author of strelka did it.

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

Re: Is Belka a Rybka?

Post by Uri Blass »

GenoM wrote:
Uri Blass wrote:I only know that the fact that the output of strelka is similiar to rybka beta is no accident so I can say that strelka is based on rybka without saying if it is based on rybka's source or based on rybka's output.
Can you tell such a thing about Rybka beta and Fruit 2.1?
Thanks,
Geno
No

I do not think that you can say only based on the output of rybka beta and fruit2.1 that rybka is based on fruit2.1

It is possible that the author learned from fruit but the output of analysis of chess positions does not prove that there is an huge similiarity between them.

Uri
Dave Acevedo

Re: Is Belka a Rybka?

Post by Dave Acevedo »

Good day!

Please permit me to interject. However I do not program and I may be
missing some key knowledge or issues, if I do I apologize...

But I feel there is a basic problem here with this word "clone" and it
resides at the center of this issue.

My view is a clone is an exact copy from head to toe, nothing more
nothing less. Less formally one could say that parts of a code have been
"cloned." But the product of something partially cloned can not rightly
be referred to as a "clone" as in "a complete clone", these should
rightly be called Mods.

I like the idea of Mods. If they are better than
the original it is a success. It's not wrong to stand on someone's
shoulders to make a better engine, after all, that is the goal; the very
best engines possible.

However an author must always describe what they have cloned, except
what is commonly cloned, within the construction of his engine or Mod to
avoid the perception that there is an attempt to pass off cloned code as
original. That would be a deception with bad intent and so the deceiver
must suffer correction as a thief does. But I like the idea of Mods. I
think the word clone needs to be used much much more sparingly if the
author is merely and openly making a Mod.

Dave Acevedo
User avatar
GenoM
Posts: 914
Joined: Wed Mar 08, 2006 9:46 pm
Location: Plovdiv, Bulgaria
Full name: Evgenii Manev

Re: Is Belka a Rybka?

Post by GenoM »

+1 Dave

Respect
take it easy :)
Uri Blass
Posts: 11070
Joined: Thu Mar 09, 2006 12:37 am
Location: Tel-Aviv Israel

Re: Is Belka a Rybka?

Post by Uri Blass »

mjlef wrote:Here is an interesting experiment. Talke Belka 1.8.13. It comes with two files. One is a header file (EvalConsts.h) describing what some variables do. Although the comments ar ein Russian, I had a Bulgarian friend translate the comments for me. Variable names are very close to what is used in the Piece Square Table (PST.cpp) file that comes with Fruit. For example:

extern int BishopLine[8];

in Fruit this is:

static const int BishopLine[8] = {
-3, -1, +0, +1, +1, +0, -1, -3,
};

In fact, most of the names appear in Fruit and have the same apparent meanings. There are som new terms (not a lot), sveral involving a more detailed passed pawn evaluation.

So, I go to thinking. the person.txt file lets you set new values to be used for any of the terms in person.txt. If you have an empty person.txt, it reverst all values to whatever the defaults are. You can quikly figure out what the default values are by putting numbers in one line like this:

BishopLine 0 0 0 0 0 0 0 0

that would set these values to all 0. You then run a short search to a fixed depth, change the values and run again. When I did this, and used the fact written here that 3399 is a "pawn", so 33.9 would be 1/100 th a pawn (used in Fruit), the values for BishopLine when divided by 33.9 come out to:

-3, -1, 0, 1, 1, 0,-1, -3

Exactly the values used in Fruit 2.1. And this is true for all the "Line" variables I tried, and many of the other constants as well. If Belka is a clone it certainly has a lot of Fruit in it.

This seems to be evidence that the author starte dwith Fruit as a model, which I think was mentioned here.
Note that I looked at the code of strelka1.8 and did not find the string
BishopLine inside of it

I also looked for [8] because it may have a different name and I found no names that are about piece square table and I found only names that are about passed pawns.

Maybe Belka include parts of fruit that strelka does not have.

Uri