Exploiting Symmetry in Planning Maria Fox Durham Planning Group University of Durham, UK.

Slides:



Advertisements
Similar presentations
Symmetry Definitions for Constraint Satisfaction Problems Dave Cohen, Peter Jeavons, Chris Jefferson, Karen Petrie and Barbara Smith.
Advertisements

Forward-Chaining Partial-Order Planning Amanda Coles, Andrew Coles, Maria Fox and Derek Long (to appear, ICAPS 2010)
Constraint Based Reasoning over Mutex Relations in Graphplan Algorithm Pavel Surynek Charles University, Prague Czech Republic.
CLASSICAL PLANNING What is planning ?  Planning is an AI approach to control  It is deliberation about actions  Key ideas  We have a model of the.
1 Finite Constraint Domains. 2 u Constraint satisfaction problems (CSP) u A backtracking solver u Node and arc consistency u Bounds consistency u Generalized.
Dana Nau: Lecture slides for Automated Planning Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License:
1 Constraint operations: Simplification, Optimization and Implication.
1 Graphplan José Luis Ambite * [* based in part on slides by Jim Blythe and Dan Weld]
Backtrack Algorithm for Listing Spanning Trees R. C. Read and R. E. Tarjan (1975) Presented by Levit Vadim.
Graph-based Planning Brian C. Williams Sept. 25 th & 30 th, J/6.834J.
Announcements Assignment #4 is due tonight. Last lab program is going to be assigned this Wednesday. ◦ A backtracking problem.
1.2 Row Reduction and Echelon Forms
Linear Equations in Linear Algebra
Introduction to Symmetry Handbook of Constraint Programming, Chapter 10 Presentation by: Robert Woodward Advanced CP, Fall
Linear Algebraic Equations
Maths of Constraint Satisfaction, Oxford, March 2006 Constraint Programming Models for Graceful Graphs Barbara Smith.
Symmetry as a Prelude to Implied Constraints Alan Frisch, Ian Miguel, Toby Walsh University of York.
Ordering and Consistent Cuts Presented By Biswanath Panda.
Constraint Logic Programming Ryan Kinworthy. Overview Introduction Logic Programming LP as a constraint programming language Constraint Logic Programming.
Logic and Set Theory.
Shatter: Efficient Symmetry- Breaking for Boolean Satisfiability Fadi A. Aloul Igor L. Markov, Karem A. Sakallah The University of Michigan.
CGRASS A System for Transforming Constraint Satisfaction Problems Alan Frisch, Ian Miguel (York) Toby Walsh (Cork)
NEW APPROACH TO CALCULATION OF RANGE OF POLYNOMIALS USING BERNSTEIN FORMS.
Constraint Systems Laboratory 11/22/2005Zheng – Comprehensive1 Survey of Techniques for Detecting and Exploiting Symmetry in Constraint Satisfaction Problems.
Backtracking.
CSE (c) S. Tanimoto, 2007 Search 1: State Spaces 1 State-Space Search Outline: Demonstration with T* State spaces, operators, moves A Puzzle: The.
1 Constraint Programming: An Introduction Adapted by Cristian OLIVA from Peter Stuckey (1998) Ho Chi Minh City.
Copyright © Cengage Learning. All rights reserved. CHAPTER 11 ANALYSIS OF ALGORITHM EFFICIENCY ANALYSIS OF ALGORITHM EFFICIENCY.
Tractable Symmetry Breaking Using Restricted Search Trees Colva M. Roney-Dougal, Ian P. Gent, Tom Kelsey, Steve Linton Presented by: Shant Karakashian.
CP Summer School Modelling for Constraint Programming Barbara Smith 1.Definitions, Viewpoints, Constraints 2.Implied Constraints, Optimization,
A Z Approach in Validating ORA-SS Data Models Scott Uk-Jin Lee Jing Sun Gillian Dobbie Yuan Fang Li.
Constraint Satisfaction Problems (CSPs) CPSC 322 – CSP 1 Poole & Mackworth textbook: Sections § Lecturer: Alan Mackworth September 28, 2012.
Modelling for Constraint Programming Barbara Smith CP 2010 Doctoral Programme.
CP Summer School Modelling for Constraint Programming Barbara Smith 2. Implied Constraints, Optimization, Dominance Rules.
1 Combinatorial Problem. 2 Graph Partition Undirected graph G=(V,E) V=V1  V2, V1  V2=  minimize the number of edges connect V1 and V2.
Overview Concept Learning Representation Inductive Learning Hypothesis
Conformant Probabilistic Planning via CSPs ICAPS-2003 Nathanael Hyafil & Fahiem Bacchus University of Toronto.
Daniel Kroening and Ofer Strichman 1 Decision Procedures An Algorithmic Point of View BDDs.
1 Constraint Symmetry and Solution Symmetry Presented by Beau M. Christ Symmetry in CSP’s Spring 2010 Presented by Beau M. Christ Symmetry in CSP’s Spring.
Chapter 2) CSP solving-An overview Overview of CSP solving techniques: problem reduction, search and solution synthesis Analyses of the characteristics.
Maximum Density Still Life Symmetries and Lazy Clause Generation Geoffrey Chu, Maria Garcia de la Banda, Chris Mears, Peter J. Stuckey.
1 Compiler Construction (CS-636) Muhammad Bilal Bashir UIIT, Rawalpindi.
Robust Planning using Constraint Satisfaction Techniques Daniel Buettner and Berthe Y. Choueiry Constraint Systems Laboratory Department of Computer Science.
Eliminating non- binary constraints Toby Walsh Cork Constraint Computation Center.
Automated Planning and Decision Making Prof. Ronen Brafman Automated Planning and Decision Making Graphplan Based on slides by: Ambite, Blyth and.
N-queens problem Original problem: How to place 8 queens on an 8x8 chessboard so that no two queens attack each other N-queen problem: Generalization for.
Constraint Satisfaction CSE 473 University of Washington.
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.
10.3 Reformulation The Lex-Leader Method Shant Karakashian 1.
1 Combinatorial Problem. 2 Graph Partition Undirected graph G=(V,E) V=V1  V2, V1  V2=  minimize the number of edges connect V1 and V2.
1 1.2 Linear Equations in Linear Algebra Row Reduction and Echelon Forms © 2016 Pearson Education, Ltd.
Reliability of Disk Systems. Reliability So far, we looked at ways to improve the performance of disk systems. Next, we will look at ways to improve the.
Sudoku Solutions Using Logic Equations Christian Posthoff The University of The West Indies, Trinidad & Tobago Bernd Steinbach Freiberg University of Mining.
1 Hojjat Ghaderi [Courtesy of Fahiem Bacchus], University of Toronto, Fall 2006 CSC384: Intro to Artificial Intelligence Backtracking Search I ● Announcements.
Cbj. What’s a csp? a set of variables each with a domain of values a collection of constraints (I’m going to assume binary for the present) assign each.
Constraint Satisfaction Problem
Chapter 3 The Relational Database Model
Planning: Heuristics and CSP Planning
Class #17 – Thursday, October 27
Graph-based Planning Slides based on material from: Prof. Maria Fox
Graphplan/ SATPlan Chapter
Class #19 – Monday, November 3
CSE (c) S. Tanimoto, 2001 Search-Introduction
Graphplan/ SATPlan Chapter
Generic SBDD using Computational Group Theory
Graphplan/ SATPlan Chapter
Graph-based Planning Slides based on material from: Prof. Maria Fox
Implementation of Learning Systems
[* based in part on slides by Jim Blythe and Dan Weld]
Announcements Assignment #4 is due tonight. Last lab program is going to be assigned this Wednesday. ◦ A backtracking problem.
Presentation transcript:

Exploiting Symmetry in Planning Maria Fox Durham Planning Group University of Durham, UK

Introduction Why is symmetry important? Leads to redundant search. Examples: n-queens and other geometric puzzles many planning problems many mathematical problems Symmetry can be characterised in terms of permutations (symmetric groups). Managing symmetry in search. Future work.

Brief CSP Review A CSP problem consists of: a collection of variables, Vars for each variable, v, a domain of possible values, Dv a collection of constraints that restrict value assignments. A CSP solution is built up by selecting an assignment for each variable in turn. At each stage in the construction, the state of the solution will be a partial assignment, identifying the values of a subset of the variables.

Why is symmetry important? A symmetry can be seen as defining an equivalence class of solutions and partial solutions. If vi is symmetric to vj then failure of choice vi occurs if and only if choice vj leads to failure. Thus, if v1 and v2 are symmetric, failure of v1 obviates need to consider v2. v1v1 v2v2 v3v3 v4v4 S S1S1 S2S2 S3S3 S4S4 Choice of values {v1,..,v4} for assignment to variable v. Next variable: v

Planning and CSP Planning can be seen as a CSP problem (Eg van Beek, Kambhampati et al). Variables are goal propositions and values are possible achievers. Dummy values are required to provide for propositions that are not activated as preconditions of assigned action values. Constraints express the delete effects of actions and incompatibilities between actions. It is not necessary to actually perform this mapping in order to exploit symmetry in planning.

What is a Symmetry? In CSP terms: "a 1:1 function on full assignments... [that] is solution preserving" (Gent and Smith, 1999). A slightly more restricted definition: A symmetry for a state, S, is a composition of a permutation on variables and a permutation on values (either of which might be the identity), sym, such that: S = sym(S) and for all partial assignments, e, that extend S, sym(e) satisfies the constraints of the problem if and only if e does. Note that this definition is with respect to a state: a symmetry can exist in a state that is not a symmetry in the initial state.

Symmetry Constraint If g is a 1:1 mapping on partial assignments, and A is a partial assignment to a collection of variables, we can write: A = g(A) & var  val  g(var  val) (Gent and Smith 1999) to mean that, if A and g(A) are identical, and the assignment of val to var fails, then any assignment symmetric to var = val (under g) will also fail.

An example One encoding of the n-queens problems uses n variables, q1...qn, each with domain {1...n}. Each variable qi corresponds to the queen in column i, and takes the value of the row for that queen. The symmetry corresponding to vertical reflection is: qi  q(n+1-i) for each variable qi. The symmetry for horizontal reflection is: i  (n+1-i) for each value i. This representation does not allow diagonal reflection as a symmetry (in our terms) - columns and rows are treated differently, so the symmetry is lost.

Recovering Symmetry A modified uniform representation can allow recovery of the symmetry: Variables qRi, qCi, for i = 1...n, for the row and column of each queen. Values r1...rn for the row values and c1...cn for the columns. Diagonal reflection along leading diagonal is now: qRi  qCi, ri  ci for each i = 1...n Horizontal reflection is ri  r(n+1-i) and vertical reflection is ci  c(n+1-i)

Exploiting Symmetry Given a state, S, and a set of symmetries, Syms, on S: Suppose var is variable selected for assignment and val is the next value tried for var: var = val. Remove from Syms all symmetries, sym, such that sym(var)  var or sym(val)  val (all symmetries broken by this assignment). Continue search recursively from new state, S' = S I {var = val}. *** If search fails, restore Syms and, for each sym, remove sym(val) from the domain of sym(var). At *** the symmetries available for exploitation can be supplemented with new symmetries on S'.

D V H DDDDDDDD DDDD DDDD X X X X X V H V

Previous Exploitation Gent and Smith (1999) exploit a version of this algorithm in ILOG- solver to exploit hand-coded symmetries for the initial state, with no new symmetries introduced during execution. In Fox and Long (1999) we exploit a version of the algorithm in STAN3 using automatically induced symmetries for the initial state, but using no newly introduced symmetries during search. Other work exploiting symmetries: Puget (1993) used symmetry breaking in solution of SAT problems. Brown, Finkelstein and Purdom (1998) Roy and Pachet (1998)

Symmetry in Planning Fox and Long (1999) define two objects, o1 and o2, to be symmetric if they have identical initial and final state propositions true of them. This analysis yields disjoint sets of symmetric objects. symmetries are induced for values and variables from these sets - two action or proposition instances are symmetric if they are equal up to symmetric objects. Eg: if o1 and o2 are symmetric then P(o1,x) and P(o2,x) are symmetric. symmetries remaining in a state are recorded using a simple array brokenSyms recording the status of each object. future symmetric selections are excluded using a special matrix recording which symmetric groups of values have been tried. The approach applies equally to forward planners, partial-order planners and graphplan planners.

Restoring Symmetry A critical limitation is that symmetry is rapidly lost as objects are selected for special roles, and never restored, even though in many planning problems objects converge on new symmetry states during search. Eg: In gripper, as balls move from one room to another they lose the original symmetry, but gain a new symmetry status as they enter a new room. Results demonstrate order of magnitude improvements but underlying exponential growth if new symmetries are not identified. Gent and Smith (1999) results for n-queens show similar trend but new symmetries unlikely to make exponential difference to performance.

Further Work Try to exploit group-theoretic properties of symmetries (eg: identify which permutations are needed to generate all symmetries) Extend symmetry management to include restoration - could lead to exponential improvement in performance in many interesting cases in planning. Explore conjecture that expansion required to express 1:1 solution-preserving mappings as permutations is polynomial. Extend notion of symmetry in planning problems eg: almost symmetry arises when objects have effectively indistinguishable initial and final states.