270 likes | 394 Views
A Structural Characterization of Temporal Dynamic Controllability. Paul Morris NASA Ames Research Center Moffett Field, CA 94035, U.S.A. [10,20]. A. B. Simple Temporal Networks (Dechter, Meiri, Pearl 1991). Special type of CSP Variables: Event times
E N D
A Structural Characterization of Temporal Dynamic Controllability Paul Morris NASA Ames Research Center Moffett Field, CA 94035, U.S.A.
[10,20] A B Simple Temporal Networks(Dechter, Meiri, Pearl 1991) • Special type of CSP • Variables: Event times • Binary Constraints: Event separations • Issue: Determine consistency The time of B is somewhere between 10 and 20 after A.
[10,20] A B Want B to occur at some time between 10 and 20 after A. Temporal Constraints in Planning:Requirements versus Contingencies Requirement Agent must somehow ensure bounds are satisfied [10,20] Contingency Nature ensures bounds are satisfied Nature chooses B A B Know B will occur at a time between 10 and 20 after A. (precise time is uncertain)
Contingencies are Observable • Before a contingent link finishes, we can observe that it has not finished yet. • After a contingent link finishes, we can observe how long it took.
[4,4] [5,5] B C B C [2,3] [1,2] [2,3] [1,2] A A D D STN with Uncertainty (STNU)(Vidal & Ghallab 1996, etc.) [4,5] B C STN with contingent link [2,3] [1,2] A D Projection2 Projection1 max min Courtesy Morris, Muscettola, & Vidal IJCAI-2001
STN/STNU Solutions • STN Problem Solution = Schedule • STNU Dynamic Controllability Problem Solution = Dynamic Strategy • mapping from projections to schedules • depends only on past • must not depend on future Courtesy Morris, Muscettola, & Vidal IJCAI-2001
A C B D Example [2,4] [0,1] [-2,+2] [2,4] Strategy: execute A and C simultaneously Courtesy Morris, Muscettola, & Vidal IJCAI-2001
A C C B D D Example [2,4] [0,1] [-2,+2] [2,4] Strategy: execute A and C simultaneously [2,4] A B tighten [0,0] [-2,+2] [2,4] Courtesy Morris, Muscettola, & Vidal IJCAI-2001
ExampleWait Tightening [0,4] A B [-2,+2] [0,4] C A B [-2,+2] tighten Wait(B;2) C C must wait for B or until 2 units after A Wait-for-event with timeout
STN/STNU Solutions • STN Problem Solution = Schedule • STNU Dynamic Controllability Problem Solution = Tightened Network Courtesy Morris, Muscettola, & Vidal IJCAI-2001
Previous & New Results STNU Dynamic Controllability Problem • Morris, Muscettola & Vidal (IJCAI01) • Tractable; pseudo-polynomial (bounded values) • Morris & Muscettola (AAAI05) • Strong-polynomial O(N^5) • This paper: • Strong-polynomial O(N^4) Courtesy Morris, Muscettola, & Vidal IJCAI-2001
[x,y] A B ApproachElement1: simplify WLOG [0,y-x] [x,x] U B A
Distance graph Paths of edges Consistent no neg cycle Neg cycle O(N) neg cycle Bellman-Ford O(N) cutoff Labeled distance graph paths of label-edges?? DC no ?? cycle ?? cycle simpler ?? ??? cutoff ApproachElement2: mimic STN ideas STN Methods STNU Methods
[0,y] A B [x,y] B A Labeled Distance Graph (aaai05) y B A -x b:0 B A B:-y Wait(B;z) B:-z C C A A
Labeled-Path Distance Add up edge weights, ignoring labels x c:y E:z B C D A Path Distance = x+y+z NOT TRUE!! Theorem???: DC iff no labeled negative cycle?? Theorem: DC iff no allowed labeled negative cycle
Allowed Paths: Moat Edges first D with BD negative b:0 A B C D moat edge for AB b:0 B:-u A B C A Unusable moat edge
Allowed Paths: Moat Edges Derived edge same path distance lower-case free b:0 A B C D Usable moat edge
Dynamic Controllability Characterization Theorem: DC if and only if no allowed negative cycle A pathis allowed if every lower-case edge has a usable moat edge in the path (These paths are semi-reducible: they can be transformed into paths without lower-case edges)
Nesting Lemma • <lower-edge…moat edge> subpaths cannot partially overlap. • The subpaths are either nested or disjoint. • Thus they lead to a parenthesization of a path. b:0 1 D:-3 d:0 3 B:-2 b:0 -2 ABDCDBABE Depth of nesting = 2
x y Negative Cycle Simplification If x+y < 0 then x < 0 or y < 0 Can eliminate repetitions in STN negative cycles BUT moat edge x y Cannot eliminateall repetitions in STNUallowed negative cycles lc edge
Negative Cycle Simplification HOWEVER: nested repetition A B A B C D E F Nested repetitions CAN be eliminated! neg cycle with depth of nesting at most O(K). (K = no. of contingent links)
Outline of DC Test Algorithm • Match up <lc-edge,moat-edge> usable pairs from the inside out; add derived edge. • Each iteration eliminates one level of nesting. • Detects allowed neg. cyc. in O(K) iterations. • Each iteration propagates forward from each contingent link. • Overall O(N^4) complexity.
DC Execution Needs • Test if network is DC (previous slides) • Regress waits as far as they will go • Bypass certain lower-case edges • lower-case edge followed by negative ordinary path • Ensures contingent edges will not be squeezed during execution.
Regression Paths: Tower Edges nearest D with DA non-negative B:-x A B C D tower edge for BA D:-3 2 b:0 B:-1 2 CDBA B E Precursor path of derived wait can be parenthesized
No Nested Repetitionsin Wait Derivations upper-case nested repetition A B A B C D E F negative Upper-case nested repetition would have to be negative Would be allowed negative cycle Cannot occur if verified DC Regression of waits can be done in O(N^4) time
DC Execution Needs • Test if network is DC (previous slides) • O(N^4) complexity • Regress waits as far as they will go • O(N^4) complexity • Bypass certain lower-case edges • lower-case edge followed by negative ordinary path • also O(N^4) complexity
Conclusions • Simplification: contingent links with zero lower bound • Dynamic Controllability Structural Characterization: DC no negative cycle of specific type • Parenthesization based on moat edges • Can eliminate nested repetitions, limit depth • Strong polynomial O(N^4) algorithm for DC • Compare: STN consistency testing is O(N^3)