A New Perspective on Quality Evaluation for Control Systems with - - PowerPoint PPT Presentation

a new perspective on quality evaluation for control
SMART_READER_LITE
LIVE PREVIEW

A New Perspective on Quality Evaluation for Control Systems with - - PowerPoint PPT Presentation

A New Perspective on Quality Evaluation for Control Systems with Stochastic Timing Maximilian Gaukler , Andreas Michalka, Peter Ulbrich and Tobias Klaus April 11th, 2018 Gaukler et al.: Quality Evaluation for Control Systems with Stochastic


slide-1
SLIDE 1

A New Perspective on Quality Evaluation for Control Systems with Stochastic Timing

Maximilian Gaukler, Andreas Michalka, Peter Ulbrich and Tobias Klaus

April 11th, 2018

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 1

slide-2
SLIDE 2

Motivation

Real-Time Computing System

Plant Controller

Disturbance Measurement noise

Other Applications and Controllers

Input/Output Timing

Quality of Control: How well does the control system work under

  • random disturbance
  • I/O timing?

Time-varying situation:

  • execution conditions
  • disturbance amplitude
  • reference trajectory

Quality is time-varying

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 2

slide-3
SLIDE 3

Motivation

Real-Time Computing System

Plant Controller

Disturbance Measurement noise

Other Applications and Controllers

Input/Output Timing

Quality of Control: How well does the control system work under

  • random disturbance
  • I/O timing?

Time-varying situation:

  • execution conditions
  • disturbance amplitude
  • reference trajectory

Quality is time-varying

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 2

slide-4
SLIDE 4

Motivation

Real-Time Computing System

Plant Controller

Disturbance Measurement noise

Other Applications and Controllers

Input/Output Timing

Quality of Control: How well does the control system work under

  • random disturbance
  • I/O timing?

Time-varying situation:

  • execution conditions
  • disturbance amplitude
  • reference trajectory

Quality is time-varying

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 2

slide-5
SLIDE 5

Motivation

Real-Time Computing System

Plant Controller

Disturbance Measurement noise

Other Applications and Controllers

Input/Output Timing

Quality of Control: How well does the control system work under

  • random disturbance
  • I/O timing?

Time-varying situation:

  • execution conditions
  • disturbance amplitude
  • reference trajectory

Quality is time-varying

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 2

slide-6
SLIDE 6

Motivation

Real-Time Computing System

Plant Controller

Disturbance Measurement noise

Other Applications and Controllers

Input/Output Timing

Quality of Control: How well does the control system work under

  • random disturbance
  • I/O timing?

Time-varying situation:

  • execution conditions
  • disturbance amplitude
  • reference trajectory

Quality is time-varying

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 2

slide-7
SLIDE 7

Motivation

Real-Time Computing System

Plant Controller

Disturbance Measurement noise

Other Applications and Controllers

Input/Output Timing

Quality of Control: How well does the control system work under

  • random disturbance
  • I/O timing?

Time-varying situation:

  • execution conditions
  • disturbance amplitude
  • reference trajectory

Quality is time-varying

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 2

slide-8
SLIDE 8

Related Work and Topics

typical performance (stochastic) worst-case guarantee (deterministic) time-averaged (stationary) JITTERBUG (Lincoln and Cervin 2002) time-varying

  • simulation

slow, no formal insight

  • efficient computation?

aim of this work

Analysis Co-Design

necessary?

Sampled-Data Control with uncertain timing

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 3

slide-9
SLIDE 9

Contents

1 Problem Formulation 2 Reformulation as Linear Impulsive System 3 Approach for Deterministic Timing 4 Simple Example 5 Generalization to Stochastic Timing 6 Summary

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 4

slide-10
SLIDE 10

1 Problem Formulation

1 Problem Formulation 2 Reformulation as Linear Impulsive System 3 Approach for Deterministic Timing 4 Simple Example 5 Generalization to Stochastic Timing 6 Summary

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 5

slide-11
SLIDE 11

1 Problem Formulation

  • continuous-time MIMO plant (linear, time-invariant)

˙ xp(t) = Apxp(t) + Bpu(t) + Gpd(t), xp(0) = 0, y(t) = Cpxp(t) + wp(t)

  • d(t): stochastic disturbance (white noise, time-varying covariance H(t))
  • wp(t): measurement noise
  • discrete-time controller (linear + reference trajectory), sampling time T

xd[k + 1] = Ad[k]xd[k] + Bd[k]y[k] + fd[k], u[k] = Cd[k]xd[k] + gd[k], xd[0] = 0

  • sampling and actuation delays |∆t...| < T/2
  • time-varying, per sensor/actuator component
  • random, independent of disturbance and measurement noise

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 6

slide-12
SLIDE 12

1 Problem Formulation

  • continuous-time MIMO plant (linear, time-invariant)

˙ xp(t) = Apxp(t) + Bpu(t) + Gpd(t), xp(0) = 0, y(t) = Cpxp(t) + wp(t)

  • d(t): stochastic disturbance (white noise, time-varying covariance H(t))
  • wp(t): measurement noise
  • discrete-time controller (linear + reference trajectory), sampling time T

xd[k + 1] = Ad[k]xd[k] + Bd[k]y[k] + fd[k], u[k] = Cd[k]xd[k] + gd[k], xd[0] = 0

  • sampling and actuation delays |∆t...| < T/2
  • time-varying, per sensor/actuator component
  • random, independent of disturbance and measurement noise

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 6

slide-13
SLIDE 13

1 Problem Formulation

  • continuous-time MIMO plant (linear, time-invariant)

˙ xp(t) = Apxp(t) + Bpu(t) + Gpd(t), xp(0) = 0, y(t) = Cpxp(t) + wp(t)

  • d(t): stochastic disturbance (white noise, time-varying covariance H(t))
  • wp(t): measurement noise
  • discrete-time controller (linear + reference trajectory), sampling time T

xd[k + 1] = Ad[k]xd[k] + Bd[k]y[k] + fd[k], u[k] = Cd[k]xd[k] + gd[k], xd[0] = 0

  • sampling and actuation delays |∆t...| < T/2
  • time-varying, per sensor/actuator component
  • random, independent of disturbance and measurement noise

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 6

slide-14
SLIDE 14

1 Problem Formulation

  • continuous-time MIMO plant (linear, time-invariant)

˙ xp(t) = Apxp(t) + Bpu(t) + Gpd(t), xp(0) = 0, y(t) = Cpxp(t) + wp(t)

  • d(t): stochastic disturbance (white noise, time-varying covariance H(t))
  • wp(t): measurement noise
  • discrete-time controller (linear + reference trajectory), sampling time T

xd[k + 1] = Ad[k]xd[k] + Bd[k]y[k] + fd[k], u[k] = Cd[k]xd[k] + gd[k], xd[0] = 0

  • sampling and actuation delays |∆t...| < T/2
  • time-varying, per sensor/actuator component
  • random, independent of disturbance and measurement noise

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 6

slide-15
SLIDE 15

1 Problem Formulation

  • continuous-time MIMO plant (linear, time-invariant)

˙ xp(t) = Apxp(t) + Bpu(t) + Gpd(t), xp(0) = 0, y(t) = Cpxp(t) + wp(t)

  • d(t): stochastic disturbance (white noise, time-varying covariance H(t))
  • wp(t): measurement noise
  • discrete-time controller (linear + reference trajectory), sampling time T

xd[k + 1] = Ad[k]xd[k] + Bd[k]y[k] + fd[k], u[k] = Cd[k]xd[k] + gd[k], xd[0] = 0

  • sampling and actuation delays |∆t...| < T/2
  • time-varying, per sensor/actuator component
  • random, independent of disturbance and measurement noise

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 6

slide-16
SLIDE 16

1 Problem Formulation

  • continuous-time MIMO plant (linear, time-invariant)

˙ xp(t) = Apxp(t) + Bpu(t) + Gpd(t), xp(0) = 0, y(t) = Cpxp(t) + wp(t)

  • d(t): stochastic disturbance (white noise, time-varying covariance H(t))
  • wp(t): measurement noise
  • discrete-time controller (linear + reference trajectory), sampling time T

xd[k + 1] = Ad[k]xd[k] + Bd[k]y[k] + fd[k], u[k] = Cd[k]xd[k] + gd[k], xd[0] = 0

  • sampling and actuation delays |∆t...| < T/2
  • time-varying, per sensor/actuator component
  • random, independent of disturbance and measurement noise

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 6

slide-17
SLIDE 17

1 Problem Formulation

  • quality via quadratic cost function: deviation from reference xr, ur

J(t) =(xp(t) − xr(t))T ˜ Q(xp(t) − xr(t)) + (u(t) − ur(t))T ˜ R(u(t) − ur(t)) with xr(t), ur(t) known a priori.

  • desired result: expected cost E{J(t)} (time-varying)

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 7

slide-18
SLIDE 18

1 Problem Formulation

  • quality via quadratic cost function: deviation from reference xr, ur

J(t) =(xp(t) − xr(t))T ˜ Q(xp(t) − xr(t)) + (u(t) − ur(t))T ˜ R(u(t) − ur(t)) with xr(t), ur(t) known a priori.

  • desired result: expected cost E{J(t)} (time-varying)

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 7

slide-19
SLIDE 19

2 Reformulation as Linear Impulsive System

1 Problem Formulation 2 Reformulation as Linear Impulsive System 3 Approach for Deterministic Timing 4 Simple Example 5 Generalization to Stochastic Timing 6 Summary

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 8

slide-20
SLIDE 20

2 Reformulation as Linear Impulsive System

plant state xp(t) t controller state, sampling (y), zero-order-hold (u) xd(t) t combined state vector x(t) (illustration) x(t) t x(t−

i )

x(t−

i+1)

x(t+

i )

x(t+

i+1)

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 9

slide-21
SLIDE 21

2 Reformulation as Linear Impulsive System

plant state xp(t) t controller state, sampling (y), zero-order-hold (u) xd(t) t combined state vector x(t) (illustration) x(t) t x(t−

i )

x(t−

i+1)

x(t+

i )

x(t+

i+1)

discrete

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 9

slide-22
SLIDE 22

2 Reformulation as Linear Impulsive System

plant state xp(t) t controller state, sampling (y), zero-order-hold (u) xd(t) t combined state vector x(t) (illustration) x(t) t x(t−

i )

x(t−

i+1)

x(t+

i )

x(t+

i+1)

discrete continuous

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 9

slide-23
SLIDE 23

2 Reformulation as Linear Impulsive System

plant state xp(t) t controller state, sampling (y), zero-order-hold (u) xd(t) t combined state vector x(t) (illustration) x(t) t x(t−

i )

x(t−

i+1)

x(t+

i )

x(t+

i+1)

discrete continuous

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 9

slide-24
SLIDE 24

2 Reformulation as Linear Impulsive System

plant state xp(t) t controller state, sampling (y), zero-order-hold (u) xd(t) t combined state vector x(t) (illustration) x(t) t x(t−

i )

x(t−

i+1)

x(t+

i )

x(t+

i+1)

discrete continuous

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 9

slide-25
SLIDE 25

2 Reformulation as Linear Impulsive System Noise N Timing T ˙ x(t) = Ax(t) + Gd(t), t = ti, x(ti

+) = Aix(t− i ) + N 1/2 i

vi x(t)

  • continuous dynamics
  • interrupted by discrete jumps (sample, update controller, actuate)
  • input: noise N
  • d(t): disturbance
  • vi: measurement randomness (covariance I)
  • formalized IO timing T : ∆t... → (ti, Ai, Ni)i∈N
  • T

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 10

slide-26
SLIDE 26

2 Reformulation as Linear Impulsive System Noise N Timing T ˙ x(t) = Ax(t) + Gd(t), t = ti, x(ti

+) = Aix(t− i ) + N 1/2 i

vi x(t)

  • continuous dynamics
  • interrupted by discrete jumps (sample, update controller, actuate)
  • input: noise N
  • d(t): disturbance
  • vi: measurement randomness (covariance I)
  • formalized IO timing T : ∆t... → (ti, Ai, Ni)i∈N
  • T

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 10

slide-27
SLIDE 27

2 Reformulation as Linear Impulsive System Noise N Timing T ˙ x(t) = Ax(t) + Gd(t), t = ti, x(ti

+) = Aix(t− i ) + N 1/2 i

vi x(t)

  • continuous dynamics
  • interrupted by discrete jumps (sample, update controller, actuate)
  • input: noise N
  • d(t): disturbance
  • vi: measurement randomness (covariance I)
  • formalized IO timing T : ∆t... → (ti, Ai, Ni)i∈N
  • T

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 10

slide-28
SLIDE 28

2 Reformulation as Linear Impulsive System Noise N Timing T ˙ x(t) = Ax(t) + Gd(t), t = ti, x(ti

+) = Aix(t− i ) + N 1/2 i

vi x(t)

  • continuous dynamics
  • interrupted by discrete jumps (sample, update controller, actuate)
  • input: noise N
  • d(t): disturbance
  • vi: measurement randomness (covariance I)
  • formalized IO timing T : ∆t... → (ti, Ai, Ni)i∈N
  • T

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 10

slide-29
SLIDE 29

3 Approach for Deterministic Timing

1 Problem Formulation 2 Reformulation as Linear Impulsive System 3 Approach for Deterministic Timing 4 Simple Example 5 Generalization to Stochastic Timing 6 Summary

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 11

slide-30
SLIDE 30

3 Approach for Deterministic Timing

  • assumption: I/O timing T known a priori.
  • remaining randomness: noise N
  • result: expected cost E{J(t)} w.r.t. N

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 12

slide-31
SLIDE 31

3 Approach for Deterministic Timing: Discretization Consider “covariance”matrix P(t) := E

  • x(t)x(t)T
  • f combined state.

(No real covariance: E{x(t)} = 0)

temporal evolution:

1

discrete from x(t−

i ) to x(t+ i )

P(t+

i ) =AiP(t− i )AT i + Ni 2

continuous from x(t+

i ) to x(t− i+1)

P(t−

i+1) =eA∆ P(t+ i ) eAT ∆ +

∆ eAτGHGT (eAτ)T dτ with ∆ = t−

i+1 − t+ i .

  • iterate (1) + (2) whole time axis
  • ≈ stochastic time discretization at actual I/O times

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 13

slide-32
SLIDE 32

3 Approach for Deterministic Timing: Discretization Consider “covariance”matrix P(t) := E

  • x(t)x(t)T
  • f combined state.

(No real covariance: E{x(t)} = 0)

temporal evolution:

1

discrete from x(t−

i ) to x(t+ i )

P(t+

i ) =AiP(t− i )AT i + Ni 2

continuous from x(t+

i ) to x(t− i+1)

P(t−

i+1) =eA∆ P(t+ i ) eAT ∆ +

∆ eAτGHGT (eAτ)T dτ with ∆ = t−

i+1 − t+ i .

  • iterate (1) + (2) whole time axis
  • ≈ stochastic time discretization at actual I/O times

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 13

slide-33
SLIDE 33

3 Approach for Deterministic Timing: Discretization Consider “covariance”matrix P(t) := E

  • x(t)x(t)T
  • f combined state.

(No real covariance: E{x(t)} = 0)

temporal evolution:

1

discrete from x(t−

i ) to x(t+ i )

P(t+

i ) =AiP(t− i )AT i + Ni 2

continuous from x(t+

i ) to x(t− i+1)

P(t−

i+1) =eA∆ P(t+ i ) eAT ∆ +

∆ eAτGHGT (eAτ)T dτ with ∆ = t−

i+1 − t+ i .

  • iterate (1) + (2) whole time axis
  • ≈ stochastic time discretization at actual I/O times

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 13

slide-34
SLIDE 34

3 Approach for Deterministic Timing: Discretization Consider “covariance”matrix P(t) := E

  • x(t)x(t)T
  • f combined state.

(No real covariance: E{x(t)} = 0)

temporal evolution:

1

discrete from x(t−

i ) to x(t+ i )

P(t+

i ) =AiP(t− i )AT i + Ni 2

continuous from x(t+

i ) to x(t− i+1)

P(t−

i+1) =eA∆ P(t+ i ) eAT ∆ +

∆ eAτGHGT (eAτ)T dτ with ∆ = t−

i+1 − t+ i .

  • iterate (1) + (2) whole time axis
  • ≈ stochastic time discretization at actual I/O times

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 13

slide-35
SLIDE 35

3 Approach for Deterministic Timing: Discretization Consider “covariance”matrix P(t) := E

  • x(t)x(t)T
  • f combined state.

(No real covariance: E{x(t)} = 0)

temporal evolution:

1

discrete from x(t−

i ) to x(t+ i )

P(t+

i ) =AiP(t− i )AT i + Ni 2

continuous from x(t+

i ) to x(t− i+1)

P(t−

i+1) =eA∆ P(t+ i ) eAT ∆ +

∆ eAτGHGT (eAτ)T dτ with ∆ = t−

i+1 − t+ i .

  • iterate (1) + (2) whole time axis
  • ≈ stochastic time discretization at actual I/O times

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 13

slide-36
SLIDE 36

3 Approach for Deterministic Timing: Discretization Consider “covariance”matrix P(t) := E

  • x(t)x(t)T
  • f combined state.

(No real covariance: E{x(t)} = 0)

temporal evolution:

1

discrete from x(t−

i ) to x(t+ i )

P(t+

i ) =AiP(t− i )AT i + Ni 2

continuous from x(t+

i ) to x(t− i+1)

P(t−

i+1) =eA∆ P(t+ i ) eAT ∆ +

∆ eAτGHGT (eAτ)T dτ with ∆ = t−

i+1 − t+ i .

  • iterate (1) + (2) whole time axis
  • ≈ stochastic time discretization at actual I/O times

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 13

slide-37
SLIDE 37

3 Approach for Deterministic Timing: Discretization Consider “covariance”matrix P(t) := E

  • x(t)x(t)T
  • f combined state.

(No real covariance: E{x(t)} = 0)

temporal evolution:

1

discrete from x(t−

i ) to x(t+ i )

P(t+

i ) =AiP(t− i )AT i + Ni 2

continuous from x(t+

i ) to x(t− i+1)

P(t−

i+1) =eA∆ P(t+ i ) eAT ∆ +

∆ eAτGHGT (eAτ)T dτ with ∆ = t−

i+1 − t+ i .

  • iterate (1) + (2) whole time axis
  • ≈ stochastic time discretization at actual I/O times

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 13

slide-38
SLIDE 38

3 Approach for Deterministic Timing: Discretization Consider “covariance”matrix P(t) := E

  • x(t)x(t)T
  • f combined state.

(No real covariance: E{x(t)} = 0)

temporal evolution:

1

discrete from x(t−

i ) to x(t+ i )

P(t+

i ) =AiP(t− i )AT i + Ni 2

continuous from x(t+

i ) to x(t− i+1)

P(t−

i+1) =eA∆ P(t+ i ) eAT ∆ +

∆ eAτGHGT (eAτ)T dτ with ∆ = t−

i+1 − t+ i .

  • iterate (1) + (2) whole time axis
  • ≈ stochastic time discretization at actual I/O times

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 13

slide-39
SLIDE 39

3 Approach for Deterministic Timing: Cost Evaluation

  • rewrite cost function as

J(t) = xT(t) Q(t) x(t)

  • Q(t) time-varying, but deterministic (contains reference trajectory)
  • compute cost from covariance matrix:

E{J(t)} = E

  • xT(t) Q(t) x(t)
  • = trace
  • Q(t) E
  • x(t)xT(t)
  • P (t)
  • Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing

14

slide-40
SLIDE 40

3 Approach for Deterministic Timing: Cost Evaluation

  • rewrite cost function as

J(t) = xT(t) Q(t) x(t)

  • Q(t) time-varying, but deterministic (contains reference trajectory)
  • compute cost from covariance matrix:

E{J(t)} = E

  • xT(t) Q(t) x(t)
  • = trace
  • Q(t) E
  • x(t)xT(t)
  • P (t)
  • Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing

14

slide-41
SLIDE 41

3 Approach for Deterministic Timing Result:

  • dynamics of covariance P(t)
  • time-varying Quality of Control via cost E{J(t)}

Classical Simulation (for comparison):

  • pseudo-randomness
  • ensemble mean over many runs → inefficient
  • only stochastic convergence (in probability)

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 15

slide-42
SLIDE 42

4 Simple Example

1 Problem Formulation 2 Reformulation as Linear Impulsive System 3 Approach for Deterministic Timing 4 Simple Example 5 Generalization to Stochastic Timing 6 Summary

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 16

slide-43
SLIDE 43

4 Simple Example Example:

  • linearized inverse pendulum (SISO)
  • discrete-time observer-based state feedback, T = 0.2
  • pole placement, dangerously fast choice: |λcontrol,continuous| ≈ 5|λplant|
  • deterministic delay of u and y

Result:

  • model run-time below 1 second
  • simulation run-time over 5 hours for 3 % relative error

(both implementations may be further optimized)

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 17

slide-44
SLIDE 44

4 Simple Example

5 10 15 20 25 30 35 40 45 50 0.1 0.2 0.3

∆t/T u

5 10 15 20 25 30 35 40 45 50 2 4 6

E{J}

worse →

5 10 15 20 25 30 35 40 45 50 1 2 3 ·10−2

t |∆Jrel|

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 18

slide-45
SLIDE 45

4 Simple Example

5 10 15 20 25 30 35 40 45 50 0.1 0.2 0.3

∆t/T u y

5 10 15 20 25 30 35 40 45 50 2 4 6

E{J}

worse →

5 10 15 20 25 30 35 40 45 50 1 2 3 ·10−2

t |∆Jrel|

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 18

slide-46
SLIDE 46

4 Simple Example

5 10 15 20 25 30 35 40 45 50 0.1 0.2 0.3

∆t/T u y

5 10 15 20 25 30 35 40 45 50 2 4 6

E{J}

worse →

model

5 10 15 20 25 30 35 40 45 50 1 2 3 ·10−2

t |∆Jrel|

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 18

slide-47
SLIDE 47

4 Simple Example

5 10 15 20 25 30 35 40 45 50 0.1 0.2 0.3

∆t/T u y

5 10 15 20 25 30 35 40 45 50 2 4 6

E{J}

worse →

simulation model

5 10 15 20 25 30 35 40 45 50 1 2 3 ·10−2

t |∆Jrel|

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 18

slide-48
SLIDE 48

4 Simple Example

5 10 15 20 25 30 35 40 45 50 0.1 0.2 0.3

∆t/T u y

5 10 15 20 25 30 35 40 45 50 2 4 6

E{J}

worse →

simulation model

5 10 15 20 25 30 35 40 45 50 1 2 3 ·10−2

t |∆Jrel|

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 18

slide-49
SLIDE 49

4 Simple Example

5 10 15 20 25 30 35 40 45 50 0.1 0.2 0.3

∆t/T u y

5 10 15 20 25 30 35 40 45 50 2 4 6

E{J}

worse →

simulation model

5 10 15 20 25 30 35 40 45 50 1 2 3 ·10−2

t |∆Jrel| dynamics (inertia): static approximation is problematic

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 18

slide-50
SLIDE 50

4 Simple Example

5 10 15 20 25 30 35 40 45 50 0.1 0.2 0.3

∆t/T u y

5 10 15 20 25 30 35 40 45 50 2 4 6

E{J}

worse →

simulation model

5 10 15 20 25 30 35 40 45 50 1 2 3 ·10−2

t |∆Jrel| dynamics (inertia): static approximation is problematic mode changes may hurt performance

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 18

slide-51
SLIDE 51

5 Generalization to Stochastic Timing

1 Problem Formulation 2 Reformulation as Linear Impulsive System 3 Approach for Deterministic Timing 4 Simple Example 5 Generalization to Stochastic Timing 6 Summary

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 19

slide-52
SLIDE 52

5 Generalization to Stochastic Timing

  • current result F: covariance evolution from t = a+ to t = b+

P(b+) = F(a, b](P(a+), T ) , P(0) = x0xT for deterministic timing T .

  • Notation:

E

random variables {. . .}

  • stochastic timing:

P(t+) = E

N ,T

  • x(t+)xT(t+)
  • = · · · = E

T

  • F(0, t]
  • x0xT

0 , T

  • noise N “eliminated”
  • weighted average over all timing sequences T
  • complexity ∼ t · exp(t)
  • cost evaluation still from covariance

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 20

slide-53
SLIDE 53

5 Generalization to Stochastic Timing

  • current result F: covariance evolution from t = a+ to t = b+

P(b+) = F(a, b](P(a+), T ) , P(0) = x0xT for deterministic timing T .

  • Notation:

E

random variables {. . .}

  • stochastic timing:

P(t+) = E

N ,T

  • x(t+)xT(t+)
  • = · · · = E

T

  • F(0, t]
  • x0xT

0 , T

  • noise N “eliminated”
  • weighted average over all timing sequences T
  • complexity ∼ t · exp(t)
  • cost evaluation still from covariance

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 20

slide-54
SLIDE 54

5 Generalization to Stochastic Timing

  • current result F: covariance evolution from t = a+ to t = b+

P(b+) = F(a, b](P(a+), T ) , P(0) = x0xT for deterministic timing T .

  • Notation:

E

random variables {. . .}

  • stochastic timing:

P(t+) = E

N ,T

  • x(t+)xT(t+)
  • = · · · = E

T

  • F(0, t]
  • x0xT

0 , T

  • noise N “eliminated”
  • weighted average over all timing sequences T
  • complexity ∼ t · exp(t)
  • cost evaluation still from covariance

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 20

slide-55
SLIDE 55

5 Generalization to Stochastic Timing

  • current result F: covariance evolution from t = a+ to t = b+

P(b+) = F(a, b](P(a+), T ) , P(0) = x0xT for deterministic timing T .

  • Notation:

E

random variables {. . .}

  • stochastic timing:

P(t+) = E

N ,T

  • x(t+)xT(t+)
  • = · · · = E

T

  • F(0, t]
  • x0xT

0 , T

  • noise N “eliminated”
  • weighted average over all timing sequences T
  • complexity ∼ t · exp(t)
  • cost evaluation still from covariance

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 20

slide-56
SLIDE 56

5 Generalization to Stochastic Timing Simplification for Stochastically Independent Time Segments:

  • motivation: timing of control periods often (almost) independent
  • timing with independent segments t ∈ (γk, γk+1]
  • result:

P(γ+

k+1) =

E

T(γk, γk+1]

  • F

(γk, γk+1]

  • P(γ+

k ), T(γk, γk+1]

  • expectation only w.r.t. subsequence T(γk, γk+1]
  • complexity ∼ t · exp(γk+1 − γk)

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 21

slide-57
SLIDE 57

6 Summary

1 Problem Formulation 2 Reformulation as Linear Impulsive System 3 Approach for Deterministic Timing 4 Simple Example 5 Generalization to Stochastic Timing 6 Summary

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 22

slide-58
SLIDE 58

6 Summary Problem:

  • real-time MIMO control loop
  • effect of varying situations (timing) on Quality of Control?

Approach:

1 Linear Impulsive System (LIS) 2 covariance matrix dynamics ≈ stochastic discretization 3 generalization to stochastic timing

Theoretical Results:

  • general LIS model for linear MIMO control
  • time-varying, stochastic evaluation of Quality of Control

typically faster than random simulation

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 23

slide-59
SLIDE 59

6 Summary Practical Result:

  • visualize effects of timing changes on typical performance

Future improvements:

  • Markov chain for timing
  • speed up computations: lookup table, (over-)approximation

use for online timing adaptation Related Challenges:

  • nonlinear case
  • worst-case analysis (with our LIS model?)

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 24

slide-60
SLIDE 60

Thank you! Any questions?

source code (GPL3) on our project website: http://qronos.de

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 25

slide-61
SLIDE 61

Appendix

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 26

slide-62
SLIDE 62

Importance of I/O Timing Timing is no longer constant:

  • increasing system complexity
  • many cheap asynchronous sensors
  • many applications
  • strict timing is expensive (over-provisioning)
  • deliberate trade-off: fixed timing vs. efficiency
  • adaptive scheduling
  • mode changes (mixed-criticality)

Timing is not quality:

  • real-time systems designed for timing = “Quality of Service” (QoS)
  • actual goal is Quality of Control (QoC)!
  • relation of QoS and QoC?

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 27

slide-63
SLIDE 63

State Vector Combined state of plant, controller and sampling: x(t) := xT

p(t) xT d(t) yT d(t) uT(t) 1T ,

x(0) = 0 . . . 0 1T

  • xp(t): plant
  • xd(t): controller, e.g., observer state ˆ

x[k]

  • yd(t): sampled measurement

   piecewise constant

  • u(t): control signal (zero-order-hold)
  • 1: auxiliary state for deterministic parts (E{·} = 0)

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 28

slide-64
SLIDE 64

Continuous Dynamics

  • continuous dynamics for t = ti:

d dt       xp(t) xd(t) yd(t) u(t) 1      

  • x

=       Ap Bp      

  • A

      xp(t) xd(t) yd(t) u(t) 1       +       Gp      

G

d(t)

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 29

slide-65
SLIDE 65

Discrete Events

1 sample yj[k] at ti = kT + ∆ty,j[k]

yd,j(t+

i ) = eT j y(t− i ) = eT j

  • Cpxp(t−

i ) + wp(t− i ) measurement noise

  • 2 update controller state xd[k + 1] at ti = (k + 1

2)T

xd(t+

i ) = xd[k + 1] = Ad[k]xd(t− i ) + Bd[k]yd(t− i ) + fd[k] · 1 for reference traj.

Ai = . . . , Ni = 0

3 output uj[k + 1] at ti = (k + 1)T + ∆tu,j[k]

ud,j(t+

i ) = uj[k + 1] = eT j (Cd[k]xd(t− i ) + gd[k] · 1 for reference traj.

) Ai = . . . , Ni = 0

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 30

slide-66
SLIDE 66

Discrete Events

1 sample yj[k] at ti = kT + ∆ty,j[k]

yd,j(t+

i ) = eT j y(t− i ) = eT j

  • Cpxp(t−

i ) + wp(t− i ) measurement noise

     xp(t+

i )

xd(t+

i )

yd(t+

i )

u(t+

i )

1      

  • x(t+

i )

=       I I ejeT

j Cp

I 1      

  • Ai

      xp(t−

i )

xd(t−

i )

yd(t−

i )

u(t−

i )

1      

  • x(t−

i )

+N 1/2

i

vi, Ni =       ejeT

j NpejeT j

      .

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 30

slide-67
SLIDE 67

Discrete Events

1 sample yj[k] at ti = kT + ∆ty,j[k]

yd,j(t+

i ) = eT j y(t− i ) = eT j

  • Cpxp(t−

i ) + wp(t− i ) measurement noise

     xp(t+

i )

xd(t+

i )

yd(t+

i )

u(t+

i )

1      

  • x(t+

i )

=       I I ejeT

j Cp

I − ejeT

j

I 1      

  • Ai

      xp(t−

i )

xd(t−

i )

yd(t−

i )

u(t−

i )

1      

  • x(t−

i )

+N 1/2

i

vi, Ni =       ejeT

j NpejeT j

      .

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 30

slide-68
SLIDE 68

Discrete Events

1 sample yj[k] at ti = kT + ∆ty,j[k]

yd,j(t+

i ) = eT j y(t− i ) = eT j

  • Cpxp(t−

i ) + wp(t− i ) measurement noise

  • Ai = . . . ,

Ni = 0

2 update controller state xd[k + 1] at ti = (k + 1 2)T

xd(t+

i ) = xd[k + 1] = Ad[k]xd(t− i ) + Bd[k]yd(t− i ) + fd[k] · 1 for reference traj.

Ai = . . . , Ni = 0

3 output uj[k + 1] at ti = (k + 1)T + ∆tu,j[k]

ud,j(t+

i ) = uj[k + 1] = eT j (Cd[k]xd(t− i ) + gd[k] · 1 for reference traj.

) Ai = . . . , Ni = 0

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 30

slide-69
SLIDE 69

Example: Details

  • linearized inverse pendulum

Ap = 1 ω2 −2ξω0

  • , Bp =
  • ω0/9.81
  • , Gp =

1

  • , Cp =

1 , H = 10−3, Np = 10−6, ω0 = π, ξ = 0.5

  • hold upper equilibrium (xr = 0, ur = 0)
  • discrete-time observer-based state feedback
  • dangerously fast pole placement:
  • plant: {1.94, −5.08}
  • controller: {−10, −11}, observer: {−20, −22}

(continuous-time equivalents, map via λd = exp(λT))

  • cost weighting: Q = 550I, R = 0.8 x and u “equally expensive”
  • stationary cost without delays E{J} = 1
  • T = 0.2

Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing 31

slide-70
SLIDE 70

Stochastic Timing: Derivation

  • notation:

E

random variables {. . .}

  • prior result: expectation w.r.t. noise N

E

N

  • x(t+)xT(t+)
  • P (t+)

= F

(0, t]

  • E

N

  • x(0)xT(0)
  • x0xT

, T

  • for T known
  • N, T independent equals conditional expectation

E

  • xT(t+)x(t+)|T
  • = F

(0, t]

  • x0xT

0 , T

  • (1)
  • Desired result: unconditional expectation

E

N ,T

  • x(t+)xT(t+)
  • = E

T

  • E

N

  • x(t+)xT(t+)|T
  • (1)

= E

T

  • F

(0, t]

  • x0xT

0 , T

  • Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing

32

slide-71
SLIDE 71

Stochastic Timing: Derivation

  • notation:

E

random variables {. . .}

  • prior result: expectation w.r.t. noise N

E

N

  • x(t+)xT(t+)
  • P (t+)

= F

(0, t]

  • E

N

  • x(0)xT(0)
  • x0xT

, T

  • for T known
  • N, T independent equals conditional expectation

E

  • xT(t+)x(t+)|T
  • = F

(0, t]

  • x0xT

0 , T

  • (1)
  • Desired result: unconditional expectation

E

N ,T

  • x(t+)xT(t+)
  • = E

T

  • E

N

  • x(t+)xT(t+)|T
  • (1)

= E

T

  • F

(0, t]

  • x0xT

0 , T

  • Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing

32

slide-72
SLIDE 72

Stochastic Timing: Derivation

  • notation:

E

random variables {. . .}

  • prior result: expectation w.r.t. noise N

E

N

  • x(t+)xT(t+)
  • P (t+)

= F

(0, t]

  • E

N

  • x(0)xT(0)
  • x0xT

, T

  • for T known
  • N, T independent equals conditional expectation

E

  • xT(t+)x(t+)|T
  • = F

(0, t]

  • x0xT

0 , T

  • (1)
  • Desired result: unconditional expectation

E

N ,T

  • x(t+)xT(t+)
  • = E

T

  • E

N

  • x(t+)xT(t+)|T
  • (1)

= E

T

  • F

(0, t]

  • x0xT

0 , T

  • Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing

32

slide-73
SLIDE 73

Properties of covariance evolution properties of F(a, b], the covariance evolution for det. timing:

  • splitting (≈ semigroup operator):

P(b+) = F

(0, b](x0xT 0 , T ) = F (a, b]

  • F

(0, a]

  • x0xT

0 , T(0, a]

  • P (a+)

, T(a, b]

  • (2)
  • “matrix-affine” in start covariance P

F

(a, b](P, T ) = M T 1 P M1 + M2

with M1,2 dep. on T , a, b, H, Np. · · · ⇒ E

N

  • F(P, T )
  • = F
  • E

N {P} , T

  • Gaukler et al.: Quality Evaluation for Control Systems with Stochastic Timing

33