coppin chapter 16.ppt

advertisement
Chapter 16
Planning Methods
1
Chapter 16 Contents (1)






STRIPS
STRIPS Implementation
Partial Order Planning
The Principle of Least Commitment
Propositional Planning
SAT Planning
2
Chapter 16 Contents (2)







Planning Graphs
GraphPlan
ADL and PDDL
Probabilistic Planning
Dynamic World Planning
Case-Based Planning
Scheduling
3
STRIPS (1)





Stanford Research Institute Problem Solver.
An operator based planning system.
STRIPS uses wffs in FOPC to describe the
world.
For example:
STRIPS was designed to enable a planner to
devise plans for a robot which is to solve
problems in the blocks world.
4
STRIPS (2)

STRIPS defines operators as in the following rule
schemata:
Precondition:
Delete:
Add:


AT(r, x)
Λ AT(o, x)
AT(r, x)
AT(o, x)
AT(r, y)
AT(o, y)
The preconditions specify what must be true for the
operator to be applied.
The delete and add lists specify the changes that
will take place after the operator is applied.
5
STRIPS Implementation
STRIPS uses resolution and meansends analysis to devise plans:
 The goal is negated, and the rule
schemata are instantiated with
objects from the real world.
 If the resolution fails, then the goal
has been achieved.
 Otherwise, a plan must be devised.

6
Partial Order Planning (1)


A total order plan specifies
the order in which all
actions must be carried
out.
A partial order plan can
specify some actions in
parallel – these actions can
be carried out in any order
relative to each other.
7
Partial Order Planning (2)


A partial order plan can be implemented in one
of several ways.
The partial order plan on the left is implemented
in one of two ways, shown in the total order
plans, center and right:
8
The Principle of Least Commitment



In building a plan there will be some variables
and objects that can be ignored, as they are
superfluous to the goal of the plan.
Some variables do not need to be instantiated
– for example it is preferable, where possible,
to use MoveOnto (a, y) than to use
MoveOnto (a, b).
This is the Principle of Least Commitment.
9
Propositional Planning (1)
Any STRIPS plan can be expressed in
propositional logic.
 This will often involve increasing the
number of variables.

10
Propositional Planning (2)



Any STRIPS plan can be expressed in
propositional logic.
This will often involve increasing the number of
variables. For example:
Clear (x)
On (x, y)
These predicates can be represented as
propositions:
X1 is equivalent to Clear (A)
X2 is equivalent to Clear (B)
X3 is equivalent to On (A, B)
X4 is equivalent to On (B, A)
11
Propositional Planning (3)


States can be represented as an assignment of
truth values to the propositions:
X1 Λ ¬X2 Λ X3 Λ ¬ X4
This state can be represented in STRIPS
notation as:
Clear (A) Λ ¬Clear (B) Λ On (A, B) Λ ¬On (B, A)

The following sentence represents all
states in which A is clear and B is not
clear:
X1 Λ ¬X2
12
Propositional Planning (4)






Actions can also be represented as the preconditions
and the results of the action.
We use the notation ¬X1’ to indicate that X1’ is no
longer true after the action.
Hence, an action might be:
X1 Λ X2 Λ ¬X3 Λ ¬X4 Λ X1’ Λ ¬X2’ Λ X3’ Λ ¬X4’
This action is MoveOnto (A, B).
This is a simple example, but propositional planning
can lead to very complex expressions being used.
The advantage of using propositional planning is that
automated systems can be built to manipulate the
plans.
13
SAT Planning



The satisfiability problem, of determining
whether a given propositional logic
sentence is satisfiable or not, is NPComplete.
A number of efficient methods have been
developed for devising plans by
determining the satisfiability of
propositional logic expressions.
Methods are either systematic, which
involve checking all possible assignments
of truth values, or stochastic.
14
Planning Graphs (1)



Even-numbered levels represent states. Odd-numbered
levels actions.
Level 0 contains the propositions that represent the start
state. The arrows from level 0 to level 1 show how those
propositions match the preconditions of the actions in level
1.
All possible actions are shown in the graph.
15
Planning Graphs (2)

The partial
planning graph
shown
includes
persistence
actions (things
which do not
change) as
lines with
squares on.

The heavy black lines show mutexes:
 Two propositions joined by such a line are mutually
exclusive, and cannot both be used in the same plan.
16
Planning Graphs (3)



The planning graph for even a simple
problem can be extremely complex.
By producing a complete planning graph for
a problem, it can be determined whether a
plan is possible, and the plan itself can also
be derived.
Algorithms such as GraphPlan can be used
to extract the plan.
17
GraphPlan




Problems are expressed in STRIPS
notation.
GraphPlan iteratively builds a planning
graph, starting from the initial state and
working towards the goal state.
All applicable operators are applied at
each level to produce the next level .
When the propositions necessary for the
goal are included in the current level, and
they are not mutex, a possible solution
may have been reached.
18
ADL


Another method for representing planning
problems.
ADL – Action Description Language:
 More expressive than STRIPS.
 Allows quantified expressions such as:
x.P(x) Λ ¬ Q(x)
 Preconditions can include disjunctions.
 Allows conditional effects – effects of actions
that are dependent on other factors.
19
Probabilistic Planning
Thus far we have assumed that all
actions are deterministic.
 In fact, some actions are nondeterministic – their effects can vary.
 It is possible to extend situation
calculus to deal with nondeterministic actions.

20
Dynamic World Planning



Our discussion so far has assumed the world
is static.
In fact, the world is dynamic – things outside
of the control of the planner change.
Execution monitoring is used to monitor the
execution of plans:
 If something changes during execution, replanning
may be necessary.

Another approach is conditional planning –
this includes every possible outcome in the
plan.
21
Case-Based Planning




Case-based planning involves storing each
plan that is devised.
Plans (and partial plans) can be re-used later to
solve other, similar problems.
Example: CHEF. A system that is used to
devise recipes for Chinese food given a set of
ingredients.
If presented with a set of ingredients it has not
seen before, it is able to use similar sets of
ingredients it has seen before to devise a new
recipe.
22
Scheduling




Scheduling is like planning, but also takes
into account the length of time each action
takes to execute.
Job-shop scheduling involves allocating
machinery to a set of tasks.
The scheduler plans when each task will
start, and how long it will take.
Scheduling can be treated as planning with
constraints, where the constraints specify
how long tasks will take.
23
Download