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

Re: computer-go: 5x5 Go is solved?



> why do you need to take account of all this awfully complicated
> ko - stuff in your tablebases?

(here's my understand of the problem, for what it's worth, and then a
possible solution)

Imagine you've a position ('A') that you've explored exhaustively and
found it to be a 3pt win for black. Imagine there is a position B
somewhere in the follow-up. There were no super-ko problems
based on the game moves up to position A (i.e. B hadn't already appeared).

So you store A=3 in your table.

Now you come to A via another sequence of moves. You want to use value 3
for this position and not have to search the follow-ups.

But position B has already appeared prior to reaching A this time. So
that value of '3' is invalid, and you need to search.

So the problem is knowing when you're allowed to use the value in your
table, and when you can't.

One idea would be to store the list of optimum moves, along with the value.
So when you want to use a match from the table, you quickly play out the
unbranching sequence to make sure no super ko complaints, and if none
then you accept the value.

However I'm not sure that is reasonable - white might have played a
different branch to exploit the fact that black can't move into position
B.

I'm sure you can exploit the nature of ko somehow here - e.g. as a first
step store the maximum and minimum number of stones on the board in all
positions that were looked at to justify the value of position A.

If the minimum number is greater than the number of stones in any of the
positions leading up to A, then the table value can be used. If not, you
have to search. 

I suspect tracking and storing min/max number of stones will not have
that great an impact on performance.

Darren