TI GA TI GA TI GA Real Tim e Controller Synthesis with Gerd Behrmann, Franck Cassez, Agnes Counard, Alexandre David Emmanuel Fleury, Didier Lime
See CAV 2007 & CONCUR 2005 UCb UC Informationsteknologi
Real Tim e Model Checking Plant Controller Program Informationsteknologi Continuous Discrete sensors Model actuators of tasks (automatic?) 1 2 Model a 1 2 of 3 4 environment b c 3 4 (user-supplied / 1 2 a non-determinism) SAT φ ?? 1 2 SAT φ ?? a 3 4 b c b c 3 4 UPPAAL Model UC UCb
Real Tim e Scheduling & Control Synthesis Plant Controller Program Informationsteknologi Continuous Discrete sensors ?? Synthesis of actuators tasks/scheduler (automatic) 1 2 Model a 1 2 of 3 4 environment b c 3 4 (user-supplied) 1 2 a SAT φ !! 1 2 SAT φ !! a 3 4 b c b c 3 4 Partial UPPAAL Model UC UCb
Controller Synthesis and Timed Games Production Cell GIVEN System moves S , GIVEN System moves S , Controller moves C , and property φ Controller moves C , and property φ FIND strategy s C such that s C || S ² φ FIND strategy s C such that s C || S ² φ � � A Two-Player Game A Two-Player Game
Dynamic Scheduling = Controller Synthesis Section Reading time is uncontrollable
Untimed and Timed Games Reachability / Safety Games x>1 x<1 1 � x · 1 x ≥ 2 2 ☺ x<1 x:=0 3 x · 1 4 Uncontrollable Controllable
Untimed Games Reachability / Safety Games Strategy: F : Run(A) � E c Memoryless strategy: F : Q � E c Winning Run: States( ρ ) ∩ G ≠ Ø States( ρ ) ∩ G = Ø Winning Strategy: Runs(F) ⊆ WinRuns Uncontrollable Controllable
Untimed Games Reachability / Safety Games Strategy: F : Run(A) � E c Memoryless strategy: F : Q � E c Winning Run: States( ρ ) ∩ G ≠ Ø States( ρ ) ∩ G = Ø Winning Strategy: Runs(F) ⊆ WinRuns Uncontrollable Controllable
Untimed Games Reachability / Safety Games Strategy: F : Run(A) � E c Memoryless strategy: F : Q � E c Winning Run: States( ρ ) ∩ G ≠ Ø States( ρ ) ∩ B = Ø Winning Strategy: Runs(F) ⊆ WinRuns Loosing (memoryless) strategy Uncontrollable Controllable
Untimed Games Reachability / Safety Games Strategy: F : Run(A) � E c Memoryless strategy: F : Q � E c Winning Run: States( ρ ) ∩ G ≠ Ø States( ρ ) ∩ B = Ø Winning Strategy: Runs(F) ⊆ WinRuns Winning (memoryless) strategy) Uncontrollable Controllable
Untimed Games Backwards Fixed-Point Computation cPred(X) = { q ∈ Q | ∃ q’ ∈ X. q � c q’} uPred(X) = { q ∈ Q | ∃ q’ ∈ X. q � u q’} π (X) = cPred(X) \ uPred(X C ) ] Theorem: The set of winning states is obtained as the least fixpoint of the function: X a π (X) ∪ Goal Uncontrollable Controllable
Untimed Games Backwards Fixed-Point Computation cPred(X) = { q ∈ Q | ∃ q’ ∈ X. q � c q’} uPred(X) = { q ∈ Q | ∃ q’ ∈ X. q � u q’} π (X) = cPred(X) \ uPred(X C ) ] Theorem: The set of winning states is obtained as the least fixpoint of the function: X a π (X) ∪ Goal Uncontrollable Controllable
Untimed Games Backwards Fixed-Point Computation cPred(X) = { q ∈ Q | ∃ q’ ∈ X. q � c q’} uPred(X) = { q ∈ Q | ∃ q’ ∈ X. q � u q’} π (X) = cPred(X) \ uPred(X C ) ] Theorem: The set of winning states is obtained as the least fixpoint of the function: X a π (X) ∪ Goal Uncontrollable Controllable
Untimed Games Backwards Fixed-Point Computation cPred(X) = { q ∈ Q | ∃ q’ ∈ X. q � c q’} uPred(X) = { q ∈ Q | ∃ q’ ∈ X. q � u q’} π (X) = cPred(X) \ uPred(X C ) ] Theorem: The set of winning states is obtained as the least fixpoint of the function: X a π (X) ∪ Goal Uncontrollable Controllable
Untimed Games Backwards Fixed-Point Computation cPred(X) = { q ∈ Q | ∃ q’ ∈ X. q � c q’} uPred(X) = { q ∈ Q | ∃ q’ ∈ X. q � u q’} π (X) = cPred(X) \ uPred(X C ) ] Theorem: The set of winning states is obtained as the least fixpoint of the function: X a π (X) ∪ Goal Uncontrollable Controllable
Untimed Games Backwards Fixed-Point Computation cPred(X) = { q ∈ Q | ∃ q’ ∈ X. q � c q’} uPred(X) = { q ∈ Q | ∃ q’ ∈ X. q � u q’} π (X) = cPred(X) \ uPred(X C ) ] Theorem: The set of winning states is obtained as the least fixpoint of the function: X a π (X) ∪ Goal Uncontrollable Controllable
Timed Games Reachability / Safety Games Strategy: F : Run(A) � E c ∪ λ x>1 x<1 Memoryless strategy: 1 � F : Q � E c ∪ λ x · 1 x ≥ 2 Winning Run: 2 ☺ States( ρ ) ∩ G ≠ Ø x<1 States( ρ ) ∩ G = Ø x:=0 3 Winning Strategy: x · 1 Runs(F) ⊆ WinRuns 4 Uncontrollable Controllable
Timed Games Reachability / Safety Games x != 1 : λ Strategy: x=1 : c F : Run(A) � E c ∪ λ x>1 x<1 Memoryless strategy: 1 � F : Q � E c ∪ λ x · 1 x ≥ 2 x<2 : λ Winning Run: 2 ☺ x ≥ 2 : c States( ρ ) ∩ G ≠ Ø x<1 States( ρ ) ∩ G = Ø x:=0 3 Winning Strategy: x · 1 x<1 : λ Runs(F) ⊆ WinRuns x ≥ 1 : c 4 x != 1 : λ Winning (memoryless) strategy) x=1 : c Uncontrollable Controllable
Timed Games – State-of-the-Art UPPAAL UPPAAL � Timed Automata + Reachability [AD94] � Time Game Automata: Control [MPS95, AMPS98] � Time Optimal Control (reachability) [AM99] To be � “False” On-the-fly Algorithm [AT01] To be improved improved !! !! � Priced Timed Automata (reachability) [LBB+01, ALTP01, LRS04, RL05] � Price Timed Automata (safety) [BBL04] UPPAAL UPPAAL � Price Optimal Control (reachability): Cora Cora � Acyclic PTA [LTMM02] � Bounded length [ABM04] � Strong non-zeno cost-behaviour [BCFL04] � More to come !!
Timed Games – State-of-the-Art Backwards Fixed-Point Computation Definitions cPred(X) = { q ∈ Q | ∃ q’ ∈ X. q � c q’} uPred(X) = { q ∈ Q | ∃ q’ ∈ X. q � u q’} = { q ∈ Q | ∃ t. q t ∈ X and ∀ s · t. q s ∈ Y C } Pred t (X,Y) X π (X) = Pred t [ X ∪ cPred(X) , uPred(X C ) ] Pred t (X,Y) Y Theorem: The set of winning states is obtained as the least fixpoint of the function: X a π (X) ∪ Goal
Timed Games – State-of-the-Art Backwards Fixed-Point Computation x>1 x<1 1 � x · 1 x ≥ 2 2 ☺ x<1 x:=0 3 x · 1 4 0 1 2
Timed Games – State-of-the-Art Backwards Fixed-Point Computation x>1 x<1 1 � x · 1 x ≥ 2 2 ☺ x<1 x:=0 3 x · 1 4 0 1 2
Timed Games – State-of-the-Art Backwards Fixed-Point Computation x>1 x<1 1 � x · 1 x ≥ 2 2 ☺ x<1 x:=0 3 x · 1 4 0 1 2
Timed Games – State-of-the-Art Backwards Fixed-Point Computation x>1 x<1 1 � x · 1 x ≥ 2 2 ☺ x<1 x:=0 3 x · 1 4 0 1 2
Timed Games – State-of-the-Art Backwards Fixed-Point Computation x>1 x<1 1 � x · 1 x ≥ 2 2 ☺ x<1 x:=0 3 x · 1 4 0 1 2
Timed Games – State-of-the-Art Backwards Fixed-Point Computation x>1 x<1 1 � x · 1 x ≥ 2 2 ☺ x<1 x:=0 3 x · 1 4 0 1 2
Timed Games – State-of-the-Art Backwards Fixed-Point Computation x>1 x<1 1 � x · 1 x ≥ 2 2 ☺ x<1 x:=0 3 x · 1 4 0 1 2
Timed Games – State-of-the-Art Backwards Fixed-Point Computation x>1 x<1 1 � x · 1 x ≥ 2 2 ☺ x<1 x:=0 3 x · 1 4 0 1 2 We want Forward and On-The-Fly Algorithm in order to avoid constructing all (backwards) reachable state-space and to allow for discrete variables (e.g. in UPPAAL)
On-the-fly Algorithms for Timed Games S Win(S)
On-the-fly Algorithms for Timed Games a g i T L A A P P U s e m = a g d e m i t r o f m h t i r o g l a y l f [CONCUR’05] - e h t - n O S Win(S)
UPPAAL Tiga : New Concrete Time Simulator CAV 2007 CAV 2007
UPPAAL Tiga : CTL Control Objectives � Reachability properties: � . � control: A[ p U q ] until � control: A<> q ⇔ control: A[ true U q ] � Safety properties: � control: A[ p W q ] weak until � control: A[] p ⇔ control: A[ p W false ] � Time-optimality : � control_t*(u,g): A[ p U q ] � u is an upper-bound to prune the search, act like an invariant but on the path = expression on the current state. � g is the time to the goal from the current state (a lower-bound in fact), also used to prune the search. States with t+g > u are pruned
Dynamic Scheduling = Controller Synthesis Section Reading time is uncontrollable
A Buggy Brick Sorting Program U C b First UPPAAL model Ken Tindell Sorting of Lego Boxes So ng of Lego Boxes eject Piston Boxes eject remove Conveyer Belt 99 Conveyer Belt 81 18 90 9 Black Blck Yel Controller Yellow MAI N PUSH Exercise: Design Controller so that only yellew boxes are being pushed out MCD 2001, Twente Kim G. Larsen 16
Brick Sorting Generic Plate Piston Controller
Generic Plate Piston Brick Sorting Strategy for EJECT Controller
UC UC The Chinese Juggling Problem b thanks to Oded Maler Problem: avoid having the plates falling down AMETIST Dortmund Dec 2002 Kim G. Larsen Ed Brinksma 38
UC UC The Chinese Juggling Problem b thanks to Oded Maler Problem: avoid having the plates falling down AMETIST Dortmund Dec 2002 Kim G. Larsen Ed Brinksma 39
Recommend
More recommend