140 likes | 264 Views
Control. Applying input to cause system variables to conform to desired values called the reference . Cruise-control car: f_engine(t)=? speed=60 mph E-commerce server: Resource allocation? T_response=5 sec Embedded networks: Flow rate? Delay = 1 sec
E N D
Control • Applying input to cause system variables to conform to desired values called the reference. • Cruise-control car:f_engine(t)=? speed=60 mph • E-commerce server:Resource allocation? T_response=5 sec • Embedded networks: Flow rate? Delay = 1 sec • Computer systems: QoS guarantees
Feedback (close-loop) Control Controlled System( “plant” ) Controller control function control input manipulated variable Acturator (efector, etc) error sample controlled variable Sensor + - (monitor etc) reference
Controlled System( “plant” ) Controller control function control input manipulated variable Acturator (efector, etc) error controlled variable + - reference Open-loop control • Compute control input without continuous variable measurement • Simple • Need to know EVERYTHINGACCURATELY to work right • Cruise-control car: friction(t), ramp_angle(t) • E-commerce server: Workload (request arrival rate? resource consumption?); system (service time? failures?) • Open-loop control fails when • We don’t know everything • We make errors in estimation/modeling • Things change
Feedback control theory, vs … • Adaptive resource management heuristics • Laborious design/tuning/testing iterations • Not enough confidence in face of untested workload • Queuing theory • Doesn’t handle feedbacks • Not good at characterizing transient behavior in overload • Feedback control theory • Systematic theoretical approach for analysis and design • Predict system response and stability to input
Control design methodology Controller Design System model Dynamic model Control algorithm Satisfy Requirement Analysis Performance Specifications • Linear vs. non-linear • Time-invariant vs. Time-varying • Are coefficients functions of time? • Continuous-time vs. Discrete-time
Controller Control Model MaxUsers Actual RIS Desired RIS e(k) + u(k) y(k) Control error: e(k)=r(k)-y(k) Controller Notes Server r(k) System model: y(k)=(0.43)y(k-1) +(0.47)u(k-1) - Example: Control of Lotus Notes Architecture Admin RPCs MaxUsers Server RIS = RPCs in System Desired RIS Actual RIS P controller: u(k)=Ke(k) ?
Example: Control & Responsein an Email Server Response (queue length) Good Bad Control (MaxUsers) Slow Useless
Disturbance Input Control System Architecture Reference Input Control Input Measured Output Controller Target System Transduced Output Transducer Components Target system: what is controlled Controller: exercises control Transducer: translates measured outputs Given target system, transducer Control theory finds controller that adjusts control input to achieve measured output in the presence of disturbances. Data Reference input: objective Control input: manipulated to affect output Disturbance input: other factors that affect the target system Transduced output: result of manipulation
Administrative Tasks Target System MaxUsers Reference RIS Actual RIS Measured RIS Controller Notes Server MaxUsers Sensor Block Diagram Administrative Tasks IBM Lotus Domino Server Notes Client RPC Records RPCs Server Log Notes Server Notes Client Architecture
Unstable System Stability Accuracy Short settling Small Overshoot Properties of Control Systems – SASO
Performance specifications Controlled variable Overshoot Steady state error % Referencevalue Transient State Steady State Time Settling time
Model of System Dynamics Transfer Function 100 80 60 Predicted RIS 40 20 0 0 20 40 60 80 100 Measured RIS Control Theory in Two Slides: System Identification MaxUsers Actual RIS Notes Server
Poles of H(z) Integral Control Law K=5 K=1 K=.1 Control Theory in Two Slides: Control Design + r* Controller G(z) Notes Server N(z) Sensor S(z) - H(z) = Closed Loop Transfer Function