Solving Tsumego on Computers M2 Hirokazu Ishii Chikayama & Taura Lab.

Slides:



Advertisements
Similar presentations
Ch 4. Heuristic Search 4.0 Introduction(Heuristic)
Advertisements

Development of the Best Tsume-Go Solver
BackTracking Algorithms
Artificial Intelligence Chapter 9 Heuristic Search Biointelligence Lab School of Computer Sci. & Eng. Seoul National University.
ICS-271:Notes 6: 1 Notes 6: Game-Playing ICS 271 Fall 2008.
Part2 AI as Representation and Search
CSC 423 ARTIFICIAL INTELLIGENCE
Search in AI.
Lecture 12 Last time: CSPs, backtracking, forward checking Today: Game Playing.
Games CPSC 386 Artificial Intelligence Ellen Walker Hiram College.
B ACKTRACK SEARCH ALGORITHM. B ACKTRACKING Suppose you have to make a series of decisions, among various choices, where You don’t have enough information.
Mahgul Gulzai Moomal Umer Rabail Hafeez
Problem Solving Using Search Reduce a problem to one of searching a graph. View problem solving as a process of moving through a sequence of problem states.
1 Using Search in Problem Solving Part II. 2 Basic Concepts Basic concepts: Initial state Goal/Target state Intermediate states Path from the initial.
Using Search in Problem Solving
Game Playing CSC361 AI CSC361: Game Playing.
November 10, 2009Introduction to Cognitive Science Lecture 17: Game-Playing Algorithms 1 Decision Trees Many classes of problems can be formalized as search.
MAE 552 – Heuristic Optimization Lecture 27 April 3, 2002
Solving Probabilistic Combinatorial Games Ling Zhao & Martin Mueller University of Alberta September 7, 2005 Paper link:
Df-pn: Depth-first Proof Number Search
1 search CS 331/531 Dr M M Awais A* Examples:. 2 search CS 331/531 Dr M M Awais 8-Puzzle f(N) = g(N) + h(N)
Game-Playing Read Chapter 6 Adversarial Search. Game Types Two-person games vs multi-person –chess vs monopoly Perfect Information vs Imperfect –checkers.
ICS-271:Notes 6: 1 Notes 6: Game-Playing ICS 271 Fall 2006.
Using Search in Problem Solving
1 Solving Ponnuki-Go on Small Board Paper: Solving Ponnuki-Go on small board Authors: Erik van der Werf, Jos Uiterwijk, Jaap van den Herik Presented by:
Adversarial Search: Game Playing Reading: Chess paper.
Applying proof numbers to Life and Death: First Result Akihiro Kishimoto
Recent Progress on the One-eye Solver Akihiro Kishimoto
1 An Open Boundary Safety-of- Territory Solver for the Game of Go Author: Xiaozhen Niu, Martin Mueller Dept of Computing Science University of Alberta.
Backtracking.
An One-eye Solver Based on Proof and Disproof Numbers Akihiro Kishimoto
A Solution to the GHI Problem for Best-First Search D. M. Breuker, H. J. van den Herik, J. W. H. M. Uiterwijk, and L. V. Allis Surveyed by Akihiro Kishimoto.
Game-Playing Read Chapter 6 Adversarial Search. State-Space Model Modified States the same Operators depend on whose turn Goal: As before: win or win.
ICS-270a:Notes 5: 1 Notes 5: Game-Playing ICS 270a Winter 2003.
Ocober 10, 2012Introduction to Artificial Intelligence Lecture 9: Machine Evolution 1 The Alpha-Beta Procedure Example: max.
1 Adversary Search Ref: Chapter 5. 2 Games & A.I. Easy to measure success Easy to represent states Small number of operators Comparison against humans.
Problem Solving and Search Andrea Danyluk September 11, 2013.
Game Playing Chapter 5. Game playing §Search applied to a problem against an adversary l some actions are not under the control of the problem-solver.
KU NLP Heuristic Search Heuristic Search and Expert Systems (1) q An interesting approach to implementing heuristics is the use of confidence.
Lecture 6: Game Playing Heshaam Faili University of Tehran Two-player games Minmax search algorithm Alpha-Beta pruning Games with chance.
Senior Project – Computer Science – 2015 Modelling Opponents in Board Games Julian Jocque Advisor – Prof. Rieffel Abstract Modelling opponents in a game.
October 3, 2012Introduction to Artificial Intelligence Lecture 9: Two-Player Games 1 Iterative Deepening A* Algorithm A* has memory demands that increase.
Chapter 7 Recursion 1CSCI 3333 Data Structures. 2 Recurrent Sequence A recursively defined sequence – First, certain initial values are specified  c.f.,
Chapter 12 Adversarial Search. (c) 2000, 2001 SNU CSE Biointelligence Lab2 Two-Agent Games (1) Idealized Setting  The actions of the agents are interleaved.
Lecture 5: Backtracking Depth-First Search N-Queens Problem Hamiltonian Circuits.
Game Playing. Towards Intelligence? Many researchers attacked “intelligent behavior” by looking to strategy games involving deep thought. Many researchers.
Game Playing. Introduction One of the earliest areas in artificial intelligence is game playing. Two-person zero-sum game. Games for which the state space.
Randomized Parallel Proof-Number Search ACG 12, Pamplona, May 2009.
For Friday Finish reading chapter 4 Homework: –Lisp handout 4.
For Monday Read chapter 4, section 1 No homework..
GAME PLAYING 1. There were two reasons that games appeared to be a good domain in which to explore machine intelligence: 1.They provide a structured task.
Game Playing Revision Mini-Max search Alpha-Beta pruning General concerns on games.
R-Trees: A Dynamic Index Structure For Spatial Searching Antonin Guttman.
Learning to Play the Game of GO Lei Li Computer Science Department May 3, 2007.
Graph Search II GAM 376 Robin Burke. Outline Homework #3 Graph search review DFS, BFS A* search Iterative beam search IA* search Search in turn-based.
Adversarial Search 2 (Game Playing)
February 25, 2016Introduction to Artificial Intelligence Lecture 10: Two-Player Games II 1 The Alpha-Beta Procedure Can we estimate the efficiency benefit.
Best-first search is a search algorithm which explores a graph by expanding the most promising node chosen according to a specified rule.
Artificial Intelligence in Game Design Board Games and the MinMax Algorithm.
Luca Weibel Honors Track: Competitive Programming & Problem Solving Partisan game theory.
Adversarial Search and Game-Playing
Recursive Objects (Part 4)
Iterative Deepening A*
Trees.
The Alpha-Beta Procedure
Introduction to Artificial Intelligence Lecture 9: Two-Player Games I
Mini-Max search Alpha-Beta pruning General concerns on games
Trees.
PN, PN2 and PN* in Lines of Action
Games & Adversarial Search
Presentation transcript:

Solving Tsumego on Computers M2 Hirokazu Ishii Chikayama & Taura Lab

Agenda 1. Introduction 2. Related Work GoTools 3. Tsumego Solver Df-pn (Depth-First Proof-Number Search) Df-pn+ (Depth-First Proof-Number Search+) 4. Conclusion & Future Work

Agenda 1. Introduction 2. Related Work GoTools 3. Tsumego Solver Df-pn (Depth-First Proof-Number Search) Df-pn+ (Depth-First Proof-Number Search+) 4. Conclusion & Future Work

Computer Game Players Have been studied for many years  Easy to evaluate  Suitable to try out various basic technologies Were successful in some games  Othello, backgammon, chess… Great challenges remain in some games  Shogi, Go… I study on Go, especially tsumego.

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 eye is an area within a group of stones which is completely surrounded by stones of the group.  If the group gets two eyes, they are absolutely alive.

Definition of Tsumi Variation of Tsumi  Semeai problem  Escape and Disconnect problem  Life and Death problem Goal is to distinguish whether there are two eyes or not.

Method AND/OR tree search  OR NODE It corresponds to a first player’s move. In order to prove tsumi of this node, we must prove that one node of child nodes has tsumi.  AND NODE It corresponds to a second player’s move. In order to disprove this node, we must disprove that all nodes of child nodes are tsumi.

Agenda 1. Introduction 2. Related Work GoTools 3. Tsumego Solver Df-pn (Depth-First Proof-Number Search) Df-pn+ (Depth-First Proof-Number Search+) 4. Conclusion & Future Work

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 of the heuristic rules are static. It is at a particular auspicious point. It completes one or more eyes. ・・・  Static rules rate moves lower or higher. Dynamic rules  The moves refuting opponent moves at subsequent positions also get some credit.

Dynamic Rules Number  The sequence in which the moves are made. Letter  The field where the stone is placed. ○:OR NODE □:AND NODE 1A 2B 3B 4C 5D 6D

Agenda 1. Introduction 2. Related Work GoTools 3. Tsumego Solver Df-pn (Depth-First Proof-Number Search) Df-pn+ (Depth-First Proof-Number Search+) 4. Conclusion & Future Work

Tsumego Solver Important factors are to  Recognize the position  Generate candidate moves  Evaluate these moves and select the next move Evaluation of a tsumego is strictly determined life or death. The only method of finding a strict solution is to search.

Df-pn Search Depth-First Search  Memory and time are used efficiently.  It is necessary to set a threshold. Proof number Disproof number Best-First search Iterative Deepening  Searches are tried iteratively increasing the 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. Proof number is effective for search because we want to search the most promising node.

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 the value is true  when the value is false When n is an uninspected node  The node might be proven or disproven immediately when inspected

Df-pn Search If n is an internal node  when n is an OR node  when n is an AND node

Df-pn Search Is a depth-first search. Uses two kinds of threshold (proof number and disproof number) 1.Assign where r is the root node

Df-pn Search 2.At each node n, the search process continues to search below n until (We call it the ending condition) or

Df-pn Search 3.If n is an OR node  At each node n, select the child n c with the minimum proof number and the child n 2 with the second minimum proof number. Search below n c with assigning

Df-pn Search 4.If n is an AND node  At each node n, select the child n c and the child n 2. Search below n c with assigning 5.If the ending condition holds, the search process returns to the parent node.

A Df-pn Search R D I E H BC F J (∞,∞) ○:OR NODE □:AND NODE G ・・・ [1,1] [1,3] [1,1] [30,1] 30 nodes (2,∞-2) [0,∞] [2,1] [1,3] (2,∞-2) [1,1] [1,3] (3,∞-2) [0,∞][∞,0] [2,2] (31,∞-1) (30,2) [0,∞] [1,1] (31,∞-1) [∞,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+ Two kinds of information  cost (dis)proof (n, n child ) The cost of inspection of n child starting from n.  h (dis)proof (n) Heuristic estimate of the cost to reach any proof solution from position n.

Df-pn+ The formula for calculating proof number and disproof number are modified from df-pn. If node n is an uninspected node

Df-pn+ If n is an internal node At each node n, search below n c with assigning

Bouzy’s 5/21 Algorithm Dilation  If the intersection is not surrounding opponent’s stones, then add to the intersection the number of own interim territory and stones. Erosion  Subtract the number of intersections with opponent’s stones or vacant.

Bouzy’s 5/21 Algorithm

4 Dilation + 2 Erosion

Bouzy’s 5/21 Algorithm In GNU Go ver. 2.6, it was extensively used  5 Dilation and 21 Erosion are used for territory.  5 Dilation and 10 Erosion are used for moyo.  4 Dilation and 0 Erosion are used for area. Higher Bouzy value means higher expectation to form an eye. Because two eyes are required to live, the second maximum Bouzy value may give a good criterion.

Agenda 1. Introduction 2. Related Work GoTools 3. Tsumego Solver Df-pn (Depth-First Proof-Number Search) Df-pn+ (Depth-First Proof-Number Search+) 4. Conclusion & Future Work

Conclusion & Future Work I showed…  Definition of tsumi  Feature of tsumego solver ‘GoTools’  Df-pn+  Bouzy’s 5/21 algorithm and its use in tsumego. Firstly, I have to finish implementing the program. I also plan to apply the combinatorial game theory to the program.