Generalization of Cycle-Covering Heuristics Master’s Thesis Presentation Generalization of Cycle-Covering Heuristics Clemens B¨ uchner Department of Mathematics and Computer Science University of Basel May 14, 2020
Generalization of Cycle-Covering Heuristics Introduction DMI Spiegelgasse
Generalization of Cycle-Covering Heuristics Introduction Outline 1. Background 2. Cycle-covering heuristic 3. Experimental results
Generalization of Cycle-Covering Heuristics Background Background
Generalization of Cycle-Covering Heuristics Background Planning Simplistic world model for specific problem purposes: Definition (planning task) A planning task is a 4-tuple T = �V , s 0 , γ , A� with L To L
Generalization of Cycle-Covering Heuristics Background Planning Simplistic world model for specific problem purposes: Definition (planning task) A planning task is a 4-tuple T = �V , s 0 , γ , A� with ◮ a finite set of variables V to describe each world state, L To L
Generalization of Cycle-Covering Heuristics Background Planning Simplistic world model for specific problem purposes: Definition (planning task) A planning task is a 4-tuple T = �V , s 0 , γ , A� with ◮ a finite set of variables V to describe each world state, ◮ the initial state s 0 , A B C To To C B
Generalization of Cycle-Covering Heuristics Background Planning Simplistic world model for specific problem purposes: Definition (planning task) A planning task is a 4-tuple T = �V , s 0 , γ , A� with ◮ a finite set of variables V to describe each world state, ◮ the initial state s 0 , ◮ the goal condition γ , and A B C To To B C
Generalization of Cycle-Covering Heuristics Background Planning Simplistic world model for specific problem purposes: Definition (planning task) A planning task is a 4-tuple T = �V , s 0 , γ , A� with ◮ a finite set of variables V to describe each world state, ◮ the initial state s 0 , ◮ the goal condition γ , and ◮ a finite set of actions A to transition between states. A B C To To C B
Generalization of Cycle-Covering Heuristics Background Planning Simplistic world model for specific problem purposes: Definition (planning task) A planning task is a 4-tuple T = �V , s 0 , γ , A� with ◮ a finite set of variables V to describe each world state, ◮ the initial state s 0 , ◮ the goal condition γ , and ◮ a finite set of actions A to transition between states. A B C To To C B move ( A , B )
Generalization of Cycle-Covering Heuristics Background Planning Simplistic world model for specific problem purposes: Definition (planning task) A planning task is a 4-tuple T = �V , s 0 , γ , A� with ◮ a finite set of variables V to describe each world state, ◮ the initial state s 0 , ◮ the goal condition γ , and ◮ a finite set of actions A to transition between states. A B C To C To B move ( A , B )
Generalization of Cycle-Covering Heuristics Background Planning Simplistic world model for specific problem purposes: Definition (planning task) A planning task is a 4-tuple T = �V , s 0 , γ , A� with ◮ a finite set of variables V to describe each world state, ◮ the initial state s 0 , ◮ the goal condition γ , and ◮ a finite set of actions A to transition between states. A B C To C To B move ( B , C )
Generalization of Cycle-Covering Heuristics Background Planning Simplistic world model for specific problem purposes: Definition (planning task) A planning task is a 4-tuple T = �V , s 0 , γ , A� with ◮ a finite set of variables V to describe each world state, ◮ the initial state s 0 , ◮ the goal condition γ , and ◮ a finite set of actions A to transition between states. A B C To B To C move ( B , C )
Generalization of Cycle-Covering Heuristics Background Planning Simplistic world model for specific problem purposes: Definition (planning task) A planning task is a 4-tuple T = �V , s 0 , γ , A� with ◮ a finite set of variables V to describe each world state, ◮ the initial state s 0 , ◮ the goal condition γ , and ◮ a finite set of actions A to transition between states. A B C To B To C move ( C , A )
Generalization of Cycle-Covering Heuristics Background Planning Simplistic world model for specific problem purposes: Definition (planning task) A planning task is a 4-tuple T = �V , s 0 , γ , A� with ◮ a finite set of variables V to describe each world state, ◮ the initial state s 0 , ◮ the goal condition γ , and ◮ a finite set of actions A to transition between states. A B C To To B C move ( A , B )
Generalization of Cycle-Covering Heuristics Background State Space and Heuristic Search A B C move ( A , B ) move ( A , C ) To C To B A B C A B C To C To B To B To C move ( B , C ) move ( C , B ) ... A B C A B C To B To C To C To B move ( C , B ) move ( B , C ) A B C A B C To To To To B C B C
Generalization of Cycle-Covering Heuristics Background Landmarks Properties that must hold along all plans: ◮ move to B to pick up yellow package ◮ move to C to deliver yellow package ◮ the blue package induces the same landmarks A B C To C To B
Generalization of Cycle-Covering Heuristics Background Landmarks Properties that must hold along all plans: Definition (disjunctive action landmark) Let T = �V , s 0 , G , A� be a planning task and let s be a state of T . A disjunctive action landmark of s is a non-empty set of actions ℓ ⊆ A such that every s -plan contains an action a ∈ ℓ . A B C To C To B
Generalization of Cycle-Covering Heuristics Background Landmarks Properties that must hold along all plans: Definition (disjunctive action landmark) Let T = �V , s 0 , G , A� be a planning task and let s be a state of T . A disjunctive action landmark of s is a non-empty set of actions ℓ ⊆ A such that every s -plan contains an action a ∈ ℓ . ◮ in example: { move ( A , B ), move ( C , B ) } and { move ( A , C ), move ( B , C ) } A B C To C To B
Generalization of Cycle-Covering Heuristics Background Landmarks Properties that must hold along all plans: Definition (disjunctive action landmark) Let T = �V , s 0 , G , A� be a planning task and let s be a state of T . A disjunctive action landmark of s is a non-empty set of actions ℓ ⊆ A such that every s -plan contains an action a ∈ ℓ . ◮ in example: { move ( A , B ), move ( C , B ) } and { move ( A , C ), move ( B , C ) } ◮ landmark generation is not the topic of this thesis A B C To C To B
Generalization of Cycle-Covering Heuristics Background Landmark Heuristic h LM ◮ one action from each landmark must be part of every plan ◮ minimum hitting set approach ◮ cheapest set of actions that hits each landmark ◮ solve with linear programming � min Y a · cost ( a ) s.t. a ∈A Y a ≥ 0 for all a ∈ A and � Y a ≥ 1 for all ℓ ∈ L a ∈ ℓ ◮ this corresponds to the operator-counting framework ◮ use objective value as heuristic estimate
Generalization of Cycle-Covering Heuristics Background Landmark Orderings Landmark orderings denote dependencies between landmarks. ◮ natural orderings must hold along all plans ◮ e.g., impossible to unload package before loaded ◮ reasonable orderings are rather “suggestions” ◮ e.g., move to the package’s origin before its destination
Generalization of Cycle-Covering Heuristics Background Landmark Orderings Landmark orderings denote dependencies between landmarks. ◮ natural orderings must hold along all plans ◮ e.g., impossible to unload package before loaded ◮ reasonable orderings are rather “suggestions” ◮ e.g., move to the package’s origin before its destination Represent landmarks and orderings in landmark graphs: r { move ( A , B ), move ( C , B ) } { move ( A , C ), move ( B , C ) } r
Generalization of Cycle-Covering Heuristics Cycle-Covering Cycle-Covering
Generalization of Cycle-Covering Heuristics Cycle-Covering Valuable Information in Landmark Graphs ◮ cyclical dependencies between landmarks ◮ sub-goal must be achieved multiple times to resolve cycle ◮ one landmark per cycle necessary twice in every plan ◮ again minimum hitting set problem for cycles A B C To To C B
Generalization of Cycle-Covering Heuristics Cycle-Covering Cycle-Covering Heuristic h cycle Extending the landmark heuristic with cycle constraints: � min Y a · cost ( a ) s.t. a ∈A Y a ≥ 0 for all a ∈ A and � Y a ≥ 1 for all ℓ ∈ L and a ∈ ℓ � � Y a ≥ | c | + 1 for all c ∈ C ℓ ∈ c a ∈ ℓ with C the set of cycles in the landmark graph
Generalization of Cycle-Covering Heuristics Cycle-Covering Heuristics Applied to Running Example r { move ( A , B ), move ( C , B ) } { move ( A , C ), move ( B , C ) } r min Y A → B + Y C → B + Y A → C + Y B → C s.t. Y A → B + Y C → B ≥ 1 Y A → C + Y B → C ≥ 1
Generalization of Cycle-Covering Heuristics Cycle-Covering Heuristics Applied to Running Example r { move ( A , B ), move ( C , B ) } { move ( A , C ), move ( B , C ) } r min Y A → B + Y C → B + Y A → C + Y B → C s.t. Y A → B + Y C → B ≥ 1 Y A → C + Y B → C ≥ 1 ◮ h LM ( s 0 ) = 2 (Y A → B = 1, Y B → C = 1)
Recommend
More recommend