1 An Improved Safety Solver for Computer Go Presented by: Xiaozhen Niu Date: 2004/02/24.

Slides:



Advertisements
Similar presentations
Hybrid BDD and All-SAT Method for Model Checking Orna Grumberg Joint work with Assaf Schuster and Avi Yadgar Technion – Israel Institute of Technology.
Advertisements

Development of the Best Tsume-Go Solver
Distributed Breadth-First Search with 2-D Partitioning Edmond Chow, Keith Henderson, Andy Yoo Lawrence Livermore National Laboratory LLNL Technical report.
10/19/2004TCSS435A Isabelle Bichindaritz1 Game and Tree Searching.
Bart Jansen, University of Utrecht.  Problem background  Geometrical problem statement  Research  Experimental evaluation of heuristics ◦ Heuristics.
Activity 1: Where am I? Play in pairs Each player has a number line or bead string and a pack of number cards Each player takes turns to turn over a number.
Abstract Proof Search Studied by Tristan Cazenave Surveyed by Akihiro Kishimoto.
Life in the Game of Go David B. Benson Surveyed by Akihiro Kishimoto.
1 A Library of Eyes in Go Author: Thomas Wolf, Matthew Pratola Dept of Mathematics Brock University Presented by: Xiaozhen Niu.
Advanced Topics in Algorithms and Data Structures Page 1 Parallel merging through partitioning The partitioning strategy consists of: Breaking up the given.
Search for Transitive Connections Ling Zhao University of Alberta October 27, 2003 Author: T. Cazenave and B. Helmstetter published in JCIS'03.
AI techniques for the game of Go Erik van der Werf Universiteit Maastricht / ReSound Algorithm R&D.
1 Evaluation of strings in computer Go using APC and Seki judgement Author: Hyun-Soo Park and Kyung-Woo Kang Presented by: Xiaozhen Niu.
Combining Tactical Search and Monte-Carlo in the Game of Go Presenter: Ling Zhao University of Alberta November 1, 2005 by Tristan Cazenave & Bernard Helmstetter.
Towards Multi-Objective Game Theory - With Application to Go A.B. Meijer and H. Koppelaar Presented by Ling Zhao University of Alberta October 5, 2006.
November 10, 2009Introduction to Cognitive Science Lecture 17: Game-Playing Algorithms 1 Decision Trees Many classes of problems can be formalized as search.
Solving Probabilistic Combinatorial Games Ling Zhao & Martin Mueller University of Alberta September 7, 2005 Paper link:
Learning Shape in Computer Go David Silver. A brief introduction to Go Black and white take turns to place down stones Once played, a stone cannot move.
Hao Luo, Zhifei Song. Introduction Lock and Roll: very popular game on iphone, more than 12,000,000 had been played ever since last may. Layout of the.
1 Life-and-Death Problem Solver in Go Author: Byung-Doo Lee Dept of Computer Science, Univ. of Auckland Presented by: Xiaozhen Niu.
Parallel Merging Advanced Algorithms & Data Structures Lecture Theme 15 Prof. Dr. Th. Ottmann Summer Semester 2006.
Inside HARUKA Written by Ryuichi Kawa Surveyed by Akihiro Kishimto.
Go Meeting Talk1 Generation of Patterns with External Conditions for the Game of Go Paper presentation
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:
A Heuristic Search Algorithm for Capturing Problems in Go Authors: Keh-Hsun Chen and Peigang Zhang Presenter: Ling Zhao August 8, 2006.
Monte Carlo Go Has a Way to Go Haruhiro Yoshimoto (*1) Kazuki Yoshizoe (*1) Tomoyuki Kaneko (*1) Akihiro Kishimoto (*2) Kenjiro Taura (*1) (*1)University.
Applying proof numbers to Life and Death: First Result Akihiro Kishimoto
Multipurpose Strategic Planning In the Game of Go Paper presentation Authors: Shui Hu and Paul E. Lehner Presentation by: Adi Botea.
Recent Progress on the One-eye Solver Akihiro Kishimoto
1 Recognizing safe territories Presented by: Xiaozhen Niu Date: 2003/09/22.
Multipurpose Adversary Planning in the Game of Go Ph.D thesis by Shui Hu Presenter: Ling Zhao Date: November 18, 2002.
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.
An One-eye Solver Based on Proof and Disproof Numbers Akihiro Kishimoto
Dynamic Decomposition Search for the One-Eye Problem Akihiro Kishimoto
1 An Efficient Algorithm for Eyespace Classification in Go Author: Peter Drake, Niku Schreiner Brett Tomlin, Loring Veenstra Presented by: Xiaozhen Niu.
Multiples 1 X 2 = 22 X 2 = 43 X 2 = 6 4 X 2 = 8 What do you call 2,4,6,8 ?Multiples of 2 Why?
Evolving Multi-modal Behavior in NPCs Jacob Schrum – Risto Miikkulainen –
Including a detailed description of the Colorado Growth Model 1.
Go An ancient Oriental board game Andrew Simons. Introduction 2 player game of skill. Popular in the Far East, growing in the West. Simple rules, extremely.
Lecture 5 Note: Some slides and/or pictures are adapted from Lecture slides / Books of Dr Zafar Alvi. Text Book - Aritificial Intelligence Illuminated.
Game Playing.
1 Outline:  Outline of the algorithm  MILP formulation  Experimental Results  Conclusions and Remarks Advances in solving scheduling problems with.
Computer Go : A Go player Rohit Gurjar CS365 Project Proposal, IIT Kanpur Guided By – Prof. Amitabha Mukerjee.
Position Evaluation in Computer Go Martin Muller Dept. of Computer Science and Information Engineering National Dong Hwa University Reporter : Lo Jung-Yun.
Young Suk Moon Chair: Dr. Hans-Peter Bischof Reader: Dr. Gregor von Laszewski Observer: Dr. Minseok Kwon 1.
A Novel Wave-Propagation Approach For Fully Conservative Eulerian Multi-Material Simulation K. Nordin-Bates Lab. for Scientific Computing, Cavendish Lab.,
Design Process.
2004/11/13GPW20041 What Shogi Programs Still Cannot Do - A New Test Set for Shogi - Reijer Grimbergen and Taro Muraoka Department of Informatics Yamagata.
2009/11/14GPW20091 Analysis of the Behavior of People Solving Sudoku Puzzles Reijer Grimbergen School of Computer Science, Tokyo University of Technology.
Amazons Experiments in Computer Amazons, Martin Mueller and Theodore Tegos, 2002 Exhaustive Search in the Game Amazons Raymond Georg Snatzke, 2002 Presented.
Search exploring the consequences of possible actions.
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.
Illustration of FE algorithm on the example of 1D problem Problem: Stress and displacement analysis of a one-dimensional bar, loaded only by its own weight,
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.
The Chooser-Picker 7-in-a-row game András Csernenszky July Szeged.
Activity 1: Play Fours Play in pairs Each player has a 3 by 3 grid Take turns to roll 2 dice Calculate the total- each spot is worth 4 points Write your.
Quoridor and Artificial Intelligence
Minesweeper Solver Marina Maznikova Artificial Intelligence II Fall 2011.
Multiples and Factors. Multiples A multiple is a number that is in the times tables. A multiple is a number that is in the times tables. Multiples of.
Learning to Play the Game of GO Lei Li Computer Science Department May 3, 2007.
Solving Tsumego on Computers M2 Hirokazu Ishii Chikayama & Taura Lab.
George F Luger ARTIFICIAL INTELLIGENCE 5th edition Structures and Strategies for Complex Problem Solving HEURISTIC SEARCH Luger: Artificial Intelligence,
HEURISTIC SEARCH 4 4.0Introduction 4.1An Algorithm for Heuristic Search 4.2Admissibility, Monotonicity, and Informedness 4.3Using Heuristics in Games 4.4Complexity.
An AI Game Project. Background Fivel is a unique hybrid of a NxM game and a sliding puzzle. The goals in making this project were: Create an original.
Luca Weibel Honors Track: Competitive Programming & Problem Solving Partisan game theory.
Conflict Resolution of Chinese Chess Endgame Knowledge Base Bo-Nian Chen, Pangfang Liu, Shun-Chin Hsu, Tsan-sheng Hsu.
Hybrid BDD and All-SAT Method for Model Checking
A CIS 5603 Course Project By: Qizhong Mao, Baiyi Tao, Arif Aziz
Goal-driven Mechanism in Interim.2 Go Program
NIM - a two person game n objects are in one pile
Presentation transcript:

1 An Improved Safety Solver for Computer Go Presented by: Xiaozhen Niu Date: 2004/02/24

2 Outline n Introduction n Methods for processing regions n Search Enhancements n Experimental Results n Future Work

3 Introduction n Blocks and regions n Definitions n Structure of the safety solver

4 Blocks and Regions n Boundary blocks, interior blocks, merged regions

5 Definitions n Definition 1: A set of blocks is alive under alternating play in a set of regions R if there exist liberty targets LT(b,r) and a strategy S that achieves all these liberty targets in each r of R and: n Definition 2: We call a region r one-vital for a block b if b can achieve a liberty target of one in r, and two-vital if b can achieve a target of two.

6 Structure of the Safety Solver n 1. Call static solver. n 2. Call 2-vital solver for each region (size <30). n 3. Call expend-vital solver for regions that have some safe boundary blocks. n 4. Region Merging. For each small-enough merged region (size <=14), call 2-vital solver. n 5. Call 1-vital and 2-vital solver to deal with weakly dependent regions. n 6. Call expend-vital solver again for those regions for which one or more new safe boundary blocks have been found.

7 Methods for Processing Regions n Region merging. n Strongly and weakly dependent regions n External eyes.

8 Region Merging n Step 1: merge all related regions. n Step 2: handle weakly dependent regions

9 Strongly and Weakly Dependent Regions n Strongly dependent regions (more than 1 common boundary block) and weakly dependent regions (only 1). There are three weakly dependent region R1, R2, and F

10 Weakly Dependent Regions n For one region, the common boundary has X internal liberties. u Type 1: X >1 u Type 2: X=1

11 Weakly Dependent Regions n Type 2: the common boundary block only has 1 internal liberty.

12 External Eye n An external eye of the boundary block will be very helpful to reduce the liberty target for that block.

13 Search Enhancements n Move generation and move ordering n Evaluation function

14 Move Generation and Ordering n Move generation: u forced move n Move ordering: three priorities of attacker’s moves, for attacker’s move: u 1, it is close to empty cutting points u 2, it extends one or more cutting blocks u 3, using following formula to calculate scores, in here f1 = 10, f2 = 30, f3 = 20, f4 = 50, f5 = 100.

15 Evaluation Function u Heuristic evaluation function: NSR is the number of subrigions and NAB is the number of the attacker‘s active blocks, then: u Exact evaluation function: F HasSureLiberties(), quick F StaticSafe(), 5-10 times slower.

16 Experimental Results n Test set 1: 31 games played by amateur dan players. n Test set 2: 27 games played by professional players.

17 Experiment 1 n Overall Comparison of Solvers: u Benson: benson algorithm u Static-1997: static solver in 1997 u Search- 1997: 6 ply limit u Static-2004: current version of static solver u M1: basic 2-vital solver u M2: M1 + consider external eyes u M3: M2 + region merging u M4: M3 + move ordering u M5: M4 + heuristic evaluation function u M6: M5 + weakly dependent regions

18 Test Set 1 n T = 200 seconds

19 Test Set 2 n T = 200 seconds

20 Experiment 2 n Detailed comparison of solvers in test set 1. Static solver can prove 321 out of 802 regions safe, safety solver can prove 227, the remaining 254 have not been solved n We divide 227 regions to four group, very easy, easy, moderate, and hard by the CPU time used.

21 Group 1: Very Easy n Group 1 (25 regions): Most regions in this group is small (size <10). M1 can solve all within a time limit of 0.2s. M2-M6 can solve all within a time limit of 0.1s.

22 Group 2: Easy n Group 2 (62 regions). M3 solves all within 0.5s, M4-M6 solves all within 0.1s.

23 Group 2 Examples

24 Group 3: Moderate n Group 3 (87 regions):

25 Group 3 Examples

26 Group 4: Hard n Group 4 ( 53 regions): there are 20 weakly dependent regions that can not be solved by M1-M5.

27 Group 4 Examples

28 Future Work n An example of unsolved region by a 14-ply search within 200s.

29 Future Work n An example of multiple related regions

30 Future Work n Seki, double Ko. n Move generation, selective search? n Evaluation function.

31 n Thank you!