Problem Reduction Search: AND/OR Graphs & Game Trees Department of Computer Science & Engineering Indian Institute of Technology Kharagpur.

Slides:



Advertisements
Similar presentations
For Friday Finish chapter 5 Program 1, Milestone 1 due.
Advertisements

Artificial Intelligence Chapter 9 Heuristic Search Biointelligence Lab School of Computer Sci. & Eng. Seoul National University.
Artificial Intelligence Adversarial search Fall 2008 professor: Luigi Ceccaroni.
ICS-271:Notes 6: 1 Notes 6: Game-Playing ICS 271 Fall 2008.
Game Playing (Tic-Tac-Toe), ANDOR graph By Chinmaya, Hanoosh,Rajkumar.
1 CSC 550: Introduction to Artificial Intelligence Fall 2008 search in game playing  zero-sum games  game trees, minimax principle  alpha-beta pruning.
Artificial Intelligence
Game Playing Games require different search procedures. Basically they are based on generate and test philosophy. At one end, generator generates entire.
Search in AI.
Adversarial Search: Game Playing Reading: Chapter next time.
Lecture 12 Last time: CSPs, backtracking, forward checking Today: Game Playing.
Mahgul Gulzai Moomal Umer Rabail Hafeez
All rights reservedL. Manevitz Lecture 31 Artificial Intelligence A/O* and Minimax L. Manevitz.
This time: Outline Game playing The minimax algorithm
1 Game Playing Chapter 6 Additional references for the slides: Luger’s AI book (2005). Robert Wilensky’s CS188 slides:
Game Playing CSC361 AI CSC361: Game Playing.
Min-Max Trees Based on slides by: Rob Powers Ian Gent Yishay Mansour.
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)
ICS-271:Notes 6: 1 Notes 6: Game-Playing ICS 271 Fall 2006.
Monotonicity Admissible Search: “That finds the shortest path to the Goal” Monotonicity: local admissibility is called MONOTONICITY This property ensures.
Adversarial Search and Game Playing Examples. Game Tree MAX’s play  MIN’s play  Terminal state (win for MAX)  Here, symmetries have been used to reduce.
Adversarial Search: Game Playing Reading: Chess paper.
Branch and Bound Algorithm for Solving Integer Linear Programming
HEURISTIC SEARCH. Luger: Artificial Intelligence, 5 th edition. © Pearson Education Limited, 2005 Portion of the state space for tic-tac-toe.
Game Playing: Adversarial Search Chapter 6. Why study games Fun Clear criteria for success Interesting, hard problems which require minimal “initial structure”
Trees and Tree Traversals Prof. Sin-Min Lee Department of Computer Science San Jose State University.
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.
Notes adapted from lecture notes for CMSC 421 by B.J. Dorr
Minimax.
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.
Lecture 6: Game Playing Heshaam Faili University of Tehran Two-player games Minmax search algorithm Alpha-Beta pruning Games with chance.
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.
Search CSE When you can’t use A* Hill-climbing Simulated Annealing Other strategies 2 person- games.
1 Computer Group Engineering Department University of Science and Culture S. H. Davarpanah
October 3, 2012Introduction to Artificial Intelligence Lecture 9: Two-Player Games 1 Iterative Deepening A* Algorithm A* has memory demands that increase.
Heuristic Search In addition to depth-first search, breadth-first search, bound depth-first search, and iterative deepening, we can also use informed or.
Chapter 6 Adversarial Search. Adversarial Search Problem Initial State Initial State Successor Function Successor Function Terminal Test Terminal Test.
Informed State Space Search Department of Computer Science & Engineering Indian Institute of Technology Kharagpur.
AND/OR Graphs Ivan Bratko Faculty of Information and Computer Sc. University of Ljubljana Useful for solving problems by problem decomposition Searching.
For Wednesday Read Weiss, chapter 12, section 2 Homework: –Weiss, chapter 10, exercise 36 Program 5 due.
Games. Adversaries Consider the process of reasoning when an adversary is trying to defeat our efforts In game playing situations one searches down the.
For Wednesday Read chapter 7, sections 1-4 Homework: –Chapter 6, exercise 1.
Problem Reduction & Game Playing Lecture Module 7.
For Friday Finish chapter 6 Program 1, Milestone 1 due.
Problem solving by search Department of Computer Science & Engineering Indian Institute of Technology Kharagpur.
Artificial Intelligence University Politehnica of Bucharest Adina Magda Florea
Problem Reduction So far we have considered search strategies for OR graph. In OR graph, several arcs indicate a variety of ways in which the original.
Knowledge Search CPTR 314.
Decomposition spaces Spring 2007, Juris Vīksna. Sample problem - Towers of Hanoi [Adapted from R.Shinghal]
ARTIFICIAL INTELLIGENCE (CS 461D) Princess Nora University Faculty of Computer & Information Systems.
Adversarial Search 2 (Game Playing)
Adversarial Search and Game Playing Russell and Norvig: Chapter 6 Slides adapted from: robotics.stanford.edu/~latombe/cs121/2004/home.htm Prof: Dekang.
Adversarial Search In this lecture, we introduce a new search scenario: game playing 1.two players, 2.zero-sum game, (win-lose, lose-win, draw) 3.perfect.
Dept. Computer Science, Korea Univ. Intelligent Information System Lab A I (Artificial Intelligence) Professor I. J. Chung.
Adversarial Search and Game-Playing
Last time: search strategies
Iterative Deepening A*
PENGANTAR INTELIJENSIA BUATAN (64A614)
Adversarial Search and Game Playing (Where making good decisions requires respecting your opponent) R&N: Chap. 6.
Pengantar Kecerdasan Buatan
Game playing.
Chapter 6 : Game Search 게임 탐색 (Adversarial Search)
Introduction to Artificial Intelligence Lecture 9: Two-Player Games I
HW 1: Warmup Missionaries and Cannibals
Based on slides by: Rob Powers Ian Gent
Artificial Intelligence
HW 1: Warmup Missionaries and Cannibals
Minimax strategies, alpha beta pruning
Tutorial - 1 Course: CS60045 Pallab Dasgupta Professor,
Unit II Game Playing.
Presentation transcript:

Problem Reduction Search: AND/OR Graphs & Game Trees Department of Computer Science & Engineering Indian Institute of Technology Kharagpur

CSE, IIT Kharagpur2 Problem Reduction Search Typically where we are planning how best to solve a problem that can be recursively decomposed into sub-problems in multiple ways –Matrix multiplication problem –Tower of Hanoi and Blocks World problems –Finding shortest proofs in theorem proving AND/OR Graphs –An OR node represents a choice between possible decompositions –An AND node represents a given decomposition Game Trees –Max nodes represent the choice of my opponent –Min nodes represent my choice

CSE, IIT Kharagpur3 The AND/OR graph search problem Problem definition: –Given: [G, s, T]where G is the (possibly implicitly specified) AND/OR graph s is the start node of the AND/OR graph T is the (possibly implicitly specified) set of terminal nodes h(n) is a heuristic function estimating the cost of solving the sub-problem represented by node n –To find: –A minimum cost solution tree –During the search, we will use G* to denote the explicit portion of the AND/OR graph

CSE, IIT Kharagpur4 Algorithm AO* 1.Initialize: Set G* = {s}, f(s) = h(s) If s  T, label s as SOLVED 2.Terminate: If s is SOLVED, then terminate 3.Select: Select a non-terminal leaf node n from the marked sub-tree below s in G* 4.Expand: Make explicit the successors of n For each successor, m, not already in G*: Set f(m) = h(m) If m is a terminal node, label m as SOLVED 5.Cost Revision: Call cost-revise(n) 6.Loop: Go To Step 2.

CSE, IIT Kharagpur5 Cost Revision in AO*: cost-revise(n) 1.Create Z = {n} 2.If Z = { } return 3.Select a node m from Z such that m has no descendants in Z 4.If m is an AND node with successors r 1, r 2, … r k : Set f(m) =  [ f(r i ) + c(m, r i ) ] Mark the edge to each successor of m If each successor is labeled SOLVED, then label m as SOLVED If m is an OR node with successors r 1, r 2, … r k : Set f(m) = min { f(r i ) + c(m, r i ) } Mark the edge to the best successor of m If the marked successor is labeled SOLVED, label m as SOLVED 1.If the cost or label of m has changed, then insert those parents of m into Z for which m is a marked successor 2.Go to Step 2.

CSE, IIT Kharagpur6 Searching OR Graphs How does AO* fare when the graph has only OR nodes? What are the roles of lower-bound and upper-bound estimates? –Pruning criteria: LB > UB Searching Game Trees Consider an OR tree with two types of OR nodes, namely Min nodes and Max nodes In Min nodes we select the minimum cost successor In Max nodes we select the maximum cost successor Terminal nodes are winning or loosing states –It is often infeasible to search up to terminal nodes –We use heuristic costs to compare non-terminal nodes

CSE, IIT Kharagpur7 Shallow and Deep Pruning ROOT A B C F G D E5 Shallow Cut-offDeep Cut-off Max node Min node

CSE, IIT Kharagpur8 Alpha-Beta Pruning Alpha Bound of J: –The highest current value of all MAX ancestors of J –Exploration of a min node, J, is terminated as soon as its value equals or falls below alpha. –In a min node, we update beta Beta Bound of J: –The lowest current value of all MIN ancestors of J –Exploration of a max node, J, is terminated as soon as its value equals or exceeds beta –In a max node, we update alpha In both min and max nodes, we return when   

CSE, IIT Kharagpur9 Alpha-Beta Procedure: V(J; ,  ) 1.If J is a terminal, return V(J) = h(J). 2.If J is a max node: For each successor J k of J in succession: Set  = max { , V( J k ; ,  ) } If    then return , else continue Return  3.If J is a min node: For each successor J k of J in succession: Set  = min { , V( J k ; ,  ) } If    then return , else continue Return 