Beruflich Dokumente
Kultur Dokumente
With Applications to
Computer Science
Joseph Hellerstein
And
Sujay Parekh
IBM T.J. Watson Research Center
{hellers,sujay}@us.ibm.com
Example 1: Liquid Level
System
(input flow) Goal: Design the input
qi valve control to maintain a
constant height regardless
Input valve of the setting of the
control output valve
float
R
(resistance)
(height) H
(output flow)
V qo
(volume) Output
valve
2
Example 2: Admission Control
Goal: Design the controller
to maintain a constant
queue length regardless of
Users the workload
RPCs
Reference Tuning
value control
Controller Sensor
Server
Administrator Log
Server
Queue
Length
3
Why Control Theory
Systematic approach to analysis and design
Transient response
Consider sampling times, control frequency
Taxonomy of basic controls
Select controller based on desired characteristics
Predict system response to some input
Speed of response (e.g., adjust to workload
changes)
Oscillations (variability)
Approaches to assessing stability and limit
cycles
4
Example: Control & Response in
an Email Server
Response
(queue length)
Good
Control Bad
(MaxUsers)
Slow Useless
5
Examples of CT in CS
Network flow controllers (TCP/IP – RED)
C. Hollot et al. (U.Mass)
Lotus Notes admission control
S. Parekh et al. (IBM)
QoS in Caching
Y. Lu et al. (U.Va)
Apache QoS differentiation
C. Lu et al. (U.Va)
6
Outline
Examples and Motivation
Control Theory Vocabulary and Methodology
Modeling Dynamic Systems
Standard Control Actions
Transient Behavior Analysis
Advanced Topics
Issues for Computer Systems
Bibliography
7
Feedback Control System
b(t )
Transducer
8
Controller Design Methodology
Start
System Modeling
Controller
Design
Block
diagram
construction
Controller
Evaluation
Transfer function
formulation and
validation
Objective
achieved Y Stop
?
N Model Y
Ok?
N
9
Control System Goals
Regulation
thermostat, target service levels
Tracking
robot movement, adjust TCP window to
network bandwidth
Optimization
best mix of chemicals, minimize response
times
10
System Models
Linear vs. non-linear (differential eqns)
eg, a1 y a0 y b2 x b0 x
Principle of superposition
Deterministic vs. Stochastic
Time-invariant vs. Time-varying
Are coefficients functions of time?
Continuous-time vs. Discrete-time
t R vs k Z
11
Approaches to
System Modeling
First Principles
Based on known laws
Physics, Queueing theory
Difficult to do for complex systems
Experimental (System ID)
Statistical/data-driven models
Requires data
Is there a good “training set”?
12
The Complex Plane (review)
Imaginary axis (j)
u x jy
y r u tan 1 y
x
Real axis
x | u | r | u | x y
2 2
r
y
u x jy
(complex) conjugate
13
Basic Tool For Continuous
Time: Laplace Transform
L[ f (t )] F (s) f (t )e dt st
0
Convert time-domain functions and operations
into frequency-domain
f(t) F(s) (t, s)
Linear differential equations (LDE) algebraic
expression in Complex plane
Graphical solution for key LDE characteristics
Discrete systems use the analogous z-transform
14
Laplace Transforms of
Common Functions
Name f(t) F(s)
1 t 0
Impulse f (t ) 1
0 t 0
1
Step f (t ) 1
s
1
Ramp f (t ) t
s2
1
Exponential f (t ) e at
sa
1
Sine f (t ) sin( t )
2 s2
15
Laplace Transform Properties
Addition/Scaling L[af1 (t ) bf 2 (t )] aF1 ( s ) bF2 ( s )
d
Differenti ation L f (t ) sF ( s ) f (0)
dt
Integratio n
L f (t )dt
F ( s) 1
s
f (t )dt
s
t 0
t
Convolution f (t τ)f (τ )dτ F (s) F (s)
0
1 2 1 2
16
Insights from Laplace
Transforms
What the Laplace Transform says about f(t)
Value of f(0)
Initial value theorem
Does f(t) converge to a finite value?
Poles of F(s)
Does f(t) oscillate?
Poles of F(s)
Value of f(t) at steady state (if it converges)
Limiting value of F(s) as s->0
17
Transfer Function
Definition X(s) H(s) Y(s)
H(s) = Y(s) / X(s)
Relates the output of a linear system
(or component) to its input
Describes how a linear system responds
to an impulse
All linear operations allowed
Scaling, addition, multiplication
18
Block Diagrams
Pictorially expresses flows and relationships
between elements in system
Blocks may recursively be systems
Rules
Cascaded (non-loading) elements: convolution
Summation and difference elements
Can simplify
19
Block Diagram of System
Disturbance
Reference Value
N (s )
R(s)
+ G1 (s) G2 (s)
E (s ) U (s )
S Controller S Plant
Y (s)
–
B(s)
Transducer
H (s)
20
Combining Blocks
Reference Value
B(s)
Transducer
H (s)
21
Block Diagram of
Access Control
Users
Controller Sensor
Server
Server Log
E(z)
+ U(z) Q(z)
R(z) S G(z) N(z) S(z)
- Controller Notes Sensor M(z)
Server
22
Key Transfer Functions
Reference
R(s)
+ G1 (s) G2 (s)
E (s ) U (s )
S Controller Plant
–
Y (s)
B(s) H (s)
Transducer
Y ( s) Y ( s) U ( s)
Feedforward : G1 ( s)G2 ( s)
E ( s) U ( s) E ( s)
B( s ) Y ( s) G1 ( s)G2 ( s)
Open - Loop : G1 ( s)G2 ( s) H ( s) Feedback :
E ( s) R(s) 1 G1 ( s)G2 ( s) H23( s)
Rational Laplace Transforms
A( s )
F (s)
B( s)
A( s ) a n s ... a1 s a 0
n
B ( s ) bm s m ... b1 s b0
Poles : s* B ( s*) 0 (So, F ( s*) )
Zeroes : s* A( s*) 0 (So, F ( s*) 0)
Poles and zeroes are complex
Order of system # poles m
24
First Order System
Y ( s) K K
R( s) 1 K sT 1 sT
Reference
R(s )
E (s ) U (s ) 1 Y (s )
S K
1 sT
B(s ) 1
25
First Order System
Impulse K Exponential
response
1 sT
Step response Step,
K K
- exponential
s s 1/ T
Ramp response K KT KT Ramp,
- - step,
s 2
s s 1 / T exponential
No oscillations (as seen by poles) 26
Second Order System
Y ( s) K N2
Impulse response : 2 2
R( s ) Js Bs K s 2 N s N2
K
Undamped natural frequency : N
J
27
Second Order System:
Parameters
Interpreta tion of damping ratio
0 : Undamped oscillation (Re 0, Im 0)
0 1 : Underdamped (Re 0 Im)
1 : Overdamped (Re 0, Im 0)
28
Transient Response
Characteristics
2
1.75
0.75
0.5
0.25
d t r t pt s t
30
Effect of pole locations
Oscillations
(higher-freq)
Im(s)
31
Basic Control Actions: u(t)
U (s)
Proportional control : u (t ) K p e(t ) Kp
E ( s)
t
U (s) K i
Integral control : u (t ) K i e(t )dt
0
E ( s) s
d U (s)
Differenti al control : u (t ) K d e(t ) Kd s
dt E ( s)
32
Effect of Control Actions
Proportional Action
Adjustable gain (amplifier)
Integral Action
Eliminates bias (steady-state error)
Can cause oscillations
Derivative Action (“rate control”)
Effective in transient periods
Provides faster response (higher sensitivity)
Never used alone
33
Basic Controllers
Proportional control is often used by
itself
Integral and differential control are
typically used in combination with at
least proportional control
eg, Proportional Integral (PI) controller:
U ( s) KI 1
G( s) Kp K p 1
E ( s) s Ti s
34
Summary of Basic Control
Proportional control
Multiply e(t) by a constant
PI control
Multiply e(t) and its integral by separate constants
Avoids bias for step
PD control
Multiply e(t) and its derivative by separate constants
Adjust more rapidly to changes
PID control
Multiply e(t), its derivative and its integral by separate
constants
Reduce bias and react quickly
35
Root-locus Analysis
Based on characteristic eqn of closed-loop
transfer function
Plot location of roots of this eqn
Same as poles of closed-loop transfer function
Parameter (gain) varied from 0 to
Multiple parameters are ok
Vary one-by-one
Plot a root “contour” (usually for 2-3 params)
Quickly get approximate results
Range of parameters that gives desired response
36
Digital/Discrete Control
More useful for computer systems
Time is discrete
denoted k instead of t
Main tool is z-transform
Z[ f (k )] F ( z ) f (k ) z k
k 0
38
Root Locus analysis of
Discrete Systems
Stability boundary: |z|=1 (Unit circle)
Settling time = distance from Origin
Speed = location relative to Im axis
Right half = slower
Left half = faster
39
Effect of discrete poles
Im(s)
Higher-frequency
response
Longer settling time
Re(s)
Stable
Unstable |z|=1
Intuition : z eTs
40
System ID for Admission
Control
E(z)
+ U(z) Q(z)
R(z) S G(z) N(z) S(z)
- Controller Notes Sensor M(z)
Server
Transfer Functions
ARMA Models b0 z
N ( z)
q(t ) a1 q(t 1) b0 u (t ) z a1
m(t ) c1 m(t 1) d 0 q(t ) d1 q(t 1) d 0 z d1
S ( z)
z c1
Control Law G( z)
Ki z 1
u (t ) u (t 1) K i e(t ) z 1 z
b0 z d 0 z d1 K i z 1
Open-Loop: N ( z ) S ( z ) G( z )
z a1 z c1 z 1 z 41
Root Locus Analysis of
Admission Control
Predictions:
•Ki small => No controller-induced oscillations
•Ki large => Some oscillations
•Ki v. large => unstable system (d=2)
•Usable range of Ki for d=2 is small
42
Experimental Results
Response
(queue length)
Good
Control Bad
(MaxUsers)
Slow Useless
43
Advanced Control Topics
Robust Control
Can the system tolerate noise?
Adaptive Control
Controller changes over time (adapts)
MIMO Control
Multiple inputs and/or outputs
Stochastic Control
Controller minimizes variance
Optimal Control
Controller minimizes a cost function of error and control energy
Nonlinear systems
Neuro-fuzzy control
Challenging to derive analytic results
44
Issues for Computer Science
Most systems are non-linear
But linear approximations may do
eg, fluid approximations
First-principles modeling is difficult
Use empirical techniques
Control objectives are different
Optimization rather than regulation
Multiple Controls
State-space techniques
Advanced non-linear techniques (eg, NNs)
45
Selected Bibliography
Control Theory Basics
G. Franklin, J. Powell and A. Emami-Naeini. “Feedback Control of Dynamic Systems,
3rd ed”. Addison-Wesley, 1994.
K. Ogata. “Modern Control Engineering, 3rd ed”. Prentice-Hall, 1997.
K. Ogata. “Discrete-Time Control Systems, 2nd ed”. Prentice-Hall, 1995.
Applications in Computer Science
C. Hollot et al. “Control-Theoretic Analysis of RED”. IEEE Infocom 2001 (to appear).
C. Lu, et al. “A Feedback Control Approach for Guaranteeing Relative Delays in Web
Servers”. IEEE Real-Time Technology and Applications Symposium, June 2001.
S. Parekh et al. “Using Control Theory to Achieve Service-level Objectives in
Performance Management”. Int’l Symposium on Integrated Network Management,
May 2001
Y. Lu et al. “Differentiated Caching Services: A Control-Theoretic Approach”. Int’l Conf
on Distributed Computing Systems, Apr 2001
S. Mascolo. “Classical Control Theory for Congestion Avoidance in High-speed
Internet”. Proc. 38th Conference on Decision & Control, Dec 1999
S. Keshav. “A Control-Theoretic Approach to Flow Control”. Proc. ACM SIGCOMM, Sep
1991
D. Chiu and R. Jain. “Analysis of the Increase and Decrease Algorithms for Congestion
Avoidance in Computer Networks”. Computer Networks and ISDN Systems, 17(1), Jun
1989
46