The go expertise in  Many Faces includes 1901 big patterns.  These are input
by myself, and are up to 8x8.  They include don't cares, such as (white or
empty), so are equivalent to far more patterns that just have stone
positions.  The patterns are also qualified with the strength of the groups
involved.  Each pattern has local move tree attached, with a total of about
50900 moves across all patterns.  So I suppose you could consider this to be
a collection of hundreds of thousands of equivalent patterns.

 

eWBxxxxx 

eeeexxxx

eWeeWxxx

eeeeXxxx

AN21<AD,31<AD,31N,

32B8;33W7;22B5.34W7:14W7.32W7.

 

This is an example pattern.  I don't edit this format, I have a graphical
pattern editor.  BWe are colors.  x is don't care.  X marks the corner of
the pattern.  21<AD means the stone at 2,1 is not dead.  31N means the stone
at 3,1 is not tactically threatened.  There are about a dozen qualifiers
that can be specified.  The last line is the move tree, with a fairly
obvious format.  The don't care point allow the pattern to be any shape that
fits in 8x8.

 

Many Faces has a joseki database with about 64000 corner positions.  It's
stored as a DAG, not a set of patterns, so it can't find transpositions.

 

Many Faces has a fuseki database organized as a big rotation-invariant hash
table with all positions from about 30,000 professional games.

 

A great deal of expertise has to do with attacking and defending weak
groups.   It does extensive analysis of eye shapes and connections with
local lookahead.

 

This move generator is very slow so I only use it to bias moves in the UCT
tree after many visits.

 

I don't think of Many Faces as having a big database of patterns since there
is so much code, and only 1900 general patterns, but I think in comparison
with other strong programs you might consider it to have a large pattern
database.

 

Many Faces uses RAVE too.

 

David

 

From: computer-go-boun...@computer-go.org
[mailto:computer-go-boun...@computer-go.org] On Behalf Of Olivier Teytaud
Sent: Monday, September 14, 2009 1:23 PM
To: computer-go
Subject: Re: [SPAM] [computer-go] Conflicting RAVE formulae

 

Just a small comment: adding one more term taking into account big patterns
(big = more than 3x3) provide a huge improvement in 19x19. In my humble
opinion there is more to win with adding such a term than by modifying the
formula. Of course, it implies collecting a database of SGF files and
extracting from it a database of patterns with their values :-)

In 19x19, databases of big patterns (as in CrazyStone, Mango, Zen, I think,
and for sure in MoGo) are really great.

I don't know to which extent RAVE is still useful when you have patterns in
19x19. In 9x9, I'm sure that we have no database of patterns which replaces
RAVE values, but perhaps it's because we have no database of patterns
specialized for 9x9. Or perhaps big patterns in 9x9 don't work :-)

Also I don't know to which extent go expertise can replace big databases of
patterns; I guess that in manyFaces there's no such big database of patterns
(I'm not sure of that), but much more Go expertise. Perhaps Zen has both ?
MoGo has RAVE+patterns+go expertise, but the go expertise is probably
smaller than in ManyFaces and Zen. 

In Fuego, I guess there's go expertise and rave values, but no database of
patterns ?

Sorry for people working on Fuego, Zen, Mango, CrazyStone, ManyFaces if I
have made mistakes about their programs :-)

Best regards,
Olivier

 

Gelly and Silver ("Combining Online and Offline Knowledge in UCT", section
6) give this formula for the weight given to RAVE values (as opposed to the
direct MC values):

sqrt(k / (3*n(s) + k))

Here, k is a constant and n(s) is the number of playouts through state s.
Clearly, as the number of playouts increases, this approaches zero.

Hembold and Parker-Wood ("All-Moves-As-First Heuristics in Monte-Carlo Go")
site the Gelly and Silver paper, but give a different formula! Adjusting for
notation, they use:

(k - n(s)) / k, or 0 if this expression is negative

This also converges toward (and then sticks at) zero, but it it not the same
formula.

Why are they different? Does it matter? Is there an explanation anywhere for
Gelly and Silver's more elaborate formula? Is there anything wrong with k /
(n(s) + k)?

On  a related note, in a message on this list, David Silver gives a newer
formula:

http://computer-go.org/pipermail/computer-go/2009-May/018251.html

Was this ever published? (Orego is using this newer formula, and it appears
to work well.)

Peter Drake
http://www.lclark.edu/~drake/ <http://www.lclark.edu/%7Edrake/> 



_______________________________________________
computer-go mailing list
computer-go@computer-go.org
http://www.computer-go.org/mailman/listinfo/computer-go/




-- 
=========================================================
Olivier Teytaud (TAO-inria) olivier.teyt...@inria.fr
Tel (33)169154231 / Fax (33)169156586
Equipe TAO (Inria-Futurs), LRI, UMR 8623(CNRS - Universite Paris-Sud),
    bat 490 Universite Paris-Sud 91405 Orsay Cedex France
(one of the 56.5 % of french who did not vote for Sarkozy in 2007)



_______________________________________________
computer-go mailing list
computer-go@computer-go.org
http://www.computer-go.org/mailman/listinfo/computer-go/

Reply via email to