[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [computer-go] double threats
I do multiple searches of each string. Each search returns only stable or
dead. Each
search gets a parameter that says which side wins kos, and which side must
respond to threats
against nearby groups. Stable means 5 liberties, two eyes, simple seki, or
out of nodes. At the
strongest level, each search is allocated 150 unforced nodes. An unforced
node is a node where the
move generator generates more than one move.
Say the color of the string in question is W, and the enemy is B.
First I do a search with W to move first, W wins all kos, and B must answer
all nearby threats. If the
search returns dead, then the group is dead.
If the group is not dead, I repeat the search, with B to move first, B wins
all kos, and W must answer nearby
threats.
If this search returns stable, then W is stable.
Otherwise, I repeat the search with B to move first, W wins all kos, and B
must answer nearby threats.
If this third search finds the group is dead, then it is unsettled, else it
is a ko or possible unsettled, and
needs full board quiescence search.
The move generator is optimized to only generate threats against nearby
strings when they will be needed.
This way I handle the problem of interacting tactical searches while only
doing single string searches.
I tried several variations on saving the bigger string or the most
important string many years ago, but there
were always problems. Recognizing the situation and deferring it to the
global search seems to work best.
This situation gives one side a choice, so you need to try both options
with full board evaluation.
David
At 12:38 PM 1/8/2004 +0900, you wrote:
>> > Let's say that two blocks are threatened and the defender may choose
>> > which block he wants to give up. Then the block tactician might treat
>> > the two blocks as "half-DEAD" or it might treat the bigger (or
>> > "more important") block as ALIVE and the smaller one as DEAD.
Interesting thread - I'd not found a good solution to this issue, so have
mostly ignored it. Assuming the defender always defends the bigger chain
is an interesting idea.
Many Faces marks them both as unsettled, but a special kind of
unsettled. The tactical search result can be
Stable - seki, 2 eyes, or 5 liberties even if opponent moves first
unsettled - captured or lives depending on who moves first
ko - capture depends on a ko
possible unsettled - two groups are involved in fight and the opponent
decides which one lives
dead - captured even if this side moves first
Do you pass the 5th state up through the tactical search tree? Or do you
only treat it as special at the root node?
If you pass it up through the tree, how do you order it to decide which
information to pass up if you have one move leads to unsettled, and one
move leads to special unsettled?
Darren
_______________________________________________
computer-go mailing list
computer-go@xxxxxxxxxxxxxxxxx
http://computer-go.org/mailman/listinfo/computer-go
_______________________________________________
computer-go mailing list
computer-go@xxxxxxxxxxxxxxxxx
http://computer-go.org/mailman/listinfo/computer-go