Hi! On Tue, Oct 27, 2009 at 12:05:57PM +0200, Petri Pitkanen wrote: > Are there more peculiar situation that will cause problems for MCTS apart > from the three I know. > 1. Nakade (this is partuially solved in most of the programs) > 2. Semeais > 3. Double Ko.
Yes, these are all just particular instances of a general class; it shows up in fights at many points. They all manifest as a problem where the simulations introduce a massive bias in the particular situation, misjudging life of certain group, usually where there is one right move and many bad ones in the position (right one will be played only with small probability). This causes what I call the "horizon effect" which prevents the tree exploration to work properly - the moment the tree finds a sequence that unbiases the simulations, it is horrified by the bad results [*] and switches to a different branch, until it finds the same; thus, the bot pushes the resolution (unbiasing) of the situation over the tree horizon for as long as possible. This shows in actual games as the bot playing random throwins and obviously pass moves before resigning. In case of nakade, the bias is introduced by anti-self-atari heuristics in the playouts and is probably indeed largely solved by smarter self-atari detection. In case of various kos, perhaps a simulation bias for re-taking the ko could help, but this is probably fairly simple. In case of semeai, the bias is obvious and the solution is currently totally unobvious. There are two ways to deal with this - removing the bias from the simulations by increasing the intelligence within cautiously, and finding a way to deal with the bias in the tree. I'd say so far all improvements of simulations since uniform playout could be described as trying to solve this problem, and to a certain point it greatly helps increase the convergence to good result, but I think we are behind that point now and making the simulations smarter is now only pushing away the inevitable. I don't know how much hidden ongoing research is being done about dealing with the bias in the tree, the only result so far I'm aware of is Remi Coulom's criticality heuristic, and it wasn't that effective; I personally have some clear ideas I want to start experimenting with as soon as possible - I think we need a top-down counterpart for the bottom-up propagation function of RAVE. IMHO a substantial progress in this direction is the next big thing to happen in computer go. [*] "Bad results" for the parent node owner - I have seen the bias as being both unduly positive _and_ unduly negative, though the latter seems fairly rare - I think I saw it only once in a rather complicated large temporary seki fight and while the bot obviously won it, the percentages were horrible, it was lucky they stayed above the resign threshold until the situation finally got resolved. -- Petr "Pasky" Baudis A lot of people have my books on their bookshelves. That's the problem, they need to read them. -- Don Knuth _______________________________________________ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/