Depth Increment in IDA* Ling Zhao Dept. of Computing Science University of Alberta July 4, 2003.

Slides:



Advertisements
Similar presentations
2.6. B OUNDING V OLUME H IERARCHIES Overview of different forms of bounding volume hierarchy.
Advertisements

Artificial Intelligence Presentation
An Introduction to Artificial Intelligence
State Space Representation and Search
PROBLEM SOLVING AND SEARCH
Classic AI Search Problems
Heuristics Some further elaborations of the art of heuristics and examples.
CSCE 580 ANDREW SMITH JOHNNY FLOWERS IDA* and Memory-Bounded Search Algorithms.
ICS-171:Notes 4: 1 Notes 4: Optimal Search ICS 171 Summer 1999.
CPSC 322, Lecture 5Slide 1 Uninformed Search Computer Science cpsc322, Lecture 5 (Textbook Chpt 3.4) January, 14, 2009.
1 Blind (Uninformed) Search (Where we systematically explore alternatives) R&N: Chap. 3, Sect. 3.3–5.
Uninformed Search Jim Little UBC CS 322 – Search 2 September 12, 2014
Search in AI.
Tackling Post’s Correspondence Problem Ling Zhao Department of Computing Science University of Alberta July 31, 2001.
Mahgul Gulzai Moomal Umer Rabail Hafeez
CPSC 322, Lecture 9Slide 1 Search: Advanced Topics Computer Science cpsc322, Lecture 9 (Textbook Chpt 3.6) January, 23, 2009.
CPSC 322, Lecture 9Slide 1 Search: Advanced Topics Computer Science cpsc322, Lecture 9 (Textbook Chpt 3.6) January, 22, 2010.
The Move Decision Strategy of Indigo Author: Bruno Bouzy Presented by: Ling Zhao University of Alberta March 7, 2007.
Progressive Strategies For Monte-Carlo Tree Search Presenter: Ling Zhao University of Alberta November 5, 2007 Authors: G.M.J.B. Chaslot, M.H.M. Winands,
Spider Search: an Efficient and Non-Frontier-Based Real-Time Search Algorithm Presenter: Chao Lin Chu 599B Advisor: Dr. Russell J. Abbott.
Solving Probabilistic Combinatorial Games Ling Zhao & Martin Mueller University of Alberta September 7, 2005 Paper link:
1 Heuristic Search 4 4.0Introduction 4.1An Algorithm for Heuristic Search 4.2Admissibility, Monotonicity, and Informedness 4.3Using Heuristics in Games.
1 Life-and-Death Problem Solver in Go Author: Byung-Doo Lee Dept of Computer Science, Univ. of Auckland Presented by: Xiaozhen Niu.
Creating Difficult Instances of the Post Correspondence Problem Presenter: Ling Zhao Department of Computing Science University of Alberta March 20, 2001.
Non-Conservative Cost Bound Increases in IDA* Doug Demyen.
Distributed Constraint Optimization Michal Jakob Agent Technology Center, Dept. of Computer Science and Engineering, FEE, Czech Technical University A4M33MAS.
October 3, 2012Introduction to Artificial Intelligence Lecture 9: Two-Player Games 1 Iterative Deepening A* Algorithm A* has memory demands that increase.
Games. Adversaries Consider the process of reasoning when an adversary is trying to defeat our efforts In game playing situations one searches down the.
Cilk Pousse James Process CS534. Overview Introduction to Pousse Searching Evaluation Function Move Ordering Conclusion.
Lecture 3: Uninformed Search
Automated discovery in math Machine learning techniques (GP, ILP, etc.) have been successfully applied in science Machine learning techniques (GP, ILP,
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.
CSCE350 Algorithms and Data Structure Lecture 21 Jianjun Hu Department of Computer Science and Engineering University of South Carolina
CPSC 322, Lecture 5Slide 1 Uninformed Search Computer Science cpsc322, Lecture 5 (Textbook Chpt 3.5) Sept, 13, 2013.
February 25, 2016Introduction to Artificial Intelligence Lecture 10: Two-Player Games II 1 The Alpha-Beta Procedure Can we estimate the efficiency benefit.
Lecture 3: Uninformed Search
Iterative Deepening A*
Heuristic Search A heuristic is a rule for choosing a branch in a state space search that will most likely lead to a problem solution Heuristics are used.
Informed Search and Exploration
Recursive Thinking Chapter 9 introduces the technique of recursive programming. As you have seen, recursive programming involves spotting smaller occurrences.
Artificial Intelligence Problem solving by searching CSC 361
Analysis and design of algorithm
Games with Chance Other Search Algorithms
Games with Chance Other Search Algorithms
Recursive Thinking Chapter 9 introduces the technique of recursive programming. As you have seen, recursive programming involves spotting smaller occurrences.
HW #1 Due 29/9/2008 Write Java Applet to solve Goats and Cabbage “Missionaries and cannibals” problem with the following search algorithms: Breadth first.
CSE 4705 Artificial Intelligence
Analysis & Design of Algorithms (CSCE 321)
Introduction to Artificial Intelligence Lecture 9: Two-Player Games I
Maze Design Presentation Questions
Artificial Intelligence
Pruned Search Strategies
Artificial Intelligence
Artificial Intelligence Chapter 9 Heuristic Search
CSE 373 Data Structures and Algorithms
Backtracking and Branch-and-Bound
State-Space Searches.
State-Space Searches.
The Rich/Knight Implementation
CS 416 Artificial Intelligence
Games with Chance Other Search Algorithms
CMSC 471 Fall 2011 Class #4 Tue 9/13/11 Uninformed Search
We have the following incomplete B&B tree:
State-Space Searches.
Heuristic Search Viewed as path Finding in a Graph
Heuristic Search in Empire-Based Games
The Rich/Knight Implementation
Presentation transcript:

Depth Increment in IDA* Ling Zhao Dept. of Computing Science University of Alberta July 4, 2003

Outline Introduction Examples Modifications on IDA* Analytical Model Experimental results Work to do Conclusions

Introduction In some single-agent search problems with very low branching factors (less than 2), the generic IDA* typically visits many more nodes than A*. Branching factor: b solution length: s A* -- b s IDA* -- b 1 +b 2 +… +b s = (b s+1 -b)/(b-1) when b s is large enough, IDA* visits about 1/(b-1) times more nodes than A*.

Examples Overhead = 1/(1-b) PCP: b = overhead = 8.33 Pathfinding: b is very close to 1 (?) overhead > 30

How to solve the problem? Depth is increased by more than one in each iteration. cons: less redundant work pros: may need to search nodes with f value greater than solution length. Modification on generic IDA*(ensure optimality): when a solution is found, update the search threshold and keep searching.

Analytical model Assumptions: search tree grows perfectly in an exponential series (1<b<2, s is very large) need to find all optimal solutions depth increment is a constant

Analytical model Iteration 1: b c Iteration 2 : b 2c Iteration i: b ic Iteration i-1: b (i-1)c solution length s k A* - b s IDA* - (b s+1 -b)/(b-1) -> b s+1 /(b-1) IDA*’- (b (i+1)c - b c )/ (b c -1) -> b (i+1)c / (b c -1) (ic = k+s) = b s * b k+c / (b c -1) overhead = b k+c / (b c -1) -1 c

Iteration 1: b c Iteration 2 : b 2c Iteration i: b ic Iteration i-1: b (i-1)c solution length s k overhead = b k+c / (b c -1) –1 worst case (k=c): Min(overhead)=3 when b c = 2 best case (k=0): Min(overhead)->0 when b c -> +infinity average case (k=c/2): Min(overhead)=1.598 when b c = 3 c

Iteration 1: b c Iteration 2 : b 2c Iteration i: b ic Iteration i-1: b (i-1)c solution length s k overhead = b k+c / (b c -1) –1 another average case: only shadowed area is visited (suppose it is 50% of the over-searched area), and k=c/2 Min(overhead) = 1.1 when b c =2.28 c

Experimental results 200 difficult PCP instances k = 45%i x = 20% of over-searched area From the model: Min(overhead) = 0.81 when b c = 7.70 Empirically: Min(overhead)=0.67 when c=20

Empirical Results

Further thoughts Decrease overhead of IDA*’ 1. node overhead - better heuristics (look ahead) 2. right increment - very specific to problems 3. variable increment???

Work to do Test the impact from better heuristics (lookahead) Apply the idea to other problems - pathfinding? - two-player games with low bf - sliding puzzles (15, 24-puzzles)? Better statistical methods to compare analytical and empirical results

Summary Search problems with very low branching factors receive relatively less attention. difficult problem => high/medium bf PCP is a good domain to test algorithms for problems with low bf IDA* with large depth increment performs much better in some problems with low branching factor (1<b<2) and typically very long solution lengths. IDA*’ is almost cost-free

A Simple Example of PCP Instance Rules: 1.select pairs 2.make the concatenated top string and bottom string identical pair 1: pair 3: pair 1: pair 3: pair 2: