Questions for BB about Rybka PST = Fruit PST
Re: Questions for BB about Rybka PST = Fruit PST
I think you still fail to understand the lesson of Miguel's experiments.
Which is,
Similar numbers in chess programs are to be expected because numbers CAN NOT differ to too much for the simple reason it is knowledge.
There is no randomness in knowledge, just small different fluctuations.
Which is,
Similar numbers in chess programs are to be expected because numbers CAN NOT differ to too much for the simple reason it is knowledge.
There is no randomness in knowledge, just small different fluctuations.
-
- Posts: 1242
- Joined: Thu Jun 10, 2010 2:13 am
- Real Name: Bob Hyatt (Robert M. Hyatt)
- Location: University of Alabama at Birmingham
- Contact:
Re: Questions for BB about Rybka PST = Fruit PST
Rebel wrote:I think you still fail to understand the lesson of Miguel's experiments.
Which is,
Similar numbers in chess programs are to be expected because numbers CAN NOT differ to too much for the simple reason it is knowledge.
There is no randomness in knowledge, just small different fluctuations.
Then how is the remainder of the Crafty PST data SO DIFFERENT from fruit? Don't even have a rook PST. King PST is 6 tables rather than 2. Wildly different numbers. Pawn values wildly different. Cray Blitz added both king attack and piece centralization scores into the PST. So saying "small different fluctuations" is a pretty gross exaggeration based on existing evidence...
Re: Questions for BB about Rybka PST = Fruit PST
I realise I'm indulging in pedantry, but I just wanted to point out why one cannot disassociate the process from the parameter count.
Here is a generation of Fruit/Rybka opening knight PST, using no ramping arrays, just 3 inputs.
At the other end of the spectrum, one can simply have an empty PST "process", which simply loads in 64 values from an array of parameters.As I say, I'm being pedantic.
Here is a generation of Fruit/Rybka opening knight PST, using no ramping arrays, just 3 inputs.
void KnightOpeningPST(int x,int y,int z) // (347,358,3200) for Rybka, (5,5,100) for Fruit {int f,r,s,c,w,u=(x<<3)+(y<<1); for(r=0;r<8;r++)for(f=0;f<8;f++) {s=(1<<r)+(1<<(r^7)); c=(BSF(s)<<1)-((s&010)>>3); w=(r-(2<<(r^6)))&7; s=(1<<f)+(1<<(f^7)); c+=(BSF(s)<<1)-((s&010)>>3); A[r][f]=c*x+w*y-((r==7)&(f==0||f==7))*z-u;} MY_PRINT(A,8,8);}
At the other end of the spectrum, one can simply have an empty PST "process", which simply loads in 64 values from an array of parameters.
Code: Select all
int PARAMS[8][8]={{-40,-30,...},{...},...}; int i,j;
for(i=0;i<8;i++)for(j=0;j<8;j++)A[i][j]=PARAMS[i][j]; MY_PRINT(A,8,8);
Re: Questions for BB about Rybka PST = Fruit PST
Your word "similar" is disingenuous. Fruit and Rybka have the same numbers in (too) many examples, once the Fruit 2.1 process is assumed. No one has ever argued that PST numbers cannot be generically "similar", only that Rybka's can be re-produced exactly in many cases via the specific Fruit 2.1 process. Or to put it in terms of your second sentence, Fruit and Rybka have the same fluctuations in their knowledge of "ramping arrays".Rebel wrote:Similar numbers in chess programs are to be expected because numbers CAN NOT differ to too much for the simple reason it is knowledge.
There is no randomness in knowledge, just small different fluctuations.
-
- Posts: 26
- Joined: Tue Aug 09, 2011 7:58 pm
- Real Name: Miguel A. Ballicora
Re: Questions for BB about Rybka PST = Fruit PST
Yes, after 2005 many engines became Fruit influenced, which speaks about how spread many of these concepts became.BB+ wrote:The reason why I said this is that after 2005, many more engines became Fruit-influenced, and the exercise is easy. I would still argue that the PST ramping arrays are exactly the point in the Fruit/Rybka comparison. Once one specifies the process that is apparent in Fruit 2.1, from the Rybka data one derives ramping arrays that are overly common with Fruit's choices for the same. This is not true if you change the process (for instance, you might use the Fruit 1.0 method), but then I've argued that the assumption of this process is a reasonable one.Miguel Ballicora wrote:Tough challenge, but it is not relevant to my point. Why pre-2005 anyway?BB+ wrote:Here is the challenge: find another pre-2005 engine that reproduces so many PSTs via the Fruit process that recurs "overly often" in Rybka, that is without changing the "ramping arrays".
BTW, This may be unrelated, but when I look at Fruit 1.0, it looked to me that Fabien was using a similar mental approach, with a higher edge and corner penalty. Just using the whole 2D-table unrolled, and the bonuses looked more disorganized, but they were there (diagonals were present, bonus for 6th rank for knight were explicit, but he later expressed them neatly with a vector etc.). I think that Fruit 2.1 and 1.0 were conceptually very related.
To place all those in the same terms,On the contrary, I would note he has three different "centralisation" tables, -4 -2 0 1 (for knights), -3 -1 0 1 (for kings/queens/bishops, and pawn files), and -2 -1 0 1 for rooks. If he had used the same -3 -1 0 1 throughout, I might conclude differently. Rybka happens to diverge from the "mainstream" case at the same junctures (R/N) that Fabien did, and in the same way. My understanding of copyright law is that is exactly the sort of nuance that is distinctive of a work, particularly when considering an overall pattern/picture.First of all, once you adopt a system, 0,1,2,3, it is likely that you will adopt the same for other tables. In fact, that is why Fabien re used them.
[-4 -2 0 1] is the same if we used a 2x multiplier to [-2 -1 0 0.5] lets dissect what all they mean
Vector = [ramp] + [normalization] + [edge penalty]
[-2 -1 0 0.5] = [0,1,2,3] + [-2,-2,-2,-2] + [ 0,0,0,-0.5]
[-2 -1 0 1] = [0,1,2,3] + [-2,-2,-2,-2] + [0,0,0,0]
[-3 -1 0 1] = [0,1,2,3] + [-2,-2,-2,-2] + [-1,0,0,0]
The only real difference between them is a minor tweaking on the edge penalties. The knight one flattens the center. That would be needed if you increase the multiplier and the slope is too big (as it is).
My point, which is the core of our disagreement, is that I do not consider these set of four numbers, in which the one you can really vary are the edges, an issue for rule #2. I do not see this is distinctive.
Yes, that was a mistake. it is -6,-2,0,2My guess is the first should be -6,-2,0,2. I would say the list of "obvious" transforms ends there (scaling and adding), so what is in your "etc" besides their combination? If you note, I carefully ensured that none of mine were equivalent under such affine linear transformations, though all were (unlike CW's example) giving some criterion for centralisation.In addition, I do not agree there are so many "distinct" possibilities. For instance, -3,-1,0,1 is the same as -6,-2,0,1 (you change later a multiplier) and basically the same as 0,2,3,4 (add a constant a the end) etc
[-4,-1,0,1] [-3,-1,0,1] [-2,1,0,1] [0,0,2,3] [-4,-2,0,3]
etc did not mean more than "something else it does not occur to me now."
It is not the point that it little or big. My point is that it is not unique (extremely low information content). There are many things that could fall under fair use, too, particularly if it is acknowledged (we know VR studied the code and admitted it). If you learn something and apply it in your own way, it is difficult to rebut fair use. Anyway, I am not interested in the least in the legal matters. If the law says that copying a small set of numbers is illegal, then so be it, and hang VR. But let's make sure that the law takes into account the real magnitude of the alledge copying. Which was not hundreds of numbers like Bob wanted everybody to believe.The point is: computer chess programmers do have some options (~3 here, for just this one choice), and that the numbers for F/R are not "really close", but precisely the same in too many cases, and in distinctive ways. As above, I don't think this is untypical for the sort of commonalities in copyright/originality/plagiarism when there is a general store of knowledge. A relevant case law quotation: [...] the transgression in its unauthorized appropriation is not to be neutralized on the plea that 'it is such a little one'.Fruit uses [-1,0,0,0], you propose one option that is [0,0,0,0] and another that is [-2,0,0,0], and third one that changes both ends [+2,0,0,-1] (multiplying the ramp previously by 2) but it looks a bit less reasonable. We really do not have millions of options. Most CC programmers will chose numbers really close to each other.
Miguel
-
- Posts: 26
- Joined: Tue Aug 09, 2011 7:58 pm
- Real Name: Miguel A. Ballicora
Re: Questions for BB about Rybka PST = Fruit PST
Yes, it is possible that someone has a table that is very different. So? You did not use ramps. Even when you did not, one of the tables was the same! that should tell you something. But, if you decided to use ramps (is that not allowed?), chances to converge increases even more.hyatt wrote:Rebel wrote:I think you still fail to understand the lesson of Miguel's experiments.
Which is,
Similar numbers in chess programs are to be expected because numbers CAN NOT differ to too much for the simple reason it is knowledge.
There is no randomness in knowledge, just small different fluctuations.
Then how is the remainder of the Crafty PST data SO DIFFERENT from fruit? Don't even have a rook PST. King PST is 6 tables rather than 2. Wildly different numbers. Pawn values wildly different. Cray Blitz added both king attack and piece centralization scores into the PST. So saying "small different fluctuations" is a pretty gross exaggeration based on existing evidence...
BTW, your queen table is not _wildly_ different. It is just different on the edges. You knight tables conserved most of the concepts (centralization, corner trap, bonus for 6th rank), except that you decided to make the scores the same for most edge squares.
You do not have a rook table, but previously you had, and it look very similar except for the edge score. Rather than using -2,-1,0,1 you could have mimicked it with something like -1,-1,0,1, (but I am quoting from memory so this may be slightly incorrect).
Miguel
Re: Questions for BB about Rybka PST = Fruit PST
OK, I think then we agree on the whole. If there were nothing but the PST evidence for Fruit/Rybka, I might say that [if successful in proving this] FL could could claim some piddly (<1%, perhaps <0.1%) amount of Rybka profitability under the heading of copyright infringement. OTOH, I would continue to insist that such "piddly" amounts are indeed "actionable" under the law [in a different post, I pointed out that my Fireside Book of Chess has 400 pages, including maybe 10 or so pop-culture chess cartoons at the end of various chapters as space-filler -- each is <0.2% of the book content, yet all are notable creative content, and all have a "reproduced with permission of" notice].Miguel Ballicora wrote:If the law says that copying a small set of numbers is illegal, then so be it, and hang VR. But let's make sure that the law takes into account the real magnitude of the alledge copying.
I also agree that the ICGA process(es) should take into account the gravity of this evidence. I think there has been both some exaggeration of the gravity of PST, and (perhaps due to that) some exaggeration of how largely it weighed in any recommendation or decision process. It's also the case that PST appeared on pages 2-5 (in other words, first) of the PDF of Zach's work, which was also the first of the technical documents in various lists-of-links, and various people seemed to have given up reading at that point.
Finally, just on the general "degree of guilt" issue, I've said elsewhere that I concurred with Gerd's comment in the Report, in that the "ideal" solution to the R/F mess would just to be let FL be named as "co-author" for 2006/7 (perhaps additionally replacing "Rybka" with "Fruit/Rybka" if it makes one happy) -- however, I think that reaching this "remedy of mis-appropriation" endpoint would have required some dialogue with VR [you can't easily do this w/o him being at least partially agreeable, even if so agreeing he still strongly asserts that Rybka was indeed "original"by his understanding], which for various reasons proved too unwieldy (ICGA-phobia one side, perhaps an irreconciliatory tone in some documents on the other, maybe some left-over bad-blood between Levy/Rajlich regarding the missed opportunity in 2007).
There are a few partial precedents for the ICGA and/or computer chess with allowable levels percentages of "borrowed material" (and what is exempt from it), but the Panel never really discussed PST directly, so as to provide any guidelines regarding its status. As many others have noted (Adam Hair, Richard Vida, ...) fleshing this stuff out could be a wise course of action. Though one suspects, as per the norm homo politicus, some committee will be formed, which will have some (small) subset who does the actual work; this then gets rubber-stamped, with the inevitable conclusion that everyone else fills up chess fora with their grievances, either specific or philosophical. [I personally don't think the ICGA should aim to become a generic "sanctioning body" for rules/guidelines in computer chess, but rather each tourney and/or testing group should follow what they feel best -- no matter what is decided, it does (of course) fall on the authors to be upfront about their engine origins].
Re: Questions for BB about Rybka PST = Fruit PST
This is not true. I found the panel members to be very critical. Evidence was carefully examined, and corrected and expended when information was found missing or incomplete. Several panel members played devil's advocate, arguing for Vas's side. Stating that Chris wold have been the only "critical voice" implies the panel members were dishonest in their duties. I found the active panel members were serious and scientific, and certainly critical.Rebel wrote:It's far more likely I will never enter an IGCA panel that first refuses to enter the only critical voice (how convenient) and then punish out of proportion without even considering their own role in the drama, not even have the politeness of an answer when you address it.
-
- Posts: 1242
- Joined: Thu Jun 10, 2010 2:13 am
- Real Name: Bob Hyatt (Robert M. Hyatt)
- Location: University of Alabama at Birmingham
- Contact:
Re: Questions for BB about Rybka PST = Fruit PST
mballicora wrote:Yes, it is possible that someone has a table that is very different. So? You did not use ramps. Even when you did not, one of the tables was the same! that should tell you something. But, if you decided to use ramps (is that not allowed?), chances to converge increases even more.hyatt wrote:Rebel wrote:I think you still fail to understand the lesson of Miguel's experiments.
Which is,
Similar numbers in chess programs are to be expected because numbers CAN NOT differ to too much for the simple reason it is knowledge.
There is no randomness in knowledge, just small different fluctuations.
Then how is the remainder of the Crafty PST data SO DIFFERENT from fruit? Don't even have a rook PST. King PST is 6 tables rather than 2. Wildly different numbers. Pawn values wildly different. Cray Blitz added both king attack and piece centralization scores into the PST. So saying "small different fluctuations" is a pretty gross exaggeration based on existing evidence...
BTW, your queen table is not _wildly_ different. It is just different on the edges. You knight tables conserved most of the concepts (centralization, corner trap, bonus for 6th rank), except that you decided to make the scores the same for most edge squares.
You do not have a rook table, but previously you had, and it look very similar except for the edge score. Rather than using -2,-1,0,1 you could have mimicked it with something like -1,-1,0,1, (but I am quoting from memory so this may be slightly incorrect).
Miguel
1. I did use ramps. Just not coded as a multiplier vector. Just a loop counter that ramps by 1, 2, 3, 4...
2. I specifically mentioned king and pawns as "wildly different". Knight maybe less-so. Rooks are "pretty wildly different" since I don't have one at all...
3. My primary point here is that there are several other alternatives. At least 4 public approaches to PST.s
a. The normal "fruity" approach.
b. the crafty king pst approach with multiple PSTs available, one chosen depending on OTB situation.
c. the cray blitz approach that combines a normal centralization set of values and a set of values to attract each piece to the opponent's king area.
d. the stockfish approach that adds the material value for the piece to the PST to avoid that addition somewhere else...
I think there are more "options" than you are considering, because you are pretty focused on the fruit approach, which was used in Rybka. But there are lots of other alternatives. And for each alternative there are multiple ways to "get there". From direct computation, to incremental update, to table lookups, to combinations of those...
No there probably aren't millions of ways to do each thing. But there are certainly dozens of ways to do many things, and more than a few exact matches is more than one can lay at the feet of "brother chance"...
Re: Questions for BB about Rybka PST = Fruit PST
Hi Mr. Lefler,mjlef wrote:This is not true. I found the panel members to be very critical. Evidence was carefully examined, and corrected and expended when information was found missing or incomplete. Several panel members played devil's advocate, arguing for Vas's side. Stating that Chris wold have been the only "critical voice" implies the panel members were dishonest in their duties. I found the active panel members were serious and scientific, aind certainly critical.Rebel wrote:It's far more likely I will never enter an IGCA panel that first refuses to enter the only critical voice (how convenient) and then punish out of proportion without even considering their own role in the drama, not even have the politeness of an answer when you address it.
I think some of the general perception that the Panel had no critical voices is the implied (actually I think that Bob voiced this opinion but I don't have the time to track it down) that the Panel was prosecutorial in nature. Thus, it may have been assumed that the Panel was only engaging in the act of collecting evidence against Vas and perhaps not focused on a critical examination of the evidence.
Adam