360 likes | 809 Views
Tools and Application of Timed Automata UPPAAL & Optimal Scheduling. Kim G. Larsen kgl@cs.auc.dk. C UPPAAL Thomas Hune Jakob I Rasmussen Ansgar Fehnker Judi Romijn Frits Vaandrager Ed Brinksma Patricia Bouyer CASE STUDIES Thomas Hune Gerd Behrmann Arne Skou Anders Brødløs.
E N D
Tools and Application of Timed AutomataUPPAAL & Optimal Scheduling Kim G. Larsen kgl@cs.auc.dk
CUPPAAL Thomas Hune Jakob I Rasmussen Ansgar Fehnker Judi Romijn Frits Vaandrager Ed Brinksma Patricia Bouyer CASE STUDIES Thomas Hune Gerd Behrmann Arne Skou Anders Brødløs Contributors UPPAAL Gerd Behrmann Wang Yi Paul Pettersson Johan Bengtsson Fredrik Larsson Alexandre David Leonid Mokrushin Brian Nielsen
CUPPAAL & KRONOS www.uppaal.com
CUPPAAL Priced CUPPAAL www.uppaal.com
Scheduling Problem • Scheduling/Planning Domain = • A number of objects • instances of different object types • individual states global state • A number of actions on objects • required precondition on objects (= state condition) • resulting effect (= state transformation) • duration / cost (= time / energy / money / ..) • Problem: • compute an (optimal) plan/schedule that “solves” the problem.
RushHour Your CAR OBJECTIVE: Get your CAR out EXIT
Jobshop Scheduling [TACAS’2001] • NP-hard • Simulated annealing • Shiffted bottleneck • Branch-and-Bound • Gentic Algorithms Problem: compute the minimalMAKESPAN
Experiments B-&-B algorithm running for 60 sec. j=10 m=5 j=15 j=20 j=10 m=10 j=15 Lawrence Job Shop Problems
Task Graph SchedulingOptimal Static Task Scheduling • Task P={P1,.., Pm} • Machines M={M1,..,Mn} • DurationD : (P£M) !N1 • < : p.o. on P (pred.) • A task can be executed only if all predecessors have completed • Each machine can process at most one task at a time • Task cannot be preempted. P2 P1 2,3 16,10 P6 6,6 P3 10,16 P4 2,3 P7 P5 2,2 8,2 M = {M1,M2}
Task Graph SchedulingOptimal Static Task Scheduling • Task P={P1,.., Pm} • Machines M={M1,..,Mn} • DurationD : (P£M) !N1 • < : p.o. on P (pred.) P2 P1 2,3 16,10 P6 6,6 P3 10,16 P4 2,3 P7 P5 2,2 8,2 M = {M1,M2}
Experimental Results Abdeddaïm, Kerbaa, Maler
Task Graph SchedulingPower-Optimal Static Task Scheduling • Task P={P1,.., Pm} • Machines M={M1,..,Mn} • DurationD : (P£M) !N1 • < : p.o. on P (pred.) • Energy: C : M !N P2 P1 2,3 16,10 0 P6 6,6 P3 10,16 P4 2,3 4 P7 P5 2,2 8,2 C(M1)=4; C(M2)=3
Priced Timed AutomataOptimalScheduling Timed Automata + Costs on transitions and locations. Cost of performing transition: Transition cost. Cost of performing delay d: ( d x Location cost). • Trace: (2.5) (a,x=y=0) (b,x=y=0) (b,x=y=2.5) (a,x=0,y=2.5) 4 2.5x 2 0 • Cost of Execution Trace: Sum of costs: 4 + 5 + 0 = 9 Behrmann, Fehnker, et all (HSCC’01) Alur, Torre, Pappas (HSCC’01) cost’=1 cost’=2 cost’=0 x<3 x<3 cost+=4 y>2, x<2 c a x:=0 b Problem : Find the minimum cost of reaching location c
Example: Aircraft Landing cost E earliest landing time T target time L latest time ecost rate for being early l cost rate for being late dfixed cost for being late d+l*(t-T) e*(T-t) t E T L Planes have to keep separation distance to avoid turbulences caused by preceding planes Runway
Example: Aircraft Landing x <= 5 x >= 4 x=5 4 earliest landing time 5 target time 9 latest time 3cost rate for being early 1 cost rate for being late 2fixed cost for being late land! cost+=2 x <= 5 x <= 9 cost’=3 cost’=1 x=5 land! Planes have to keep separation distance to avoid turbulences caused by preceding planes Runway
Zones y Operations Z x
Priced Zone CAV’01 y Z 2 -1 4 x
Symbolic B&B Algorithm CAV’01
Symbolic B&B Algorithm CAV’01 Linear Programming Problems
Aircraft Landing CAV’01 Source of examples: Baesley et al’2000
Aircraft LandingUsing MCF/Netsimplex J.I. Rasmussen et al similar for Priced Task Graph
Case-Studies: Controllers • Gearbox Controller [TACAS’98] • Bang & Olufsen Power Controller [RTPS’99,FTRTFT’2k] • SIDMAR Steel Production Plant [RTCSA’99, DSVV’2k] • Real-Time RCX Control-Programs [ECRTS’2k] • Experimental Batch Plant (2000) • RCX Production Cell (2000) • Terma, Memory Management for Radar (2002) • Analog Devices, Dynamic Voltage Scaling Strategies(2003)
Case Studies: Protocols • Philips Audio Protocol [HS’95, CAV’95, RTSS’95, CAV’96] • Collision-Avoidance Protocol [SPIN’95] • Bounded Retransmission Protocol [TACAS’97] • Bang & Olufsen Audio/Video Protocol [RTSS’97] • TDMA Protocol [PRFTS’97] • Lip-Synchronization Protocol [FMICS’97] • Multimedia Streams [DSVIS’98] • ATM ABR Protocol [CAV’99] • ABB Fieldbus Protocol [ECRTS’2k] • IEEE 1394 Firewire Root Contention (2000) • Leader Election Algorithm in Ad-Hoc Network[posed by Leslie Lamport 2003]
Conclusion www.uppaal.com
Steel Production Plant Crane A • A. Fehnker • Hune, Larsen, Pettersson • Case study of Esprit-LTRproject 26270 VHS • Physical plant of SIDMARlocated in Gent, Belgium. • Part between blast furnace and hot rolling mill. Objective:model the plant, obtain schedule and control program for plant. Machine 2 Machine 3 Machine 1 Lane 1 Machine 4 Machine 5 Lane 2 Buffer Crane B Storage Place Continuos Casting Machine
Steel Production Plant Crane A Input: sequence of steel loads (“pigs”). Machine 2 Machine 3 Machine 1 Lane 1 Machine 4 Machine 5 Lane 2 Load follows Recipe to become certain quality, e.g: start; T1@10; T2@20; T3@10; T2@10; end within 120. Buffer Crane B Storage Place Continuos Casting Machine Output: sequence of higher quality steel.
Steel Production Plant Crane A Input: sequence of steel loads (“pigs”). Machine 2 Machine 3 Machine 1 @10 @20 2 @10 2 2 Lane 1 Machine 4 Machine 5 5 @10 Lane 2 Load follows Recipe to become certain quality, e.g: start; T1@10; T2@20; T3@10; T2@10; end within 120. 6 Buffer Crane B Storage Place =107 @40 Continuos Casting Machine Output: sequence of higher quality steel.
Steel Production Plant Crane A Input: sequence of steel loads (“pigs”). Machine 2 Machine 3 Machine 1 @10 @20 2 @10 2 2 Lane 1 Machine 4 Machine 5 15 @10 Lane 2 Load follows Recipe to obtain certain quality, e.g: start; T1@10; T2@20; T3@10; T2@10; end within 120. 16 Buffer Crane B Storage Place =127 @40 Continuos Casting Machine Output: sequence of higher quality steel.
A single load (part of) Crane B
Experiment • 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 .
LEGO Plant Model LEGO RCX Mindstorms. Local controllers with control programs. IR protocol for remote invocation of programs. Central controller. crane a m1 m2 m3 m4 m5 crane b buffer storage central controller casting Synthesis
LEGO Plant Model Belt/Machine Unit.