Planning and Optimization — B6. SAT Planning: Parallel Encoding Planning and Optimization B6.1 Introduction B6. SAT Planning: Parallel Encoding B6.2 Adapting the SAT Encoding Malte Helmert and Gabriele R¨ oger Universit¨ at Basel B6.3 Summary M. Helmert, G. R¨ oger (Universit¨ at Basel) Planning and Optimization 1 / 19 M. Helmert, G. R¨ oger (Universit¨ at Basel) Planning and Optimization 2 / 19 B6. SAT Planning: Parallel Encoding Introduction Content of this Course Foundations Logic Classical B6.1 Introduction Heuristics Constraints Planning Explicit MDPs Probabilistic Factored MDPs M. Helmert, G. R¨ oger (Universit¨ at Basel) Planning and Optimization 3 / 19 M. Helmert, G. R¨ oger (Universit¨ at Basel) Planning and Optimization 4 / 19
B6. SAT Planning: Parallel Encoding Introduction B6. SAT Planning: Parallel Encoding Introduction Efficiency of SAT Planning Number of Variables Reminder: ◮ given propositional planning task Π = � V , I , O , γ � ◮ All other things being equal, the most important aspect ◮ given horizon T ∈ N 0 for efficient SAT solving is the number of propositional Variables of the SAT Formula variables in the input formula. ◮ propositional variables v i for all v ∈ V , 0 ≤ i ≤ T ◮ For sufficiently difficult inputs, runtime scales encode state after i steps of the plan exponentially in the number of variables. ◮ propositional variables o i for all o ∈ O , 1 ≤ i ≤ T � Can we make SAT planning more efficient encode operator(s) applied in i -th step of the plan by using fewer variables? � | V | · ( T + 1) + | O | · T variables � SAT solving runtime usually exponential in T M. Helmert, G. R¨ oger (Universit¨ at Basel) Planning and Optimization 5 / 19 M. Helmert, G. R¨ oger (Universit¨ at Basel) Planning and Optimization 6 / 19 B6. SAT Planning: Parallel Encoding Introduction B6. SAT Planning: Parallel Encoding Introduction Parallel Plans and Interference Parallel Plan Extraction Can we get away with shorter horizons? Idea: ◮ allow parallel plans in the SAT encoding: ◮ If we can rule out interference, we can allow multiple multiple operators can be applied in the same step operators at the same time in the SAT encoding. if they do not interfere ◮ A parallel plan (with multiple o i used for the same i ) extracted from the SAT formula can then be converted Definition (Interference) Let O ′ = { o 1 , . . . , o n } be a set of operators applicable in state s . into a “regular” plan by ordering the operators within each time step arbitrarily. We say that O ′ is interference-free in s if ◮ for all permutations π of O ′ , s � π � is defined, and ◮ for all permutations π , π ′ of O ′ , s � π � = s � π ′ � . We say that O ′ interfere in s if they are not interference-free in s . M. Helmert, G. R¨ oger (Universit¨ at Basel) Planning and Optimization 7 / 19 M. Helmert, G. R¨ oger (Universit¨ at Basel) Planning and Optimization 8 / 19
B6. SAT Planning: Parallel Encoding Introduction B6. SAT Planning: Parallel Encoding Adapting the SAT Encoding Challenges for Parallel SAT Encodings B6.2 Adapting the SAT Encoding Two challenges remain: ◮ our current SAT encoding does not allow concurrent operators ◮ how do we ensure that our plans are interference-free? M. Helmert, G. R¨ oger (Universit¨ at Basel) Planning and Optimization 9 / 19 M. Helmert, G. R¨ oger (Universit¨ at Basel) Planning and Optimization 10 / 19 B6. SAT Planning: Parallel Encoding Adapting the SAT Encoding B6. SAT Planning: Parallel Encoding Adapting the SAT Encoding Reminder: Sequential SAT Encoding (1) Sequential SAT Encoding (2) Sequential SAT Formula (1) Sequential SAT Formula (2) initial state clauses: precondition clauses: o i → pre ( o ) i − 1 ◮ v 0 for all v ∈ V with I ( v ) = T for all 1 ≤ i ≤ T , o ∈ O ◮ ◮ ¬ v 0 for all v ∈ V with I ( v ) = F positive and negative effect clauses: ( o i ∧ α i − 1 ) → v i goal clauses: for all 1 ≤ i ≤ T , o ∈ O , v ∈ V ◮ ( o i ∧ δ i − 1 ∧ ¬ α i − 1 ) → ¬ v i for all 1 ≤ i ≤ T , o ∈ O , v ∈ V ◮ γ T ◮ operator selection clauses: positive and negative frame clauses: ( o i ∧ v i − 1 ∧ ¬ v i ) → δ i − 1 o i 1 ∨ · · · ∨ o i for all 1 ≤ i ≤ T for all 1 ≤ i ≤ T , o ∈ O , v ∈ V ◮ ◮ n ( o i ∧ ¬ v i − 1 ∧ v i ) → α i − 1 operator exclusion clauses: for all 1 ≤ i ≤ T , o ∈ O , v ∈ V ◮ ¬ o i j ∨ ¬ o i for all 1 ≤ i ≤ T , 1 ≤ j < k ≤ n ◮ where α = effcond ( v , eff ( o )), δ = effcond ( ¬ v , eff ( o )). k � frame clauses must be adapted � operator exclusion clauses must be adapted M. Helmert, G. R¨ oger (Universit¨ at Basel) Planning and Optimization 11 / 19 M. Helmert, G. R¨ oger (Universit¨ at Basel) Planning and Optimization 12 / 19
B6. SAT Planning: Parallel Encoding Adapting the SAT Encoding B6. SAT Planning: Parallel Encoding Adapting the SAT Encoding Adapting the Operator Exclusion Clauses: Idea Conflicting Operators ◮ Intuitively, two operators conflict if ◮ one can disable the precondition of the other, Reminder: operator exclusion clauses ¬ o i j ∨ ¬ o i k ◮ one can override an effect of the other, or for all 1 ≤ i ≤ T , 1 ≤ j < k ≤ n ◮ one can enable or disable an effect condition of the other. ◮ If no two operators in a set O ′ conflict, ◮ Ideally: replace with clauses that express “for all states s , then O ′ is interference-free in all states. the operators selected at time i are interference-free in s ” ◮ but: testing if a given set of operators interferes ◮ This is still difficult to test, so we restrict attention in any state is itself an NP-complete problem to the STRIPS case in the following. � use something less heavy: a sufficient condition Definition (Conflicting STRIPS Operator) for interference-freeness that can be expressed Operators o and o ′ of a STRIPS task Π conflict if at the level of pairs of operators ◮ o deletes a precondition of o ′ or vice versa, or ◮ o deletes an add effect of o ′ or vice versa. M. Helmert, G. R¨ oger (Universit¨ at Basel) Planning and Optimization 13 / 19 M. Helmert, G. R¨ oger (Universit¨ at Basel) Planning and Optimization 14 / 19 B6. SAT Planning: Parallel Encoding Adapting the SAT Encoding B6. SAT Planning: Parallel Encoding Adapting the SAT Encoding Adapting the Operator Exclusion Clauses: Solution Adapting the Frame Clauses: Idea Reminder: frame clauses ( o i ∧ v i − 1 ∧ ¬ v i ) → δ i − 1 for all 1 ≤ i ≤ T , o ∈ O , v ∈ V Reminder: operator exclusion clauses ¬ o i j ∨ ¬ o i k ( o i ∧ ¬ v i − 1 ∧ v i ) → α i − 1 for all 1 ≤ i ≤ T , o ∈ O , v ∈ V for all 1 ≤ i ≤ T , 1 ≤ j < k ≤ n What is the problem? Solution: ◮ These clauses express that if o is applied at time i Parallel SAT Formula: Operator Exclusion Clauses and the value of v changes, then o caused the change. operator exclusion clauses: ◮ This is no longer true if we want to be able ¬ o i j ∨ ¬ o i for all 1 ≤ i ≤ T , 1 ≤ j < k ≤ n ◮ k to apply two operators concurrently. such that o j and o k conflict � Instead, say “If the value of v changes, then some operator must have caused the change.” M. Helmert, G. R¨ oger (Universit¨ at Basel) Planning and Optimization 15 / 19 M. Helmert, G. R¨ oger (Universit¨ at Basel) Planning and Optimization 16 / 19
B6. SAT Planning: Parallel Encoding Adapting the SAT Encoding B6. SAT Planning: Parallel Encoding Summary Adapting the Frame Clauses: Solution Reminder: frame clauses ( o i ∧ v i − 1 ∧ ¬ v i ) → δ i − 1 for all 1 ≤ i ≤ T , o ∈ O , v ∈ V ( o i ∧ ¬ v i − 1 ∧ v i ) → α i − 1 for all 1 ≤ i ≤ T , o ∈ O , v ∈ V Solution: B6.3 Summary Parallel SAT Formula: Frame Clauses positive and negative frame clauses: ◮ ( v i − 1 ∧ ¬ v i ) → (( o i 1 ∧ δ i − 1 n ∧ δ i − 1 o 1 ) ∨ · · · ∨ ( o i o n )) for all 1 ≤ i ≤ T , v ∈ V ◮ ( ¬ v i − 1 ∧ v i ) → (( o i 1 ∧ α i − 1 n ∧ α i − 1 o 1 ) ∨ · · · ∨ ( o i o n )) for all 1 ≤ i ≤ T , v ∈ V where α o = effcond ( v , eff ( o )), δ o = effcond ( ¬ v , eff ( o )), O = { o 1 , . . . , o n } . For STRIPS, these are in clause form. M. Helmert, G. R¨ oger (Universit¨ at Basel) Planning and Optimization 17 / 19 M. Helmert, G. R¨ oger (Universit¨ at Basel) Planning and Optimization 18 / 19 B6. SAT Planning: Parallel Encoding Summary Summary ◮ As a rule of thumb, SAT solvers generally perform better on formulas with fewer variables. ◮ Parallel encodings reduce the number of variables by shortening the horizon needed to solve a planning task. ◮ Parallel encodings replace the constraint that operators are not applied concurrently by the constraint that conflicting operators are not applied concurrently. ◮ To make parallelism possible, the frame clauses also need to be adapted. M. Helmert, G. R¨ oger (Universit¨ at Basel) Planning and Optimization 19 / 19
Recommend
More recommend