MODELING OF MODELING OF HYBRID SYSTEMS HYBRID SYSTEMS C. G. Cassandras C. G. Cassandras Dept. of Manufacturing Engineering and Center for Information and Systems Engineering (CISE) Boston University cgc@bu.edu http://vita.bu.edu/cgc CODES Lab. - Boston University Christos G. Cassandras
OUTLINE � TIME-DRIVEN vs EVENT-DRIVEN SYSTEMS � DES : Automata, Petri Nets, Max-Plus Algebra � DISCRETE EVENT SIMULATION → HYBRID SYSTEM SIMULATION � HYBRID SYSTEMS : Hybrid Automata, MLD Systems � MODELS FOR SWITCH TIMING CONTROL Christos G. Cassandras CODES Lab. - Boston University
LESS COMPLEX MORE COMPLEX TIME-DRIVEN SYSTEM HYBRID SYSTEM EVENT-DRIVEN SYSTEM Christos G. Cassandras CODES Lab. - Boston University
TIME-DRIVEN vs EVENT-DRIVEN SYSTEMS STATES STATE SPACE: TIME -DRIVEN x ( t ) X = ℜ SYSTEM DYNAMICS: ( ) = x f x t , & t TIME STATES STATE SPACE: { } EVENT -DRIVEN = X s s s s , , , s 4 1 2 3 4 SYSTEM s 3 x ( t ) s 2 DYNAMICS: ( ) ' = x f x , e s 1 t TIME t 1 t 2 t 3 t 4 t 5 EVENTS e 1 e 2 e 3 e 4 e 5 Christos G. Cassandras CODES Lab. - Boston University
AUTOMATA AUTOMATON : ( E , X , Γ , f , x 0 ) Ε : Event Set X : State Space Γ ( x ) : Set of feasible or enabled events at state x × → f : State Transition Function f : X E X ( ) (undefined for events ) ∉ Γ e x 0 ∈ x X x 0 : Initial State, { } { } e e , , K x , x , K 1 2 1 2 ( ) = f x e , x ' Christos G. Cassandras CODES Lab. - Boston University
TIMED AUTOMATON Add a Clock Structure V to the automaton: ( E , X , Γ , f , x 0 , V ) where: { } = ∈ V v : i E i { } = and v i is a Clock or Lifetime sequence : v v , v , K i i 1 i 2 one for each event i { } v 1 x , x , K 1 2 ( ) = … f x e , ' x ' v N NEXT EVENT Need an internal mechanism to determine Need an internal mechanism to determine NEXT EVENT e´ and hence NEXT EVENT e´ and hence ( ) = x ' f x e , ' NEXT STATE NEXT STATE CODES Lab. - Boston University Christos G. Cassandras
HOW THE TIMED AUTOMATON WORKS... � CURRENT STATE x ∈ X with feasible event set Γ ( x ) x ∈ X with feasible event set Γ ( x ) � CURRENT EVENT e that caused transition into x e that caused transition into x � CURRENT EVENT TIME t associated with e t associated with e Associate a Associate a CLOCK VALUE / RESIDUAL LIFETIME y i CLOCK VALUE / RESIDUAL LIFETIME y i ( ) with each feasible event ∈ Γ with each feasible event i x CODES Lab. - Boston University Christos G. Cassandras
HOW THE TIMED AUTOMATON WORKS... CONTINUED � NEXT/TRIGGERING EVENT e' : ( ) { } = e ' arg min y i ∈ Γ i x � NEXT EVENT TIME t' : = + t ' t y * ( ) { } = where: * y min y i ∈ Γ i x � NEXT STATE x' : ( ) = x ' f x e , ' CODES Lab. - Boston University Christos G. Cassandras
HOW THE TIMED AUTOMATON WORKS... CONTINUED ′ Determine new CLOCK VALUES y i Determine new CLOCK VALUES for every event ( ) for every event ∈ Γ i x ( ) ( ) ′ ′ − ∈ Γ ∈ Γ ≠ y y * i x , i x , i e i ( ) { ( ) } ′ ′ ′ = ∈ − − Γ Γ y v i x x e i ij 0 otherwise EVENT CLOCKS ARE STATE VARIABLES = where : v new lifetime for event i ij ( ) { } v 1 = = x ' f x , e ' , e ' arg min { y } x , x , K i 1 2 … ∈ Γ i ( x ) ( ) v N y = ' g y , x , V CODES Lab. - Boston University Christos G. Cassandras
TIMED AUTOMATON - AN EXAMPLE SERVER QUEUE Arrival Departure Events Events { } ( ) { } = Γ = > x a , d , for all x 0 E a , d { } ( ) { } Γ = = 0 a X 0 , 1 , 2 , K + ′ = x 1 e a ( ) ′ = f x e , − ′ = > x 1 e d , x 0 { } { } = = Given input : v v , v , , v v , v , K K a a 1 a 2 d d 1 d 2 CODES Lab. - Boston University Christos G. Cassandras
TIMED AUTOMATON - A TYPICAL SAMPLE PATH CONTINUED e 1 = a e 2 = a e 3 = a e 4 = d x 0 = 0 x 0 = 1 x 0 = 2 x 0 = 3 x 0 = 2 t 0 t 1 t 2 t 3 t 4 a a d a d a d CODES Lab. - Boston University Christos G. Cassandras
STOCHASTIC TIMED AUTOMATON � Same idea with the Clock Structure consisting of Stochastic Processes � Associate with each event i a Lifetime Distribution based on which v i is generated Generalized Semi-Markov Process (GSMP) In a simulator, v i is generated through a In a simulator, v i is generated through a pseudorandom number generator pseudorandom number generator CODES Lab. - Boston University Christos G. Cassandras
DISCRETE EVENT SIMULATION …is simply a computer-based implementation of the DES sample path generation mechanism described so far INITIALIZE INITIALIZE STATE STATE TIME TIME x t x t SCHEDULED x ' t ' EVENT LIST UPDATE TIME UPDATE STATE e 1 t 1 UPDATE TIME UPDATE STATE t' = t 1 x' = f ( x,e 1 ) t' = t 1 x' = f ( x,e 1 ) e 2 t 2 ... x ' t ' DELETE INFEASIBLE DELETE INFEASIBLE ADD NEW FEASIBLE ( e k , t k ) ADD NEW FEASIBLE ( e k , t k ) ( e k , t' + v k ) ( e k , t' + v k ) AND RE-ORDER AND RE-ORDER RANDOM VARIATE RANDOM VARIATE GENERATOR new event lifetimes v k GENERATOR Christos G. Cassandras CODES Lab. - Boston University
HYBRID SYSTEM SIMULATION Timing of NEW FEASIBLE EVENTS is now determined by time-driven dynamics INITIALIZE INITIALIZE STATE STATE TIME TIME x t x t SCHEDULED x ' t ' EVENT LIST UPDATE TIME UPDATE STATE e 1 t 1 UPDATE TIME UPDATE STATE t' = t 1 x' = f ( x,e 1 ) t' = t 1 x' = f ( x,e 1 ) e 2 t 2 ... x ' t ' DELETE INFEASIBLE DELETE INFEASIBLE ADD NEW FEASIBLE ( e k , t k ) ADD NEW FEASIBLE ( e k , t k ) ( e k , t' + v k ) Time-driven dynamics ( e k , t' + v k ) Time-driven dynamics AND RE-ORDER AND RE-ORDER RANDOM VARIATE determine t'+y k RANDOM VARIATE determine t'+y k GENERATOR new event lifetimes v k GENERATOR Christos G. Cassandras CODES Lab. - Boston University
PETRI NETS Proceed by example and contrast to Timed Automaton model... SERVER QUEUE Arrival Departure Events Events EVENTS: - Arrivals ( a ) - Departures ( d ) STATES: Number of customers in queue or in service, {0,1,2,…} Christos G. Cassandras CODES Lab. - Boston University
PETRI NETS CONTINUED TRANSITIONS (EVENTS): a v a - a : Customer arrives I Q - s : Service starts - d : Customer departs s PLACES (CONDITIONS): B - Q : Queue not empty - I : Server idle v d d - B : Server busy TRANSITION TIMING: Transition fires - a → v a = { v a ,1 , v a ,2 , … } after - s → specified delay v s = 0 (no delay) - d → v d = { v d ,1 , v d ,2 , … } Christos G. Cassandras CODES Lab. - Boston University
PETRI NETS CONTINUED a v a a k : k th arrival time I Q s k : k th service start time d k : k th departure time s π Q,k : k th time Q gets token B π I,k : k th time I gets token π B,k : k th time B gets token v d d = + π = a a v a − 1 k k a k , Q k , k [ ] π = d = π π s max , − 1 I k , k k Q k , I k , π = s = π + d v B k , k k B k , d k . [ ] = + = d max a , d v , k 12 , K − k k k 1 d k . Christos G. Cassandras CODES Lab. - Boston University
MAX-PLUS ALGEBRA [ ] ⊕ = ADDITION: a b m ax a b , MULTIPLICATION: ⊗ = + a b a b • From Petri net model: = + = a a v a 0 − k k 1 a k , 0 [ ] = + + = d max a v , d v d 0 − − k k 1 a k , k 1 d k . 0 • Fix: = 1 2 K v = C , v = C f o r a l l k , , a , k a d , k d ( ) ( ) • Equations become: + = ⊗ ⊕ ⊗ − − = −∞ a a C d L L k 1 k a k- 1 ( ) ( ) = ⊗ ⊕ ⊗ d a C d C k k d k- 1 d Christos G. Cassandras CODES Lab. - Boston University
MAX-PLUS ALGEBRA CONTINUED • In matrix form: − a C L a + k 1 a k = d C C d − k d d k 1 • Define: − a C L + 1 k a = = x , A k d C C k d d • Get a “ linear ” system - in the max-plus sense: C a = = x A x , x + k 1 k 0 0 Christos G. Cassandras CODES Lab. - Boston University
REFERENCES ON DES MODELING Cassandras and Lafortune, Introduction to Discrete Event Systems , Kluwer, 1999 David and Alla, Petri Nets and Grafcet: Tools for Modelling Discrete Event Systems , Prentice-Hall, 1992. Peterson, Petri Net Theory and the Modeling of Systems , Prentice Hall, 1981 Glasserman and Yao, Monotone Structure in Discrete-Event Systems , Wiley, 1994 Baccelli, Cohen, Olsder, and Quadrat, Synchronization and Linearity: An Algebra for Discrete Event Systems , Wiley, 1992 Christos G. Cassandras CODES Lab. - Boston University
HYBRID AUTOMATA [ Branicky et al., 1998 ] [ Branicky et al., 1998 ] = γ Σ q : z ( z , u , t ) & G q q q q q F q A q C p A p C q AUTONOMOUS JUMP SET CONTROLLED JUMP SET System must jump with System may jump with × → G : A V S → S F q C : 2 q q q q H = ( Q , Σ , A , G , V , C , F ) Discrete state indices, q ∈ Q Christos G. Cassandras CODES Lab. - Boston University
Recommend
More recommend