Feedback Control Theory a Computer System s Perspective - - PowerPoint PPT Presentation

feedback control theory
SMART_READER_LITE
LIVE PREVIEW

Feedback Control Theory a Computer System s Perspective - - PowerPoint PPT Presentation

Feedback Control Theory a Computer System s Perspective Introduction Introduction What is feedback control? What is feedback control? Why do computer systems need feedback control? Why do computer systems need feedback


slide-1
SLIDE 1

Feedback Control Theory

a Computer Systemʼs Perspective

 

Introduction Introduction

 

What is feedback control? What is feedback control?

 

Why do computer systems need feedback control? Why do computer systems need feedback control?

 

Control design methodology Control design methodology

 

System modeling System modeling

 

Performance specs/metrics Performance specs/metrics

 

Controller design Controller design

 

Summary Summary

slide-2
SLIDE 2

Control

 

Applying input to cause system variables to conform to desired values called Applying input to cause system variables to conform to desired values called the the reference reference. .

 

Cruise-control car: Cruise-control car: f_engine(t)=? f_engine(t)=?

 speed=60 mph speed=60 mph

 

E-commerce server: E-commerce server: Resource allocation? Resource allocation?   T_response=5 sec T_response=5 sec

 

Embedded networks: Embedded networks: Flow rate? Flow rate?   Delay = 1 sec Delay = 1 sec

 

Computer systems: QoS guarantees Computer systems: QoS guarantees

slide-3
SLIDE 3

Open-loop control

 

Compute control input without continuous variable measurement Compute control input without continuous variable measurement

 

Simple Simple

 

Need to know Need to know EVERYTHING EVERYTHING ACCURATELY ACCURATELY to work right to work right

  Cruise-control car:

Cruise-control car: friction(t), ramp_angle(t) friction(t), ramp_angle(t)

  E-commerce server:

E-commerce server: Workload (request arrival rate? resource Workload (request arrival rate? resource consumption?); system (service time? consumption?); system (service time? fa

failures

ilures?)

?)  

Open-loop control fails when Open-loop control fails when

 

We don We donʼ ʼt know everything t know everything

 

We make errors in estimation/modeling We make errors in estimation/modeling

 

Things change Things change

slide-4
SLIDE 4

Feedback (close-loop) Control

Actuator Monitor reference

control input

controlled variable manipulated variable

Controlled System + -

error control function Controller

sample

slide-5
SLIDE 5

Feedback (close-loop) Control

 

Measure variables and use it to compute control input Measure variables and use it to compute control input

 

More complicated (so we need control theory) More complicated (so we need control theory)

 

Continuously measure & correct Continuously measure & correct

  Cruise-control car:

Cruise-control car: measure speed & change engine force measure speed & change engine force

  Ecommerce server:

Ecommerce server: measure response time & admission control measure response time & admission control

  Embedded network:

Embedded network: measure collision & change backoff window measure collision & change backoff window

 

Feedback control theory makes it possible to control well even if Feedback control theory makes it possible to control well even if

 

We don We donʼ ʼt know everything t know everything

 

We make errors in estimation/modeling We make errors in estimation/modeling

 

Things change Things change

slide-6
SLIDE 6

Why feedback control?

Open, unpredictable environments

 

Deeply embedded networks: interaction with physical environments Deeply embedded networks: interaction with physical environments

  Number of working nodes

Number of working nodes

  Number of interesting events

Number of interesting events

  Number of hops

Number of hops

  Connectivity

Connectivity

  Available bandwidth

Available bandwidth

  Congested area

Congested area

 

Internet: E-business, on-line stock broker Internet: E-business, on-line stock broker

 

Unpredictable off-the-shelf hardware Unpredictable off-the-shelf hardware

slide-7
SLIDE 7

Why feedback control?

We want QoS guarantees

 

Deeply embedded networks Deeply embedded networks

  Update intruder position every 30 sec

Update intruder position every 30 sec

  Report fire <= 1 min

Report fire <= 1 min

 

E-business server E-business server

  Purchase completion time <= 5 sec

Purchase completion time <= 5 sec

  Throughput >= 1000 transaction/sec

Throughput >= 1000 transaction/sec

 

The problem: provide QoS guarantees in open, unpredictable The problem: provide QoS guarantees in open, unpredictable environments environments

slide-8
SLIDE 8

Advantage of feedback control theory

 

Adaptive resource management heuristics Adaptive resource management heuristics

  L

Laborious design/tuning/testing iterations aborious design/tuning/testing iterations

  N

Not enough confidence in face of untested workload

  • t enough confidence in face of untested workload

 

Queuing theory Queuing theory

  Doesn

Doesnʼ ʼt handle feedbacks t handle feedbacks

  Not good at characterizing transient behavior in overload

Not good at characterizing transient behavior in overload

 

Feedback control theory Feedback control theory

  Systematic theoretical approach for analysis and design

Systematic theoretical approach for analysis and design

  Predict system response and stability to input

Predict system response and stability to input

slide-9
SLIDE 9

Outline

 

Introduction Introduction

 

What is feedback control? What is feedback control?

 

Why do today Why do todayʼ ʼs computer systems need feedback control? s computer systems need feedback control?

 

Control design methodology Control design methodology

 

System modeling System modeling

 

Performance specs/metrics Performance specs/metrics

 

Controller design Controller design

 

Summary Summary

slide-10
SLIDE 10

Control design methodology

Controller Design

Root-Locus PI Control

Requirement Analysis Modeling

analytical system IDs

Dynamic model Control algorithm Performance Specifications Satisfy

slide-11
SLIDE 11

System Models

 

Linear Linear vs

  • vs. non-linear (differential

. non-linear (differential eqns eqns) )

 

Deterministic Deterministic vs

  • vs. Stochastic

. Stochastic

 

Time-invariant Time-invariant vs

  • vs. Time-varying

. Time-varying

  Are coefficients functions of time?

Are coefficients functions of time?

 

Continuous-time Continuous-time vs

  • vs. Discrete-time

. Discrete-time

 

System ID System ID vs

  • vs. First Principle

. First Principle

slide-12
SLIDE 12

Dynamic Model

 

Computer systems are Computer systems are dynamic dynamic

 

Current output depends on Current output depends on “ “history history” ”

 

Characterize relationships among system variables Characterize relationships among system variables

  • Differential equations (time domain)

Differential equations (time domain)

) ( ) ( ) ( ) ( ) (

1 1 2

t u b t u b t y a t y a t y a + = + +

  • Transfer functions (frequency domain)

Y(s) = G(s)U(s)

2 2 1 1 1 2 2 1

) ( p s c p s c a s a s a b s b s G ! + ! = + + + =

  • Block diagram (pictorial)

C(s) R(s) Y(s)

  • G(s)
slide-13
SLIDE 13

Example

Utilization control in a video server

 

Periodic task T Periodic task Ti

i corresponding to each video stream i

corresponding to each video stream i

 

c[i]: processing time, p[i]: period c[i]: processing time, p[i]: period

 

Stream Stream i iʼ ʼs s requested CPU utilization: u[i]=c[i]/p[i] requested CPU utilization: u[i]=c[i]/p[i]

 

Total CPU utilization Total CPU utilization: U(t)= : U(t)=Σ

Σ{k}

{k}u[k], {k} is the set of active streams

u[k], {k} is the set of active streams

 

Completion rate Completion rate: : R Rc

c(t)= (

(t)= (Σ

Σ{

{kc kc} }u[m])/

u[m])/Δ Δt t, where {m} is the set of terminated video , where {m} is the set of terminated video streams during [t, t+ streams during [t, t+Δ Δt t] ]

 

Unknown Unknown

 

Admission rate Admission rate: R : Ra

a(t)= (

(t)= (Σ

Σ{ka}

{ka}u[j])/

u[j])/Δ Δt t, where {j} is the set of admitted streams during [t, , where {j} is the set of admitted streams during [t, t+ t+Δ Δt t] ]

 

Problem: design an admission controller to guarantee U(t)= Problem: design an admission controller to guarantee U(t)=U Us

s regardless of

regardless of R Rc

c(t)

(t)

slide-14
SLIDE 14

Model

Differential equation U(t) Ra(t) C? Us

  • CPU

Rc(t)

  • Model (differential equation):

!

=

" =

t c a

d R R t U )) ( ) ( ( ) (

#

# # #

  • Error: E(t)=Us-U(t)
  • Controller C? E(t) ⇒ Ra(t)
slide-15
SLIDE 15

 

Three ways of system modeling Three ways of system modeling

A Diversion to Math

System representations

u(t) g(t) y(t)

!

" = =

t

d u t g t u t g t y ) ( ) ( ) ( * ) ( ) ( # # #

  • Time domain: convolution; differential equations.

U(s) G(s) Y(s)

) ( ) ( ) ( s U s G s Y =

  • s (frequency) domain: multiplication

s-domain is a simple & powerful “language” for control analysis

  • Block diagram: pictorial
slide-16
SLIDE 16

 

Laplace Laplace transform of a signal f(t) transform of a signal f(t)

A Diversion to Math

Laplace transform

!

" #

#

= = ) ( )] ( [ ) ( dt e t f t f L s F

st

where s=σ+iω is a complex variable.

  • Laplace transform is a translation from time-domain to

s-domain

  • Differential equation ⇒ Polynomial function

) ( ) ( ) ( ) ( ) (

1 1 2

t u b t u b t y a t y a t y a + = + +

  • )

( ) (

1 2 2 1

s U a s a s a b s b s Y

  • +

+ + = !

slide-17
SLIDE 17

 

Basic translations Basic translations

 

Impulse function Impulse function f(t)= f(t)=δ δ(t) (t) ⇔ ⇔ F(s)=1 F(s)=1

 

Step signal Step signal f(t)=a f(t)=a•

  • 1(t)

1(t) ⇔ ⇔ F(s)=1/s F(s)=1/s

 

Ramp signal Ramp signal f(t)=a f(t)=a•

  • t

t ⇔ ⇔ F(s)=a/s F(s)=a/s2

2

 

Exp signal Exp signal f(t)=e f(t)=eat

at

⇔ ⇔ F(s)=1/(s-a) F(s)=1/(s-a)

 

Sinusoid signal Sinusoid signal f(t)=sin(at) f(t)=sin(at) ⇔ ⇔ F(s)=a/(s F(s)=a/(s2

2+a

+a2

2)

)

 

Composition rules Composition rules

 

Linearity Linearity L L[af(t)+bg(t [af(t)+bg(t)] = )] = a aL L[f(t)]+b [f(t)]+bL L[g(t [g(t)] )]

 

Differentiation Differentiation L L[df(t)/dt [df(t)/dt] = ] = sF(s sF(s) ) – – f(0 f(0-

  • )

)

 

Integration Integration L L[ [∫ ∫t

tf(

f(τ τ)d )dτ τ] = F(s)/s ] = F(s)/s

A Diversion to Math

Laplace transform

slide-18
SLIDE 18

A Diversion to Math

Transfer function

 

Modeling a linear time-invariant (LTI) system Modeling a linear time-invariant (LTI) system

 

G(s) = Y(s)/U(s) G(s) = Y(s)/U(s) ⇒ ⇒ Y(s) = G(s)U(s) Y(s) = G(s)U(s)

U(s) G(s) Y(s)

2 2 1 1 1 2 2 1

) ( p s c p s c a s a s a b s b s G ! + ! = + + + =

E.g., a second order system with poles p1 and p2

slide-19
SLIDE 19

A Diversion to Math

Poles and Zeros

 

The response of a linear time-invariant (LTI) system The response of a linear time-invariant (LTI) system

!

= = = " " " "

= # " + + " + " = " $ " $ = + + + + + + =

n i t p i n n i n i i m i n n n n m m m m

i

e C t f p s C p s C p s C p s z s K a s a s a b s b s b s F

1 2 2 1 1 1 1 1 1 1 1

) ( ... ) ( ) ( ... ... ) (

{pi} are poles of the function and decide the system behavior

slide-20
SLIDE 20

A Diversion to Math

Time response vs. pole location

  • f’(t) = ept, p = a+bj

Unstable Stable

slide-21
SLIDE 21

A Diversion to Math

Block diagram

 

A pictorial tool to represent a system based on transfer functions and signal A pictorial tool to represent a system based on transfer functions and signal flows flows

 

Represent a feedback control system Represent a feedback control system C(s) R(s) Y(s)

  • Go(s)

R(s) Y(s) Gc(s)

) ( ) ( ) ( ) ( ) ( 1 ) ( ) ( s R s G s Y s G s C s G s C G

c

  • c

= + =

slide-22
SLIDE 22

Back to

Our utilization control example U(t) Ra(t) C? Us

  • CPU

Rc(t)

  • Model (differential equation):

!

=

" =

t c a

d R R t U )) ( ) ( ( ) (

#

# # #

  • Error: E(t)=Us-U(t)
  • Controller C? E(t) ⇒ Ra(t)
slide-23
SLIDE 23

Model

Transfer func. & block diag.

 

Inputs: reference U Inputs: reference Us

s(s) = U

(s) = Us

s/s; completion rate

/s; completion rate R Rc

c(s

(s) )

 

Close-loop system transfer functions Close-loop system transfer functions

 

U Us

s(s) as input:

(s) as input: G G1

1(s) = C(s)G

(s) = C(s)Go

  • (s)/(1+C(s)G

(s)/(1+C(s)Go

  • (s))

(s))

 

R Rc

c(s

(s) as input: ) as input: G G2

2(s) = G

(s) = Go

  • (s)/(1+C(s)G

(s)/(1+C(s)Go

  • (s))

(s))

 

Output: U(s)=G Output: U(s)=G1

1(s)U

(s)Us

s/s+G

/s+G2

2(s)R

(s)Rc

c(s)

(s)

s s G s s R s R s U d R R t U

  • a

a t c a

1 ) ( ) ( ) ( ) ( )) ( ) ( ( ) ( = ! " = ! " = #

= $

$ $ $

  • CPU is modeled as an integrator

Rc(s) Go Us/s Ra(s) U(s) C(s)

slide-24
SLIDE 24

Control design methodology Controller Design

Root-Locus PI Control

Requirement Analysis Modeling

analytical system IDs

Dynamic model Control algorithm Performance Specifications Satisfy

slide-25
SLIDE 25

Design Goals

Performance Specifications

 

Stability Stability

 

Transient response Transient response

 

Steady-state error Steady-state error

 

Robustness Robustness

  Disturbance rejection

Disturbance rejection

  Sensitivity

Sensitivity

slide-26
SLIDE 26

Performance Specs: bounded input,bounded output stability

 

BIBO stability: bounded input results in bounded output. BIBO stability: bounded input results in bounded output.

 

A LTI system is BIBO stable if all poles of its transfer function are in the LHP ( A LTI system is BIBO stable if all poles of its transfer function are in the LHP (∀ ∀p pi

i,

, Re[p Re[pi

i]<0).

]<0).

] Re[ : ) ( ... ) ( ) ( ) ( ) ( ) (

1 2 2 1 1 1 1

> ! " " # " = $ % + + % + % = % & % & = =

! # = = =

'

i t t p i n i t p i n n i n i i m i

p if e C Note e C t y p s C p s C p s C p s z s K s U s G s Y

i i

slide-27
SLIDE 27

Performance Specs

Stability

Unstable Stable

slide-28
SLIDE 28

Performance specifications

Settling time Overshoot

Controlled variable

Time

Reference

±ε% Steady State Transient State Steady state error

slide-29
SLIDE 29

Example: Control & Response in an Email Server (IBM)

Control

(MaxUsers)

Response

(queue length)

Good Slow Bad Useless

slide-30
SLIDE 30

Performance Specs

Steady-state error

 

Steady state (tracking) error of a stable system Steady state (tracking) error of a stable system

)) ( ) ( ( lim ) ( lim t y t r t e e

t t ss

! = =

" # " #

r(t) is the reference input, y(t) is the system output.

  • How accurately can a system achieve the desired state?
  • Final value theorem: if all poles of sF(s) are in the open left-half
  • f the s-plane, then

) ( lim ) ( lim s sF t f

s t ! " !

=

  • Easy to evaluate system long term behavior without solving it

) ( lim ) ( lim s sE t e e

s t ss ! " !

= =

slide-31
SLIDE 31

Performance Specs

Steady-state error

Steady state error of a CPU-utilization control system

U(t) ess=-20% Us

slide-32
SLIDE 32

Performance Specs Robustness

 

Disturbance rejection Disturbance rejection: steady-state error caused by external : steady-state error caused by external disturbances disturbances

 

Can a system track the reference input despite of external disturbances? Can a system track the reference input despite of external disturbances?

 

Denial-of-service attacks Denial-of-service attacks

 

Sensitivity Sensitivity: relative change in steady-state output divided by the relative : relative change in steady-state output divided by the relative change of a system parameter change of a system parameter

 

Can a system track the reference input despite of variations in the system? Can a system track the reference input despite of variations in the system?

 

Increased task execution times Increased task execution times

 

Device failures Device failures

slide-33
SLIDE 33

Performance Specs

Goal of Feedback Control

 

Guarantee stability Guarantee stability

 

Improve transient response Improve transient response

 

Short settling time Short settling time

 

Small overshoot Small overshoot

 

Small steady state error Small steady state error

 

Improve robustness wrt uncertainties Improve robustness wrt uncertainties

 

Disturbance rejection Disturbance rejection

 

Low sensitivity Low sensitivity

slide-34
SLIDE 34

Control design methodology Controller Design

Root-Locus PID Control

Requirement Analysis Modeling

analytical system IDs

Dynamic model Control algorithm Performance Specifications Satisfy

slide-35
SLIDE 35

Controller Design

PID control

 

Proportional-Integral-Derivative (PID) Control Proportional-Integral-Derivative (PID) Control

C(s) R(s) Y(s)

  • Go(s)

E(s) X(s)

s KK s C t e KK t x

d d

= ! =

  • )

( ) ( ) ( K s C t Ke t x = ! = ) ( ) ( ) ( s KK s C d e KK t x

i t i

= ! =

"

) ( ) ( ) ( # #

  • Proportional Control
  • Integral control
  • Derivative control
  • Classical controllers with well-studied properties and tuning rules
slide-36
SLIDE 36

Controller Design

CPU Utilization Control

 

Inputs: set-point U Inputs: set-point Us

s(s) = U

(s) = Us

s/s

/s ; task completion ; task completion R Rc

c(s

(s) )

 

Close-loop system transfer functions Close-loop system transfer functions

 

U Us

s(s) as input:

(s) as input: G G1

1(s) = C(s)G

(s) = C(s)Go

  • (s)/(1+C(s)G

(s)/(1+C(s)Go

  • (s))

(s))

 

R Rc

c(s

(s) as input: ) as input: G G2

2(s) = G

(s) = Go

  • (s)/(1+C(s)G

(s)/(1+C(s)Go

  • (s))

(s))

 

C(s)=? to achieve zero steady-state error: U(t) C(s)=? to achieve zero steady-state error: U(t) → → U Us

s

s s G s s R s R s U d R R t U

  • a

a t c a

1 ) ( ) ( ) ( ) ( )) ( ) ( ( ) ( = ! " = ! " = #

= $

$ $ $

  • CPU is modeled as an integrator

Rc(s) Go Us/s Ra(s) U(s) C(s)

slide-37
SLIDE 37

Proportional Control

Stability

 

Proportional Controller Proportional Controller

 

r ra

a(t

(t)= )=Ke(t Ke(t); ); C(s) = K C(s) = K

 

Transfer functions Transfer functions

 

U Us

s/s as input:

/s as input: G G1

1(s) = K/(s+K)

(s) = K/(s+K)

 

R Rc

c(s

(s) as input: ) as input: G G2

2(s) = 1/(s+K)

(s) = 1/(s+K)

 

Stability Stability

 

Pole p Pole p0

0 = -K<0

= -K<0 ⇔ ⇔ System is BIBO stable System is BIBO stable iff iff K>0 K>0

 

Note: System may shoot to 100% if K<0! Note: System may shoot to 100% if K<0!

Rc(s) Go Us/s Ra(s) U(s) C(s)

slide-38
SLIDE 38

Proportional Control

Steady-state error

 

Assume completion rate Assume completion rate R Rc

c(t

(t) keeps constant for a time period longer than ) keeps constant for a time period longer than the settling time: the settling time: R Rc

c(s

(s)= )=R Rc

c/s

/s

 

System response is System response is

) ( ) ( ) ( ) (

2 1

K s s R KU s s G R s s G U s U

c s c s

+ ! = + =

  • Compute steady-state err using final value theorem,

lim ) ( lim ) ( lim < ! = " ! = + ! = =

# # $ #

K R e K R U K s R KU s sU t U

c ss c s c s s s t

  • P-control cannot achieve the desired CPU utilization Us; instead

it will end up lower by Rc/K Oops!

  • The larger the proportional gain K is, the closer will CPU

utilization approach to Us

slide-39
SLIDE 39

CPU Utilization

Proportional Control U(t) ess=-20% Us

slide-40
SLIDE 40

Proportional-Integral Control

Stability

 

Proportional Controller Proportional Controller

 

r ra

a(t

(t)= )=K(e(t)+K K(e(t)+Ki

i•

∫t

te(

e(τ τ)d )dτ τ) ) C(s) = K(1+K C(s) = K(1+Ki

i/s)

/s)

 

Transfer functions Transfer functions

 

U Us

s/s as input:

/s as input: G G1

1(s) =

(s) =

(Ks+KK

(Ks+KKi

i)/(s

)/(s2

2+Ks+KK

+Ks+KKi

i)

)

 

R Rc

c(s

(s) as input: ) as input: G G2

2(s) = s/(s

(s) = s/(s2

2+Ks+KK

+Ks+KKi

i)

)

 

Stability Stability

 

Poles Re[p Poles Re[p0

0]<0, Re[p

]<0, Re[p0

0]<0

]<0 ⇔ ⇔ System is BIBO stable System is BIBO stable iff iff K>0 & K>0 & K Ki

i>0

>0

Rc(s) Go Us/s Ra(s) U(s) C(s)

slide-41
SLIDE 41

Proportional Control

Steady-state error

 

Assume completion rate Assume completion rate R Rc

c(t

(t) keeps constant for a time period longer than ) keeps constant for a time period longer than the settling time: the settling time: R Rc

c(s

(s)= )=R Rc

c/s

/s

 

System response is System response is

  • Compute steady-state err using final value theorem,
  • PI control can accurately achieve the desired CPU utilization Us √
  • Control analysis gives design guidance

) ( ) ( ) ( ) ( ) (

2 2 1 i s i c s c s

KK Ks s s U KK s R KU s s G R s s G U s U + + + + = + = ) ( lim ) ( lim ) ( lim

2

= ! = + + + + = =

" " # " ss s i s i c s s s t

e U KK Ks s U KK s R KU s sU t U

slide-42
SLIDE 42

CPU Utilization

Proportional-Integral Control U(t) ess=0 ts tr tp Mp= Us

slide-43
SLIDE 43

Controller Design

Summary & pointers

 

PID control: simple, works well in many systems PID control: simple, works well in many systems

 

P control: may have non-zero steady-state error P control: may have non-zero steady-state error

 

I control: improves steady-state tracking I control: improves steady-state tracking

 

D control: may improve stability & transient response D control: may improve stability & transient response

 

Linear continuous time control Linear continuous time control

 

Root-locus design Root-locus design

 

Frequency-response design Frequency-response design

 

State-space design State-space design

 

  • G. F. Franklin et. al.,
  • G. F. Franklin et. al., Feedback control of dynamic systems

Feedback control of dynamic systems

slide-44
SLIDE 44

Discrete Control

 

More useful for computer systems More useful for computer systems

 

Time is discrete; sampled system Time is discrete; sampled system

 

denoted k instead of t denoted k instead of t

 

Main tool is Main tool is z-transform z-transform

 

f f( (k k) ) → → F F( (z z) ) , where , where z z is complex is complex

 

Analogous to Analogous to Laplace Laplace transform for transform for s-domain s-domain

!

" = #

= = ) ( ) ( )] ( [

k k

z k f z F k f Z

slide-45
SLIDE 45

Discrete Modeling

  Difference equation

Difference equation

  V

V( (m m) = ) = a a1

1V

V( (m m-1) +

  • 1) + a

a2

2V

V( (m m-2) +

  • 2) + b

b1

1U

U( (m m-1) +

  • 1) + b

b2

2U

U( (m m-2)

  • 2)

  z

z domain: domain: V V( (z z) = ) = a a1

1z

z-1

  • 1V

V( (z z) + ) + a a2

2z

z-2

  • 2V

V( (z z) + ) + b b1

1z

z-1

  • 1U

U( (z z) + ) + b b2

2z

z-2

  • 2U

U( (z z) )

  Transfer function

Transfer function G G( (z z) = ( ) = (b b1

1z

z + + b b2

2)/(

)/(z z2

2-a

  • a1

1z

z -

  • a

a2

2)

)

  V

V( (m m): output in ): output in m mth

th

sampling window sampling window

  U

U( (m m): input in ): input in m mth

th

sampling window sampling window

  Order

Order n n: #sampling-periods in history affects current performance : #sampling-periods in history affects current performance

  SP = 30 sec, and n = 2

SP = 30 sec, and n = 2   Current system performance depends on Current system performance depends on previous 60 sec previous 60 sec

slide-46
SLIDE 46

Root Locus analysis of Discrete Systems

 

Stability boundary: Stability boundary: | |z z|=1 |=1 (Unit circle) (Unit circle)

 

Settling time = distance from Origin Settling time = distance from Origin

 

Speed = location relative to Speed = location relative to Im Im axis axis

  Right half = slower

Right half = slower

  Left half = faster

Left half = faster

slide-47
SLIDE 47

Effect of discrete poles

|z|=1

Longer settling time

Re(s) Im(s)

Unstable Stable Higher-frequency response

Ts

e z = : Intuition

slide-48
SLIDE 48

Feedback control works in CS

 

U.Mass: network flow controllers (TCP/IP U.Mass: network flow controllers (TCP/IP – – RED) RED)

 

IBM: Lotus Notes admission control IBM: Lotus Notes admission control

 

UIUC: Distributed visual tracking UIUC: Distributed visual tracking

 

UVA UVA

 

Web Caching QoS Web Caching QoS

 

Apache Web Server QoS differentiation Apache Web Server QoS differentiation

 

Active queue management in networks Active queue management in networks

 

Processor thermal control Processor thermal control

 

Online data migration in network storage (with HP) Online data migration in network storage (with HP)

 

Real-time embedded networking Real-time embedded networking

 

Control middleware Control middleware

 

Feedback control real-time scheduling Feedback control real-time scheduling

slide-49
SLIDE 49

Advanced Control Topics

 

Robust Control Robust Control

 

Can the system tolerate noise? Can the system tolerate noise?

 

Adaptive Control Adaptive Control

 

Controller changes over time (adapts) Controller changes over time (adapts)

 

MIMO Control MIMO Control

 

Multiple inputs and/or outputs Multiple inputs and/or outputs

 

Stochastic Control Stochastic Control

 

Controller minimizes variance Controller minimizes variance

 

Optimal Control Optimal Control

 

Controller minimizes a cost function of error and control energy Controller minimizes a cost function of error and control energy

 

Nonlinear systems Nonlinear systems

 

Neuro Neuro-fuzzy control

  • fuzzy control

 

Challenging to derive analytic results Challenging to derive analytic results

slide-50
SLIDE 50

Issues for Computer Science

 

Most systems are non-linear Most systems are non-linear

  But linear approximations may do

But linear approximations may do

  eg

eg, fluid approximations , fluid approximations

 

First-principles First-principles modeling modeling is difficult is difficult

  Use empirical techniques

Use empirical techniques

 

Mapping control objectives to feedback control loops Mapping control objectives to feedback control loops

  ControlWare

ControlWare paper paper

 

Deeply embedded networking Deeply embedded networking

  Massively decentralized control problem

Massively decentralized control problem

  Modelling

Modelling

  Node failures

Node failures