[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: computer-go: Search heuristics
>Define an n-th order liberty to be an empty vertex
>at distance n from the string. Define a word
>(abc) where a is the number of liberties, b the number
>of second order liberties and c the number of third
>order liberties.
>
>The heuristic is that this word gives a good measure
>of the escape potential of the string. The words are
>ordered lexicographically.
Recently people were talking about what they'd like to see discussed on
computer-go. These types of algorithms are exactly the kind of thing I'd
like to see discussed.
My tactical searcher has also been using something like the heuristic you
describe.
One of the things I was trying to do was find a way to say "if move A
doesn't work, then move B can't possibly work". Humans do it all the time.
Looking at the trees my program was searching it seemed like it was wasting
lots of time in branches it should have known beforehand wouldn't work.
E.g. if playing the primary lib (plib) doesn't work, then playing the
secondary and tertiary libs (slibs & tlibs) will also fail. Unfortunately,
sometimes they do work even when the plib move fails. So, most of my
attempts led to it pruning branches it shouldn't.
Has anyone had any luck with this?
Darren