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

## Presentation on theme: "Exploiting Symmetry in Planning Maria Fox Durham Planning Group University of Durham, UK."— 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.

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

Similar presentations