View
217
Download
0
Category
Tags:
Preview:
Citation preview
Feedback Control of Computing Systems
Advanced Topics
Joseph L. Hellerstein, Yixin Diao, Sujay ParekhIBM Thomas J Watson Research Center, NY{hellers, diao, sujay}@us.ibm.com
September 23, 2004
Feedback Control of Computing Systems
Feedback Control of Computing Systems: M8 – Advanced Topics
Challenges Not Addressed by Classical Control
Change in system model (e.g., workload changes) Stochastics Incomplete or imprecise model of target system
Feedback Control of Computing Systems
Feedback Control of Computing Systems: M8 – Advanced Topics
Agenda
Motivating example Gain scheduling Self-Tuning regulators Minimum variance control Fuzzy control
Feedback Control of Computing Systems
Feedback Control of Computing Systems: M8 – Advanced Topics
Motivating Example
Approach to handling non-stationarities1. Design at one arrival rate2. See if robust at other
Feedback Control of Computing Systems
Feedback Control of Computing Systems: M8 – Advanced Topics
Results
Designed using high arrival rates Designed using low arrival rates
Slow
/ /1/ : Use b
M M Kz a
Oscillations
Feedback Control of Computing Systems
Feedback Control of Computing Systems: M8 – Advanced Topics
Gain Scheduling
Addresses situations in which model changes Key concepts
Scheduling variable: measures environmental effects that determine the model to use
Gain scheduler: selects the model
Feedback Control of Computing Systems
Feedback Control of Computing Systems: M8 – Advanced Topics
Structure of Gain Scheduling
Principles for developing gain schedulers1. Identify the variables that characterize how the target system changes2. Develop rules that determine which control gains to use with which values
of scheduling variables. Conceptually, gain scheduler indexes into a table of the form:
Rule 1 1st Gains
Rule 2 2nd Gains
... ...
Rule n n-th Gains
Feedback Control of Computing Systems
Feedback Control of Computing Systems: M8 – Advanced Topics
Performance of Gain Scheduling
Designed using high arrival rates Designed using low arrival rates Gain Scheduling
Feedback Control of Computing Systems
Feedback Control of Computing Systems: M8 – Advanced Topics
Self-Tuning Regulator (STR)
Issue with gain scheduling Discrete set of controllers
Self-tuning regulators Computes a continuous set of gains
Based on updated model of the target system
Feedback Control of Computing Systems
Feedback Control of Computing Systems: M8 – Advanced Topics
Structure of Self-Tuning Regulators
Gain Scheduler
STR
Feedback Control of Computing Systems
Feedback Control of Computing Systems: M8 – Advanced Topics
Structure of Self-Tuning Regulators
Principles for developing self-tuning regulators1. Express control gains in terms of the an and bm and desired poles (p1, p2).
2. Use recursive least squares (or other techniques) to estimate an and bm on-line
3. Compute new control gains whenever the an and bm are updated
1 2
1 2 1 21
P
I
a p pK
bp p p p
Kb
Example for a PI controller:
Feedback Control of Computing Systems
Feedback Control of Computing Systems: M8 – Advanced Topics
Performance of Self-Tuning Regulator
lowarrivals
higharrivals
Gain Scheduling
Self-TuningRegulator •STR is slower
than gain scheduling•But STR is easier to design
Feedback Control of Computing Systems
Feedback Control of Computing Systems: M8 – Advanced Topics
Minimum Variance Control (MVC)
Metrics of computing systems are often dominated by stochastics
MVC provides an explicit way to control variance
Feedback Control of Computing Systems
Feedback Control of Computing Systems: M8 – Advanced Topics
Structure of Minimum Variance Control
Feedback Control of Computing Systems
Feedback Control of Computing Systems: M8 – Advanced Topics
Structure of Minimum Variance Control
Principles for developing minimum variance controllers1. Express control gains in terms of the an and bm
2. Use recursive least squares (or other techniques) to estimate an and bm on-line
3. Compute new control gains whenever the an and bm are updated
( 1) ( ) ( ) ( ); ( ) is a random variable, [ ( )] ssy k ay k bu k w k w k E y k r
2
2
2 2
var( ( 1)) ( ( 1) ( ( 1))
( ( ) ( ) ( )) )
( ( ) ( ) )
( )( ) , minimizes var( ( 1))
ss
ss ss
ss
y k E y k E y k
E ay k bu k w k r
E ay k bu k r
r ay ku k y k
b
Feedback Control of Computing Systems
Feedback Control of Computing Systems: M8 – Advanced Topics
Performance of Minimum Variance Control
lowarrivals
higharrivals
Gain Scheduling
Self-TuningRegulator
Minimum Variance Controller
Feedback Control of Computing Systems
Feedback Control of Computing Systems: M8 – Advanced Topics
Fuzzy Control
Simplified modeling target system Address optimization rather than regulation
Feedback Control of Computing Systems
Feedback Control of Computing Systems: M8 – Advanced Topics
The Control Problem
Control objectiveSelect MaxClients that minimizes response time
Feedback Control of Computing Systems
Feedback Control of Computing Systems: M8 – Advanced Topics
Operation of Fuzzy Control
Difference: Compute changeFuzzification: Translate into linguistic valueInference mechanism: Interpret fuzzy rulesFuzzy rules: Express how control input changes as other linguistic variables changeDefuzzification: Translate into quantitative valuesIntegrate: Compute non-differenced values
Feedback Control of Computing Systems
Feedback Control of Computing Systems: M8 – Advanced Topics
Linguistic Variables
y(k+1)
y(k)change-in-y = x(k)x(k+1)
change-in-x =
x
Linguistic variables provide a quality description of the systemLinguistic values are ordinal with a small number of distinct value
Ex 1: x(k)=45, x(k+1)=30 change-in-x = negative
y
Linguistic variables take on categorical valuesEx 1: positive, negativeEx 2: small, medium, large
Feedback Control of Computing Systems
Feedback Control of Computing Systems: M8 – Advanced Topics
Res
pons
eT
ime
MaxClients
R1
R2
R3
R4
R1: If change-in-response-time is negative and last change-in-MaxClients was positiveThen increase MaxClients
R2: If change-in-response-time is positive and last change-in-MaxClients was negativeThen increase MaxClients
R3: If change-in-response-time is positive and last change-in-MaxClients was positiveThen decrease MaxClients
R4: If change-in-response-time is negative and last change-in-MaxClients was negativeThen decrease MaxClients
Fuzzy Rules
Feedback Control of Computing Systems
Feedback Control of Computing Systems: M8 – Advanced Topics
Operation of Fuzzy ControlR
espo
nse
Tim
e
MaxClients
R1
R2
R3
R4
Which rule(s) are being applied?
Feedback Control of Computing Systems
Feedback Control of Computing Systems: M8 – Advanced Topics
Summary
Gain scheduling Use scheduling variables to select among multiple controllers
Self-tuning regulator Continuous adjustment of controller gains based on updated
model of target system Minimum variance controller
Control input compensates for variability Fuzzy control
Use rules to optimize performance
Recommended