Upload
happy
View
26
Download
0
Embed Size (px)
DESCRIPTION
Integrating Planning, Execution, and Monitoring ( IPEM) Abrose-Ingerson and Sam Steel. IPEM Framework. Set of plan transformations which remove flaws for the current plan - PowerPoint PPT Presentation
Citation preview
11
Integrating Planning, Integrating Planning, Execution, and MonitoringExecution, and Monitoring
((IPEM) IPEM) Abrose-Ingerson and Sam SteelAbrose-Ingerson and Sam Steel
22
IPEM FrameworkIPEM Framework Set of plan transformations which Set of plan transformations which
remove flaws for the current planremove flaws for the current plan
at each point in execution try to at each point in execution try to transform the current plan into a viable transform the current plan into a viable one (e.g., one that applies in the current one (e.g., one that applies in the current situation to achieve desired goals)situation to achieve desired goals)
33
AssumptionsAssumptions
Current world description (CWD)Current world description (CWD)– can changecan change
actions can fail to achieve purported effectsactions can fail to achieve purported effects actions can have delayed effects (but told when actions can have delayed effects (but told when
actions over “time out”)actions over “time out”)
– CWD may be missing true facts (e.g., sound CWD may be missing true facts (e.g., sound but not complete)but not complete)
44
Chapman TerminologyChapman Terminology
Current plan is incomplete, partialCurrent plan is incomplete, partial– partial commitment on codesignation (assignment partial commitment on codesignation (assignment
of variables to constants)of variables to constants)– partial commitment on ordering of actions partial commitment on ordering of actions
(precedence relations may not cause total order)(precedence relations may not cause total order)– completion of a partial plan P satisfies every completion of a partial plan P satisfies every
constraint in Pconstraint in P
Partial plan P Partial plan P necessarilynecessarily satisfies S if S satisfies S if S holds in every completionholds in every completion
P P possiblypossibly satisfies S if S holds in at least one satisfies S if S holds in at least one completioncompletion
55
A Plan isA Plan is…… BEGIN actionBEGIN action
– postconditions are CWDpostconditions are CWD
END actionEND action– preconditions are desired goalspreconditions are desired goals
set of protections (ranges, causal links)set of protections (ranges, causal links)– connects postondition (supplier) with precondition connects postondition (supplier) with precondition
(user)(user) postcondition and precondition must codesignate (unify)postcondition and precondition must codesignate (unify) supplier necessarily before usersupplier necessarily before user
set of actions (suppliers and users)set of actions (suppliers and users)
66
Sample ProblemSample Problem
Begin
…clear Cclear AA on B
End
A on C
CB
A
D
t.1 t.2 t.3
77
Plan GenerationPlan Generation
Also used in modification (incremental Also used in modification (incremental modifications on a partial plan)modifications on a partial plan)– unsupported preconditionunsupported precondition– unresolved conflictunresolved conflict– unexpanded actionunexpanded action
88
Plan Modifications - ReducePlan Modifications - Reduce Unsupported precondition; action A has Unsupported precondition; action A has
precondition P with no range)precondition P with no range)(i.e., no supplier yet)(i.e., no supplier yet)
use an action S already in plan such that S use an action S already in plan such that S possiblypossibly before A and with effect E that before A and with effect E that possiblypossibly codesignates with P codesignates with P– make S necc. before Amake S necc. before A– make E necc. codes. with Pmake E necc. codes. with P
add action to plan that satisfies aboveadd action to plan that satisfies above
99
Sample PlanSample Plan
Begin
…clear Cclear AA on B
Move A from B to C
End
clear zclear xx on y
~clear zclear y~(x on y)x on z A on C
clear Cclear AA on B
~clear Cclear B~(A on B)A on C
Unsupported preconditionadd action
Unsupported preconditionuse exist. act.
1010
Unresolved Conflict - Unresolved Conflict - LinearizeLinearize
IfIf– plan has range R that protects P such thatplan has range R that protects P such that– there is an action A andthere is an action A and
A is possibly after producer of RA is possibly after producer of R A is possibly before consumer of RA is possibly before consumer of R A has an effect which asserts ~P (possibly codes with ~P)A has an effect which asserts ~P (possibly codes with ~P)
– resolve byresolve by A necessarily after consumer of R; orA necessarily after consumer of R; or A necessarily before producer of RA necessarily before producer of R
1111
Example Conflict ResolutionExample Conflict Resolution
Act1:Move D
from C to E
…clear C
act2: Move A
from B to C
Act3:Move C
from F to H
clear C
move act2 after act3
Move act2 before act1
clear Cclear AA on B
~clear Cclear B~(A on B)A on C
Protect clear C from Act1 to Act3
1212
Unexpanded Action - ExpandUnexpanded Action - Expand
A plan has an action A which is not A plan has an action A which is not primitiveprimitive– resolve by replacing action with its expansion resolve by replacing action with its expansion
(network of activities)(network of activities)
1313
Plan Monitoring & ExecutionPlan Monitoring & Execution
unsupported rangeunsupported range unexecuted actionunexecuted action timed out actiontimed out action unextended rangeunextended range redundant actionredundant action
1414
Unsupported RangeUnsupported Range
Plan has a range (causal link) R which Plan has a range (causal link) R which protects a proposition not in CWDprotects a proposition not in CWD
fixed by removing the rangefixed by removing the range– immediately creates an unsupported immediately creates an unsupported
precondition on consumer (R)precondition on consumer (R)– resolve as in plan generationresolve as in plan generation
1515
Sample PlansSample Plans
Begin
…clear Cclear AA on B
Move A from B to C
End
clear zclear xx on y
~clear zclear y~(x on y)x on z A on C
clear Cclear AA on B
~clear Cclear B~(A on B)A on C
Suppose we execute this plan but then somehow mistakenly A gets moved from B to D
1616
Sample PlansSample Plans
Begin
…clear Cclear AA on B
Move A from B to D!
End
clear zclear xx on y
~clear zclear y~(x on y)x on z A on C
clear Cclear AA on B
~clear Dclear B~(A on B) A on D
unsupported rangeremove it!
1717
Unexecuted Action: ExecuteUnexecuted Action: Execute Action A ready for execution if:Action A ready for execution if:
– A is primitive and is not ENDA is primitive and is not END– all preconditions supported and produced all preconditions supported and produced
by BEGINby BEGIN– it is immediately after an executed actionit is immediately after an executed action– it is not involved in an unresolved conflictit is not involved in an unresolved conflict– there is no “live” action B (i.e., not timed there is no “live” action B (i.e., not timed
out) before A that expects a postcondition out) before A that expects a postcondition that can clobber (threat) any of A’s that can clobber (threat) any of A’s postconditionspostconditions
1818
Executing an Action AExecuting an Action A
Make all parallel actions necessarily after Make all parallel actions necessarily after AA– what about currently executing actions?what about currently executing actions?
Calling associated procedure Calling associated procedure – (actual work)(actual work)
list postconditions as expected list postconditions as expected (monitoring)(monitoring)
recording action as executedrecording action as executed
1919
Unextended Range: ExtendUnextended Range: Extend Can remove a range R and replace it with Can remove a range R and replace it with
R’ whereR’ where R and R’ have the same consumerR and R’ have the same consumer producer of R’ is necessarily before producer of Rproducer of R’ is necessarily before producer of R R’ does not create an unresolved conflict flawR’ does not create an unresolved conflict flaw
special case when activity A executes, special case when activity A executes, achieves desired effect E, range moves achieves desired effect E, range moves from producer=A to producer=BEGINfrom producer=A to producer=BEGIN
seems like an optimizationseems like an optimization
2020
Timed Out Action: Excise ActionTimed Out Action: Excise Action
When an action is terminated and no When an action is terminated and no further effects occurfurther effects occur
presumes that such a time can be presumes that such a time can be specified and that actions can be specified and that actions can be terminatedterminated
remove action and all its ranges from planremove action and all its ranges from plan
2121
Redundant action: Excise ActionRedundant action: Excise Action
An action not producing for any range has a An action not producing for any range has a redundant action flaw and is excisedredundant action flaw and is excised
Excising a redundant action can result in Excising a redundant action can result in further action redundanciesfurther action redundancies
2222
Control: The SchedulerControl: The Scheduler
IPEM maintains an agenda of tasks IPEM maintains an agenda of tasks – each agenda item is a flaweach agenda item is a flaw– with the possible fixeswith the possible fixes
IPEM orders flawsIPEM orders flawsFlaw ordering heuristic•unsupported range•unextended range•timed-out action•unresolved conflict•unsupported precondition•unexpanded action•unexecuted action
Within Flaw Class• select the flaw with fewest options (corresponds to CSP value ordering heuristic)
2323
Example: ReplanningExample: Replanning
Begin
…clear Cclear AA on B
u.2 on t.5clear u.2clear r.1clear r.2...
Move A from B to C
Move u.2from t.5
to r.1
End
clear zclear xx on y
~clear zclear y~(x on y)x on z
x on yclear xclear z
x on z~(x on y)clear y~clear z
A on C
u.m on r.n
Initial plan
CBA
Dt.1 t.2 t.3 t.4 t.5 t.6
u.2u.1
r.1
r.2
m=2n=1
x=u.2y=t.5z=r.1
x=Ay=Bz=C
2424
Example: ReplanningExample: Replanning
Begin
…clear Cclear AA on B
u.2 on t.5clear u.2clear r.1clear r.2...
Move A from B to C
Move u.2from t.5
to r.1
End
clear zclear xx on y
~clear zclear y~(x on y)x on z
x on yclear xclear z
x on z~(x on y)clear y~clear z
A on C
u.m on r.n
CBA
D
t.1 t.2 t.3 t.4 t.5 t.6u.2u.1
r.1
r.2
Baby moves d from t.3 to r.1x=Ay=Bz=C
m=2n=1
x=u.2y=t.5z=r.1
2525
Example: ReplanningExample: Replanning
Begin
…clear Cclear AA on B
u.2 on t.5clear u.2clear r.1clear r.2...
Move1 A from B to C
Move2 u.2from t.5
to r.2
End
clear zclear xx on y
~clear zclear y~(x on y)x on z
x on yclear xclear z
x on z~(x on y)clear y~clear z
A on C
u.m on r.n
CBA
D
t.1 t.2 t.3 t.4 t.5 t.6u.2u.1
r.1
r.2
Reassign end.n=2 Move2.z=r.2 x=A
y=Bz=C
m=2n=2
x=u.2y=t.5z=r.2
2626
Example: ReplanningExample: Replanning
Begin
clear Bclear Cclear AA on BA on u.2
u.2 on t.5clear u.2clear r.1clear r.2...
Move1 A from B to C
Move2 u.2from t.5
to r.2
End
clear zclear xx on y
~clear zclear y~(x on y)x on z
x on yclear xclear z
x on z~(x on y)clear y~clear z
A on C
u.m on r.n
CBA
D
t.1 t.2 t.3 t.4 t.5 t.6u.2u.1
r.1
r.2
Baby moves A from B to u.2x=Ay=Bz=C
m=2n=2
x=u.2y=t.5z=r.2
2727
Example: ReplanningExample: Replanning
Begin
clear Bclear Cclear AA on BA on u.2
u.2 on t.5clear u.2clear r.1clear r.2...
Move1 A from B to C
Move2 u.2from t.5
to r.2
End
clear zclear xx on y
~clear zclear y~(x on y)x on z
x on yclear xclear z
x on z~(x on y)clear y~clear z
x on z
u.m on r.n
CBA
D
t.1 t.2 t.3 t.4 t.5 t.6u.2u.1
r.1
r.2
Fix lower flawx=Ay=Bz=C
m=2n=2
x=By=t.5z=r.2
2828
Example: ReplanningExample: Replanning
Begin
clear Bclear Cclear AA on BA on u.2
u.2 on t.5clear u.2clear r.1clear r.2...
Move1 A from B to C
Move2 u.2from t.5
to r.2
End
clear zclear xx on y
~clear zclear y~(x on y)x on z
x on yclear xclear z
x on z~(x on y)clear y~clear z
x on z
u.m on r.n
CBA
D
t.1 t.2 t.3 t.4 t.5 t.6u.2u.1
r.1
r.2
Fix upper flawx=Ay=u.2z=C
m=2n=2
x=By=t.5z=r.2
2929
Interleaving Planning and ExecutionInterleaving Planning and Execution
BEGINASK
GET meal
END
personlikesthing guest
likesmeal
havemeal
dinnerwith
Sandy
…
DINE
havemeal
dinnerwithguest
…
3030
Interleaving Planning and ExecutionInterleaving Planning and Execution
Begin ASK GET meal END
personlikesthing
guestlikesmeal
havemeal
dinnerwith
Sandy
…
DINE
havemeal
dinnerwithguest
…Sandylikesfondue
3131
DiscussionDiscussion
Enables replanning for “classical Enables replanning for “classical planning”planning”
atomic actions (but parallel execution)atomic actions (but parallel execution) does not enable reasoning about does not enable reasoning about
resources, metric timeresources, metric time