04 Delete Relaxation
Slides
This module is also available in the following versions
Introduction to Relaxation
Delete relaxation is a method to relax planning tasks and automatically compute a heuristic function \(h\)
Delete relaxation is a widely used heuristic, highly successful for satisficing planning
Note that every \(h\) function typically yields good performance in only in some domains (balacing search reduction versus computational overhead).
- Therefore we aim for multiple alternative relaxation methods, depending upon domain
Relaxation Types
Four known types of relxation that generate heuristics include
- Critical path heuristics
- Delete relaxation (covered in this Module)
- Abstractions
- Landmarks
Relaxing the World by Ignoring Delete Lists
The Delete Relaxation
- The “\(^+\)” super-script denotes delete relaxed states encountered in the relaxed version of the problem, e.g. \(s^+\) is a fact set just like \(s\).
- The “\(^+\)” symbol is chosen to capture the additive (monotone) aspect of delete relaxed planning problems.
The Relaxed Plan
Question: Do you recall what \(\Pi_s\) is?:
- \(\Pi_s = (F,A,c,s,G)\)
A Relaxed Plan for “TSP” in Australia

Initial state: \(\{\mathit{at}(\mathit{Sy}), \mathit{v}(\mathit{Sy})\}\)
Apply \(\mathit{drive}(\mathit{Sy},\mathit{Br})^+\): \(\{\mathit{at}(\mathit{Br}), \mathit{v}(\mathit{Br}),\) \(\mathit{at}(\mathit{Sy}), \mathit{v}(\mathit{Sy})\}\)
Apply \(\mathit{drive}(\mathit{Sy},\mathit{Ad})^+\): \(\{\mathit{at}(\mathit{Ad}), \mathit{v}(\mathit{Ad}),\) \(\mathit{at}(\mathit{Br}), \mathit{v}(\mathit{Br}),\) \(\mathit{at}(\mathit{Sy}), \mathit{v}(\mathit{Sy})\}\)
Apply \(\mathit{drive}(\mathit{Ad},\mathit{Pe})^+\): \(\{\mathit{at}(\mathit{Pe}), \mathit{v}(\mathit{Pe}),\) \(\mathit{at}(\mathit{Ad}), \mathit{v}(\mathit{Ad}),\) \(\mathit{at}(\mathit{Br}), \mathit{v}(\mathit{Br}),\) \(\mathit{at}(\mathit{Sy}), \mathit{v}(\mathit{Sy})\}\)
Apply \(\mathit{drive}(\mathit{Ad},\mathit{Da})^+\): \(\{\mathit{at}(\mathit{Da}), \mathit{v}(\mathit{Da}),\) \(\mathit{at}(\mathit{Pe}), \mathit{v}(\mathit{Pe}),\) \(\mathit{at}(\mathit{Ad}), \mathit{v}(\mathit{Ad}),\) \(\mathit{at}(\mathit{Br}), \mathit{v}(\mathit{Br}),\) \(\mathit{at}(\mathit{Sy}), \mathit{v}(\mathit{Sy})\}\)
Definition of State Dominance
For example, on the previous slide, what state dominates what?
- Each state along the relaxed plan dominates the previous one, because the actions don’t delete any facts.
State Dominance Properties
Proof: (i) is trivial. (ii) by induction over the length \(n\) of \(\vec{a}^+\). The base case \(n=0\) is trivial. The inductive case \(n \rightarrow n+1\) follows directly from the induction hypothesis and the definition of \(appl(.,.)\). Note that it is always better to have more facts true.
The Delete Relaxation & Admissibility
Proof. Trivial from the definitions of \(appl(s,a)\) and \(a^+\).
Proof: Prove by induction over the length of \(\vec{a}\) that \(appl(s,\vec{a}^+)\) dominates \(appl(s,\vec{a})\). Base case is trivial, inductive case follows from (ii) above.
The Delete Relaxation & Admissibility (continued)
Therefore optimal relaxed plans admissibly estimate the cost of optimal plans
Applying a relaxed action can only ever make more facts true ((i) above).
That can only be good, i.e., cannot render the task unsolvable (dominance proposition). [
So how do we find a relaxed plan?:
- We keep applying relaxed actions, and only stop if the goal is true.
Greedy Relaxed Planning
Proposition Greedy relaxed planning is sound, complete, and terminates in time polynomial in the size of \(\Pi\).
Proof: Soundness: If \(\vec{a}^+\) is returned then, by construction, \(G \subseteq appl(s,\vec{a}^+)\). Completeness: If “\(\Pi_s^+\) is unsolvable” is returned, then no relaxed plan exists for \(s^+\) at that point; since \(s^+\) dominates \(s\), by the dominance proposition this implies that no relaxed plan can exist for \(s\). Termination: Every \(a \in A\) can be selected at most once because afterwards \(appl(s^+,a^+) = s^+\).
- It is easy to decide whether a relaxed plan exists
Greedy Relaxed Planning to Generate a Heuristic Function?
Is this heuristic safe?:
- Yes: \(h(s)=\infty\) only if no relaxed plan for \(s\) exists, which by admissibility of delete relaxation implies that no plan for \(s\) exists.
Is this heuristic goal-aware?
- Yes, we’ll have \(G \subseteq s^+\) right at the start.
Is this heuristic admissible?
Would be if relaxed plans were optimal; but clearly aren’t. So \(h\) isn’t consistent either.
To be informed (to be an accurate estimate of \(h^*\)), a heuristic must approximate the needed to reach the goal. Greedy relaxed planning therefore doesn’t do this because it may select arbitrary actions that aren’t relevant at all.
\(h^+\) in Travelling Saleman Problem (TSP)
\(h^+\) in Towers of Hanoi
\(h^+\)(Hanoi) \(= O(n)\), as opposed to problem complexity of \(O(2^n)\)