gnugo-devel
[Top][All Lists]
Advanced

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

[gnugo-devel] Dragon dinners


From: bump
Subject: [gnugo-devel] Dragon dinners
Date: Wed, 12 Feb 2003 07:38:30 -0800

Yesterday during the disasterous uhu game (see my previous
e-mail) Gunnar commented ``we should implement the concept
of absolute life.''

I'm not sure what he meant by that, but I'd like to 
propose a remedy for an existing problem. See
http://mail.gnu.org/archive/html/gnugo-devel/2003-02/msg00050.html
for an example. Here a complex set of circumstances leads
to GNU Go overlooking a semeai. The plain fact which
is not recorded in the dragon data is that during the owl
reading GNU thinks the B dragon is alive, but that life
depends on capturing the W dragon, or at least a string
of the W dragon.

We have a field in the dragon2 array called `lunch'.
This points to a worm which is tactically critical.

But I'm interested in another class of worms, which
are tactically ALIVE at the outset of reading, but
which become lunch during reading. I'll call such
a worm a ``dinner'' to distinguish it from a
lunch. If a dinner exists, and if owl_defend
returns WIN, then the fact that there is a dinner
should be recorded. Perhaps what Gunnar meant by
``absolute life'' is that the dragon is alive without
dinner.

How can dinners be identified? One thing that must 
be borne in mind is that during the owl reading, stones
are played and removed. The function owl_find_lunches()
can declare a lunch found to be dinner but it does not
have access to the state of the board at the outset of
reading.

The following scheme should work. There will be
two lists static in owl.c. The first list will be
the origins of unfriendly worms adjacent to the
dragon which are tactically alive. This list will
be initialized by owl_defend.

There will be another list of dragon dinners,
initially empty. If owl_find_lunches ever finds a
dragon lunch which is in the same string as one
of the stones in the first list, then it will add
it to a list of dragon dinners.

Dan




reply via email to

[Prev in Thread] Current Thread [Next in Thread]