Feedback Control of Computing Systems Presentation subtitle: 20pt Arial Regular, teal R045 | G182 |...

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