Download A Heuristic for Hybrid Planning With Preferences Pascal Bercher

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Philosophy of artificial intelligence wikipedia , lookup

Soar (cognitive architecture) wikipedia , lookup

Intelligence explosion wikipedia , lookup

Existential risk from artificial general intelligence wikipedia , lookup

Transcript
A Heuristic for Hybrid Planning With Preferences
Pascal Bercher and Susanne Biundo
Institute of Artificial Intelligence, Ulm University, Germany
FLAIRS 2012, Twenty-Fifth International Florida Artificial Intelligence Research Society Conference
Abstract
Planning Graph Construction
We present a heuristic for hybrid planning with preferences on final states.
• It can be used for hybrid planning and for POCL planning,
• it reduces the problem of estimating the quality of a task network to the problem of
estimating the quality of a state, and
• it performs a reachability analysis based on a planning graph [2].
DomainTransformation
The planning graph can be used for a (relaxed) reachability analysis.
Given π = (P, T p, Tc, M , sinit, TNinit, g) and a task network TN = (T, ≺,CL), we construct
a (relaxed) classical planning problem π 0, s.t.:
• if TN can be refined to a solution of π, then π 0 is solvable as well, and
Example
• every solution of π 0 is a refinement of TN w.r.t. its primitive tasks.
π 0 = (P 0, T p0, s0init, g0) is given by:
• P := P ∪
0
Hybrid planning [1] fuses HTN planning [3] with POCL planning [4].
A hybrid planning problem is a tuple (P, T p, Tc, M , sinit, TNinit, g) with:
• T p0 := delete-relax(T p) ∪ encode(TN ) with
at(truck1, loc1)
...
at(truck2, loc1)
encode(l:(pre, add, del)) :=
(pre ∪ {not-l} ∪ {l 0 | l 0 ≺ l or l 0 →φ l ∈ CL, l 0:t 0 ∈ T, and t 0 ∈ T p},
at(truck3, loc1)
del
at(truck3, loc1)
del ∪ {not-l})
mutex
• s0init := sinit ∪ {not-l | ∃t ∈ T p, s.t. l:t ∈ T }
at(truck2, loc1)
d
ad
• TNinit ∈ TN is the the initial partial plan, and
drive(truck3, loc1, loc2)
...
add ∪ {l},
is the initial state,
The preferences on final states are given by weighted propositions:
The function w : Pref → R maps preferences to their weight (or value).
at(truck1, loc1)
encode(TN ) := {encode(l:t) | l:t ∈ T and t ∈ T p}, where
• M ⊆ Tc × TN is a set of decomposition methods,
• g ⊆ P is the goal description.
...
delete-relax(T p) := {(prec, add, 0)
/ | (prec, add, del) ∈ T p} and
• T p, Tc ⊆ 2P × 2P × 2P are sets of primitive and compound task schemata, resp.,
• sinit ∈ 2
...
{l, not-l}
l:t∈T,t∈T p
• P is a set of atomic, ground propositions,
P
fact layeri+1
pr
e
Hybrid Planning with Preferences (Problem Definition)
S
action layeri
fact layeri
...
• g0 := g ∪ {l | ∃t ∈ T p, s.t. l:t ∈ T }
at(truck3, loc2)
...
Definition (Task Network) A task network TN is a tuple (T, ≺,CL) with:
• T , a set ob labeled tasks l:t, l being a label symbol and t ∈ T p ∪ Tc,
Example
Let π = (P, T p, Tc, M , sinit, TNinit, g) with deliver(loc2) ∈ Tc and
d1 := drive(truck3, loc1, loc2) ∈ T p, d2 := drive(truck3, loc2, loc3) ∈ T p, and TN given by:
Heuristic Calculation
• ≺, a partial order on T , and
• CL, a set of causal links l 0 →φ l.
l1:drive(truck3, loc1, loc2)
l2:deliver(loc2)
l3:drive(truck3, loc2, loc3)
The set of all task networks is referred to by TN
The final fact layer (and its mutexes) are used to estimate the plan quality:
Let TN be the current task network, s0init the new initial state of the transformed problem,
and b a “mutex-respecting” truth assignment. Then,
Then, π 0 = (P 0, T p0, s0init, g0) with:
Hybrid Planning with Preferences (Solution Criteria, -Quality)
• P := P ∪ {l1, not-l1, l3, not-l3}
• TN is a refinement of TNinit w.r.t. decomposition and insertions,
• T p0 := delete-relax(T p) ∪
{(pre(d1) ∪ {not-l1}, add(d1) ∪ {l1}, del(d1) ∪ {not-l1})} ∪
{(pre(d2) ∪ {not-l3, l1}, add(d2) ∪ {l3}, del(d2) ∪ {not-l3})}
• TN contains no compound tasks, and
• s0init := sinit ∪ {not-l1, not-l3}
• TN has no open preconditions and no causal threats.
• g0 := g ∪ {l1, l3}
A task network TN is a solution to a hybrid planning problem if and only if:
h(TN ) = h(s0init) := max
0
The quality of a solution is q(TN) := ∑ p∈Pref with TN|=p w(p). A solution TN1 is preferred
over a solution TN2 if and only if q(TN1) ≥ q(TN2)
b
( ∑ w(p))
p∈Pref ,
b(p)=>
Example
goal facts
preference facts
without mutexes to goals
preference facts
with mutexes to goals
5
Heuristic Calculation (Overview)
Heuristic (Overview)
...
15
5
5
10
...
The heuristic value is calculated in two steps:
The heuristic consists of two steps:
1. Calculate a partially relaxed planning graph until it has converged.
1. domain transformation: transform a hybrid planning problem with a current task network into a relaxed classical planning problem with a current state
2. Use the mutex relations of the last fact layer to estimate the final plan quality based
on the reachable (preferred) facts.
Best possible quality of a task network featuring the given final fact layer is 15 + 10 = 25
2. reachability analysis based on transformed problem
References
[1] Susanne Biundo and Bernd Schattenberg. From abstract crisis to concrete relief (a preliminary report on combining state abstraction and HTN planning). In Proc. of the 6th European Conference on Planning (ECP 2001), pages 157–168, 2001.
[2] Avrim L. Blum and Merrick L. Furst. Fast planning through planning graph analysis. Artificial Intelligence, 90:281–300, 1997.
[3] Kutluhan Erol, James A. Hendler, and Dana S. Nau. UMCP: A sound and complete procedure for hierarchical task-network planning. In Proc. of the 2nd International Conference on Artificial Intelligence Planning Systems (AIPS 1994), pages 249–254. AAAI Press, 1994.
[4] David McAllester and David Rosenblitt. Systematic nonlinear planning. In Proc. of the 9th National Conference on Artificial Intelligence (AAAI 1991), pages 634–639. AAAI Press, 1991.