[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[computer-go] Designing faster, better influence functions
This is the output of my "ownership" function:
http://www.moyogo.com/Influence.gif
On the right, output from a "Bouzy" function with "influence" and
"territory", on the left the same position but my function's "likely owned"
estimation.
The idea is not to have (like Bouzy's 5/21) "inner influence ("territory")
and "outer influence" ("Moyo") but to have a single estimation of what will
pretty certainly become "owned" by a color (occupied by its stones or as its
territory).
My "ownership" function has a cutoff treshold for "inner" and "outer"
influence but I simply discard the "outer" influence (it is not displayed in
the GIF) as I prefer to classify points in:
- Pretty sure W
- Pretty sure B
- Undecided
Bouzy has 2 more:
- W influenced
- B influenced
My function classifies half of Bouzy's "influenced" as "pretty sure B/W" and
half as "undecided".
I will disclose how my function works, as I did not find it in literature
(Mark Boon's influence function is AFAIK not ducumented). It took only a few
hours to design & code but it contains a few parameters that I spent hours
tuning to get results similar to Bouzy's. I could have put all parameters in
a loop and find the best parameters to exactly copy Bouzy's results but that
was no the objective.
My "ownership" function treats stones as magnetic monopoles and the edges of
the board as field-conducting metal. For every empty point, I calculate the
resulting magnetic field. So I do not have interfering wavefronts, I work
with field strengths.
I found some references to "magnetic field strengths" between stones but I
read this just now, after I coded up my influence function :)
http://senseis.xmp.net/?MagneticStonesIdea
http://senseis.xmp.net/?MagneticStonesExampleGame1
This function takes 578 uSec (microseconds) to do for a whole 19x19 board on
a 2 GHz Athlon XP, and it takes 85 uSec to delta-update a move,
non-optimized (it can be sped up by at least a factor of 20).
My questions are:
- How does this speed compare to your implementations of Bouzy's 5/21 or
your own implementations,
- Does my function look reasonable (I am not a Go player..)
The sole black stone on the right edge is not guaranteed territory, but what
is most important is that the overall balance is correct. That black stone
does not signify "territory", it means that on that part of the board, there
will be at least 1 black stone or at least 1 black territory point. For
white, there is no such "guarantee" (with optimum play of both).
- What do you think about doing away with the difference between "moyo" and
"almost certain territory" and instead trying to classify more of the "moyo"
into "territory"?
I am less interested in "sphere of influence" than I am in "will become B/W
when vigorously defended". The least ambiguity, the better?
- Does any of you use an influence function in a tree search or do you limit
it to the first ply?
_______________________________________________
computer-go mailing list
computer-go@xxxxxxxxxxxxxxxxx
http://www.computer-go.org/mailman/listinfo/computer-go/