I've found a misfeature with the owl cut functionality. The idea of owl cuts is that certain patterns (owl attack patterns with the C attribute) can force a recomputation of the goal area. This is done by a connectivity analysis and the largest connected component is retained as goal.
To see what can go wrong, consider testcase auto02:8, A B C D E F G H J K L M N O P Q R S T 19 . . . . . . . . . . . X . . . . . . . 19 18 . . O . O . . . . . X O X . O . O . . 18 17 . . X O . . . . O . . O . X . X O . . 17 16 . . X + . O . . . + . O . X . X X O . 16 15 . . . X . . . . . . . . . . . . . . . 15 14 . . . . . X . O . . . . . O . . . . . 14 13 . . . . . . X . O . . . . . . O . . . 13 12 . . . . . . . X . O . . . O . . . . . 12 11 . . X . . . . . X O . . O . . . . . . 11 10 . . . + . . . . . X . O . . . X . . . 10 The objective is to owl_attack Q17. Although this testcase passes, some strange things happen along the way. In the first variation, the moves W S15, B J18, W H18, B K17, W J16, B K19 are played, leading to A B C D E F G H J K L M N O P Q R S T 19 . . . . . . . . . X . X . . . . . . . 19 18 . . O . O . . O X . X O X . O . O . . 18 17 . . X O . . . . O X . O . X . X O . . 17 16 . . X + . O . . O + . O . X . X X O . 16 15 . . . X . . . . . . . . . . . . . O . 15 14 . . . . . X . O . . . . . O . . . . . 14 13 . . . . . . X . O . . . . . . O . . . 13 12 . . . . . . . X . O . . . O . . . . . 12 All black stones in the upper right belong to the goal. Now comes the funny part. When white plays P17 (pattern A718, a C pattern), Q17 is removed from the goal. This is perfectly fine but then do_owl_defend() promptly declares that it has successfully escaped, apparently to Q17! For more graphical boards, see http://83.250.34.74/gnugo/trac.cgi/ticket/16 /Gunnar _______________________________________________ gnugo-devel mailing list [email protected] http://lists.gnu.org/mailman/listinfo/gnugo-devel

