Miguel Ballicora wrote: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.
Due to my method of regenerating the "wave" nature of
KnightRank as 2 less than
(r-(2<<(r^6)))&7, I found your "SixthRank" parameter to be quite odd when I saw it, but that's just a side comment. I think the PSTs are
conceptually related (and indeed, aren't most PSTs [maybe they fall into 2 or 3 "equivalence classes" of similarity], particularly those from the same author?), though quite different in their instrumentation [and as you say, Fruit 1.0 is more "disorganized" -- FL told me that he deliberately tried to reduce the "dimensionality" of the question, so as to tune it easier]. Of course, with Rybka 1.0 Beta we only have the end result of PST, so we can't compare methods directly.
Here is a guess as to how likely the Fruit/Rybka match for "centralisation ramping parameters" should be "at random" -- it uses lots of assumptions, but I think most are reasonable. What are the common elements of the Fruit/Rybka PST? I think it is fair to eliminate KingOpening, as though the file array is the same, the rank differs. Similarly with PawnOpening (the difference in "bonus squares"), and I don't think the fact that Rybka uses nontrivial PawnEndgame PST is anything to speak of. Similarly, I think QueenOpening can be eliminated, as Fruit 2.1 has a parameter that is 0, thus obscuring the picture. With RookEndgame PST being zero, this leaves 7 PSTs, involving 5 pieces. I think the
-2,-1,0,1 of RookOpening
is reasonable to keep, as there at least is a direct comparison (no matter how perfunctory). One can try to extract "partial information" from the some of the above, but I will not.
So the next step is to choose a "mainstream" ramping array. I think there are at least 3 reasonable ones (my glance at ~50 open-source programs suggests a greater number, but I won't dispute), of which both chose
-3,-1,0,1. As you say, the 5 or 7 choices of when to use this are not independent. One can argue that the "times to vary" from the mainstream array consist of either 7-choose-3 (2N and 1R array), or 5-choose-2 (vary for N and R). This is at least a 1 in 10 chance that the "varying" from the mainstream occurs at the same places -- it seems rather unclear to me whether one could argue that it is "natural" that N/R "should" vary from the others, particularly as any "extra" centralisation impact (for N) could be obtained in a similar way by (say) doubling everything. Then there is the choice of "varying" element. If there were 3 reasonable arrays to begin, there is a 1 in 2 chance for each variance to match (I think these are reasonably independent). This gives a total of 3 x 10 x 2 x 2, or about 1 in 120 for the "centralisation" structural match in Fruit/Rybka.
One can additionally adduce the KnightRank, where (say) it might be logical for it to be more "mainstream", such as
-3,-1,0,1,2,2,1,0, but I think the argument suffices w/o this.
This is an imperfect mathematical model of the situation, but I think it gives a ballpark estimate. If nothing else, it shows that VR had "something to answer" about the situation, and more specifically than just a vague "took lots of things" comment, or an assertion that this was merely "common chess knowledge" or the like.