[Computer-go] Seki in playouts

Igor Polyakov weiqiprogramming at gmail.com
Wed Apr 15 04:24:18 PDT 2015

I have an interesting problem with my program.

1. I have self-atari detection, but self-atari is allowed for smaller 
groups like the two stone group because it can make a nakade.
2. Self-atari detection means that in most playouts the program will let 
the black player suicide, but it won't let the white player suicide 
because the group is too large.
3. Therefore, it has white winning playing D9 or D7 because the playouts 
have black suicide
4. It has to squeeze right now because the seki loses the game, while 
the squeeze wins it.
5. But it misses this because squeezing leads to a few accidental losses 
in playouts where black plays something that white doesn't respond to

I have thought about this and there's a few solutions:

1. Allow the program to pass late in playouts. In the current 
implementation this leads to accidental pass-pass playouts when the game 
is not finished and the program is poor at evaluating boards with dead 
stones on them.

1a. Implement a special passing type that doesn't end the game, but only 
allows you take back ko or just let your opponent finish their game when 
you still have legal moves left you don't want to take

1b. Make the program good at deciding dead stones somehow and not worry 
about pass-pass in playouts as long as it's late enough (what's late 
enough? 75% of the board filled?)

2. Have custom seki logic that will just prevent you from playing a 
nakade shape against a group that already has an eye

I noticed that every program does this correctly that I've seen except 
for the old Mogo for Windows binary. I'd like to know how they do this.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: seki problem.sgf
Type: application/x-go-sgf
Size: 1005 bytes
Desc: not available
URL: <http://computer-go.org/pipermail/computer-go/attachments/20150415/156abccd/attachment.sgf>

More information about the Computer-go mailing list