Local Search Techniques for Temporal Planning in LPG Paper by Gerevini, Serina, Saetti, Spinoni...

Post on 22-Dec-2015

213 views 0 download

Tags:

transcript

Local Search Techniques for Temporal Planning in LPG

Paper by Gerevini, Serina, Saetti, Spinoni

Presented by Alex

Overview of Problem

• What problem are they solving?– Temporal planning (duh)– More specifically? What kinds of action

restrictions?

Overview of Techniques

• In general, what techniques do they use?– Local search, variation of Walksat– Mix of Graphplan and POP– Complicated heuristics

Outline

• Search Space

• Local search and heuristics– Search operators– Various cost metrics

• Experiments

Search Space

• What is an A-graph?

• Noop propagation– What is it?– Why is it important?

LA-graphs

• Same thing, except …– One non-noop per layer

And TA-graphs

• What is a TA-graph?– Triple (LA-graph, Time-assign’t, Ordering Cs)

• What do the time assignments represent?– Earliest time a fact can become true– Earliest time an action can finish executing

Example TA-Graph

How does it fit into Graphplan?

• Only permanent action mutexes – meaning?

• What good are action mutexes in an LA-graph?

• How much of Graphplan is left?

POP & LPG

• POP• Threats

– Promotion

– Demotion

• Causal Link• Least Commitment

• LPG• Mutexes

– LA-graph ordering

• Action-Effect edge• Topological Sort (as

opposed to total order of LA-graph)

Solution State

• What constraints does a TA-graph have to obey to be a solution?– Logical constraints (are goals and action

preconditions satisfied)– Temporal/Ordering constraints

• Time assign’ts consistent with orderings

• Ordering constraints imply mutex actions don’t co-occur

Local Search: Operators

• Every search operator fixes an “inconsistency” in the partial plan– What kinds of inconsistencies are there?

• How do you fix inconsistencies?

TA-graph, again

TA-graph with added node

Local Search: Walksat

• Proposition with k clauses and n variables – With probability p, pick a variable at random

from an unsatisfied clause and flip its value– With prob. 1-p, flip value of variable that

maximizes number of satisfied clauses

WalkPlan

• For a given inconsistency, if there is a move that increases plan quality, do it.

• Otherwise, – with probability p, pick a move at random– With probability 1-p, pick best move

• Do random restarts after too many moves

Questions about WalkPlan

• How do they pick the inconsistency to fix?

• Why do they change the Walksat algorithm?

• Where do they start search after a random restart?

Heuristics

E(a) = b * Execution_Cost(a) +

c * Temporal_Cost(a) +

d * Search_Cost(a)

Relaxed Plan

• When adding (or removing) action a, find relaxed plan for unsupported preconditions of a (or the preconditions that used to be supported by a, if removing a).

• In what way(s) is it relaxed?

Experiments

• Impressive, no?

• Are there any criticisms? caveats?– Is it fair to compare separately along the time

and quality axes? I.e., is a quickly-generated but very crappy plan better than a more slowly-generated but decent plan?

Comments

Too much low-level detail (code)

Why the spikes in the graphs?

Future Work

Gplan, TabuPlan, …

Add learning, or dynamically change heuristics

More expressive temporal action language

Handle Universally Quantified Effects