Unifying Planning Techniques - PowerPoint PPT Presentation

Unifying planning techniques
1 / 27

  • Uploaded on
  • Presentation posted in: General

Unifying Planning Techniques. Jonathon Doran. The Planning Domain. A domain describes the objects, facts, and actions in the universe. We may have a box and a table in our universe. Fluents. There is a green box. The box is on the table. Propositions that are true or false at a point

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

Download Presentation

Unifying Planning Techniques

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript

Unifying planning techniques

Unifying Planning Techniques

Jonathon Doran

The planning domain

The Planning Domain

A domain describes the objects, facts, and

actions in the universe.

We may have a box and a table

in our universe.



There is a green box.

The box is on the table.

Propositions that are

true or false at a point

in time.

The state of the universe is described

by a set of these fluents.



Our goal is to move the universe

from one state to another.

Actions change the universe’s state.

A set of preconditions

A set of fluents to add

A set of fluents to delete

STRIPS formalism



An initial state of the universe, and a list of actions

that change the universe to some goal state.

The goal is typically a subset of a final state.

Actions imply state...

plans are equivalently a list of states.

Plan structure

Plan Structure

We could look at a plan as an alternating

sequence of states and actions...


Plans are also recursive.

SA (S A (S A S))

Plans are not necessarily


The state space

The State Space


Up, Down, Left, Right

This space grows

exponentially with

the number of




How do we plan a route?

We cannot reliably estimate our distance to the goal...

Planning is np complete

Planning is NP-Complete

Abandon all hope

It gets worse:

Optimal planning is NP-Hard

Early planners did an exhaustive search.

Some hope

Some Hope

But we have seen techniques for

dealing with NP-complete problems...

DPLL prunes the solution space.

This works if we are




Blum and Furst


Represents solution space

as a graph.

Able to build this graph

in polynomial time.

Able to prune this graph

in polynomial time.

Graph representation

Graph Representation

Circles represent fluents.

Squares represent actions.

Mutual exclusion

Mutual Exclusion

Mutually exclusive situations may

be identified and pruned.

Actions are mutex if no plan could

contain both at the same time.

Mutex examples

Mutex Examples

Interference: (one action deletes a precond of another)

I have $15, and can either buy a CD or a movie ticket.

Inconsistent Effects:

The effect of one action is the negation of another action.

I wish to paint the room entirely blue and entirely red.

Mutex examples1

Mutex Examples

Competing Needs:

Two actions have preconditions that are mutex.

I wish to sleep and go to class.

Fluent mutexes

Fluent Mutexes

Fluents are mutex if all ways of asserting them are mutex.

I am presently in Dallas and Denton.

Or, if one fluent is the negation of another.

What would it mean for some actions

(but not all) to be mutex?

Graph growth

Graph Growth

Actions monotonically increase.

Fluents monotonically increase.

Fluent-mutexes monotonically decrease.

Action-mutexes monotonically decrease.

At some point the graph stops changing.



  • The size of the graph, and the time to create it are:

  • polynomial in t (the number of levels)

  • polynomial in n (the number of objects)

  • polynomial in m (the number of actions)

  • polynomial in p (the number of fluents in the goal)




Express the problem as a CSP (Boolean Sat for example)

UseAction(a1, t1) ^ UseAction(a2,t2)...

Holds(p1,t1) ^ Holds(p2,t2) ...

With appropriate constraints.

Run this through a Sat Solver

Unifying graphplan and satplan

Unifying GraphPlan and SatPlan

Create a planning graph, like GraphPlan

for k-levels.

Convert graph to a CNF wff

Run through a Sat Solver.

Increase graph to k+1 levels if needed

A good idea

A Good Idea?

A wff from a graph is much smaller

than using STRIPS operators.

Random restarts used in implementations.

Restart threshold gradually increases.

SatPlan requires significant

preparation time.



Rocket example problem

Rocket Example Problem

  • two rockets: X1, X2

  • locations: Earth, Mars, Venus

  • people: Adam, Betty

  • both rockets fueled, and at Earth

  • Adam and Betty on Earth

    Goal: Adam at Mars, Betty at Venus



Predicates: (at <X> <planet>) (in <X> <rocket>)

(fueled <rocket>)

Actions:(load <person> <rocket>)

(unload <rocket> <planet>)

(fly <rocket> <planet>)

16 level 1 actions

16 Level 1 Actions

(load A 1) (load A 2) (load B 1) (load B 2)

(F 1 E) (F 1 M) (F 1 V) (F 2 E) (F 2 M) (F 2 V)

Plus 6 no-op actions

14 level 1 fluents

14 Level 1 Fluents

(at A E) (in A 1) (in A 2)

(at B E) (in A 1) (in A 2)

(at X1 E) (at X1 M) (at X1 V)

(at X2 E) (at X2 M) (at X2 V)

(fueled 1) (fueled 2)



  • planning with preferences

  • cooperative planning

  • distributed planning

  • probabilistic planning

  • planning under uncertainty (SCM, POMDP)

  • Login