Presentation is loading. Please wait.

Presentation is loading. Please wait.

Development of the Best Tsume-Go Solver

Similar presentations

Presentation on theme: "Development of the Best Tsume-Go Solver"— Presentation transcript:

1 Development of the Best Tsume-Go Solver
Akihiro Kishimoto

2 Today’s Talk My and Martin’s effort to develop Tsume-Go Explorer
Apply ideas behind one-eye solver to tsume-Go

3 Problem Description Crucial stones are given
Attacker tries to capture all crucial stones Defender tries to live Make two eyes Seki Play restricted to region Example

4 Previous Work on Tsume-Go
GoTools [Wolf:1994] Best tsume-Go solver for 15 years Powerful rules for life/death detection A lot of Go-knowledge written by hand Naïve search algorithm Limited to problems with 14 empty points

5 Previous Work on Shogi Tsume-shogi solvers
Powerful search algorithms [Nagai:2002] A lot of shogi-specific knowledge Simpler than Go-knowledge Surpass best human players Can solve problems over 100 moves

6 TsumeGo Explorer Search-based approach Enhancements
Df-pn(r) [Kishimoto & Mueller:2003, 2004] Simple methods to detect terminal node One or two point eyes, seki, no eye space enough to live Enhancements Connections to safe stones Forced moves Simulation Evaluation function to initialize proof and disproof numbers

7 Connections to Safe Stones
Consider attacker’s connections [Mueller:97] Promote unsafe stones to safe Detect dead status earlier Example

8 Forced Moves Forced attacker moves Forced defender moves

9 Simulation [Kawano:96] Where to apply? P1 A4 A4 Df-pn (r) wins P2 P3
OR node AND node

10 Heuristic Initialization (1 / 2)
Problem of df-pn based search Hates capturing stones Apparently has large proof and disproof numbers Use evaluation function to initialize proof and disproof numbers P1 P2 Leaf node pn(P2) = 1 dn(P2) = 1 pn(P2) = evalPN(P2) dn(P2) = evalDN(P2)

11 Heuristic Initialization (2 / 2)
Heuristic distance to make two eyes Heuristic distance to break eye spaces 15 4 2 4 15 2 1 2 3 2 4 2 1 5 5 2 3

12 Problem of Heuristic Initialization
Standard Df-pn Df-pn with heuristic initialization 6 1 6 6 1 1 = 7 = 2 Leaf nodes Leaf nodes Result in more expansions of interior nodes OR node pn AND node pn

13 Non-Uniform Threshold Control
Compute average of evaluation values Use as a unit to increase thresholds Achieve 20% node reduction for harder problems Ratio of reexpanded node 45% ->33% Example 6 6 8 = 8 + (6 + 8) / 2 = 15 OR node pn AND node pn

14 Comparison with GoTools
Conditions Athlon 2800XP+ 5 minutes/per problem 300 MB TT for Tsume-Go Explorer Test suites Hard 418 problems in Wolf’s collection 148 one-eye problems created by Martin

15 Performance in Wolf’s Test Collection
# of Problems Execution Solved Time GoTools ,235 TsumeGo Explorer Total Problems

16 Performance in One-Eye Problems
Execution # of Problems Time Solved (119 Probs.) GoTools TsumeGo Explorer Total Problems

17 Comparison on Each Problem Wolf’s Test Problems

18 Comparison on Each Problem One-Eye Problems (1 / 2)
Plots on problems solved by both programs

19 Comparison on Each Problem One-Eye Problems
Plot on problems solved only by TsumeGo Explorer

20 Lessons Learned (1 / 2) White to kill
GoTools’ knowledge work for small problems GoTools solves statically TsumeGo Explorer needs 3,159 nodes

21 Lessons Learned (2 / 2) Black to live
Need better search algorithm for harder problems GoTools cannot solve within 5 minutes TsumeGo Explorer needs 0.73 seconds (22,616 nodes)

22 Summary Conclusions Future work Successfully developed the best solver
Solve larger problems Limited to between 22 and 27 empty points C.f. GoTools 14 empty points Solve open-boundary positions Integration with the game-playing program

23 Next Target! Solved if Black plays first Unsolved if White plays first
750 seconds 16 million nodes Unsolved if White plays first

Download ppt "Development of the Best Tsume-Go Solver"

Similar presentations

Ads by Google