Next: , Up: Alternative Moyo


14.1 Moyo history

In GNU Go 2.6 extensive use was made of an algorithm from Bruno Bouzy's dissertation, which is available at: ftp://www.joy.ne.jp/welcome/igs/Go/computer/bbthese.ps.Z This algorithm starts with the characteristic function of the live groups on the board and performs `n' operations called dilations, then `m' operations called erosions. If n=5 and m=21 this is called the 5/21 algorithm.

The Bouzy 5/21 algorithm is interesting in that it corresponds reasonably well to the human concept of territory. This algorithm is still used in GNU Go 3.6 in the function estimate_score. Thus we associate the 5/21 algorithm with the word territory. Similarly we use words moyo and area in reference to the 5/10 and 4/0 algorithms, respectively.

The principle defect of the algorithm is that it is not tunable. The current method of estimating moyos and territory is in influence.c (see Influence). The territory, moyo and area concepts have been reimplemented using the influence code.

The Bouzy algorithm is briefly reimplemented in the file scoring.c and is used by GNU Go 3.6 in estimating the score.

Not all features of the old moyo.c from GNU Go 2.6 were reimplemented—particularly the deltas were not—but the reimplementation may be more readable.