[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

computer-go: Go Problem Background



Here's an example problem, commentary to follow.

TW's format:
$ p1082022
AIAAFEAEDADCACBAGDAICABAAIBAHEAIDABBAGEADD?HC?GA?DB?EC?HD\
AFA?FB?EA?HB[HB][EA][EC][FB]
?+l2d#50 3 1 54.00 10 ??:GCFCFDFCEBHAFDFC:
?-d#8 3 1 37.50 12 ??:CAFCGCHAFDDA@@CAFCEB@@DB:
?-d#15 3 3 60.00 9 ??:FCDACAGCGBDAHACA:
?-d#2 3 1 250.00 7 ??:DAFCGCFDHAEB@@EC:
?-d#1 3 1 0.00 6 ??:HAFCGCEBFAEC:
?-d#1 3 1 0.00 2 ??:GBFCGCFD:
A+d#5 3 1 0.00 3 ??:GCFCGB:
A+d2l#7 3 1 300.00 12 ??:FCGCEBECFDHAEBECDAEB:
A+d1l#20 3 1 15.00 13 ??:DAGCEBDBFCEBHAFDCAFC:
A+d1l#34 3 1 17.65 10 ??:FDGCFCHAEBECDAEB:
A+d1l#25 3 1 40.00 10 ??:HAGCFCFDDAFCEBDBCAEB:
A-l#1 3 1 0.00 10 ??:GBGCFCFDDAEBHAFC:

In SGF:
(;GM[1]FF[3]RU[Japanese]SZ[19]HA[0]
PW[White]
PB[Black]
GN[White (W) vs. Black (B)]
AW[hc][ga][db][ec][hd][fb][ea][hb]
AB[ia][fe][ed][dc][cb][gd][ic][ba][ib][he][id][bb][ge][dd][fa]
TR[hb][ea][ec][fb]
)



Commentary:

GoTools is really cool. I wish there was a Mac OS X version!

Anyways, what you see here is the output from GoTools for a problem set. Let's start with the Black side of the solutions:

The first, best solution is the first line labeled "A+d#". That means that if Black goes first, White dies, no ands ifs or buts. We'll call this solution "GC" because the first move is GC (the sequence is the letter pairs after the : @@ meaning "pass").

The second solution is not as good! (The line labeled A+d2l#) That means that if Black goes first at FC, If white can play two "threats", he can live. Obviously this is not as good as it leaves White some wiggle room, though White would have to win 2 threats. By threat, GoTools means both ko threats, or any sort of other threat that would let black make two moves in a row.

The next 3 solutions (A+d1l) allow white to live with one threat, and are thus vastly inferior.

Now lets look at the solutions for White, of which there is only one winning one.

?+l2d means that if White goes first, white lives, but black can kill with 2 threats.

So something that's very interesting to be learned here is that finding the best solution to a go problem has to take into account passing by the side trying to save/kill...

You can also see the problem with converting to SGF format. In TW's format, after the board setup (the first string of letters) he follows it with a list of the strings to try to save or kill. In SGF, I marked them with a Triangle, but that's not really the right thing to do...

Additionally, there are two "main lines" one for black to move first and one for white to move first. SGF supports one main line with variations...

Finally, while this problem has a "best answer" from both directions, some problems only have a best answer from one direction. That is, there might be one way to save/kill but multiple ways to kill/save. Even this problem has different results: Black can unconditionally die, but White can't unconditionally live... In that case, GoTools only provides the single ended side of the solution.