DanielSimon MatingControlandComputing

64  Download (0)

Full text

(1)

Overview Statements Computing-aware control Control-aware computing

Mating Control and Computing

Daniel Simon

DEMAR team

INRIA Sophia Antipolis - Méditerranée LIRMM, CNRS UMR 5506, Montpellier http://www.lirmm.fr/demar

(2)

Overview Statements Computing-aware control Control-aware computing

Feedback control paradigm

control

A Dynamic Process S

output objective

U Y

“Make precise systems from uncertain components” Stabilizeunstable systems

Robustnessw.r.t. modeling uncertainties Adaptability w.r.t. operating conditions Performance profile shaping

Danger of instability

February 2014 2 / 28

(3)

Overview Statements Computing-aware control Control-aware computing

Feedback control paradigm

objective

output error

control A

+ Controller Dynamic

Process S output

U = K(e) Y

“Make precise systems from uncertain components” Stabilizeunstable systems

Robustnessw.r.t. modeling uncertainties Adaptability w.r.t. operating conditions Performance profile shaping

Danger of instability

(4)

Overview Statements Computing-aware control Control-aware computing

Feedback control paradigm

objective

output error

control A

+ Controller Dynamic

Process S output

U = K(e) Y

“Make precise systems from uncertain components”

Stabilizeunstable systems

Robustnessw.r.t. modeling uncertainties Adaptability w.r.t. operating conditions Performance profile shaping

Danger of instability

February 2014 2 / 28

(5)

Overview Statements Computing-aware control Control-aware computing

Feedback control paradigm

objective

output error

control A

+ Controller Dynamic

Process S output

U = K(e) Y

“Make precise systems from uncertain components”

Stabilizeunstable systems

Robustnessw.r.t. modeling uncertainties

Adaptability w.r.t. operating conditions Performance profile shaping

Danger of instability

(6)

Overview Statements Computing-aware control Control-aware computing

Feedback control paradigm

objective

output error

control A

+ Controller Dynamic

Process S output

U = K(e) Y

“Make precise systems from uncertain components”

Stabilizeunstable systems

Robustnessw.r.t. modeling uncertainties Adaptability w.r.t. operating conditions Performance profile shaping

Danger of instability

February 2014 2 / 28

(7)

Overview Statements Computing-aware control Control-aware computing

Feedback control paradigm

objective

output error

control A

+ Controller Dynamic

Process S output

U = K(e) Y

“Make precise systems from uncertain components”

Stabilizeunstable systems

Robustnessw.r.t. modeling uncertainties Adaptability w.r.t. operating conditions Performance profile shaping

Danger of instability

(8)

Overview Statements Computing-aware control Control-aware computing

Control objectives

objective

output error

control A

+ Controller Dynamic

Process S output

U = K(e) Y

Design and implementation for:

Control oriented goal

Reaching a specified control performance under shared execution resources constraints;

Computing oriented goal

Improving the robustness and adaptability of self-managed operating systems thanks to feedback loops.

Conflicting constraints!

February 2014 3 / 28

(9)

Overview Statements Computing-aware control Control-aware computing

Control objectives

objective

output error

control A

+ Controller Dynamic

Process S output

U = K(e) Y

Design and implementation for:

Control oriented goal

Reaching a specified control performance under shared execution resources constraints;

Computing oriented goal

Improving the robustness and adaptability of self-managed operating systems thanks to feedback loops.

Conflicting constraints!

(10)

Overview Statements Computing-aware control Control-aware computing

Control objectives

objective

output error

control A

+ Controller Dynamic

Process S output

U = K(e) Y

Design and implementation for:

Control oriented goal

Reaching a specified control performance under shared execution resources constraints;

Computing oriented goal

Improving the robustness and adaptability of self-managed operating systems thanks to feedback loops.

Conflicting constraints!

February 2014 3 / 28

(11)

Overview Statements Computing-aware control Control-aware computing

Implementation

objective

output error

control A

+ Controller Dynamic

Process S output

U = K(e) Y

Continuous time and analogue control Biology

Fluid level Fluid pressure

Continuous electronics

Timing constraints required by the control system’s dynamics

=⇒Real-time system

(12)

Overview Statements Computing-aware control Control-aware computing

Implementation

+

e(k)

ZOH

h h

U(k)

Continuous time

Network Discrete time

Observer CONTROLLER Xd(k)

X(k)

PROCESS

Y(k) U(k) = K(e(k))

dX/dt = f(X,U,t) Y = g(X,U,t)

SAMP

Numerical control and sampling Sampling and A/D conversion Networking

Computing

Control update and D/A conversion

Timing constraints required by the control system’s dynamics

=⇒Real-time system

February 2014 4 / 28

(13)

Overview Statements Computing-aware control Control-aware computing

Implementation

+

e(k)

ZOH

h h

U(k)

Continuous time

Network Discrete time

Observer CONTROLLER Xd(k)

X(k)

PROCESS

Y(k) U(k) = K(e(k))

dX/dt = f(X,U,t) Y = g(X,U,t)

SAMP

Numerical control and sampling Sampling and A/D conversion Networking

Computing

Control update and D/A conversion

Timing constraints required by the control system’s dynamics

=⇒Real-time system

(14)

Overview Statements Computing-aware control Control-aware computing

Current practice

Traditional controller design :separation of concerns betweencontrolandcomputing:

Assumptions

Perfectly periodic process, No jitter, No data-loss

Perfect implementation, based on worst case

Dedicated hardware/software

Consequences

Over-constrained systems Under-using the resources Costly components and tools

=⇒formally provable, but costly and inflexible/unrealistic

February 2014 5 / 28

(15)

Overview Statements Computing-aware control Control-aware computing

Current practice

Traditional controller design :separation of concerns betweencontrolandcomputing:

Assumptions

Perfectly periodic process, No jitter, No data-loss

Perfect implementation, based on worst case

Dedicated hardware/software

Consequences

Over-constrained systems Under-using the resources Costly components and tools

=⇒formally provable, but costly and inflexible/unrealistic

(16)

Overview Statements Computing-aware control Control-aware computing

NCS induced computing constraints

Limited computing powercomputing duration are not negligible

Variable computing powerthey are not constant

Distributed information sourcesdelays, data loss or corruption Many sources of induced delays: computing, preemption, networking. . .

Implementation induced uncertainties (in addition to the usual process uncertainties)

deterioration of a signal transfered through a network.

tk+1+hk

tk

tk+hk

February 2014 6 / 28

(17)

Overview Statements Computing-aware control Control-aware computing

Needs for co-design

Large sets of interconnected sensors/controllers/actuators;

Networked Control Systems - Cyber Physical Systems

Dynamic and uncertain environments;

Heterogeneous components, asynchronous nodes;

Cheap off-the-shelf hardware/software components.

⇒Co-design approach : early integration of constraints from control and computing

Trade off : performance/robustness/energy/costs. . . Holistic view : process + algorithm + execution resources

(18)

Overview Statements Computing-aware control Control-aware computing

Needs for co-design

Large sets of interconnected sensors/controllers/actuators;

Networked Control Systems - Cyber Physical Systems

Dynamic and uncertain environments;

Heterogeneous components, asynchronous nodes;

Cheap off-the-shelf hardware/software components.

⇒Co-design approach : early integration of constraints from control and computing

Trade off : performance/robustness/energy/costs. . . Holistic view : process + algorithm + execution resources

February 2014 7 / 28

(19)

Overview Statements Computing-aware control Control-aware computing

Bridging the gap...

Gathering control & computing control dpt. computing dpt.

Continuous time Uncertain systems Complex dynamics

ODE @K.J. Astrom

Discrete events Determinism Complex data sets

Automata

Heretical but fruitful!

(20)

Overview Statements Computing-aware control Control-aware computing

Pioneering works 1999/2000

Stankovic, Lu, Son and Tao: The Case for Feedback Control Real-Time Scheduling,ECRTS Euromicro1999

Flexible scheduling of web servers

Eker, Hagander and Arzen, A Feedback Scheduler for Realtime Controller Tasks,Control Engineering Practice, Dec. 2000 Sharing a computing resource between process controlers

New class of control problem :

Control ofnidentical pendulums under CPU power constraint nLQ controllers, periodhi, exec. timeCi, single CPU

Cost functionJ(h) = 1 h

Z h 0

xT(t) uT(t) Q

x(t) u(t)

dt Problem: min

hi

J = Xn

i=1

Ji(hi)under constraint Xn

i=1

Ci/hi ≤Ud

theoreticfeedback-scheduler: h(k +1) =f(∆c(k),Uref(k)) on-line solving of Riccati and Lyapunov equations

too costly for real-time implementation. . .

. . . although quite simple : LTI process, no delay, no jitter, no data loss, no uncertainty

February 2014 9 / 28

(21)

Overview Statements Computing-aware control Control-aware computing

Pioneering works 1999/2000

New class of control problem :

Control ofnidentical pendulums under CPU power constraint nLQ controllers, periodhi, exec. timeCi, single CPU

Cost functionJ(h) = 1 h

Z h 0

xT(t) uT(t) Q

x(t) u(t)

dt

Problem: min

hi J = Xn

i=1

Ji(hi)under constraint Xn

i=1

Ci/hi ≤Ud

theoreticfeedback-scheduler: h(k +1) =f(∆c(k),Uref(k)) on-line solving of Riccati and Lyapunov equations

too costly for real-time implementation. . .

. . . although quite simple : LTI process, no delay, no jitter, no data loss, no uncertainty

(22)

Overview Statements Computing-aware control Control-aware computing

Pioneering works 1999/2000

New class of control problem :

Control ofnidentical pendulums under CPU power constraint nLQ controllers, periodhi, exec. timeCi, single CPU

Cost functionJ(h) = 1 h

Z h 0

xT(t) uT(t) Q

x(t) u(t)

dt Problem: min

hi J = Xn

i=1

Ji(hi)under constraint Xn

i=1

Ci/hi ≤Ud

theoreticfeedback-scheduler: h(k +1) =f(∆c(k),Uref(k)) on-line solving of Riccati and Lyapunov equations

too costly for real-time implementation. . .

. . . although quite simple : LTI process, no delay, no jitter, no data loss, no uncertainty

February 2014 9 / 28

(23)

Overview Statements Computing-aware control Control-aware computing

Pioneering works 1999/2000

New class of control problem :

Control ofnidentical pendulums under CPU power constraint nLQ controllers, periodhi, exec. timeCi, single CPU

Cost functionJ(h) = 1 h

Z h 0

xT(t) uT(t) Q

x(t) u(t)

dt Problem: min

hi J = Xn

i=1

Ji(hi)under constraint Xn

i=1

Ci/hi ≤Ud theoreticfeedback-scheduler: h(k +1) =f(∆c(k),Uref(k))

on-line solving of Riccati and Lyapunov equations too costly for real-time implementation. . .

. . . although quite simple : LTI process, no delay, no jitter, no data loss, no uncertainty

(24)

Overview Statements Computing-aware control Control-aware computing

Pioneering works 1999/2000

New class of control problem :

Control ofnidentical pendulums under CPU power constraint nLQ controllers, periodhi, exec. timeCi, single CPU

Cost functionJ(h) = 1 h

Z h 0

xT(t) uT(t) Q

x(t) u(t)

dt Problem: min

hi J = Xn

i=1

Ji(hi)under constraint Xn

i=1

Ci/hi ≤Ud

theoreticfeedback-scheduler: h(k +1) =f(∆c(k),Uref(k)) on-line solving of Riccati and Lyapunov equations

too costly for real-time implementation. . .

. . . although quite simple : LTI process, no delay, no jitter, no data loss, no uncertainty

February 2014 9 / 28

(25)

Overview Statements Computing-aware control Control-aware computing

Pioneering works 1999/2000

New class of control problem :

Control ofnidentical pendulums under CPU power constraint nLQ controllers, periodhi, exec. timeCi, single CPU

Cost functionJ(h) = 1 h

Z h 0

xT(t) uT(t) Q

x(t) u(t)

dt Problem: min

hi J = Xn

i=1

Ji(hi)under constraint Xn

i=1

Ci/hi ≤Ud

theoreticfeedback-scheduler: h(k +1) =f(∆c(k),Uref(k)) on-line solving of Riccati and Lyapunov equations

too costly for real-time implementation. . .

. . . although quite simple : LTI process, no delay, no jitter, no data loss, no uncertainty

(26)

Overview Statements Computing-aware control Control-aware computing

New perspective: Control & Computing Co-Design

Feedback loops are _not_ hard real-time

New degrees of freedom to implement control Asynchronous sampling, anytime control Varying sampling intervals

Data loss and (m,k)-firm policies

Computing devices can be object of feedback control

Benefits of feedback

Adaptive w.r.t. operating conditions

Robustness w.r.t. process modeling uncertainties

February 2014 10 / 28

(27)

Overview Statements Computing-aware control Control-aware computing

New perspective: Control & Computing Co-Design

Feedback loops are _not_ hard real-time New degrees of freedom to implement control

Asynchronous sampling, anytime control Varying sampling intervals

Data loss and (m,k)-firm policies

Computing devices can be object of feedback control

Benefits of feedback

Adaptive w.r.t. operating conditions

Robustness w.r.t. process modeling uncertainties

(28)

Overview Statements Computing-aware control Control-aware computing

New perspective: Control & Computing Co-Design

Feedback loops are _not_ hard real-time New degrees of freedom to implement control

Asynchronous sampling, anytime control Varying sampling intervals

Data loss and (m,k)-firm policies

Computing devices can be object of feedback control

Benefits of feedback

Adaptive w.r.t. operating conditions

Robustness w.r.t. process modeling uncertainties

February 2014 10 / 28

(29)

Overview Statements Computing-aware control Control-aware computing

New perspective: Control & Computing Co-Design

Feedback loops are _not_ hard real-time New degrees of freedom to implement control

Asynchronous sampling, anytime control Varying sampling intervals

Data loss and (m,k)-firm policies

Computing devices can be object of feedback control Benefits of feedback

Adaptive w.r.t. operating conditions

Robustness w.r.t. process modeling uncertainties

(30)

Overview Statements Computing-aware control Control-aware computing

Working directions

Computing-aware control Control-aware computing

Feedback control of computing devices Feedback scheduling

Control of/over networks

Integrated control and computing

February 2014 11 / 28

(31)

Overview Statements Computing-aware control Control-aware computing

Stability and robustness

+

L(j )ωc

Re L(s) Im L(s)

−1 1/GM

L(j )ω180

L(j )ω

MM ΦM

ω0 ωinf

Robustness assessment for Linear SISO systems : gain margin, phase margin

delay marginΦωM

c

module margin jitter margin

(32)

Overview Statements Computing-aware control Control-aware computing

Stability and robustness

+

L(j )ωc

Re L(s) Im L(s)

−1 1/GM

L(j )ω180

L(j )ω

MM ΦM

ω0 ωinf

Robustness assessment for Linear SISO systems : gain margin, phase margin

delay marginΦωM

c

module margin jitter margin

February 2014 12 / 28

(33)

Overview Statements Computing-aware control Control-aware computing

Stability and robustness

+

Re L(s) Im L(s)

−1 1/GM

ω180

L(j )ω MM ωc L(j )

ΦM

ω0 ωinf

L(j )

Robustness assessment for Linear SISO systems : gain margin, phase margin

delay marginΦωM

c

module margin jitter margin

(34)

Overview Statements Computing-aware control Control-aware computing

Jitter and control

Jitter is claimed to be harmful. . .

. . . how to minimize jitter?

Comparative Assessment and Evaluation of Jitter Control Methods, G. Buttazzo and A.Cervin, RTNS 2007.

Strategies to reduce jitter : RM, send control ASAP

T T T

T

DM, advanced deadlines

T T T

T D D D D

Non-Preemptive scheduling

send at period boundaries

T T T

T

⇒add a systematic delay

null jitter, but worst control performance!

February 2014 13 / 28

(35)

Overview Statements Computing-aware control Control-aware computing

Jitter and control

Jitter is claimed to be harmful. . .

. . . how to minimize jitter?

Comparative Assessment and Evaluation of Jitter Control Methods, G. Buttazzo and A.Cervin, RTNS 2007.

Strategies to reduce jitter : RM, send control ASAP

T T T

T

DM, advanced deadlines

T T T

T D D D D

Non-Preemptive scheduling

send at period boundaries

T T T

T

⇒add a systematic delay

null jitter, but worst control performance!

(36)

Overview Statements Computing-aware control Control-aware computing

Jitter and control

Jitter is claimed to be harmful. . .

. . . how to minimize jitter?

Comparative Assessment and Evaluation of Jitter Control Methods, G. Buttazzo and A.Cervin, RTNS 2007.

Strategies to reduce jitter : RM, send control ASAP

T T T

T

DM, advanced deadlines

T T T

T D D D D

Non-Preemptive scheduling send at period boundaries

T T T

T

⇒add a systematic delay null jitter, but worst control performance!

February 2014 13 / 28

(37)

Overview Statements Computing-aware control Control-aware computing

Jitter and control

Jitter is claimed to be harmful. . .

. . . how to minimize jitter?

Comparative Assessment and Evaluation of Jitter Control Methods, G. Buttazzo and A.Cervin, RTNS 2007.

Strategies to reduce jitter : RM, send control ASAP

T T T

T

DM, advanced deadlines

T T T

T D D D D

Non-Preemptive scheduling send at period boundaries

T T T

T

⇒add a systematic delay null jitter, but worst control performance!

(38)

Overview Statements Computing-aware control Control-aware computing

Control of systems with delays

Generalization to MIMO sampled data systems :

Continuous-timeapproaches usingLyapunov Theorem:

takes into accounttime-varying delays, data loss, plant uncertainties, actuators saturations,...

. . . See for instance, Fridman, Seuret, Richard, Naghstabrizi, . . .

February 2014 14 / 28

(39)

Overview Statements Computing-aware control Control-aware computing

Robust control and scheduling

Slackened real-time scheduling(with A. Seuret - Gipsa&LAAS) CIFRE Airbus, EU patent 11306103.0-2224

Reduced Computing Slot

BCET (Best Case Exec. Time)

Tslot WCET

(Worst Case Exec. Time) Execution TimeTex

h1 h2 Saves computing cycles

Reduced latencies

Deadline miss Sampling disturbances

N, max. consecutive deadline miss? Tslotfor a given failure rate?

x(t) = (A+∆˙ µA(t))x(t)+(B+∆µB(t))u(t) Stability of systems with delays, varying sampling and uncertainties

(Lyapunov-Krasovskii functionals)

(40)

Overview Statements Computing-aware control Control-aware computing

Robust control and scheduling

Slackened real-time scheduling(with A. Seuret - Gipsa&LAAS) CIFRE Airbus, EU patent 11306103.0-2224

Reduced Computing Slot

BCET (Best Case Exec. Time)

Tslot WCET

(Worst Case Exec. Time) Execution TimeTex

h1 h2 Saves computing cycles

Reduced latencies

Deadline miss Sampling disturbances

N, max. consecutive deadline miss?

Tslotfor a given failure rate?

x(t) = (A+∆˙ µA(t))x(t)+(B+∆µB(t))u(t) Stability of systems with delays, varying sampling and uncertainties

(Lyapunov-Krasovskii functionals)

February 2014 15 / 28

(41)

Overview Statements Computing-aware control Control-aware computing

Robust control and scheduling

Slackened real-time scheduling(with A. Seuret - Gipsa&LAAS) CIFRE Airbus, EU patent 11306103.0-2224

Reduced Computing Slot

BCET (Best Case Exec. Time)

Tslot WCET

(Worst Case Exec. Time) Execution TimeTex

h1 h2 Saves computing cycles

Reduced latencies

Deadline miss Sampling disturbances

N, max. consecutive deadline miss?

Tslotfor a given failure rate?

˙

x(t) = (A+∆µA(t))x(t)+(B+∆µB(t))u(t) Stability of systems with delays, varying sampling and uncertainties

(Lyapunov-Krasovskii functionals)

(42)

Overview Statements Computing-aware control Control-aware computing

Computing-aware control: Adaptive control rate

ctrl2ctrl3

CPU activity h

control interval

Controlled output reference

Process Controller sensor schedule Controller

Process Scheduling

CPU load adaptation using varying control intervals frequency scaling capabilities of modern chips accommodation with scheduled sensors stability whateverhchangeh[hmin,hmax] specified performance level

self triggered, event triggered, switched systems,Lyapunov, Lie algebras, . . .

February 2014 16 / 28

(43)

Overview Statements Computing-aware control Control-aware computing

Computing-aware control: Adaptive control rate

Control with varying intervals:

Linear Parameter Varying(with O. Sename - Gipsa-lab)

LPV model,his a varying parameter (among others) Hsynthesis with frequency dependent templates

z w

∆(k) 0 0 ∆(k)

P(z)

K(z)

P0(z)

sampling dependent robust controller K(z,h) implementation with standard RT tools easy integration in QoS layer

0 10 20 30 40 50 60 70 80 90

−0.5 0 0.5

θ [rad]

Pendulum angle

0 10 20 30 40 50 60 70 80 90

−5 0 5

u []

Control input

0 10 20 30 40 50 60 70 80 90

0 1 2 3 4x 10−3

Time [s]

h [s]

h u r θ

(44)

Overview Statements Computing-aware control Control-aware computing

Computing-aware control: Adaptive control rate

Control with varying intervals:

Linear Parameter Varying(with O. Sename - Gipsa-lab)

LPV model,his a varying parameter (among others) Hsynthesis with frequency dependent templates

z w

∆(k) 0 0 ∆(k)

P(z)

K(z)

P0(z)

sampling dependent robust controller K(z,h) implementation with standard RT tools easy integration in QoS layer

0 10 20 30 40 50 60 70 80 90

−0.5 0 0.5

θ [rad]

Pendulum angle

0 10 20 30 40 50 60 70 80 90

−5 0 5

u []

Control input

0 10 20 30 40 50 60 70 80 90

0 1 2 3 4x 10−3

Time [s]

h [s]

h u r θ

February 2014 16 / 28

(45)

Overview Statements Computing-aware control Control-aware computing

Control-aware computing

+ Uk

Process state estimates

Y RTOS Scheduler

Process objectives (QoC)

Scheduling Scheduling Policy

WCET

(priority, period) Parameters

SAMP Controller

Process ZOH Process

Software architecture

Application analysis -> reducing latencies on critical paths off-line optimization

Control aware flexible scheduling policies weakly-hardconstraints

(m,k)-firm dropping policies

Control-aware QoS, e.g. elastic tasks Bandwidth allocation: Control Server

(46)

Overview Statements Computing-aware control Control-aware computing

Control task structure

Splitting the control algorithm Relative urgency/importance Latency reduction on critical paths while(1){

Wait-Clock A/D-Conversion

Calculate-Outputu(k) =f(y(k),xˆ(k−1), ...) Update-State xˆ(k) =g(y(k),xˆ(k −1), ...) D/A-Conversion

}

while(1){ Wait-Clock A/D-Conversion

Calculate-OutputPhighu(k) =f(y(k),xˆ(k−1), ...) D/A-Conversion

Update-StatePlow xˆ(k) =g(y(k),xˆ(k−1), ...) }

Fast stabilizing loop/ slow navigation loop

Implementation : multitasking/multi-rate (Orccad features)

February 2014 18 / 28

(47)

Overview Statements Computing-aware control Control-aware computing

Control task structure

Splitting the control algorithm Relative urgency/importance Latency reduction on critical paths while(1){

Wait-Clock A/D-Conversion

Calculate-Outputu(k) =f(y(k),xˆ(k−1), ...) D/A-Conversion

Update-State xˆ(k) =g(y(k),xˆ(k −1), ...) }

while(1){ Wait-Clock A/D-Conversion

Calculate-OutputPhighu(k) =f(y(k),xˆ(k−1), ...) D/A-Conversion

Update-StatePlow xˆ(k) =g(y(k),xˆ(k−1), ...) }

Fast stabilizing loop/ slow navigation loop

Implementation : multitasking/multi-rate (Orccad features)

(48)

Overview Statements Computing-aware control Control-aware computing

Control task structure

Splitting the control algorithm Relative urgency/importance Latency reduction on critical paths while(1){

Wait-Clock A/D-Conversion

Calculate-OutputPhighu(k) =f(y(k),xˆ(k−1), ...) D/A-Conversion

Update-StatePlow xˆ(k) =g(y(k),xˆ(k−1), ...) }

Fast stabilizing loop/ slow navigation loop

Implementation : multitasking/multi-rate (Orccad features)

February 2014 18 / 28

(49)

Overview Statements Computing-aware control Control-aware computing

Control task structure

Splitting the control algorithm Relative urgency/importance Latency reduction on critical paths while(1){

Wait-Clock A/D-Conversion

Calculate-OutputPhighu(k) =f(y(k),xˆ(k−1), ...) D/A-Conversion

Update-StatePlow xˆ(k) =g(y(k),xˆ(k−1), ...) }

Fast stabilizing loop/ slow navigation loop

Implementation : multitasking/multi-rate (Orccad features)

(50)

Overview Statements Computing-aware control Control-aware computing

Flexible scheduling policies

Finding scheduling parameters?

Cost functions period/delay w.r.t. performance Off-line non-linear optimization (simplex)

Bandwidth allocation: Control Server

each controller reserves a CPU fraction (CBS) Minimization of QoS : Elastic Tasks

QoS sensitivity w.r.t. period (stiffness)

February 2014 19 / 28

(51)

Overview Statements Computing-aware control Control-aware computing

Control aware computing: Feedback scheduling

Uk

+ Y

Computation/

Networking Objectives

CPU/network state load/latency estimates

Scheduling Controller

RTOS Scheduler

Scheduling Parameters (QoC)

Process objectives

Process state estimates SAMP

Process

Controller Process

+

ZOH

Feedback schedulers :

Control of the scheduling parameters Simple dynamics, complex data sets Discrete process, fluid models Free sensors and actuators

(52)

Overview Statements Computing-aware control Control-aware computing

Web server modeling

Server

Ne

To

α

State:

MPL

Clients

N M

Ti

L α

Control Input:

Outputs:

Exogenous Inputs:

55 60 65 70 75 80

0 2 4 6 8 10 12 14 16 18 20

Workload amount (#clients)

Abandon rate (%)

Real system

Naive model Improved model

input/output latency:

L(Ne,M,t) =a(M,t)Ne2+b(M,t)Ne+c(M,t) rejection rate:α(t) =˙ −1

α(t)−AC(t)Ne(t) ·

1−TToi(t(t))

February 2014 21 / 28

(53)

Overview Statements Computing-aware control Control-aware computing

Control objectives

Maximizing availabilityAC = 1+γ Ne

L(L−Lmax)

Maximizing performanceAC = α−γ αNe

α(α−αmax)

γL andγα: tuning parameters

0 5 10 15 20

0 2 4 6 8 10 12 14 16 18

Time (min)

Latency (s)

Latency with control Latency without control Lmax

(a) Performance - Latency

0 10 20 30 40 50

0 2 4 6 8 10 12 14 16

Time (min)

Abandon rate (%)

Abandon rate with control Abandon rate without control

(b) Availability - Rejection rate

(54)

Overview Statements Computing-aware control Control-aware computing

Control of a H.264 video decoder

Statement:

Constant display rate (25 fps)

Decoding several frames ahead of display

Model:qˆk+1= (1−α) ˆqk +αqk−1

Frame controller: Damping of frames decoding overruns

+

Frame Controller δi+1=β.δi

Computing Speed Controller

i Ω(t),Λ(t)

CPU - DVFS H264 decoder

i

τi δi ri+1

ˆi+1

Vlevel Flevel

drk+1 =tk+1+β×δk, 0< β <1

February 2014 23 / 28

(55)

Overview Statements Computing-aware control Control-aware computing

Control of a H.264 video decoder

Implementation under Linux, Posix Real-time library

0 100 200 300 400 500 600 700 800 900 1000

−0.05

−0.04

−0.03

−0.02

−0.01 0 0.01 0.02 0.03 0.04 0.05

Frame number Deadline error (ms) (req. deadline: 50 ms)

Experience with deadline control error δk

0 100 200 300 400 500 600 700 800 900 1000

−6

−5

−4

−3

−2

−1 0 1 2

Frame number Ddeadline error (ms) (req. deadline: 50 ms)

Experience without control error δ

k

Trames 1000

Pénalités cumulées

−4.10

−6.10

−8.10

−10.10 0

−2.106 6 6 6 6

40ms, avec ctrl 50ms, avec ctrl 45ms, avec ctrl

50ms, sans ctrl

estimated energy saving:

upto 24 %

(56)

Overview Statements Computing-aware control Control-aware computing

Feedback scheduling a robot controller

q

G PA10

Coriolis

Inertie

Gravite GeneTraj

Torque Mux Sched_Ctrl Gc

Gi

Gg

Gt

End

Sing q

qd

j Mission

Sequencing Supervision Exceptions

manager

Linux/Xenomai

February 2014 24 / 28

(57)

Overview Statements Computing-aware control Control-aware computing

The ORCCAD model

Reactive shell START

Drivers

Observer Observer Control Control

Control law (Discretized time)

T2_UnStableCam

STARTED Good_EndT3_SENSOR_FAILED ABORT Timeout

Suspend Resume

UnStableCam

ABSTRACT VIEW (Discrete events)

RobotTasks

Feedback Control

Cyclic real-time data flow Event-based view

RobotProcedures

Discrete Events Control Incremental design Exception processing Mission definition Bottom up approach, from control to applications

(58)

Overview Statements Computing-aware control Control-aware computing

The ORCCAD model

Reactive shell START

Drivers

Observer Observer Control Control

Control law (Discretized time)

T2_UnStableCam

STARTED Good_EndT3_SENSOR_FAILED ABORT Timeout

Suspend Resume

UnStableCam

ABSTRACT VIEW (Discrete events)

q

G PA10

Coriolis

Inertie

Gravite GeneTraj

Torque Mux Sched_Ctrl Gc

Gi

Gg Gt

End Sing q

qd

j Mission

Sequencing Supervision Exceptions manager

Linux/Xenomai

Feedback control action Control algorithm definition Invariant structure for RT life Modular design

Functional parameters Timing parameters Event based behaviour

Precondition (opt. timeout) Synchronization

Exceptions Weak T1 Strong T2 Fatal T3

Postcondition (opt. timeout)February 2014 25 / 28

(59)

Overview Statements Computing-aware control Control-aware computing

Feedback scheduling a robot controller (Cont’d)

0 0.5 1 1.5 2 2.5

0 0.002 0.004 0.006 0.008 0.01 0.012 0.014 0.016 0.018 0.02

Time [s]

Periods [s]

Task periods Inertia Gravity Coriolis

0 0.5 1 1.5 2 2.5

0 0.1 0.2 0.3 0.4 0.5

Time [s]

Load

Task loads

Inertia Gravity Coriolis

0 0.5 1 1.5 2 2.5

0 0.2 0.4 0.6 0.8 1

Time [s]

Load

Processor Load Regulated Reference Integrator Grand total

0 0.5 1 1.5 2 2.5

−250

−200

−150

−100

−50 0 50 100 150

Time [s]

Joint torques [mN]

Commands

1 2 3 4 5 6 7

Intervals CPU load Torques

Cost of the FS < 1%

Negligible or moderate computing cost Robust w.r.t. deadlines miss

No further need for wcet evaluation :=) Feasible with off-the-shelf hard/soft

(60)

Overview Statements Computing-aware control Control-aware computing

Integrating Control and Scheduling

+ Uk +

Controller Scheduling

Scheduling Parameters

Process state estimates CPU/network state load/latency estimates

Y plant modelling and actual QoCs

QoS Global objective

supervision exceptions handling

RTOS Scheduler

(QoC) Process objectives

SAMP Controller

Process ZOH Process

Hybrid complex dynamics Non convex cost functions

QoS formulation gathering control and computing Case studies :

LQ control +(m,k)-firm policy Feedback scheduled MPC

Hvarying sampling + elastic scheduler Convex optimization for LQ period selection Asynchronous (event-based) control

February 2014 27 / 28

(61)

Overview Statements Computing-aware control Control-aware computing

Integrating Control and Scheduling

+ Uk +

Controller Scheduling

Scheduling Parameters

Process state estimates CPU/network state load/latency estimates

Y plant modelling and actual QoCs

QoS Global objective

supervision exceptions handling

RTOS Scheduler

(QoC) Process objectives

SAMP Controller

Process ZOH Process

fmin fmax

Computingcost Controlperformance

unstable

best level

cost-effective trade-offs bestcase worstcase average

(62)

Overview Statements Computing-aware control Control-aware computing

Integrating Control and Scheduling

fmin fmax

Computingcost Controlperformance

unstable

best level

cost-effective trade-offs bestcase worstcase average

Cost effective implementation of real-time control Average cases rather than worst cases

Self-management of computing devices New viewpoint on control systems safety Provability, Certification?

February 2014 27 / 28

(63)

Overview Statements Computing-aware control Control-aware computing

any questions?

Ordonnancement dans les Systèmes Temps Réel Hermes, Maryline Chetto ed., 2014

Chapitre 11: Conception conjointe commande-ordonnancement

(64)

Overview Statements Computing-aware control Control-aware computing

any questions?

Thank you for your attention

February 2014 28 / 28

Figure

Updating...

References

Related subjects :