1 Using Partial Order Bounding in Shogi Game Programming Workshop 2003 Reijer Grimbergen, Kenji Hadano and Masanao Suetsugu Department of Information Science.

Slides:



Advertisements
Similar presentations
TWO STEP EQUATIONS 1. SOLVE FOR X 2. DO THE ADDITION STEP FIRST
Advertisements

Welcome to Who Wants to be a Millionaire
Unit-iv.
Set Up Instructions Place a question in each spot indicated Place an answer in each spot indicated Remove this slide Save as a powerpoint slide show.
1 Concurrency: Deadlock and Starvation Chapter 6.
1 Chapter 14 Making the most of things: Linear Programming.
Chapter 6, Sec Adversarial Search.
Adversarial Search Chapter 6 Sections 1 – 4. Outline Optimal decisions α-β pruning Imperfect, real-time decisions.
Artificial Intelligence 1: game playing Lecturer: Tom Lenaerts SWITCH, Vlaams Interuniversitair Instituut voor Biotechnologie.
By D. Fisher Geometric Transformations. Reflection, Rotation, or Translation 1.
Factors, Primes & Composite Numbers
Problem Solving & Program Design in C Sixth Edition By Jeri R. Hanly & Elliot B. Koffman 1-1.
Summary of Convergence Tests for Series and Solved Problems
Jeopardy Q 1 Q 6 Q 11 Q 16 Q 21 Q 2 Q 7 Q 12 Q 17 Q 22 Q 3 Q 8 Q 13
0 - 0.
ALGEBRAIC EXPRESSIONS
DIVIDING INTEGERS 1. IF THE SIGNS ARE THE SAME THE ANSWER IS POSITIVE 2. IF THE SIGNS ARE DIFFERENT THE ANSWER IS NEGATIVE.
MULTIPLYING MONOMIALS TIMES POLYNOMIALS (DISTRIBUTIVE PROPERTY)
ADDING INTEGERS 1. POS. + POS. = POS. 2. NEG. + NEG. = NEG. 3. POS. + NEG. OR NEG. + POS. SUBTRACT TAKE SIGN OF BIGGER ABSOLUTE VALUE.
MULTIPLICATION EQUATIONS 1. SOLVE FOR X 3. WHAT EVER YOU DO TO ONE SIDE YOU HAVE TO DO TO THE OTHER 2. DIVIDE BY THE NUMBER IN FRONT OF THE VARIABLE.
SUBTRACTING INTEGERS 1. CHANGE THE SUBTRACTION SIGN TO ADDITION
MULT. INTEGERS 1. IF THE SIGNS ARE THE SAME THE ANSWER IS POSITIVE 2. IF THE SIGNS ARE DIFFERENT THE ANSWER IS NEGATIVE.
Addition Facts
Year 6 mental test 10 second questions Numbers and number system Numbers and the number system, fractions, decimals, proportion & probability.
Query optimisation.
Who Wants To Be A Millionaire? Decimal Edition Question 1.
£1 Million £500,000 £250,000 £125,000 £64,000 £32,000 £16,000 £8,000 £4,000 £2,000 £1,000 £500 £300 £200 £100 Welcome.
Welcome to Who Wants to be a Millionaire
£1 Million £500,000 £250,000 £125,000 £64,000 £32,000 £16,000 £8,000 £4,000 £2,000 £1,000 £500 £300 £200 £100 Welcome.
Welcome to Who Wants to be a Millionaire
Welcome to Who Wants to be a Millionaire
Chris Morgan, MATH G160 January 30, 2012 Lecture 9 Chapter 4.1: Combinations 1.
Chapter 4: Informed Heuristic Search
J J EOPARDY Lets Get Ready To Play Some.... Solve One Step Equations Solve Two Step Equations Solve Other Equations Word Problems to Equations
1 Alberto Montanari University of Bologna Basic Principles of Water Resources Management.
On Comparing Classifiers : Pitfalls to Avoid and Recommended Approach
© S Haughton more than 3?
Degree Distribution of XORed Fountain codes
1 Directed Depth First Search Adjacency Lists A: F G B: A H C: A D D: C F E: C D G F: E: G: : H: B: I: H: F A B C G D E H I.
1 Evaluations in information retrieval. 2 Evaluations in information retrieval: summary The following gives an overview of approaches that are applied.
Twenty Questions Subject: Twenty Questions
Squares and Square Root WALK. Solve each problem REVIEW:
Traditional IR models Jian-Yun Nie.
Adversarial Search Chapter 6 Section 1 – 4. Types of Games.
Addition 1’s to 20.
25 seconds left…...
Equal or Not. Equal or Not
Slippery Slope
Test B, 100 Subtraction Facts
Week 1.
Number bonds to 10,
Local Search Jim Little UBC CS 322 – CSP October 3, 2014 Textbook §4.8
Bottoms Up Factoring. Start with the X-box 3-9 Product Sum
A SMALL TRUTH TO MAKE LIFE 100%
Mani Srivastava UCLA - EE Department Room: 6731-H Boelter Hall Tel: WWW: Copyright 2003.
Copyright © Cengage Learning. All rights reserved.
Distributed Computing 9. Sorting - a lower bound on bit complexity Shmuel Zaks ©
Lirong Xia Reinforcement Learning (2) Tue, March 21, 2014.
Alpha-Beta Search. 2 Two-player games The object of a search is to find a path from the starting position to a goal position In a puzzle-type problem,
Games & Adversarial Search Chapter 5. Games vs. search problems "Unpredictable" opponent  specifying a move for every possible opponent’s reply. Time.
Games & Adversarial Search
Games CPSC 386 Artificial Intelligence Ellen Walker Hiram College.
Game Tree Search based on Russ Greiner and Jean-Claude Latombe’s notes.
Games & Adversarial Search Chapter 6 Section 1 – 4.
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.
IWEC20021 Threat Stacks to Guide Pruning and Search Extensions in Shogi Reijer Grimbergen Department of Information Science Saga University, Japan.
PYIWIT'021 Threat Analysis to Reduce the Effects of the Horizon Problem in Shogi Reijer Grimbergen Department of Information Science Saga University.
Games & Adversarial Search
Minimax strategies, alpha beta pruning
Games & Adversarial Search
Presentation transcript:

1 Using Partial Order Bounding in Shogi Game Programming Workshop 2003 Reijer Grimbergen, Kenji Hadano and Masanao Suetsugu Department of Information Science Saga University

2 Contents Why Partial Order Bounding? The problems of using a scalar evaluation function What is Partial Order Bounding? Using Partial Order Bounding in Shogi Implementation issues Results Conclusions and Future Work

3 Why Partial Order Bounding? Scalar evaluation function Perfect play in two-player perfect information games Mini-max search until the game theoretical value of the current position is known Infeasible for most interesting games Search needs to be cut off before the game theoretical value is known An evaluation function is needed to estimate the probability of winning when the search is terminated The evaluation function Contains most of the domain-dependent knowledge Generally a weighted sum of feature values:

4 Why Partial Order Bounding? Problems of a scalar evaluation Unstable positions Long term strategic features Large weights will give tactical problems Small weights make it impossible to follow long term plans Close to terminal positions Sometimes a single feature is enough for a conclusion PositionMaterialAttackEvaluation P1P1 000 P2P2 500–5000 P3P Possible solution: Partial Order Bounding

5 What is Partial Order Bounding? Partial Order Evaluation Partial order evaluation Keep the complete set of feature values Compare the feature values to decide which position is better f1f1 f2f2 f3f3 f4f4 P1P1 P2P2 Comp f1f1 f2f2 f3f3 f4f4 f1f1 f2f2 f3f3 f4f P 1 > P P 1 < P P 1 < P 2

6 What is Partial Order Bounding? The problem Why is partial order evaluation not enough? Which is better: P 1 or P 2 ? The problem: Antichains A subset of the partial order for which all pairs of distinct elements are incomparable Example: {f 2, f 3 } is an antichain f1f1 f2f2 f3f3 f4f4 Posf1f1 f2f2 f3f3 f4f4 P1P P2P

7 What is Partial Order Bounding? Dealing with antichains Simple approach: keep partially ordered values in every node of the search tree Leads to large sets of incomparable options Reducing these sets leads to loss of information Partial Order Bounding Separate comparison and value back up Define a target vector with targets for each of the feature values in the antichain Use search to determine if the target can be reached

8 What is Partial Order Bounding? Example of partial order bounding A D B EF C G T 1 = {5, 3} T 2 = {6,4} (11, 5) (5, 7)(6, 8)(4, 3) T 1 : + T 2 : + T 1 : + T 2 : – T 1 : + T 2 : + T 1 : – T 2 : – T 1 : + T 2 : – T 1 : – T 2 : – T 1 : + T 2 : –

9 Partial Order Bounding in Shogi Implementation decisions Which partial order evaluation to use? How to set the search targets? What to do if the search target is met or fails? What search depth should be used?

10 Partial Order Bounding in Shogi Partial order evaluation We have used the following antichain Material Strength of attack Strength of defense This partial order evaluation is Representative Has dominating features

11 Partial Order Bounding in Shogi Setting the search targets Setting the target too low Many moves for which the target is met: which one to choose? Setting the target too high No moves for which the target is met: no move can be played Our solution Perform a shallow α–βsearch and use the result as the first target

12 Partial Order Bounding in Shogi Success and failure POB is a series of searches with different bounds Problems in this approach How to set the targets to minimize the number of iterations? Which targets to increase or decrease? MovePOB iteration M1M1 TF M2M2 F M3M3 TFFT M4M4 FFF No general solution: tuning problem

13 Partial Order Bounding in Shogi Search depth In POB there is no definite target check A deeper search can reveal that the target is unreachable Optimization Target is reached if it the player to move has reached its target Not very likely to avoid a search explosion Another tuning problem

14 Results Implementation schemes Target settings Scheme A (equal weight): Increasing or decreasing all three search targets by 250 Scheme B (more weight to material): Increasing or decreasing the material feature by 400 and attack and defense by 100 Scheme C (more weight to attack): Increasing or decreasing the attack feature by 400 and material and defense by 100 Note: the defense feature did not give good results Really part of the antichain? If the target fails or succeeds for all moves, the target changes are halved

15 Results Search depth 3-ply α–β search to determine the initial search targets 3, 4 and 5-ply searches for the POB iterations 50 test problems The first (easiest) problem from Shukan Shogi 750 to 799

16 Results Test problem results 3-ply POBABC Solved17 15 Avg. Time per problem0:070:100:05 4-ply POBABC Solved Avg. Time per problem1:001:470:48 5-ply POBABC Solved Avg. Time per problem17:2326:1312:19

17 Results Discussion 4-ply POB using scheme C gives the best results 27 solved problems in 48 seconds on average Surprisingly, giving more weight to attack gives better results than giving more weight to material Increasing by 400 not the best? Setting the search target has a big impact For 4-ply POB there are only 6 problems that are solved by all three implementation schemes

18 Conclusions and Future Work POB can not be considered a general solution to the problem of using scalar evaluation functions Careful tuning is needed to use POB in a specific game What to do if time runs out without finding a single best move? POB is an interesting search method for shogi Searching different targets in parallel Combining POB with a normal minimax search