Research Supported by NSF & ARO Networked Control Systems João Hespanha Networked Control Systems controller sensor actuator sensor controller Network (wireline/wireless) actuator sensor controller sensor
Application Areas Robotic agents free humans from unpleasant, dangerous, and/or repetitive tasks in which human performance would degrade over time due to fatigue Efficiency and safety in cars depend on a network of hundreds of ECUs (power train, ABS, stability control, speed control, transmission, …) Process control or power plant facilities Buildings consume 72% of often have between electricity, 40% of all energy, several thousand of and produce close to 50% of coupled control loops U.S. carbon emissions Challenges Active suspension model constant sampling = 2 ms Simulated with TrueTime node 1 2 3 4 5 6 7 network priorities 1 1 2 3 4 5 6 7 access priorities priorities 2 7 1 2 3 4 5 6 Ben Gaid, Cela,Kocik
Digital Control Systems Digital control systems usually exhibit uniform sampling intervals and delays h h h ……… h h h s 1 s 2 s 3 s 4 time s 3 s 4 s 1 s 2 u ( t ) y ( t ) H Plant S s k +1 − s k = h Hold (D/A) Sampler (A/D) Controller u k y k h h h ……… h h h ……… s 1 s 2 s 3 s 4 s 1 s 2 s 3 s 4 time Non-uniform Sampling/Delays Uniform sampling cannot be guaranteed (packet drops, clock synchronization, …) Different samples may experience different delays Difficult to decouple continuous plant from discrete events (sampling, drops, …) Network ……… τ 1 τ 2 y ( t ) u ( t ) s 2 s 3 s 1 H Plant S time s 1 s 2 s 3 s 4 Network variable packet drops delays Controller u k y k ……… ……… s 1 s 3 s 4 s 1 s 3 s 4
Course Overview Lecture #1: ! Modeling Framework − Hybrid Dynamical Systems ! (Deterministic, Stochastic, Impulsive) Lecture #2: ! Analysis of Stochastic Hybrid Systems ! (Generator, Lyapunov-based Methods) (extra material): NCS Protocol Design ! (Medium Access, Transport, Routing) Lecture #1 Modeling Framework: Hybrid Dynamical Systems
Lecture #1 Outline Deterministic Impulsive Systems (DISs) Deterministic Hybrid Systems (DHSs) Stochastic Hybrid Systems (SHSs) Simulation of SHSs SHSs Driven by Renewal Processes Main references: Davis, “Markov Models and Optimization” Chapman & Hall,1993 Cassandras, Lygeros, “SHSs” CRC Press 2007 Hespanha, “A Model for SHSs with Application ...” Nonlinear Analysis 2005. Deterministic Impulsive Systems guard reset-maps conditions continuous dynamics x = f ( x ) ˙ x ( t ) 2 R n ´ continuous state
Example #1: Bouncing Ball Free fall ´ g Collision ´ y c 2 [0,1] ´ energy “reflected” at impact Notation: given x : [0, 1 ) ! R n ´ piecewise continuous signal at points t where x is continuous x(t) = x − (t) = x + (t) By convention we will generally assume right continuity, i.e., x ( t ) = x + ( t ) ∀ t ≥ 0 x x + x – Example #1: Bouncing Ball Free fall ´ x 1 := y Collision ´ for any c < 1,there are infinitely many transitions in finite time (Zeno phenomena) t guard or jump condition x 1 = 0 & x 2 < 0 ? transition Impulsive System (all discreteness in the form of instantaneous x 2 7! � cx − 2 changes in the state) state reset
Deterministic Hybrid Systems continuous dynamics guard conditions reset-maps q ( t ) 2 Q ={1,2,…} ! ´ discrete state right-continuous x ( t ) 2 R n ! by convention ´ continuous state Example #2: TCP Congestion Control transmits receives data packets data packets server client network r packets dropped due to congestion congestion control ! ´ selection of the rate r at which the server transmits packets feedback mechanism ! ´ packets are dropped by the network to indicate congestion TCP (Reno) congestion control: packet sending rate given by congestion window (internal state of controller) round-trip-time (from server to client and back) • initially w is set to 1 • until first packet is dropped, w increases exponentially fast ! (slow-start) • after first packet is dropped, w increases linearly ! (congestion-avoidance) • each time a drop occurs, w is divided by 2 ! ! (multiplicative decrease)
Example #2: TCP Congestion Control “drop event” “drop event” TCP (Reno) congestion control: packet sending rate given by congestion window (internal state of controller) round-trip-time (from server to client and back) • initially w is set to 1 • until first packet is dropped, w increases exponentially fast ! (slow-start) • after first packet is dropped, w increases linearly ! (congestion-avoidance) • each time a drop occurs, w is divided by 2 ! ! (multiplicative decrease) Drops by Queue Overflow queue (temporary data storage) r bps rate · B bps s ( t ) ´ queue size When r exceeds B the queue fills and data is lost (drops) ) drop event
Example #2: TCP Congestion Control queue (temporary data storage) r bps rate · B bps s ( t ) ´ queue size So far… continuous dynamics guard conditions reset-maps q ( t ) 2 Q ={1,2,…} ! ´ discrete state right-continuous x ( t ) 2 R n ! by convention ´ continuous state
Stochastic Hybrid Systems continuous dynamics λ 4 ( x ) dt transition intensities (probability of transition in small interval ( t , t + dt ] ) reset-maps q ( t ) 2 Q ={1,2,…} ! ´ discrete state x ( t ) 2 R n ! ´ continuous state λ ` ( x ) dt ≣ probability of transition in an “elementary” interval ( t , t + dt ] ⇓ λ ` ( x ) ≣ instantaneous rate of transitions per unit of time Stochastic Hybrid Systems continuous dynamics λ 4 ( x ) dt transition intensities (probability of transition in small interval ( t , t + dt ] ) reset-maps Special case: When all λ are constant, transitions are controlled by a continuous-time Markov process specifies q q = 2 q = 1 (independently of x ) closely related to the so called q = 3 Markovian Jump Systems [Costa, Fragoso, Boukas, Loparo, Lee, Dullerud]
Example #2.1: TCP Congestion Control transmits receives data packets data packets server client network r packets dropped with probability p drop (before queue overflow) congestion control ! ´ selection of the rate r at which the server transmits packets feedback mechanism ! ´ packets are dropped by the network to indicate congestion TCP (Reno) congestion control: packet sending rate given by congestion window (internal state of controller) round-trip-time (from server to client and back) • initially w is set to 1 • until first packet is dropped, w increases exponentially fast ! (slow-start) • after first packet is dropped, w increases linearly ! (congestion-avoidance) • each time a drop occurs, w is divided by 2 ! ! (multiplicative decrease) Example #2.1: TCP Congestion Control packets dropped “drop event” with probability p drop (before queue overflow) “drop event” TCP (Reno) congestion control: packet sending rate given by congestion window (internal state of controller) round-trip-time (from server to client and back) • initially w is set to 1 • until first packet is dropped, w increases exponentially fast ! (slow-start) • after first packet is dropped, w increases linearly ! (congestion-avoidance) • each time a drop occurs, w is divided by 2 ! ! (multiplicative decrease)
Example #2.1: TCP Congestion Control per-packet pckts dropped pckts sent £ drop prob. = per sec per sec TCP (Reno) congestion control: packet sending rate given by congestion window (internal state of controller) round-trip-time (from server to client and back) • initially w is set to 1 • until first packet is dropped, w increases exponentially fast ! (slow-start) • after first packet is dropped, w increases linearly ! (congestion-avoidance) • each time a drop occurs, w is divided by 2 ! ! (multiplicative decrease) Lecture #1 Outline Deterministic Impulsive Systems (DISs) Deterministic Hybrid Systems (DHSs) Stochastic Hybrid Systems (SHSs) Simulation of SHSs SHSs Driven by Renewal Processes
Stochastic Impulsive Systems reset-maps x 7! φ ( x ) λ ( x ) dt continuous dynamics transition intensities x = f ( x ) ˙ (probability of transition in interval ( t , t + dt ] ) Numerical Simulation of SISs here we take x 0 as a given parameter 1. Initialize state: x ( t 0 ) = x 0 k = 0 x 7! φ ( x ) λ ( x ) dt 2. Draw a unit-mean exponential random x = f ( x ) ˙ variable E ∼ exp(1) 3. Solve ODE x = f ( x ) ˙ x ( t k ) = x k t ≥ t k until time t k+1 for which Z t k +1 λ ( x ( t )) dt ≥ E t k 4. Apply the corresponding reset map x ( t k +1 ) = x k +1 := φ ( x − ( t k +1 )) set k = k + 1 and go to 2.
Recommend
More recommend