Title: Brief Review of Control Theory
1Brief Review of Control Theory
- E0397 Lecture.
- Some PPT slides based on Columbia Course by
authors of the book - Feedback Control of Computing Systems
- Hellerstein, Diao, Parekh, Tilbury
2A Feedback Control System
Error
- Data
- Reference input objective
- Control input manipulated to affect output
- Disturbance input other factors that affect the
target system - Transduced output result of manipulation
- 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 given measured output in the presence of
disturbances.
3Control System Examples
- AC temperature control
- Controlled Variable temperature
- Control variables fan speed, time for which
compressor is on? - Car cruise control
- Controlled variable Car speed
- Control variable Angle of pushing of accelerator
and brake
4A Feedback Control System
Road surface, gradient
Random variation
Embedded System that does cruise control
Distance Travelled, Time taken
Desired Speed
Car
Pedal Angle Setting
Error
Speed calculator
Speed
Actuator The entity that implements the control
Sensor the entity that measures the output
Odometer, Car clock
Mechanical Device that Changes pedal angle
Feedback!
5A virtual machine as a FBCS
Other Virtual Machines Doing some interfering
work
Random variation
Controller Process in Domain 0 that
periodically changes Cap value of Guest
Domain
Response Time (of Applications)
Desired Response time
Xen VM (Guest Domain) With applications running
CPU Cap Value
Error
E.g. Smoothing filter
Smoothed Response time
Actuator The entity that implements the control
Sensor the entity that measures the output
E.g. a proxy that Can measure Time taken
Xen hypervisor scheduler
Feedback!
6A Feedback Control System
Error
- Data
- Reference input objective
- Control input manipulated to affect output
- Disturbance input other factors that affect the
target system - Transduced output result of manipulation
- 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 given measured output in the presence of
disturbances.
7Control System Goals
- Reference Tracking
- Ensure that measured output follows (tracks) a
target desired level - Disturbance Rejection
- Maintain measured output at a given stable level
even in presence of disturbances - Optimization
- No reference input may be given. Maintain
measured output and control input at optimal
levels - Minimize petrol consumption, maximize speed (not
available in reality!!) - Minimize power consumed by CPU, maximize
performance
8Control System Basic Working
r(k)
u(k)
x(k)
e(k)
y(k)
- Control Loop executed every T time units.
- y(k) Value of measure at time instant k
- u(k) Value of control input at time instant k
- r(k) Value of reference at time instant k
- e(k) Error between reference and measured value
- Next value of control input, i.e. u(k1) to be
computed based on feedback e(k)
9Determining Change in Control Input
- Change in u should depend on relationship between
y and u - Relationship should be known
- If known, then why feedback? Why not
- y f(u)
- (Car speed as function of accelerator pedal
angle) - ? u f-1(y). For a desired reference, just
calculate the control input required by using
inverse. This is called feed forward
Feed-forward
10Feedforward (model based)
- Problems
- Need accurate model
- If model wrong, control input can be totally
wrong - Imagine wrong model b/w accel. pedal and car
speed - Does not take into account time-dependent
behaviour - E.g. how long will system require to attain
desired value - If car was at speed S1, we set cruise control to
speed S2, if we set pedal angle to f-1(S2), will
it immediately go to speed S2? - Cannot take care of disturbances
- E.g. if environmental conditions change, model
may not be applicable. - What if car was climbing a slope? (And angle was
measured on flat ground?) - Feedback addresses many of these problems.
11Feedback Control
- Rather than use only some offline model, also
take into account the immediate measured effect
of the value of your control variable - If car at S1, want to go to S2, S1 lt S2 (positive
error), pedal must be pushed further down. - We still need some idea of the relationship
between input and output - Pedal should be pushed? Or released? If pushed
by what angle? - (Intuitively, for larger S2 - S1, angle of
pushing in must be larger) - Another e.g. if e(k) r(k) y(k) is positive
- Should u(k) increase or decrease?
- If u is CPU frequency, y is response time. If
e(k) is positive, u should? - Increase/Decrease by how much?
- If increase/decrease too much
- Measured output will keep on oscillating above
and below reference Unstable behavior
12Feedback control
- Since we want control to work in a timely manner
(not only in steady-state), relationship should
be time dependent - New value of y y(k1) will generally depend on
y(k) and u(k) - Speed of car at this instant, will depend on what
speed was at the beginning of previous interval,
and the pedal angle in the previous interval - Similarly, queuing delay at this intvl will
depend on queuing delay of previous instant, and
CPU frequency setting of previous interval
13System Modeling
- Need a model to capture this relationship over
time - Can be first order (depending on 1 previous
value), or higher order (more than 1 previous
values). - First Order Linear model y(k1) a y(k) b
u(k) - Can be done by first principles or analytical
modeling - E.g. If y is response time of queueing system, u
is service time, it may be possible to find an
equation to relate y(k1) to y(k) and u(k)
14System Modeling
- If first principles difficult empirical model
- Run controlled experiments on target system,
record values of y(k), u(k), run regression
models to find a and b. - How to do this correctly is a field called
system identification - Main issues
- Relationship may not be actually be linear
15Non-linear relationships
Response Time
Utilization
- E.g. number in queueing system vs buffer size
- Relationship can be linearized in certain
regions. Centre of such a region Operating Point
- Operating point
- Operating range
- Values of N,K for which model applies.
- Offset value
- Difference from operating point
Linear Relationship is made between y and u
defined as offsets
16Control Laws
- Once system model is made, need to design
control laws - Control Laws relate error to new value of
control input - From e(k) determine value of u(k)
- Controllers should have good SASO properties
- STABILITY - ACCURACY - SETTLING TIME - OVERSHOOT
- Deeply mathematical theory for deriving these
laws - Transfer functions, Poles
- Estimating SASO properties of control laws
- Using this understanding to design good control
laws which have good SASO properties
Cannot go into details
17Properties of Control Systems
18Types of Controllers (Control Laws)
- Proportional Control Law
- u(k) Kpe(k) (Kp is a constant, called
controller gain) - Can be made stable, short settling time, less
overshoot but may be inaccurate - Integral Control Law
- u(k) u(k-1) KI e(k) (KI is controller gain)
- u(k-2) KI e(k-1) KI e(k)
- u(0) KI e(1) e(2) e(k)
- Keeps reacting to previous errors also
- Can show that this law will lead to zero error
- Has longer settling time
19Conclusion
- Padala paper uses integral control law in most
places. - It uses empirical methods for generating system
model - Slides gave just enough required background.
- Control theory is a huge field with lots of books
(mainly used in EE, MECH, CHEM) - Read books/papers/if further interested