25 th Feb EBL example GP-CSP Other compilation schemes Setting up encodings.

Slides:



Advertisements
Similar presentations
Constraint Based Reasoning over Mutex Relations in Graphplan Algorithm Pavel Surynek Charles University, Prague Czech Republic.
Advertisements

Traveling Salesperson Problem
Dana Nau: Lecture slides for Automated Planning Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License:
“Using Weighted MAX-SAT Engines to Solve MPE” -- by James D. Park Shuo (Olivia) Yang.
1 Graphplan José Luis Ambite * [* based in part on slides by Jim Blythe and Dan Weld]
The Assembly Language Level
Graph-based Planning Brian C. Williams Sept. 25 th & 30 th, J/6.834J.
1 Backdoor Sets in SAT Instances Ryan Williams Carnegie Mellon University Joint work in IJCAI03 with: Carla Gomes and Bart Selman Cornell University.
Planning Graphs * Based on slides by Alan Fern, Berthe Choueiry and Sungwook Yoon.
Experiments We measured the times(s) and number of expanded nodes to previous heuristic using BFBnB. Dynamic Programming Intuition. All DAGs must have.
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.
Best-First Search: Agendas
4 th Nov, Oct 23 rd Happy Deepavali!. 10/23 SAT & CSP.
CPSC 322, Lecture 12Slide 1 CSPs: Search and Arc Consistency Computer Science cpsc322, Lecture 12 (Textbook Chpt ) January, 29, 2010.
CPSC 411, Fall 2008: Set 4 1 CPSC 411 Design and Analysis of Algorithms Set 4: Greedy Algorithms Prof. Jennifer Welch Fall 2008.
Ryan Kinworthy 2/26/20031 Chapter 7- Local Search part 1 Ryan Kinworthy CSCE Advanced Constraint Processing.
1 Planning. R. Dearden 2007/8 Exam Format  4 questions You must do all questions There is choice within some of the questions  Learning Outcomes: 1.Explain.
Computational Methods for Management and Economics Carla Gomes
18 th Feb Using reachability heuristics for PO planning Planning using Planning Graphs.
Constraint Satisfaction Problems
¾: The Saddam and George show Blair: Let's move on. Saddam, are you willing to destroy your stockpile of Samoud 2 missiles in accordance with UN weapons.
1 Branch and Bound Searching Strategies 2 Branch-and-bound strategy 2 mechanisms: A mechanism to generate branches A mechanism to generate a bound so.
Chapter 5 Outline Formal definition of CSP CSP Examples
4/18/2005EE5621 EE562 ARTIFICIAL INTELLIGENCE FOR ENGINEERS Lecture 7, 4/25/2005 University of Washington, Department of Electrical Engineering Spring.
Constraint Satisfaction Not all problems are solved by a sequential series of steps. How do we solve other types of problems?
Classical Planning Chapter 10.
Game Trees: MiniMax strategy, Tree Evaluation, Pruning, Utility evaluation Adapted from slides of Yoonsuck Choe.
Minimax Trees: Utility Evaluation, Tree Evaluation, Pruning CPSC 315 – Programming Studio Spring 2008 Project 2, Lecture 2 Adapted from slides of Yoonsuck.
Dana Nau: Lecture slides for Automated Planning Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License:
Dana Nau: Lecture slides for Automated Planning Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License:
Backtracking. N-Queens The object is to place queens on a chess board in such a way as no queen can capture another one in a single move –Recall that.
BackTracking CS335. N-Queens The object is to place queens on a chess board in such as way as no queen can capture another one in a single move –Recall.
1 Agenda Modeling problems in Propositional Logic SAT basics Decision heuristics Non-chronological Backtracking Learning with Conflict Clauses SAT and.
Heuristics in Search-Space CSE 574 April 11, 2003 Dan Weld.
Hande ÇAKIN IES 503 TERM PROJECT CONSTRAINT SATISFACTION PROBLEMS.
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
15.053Tuesday, April 9 Branch and Bound Handouts: Lecture Notes.
Conformant Probabilistic Planning via CSPs ICAPS-2003 Nathanael Hyafil & Fahiem Bacchus University of Toronto.
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.
Schreiber, Yevgeny. Value-Ordering Heuristics: Search Performance vs. Solution Diversity. In: D. Cohen (Ed.) CP 2010, LNCS 6308, pp Springer-
AI Lecture 17 Planning Noémie Elhadad (substituting for Prof. McKeown)
Basic Problem Solving Search strategy  Problem can be solved by searching for a solution. An attempt is to transform initial state of a problem into some.
Maximum Density Still Life Symmetries and Lazy Clause Generation Geoffrey Chu, Maria Garcia de la Banda, Chris Mears, Peter J. Stuckey.
1 Constraint Satisfaction Problems Chapter 5 Section 1 – 3 Grand Challenge:
Graphplan.
© Daniel S. Weld 1 Logistics Travel Wed class led by Mausam Week’s reading R&N ch17 Project meetings.
Automated Planning and Decision Making Prof. Ronen Brafman Automated Planning and Decision Making Graphplan Based on slides by: Ambite, Blyth and.
Graphplan CSE 574 April 4, 2003 Dan Weld. Schedule BASICS Intro Graphplan SATplan State-space Refinement SPEEDUP EBL & DDB Heuristic Gen TEMPORAL Partial-O.
Fahiem Bacchus © 2005 University of Toronto 1 CSC384: Intro to Artificial Intelligence Search II ● Announcements.
1 CSC 384 Lecture Slides (c) , C. Boutilier and P. Poupart CSC384: Lecture 16  Last time Searching a Graphplan for a plan, and relaxed plan heuristics.
Branch and Bound Searching Strategies
Dana Nau: Lecture slides for Automated Planning Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License:
EBL & DDB for Graphplan (P lanning Graph as Dynamic CSP: Exploiting EBL&DDB and other CSP Techniques in Graphplan) Subbarao Kambhampati Arizona State University.
1 Chapter 6 Planning-Graph Techniques. 2 Motivation A big source of inefficiency in search algorithms is the branching factor  the number of children.
CSC Modeling with FD Constraints
BackTracking CS255.
CSPs: Search and Arc Consistency Computer Science cpsc322, Lecture 12
Planning as Search State Space Plan Space Algorihtm Progression
CSPs: Search and Arc Consistency Computer Science cpsc322, Lecture 12
Analysis and design of algorithm
CSPs: Search and Arc Consistency Computer Science cpsc322, Lecture 12
Class #17 – Thursday, October 27
Graphplan/ SATPlan Chapter
CSP Search Techniques Backtracking Forward checking
Class #19 – Monday, November 3
Graphplan/ SATPlan Chapter
Graphplan/ SATPlan Chapter
GraphPlan Jim Blythe.
[* based in part on slides by Jim Blythe and Dan Weld]
Presentation transcript:

25 th Feb EBL example GP-CSP Other compilation schemes Setting up encodings

The Story Behind Memos… Memos essentially tell us that a particular set S of conditions cannot be achieved at a particular level k in the PG. –We may as well remember this information—so in case we wind up subgoaling on any set S’ of conditions, where S’ is a superset of S, at that level, you can immediately declare failure “Nogood” learning—Storage/matching cost vs. benefit of reduced search.. Generally in our favor But, just because a set S={C1….C100} cannot be achieved together doesn’t necessarily mean that the reason for the failure has got to do with ALL those 100 conditions. Some of them may be innocent bystanders. –Suppose we can “explain” the failure as being caused by the set U which is a subset of S (say U={C45,C97})—then U is more powerful in pruning later failures –Idea called “Explanation based Learning” Improves Graphplan performance significantly…. [Rao, IJCAI-99; JAIR 2000]

Explaining Failures with Conflict Sets Conflict set for P 4 = P 4 Whenever P can’t be given a value v because it conflicts with the assignment of Q, add Q to P’s conflict set X X X P1P1 P2P2 P3P3 P4P4 P5P5 P6P6 A5A5 A6A6 A7A7 A8A8 A9A9 A 10 A 11 P2P2 P1P1

X X X P1P1 P2P2 P3P3 P4P4 P5P5 P6P6 A5A5 A6A6 A7A7 A8A8 A9A9 A 10 A 11 DDB & Memoization (EBL) with Conflict Sets When we reach a variable V with conflict set C during backtracking --Skip other values of V if V is not in C (DDB) --Absorb C into conflict set of V if V is in C --Store C as a memo if V is the first variable at this level Conflict set for P 3 = P 3 P2P2 P3P3 --Skip over P 3 when backtracking from P 4 Conflict set for P 4 = P 4 P2P2 P1P1 Conflict set for P 1 = P 4 P2P2 P1P1 P3P3 Conflict set for P 2 = P 4 P2P2 P1P1 Absorb conflict set being passed up P1P1 P2P2 P3P3 P4P4 Store P 1 P 2 P 3 P 4 as a memo

Regressing Conflict Sets P1P1 P2P2 P3P3 P4P4 P1P1 P2P2 P3P3 P4P4 P5P5 P6P6 G1G1 G2G2 G3G3 G4G4 A1A1 A2A2 A3A3 A4A4 P6P6 P1P1 P 1 P 2 P 3 P 4 regresses to G 1 G 2 -P 1 could have been regressed to G 4 but G 1 was assigned earlier --We can skip over G 4 & G 3 (DDB) Regression: What is the minimum set of goals at the previous level, whose chosen action supports generate a sub-goal set that covers the memo --Minimal set --When there is a choice, choose a goal that has been assigned earlier --Supports more DDB

Using EBL Memos If any stored memo is a subset of the current goal set, backtrack immediately Return the memo as the conflict set Smaller memos are more general and thus prune more failing branches Costlier memo-matching strategy --Clever indexing techniques available Set Enumeration Trees [Rymon, KRR92] UBTrees [Hoffman & Koehler, IJCAI-99] Allows generation of more effective memos at higher levels… Not possible with normal memoization

Speedups are correlated with memo-length reduction

Compiling Planning Graph into CSP

Variables/Domains: ~cl-B-2: { #, St-A-B-2, Pick-B- 2,~cl-B-1} he-2: {#, St-A-B-2, St-B-A- 2,Ptdn-A-2,Ptdn-B-2,he-1} h-A-1: {#, Pick-A-1,h-A-0} h-B-1: {#,Pick-B-1,h-B-0 } …. Constraints: he-2 = St-A-B-2 => h-A-1 !=# {activation} On-A-B-2 = St-A-B-2 => On- B-A-2 != St-B-A-2 {mutex constraints} Goals: ~cl-B-2 != # he-2 !=# Conversion to CSP -- This search can also be cast as a CSP Variables: literals in proposition lists Values: actions supporting them Constraints: Mutex and Activation constraints

CSP Encodings can be faster than Graphplan Backward Search Do & Kambhampati, 2000 But but WHY? --We are taking the cost of converting PG into CSP (and also tend to lose the ability to use previous level search) --there is NO reason why the search for finding the valid subgraph has to go level-by-level and back to front. --CSP won’t be hobbled by level-by-level and back-to-front

2/27 GP-CSP—more Other compilation schemes Setting up encodings

Mini-Project1 Observations.. Paction can cause incompleteness –Gripper 20 Why is Hlev giving longer solutions? –Use of parallel rather than sequential graphs in AltAlt ?? –Weighted evaluation f=g+5*h Should have tables (even if no traces) Need access to better machines?

Another way of thinking of the CSP compilation….

DDB & EBL in CSP N 1 : {x=A} N 2 : {x=  A & y =  B } N 3 : {x=  A & y =  B & v = D } N 4 : {x=  A & y =  B & v = D & u = C } N 5 : {x=  A & y =  B & v = D & u = C & w= E } N 6 : {x=  A & y =  B & v = D & u = C & w= D } x  A y  B v  D w  E w  D u  C E 6 : y = B & w = D E 5 : x=A & w=E E 4 : y = B & x=A y=B x=A y = B & x=A x=A Resume Search regression Interior node explanation DDB: Skip a level if the regressed Explanation remains the same EBL: Store interior node failure Explanations x,y,u,v: {A,B,C,D,E} w: {D,E} l : {A,B} x=A  w  E y=B  u  D Y=b=> w!= D u=C  l  A v=D  l  B

It is no good to have too many nogoods.. Keeping no goods around can be a mixed blessing.. –Depth first search takes linear space to solve CSP. With nogoods, it can take exponential space –With n variables of size D, we might—in the worst case, keep O(n D ) nogoods! –Utility problem up the wazzoo.. »Exponential space »Exponential matching cost.. –Yes, Virginia—There is such a thing called too much of a good thing.

Ideas to reduce the number of stored nogoods Size-based pruning –The smaller the nogood is the more powerful it is. So, limit the size of the nogoods stored to k or less (k<<n; usually about 5) Only O( k D ) nogoods stored Normal EBL corresponds to k=n Relevance-based pruning –Prune a nogood when it differs in more than k places from the current assignment Anytime we backtrack over a node, we are likely to prune some of the nogoods Normal EBL corresponds to k=n Utility-based pruning –Keep track of the usage of the nogoods. Keep only nogoods which are being used… Costly maintenance. Sort of like page replacement strategies…

Using EBL strategies in GP-CSP Size of learning: k = 10 for both size-based and relevance-based Speedup over GP-CSP up to 10x Faster than SAT in most cases, up to 70x over Blackbox