Planning and Optimization E1. Critical Path Heuristics: h m Malte Helmert and Gabriele R¨ oger Universit¨ at Basel November 20, 2017
Set Representation Perfect Regression Heuristic Critical Path Heuristics Computation Summary Content of this Course Tasks Progression/ Regression Planning Complexity Types Heuristics Combination Symbolic Search Comparison
Set Representation Perfect Regression Heuristic Critical Path Heuristics Computation Summary Content of this Course: Heuristic Types Delete Relaxation Abstraction h m Heuristic Heuristic Types Critical Paths Π m Compilation Landmarks Network Flows
Set Representation Perfect Regression Heuristic Critical Path Heuristics Computation Summary Set Representation
Set Representation Perfect Regression Heuristic Critical Path Heuristics Computation Summary In This (and the Next) Chapter. . . . . . we consider only STRIPS, and . . . . . . we focus on backward search and regression.
Set Representation Perfect Regression Heuristic Critical Path Heuristics Computation Summary Set Representation of STRIPS Planning Tasks For a more convenient notation, we will use a set representation of STRIPS planning task. . . Three differences: Represent conjunctions of variables as sets of variables. Use two sets to represent add and delete effects of operators separately. Represent states as sets of the true variables.
Set Representation Perfect Regression Heuristic Critical Path Heuristics Computation Summary STRIPS Operators in Set Representation: Reminder Every STRIPS operator is of the form � v 1 ∧ · · · ∧ v p , a 1 ∧ · · · ∧ a q ∧ ¬ d 1 ∧ · · · ∧ ¬ d r , c � where v i , a j , d k are state variables and c is the cost. The same operator o in set representation is � pre ( o ) , add ( o ) , del ( o ) , cost ( o ) � , where pre ( o ) = { v 1 , . . . , v p } are the preconditions, add ( o ) = { a 1 , . . . , a q } are the add effects, del ( o ) = { d 1 , . . . , d r } are the delete effects, and cost ( o ) = c is the operator cost.
Set Representation Perfect Regression Heuristic Critical Path Heuristics Computation Summary STRIPS Planning Tasks in Set Representation A STRIPS planning task in set representation is given as a tuple � V , I , O , G � , where V is a finite set of state variables, I ⊆ V is the initial state, O is a finite set of STRIPS operators in set representation, G ⊆ V is the goal. The corresponding planning task in the previous notation is � V , I ′ , O ′ , γ � , where I ′ ( v ) = T iff v ∈ I , O ′ = {� � � v ∧ � ¬ v , cost ( o ) � | o ∈ O } , v , v ∈ pre ( o ) v ∈ add ( o ) v ∈ del ( o ) γ = � v . v ∈ G
Set Representation Perfect Regression Heuristic Critical Path Heuristics Computation Summary STRIPS Planning Tasks in Set Representation A STRIPS planning task in set representation is given as a tuple � V , I , O , G � , where V is a finite set of state variables, I ⊆ V is the initial state, O is a finite set of STRIPS operators in set representation, G ⊆ V is the goal. The corresponding planning task in the previous notation is � V , I ′ , O ′ , γ � , where I ′ ( v ) = T iff v ∈ I , O ′ = {� � � v ∧ � ¬ v , cost ( o ) � | o ∈ O } , v , v ∈ pre ( o ) v ∈ add ( o ) v ∈ del ( o ) γ = � v . v ∈ G
Set Representation Perfect Regression Heuristic Critical Path Heuristics Computation Summary Reminder: STRIPS Regression Definition (STRIPS Regression) Let ϕ = ϕ 1 ∧ · · · ∧ ϕ n be a conjunction of atoms, and let o be a conflict-free STRIPS operator which adds the atoms a 1 , . . . , a k and deletes the atoms d 1 , . . . , d l . (W.l.o.g., a i � = d j for all i , j .) The STRIPS regression of ϕ with respect to o is � ⊥ if ϕ i = d j for some i , j sregr ( ϕ, o ) := pre ( o ) ∧ � ( { ϕ 1 , . . . , ϕ n } \ { a 1 , . . . , a k } ) else Note: sregr ( ϕ, o ) is again a conjunction of atoms, or ⊥ .
Set Representation Perfect Regression Heuristic Critical Path Heuristics Computation Summary STRIPS Regression in Set Representation Definition (STRIPS Regression) Let A be a set of atoms, and let o be a conflict-free STRIPS operator o = � pre ( o ) , add ( o ) , del ( o ) , cost ( o ) � . (W.l.o.g., add ( o ) ∩ del ( o ) = ∅ .) The STRIPS regression of A with respect to o is � ⊥ if A ∩ del ( o ) � = ∅ sregr ( A , o ) := pre ( o ) ∪ ( A \ add ( o )) otherwise Note: sregr ( A , o ) is again a set of atoms, or ⊥ .
Set Representation Perfect Regression Heuristic Critical Path Heuristics Computation Summary Perfect Regression Heuristic
Set Representation Perfect Regression Heuristic Critical Path Heuristics Computation Summary Perfect Regression Heuristic Definition (Perfect Regression Heuristic) For a conflict-free STRIPS planning task � V , I , O , G � the perfect regression heuristic r ∗ for state s and variable set A ⊆ V is defined as the (point-wise) greatest fixed-point solution of the equations: r ∗ ( s , A ) = 0 if A ⊆ s r ∗ ( s , A ) = ( B , o ) ∈ R ( A , O ) [ cost ( o ) + r ∗ ( s , B )] min otherwise R ( A , O ) = { ( B , o ) | o ∈ O , B = sregr ( A , o ) � = ⊥}
Set Representation Perfect Regression Heuristic Critical Path Heuristics Computation Summary Perfect Regression Heuristic r ∗ vs. Perfect Heuristic h ∗ Theorem For a conflict-free STRIPS planning task � V , I , O , G � it holds for each state s that h ∗ ( s ) = r ∗ ( s , G ) . Intuition: We can extract a path from the operators in the Intuition: minimizing pairs ( B , o ), starting from the goal. � r ∗ cannot be computed efficiently.
Set Representation Perfect Regression Heuristic Critical Path Heuristics Computation Summary Critical Path Heuristics
Set Representation Perfect Regression Heuristic Critical Path Heuristics Computation Summary Running Example We will use the following running example throughout this chapter: Π = � V , I , { o 1 , o 2 , o 3 } , G � with V = { a , b , c } I = { a } o 1 = �{ a , b } , { c } , { b } , 1 � o 2 = �{ a } , { b } , { a } , 2 � o 3 = �{ b } , { a } , ∅ , 2 � G = { a , b , c } Optimal plan o 2 , o 3 , o 1 , o 2 , o 3 has cost 9.
Set Representation Perfect Regression Heuristic Critical Path Heuristics Computation Summary Back to RTG and h max +1 0 3 3 o 1 I G 2 3 0 2 3 a c b 2 o 2 o 3 +2 +2 The critical path justifies the heuristic estimate h max ( I ) = 3
Set Representation Perfect Regression Heuristic Critical Path Heuristics Computation Summary h max as Critical Path Heuristic Definition ( h max Heuristic) For a conflict-free STRIPS planning task � V , I , O , G � the heuristic h max for state s and variable set A ⊆ V is defined as the (point-wise) greatest fixed-point solution of h max ( s , A ) = 0 if A ⊆ s min ( B , o ) ∈ R ( A , O ) [ cost ( o ) + h max ( s , B )] if | A | ≤ 1 and A �⊆ s max v ∈ A h max ( s , { v } ) otherwise R ( A , O ) = {� B , o � | o ∈ O , B = sregr ( A , o ) � = ⊥} Estimate r ∗ ( s , A ) as cost of most expensive v ∈ A . This definition specifies the same heuristic h max as in the chapter on relaxation heuristics.
Set Representation Perfect Regression Heuristic Critical Path Heuristics Computation Summary Critical Path Heuristics Definition ( h m Heuristics) For a conflict-free STRIPS planning task � V , I , O , G � and m ∈ N 1 the heuristic h m for state s and variable set A ⊆ V is defined as the (point-wise) greatest fixed-point solution of h m ( s , A ) = 0 if A ⊆ s min � B , o �∈ R ( A , O ) [ cost ( o ) + h m ( s , B )] if | A | ≤ m and A �⊆ s max B ⊆ A , 1 ≤| B |≤ m h m ( s , B ) otherwise R ( A , O ) = {� B , o � | o ∈ O , B = sregr ( A , o ) � = ⊥} Estimate r ∗ ( s , A ) as cost of most expensive B ⊆ A with | B | ≤ m .
Set Representation Perfect Regression Heuristic Critical Path Heuristics Computation Summary Computation
Set Representation Perfect Regression Heuristic Critical Path Heuristics Computation Summary Critical Path Heuristics: Computation Definition ( h m Heuristics) For a conflict-free STRIPS planning task � V , I , O , G � and m ∈ N 1 the heuristic h m for state s and variable set A ⊆ V is defined as the (point-wise) greatest fixed-point solution of h m ( s , A ) = 0 if A ⊆ s min ( B , o ) ∈ R ( A , O ) [ cost ( o ) + h m ( s , B )] if | A | ≤ m and A �⊆ s max B ⊆ A , 1 ≤| B |≤ m h m ( s , B ) otherwise R ( A , O ) = {� B , o � | o ∈ O , B = sregr ( A , o ) � = ⊥} Cheap to evaluate given h m ( s , B ) for all B ⊆ V with 1 ≤ | B | ≤ m . We precompute these values.
Set Representation Perfect Regression Heuristic Critical Path Heuristics Computation Summary h m Precomputation (1) For value m and state s of task with variables V and operators O Computing h m Values for Variable Sets up to Size m S := { A ⊆ V | | A | ≤ m } Associate a cost attribute with each set A ∈ S . for all sets A ∈ S : if A ⊆ s then A . cost := 0 else A . cost := ∞ while no fixed point is reached: Choose a variable set A from S . newcost := min � B , o �∈ R ( A , O ) [ cost ( o ) + currentcost ( B , S )] if newcost < A . cost then A . cost := newcost currentcost(B,S) if | B | ≤ m then return B . cost else return max A ∈ S , A ⊆ B A . cost
Recommend
More recommend