Title: Temporal Graphplan
1Temporal Graphplan
- Smith Weld
- Presentation by Jafar Muhammadi
- Muhammadi _at_ ce.sharif.edu
2Outline
- Standard Graphplan
- Action Models in Time Reasoning
- From SGP to TGP
- TGP Graph Expansion
- TGP Solution Extraction
- Experiments
3Graphplan
Expand plan graph Derive mutex relationships If
goals are present consistent search for a
solution
4Observation 1
p q r
p q q r
p q q r r
p q q r r
A
A
A
B
B
Propositions monotonically increase (always
carried forward by no-ops)
5Observation 2
p q r
p q q r
p q q r r
p q q r r
A
A
A
B
B
Actions monotonically increase
6Observation 3
p q r
p q r
p q r
A
Proposition mutex relationships monotonically
decrease
7Observation 4
A
A
A
p q r s
p q
p q r s
p q r s
B
B
B
C
C
C
Action mutex relationships monotonically decrease
8Doing Time
Actions Start time (s) Real duration
(d) Parallel Propositions must hold at
(s) Effects occur at end (sd) Preconditions hold
throughout
pre
A
eff1
cond1
eff2
9Some Notations
- Action A
- Duration of A A
- Earliest possible start time of A A
- Earliest possible end time of A A
- Start time of an execution of A A
- Completion time of an execution of A A
A A A A A A A
10An Example
Actions
Planning Graph
A0
P1
B0
Q2
C2
R5
11Generalizing of Mutex Reasoning
- Introducing action/proposition mutexes
- Distinguishing between eternal/conditional
mutexes
A B can never be executed in the same time
(emutex because of X,X ) ,then A B must
execute in series.
The Mutex between P Q should end at time 3 (
SGP mutex propagation is insufficient for
deducing this fact ).
It is impossible to have proposition P true and
have action B under execution at same time.
12More on emutexes
- Def1 Propositions P Q are emutex iff P is the
negation of Q. (e.g. X X) - Def2 Action A is emutex with Preposition P if
P is a proposition of A or P is an effect of A - Def3 Actions A B are emutex iff at least one
of the following holding - A or B delete the proposition(s) of the other
- A and B have emutex perconditions
13More on cmutexes
- Def4 Propositions P Q are cmutex when
- P is cmutex with all of the actions supporting Q
and - Q is cmutex with all of the actions supporting P.
- Example
P Q are cmutex when P is cmutex with B Q
is cmutex with A (B (B
14More on cmutexes
- Def5 Action A is cmutex with Propositions P
when - P is cmutex with any precondition of A or
- A is cmutex with all of the actions supporting P.
- Def6 Actions A B are cmutex when
- A is cmutex with any precondition of B or
- B is cmutex with any Precondition of A.
15Graph Expansion
- Keeping track of what has changed in the graph
and only examine those propositions, actions, and
mutex relationships that can be affected by the
changes.
By Def. 5
Between A effe ct of B
Those with the PP as PC
16Expansion Algorithm
Temporal planning problem Set of initial
condition List of conjunctive goals Set of ground
actions
- Expand
- Add no-ops for new props
- Add new actions (new props terminate
p-mutex) - Add new effects
- Add mutex for new actions
- t t1
- Recheck propositions for new support
- Recheck possibly terminating mutexes
- Add mutex for new props
- If all goals are present call solution
extractor - if solution extractor fails then loop
17An Example
Actions
Initial state
p
Goal
q,r
18Example
t 0
p
p
A
q
B
r
19Add Prop Mutex
t A
p
p
A
q
B
r
20Add New Actions
t A
p
p
A
q
B
r
C
21New prop mutex
t B
p
p
A
q
B
r
C
22New Support
t AC
p
p
A
q
B
r
C
23New Actions from term. mutex
t AC
p
p
A
q
B
r
C
D
24Solution extraction
Status Graph extended to time tG All goals are
present Pairwise of goals are non-mutex
- Solution extractor Data structures
- Agenda
- Queue
- which the goal must be true
- Initial for all top level goals
- Queue is sorted in decreasing temporal order
- Plan
- Si is start time of Ai
- initial empty
25Solution Extraction Algorithm
Algorithm While Agenda is not empty
do dequeue from Agenda. if ( t 0 )
( G initially true ) then fail
(backtrack) else if ( t 0 ) then suppose that
S is set of actions that each Ai has G as an
effect and ( Ai not mutex with any action in plan Add
to plan for each precondition P of A add t-A to Agenda if no such A exist then
backtrack
26Experiments
27Any Question?
28Refrence
- Temporal Planning with Mutual Exclusion Reasoning
- David E. Smith, Daniel S. Weld
- IJCAI-99
29(No Transcript)