On MvK

Code, algorithms, languages, construction...
Post Reply
BB+
Posts: 1484
Joined: Thu Jun 10, 2010 4:26 am

On MvK

Post by BB+ » Mon Feb 20, 2012 1:13 am

Marcel van Kervinck writes to ChessBase (addressing Levy, it seems) on the Rybka situation.

As far I can tell, MvK agrees that Rajlich competed in the WCCC with a Fruit-derivative entry. However, he argues that this did not break the ICGA rules, because: 1) Letouzey consented via the GPL; 2) the "submission details" condition [of Rule #2] applies most specifically to literal code, whereas the "original work" clause has had a previous interpretation in that it was not applied to Deep Thought (in 1989/95). The first is erroneous. The second (even admitting the first) seems to be a nugatory analogy for several reasons [and furthermore I think it runs contrary to the Interpretation of Rules as accounted (and clarified) in the LION++ case].

To put this another way, MvK distinguishes between the first sentence of Rule #2 and the following ones, in that he opines only "code" (literal or modified) from others must be declared with the submission details. All well and good [though others may decry it as wordplay], but this doesn't solve the problem that Rybka was found to be in violation of the first sentence: Each entry must be the original work of the entering developers. I think MvK's argument to overcome this obstacle is then that Letouzey consented (via his GPL release) to be a (non-enumerated) "developer" of Rybka [and presumably any other Fruit derivative, declared or undeclared], in line with the Deep Thought precedent (where such permission would seem to have been given explicitly to Hsu by Thompson/Condon).

I apologise if neither of these is an adequate reprisal of his thinking.
marcelk wrote: [...] And in my current opinion, Vas Rajlich did have Fabien Letouzey's permission to use Fruit's formulas in a WCCCh program.

The GPL license does allow that, unlike [Levy's] statement in the ChessBase interview. The GPL can protect reproduction only. Entering a derived work in a tournament is not reproduction [...]
There is a grievous misunderstanding here. The GPL does not "protect" anything per se, but rather is a license. As such, it grants the user permission to do specific things, namely modify, copy, and distribute copies (or derivative works) under various restrictions. MvK improperly interprets this permission to do X, as a permission to do Y [e.g., present oneself as a sole author of a derivative work]. In every judicial system of which I am familiar, permissions are construed in a limited manner. If I permit you to enter my house, do I thus permit you to abscond with my goods? The relevant GPL goes so far as to say: Activities other than copying, distribution and modification are not covered by this License; they are outside its scope, thus making clear that no other permissions are granted by the License. [Perhaps it is good to know that MvK has consented to allow me to present myself as the author of MSCP -- just as long as no distribution is involved :)].

MvK also argues that European regulations should apply [do the laws of Edmonton and Hong Kong apply in 1989/95?], and moreover that civil matters are none of the ICGA's business. This ignores (for instance) the fact that Letouzey's moral rights of authorship were infringed by Rajlich's entry of a Fruit derivative. I should think that is readily apparent that the ICGA must be concerned with issues of provenance for entries to their tournaments, particularly when a (formal) complaint is made in this regard. Furthermore, I don't completely see the relevance of "presmued permission via the GPL" in the first place, as the ICGA could require something additional in any event (see again the LION++ Interpretation of the Rules).

The other issue MvK brings up is that perhaps the same interpretation of the rules was not applied to Deep Thought (being a Belle "derivative" as it were) in 1989 and 1995. This seems faulty on a number of accounts. Firstly, Thompson/Condon have made no complaint. Indeed, Hsu has responded "in-kind", in that he received his information about Belle from their 1983 paper, and he then published his improvements in a 1987 paper (among other places). Contrariwise, Rajlich only included Letouzey in a general thank you with Rybka (mentioning fail-low pruning, but not the evaluation function), and made a wild guess that Fruit was worth 20 Elo to him. There is a lack of proportion in acknowledgment here [whereas this seems not to be case with Belle/DT], and (to state the obvious), Letouzey has made a complaint about it.

The claim that DT is a Belle derivative is also dubious in my opinion. I could find two principal statements of Hsu that might tend to form the impression that DT derives from Belle. He writes here that "[t]he basic move generation algorithm is the same as in the Belle move generator", and in an oral history he says:
Hsu wrote:I think you can say the Chess 4.X series was the prototype of all of the chess machines afterwards. Belle was basically based on that idea. Deep Blue and Deep Thought were more or less along the same line.
However, the first statement seems to be at the level of paradigm of find-victim/find-aggressor (see below), with the preceding text mentioning (for instance) how different types of moves were generated with DB compared to DT, still within the same basic "algorithm" to Hsu's mind it appears. Furthermore, his comment in the above 1987 paper, contrasting the ChipTest/Belle method to that of HITECH, also runs along these lines: The Belle move ordering is based on the most-valuable-victim/least-valuable-aggressor heuristic, as is the current design. The Hitech design used a far more complicated move-ordering scheme... The second quotation given above (with Chess 4.X) seems to be a generic comment in a far-reaching interview, at the level [say] of using full-width alpha-beta search (rather than selective), and he follows by saying: the main lesson from Slate and Atkins was it’s better to do things algorithmically than doing it heuristically as far as search paradigm goes.

Exploring the "move generation" question further, I was happy to find a description of some move generators (including Belle and DT) in the 2002 thesis of Boulé (under Newborn). In Section 3.3-3.5 we find extended descriptions of Belle, DT, and DB in this regard. My personal opinion is that this tends to confirm that DT should not be labelled as a Belle derivative.

Some relevant parts:
The two major communication blocks [of Belle] are the transmitter and the receiver. Each square has one of each. This design is the foundation of the progapation through squares communication technique mentioned in the chapter introduction.
[...]
When reviewing previous designs prior to the Deep Thought design, the Belle approach was believed to offer better potential for mapping to VLSI than the Hitech design. With this assumption, the receiver/transmitter structure introduced in the Belle design was used as a starting point for the Deep Thought move generator.
The same find–victim and find–aggressor cycles shown in the Belle section are used to generate moves. [...]
In Deep Thought, the first level arbitration is done on rows of squares and the second level selects between rows. A first–level arbiter is visible in Figure 3.6. Once a square is disabled by bit masking, it no longer participates and other squares with the same priority continue the voting process. This process continues until all possible moves are generated.

The transmitter and receiver circuits shown here are essentially the same as in Belle. However, the process of masking victims and aggressors is completely different in the Deep Thought architecture. Instead of using a 64–bit stack of 64 levels, as was the case in the Belle design, mask bits are calculated from the previously generated move at a node. This masking method eliminates the need for memory, at the expense of logic and decoders. In the VLSI design of Deep Thought, this approach was advantageous.
One can then read in 3.5 that DB contained some improvements on DT. My conclusion is that aside from the common "move generation from MVV/LVA" paradigm, and the (necessitated) attendant commonality in transmitter/receiver circuit logic, there is not a lot of "derivative" material here (e.g., arbitration and masking both differ, and Belle did not have interwoven terminal/quiescent-node pruning). In particular, the level of "creative content" in design here (applying MVV/LVA to move generation) seems notably less than with the Fruit evaluation function.

Finally (just for completeness, if nothing else), one must ask whether the Rules were actually the same in 1989/95 as in 2006+. For 1989, I can find nothing other than "The Tournament Rules in Force", page 100, ICCA Journal 12/2 (see page 19 of the tournament booklet [linked at the 1989 WCCC cpw page]). The relevant Rule (#1) is: Each entry is a computing system with one or more human operators. An operator cannot simultaneously be responsible for two entries. A listing of all chess-related programs running on the system must be available on demand to the TD (Tournament Director). For 1995, we find in ICCA Journal 18/1 (page 52): Each entry is a computing system with one or more human operators. A listing of all chess-related programs running on the system must be available on demand to the Tournament Director, Mike Valvo. Each entry requires at least one full-time operator. It is my impression that the need to have an "originality" clause had not yet arisen in those years. [See page 54 of ICCA Journal 18/1 for an explanatory Note about allowing programs "with a common origin"].

In conclusion, MvK is firstly wrong about the GPL. I can't think this is matter of opinion or "interpretation" -- the GPL simply does not grant the permission that MvK claims it does [and even then the issue of inalienable author's moral rights may still exist]. His second argument, of a precedent with rules interpretation with DT as a Belle derivative, relies on a tenuous (perhaps nonexistent) analogue, both in that Thompson/Condon have never found reason to lodge a complaint with the ICGA, and that the evidence seems not to support the claim (of a derivative work) in any event. [If nothing else, I thank MvK for motivating me to read more about Belle/DT].

Finally, it is not clear to me why some Rybka defenders are so keen to promote MvK's writings, for he does, after all, agree that various Rybka versions are derivative of Fruit. Perhaps they merely admire his conclusion, without even bothering to read the rest?

BB+
Posts: 1484
Joined: Thu Jun 10, 2010 4:26 am

Re: On MvK

Post by BB+ » Tue Feb 21, 2012 1:25 am

Perhaps I could be more specific here: if I were to apply "Abstraction-Filtration-Comparison" to Belle/DT, I would find that the any move generation issues (such as the MVV/LVA ordering) were filterable, being dictated by external factors (efficiency).

Incidentally, available hardware can often determine what algorithm/paradigm to use. For instance, Schimmler sorting takes sqrt(n) time on a 2-d array of n processors, faster than quicksort if you can shoe-horn it into your computational model. Indeed, Hsu (in Behind Deep Blue, page 29) mentions that he was fortunate to have a way to avoid the 6x64 wires (for priority encoding) that were used in Belle, as a new bus standard for this had been described in a recent issue of IEEE Computer Magazine.

Post Reply