Solving Tsumego On Computers: M2 Hirokazu Ishii Chikayama & Taura Lab
Solving Tsumego On Computers: M2 Hirokazu Ishii Chikayama & Taura Lab
Solving Tsumego On Computers: M2 Hirokazu Ishii Chikayama & Taura Lab
Tsumego on
Computers
M2 Hirokazu Ishii
Chikayama & Taura
Lab
Agenda
1.
2.
3.
Introduction
Related Work
GoTools
Tsumego Solver
4.
Agenda
1.
2.
3.
Introduction
Related Work
GoTools
Tsumego Solver
4.
to evaluate
Suitable to try out various basic technologies
backgammon, chess
Go
Game Rule
Go is a 2-players game.
A move is played on a line intersection.
If one or more stones are completely surrounded
by other stones, they are captured.
The purpose of Go is to conquer a larger part of
the board than the opponent.
Game Rule
Eye
An
Definition of Tsumi
Variation of Tsumi
Semeai
problem
Escape and Disconnect problem
Life and Death problem
Method
NODE
AND
NODE
Agenda
1.
2.
3.
Introduction
Related Work
GoTools
Tsumego Solver
4.
GoTools
Has been the best tsume-go solver for 15
years.
Uses a depth-first search.
Specializes in completely enclosed
positions.
Heuristics
Static rules
Most
Static
Dynamic rules
The
Dynamic Rules
1A
2B
3B
4C
Number
The
sequence
in which the
moves are
made.
6D
5D
:OR NODE
:AND NODE
Letter
The
field where
the stone is
placed.
Agenda
1.
2.
3.
Introduction
Related Work
GoTools
Tsumego Solver
4.
Tsumego Solver
the position
Generate candidate moves
Evaluate these moves and select the next move
Df-pn Search
Depth-First Search
Memory
Best-First search
Iterative Deepening
Searches
threshold.
Proof Number
Proof number is the minimum number of
descendant nodes which must be proven
in order to prove the node.
We can see proof number of the node as
the minimum resource required for search.
Disproof Number
Disproof number is the minimum number
of descendant nodes that must be
disproven in order to disprove the node.
Disproof number is effective for search as
well as the proof number.
Df-pn Search
If n is a leaf node
when
when
pn(n) 0, dn(n)
pn(n) , dn(n) 0
pn(n) 1, dn(n) 1
Df-pn Search
If n is an internal node
when
n is an OR node
pn(n)
dn(n)
when
min
Cchildlen of n
pn(C )
dn(C )
Cchildren of n
n is an AND node
pn(n)
pn(n )
Cchildren of n
dn(n)
min
Cchildlen of n
dn(C )
Df-pn Search
Is a depth-first search.
Uses two kinds of threshold (proof number
and disproof number)
.Assign
r.th p , r.thd
where r is the root node
Df-pn Search
.At each node n, the search process
continues to search below n until
pn(n) n.th p
or
dn(n) n.thd
(We call it the ending condition)
Df-pn Search
.If n is an OR node
At
nc .th p min(n.th p , n2 . pn 1)
nc .thd n.thd nc .dn
C.dn
Cchildren of n
Df-pn Search
.If n is an AND node
At
nc .th p n.th p nc . pn
C. pn
Cchildren of n
Df-pn Search
[ pn, dn]
(th p , thd )
:OR NODE
:AND NODE
(2,-2)
30 nodes
[1,1]
[30,1]
[1,1]
[0,]
[1,3]
[2,2]
(31,-1)
(2,-2)
[1,1]
[2,1]
[0,]
(3,-2)
[1,1]
[,0]
(30,2)
D
[1,1]
(,)
[0,]
[1,1]
E
(31,-1)
[0,]
[1,1]
[1,1] [1,1]
H
[0,]
[,0]
[0,]
[0,]
[,0]
Df-pn+
Intends to distinguish promising moves
more accurately and to search them much
more deeper.
Uses two kinds of additional information
during search.
Df-pn+
nchild)
h(dis)proof(n)
Df-pn+
Df-pn+
If n is an internal node
pn(n)
dn(n)
min
Cchildlen of n
( pn(C )
(dn(C )
Cchildren of n
Dilation
If
Erosion
Subtract
2
4
1
2
1
2
4 Dilation + 2 Erosion
10
10
5
12
11
12
1
5
10
Agenda
1.
2.
3.
Introduction
Related Work
GoTools
Tsumego Solver
4.
I showed
Definition
of tsumi
Feature of tsumego solver GoTools
Df-pn+
Bouzys 5/21 algorithm and its use in tsumego.