2. Planning Heuristics and Planning Graphs: A Deep Dive
Coverage:
Heuristic functions in planning
GraphPlan algorithm and planning graphs
Cost estimation methods
Relaxed planning heuristics
3. Planning Heuristics and Planning
Graphs
“Planning Heuristics and Planning Graphs”—a core concept in Artificial
Intelligence (AI) planning, especially relevant to automated planning and
search algorithms used in robotics, intelligent agents, and decision systems
What is Automated Planning?
Automated planning is the task of generating a sequence of actions to
achieve specific goals, given an initial state and a set of possible actions. It is
often modeled using state-space search techniques.
4. 📌 1. Planning Heuristics
🔹 Definition:
Planning heuristics are estimators used by planning algorithms (like A*, Greedy
Best-First Search) to predict how close a current state is to the goal state.
🔹 Purpose:
Reduce search time by guiding the planner intelligently.
Help avoid brute-force or exhaustive search.
🔹 Common Heuristics:
1. h<sub>max</sub> Heuristic
Estimates the cost of the most expensive subgoal.
Admissible but not very informative.
5. 2. h<sub>add</sub> Heuristic
Adds the estimated costs of individual subgoals.
More informative than h<sub>max</sub>, but not admissible.
3. h<sub>FF</sub> (Fast Forward) Heuristic
Extracts a relaxed plan (ignores delete effects) and uses its length as a
heuristic estimate.
Basis for the FF planner (a state-of-the-art classical planner).
4. Landmark Heuristics
Identify facts or actions that must occur in any valid plan (called "landmarks").
Use them to estimate distance to goal.
6. 2. Planning Graphs
🔹 Definition:
A planning graph is a layered data structure representing how actions and states
evolve over time in a planning problem.
🔹 Invented by:
Blum & Furst (1997) in the Graphplan algorithm.
🔹 Structure:
Alternates between two types of levels:
State levels (S): Contains facts/literals that can be true.
Action levels (A): Contains all actions that can be applied.
Includes mutex links (mutual exclusions) that indicate conflicting facts or actions.
7. A Planning Graph is a layered graph structure that alternates between:
•State levels (S<sub>i</sub>): Represent the set of literals (facts) that could be true at time step i.
•Action levels (A<sub>i</sub>): Represent actions that can occur given the literals in S<sub>i</sub>.
📐 Structure:
nginx
S0 → A0 → S1 → A1 → S2 → A2 → ...
Each level includes:
•Actions applicable at that step (based on preconditions).
•Effects of actions (which become literals in the next state level).
•Mutex links (mutual exclusions) to track incompatible actions or facts.
8. GraphPlan is an algorithm for solving classical planning problems (STRIPS-
style), introduced by Avrim Blum and Merrick Furst in 1997.
It works by:
Building a planning graph (forward expansion).
Searching backward through the graph to extract a valid plan.
GraphPlan is known for being:
Efficient in practice.
Able to exploit parallelism and mutexes.
A basis for heuristic extraction in later planners (e.g., FF).
🔹 Use:
Efficiently checks plan feasibility.
Helps in extracting relaxed plans or building heuristics (like h<sub>pg</sub>,
planning graph-based heuristics).
9. How Does the GraphPlan Algorithm Work?
Step 1: Graph Expansion (Forward Phase)
Start from the initial state (S<sub>0</sub>).
At each level:
Add all applicable actions (whose preconditions are in S<sub>i</sub>).
Generate the next state level (S<sub>i+1</sub>) by applying their add effects.
Add mutex relationships between:
Actions: If they interfere or have competing effects.
Literals: If all ways to achieve them are mutually exclusive.
Stop when the goal literals appear in a state level without mutex between
them (or the graph levels off).
10. Step 2: Plan Extraction (Backward Phase)
Start from the goal level.
Try to select non-mutex actions that achieve the goal literals.
Work backward, choosing actions whose effects achieve the current
subgoals, and whose preconditions are met at the previous state level.
If no valid set of actions can be found, go back to Step 1 and expand further.
If a plan is found, return it.
14. Cost Estimation Methods
Cost Estimation Methods are techniques used to predict the amount of
resources (especially time, money, and labor) required to complete a project,
product, or activity. These are widely used in project management, software
engineering, construction, manufacturing, and research.
20. Relaxed Planning Heuristics
Relaxed Planning Heuristics are a family of powerful heuristic techniques
used in automated planning to estimate how far a given state is from the
goal. These heuristics are derived by solving a simplified (relaxed) version of
the planning problem, typically by ignoring delete effects (i.e., once
something becomes true, it sta
🔍 Why Use Relaxed Planning?
Real-world planning problems are NP-hard.
Solving a relaxed version is much faster.
Helps guide search algorithms (like A*, Greedy Best First Search) toward
promising states.
ys true).
21. 📌 What is "Relaxation" in Planning?
Relaxation usually refers to removing negative (delete) effects from actions.
This turns the planning problem into a monotonic problem, where the set of true propositions only
grows.
Relaxed Problem: A version of the original problem where all delete effects are removed.
🔧 How Does Relaxed Planning Heuristics Work?
Relaxed heuristics solve this simplified version (or an approximation of it) and use its solution
length or cost as an estimate of the cost to reach the goal in the original problem.