Dear Go programmers, Sorry for being a bit unresponsive, but I needed a break from the computer quite badly :-). I'll try to address the different comments on MadLab in this mail. Thank you very much for the comments: they are highly appreciated. Frank de Groot writes that the small button icons on my site do not show in his browser. Strange: something odd in these gif files. If anybody else has problems with graphics on my site, I would be happy if you could send me a private email (see my mail address at www.t-t.dk). Chrilly Donninger inquires about the lambda-algorithm. The algorithm is documented in the paper "Lambda-search in game trees -- with application to Go" (from 2000) which is downloadable from here: www.t-t.dk/publications. The paper comes in two 99.9% identical versions (lambda_lncs.pdf and lambda_icga.pdf). Read either, and there is no need to look at the other. About the java-code on my site (www.t-t.dk/go/cg2000/code20.html): this code is very old, but it still illustrates how the algorithm works. The thing to note about the code is that it is implemented with (a crude) alpha-beta as the "search engine" (I use proof-number search now). Another thing is that the code does not implement "relevancy zones" (= topological aspects of the game). For instance, when you look for a stone that acts as a ladder-breaker, you don't have to consider the whole board (but only the "shadow" of the ladder). The lack of these two things (and quite a bit of others) makes the java code on my site much less efficient than what I use in MadLab these days. The basic idea behind using hierarchical orders of threats (like in lambda-search) is to use threats (and meta-threats, and so on) to guide the search. Much like what you do with null-move pruning in chess, but with a bit more "theory" behind. You might also interpret lambda-search as a way to generalize ladders. A ladder has lambda-order 1, a loose ladder has lambda-order 2, and in order to escape a loose ladder humans know that you could try to capture one of the enclosing stones in a ladder (but not in a loose ladder, which is too slow). Lambda-search is a way to formalize all this in an abstract way. Note also that Tristan Cazenave has done a lot of related research. Make sure you read his papers, too! It is interesting to see the performance of GnuGo and SmartGo. Congratulations to Anders Kierulf for solving 93% of the problems (impressive!). The next question to the GnuGo team and Anders is whether the problems the programs solve are solved because of all the right reasons :-). To expose this, I could create an an even larger problem set that includes the most resistive of the (non-working) moves for the defender side... Best regards,
-Thomas
|
_______________________________________________ computer-go mailing list computer-go@xxxxxxxxxxxxxxxxx http://www.computer-go.org/mailman/listinfo/computer-go/