To Moderation - personal attacks on Vas

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

Moderators: hgm, Rebel, chrisw

K I Hyams
Posts: 3584
Joined: Fri Mar 31, 2006 11:21 pm

Re: To Moderation - personal attacks on Vas

Post by K I Hyams »

Matthias Gemuh wrote:
Eelco de Groot wrote:
Bill Rogers wrote: The Coding looks identical to Crafty with only different weights.
The biggest question is WHO COPIED WHO?
Bill the guy was obviously just feeding the flames. I am sure there is indentical looking code in Fruit and Crafty that Robert can claim his own but this part does not seem to be in Fruit. I could not find it as I could not find any separate pawn hash in Fruit also ...

Thanks,
Eelco
That is typical of Bill Rogers.
He should better be ignored.

Matthias.
Matthias, you need to read between the lines of the subject.
Sven
Posts: 4052
Joined: Thu May 15, 2008 9:57 pm
Location: Berlin, Germany
Full name: Sven Schüle

Re: To Moderation - personal attacks on Vas

Post by Sven »

Eelco de Groot wrote:
Bill Rogers wrote: The Coding looks identical to Crafty with only different weights.
The biggest question is WHO COPIED WHO?
Bill the guy was obviously just feeding the flames. I am sure there is indentical looking code in Fruit and Crafty that Robert can claim his own but this part does not seem to be in Fruit. I could not find it as I could not find any separate pawn hash in Fruit also but there again, I'm not much good with the transposition table code. I think Zach Wegner specifically mentioned this small part, it is just a speeding/storage trick for castling info if you save the pawn formations separately in its own hash if I understood Robert, sorry if not, it's hardly the whole King Safety, but mentioned because it is a tracer for Crafty code. Zach should have been a bit more specific, exactly because it leads to situations like this.

Thanks,
Eelco
Both Fruit 2.1 and Crafty 23.1 have a separate pawn hash table. For me it looks as if both are using it mainly for speedup of pawn structure evaluation. But the two implementations look very different for my eyes, they don't have much in common. And in Crafty the pawn hash code also covers code related to castling evaluation while in Fruit 2.1 this (EDIT: castling eval) is done without pawn hash, and also in a different way as far as I can see.

Sven
User avatar
Eelco de Groot
Posts: 4561
Joined: Sun Mar 12, 2006 2:40 am
Full name:   

Re: To Moderation - personal attacks on Vas

Post by Eelco de Groot »

Sven Schüle wrote:
Eelco de Groot wrote:
Bill Rogers wrote: The Coding looks identical to Crafty with only different weights.
The biggest question is WHO COPIED WHO?
Bill the guy was obviously just feeding the flames. I am sure there is indentical looking code in Fruit and Crafty that Robert can claim his own but this part does not seem to be in Fruit. I could not find it as I could not find any separate pawn hash in Fruit also but there again, I'm not much good with the transposition table code. I think Zach Wegner specifically mentioned this small part, it is just a speeding/storage trick for castling info if you save the pawn formations separately in its own hash if I understood Robert, sorry if not, it's hardly the whole King Safety, but mentioned because it is a tracer for Crafty code. Zach should have been a bit more specific, exactly because it leads to situations like this.

Thanks,
Eelco
Both Fruit 2.1 and Crafty 23.1 have a separate pawn hash table. For me it looks as if both are using it mainly for speedup of pawn structure evaluation. But the two implementations look very different for my eyes, they don't have much in common. And in Crafty the pawn hash code also covers code related to castling evaluation while in Fruit 2.1 this (EDIT: castling eval) is done without pawn hash, and also in a different way as far as I can see.

Sven
Thanks Sven! At least you quoted me in full! I never did study the transposition code in Fruit or Toga but did look at it again shortly yesterday, but missed in the pawn.cpp things like

Code: Select all

   // pawn hash-table

    for &#40;ThreadId = 0; ThreadId < NumberThreadsInternal; ThreadId++)&#123;
        Pawn&#91;ThreadId&#93;->size = 0;
        Pawn&#91;ThreadId&#93;->mask = 0;
        Pawn&#91;ThreadId&#93;->table = NULL;
    &#125;
&#125;
:oops:

I was more sure about the King safety code though, I changed the code in it quite a few times. But it has been a while since I last looked at it. Everything is calculated again using the position of the King on the board so I did not see any use of pawn hash there.

Eelco
Debugging is twice as hard as writing the code in the first
place. Therefore, if you write the code as cleverly as possible, you
are, by definition, not smart enough to debug it.
-- Brian W. Kernighan
bob
Posts: 20943
Joined: Mon Feb 27, 2006 7:30 pm
Location: Birmingham, AL

Re: To Moderation - personal attacks on Vas

Post by bob »

Bill Rogers wrote:
Nasir_Shaheen wrote:
bob wrote:
Spock wrote:For the record then - are you accusing Vas of being a liar when he says Rybka is 100% original source code ?
If he says Rybka 1 has no fruit code whatsoever, then I would certainly say that. If he simply says "Rybka has no fruit code" that is a different statement, since I have not personally looked at any disassembled Rybka 2 or 3 code at all.

But rest assured, Rybka 1 does have code from Fruit. Unless you somehow believe that two different people can write identical code completely independently, for a program as complex as chess. Students don't write identical code for assignments that are 100-200 lines long. Or even for assignments 50 lines long. Statistically, I suppose it _could_ happen. Just as I could flip 1,000,000 heads in a row. But it is not very likely at all.
Hi Hyatt , Some young programmer Zach Wegner has given some points in rybka forum to show that rybka 1 is based on fruit , the points he given are following :

" Rybka's piece square tables are generated from the same code as Fruit's (same KnightRank, etc. constants, but different KnightRankOpening weights)
Rybka's pawn evaluation is virtually identical to Fruit's (different weights again, candidate pawns and backward pawns have a very slightly different formulation)
Rybka's passed pawn evaluation is virtually identical to Fruit's (same bonuses using the quad array {0...,26,77,154,256}, only difference is weights and free_passer split into 3 separate bonuses and based on rank)
Rybka's piece evaluation is virtually identical to Fruit's (different weights only)
Rybka's king shelter evaluation is virtually identical to Fruit's (different weights again, king square generalized to C1, E1, or G1 to store in the pawn table, and a slightly different formula for shelter_file()/storm_file())
Rybka's king safety evaluation is virtually identical to Fruit's (different weights for KingAttackWeight, KingAttackUnit)
Rybka's "pattern" evaluation is virtually identical to Fruit's (different weights, TrappedBishop is not halved for A6/H6).

I have confirmed all of this from reverse engineering Rybka 1, though anyone can see for themselves by looking at *****. Rybka's entire evaluation is basically an optimized and tuned bitboard translation of Fruit's, with Fruit's material evaluation replaced by the infamous lookup table. EVERY single evaluation term in Rybka 1, except for the material imbalance table, appears in Fruit. If everyone wants to consider that "original", then computer chess is really dead.
And this is only the evaluation. There are many more similarities.. "
..........................................................................................................

As i don't have any back ground in Programming so I want your openion on these points . Are these points valid ?
If YES , then there is not doubt that Vas has violated the GPL.

Also in this case reverese engineering the current Rybka is absolutely legal.
If you would read Robert Hyatts posting on this topic you would see that he claimes to have created the King Safty routing 10 or 12 years ago and yet there it is in Fruit and Rybka so who in the hell is coping who? Did Fruit copy some of Craftys code? The Coding looks identical to Crafty with only different weights.
The biggest question is WHO COPIED WHO?
I've not compared fruit vs crafty to see how this was done. I simply pointed out that this specific idea was in Crafty years before Fruit existed. Whether the code was copied from Crafty, or whether the idea was copied and the code looks completely different is unknown. The latter would be perfectly acceptable, of course, while the former would not be.
User avatar
Eelco de Groot
Posts: 4561
Joined: Sun Mar 12, 2006 2:40 am
Full name:   

Re: To Moderation - personal attacks on Vas

Post by Eelco de Groot »

K I Hyams wrote: Matthias, you need to read between the lines of the subject.
There is nothing to read between the lines.

Thanks,
Eelco
K I Hyams
Posts: 3584
Joined: Fri Mar 31, 2006 11:21 pm

Re: To Moderation - personal attacks on Vas

Post by K I Hyams »

Eelco de Groot wrote:
K I Hyams wrote: Matthias, you need to read between the lines of the subject.
There is nothing to read between the lines.

Thanks,
Eelco
There is, if you identify the correct subject.
User avatar
Graham Banks
Posts: 41415
Joined: Sun Feb 26, 2006 10:52 am
Location: Auckland, NZ

Re: To Moderation - personal attacks on Vas

Post by Graham Banks »

Matthias Gemuh wrote: That is typical of Bill Rogers.
He should better be ignored.

Matthias.
Isn't this a personal attack on Bill? :(
gbanksnz at gmail.com
User avatar
Matthias Gemuh
Posts: 3245
Joined: Thu Mar 09, 2006 9:10 am

Re: To Moderation - personal attacks on Vas

Post by Matthias Gemuh »

Graham Banks wrote:
Matthias Gemuh wrote: That is typical of Bill Rogers.
He should better be ignored.

Matthias.
Isn't this a personal attack on Bill? :(
No, it is a recommendation to those genuinely seeking the truth. ;)

Matthias.
My engine was quite strong till I added knowledge to it.
http://www.chess.hylogic.de
K I Hyams
Posts: 3584
Joined: Fri Mar 31, 2006 11:21 pm

Re: To Moderation - personal attacks on Vas

Post by K I Hyams »

Graham Banks wrote:
Matthias Gemuh wrote: That is typical of Bill Rogers.
He should better be ignored.

Matthias.
Isn't this a personal attack on Bill? :(
Sounded that way to me as well, that is why he needed to read between the lines. Still, we mustn't expect sensitivity, that would be too much to ask.
Last edited by K I Hyams on Mon Dec 14, 2009 8:13 pm, edited 1 time in total.
sockmonkey
Posts: 588
Joined: Sun Nov 23, 2008 11:16 pm
Location: Berlin, Germany

Re: To Moderation - personal attacks on Vas

Post by sockmonkey »

bob wrote:I'm talking about the people that actually looked at and discussed this stuff. There's a whole lot more than "just a very small part"....
Is any of this analysis available for (semi-)public consumption? This whole he-said/he-said dance is annoying and I'd like to inform myself, if possible.

Thanks
Jeremy