…and Beyond Synthesis of Control Program Controller Program CUPPAAL UPPAAL Plant C Discrete Continuous sensors l a m Task i t p Task o Synthesis Task Task of Scheduling & actuators tasks/scheduler (automatic) Synthesis of Control Programs Model 1 2 a 1 2 w Gerd Behrman, Ed Brinksma, Ansgar Fehnker, of 3 4 Thomas Hune, Paul Pettersson, environment b c 3 4 (user-supplied) Judi Romijn, Frits Vaandrager, Henning Dierks 1 2 a 1 2 a b c 3 4 AMETIST …, HSCC’01, TACAS’01, CAV’01, AIPS’02,…. b c 3 4 Partial UPPAAL Model UC UCb b 2 Real Time Scheduling Real Time Scheduling • Only 1 “BroBizz” • Only 1 “BroBizz” • Only 1 “BroBizz” UNSAFE UNSAFE • Only 1 “BroBizz” • Cheat is possible Crossing • Cheat is possible • Cheat is possible • Cheat is possible Times (drive close to car with “BroBizz”) (drive close to car with “BroBizz”) (drive close to car with “Bizz”) (drive close to car with “Bizz”) 5 5 10 10 20 20 25 25 SAFE Give it a try on next lap-top � ! OR use UPPAAL CAN THEY MAKE IT TO SAFE The Car & Bridge Problem WITHIN 70 MINUTES ??? UC UCb b UC UCb b 3 4 Real Time Scheduling Rush Hour UNSAFE Solve Solve 5 Scheduling Problem Scheduling Problem Your CAR using UPPAAL using UPPAAL 10 SAFE 20 ObJECTIVE: ObJECTIVE: Get your Get your 25 CAR out CAR out EXIT UC UCb b UCb UC b 5 6 1
Steel Production Plant Steel Production Plant Crane A Crane A � A. Fehnker Machine 2 Machine 3 Input: sequence of steel Machine 2 Machine 3 Machine 1 Machine 1 � Hune, Larsen, Pettersson loads (“pigs”). � Case study of Esprit-LTR Lane 1 Lane 1 Machine 4 Machine 5 Machine 4 Machine 5 project 26270 VHS � Physical plant of SIDMAR Lane 2 Lane 2 Load follows Recipe to located in Gent, Belgium. become certain quality, � Part between blast furnace and Buffer Buffer Crane B Crane B e.g: hot rolling mill . Storage Place start; T1 @10; T2 @20; Storage Place Objective: model the plant, obtain T3 @10; T2 @10; Continuos Continuos Output: sequence schedule and control program for Casting Machine Casting Machine end within 120. of higher quality plant. steel. UCb UC b UCb UC b 7 8 Steel Production Plant Steel Production Plant Crane A Crane A Input: sequence of steel Machine 2 Machine 3 Input: sequence of steel Machine 2 Machine 3 Machine 1 Machine 1 @10 @10 loads (“pigs”). loads (“pigs”). @20 2 @10 @20 2 @10 2 2 2 2 Lane 1 Lane 1 Machine 4 Machine 5 Machine 4 Machine 5 15 5 @10 @10 Lane 2 Lane 2 Load follows Recipe to Load follows Recipe to 16 6 become certain quality, obtain certain quality, Buffer Buffer Crane B Crane B e.g: e.g: start; T1 @10; T2 @20; ∑ =107 Storage Place start; T1 @10; T2 @20; ∑ =127 Storage Place T3 @10; T2 @10; T3 @10; T2 @10; @40 @40 Continuos Continuos Output: sequence Output: sequence end within 120. Casting Machine end within 120. Casting Machine of higher quality of higher quality steel. steel. UCb UC b UC UCb b 9 10 Experiment A l l G u i d e s S o m e G u i d e s N o G u i d e s n B F S D F S B S H B F S D F S B S H B F S D F S B S H s M B s M B s M B s M B s M B s M B s M B s M B s M B 1 0,1 0,9 0,1 0,9 0,1 0,9 0,1 0,9 0,1 0,9 0,1 0,9 3,2 6,1 0,8 2,2 3.9 3.3 2 18,4 36,4 0,1 1 0,1 1,1 - - 4,4 7,8 7,8 1,2 - - 19,5 36,1 - - 3 - - 3,2 6,5 3,4 1,4 - - 72,4 92,1 901 3,4 - - - - - - 4 - - 4 8,2 4,6 1,8 - - - - - - - - - - - - 5 - - 5 10,2 5,5 2,2 - - - - - - - - - - - - 10 - - 13,3 25,3 16,1 9,3 - - - - - - - - - - - - A single load A single load Crane B Crane B 15 - - 31,6 51,2 48,1 22,2 - - - - - - - - - - - - (part of) (part of) 20 - - 61,8 89,6 332 46,1 - - - - - - - - - - - - 25 - - 104 144 87,2 83,3 - - - - - - - - - - - - 30 - - 166 216 124,2 136 - - - - - - - - - - - - 35 209 250 - - - - - - - - - - - - - - • BFS = breadth-first search, DFS = depth-first search, BSH = bit-state hashing, • “-” = requires >2h (on 450MHz Pentium III), >256 MB, or suitable hash-table size was not found. • System size : 2n+5 automata and 3n+3 clocks, if n=35: 75 automata and 108 clocks. • Schedule generated for n=60 on Sun Ultra with 2x300MHz with 1024MB in 2257s . UCb UC b UCb UC b 11 12 2
LEGO Plant Model LEGO Plant Model crane a m1 m2 m3 � LEGO RCX Mindstorms. � Local controllers m4 m5 with control programs. crane b � IR protocol for buffer remote invocation of storage programs. central � Central controller casting controller. Belt/Machine Unit. Synthesis UCb UC b UC UCb b 13 14 Linearly Priced Timed Automata: Linearly Priced Timed Automata: Optimal Scheduling Optimal Scheduling cost’=1 cost’=2 cost’=1 cost’=2 cost’=0 cost’=0 x<3 x<3 x<3 x<3 cost+=4 cost+=4 y>2, x<2 y>2, x<2 c c a a {x:=0} b {x:=0} b � Timed Automata + Costs on transitions and locations. � Timed Automata + Costs on transitions and locations. � Cost of performing transition: Transition cost . � Cost of performing transition: : Transition cost . m l e : o b m P r b l e c o n P r i o c c a t n l o t i o g c a h i n l o � Cost of performing delay d : ( d x Location cost ). � Cost of performing delay d : ( d x Location cost ). a c n g e h i f r a c o r e o s t o f c t m o s m u c n i u m m i m e n i h m i d t e i n t h F d F i n • Trace: • Trace: ε (2.5) ε (2.5) ( a ,x=y=0) ( b ,x=y=0) ( b ,x=y=2.5) ( a ,x=0,y=2.5) ( a ,x=y=0) ( b ,x=y=0) ( b ,x=y=2.5) ( a ,x=0,y=2.5) 4 2.5 x 2 0 4 2.5 x 2 0 • Cost of Execution Trace: Sum of costs: 4 + 5 + 0 = 9 • Cost of Execution Trace: Sum of costs: 4 + 5 + 0 = 9 UCb UC b UC UCb b 15 16 Experiments EXAMPLE : Optimal rescue plan for important persons MC Order (Presidents and Actors) COST-rates UNSAFE SCHEDULE COST TIME #Expl #Pop’d G 5 C 10 B 20 D 25 SAFE GORE CLINTON Mines 1762 Min Time CG> G< BD> C< CG> 60 2638 9 2 1538 1 1 1 1 CG> G< BG> G< GD> 55 65 252 378 5 10 25 20 9 2 3 10 195 65 149 233 GD> G< CG> G< BG> BUSH DIAZ 1 2 3 4 CG> G< BD> C< CG> 140 60 232 350 3 10 1 2 3 10 CD> C< CB> C< CG> 170 65 263 408 975 85 1 20 30 40 BD> B< CB> C< CG> - - 1085 time<85 0 0 0 0 0 - 406 447 - OPTIMAL PLAN HAS ACCUMULATED COST=195 and TOTAL TIME=65! UC UCb b UCb UC b 17 18 3
Experiments B-&-B algorithm running for 60 sec. Jobshop Scheduling [TACAS’2001] j=10 Sport Economy Local News Comic Stip Kim 2 . 5 min 4 . 1 min 3 . 3 min 1 . 10 min m=5 j=15 Jüri 1. 10 min 2 . 20 min 3 . 1 min 4 . 1 min j=20 Jan 4 . 1 min 1 . 13 min 3 . 11 min 2 . 11 min j=10 Wang 1 . 1 min 2 . 1 min 3 . 1 min 4 . 1 min m=10 NP-hard j=15 Problem: compute the minimal MAKESPAN Simulated annealing Lawrence Job Shop Problems Lawrence Job Shop Problems Shiffted bottleneck Branch-and-Bound UC UCb b UCb UC b Gentic Algorithms 19 20 Example: Aircraft Landing Example: Aircraft Landing x <= 5 cost x >= 4 x=5 d + l *(t-T) E earliest landing time 4 earliest landing time T target time 5 target time land! cost+=2 e *(T-t) L latest time 9 latest time x <= 5 x <= 9 e cost rate for being early cost’=3 3 cost rate for being early cost’=1 l cost rate for being late 1 cost rate for being late x=5 d fixed cost for being late 2 fixed cost for being late land! t E T L Planes have to keep separation Planes have to keep separation distance to avoid turbulences distance to avoid turbulences caused by preceding planes caused by preceding planes UCb UC b UCb UC b Runway Runway 21 22 Aircraft Landing Source of examples: Baesley et al’2000 Symbolic Semantics UC UCb b 23 4
Zones Priced Zone y Z 2 -1 ∆ 4 x y Operations Z x = − + Cost ( x , y ) 2 y x 2 UCb UC b UC UCb b 25 26 Reset Reset Z Z y y 2 2 2 2 -1 -1 ∆ 4 ∆ 4 y:=0 y:=0 x x {y} Z UCb UC b UCb UC b 27 28 Reset Reset Z Z y y 2 2 2 2 -1 -1 ∆ 4 ∆ 4 y:=0 y:=0 -1 1 x x 6 {y} Z 6 4 {y} Z A split of {y} Z UCb UC b UCb UC b 29 30 5
Facets The solution UC UCb b UC UCb b 31 32 ↑ Delay Delay Z y y Z Z 3 3 -1 -1 ∆ 4 ∆ 4 x x UCb UC b UCb UC b 33 34 ↑ ↑ Z Z Delay Delay 3 3 3 4 -1 y y 0 Z Z 3 ↑ A split of Z 2 3 3 -1 -1 ∆ 4 ∆ 4 x x UC UCb b UCb UC b 35 36 6
Facets The solution UC UCb b UC UCb b 37 38 Branch & Bound Algorithm Branch & Bound Algorithm UC UCb b UC UCb b 39 40 Branch & Bound Algorithm Branch & Bound Algorithm R ≤ ' R R’ is bigger & R’ is bigger & cheaper than R cheaper than R ≤ ≤ is a well-quasi is a well-quasi ordering which ordering which guarantees guarantees termination! termination! UCb UC b UCb UC b 41 42 7
Recommend
More recommend