Vous êtes sur la page 1sur 133

Robust control of MIMO systems

Olivier Sename
GIPSA-Lab

September 2013

Olivier Sename (GIPSA-Lab)

Robust control

September 2013

1 / 133

The H norm and related denitions


H norm as a measure of the system gain ?
LTI systems and signals norms
Performance analysis
Denition of the sensitivity functions
Frequency-domain analysis
Stability issues
Performance specications for analysis and/or design
Introduction
SISO case
MIMO case
Some performance limitations
H control design
About the control structure
Solving the H control problem
The Riccati approach
Example
Introduction to Linear Matrix Inequalities
Background in Optimisation
LMI in control
The LMI approach for H control design
Some useful lemmas
Uncertainty modelling and robustness analysis
Introduction
Representation of uncertainties
Denition of Robustness analysis
Robustness analysis: the unstructured case
Robustness analysis: the structured case
Towards Robust control design
Introduction to LPV systems and control
LPV modelling
O. Sename [GIPSA-lab]

2/133

Reference books
These texbooks are very close to the given course. Some of them are available on internet.
S. Skogestad and I. Postlethwaite, Multivariable Feedback Control: analysis and design, John
Wiley and Sons, 2005. www.nt.ntnu.no/users/skoge/book
K. Zhou, Essentials of Robust Control, Prentice Hall, New Jersey, 1998.
www.ece.lsu.edu/kemin
J.C. Doyle, B.A. Francis, and A.R. Tannenbaum, Feedback control theory, Macmillan
Publishing Company, New York, 1992.
https://sites.google.com/site/brucefranciscontact/Home/publications
G.C. Goodwin, S.F. Graebe, and M.E. Salgado, Control System Design, Prentice Hall, New
Jersey, 2001. csd.newcastle.edu.au
G. Duc et S. Font, Commande Hinf et -analyse: des outils pour la robustesse, Herms,
France, 1999.
D. Alazard, C. Cumer, P. Apkarian, M. Gauvrit, et G. Ferreres, Robustesse et commande
optimale, Cpadues Editions, 1999.

O. Sename [GIPSA-lab]

3/133

The H norm and related denitions

Nonlinear systems
In control theory, dynamical systems are mostly modeled and analyzed thanks to the use of a set
of Ordinary Differential Equations (ODE)1 .
Nonlinear dynamical system modeling is the "most" representative model of a given system.
Generally this model is derived thanks to system knowledge, physical equations etc. Nonlinear
dynamical systems are described by nonlinear ODEs.
Denition (Nonlinear dynamical system)
For given functions f : Rn Rnw Rn and g : Rn Rnw Rnz , a nonlinear dynamical
system (N L ) can be described as:
N L :

x = f (x(t), w(t))

z = g(x(t), w(t))

(1)

where x(t) is the state which takes values in a state space X Rn , w(t) is the input taking values
in the input space W Rnw and z(t) is the output that belongs to the output space Z Rnz .

1
Partial Differential Equations (PDEs) may be used for some applications such as irrigation channels, trafc ow,
etc. but methodologies involved are more complex compared to the ones for ODEs.
O. Sename [GIPSA-lab]

4/133

The H norm and related denitions

Comments
The main advantage of nonlinear dynamical modeling is that (if it is correctly described) it
catches most of the real system phenomena.
On the other side, the main drawback is that there is a lack of mathematical and
methodological tools; e.g. parameter identication, control and observation synthesis and
analysis are complex and non systematic (especially for MIMO systems).
In this eld, notions of robustness, observability, controllability, closed loop performance etc.
are not so obvious. In particular, complex nonlinear problems often need to be reduced in
order to become tractable for nonlinear theory, or to apply input-output linearization
approaches (e.g. in robot control applications).
As nonlinear modeling seems to lead to complex problems, especially for MIMO systems
control, the LTI dynamical modeling is often adopted for control and observation purposes.
The LTI dynamical modeling consists in describing the system through linear ODEs.
According to the previous nonlinear dynamical system denition, LTI modeling leads to a local
description of the nonlinear behavior (e.g. it locally describes, around a linearizing point, the
real system behavior).
From now on only Linear Time-Invariant (LTI) systems are considered.

O. Sename [GIPSA-lab]

5/133

The H norm and related denitions

Denition of LTI systems


Denition (LTI dynamical system)
Given matrices A Rnn , B Rnnw , C Rnz n and D Rnz nw , a Linear Time Invariant
(LTI) dynamical system (LT I ) can be described as:
LT I :

x(t)

z(t)

=
=

Ax(t) + Bw(t)
Cx(t) + Dw(t)

(2)

where x(t) is the state which takes values in a state space X Rn , w(t) is the input taking values
in the input space W Rnw and z(t) is the output that belongs to the output space Z Rnz .
The LTI system locally describes the real system under consideration and the linearization
procedure allows to treat a linear problem instead of a nonlinear one. For this class of problem,
many mathematical and control theory tools can be applied like closed loop stability, controllability,
observability, performance, robust analysis, etc. for both SISO and MIMO systems. However, the
main restriction is that LTI models only describe the system locally, then, compared to nonlinear
models, they lack of information and, as a consequence, are incomplete and may not provide
global stabilization.

O. Sename [GIPSA-lab]

6/133

The H norm and related denitions

Towards H norm

Illustration of the gain computation


For a SISO system, y=Gd, the gain at a given frequency is simply
|G(j)d()|
|y()|
=
= |G(j)|
|d()|
|d()|
The gain depends on the frequency, but since the system is linear it is independent of the input
magnitude
For a MIMO system we may select:
y()
d()

2
2

G(j)d()
d() 2

= G(j)

Which is independent of the input magnitude. But this is not a correct denition. Indeed the
input direction is of great importance

O. Sename [GIPSA-lab]

7/133

The H norm and related denitions

Towards H norm

A rst bad approach


Let consider
G=
How to dene and evaluate its gain ?
Consider ve different inputs:
1
0
u=
u=
u=
0
1
Input magnitude :
u1 2 = u2

5
3

0.707
0.707
2

= u3

0.707
0.707

u=
2

But the corresponding outputs are


5
4
6.3630
y=
y=
y=
3
2
3.5350
the ratio are y 2 / u 2
5.8310
4.4721
7.2790
0.9998
0.2828

O. Sename [GIPSA-lab]

4
2

= u4

y=

= u5

0.7070
0.7070

u=

0.6
0.8

y=

0.2
0.2

=1

8/133

and

The H norm and related denitions

Towards H norm

Towards SVD

MAXIMUM SINGULAR VALUE


max
d=0

Gd 2
= (G)

d 2

MINIMUM SINGULAR VALUE


min
d=0

Gd 2
= (G)
d 2

We see that, depending on the ratio


d20/d10, the gain varies between 0.27
and 7.34 .

O. Sename [GIPSA-lab]

9/133

The H norm and related denitions

Towards H norm

What about eigenvalues ?


Eigenvalues are a poor measure of gain. Let
G=

0
0

100
0

Eigenvalues are 0 and 0.


But an input vector
0
1
leads to an output vector
100
0

Clearly the gain is not zero.


Now, the maximal singular value is = 100
It means that any signal can be amplied at most 100 times
This is the good gain notion.

O. Sename [GIPSA-lab]

10/133

The H norm and related denitions

Towards H norm

For MIMO systems


Finally, in the case of a transfer matrix G(s) : (m inputs, p outputs) u vector of inputs, y vector of
outputs.
(G(j))

y()
u()

(G(j))

Example of A two-mass/spring/damper system


2 inputs: F1 and F2 2 outputs: x1 and x2

Singular Values
40

largest singular
value

Hinf norm 11.4664 = 21.18 dB

20

Singular Values (dB)

-20

-40

smallest singular
value

-60

-80

-100
-1
10

10

10

10

Frequency (rad/sec)

G=ss(A,B,C,D): LTI system


normhinf(G): Compute Hinf norm
norm(G,inf): Compute Hinf norm
sigma(G): plot max and min SV

O. Sename [GIPSA-lab]

11/133

The H norm and related denitions

LTI systems and signals norms

Signal norms
Reader is also invited to refer to the famous book of Zhou et al., 1996, where all the following
denitions and additional information are given.
All the following denitions are given assuming signals x(t) C, then they will involve the
conjugate (denoted as x (t)). When signals are real (i.e. x(t) R), x (t) = xT (t).
Denition (Norm and Normed vector space)
Let V be a nite dimension space. Then p 1, the application ||.||p is a norm, dened as,
|vi |p

||v||p =

1/p

(3)

Let V be a vector space over C (or R) and let . be a norm dened on V . Then V is a
normed space.

O. Sename [GIPSA-lab]

12/133

The H norm and related denitions

LTI systems and signals norms

L norms
Denition (L1 , L2 , L norms)
The 1-Norm of a function x(t) is given by,
+

x(t)

|x(t)|dt

(4)

The 2-Norm (that introduces the energy norm) is given by,


x(t)

+
x (t)x(t)dt
0
+
1
X (j)X(j)d
2

(5)

The second equality is obtained by using the Parseval identity.


The -Norm is given by,
x(t)
X

sup
Re(s)0

= sup |x(t)|

(6)

(7)

X(s) = sup X(j)

if the signals that admit the Laplace transform, analytic in Re(s) 0 (i.e. H ).

O. Sename [GIPSA-lab]

13/133

The H norm and related denitions

LTI systems and signals norms

About vector spaces


Denition (Banach, Hilbert, Hardy and Lp spaces)
A Banach space is a (real or complex) complete (i.e. all Cauchy sequences, of points in K
have a limit that is also in K) normed vector space B (with norm . p ).
A Hilbert space is a (real or complex) vector space H with an inner product < ., . > that is
complete under the norm dened by the inner product. The norm of f H is then dened by,
f =

(8)

< f, f >

Every Hilbert space is a Banach since a Hilbert space is complete with respect to the norm
associated with its inner product.
The Hardy spaces (Hp ) are certain spaces of holomorphic functions (functions dened on an
open subset of the complex number plane C with values in C that are complex-differentiable
at every point) on the unit disk or upper half plane.
The Lp space are spaces of p-power integrable functions (function whose integral exists,
generally called Lebesgue integral), and corresponding sequence spaces.
For example, Rn and Cn with the usual spatial p-norm, . p for 1 p < , are Banach spaces.
This means that a Banach space is a vector space B over the real or complex numbers with a
norm . p such that every Cauchy sequence (with respect to the metric d(x, y) = ||x y||) in B
has a limit in B.
O. Sename [GIPSA-lab]

14/133

The H norm and related denitions

LTI systems and signals norms

L and H spaces
Denition (L space)
L is the space of piecewise continuous bounded functions. It is a Banach space of
matrix-valued (or scalar-valued) functions on C and consists of all complex bounded matrix
functions f (j), R, such that,
sup [f (j)] <

(9)

Denition (H and RH spaces)


H is a (closed) subspace in L with matrix functions f (j), R, analytic in Re(s) > 0
(open right-half plane). The real rational subspace of H which consists of all proper and real
rational stable transfer matrices, is denoted by RH .

O. Sename [GIPSA-lab]

15/133

The H norm and related denitions

LTI systems and signals norms

L and H spaces
Example
In control theory
s+1
(s+10)(s+6)
s+1
(s10)(s+6)
s+1
(s+10)

O. Sename [GIPSA-lab]

RH
RH
RH

(10)

16/133

The H norm and related denitions

LTI systems and signals norms

H norm
Denition (H norm)
The H norm of a proper LTI system dened as on (2) from input w(t) to output z(t) and which
belongs to RH , is the induced energy-to-energy gain (L2 to L2 norm) dened as,

=
=

supR (G(j))
z(s)
supw(s)H2 w(s)

G(j)

z 2
w 2

maxw(t)L2

(11)

Remark
H physical interpretations
This norm represents the maximal gain of the frequency response of the system. It is also
called the worst case attenuation level in the sense that it measures the maximum
amplication that the system can deliver on the whole frequency set.
For SISO (resp. MIMO) systems, it represents the maximal peak value on the Bode
magnitude (resp. singular value) plot of G(j), in other words, it is the largest gain if the
system is fed by harmonic input signal.
Unlike H2 , the H norm cannot be computed analytically. Only numerical solutions can be
obtained (e.g. Bisection algorithm, or LMI resolution).
O. Sename [GIPSA-lab]

17/133

The H norm and related denitions

LTI systems and signals norms

Recalls on Singular Value Denition


Let A Rmn , There exists unitary matrices:
U = [u1 , u2 , . . . , um ] and V = [v1 , v2 , . . . , vn ]
such that
1
0

, 1 = .
.
.
0

A = U V T , =

1
0

0
0

0
2
.
.
.
0

...
...

...

0
0

...
p

with 1 2 . . . p 0 , p = min{m, n}.


Singular values are good measures of the size of a matrix Singular vectors are good indications of
str, ong/weak input or output directions. Note that:
Avi = i ui and AT ui = i vi . Then
2
AAT ui = i ui
= max (A) = 1 = the largest singular value of A.
and
= max (A) = 1 = the smallest singular value of A.

O. Sename [GIPSA-lab]

18/133

The H norm and related denitions

LTI systems and signals norms

L2 and H2 spaces
Denition (L2 space)
L2 is the space of piecewise continuous square integrable functions. It is a Hilbert space of
matrix-valued (or scalar-valued) functions on C and consists of all complex matrix functions f (j),
R, such that,
+
1
Tr[f (j)f (j)]d <
(12)
||f ||2 =
2
The inner product for this Hilbert space is dened as (for f, g L2 )
< f, g >=

1
2

Tr[f (j)g(j)]d

(13)

Denition (H2 and RH2 spaces)


H2 is a subspace (Hardy space) of L2 with matrix functions f (j), R, analytic in Re(s) > 0
(functions that are locally given by a convergent power series and differentiable on each point of its
denition set). In particular, the real rational subspace of H2 , which consists of all strictly proper
and real rational stable transfer matrices, is denoted by RH2 .

O. Sename [GIPSA-lab]

19/133

The H norm and related denitions

LTI systems and signals norms

L2 and H2 spaces
Example
In control theory
s+1
(s+10)(s+6)
s+1
(s10)(s+6)
s+1
(s+10)

O. Sename [GIPSA-lab]

RH2
RH2
RH2

(14)

20/133

The H norm and related denitions

LTI systems and signals norms

H2 norm
Denition (H2 norm)
The H2 norm of a strictly proper LTI system dened as on (2) from input w(t) to output z(t) and
which belongs to RH2 , is the energy (L2 norm) of the impulse response g(t) dened as,
G(j)

=
=
=

+
g (t)g(t)dt
+
1
Tr[G (j)G(j)]d
2
||z(s)||
supw(s)H2 ||u(s)||
2

(15)

The norm H2 is nite if and only if G(s) is strictly proper (i.e. G(s) RH2 ).
Remark
H2 physical interpretations and remarks
For SISO systems, it represents the area located below the so called Bode diagram.
For MIMO systems, the H2 norm is the impulse-to-energy gain of z(t) in response to a white
noise input w(t) (satisfying W (j)W (j) = I, i.e. uniform spectral density).
The H2 norm can be computed analytically (through the use of the controllability and
observability Grammians) or numerically (through LMIs).

O. Sename [GIPSA-lab]

21/133

Performance analysis

Outline
1

The H norm and related denitions


H norm as a measure of the system gain ?
LTI systems and signals norms
Performance analysis
Denition of the sensitivity functions
Frequency-domain analysis
Stability issues
Performance specications for analysis and/or design
Introduction
SISO case
MIMO case
Some performance limitations
H control design
About the control structure
Solving the H control problem
The Riccati approach
Example
Introduction to Linear Matrix Inequalities
Background in Optimisation
LMI in control
The LMI approach for H control design
Some useful lemmas
Uncertainty modelling and robustness analysis
Introduction
Representation of uncertainties
Denition of Robustness analysis
Robustness analysis: the unstructured case
Robustness analysis: the structured case
Towards Robust control design
Introduction to LPV systems and control
LPV modelling
LPV Control
O. Sename [GIPSA-lab]

22/133

Performance analysis

Introduction
Objectives of any control system [?]
shape the response of the system to a given reference and get (or keep) a stable system in
closed-loop, with desired performances, while minimising the effects of disturbances and
measurement noises, and avoiding actuators saturation, this despite of modelling uncertainties,
parameter changes or change of operating point.
This is formulated as:
Nominal stability (NS): The system is stable with the nominal model (no model uncertainty)
Nominal Performance (NP): The system satises the performance specications with the nominal
model (no model uncertainty)
Robust stability (RS): The system is stable for all perturbed plants about the nominal model, up to
the worst-case model uncertainty (including the real plant)
Robust performance (RP): The system satises the performance specications for all perturbed
plants about the nominal model, up to the worst-case model uncertainty
(including the real plant).

O. Sename [GIPSA-lab]

23/133

Performance analysis

Denition of the sensitivity functions

The control structure

Figure: Complete control scheme

In the SISO case, it leads to:


y =
u =

1
1+G(s)K(s)
1
1+K(s)G(s)

(GKr + dy GKn + Gdi )


(Kr Kdy Kn KGdi )

Loop transfer function


Sensitivity function

L = G(s)K(s)
1
S(s) = 1+L(s)

Complementary Sensitivity function

T (s) =

L(s)
1+L(s)

N.B. S is often referred to as the Output Sensitivity.


O. Sename [GIPSA-lab]

24/133

Performance analysis

Denition of the sensitivity functions

Input/Output performances
Dening two new sensitivity functions:
Plant Sensitivity: SG = S(s).G(s) (often referred to as the Input Sensitivity, e.g in Matlab)
Controller Sensitivity: KS = K(s).S(s)

O. Sename [GIPSA-lab]

25/133

Performance analysis

Denition of the sensitivity functions

Denition of the sensitivity functions- The MIMO case

Figure: Complete control scheme

The output & the control input satisfy the following equations :
(Ip + G(s)K(s))y(s) = (GKr + dy GKn + Gdi )
(Im + K(s)G(s))u(s) = (Kr Kdy Kn KGdi )
BUT : K(s)G(s) = G(s)K(s) !!

O. Sename [GIPSA-lab]

26/133

Performance analysis

Denition of the sensitivity functions

Denition of the sensitivity functions- The MIMO case


Denitions
Output and Output complementary sensitivity functions:
Sy = (Ip + GK)1 ,

Ty = (Ip + GK)1 GK,

Sy + Ty = Ip

Input and Input complementary sensitivity functions:


Su = (Im + KG)1 ,

Tu = KG(Im + KG)1 , Su + Tu = Im

Properties
Ty = GK(Ip + GK)1
Tu = (Im + KG)1 KG
Su K = KSy

O. Sename [GIPSA-lab]

27/133

Performance analysis

Denition of the sensitivity functions

MIMO Input/Output performances


Dening two new sensitivity functions:
Plant Sensitivity: Sy G = Sy (s).G(s)
Controller Sensitivity: KSy = K(s).Sy (s)

O. Sename [GIPSA-lab]

28/133

Performance analysis

Frequency-domain analysis

Frequency-domain analysis- Some classical analysis criteria (1)


The transfer function KSy (s) should be
upper bounded so that u(t) does not
reach the physical constraints, even for
a large reference r(t)
The effect of the measurement noise
n(t) on the plant input u(t) can be
made small by making the
sensitivity function KSu (s) small (in
High Frequencies)
The effect of the input disturbance di (t)
on the plant input u(t) + di (t) (actuator)
can be made small by making the
sensitivity function Su (s) small (take
care to not trying to minimize Tu which
is not possible)

O. Sename [GIPSA-lab]

29/133

Performance analysis

Frequency-domain analysis

Frequency-domain analysis- Some classical analysis criteria (2)


The plant output y(t) can track the
reference r(t) by making the
complementary sensitivity function
Ty (s) equal to 1. (servo pb)
The effect of the output disturbance
dy (t) (resp. input disturbance di (t) ) on
the plant output y(t) can be made
small by making the sensitivity
function Sy (s) (resp. Sy G(s) ) small
The effect of the measurement noise
n(t) on the plant output y(t) can be
made small by making the
complementary sensitivity function
Ty (s) small

O. Sename [GIPSA-lab]

30/133

Performance analysis

Frequency-domain analysis

Trade-offs
But
S + T = I
Some trade-offs are to be looked for...
These trade-offs can be reached if one aims :
to reject the disturbance effects in low frequencies
to minimize the noise effects in high frequencies
It remains to require:
Sy and Sy G to be small in low frequencies to reduce the load (output and input) disturbance
effects on the controlled output
Ty and KSy to be small in high frequencies to reduce the effects of measurement noises on
the controlled output and on the control input (actuator efforts)

O. Sename [GIPSA-lab]

31/133

Performance analysis

Frequency-domain analysis

Stability and robustness margins ...


Classical denitions:
Gain Margin:indicates the additional
gain that would take the closed loop
to the critical stability condition
Phase margin: quanties the pure
phase delay that should be added to
achieve the same critical stability
condition
Delay margin: quanties the
maximal delay that should be added
in the loop to achieve the same
critical stability condition

O. Sename [GIPSA-lab]

32/133

Performance analysis

Frequency-domain analysis

Robustness margins ...


It is important to consider the module
margin that quanties the minimal
distance between the curve and the
critical point (-1,0j): this is a robustness
margin.

The MODULE MARGIN is a robustness


margin. Indeed, the inuence of plant
modelling errors on the CL transfer function:
T =

K(s)G(s)
1 + K(s)G(s)

is given by:
1
G
G
T
=
= S.
T
1 + K(s)G(s) G
G
A good module margin implies good gain and
phase margins:
GM

1
MS
andP M
MS 1
MS

For MS = 2, then GM > 2 and P M > 30


Last:
M = 1/M
S
MS = max |S(j)| =

MT = max |T (j)|

A good value : MT < 1.5(3.5dB)

Good value MS < 2 (6dB)


O. Sename [GIPSA-lab]

33/133

Performance analysis

Frequency-domain analysis

Frequency-domain analysis- Dynamical behavior


As mentioned in [?]:
The concept of bandwidth is very important in understanding the benets and trade-offs involved
when applying feedback control. Above we considered peaks of closed-loop transfer functions,
which are related to the quality of the response. However, for performance we must also consider
the speed of the response, and this leads to considering the bandwidth frequency of the system.
In general, a large bandwidth corresponds to a faster rise time, since high frequency signals are
more easily passed on to the outputs. A high bandwidth also indicates a system which is sensitive
to noise and to parameter variations. Conversely, if the bandwidth is small, the time response will
generally be slow, and the system will usually be more robust.
Denition
Loosely speaking, bandwidth may be dened as the frequency range [1 , 2 ] over which control is
effective. In most cases we require tight control at steady-state so 1 = 0, and we then simply call
2 the bandwidth. The word "effective" may be interpreted in different ways : globally it means
benet in terms of performance.

O. Sename [GIPSA-lab]

34/133

Performance analysis

Frequency-domain analysis

Frequency-domain analysis- Bandwidth denitions


Denition (S )
The (closed-loop) bandwidth, S , is the frequency where |S(j)| crosses 3dB (1/sqrt2) from
below.
Remark: |S| < 0.707, frequency zone, where e/r = S is reasonably small
Denition (T )
The bandwidth (in term of T ), T , is the frequency where |T (j)| crosses 3dB (1/sqrt2) from
above.
Denition (c )
The bandwidth (crossover frequency), c , is the frequency where |L(j)| crosses 1 (0dB), for the
rst time, from above.

O. Sename [GIPSA-lab]

35/133

Performance analysis

Frequency-domain analysis

Some remarks
Remark
Usually S < c < T
Remark
In most cases, the two denitions in terms of S and T yield similar values for the bandwidth. In
other cases, the situation is generally as follows. Up to the frequency S , |S| is less than 0.7, and
control is effective in terms of improving performance. In the frequency range [S , T ] control still
affects the response, but does not improve performance. Finally, at frequencies higher than T ,
we have S 1 and control has no signicant effect on the response.
Remark
Usually S < c < T
Finally the following relation is very useful to evaluate the rise time:
tr =

O. Sename [GIPSA-lab]

2.3
T

36/133

Performance analysis

Frequency-domain analysis

Examples

O. Sename [GIPSA-lab]

37/133

Performance analysis

Stability issues

Well-posedness

Consider
G=

s1
,
s+2

Therefore the control input is non proper:


u=

s+2
s1
(r n dy ) +
di
3
3

DEF: A closed-loop system is well-posed if all the transfer functions are proper

I + K()G() is invertible

In the example 1 + 1 (1) = 0 Note that if G is strictly proper, this always holds.

O. Sename [GIPSA-lab]

38/133

K=1

Performance analysis

Stability issues

Internal stability
DEF: A system is internally stable if all the transfer functions of the closed-loop system are stable

Figure: Control scheme

y
u

(I + GK)1 GK
K(I + GK)1

(I + GK)1 G
K(I + GK)1 G

r
di

For instance :
G=

1
,
s1

K=

s1
,
s+1

y
u

1
s+2
s1
s+2

s+1
(s1)(s+2)
1
s+2

r
di

There is one RHP pole (1), which means that this system is not internally stable. This is due here
to the pole/zero cancellation (forbidden!!).

O. Sename [GIPSA-lab]

39/133

Performance analysis

Stability issues

Small Gain theorem


Consider the so called M loop.

Figure: M form

Theorem
Suppose M (s) in RH and a positive scalar. Then the system is well-posed and internally
stable for all (s) in RH such that 1/ if and only if
M

O. Sename [GIPSA-lab]

<

40/133

Performance analysis

Stability issues

Input-Output Stability
Denition (BIBO stability)
A system G (x = Ax + Bu; y = Cx) is BIBO stable if a bounded input u(.) ( u

bounded output y(.) ( y < ).

< ) maps a

Now, the quantication (for BIBO stable systems) of the signal amplication (gain) is evaluated as:
peak =

sup
0< u <

y
u

and is referred to as the PEAK TO PEAK Gain.


Denition (L2 stability)
A system G (x = Ax + Bu; y = Cx) is L2 stable if u

< implies y

< .

Now, the quantication of the signal amplication (gain) is evaluated as:


energy =

sup
0< u 2 <

y
u

2
2

and is referred to as the ENERGY Gain, and is such that:


energy = sup G(j) := G

For a linear system, these stability denitions are equivalent (but not the quantication criteria).
O. Sename [GIPSA-lab]

41/133

Performance specications

Outline
1

The H norm and related denitions


H norm as a measure of the system gain ?
LTI systems and signals norms
Performance analysis
Denition of the sensitivity functions
Frequency-domain analysis
Stability issues
Performance specications for analysis and/or design
Introduction
SISO case
MIMO case
Some performance limitations
H control design
About the control structure
Solving the H control problem
The Riccati approach
Example
Introduction to Linear Matrix Inequalities
Background in Optimisation
LMI in control
The LMI approach for H control design
Some useful lemmas
Uncertainty modelling and robustness analysis
Introduction
Representation of uncertainties
Denition of Robustness analysis
Robustness analysis: the unstructured case
Robustness analysis: the structured case
Towards Robust control design
Introduction to LPV systems and control
LPV modelling
LPV Control
O. Sename [GIPSA-lab]

42/133

Performance specications

Introduction

Framework... templates
Objective : good performance specications are important to ensure better control system
mean : give some templates on the sensitivity functions
For simplicity, presentation for SISO systems rst.
Sketch of the method:
Robustness and performances in regulation can be specied by imposing frequential
templates on the sensitivity functions.
If the sensitivity functions stay within these templates, the control objectives are met.
These templates can be used for analysis and/or design. In the latter they are considered as
weights on the sensitivity functions
The shapes of typical templates on the sensitivity functions are given in the following slides
Mathematically, these specications may be captured by an upper bound, on the magnitude of a
sensitivity function, given by another transfer function, as for S:
|S(j)|

1
,
|We (j)|

We S

where We (s) is a WEIGHT selected by the designer.

O. Sename [GIPSA-lab]

43/133

Performance specications

SISO case

Template on the sensitivity function - Weighted sensitivity


Typical specications in terms of S include:
1

Minimum bandwidth frequency S

Maximum tracking error at selected frequencies.

System type, or the maximum steady-state tracking error

Shape of S over selected frequency ranges.

Maximum peak magnitude of S, ||S|| < MS .

The peak specication prevents amplication of noise at high frequencies, and also introduces a
margin of robustness; typically we select MS = 2.

O. Sename [GIPSA-lab]

44/133

Performance specications

SISO case

Template on the sensitivity function S


S(s) =

1
1 + K(s)G(s)

s + b
1
=
We (s)
s/MS + b
Generally 0 is considered, MS < 2
(6dB) or (3dB - cautious) to ensure
sufcient module margin.
b inuences the CL bandwidth : b
faster CL tracking response
better robustness w.r.t. parametric
uncertainties

10

Template on the sensitivity function S


Template on the Sensitivity function S

0
MS = 2 (6dB)
10
Singular Values (dB)

faster rejection of the disturbance

20
b s.t. |1/We | = 0dB

30
40
50
60 4
10
O. Sename [GIPSA-lab]

= 1e 3

10

10 Frequency (rad/sec) 10
10
0

45/133

10

Performance specications

SISO case

Template on the function KS


KS(s) =

K(s)
1 + K(s)G(s)

1 s + bc
1
=
Wu (s)
s + bc /Mu
Mu chosen according to LF behavior of
the process (actuator constraints:
saturations)
bc inuences the CL bandwidth : bc

Template on the Controller*Sensitivity KS

better limitation of measurement


noises

0
Singular Values (dB)

roll-off starting from bc to reduce


modeling errors effects

10

= 2

10
20
30

bc f o r |1 / W u | = 0 d B
c

40

= 1 e-3

50
60

10
Frequency (rad/sec)
O. Sename [GIPSA-lab]

46/133

10

Performance specications

SISO case

Template on the function T


T (s) =

K(s)G(s)
1 + K(s)G(s)

T s + bt
1
=
WT (s)
s + bt /MT

better noise effects rejection


better ltering of HF modelling errors

10

Template on the Complementary sensitivity function T

0
10
Singular Values (dB)

Generally T
0 is considered, MSG
allows to limit the overshoot in the
response to input disturbances.
SG inuences the bandwidth hence the
transient behavior of the disturbance
rejection properties: bt

MT =1.5

20

bT s.t. |1/WT | = 0 dB

30
40

T =1e-3

50
60 4
10
O. Sename [GIPSA-lab]

10

10 Frequency (rad/sec) 10
10
0

47/133

10

Performance specications

SISO case

Template on the function SG


SG(s) =

G(s)
1 + K(s)G(s)

s + SG SG
1
=
WSG (s)
s/MSG + SG
20

Template on the Sensitivity*Plant SG

10
Singular Values (dB)

Generally SG 0 is considered,
MT < 1.5 (3dB) to limit the overshoot.
SG inuences the CL bandwidth :
SG = faster rejection of the
disturbance.

MSG = 10

10
20

sg s.t. |1/WSG | = 0 dB
SG =1e-2

30
40 4
10

O. Sename [GIPSA-lab]

10

10 Frequency (rad/sec) 10
10
0

48/133

10

Performance specications

MIMO case

A rst insight into the MIMO case


The direct extension of the performances objectives to MIMO systems could be formulated as
follows:
1

Disturbance attenuation/closed-loop performances:


(Sy ) <

1
W1 (j)

with W1 (j) > 1 for < b


2

Actuator constraints:
(KSy ) <

1
W2 (j)

with W2 (j) > 1 for > h


3

Robustness to multiplicative uncertainties:


(Ty ) <

1
W3 (j)

with W3 (j) > 1 for > t


However these objectives do not consider the specic MIMO structure of the system, i.e. the
input-output relationship between actuators and sensors.
It is then better to dene the objectives accordingly with the system inputs and outputs.

O. Sename [GIPSA-lab]

49/133

Performance specications

MIMO case

Towards MIMO systems


Let us consider a system with 2 inputs and 1 output and dene:
G=

G1

G2

, K=

K1
K2

Therefore
GK = G1 K1 + G2 K2 ,

K1 G1
K2 G1

KG =

K 1 G2
K2 G2

and the sensitivity functions are:


Sy =

1
, KSy =
1 + G1 K1 + G2 K2

K1
1+G1 K1 +G2 K2
K2
1+G1 K1 +G2 K2

While a single template We is convenient for Sy it is straightforward that the following diagonal
template should be used for KSy :
Wu (s) =

1
Wu (s)
0

0
2
Wu (s)

2
1
where Wu and Wu are chosen in order to account for each actuator specicity (constraint).

O. Sename [GIPSA-lab]

50/133

Performance specications

MIMO case

The MIMO general case


Let us consider G with m inputs and p outputs.
In the MIMO case the simplest way is to dened the templates as diagonal transfer matrices,
i.e. using (MSi , bi , i )
In that case, a weighting function should be dedicated for each input, and for each output.
These weighting functions may of course be different if the specications on each actuator
(e.g. saturation), and on each sensor (e.g. noise), are different.
In addition, during the performance analysis step, take care to plot, in addition to the MIMO
sensitivity functions, the individual ones related to each input/output to check if the individual
specication is met. Hence, in the simplest case:
1

If the specications are identical then it is sufcient to plot:


(Sy (j)) and

1
, for all
|We (j)|
1
, for all
|Wu (j)|

(KSy (j)) and

If the specications are different, one should plot


1
i , for
|We |
and 1k ,
|Wu |

(Sy (i, :)) and

all , i = 1, . . . , p

(KSy (k, :))

for all , k = 1, . . . , m.

i.e. p plots for all output behaviors and m plots for the input ones.
3

In a very general case, plot (Sy ) with (1/We )

O. Sename [GIPSA-lab]

51/133

Performance specications

MIMO case

More on weighting functions


When tighter (harder) objectives are to be met .....
the templates can be dened more accurately by transfer functions of order greater than 1, as
s/M S + b k
,
s + b
if a roll-off of 20 k dB per decade is required.
Take care to the choice of the parameters (MS , b , ) to avoid incoherent objectives!
We (s) =

$1/W_u$ and $1/Wu_^2$ with parameter modification


20
Original weight (specications) Mu =2,

= 0.01, b c=100 for Wu

Wu and Wu square without parameter modification


10

20

Mu = 2, 1 = 0.01,
2
b c=200 for 1/Wu case 2

Mu=2, wbc=100, epsi1=0.01

10

0
Singular Values (dB)

Singular Values (dB)

0
10
20
30

10

Mu = 2, 1 = 0.01,
2
b c=400 for 1/Wu case 3

20

40
30

50
60

Mu = 2, 1 = 0.01,
2
b c=100 for 1/Wu case 1

40

70
80 0
10

10

10

10

Frequency (rad/sec)
O. Sename [GIPSA-lab]

10

10

10

50 0
10

10

10

10
Frequency (rad/sec)
52/133

10

10

Performance specications

MIMO case

Final objectives
In terms of control synthesis, all these specications can be tackled in the following problem: nd
K(s) s.t.
We S
Wu KS
WT T
WSG SG

We S 1
Wu KS 1

WSG SG 1
WT T 1

Often, the simpler following one (referred to as the mixed sensitivity problem) is studied:
Find K s.t.

We S
Wu KS

since the latter allows to consider the closed-loop output performance as well as the actuator
constraints.

O. Sename [GIPSA-lab]

53/133

Performance specications

Some performance limitations

Introduction
Framework
Main extracts of this part: see Goodwin et al 2001. "Performance limitations in control are not only
inherently interesting, but also have a major impact on real world problems."
Objective : take into account the limitations inherent to the system or due to actuators constraints,
before designing the controller..... Understanding what is not possible is as important as
understanding what is possible!
Example of structural constraints
S + T = 1,
We then cannot have, for any frequency 0 , |S(j0 )| < 1 and |T (j0 )| < 1. This implies that,
disturbance and noise rejection cannot be achieved in the same frequency range.
Bodes Sensitivity Integral for open-loop stable systems
It is known that, for open loop stable plant:

log|S(j)|d = 0
0

Then the frequency range where |S(j)| < 1 is balanced by the frenquencies where |S(j)| > 1
O. Sename [GIPSA-lab]

54/133

Performance specications

Some performance limitations

Bode sensitivity
Nice interpretation of the balance between reduction and magnication of the sensitivity.

For unstable system we have stronger constraints:


Np

log|det(S(j))|d =
0

Re(pi ),
i=1

where pi design the Np RHP poles. Therefore, in the presence of RHP poles, the control effort
necessary to stabilize the system is paid in terms of amplication of the sensitivity magnitude.
O. Sename [GIPSA-lab]

55/133

Performance specications

Some performance limitations

The interesting case of systems with RHP zeros


Theorem
Let G(s) a MIMO plant with one RHP zero at s = z, and Wp (s) be a scalar weight. Then,
closed-loop stability is ensured only if:
Wp (s)S(s) |Wp (s = z)|
To illustrate the use of that theorem, if Wp is chosen as:
s/MS + b
,
s + b
and , if the controller meets the requirements, then
Wp (s) =

Wp (s)S(s)

Therefore a necessary condition is:


|

z/MS + b
| 1
z + b

To conclude, if z is real, and if the performance specications are such that : MS = 2 and = 0,
then a necessary condition to meet the performance requirements is :
z
b
2
O. Sename [GIPSA-lab]

56/133

H control design

Outline
1

The H norm and related denitions


H norm as a measure of the system gain ?
LTI systems and signals norms
Performance analysis
Denition of the sensitivity functions
Frequency-domain analysis
Stability issues
Performance specications for analysis and/or design
Introduction
SISO case
MIMO case
Some performance limitations
H control design
About the control structure
Solving the H control problem
The Riccati approach
Example
Introduction to Linear Matrix Inequalities
Background in Optimisation
LMI in control
The LMI approach for H control design
Some useful lemmas
Uncertainty modelling and robustness analysis
Introduction
Representation of uncertainties
Denition of Robustness analysis
Robustness analysis: the unstructured case
Robustness analysis: the structured case
Towards Robust control design
Introduction to LPV systems and control
LPV modelling
LPV Control
O. Sename [GIPSA-lab]

57/133

H control design

About the control structure

The General Control Conguration


This approach has been introduced by Doyle (1983). The formulation makes use of the general
control conguration.

P is the generalized plant (contains the plant, the weights, the uncertainties if any) ; K is the
controller. The closed-loop transfer function is given by:
Tew (s) = Fl (P, K) = P11 + P12 K(I P22 K)1 P21
where Fl (P, K) is referred to as a lower Linear Fractional Transformation.

O. Sename [GIPSA-lab]

58/133

H control design

About the control structure

H control design- Problem denition


The overall control objective is to minimize some norm of the transfer function from w to e , for
example, the H norm.
Denition (H suboptimal control problem)
H control problem: Find a controller K(s) which based on the information in y, generates a
control signal u which counteracts the inuence of w on e, thereby minimizing the closed-loop
norm from w to e.
Denition (H optimal control problem)
Given a pre-specied attenuation level, a H sub-optimal control problem is to design a
stabilizing controller that ensures :
Tew (s)

max (Tew (j))

The optimal problem aims at nding min .

O. Sename [GIPSA-lab]

59/133

H control design

About the control structure

H control design- Problem formulation


It will be shown how to formulate such a control problem using "classical" control tools. The
procedure will be 2-steps:
Build a control scheme s.t. the closed-loop system matrix does correspond to the tackled H
problem (for instance the mixed sensitivity problem). Use of Matlab, sysic tool.
Use an optimisation algorithm that nds the controller K solution of the considered problem.

Illustration on

We S
Wu KS

We S
i.e a system with
Wu KS
and KS = u , the control scheme needs only one external
r

In that case the closed-loop system must be Tew (s)


1 input and 2 outputs. Since S =
input r.

O. Sename [GIPSA-lab]

ry
r

60/133

H control design

About the control structure

How to consider performance specication in H control ?


Note that: in practice the performance specication concerns at least two sensitivity functions (S
and KS) in order to take into account the tracking objective as well as the actuator constraints.
Control objectives:
y = Gu = GK(r y) tracking error : = Sr
u = K(r y) = K(r Gu) actuator force : u = KSr
To cope with that control objectives the following control scheme is considered:

Objective w.r.t sensitivity functions: We S 1,


Idea: dene 2 new virtual controlled outputs:

Wu KS

1.

e1 = We Sr
e2 = Wu KSr

O. Sename [GIPSA-lab]

61/133

H control design

About the control structure

About the control structure- Problem denition


The performance specications on the tracking error & on the actuator, given as some weights on
the controlled output, then leads to the new control scheme:

The associated general control conguration is :

O. Sename [GIPSA-lab]

62/133

H control design

About the control structure

About the control structure- Problem denition


The corresponding H suboptimal control problem is therefore to nd a controller K(s) such that
We S
Tew (s) =
with
Wu KS
Tew (s) = Fl (P, K) = P11 + P12 K(I P22 K)1 P21
We
We G
=
+
K(I + GK)1 I
0
Wu
We S
=
Wu KS
in Matlab

O. Sename [GIPSA-lab]

63/133

H control design

About the control structure

What about disturbance attenuation ?


To account for input disturbance rejection, the control scheme must include di :

This corresponds to the closed-loop system.


Tew =

We Sy
Wu KSy

We Sy G
Wu Tu

The new H control problem therefore includes the input disturbance rejection objective, thanks
to Sy G that should satisfy the same template as S, i.e an high-pass lter!
Remarks: Note that Wu Tu is an additional constraint that may lead to an increase of the
attenuation level since it is not part of the objectives. Hopefully Tu is low pass, and Wu as well.
The input weight has to be on u not u + di which would lead to an unsolvable problem.
O. Sename [GIPSA-lab]

64/133

H control design

About the control structure

Improve the disturbance attenuation


The previous problem, allows to ensure the input disturbance rejection, but does not provide any
additional d-o-f to improve it (without impacting the tracking performance). In order to decouple
both performance objectives, the idea is to add a disturbance model that indeed changes the
disturbance rejection properties.
Let then consider : di (t) = Wd .d. In that case the closed-loop system is This corresponds to the
closed-loop system.
We Sy
We Sy GWd
Tew =
Wu KSy
Wu Tu Wd
and the template expected for Sy G is now W 1 .
d .We
First interest: improve the disturbance weight as Wd = 100... but this has a price (see Fig. below
for an example)
Sensitivity*Plant SG

Controller*Sensitivity KS

20

40
30

with Wd=1

with Wd=100
20

Singular Values (dB)

Magnitude (dB)

-20

-40

-60

with Wd=100

10
0
-10

-20
-80
with Wd=1

-30
-100
-40

-120 -2
10

10

-1

10
10
Frequency (rad/sec)

O. Sename [GIPSA-lab]

10

10

-50 -2
10

10

-1

10
10
Frequency (rad/sec)

10

65/133

10

H control design

About the control structure

More generally...
To include multiple objectives in a SINGLE H control problem, there are 2 ways:
1

add some external inputs (reference, noise, disturbance, uncertainties ...)

add new controlled outputs

Of course both ways increase the dimension of the problem to be solved....thus the complexity as
well. Moreover additional constraints appear that are not part of the objectives ....
General rule: rst think simple !!

O. Sename [GIPSA-lab]

66/133

H control design

Solving the H control problem

Solving the H control problem


The solution of the H control problem is based on a state space representation of P , the
generalized plant, that includes the plant model and the performance weights.
The calculation of the controller, solution of the H control problem , can then be done using the
Riccati approach or the LMI approach of the H control problem [?] [?].
Notations:

B1
B2
A

x = Ax + B1 w + B2 u
e = C1 x + D11 w + D12 u
P
P = C1
D11 D12

y = C2 x + D21 w + D22 u
C2
D21 D22
with x Rn , x Rnw , u Rnu , z Rnz et y Rny

O. Sename [GIPSA-lab]

67/133

H control design

Solving the H control problem

Problem formulation
Let K(s) be a dynamic output feedback LTI controller dened as
K(s) :

xK (t)

u(t)

=
=

AK xK (t) + BK y(t),
CK xK (t) + DK y(t).

where xK Rn , and AK , BK , CK and DK are matrices of appropriate dimensions.


Remark. The controller will be considered here of the same order (same number of state variables)
n than the generalized plant, which here, in the H framework, the order of the optimal controller.
With P (s) and K(s), the closed-loop system N (s) is:
N (s) :

xcl (t)

z(t)

=
=

A xcl (t) + B w(t),


C xcl (t) + D w(t),

(16)

where xT (t) = xT (t) xT (t) and


K
cl

A + B2 DK C2 B2 CK
A=
,

BK C2
AK

B1 + B2 DK D21
B=
,
BK D21

C = C1 + D12 DK C2 , D12 CK ,

D = B1 + B2 DK D21 .
The aim is of course to nd matrices AK , BK , CK and DK s.t. the H norm of the closed-loop
system (16) is as small as possible, i.e. opt = min s.t. ||N (s)|| < .
O. Sename [GIPSA-lab]

68/133

H control design

The Riccati approach

Asuumptions for the Riccati method


A1: (A, B2 ) stabilizable and (C2 , A) detectable: necessary for the existence of stabilizing
controllers
A2: rank(D12 ) = nu and rank(D21 ) = ny : Sufcient to ensure the controllers are proper, hence
realizable
A jIn
B2
= n + nu
A3: R, rank
C1
D12
A jIn
B1
= n + ny Both ensure that the optimal controller does
C2
D21
not try to cancel poles or zeros on the imaginary axis which would result in CL instability

A4: R, rank
A5:

D11 = 0,

D22 = 0,
B1
D21

D12 T [ C1
D21 T =

D12 ] =

Im2

0
Ip2

not necessary but simplify the solution (does correspond to the given theorem next but can be
easily relaxed)

O. Sename [GIPSA-lab]

69/133

H control design

The Riccati approach

The problem solvability


The rst step is to check whether a solution does exist of not, to the optimal control problem.
Theorem (1)
Under the assumptions A1 to A5, there exists a dynamic output feedback controller
u(t) = K(.) y(t) such that the closed-loop system is internally stable and the H norm of the
closed-loop system from the exogenous inputs w(t) to the controlled outputs z(t) is less than , if
and only if
i the Hamiltonian H =

A
T
C1 C1

T
T
2 B1 B1 B2 B2
AT

has no eigenvalues on the

imaginary axis.
T
T
T
ii there exists X 0 t.q. AT X + X A + X ( 2 B1 B1 B2 B2 ) X + C1 C1 = 0,

iii the Hamiltonian J =

AT
T
B1 B1

T
T
2 C1 C1 C2 C2
A

has no eigenvalues on the

imaginary axis.
T
T
T
iv there exists Y 0 t.q. A Y + Y AT + Y ( 2 C1 C1 C2 C2 ) Y + B1 B1 = 0,

v the spectral radius (X Y ) 2 .

O. Sename [GIPSA-lab]

70/133

H control design

The Riccati approach

Controller reconstruction
Theorem (2)
If the necessary and sufcient conditions of the Theorem 1 are satised, then the so-called central
controller is given by the state space representation
Ksub (s) =
with

A
F

Z L
0

A = A + 2 B1 B1 X + B2 F + Z L C2
TX ,
T
F = B2
L = Y C2
1
Z = I 2 Y X

The Controller structure is indeed an observer-based state feedback control law, with
T
u2 (t) = B2 X x(t),

where x(t) is the observer state vector

x(t) = A x(t) + B1 w(t) + B2 u(t) + Z L C2 x(t) y(t) .

(17)

and w(t) is dened as

T
w(t) = 2 B1 X x(t).

Remark. w(t) is an estimation of the worst case disturbance. Z L is the lter gain for the OE

problem of estimating x(t) in the presence of the worst case disturbance

O. Sename [GIPSA-lab]
71/133

Introduction to LMIs

Outline
1

The H norm and related denitions


H norm as a measure of the system gain ?
LTI systems and signals norms
Performance analysis
Denition of the sensitivity functions
Frequency-domain analysis
Stability issues
Performance specications for analysis and/or design
Introduction
SISO case
MIMO case
Some performance limitations
H control design
About the control structure
Solving the H control problem
The Riccati approach
Example
Introduction to Linear Matrix Inequalities
Background in Optimisation
LMI in control
The LMI approach for H control design
Some useful lemmas
Uncertainty modelling and robustness analysis
Introduction
Representation of uncertainties
Denition of Robustness analysis
Robustness analysis: the unstructured case
Robustness analysis: the structured case
Towards Robust control design
Introduction to LPV systems and control
LPV modelling
LPV Control
O. Sename [GIPSA-lab]

72/133

Introduction to LMIs

Background in Optimisation

Brief on optimisation
Denition (Convex function)
A function f : Rm R is convex if and only if for all x, y Rm and [0 1],
f (x + (1 )y) f (x) + (1 )f (y)

(18)

Equivalently, f is convex if and only if its epigraph,


epi(f ) = {(x, )|f (x) }

(19)

is convex.
Denition ((Strict) LMI constraint)
A Linear Matrix Inequality constraint on a vector x Rm is dened as,
m

F (x) = F0 +

Fi xi

0(

(20)

0)

i=1
T
where F0 = F0 and Fi = FiT Rnn are given, and symbol F
0( 0) means that F is
symmetric and positive semi-denite ( 0) or positive denite ( 0), i.e. {u|uT F u(>) 0}.

O. Sename [GIPSA-lab]

73/133

Introduction to LMIs

Background in Optimisation

Convex to LMIs
Example
Lyapunov equation. A very famous LMI constraint is the Lyapunov inequality of an autonomous
system x = Ax. Then the stability LMI associated is given by,

xT P x
xT (AT P + P A)x

>
<

0
0

(21)

which is equivalent to,


F (P ) =

P
0

0
AT P + P A

where P = P T is the decision variable. Then, the inequality F (P )

(22)

0
0 is linear in P .

LMI constraints F (x) 0 are convex in x, i.e. the set {x|F (x) 0} is convex. Then LMI based
optimization falls in the convex optimization. This property is fundamental because it guarantees
that the global (or optimal) solution x of the the minimization problem under LMI constraints can
be found efciently, in a polynomial time (by optimization algorithms like e.g. Ellipsoid, Interior
Point methods).

O. Sename [GIPSA-lab]

74/133

Introduction to LMIs

Background in Optimisation

LMI problem
Two kind of problems can be handled
Feasibility: The question whether or not there exist elements x X such that F (x) < 0 is
called a feasibility problem. The LMI F (x) < 0 is called feasible if such x exists,
otherwise it is said to be infeasible.
Optimization: Let an objective function f : S R where S = {x|F (x) < 0}. The problem to
determine
Vopt = infxS f (x)
is called an optimization problem with an LMI constraint. This problem involves
the determination of Vopt , the calculation of an almost optimal solution x (i.e., for
arbitrary > 0 the calculation of an x S such that Vopt f (x) Vopt + , or
the calculation of a optimal solutions xopt (elements xopt S such that
Vopt = f (xopt )).

O. Sename [GIPSA-lab]

75/133

Introduction to LMIs

Background in Optimisation

Examples of LMI problem


Stability analysis is a feasability problem.
LQ control is an optimization problem, formulated as:
LQ control
Consider a controllable system x = Ax + Bu. Find a state feedback u(t) = Kx(t) s.t

J = 0 (xT Qx + uT Ru)dt is minimum (given Q > 0 and R > 0) is an optimisation problem


whose solution is obtained solving the Riccati equation:
F ind P > 0, s.t. AT P + P A P BR1 B T P + Q = 0
and then the state feedback is given by:
u(t) = R1 B T P x(t)
which is equivalent to: nd P > 0 s.t
AT P + P A + Q
BT P

O. Sename [GIPSA-lab]

PB
R

>0

76/133

Introduction to LMIs

Background in Optimisation

Semi-Denite Programming (SDP) Problem


LMI programming is a generalization of the Linear Programming (LP) to cone positive
semi-denite matrices, which is dened as the set of all symmetric positive semi-denite matrices
of particular dimension.
Denition (SDP problem)
A SDP problem is dened as,
min
under constraint F (x)

cT x
0

(23)

where F (x) is an afne symmetric matrix function of x Rm (e.g. LMI) and c Rm is a given
real vector, that denes the problem objective.
SDP problems are theoretically tractable and practically:
They have a polynomial complexity, i.e. there exists an algorithm able to nd the global
minimum (for a given a priori xed precision) in a time polynomial in the size of the problem
(given by m, the number of variables and n, the size of the LMI).
SDP can be practically and efciently solved for LMIs of size up to 100 100 and m 1000
see ElGhaoui, 97. Note that today, due to extensive developments in this area, it may be even
larger.

O. Sename [GIPSA-lab]

77/133

Introduction to LMIs

LMI in control

The state feedback design problem


Stabilisation
Let us consider a controllable system x = Ax + Bu. The problem is to nd a state feedback

u(t) = Kx(t) s.t the closed-loop system is stable.


Using the Lyapunov theorem, this amounts at nding P = PT > 0 s.t:
(A BK)T P + P(A BK) < 0

AT P

+ PA K T B T P P BK < 0

which is obviously not linear...


Solution; use of change of variables
First, left and right multiplication by P1 leads to
P1 AT + AP1 P1 K T B T BKP1 < 0

QAT + AQ + YT B T + BY < 0

with Q = P1 and Y = KP1 .


The problem to be solved is therefore formulated as an LMI ! and without any conservatism !

O. Sename [GIPSA-lab]

78/133

Introduction to LMIs

LMI in control

The Bounded Real Lemma


The L2 -norm of the output z of a system LT I is uniformly bounded by times the L2 -norm of
the input w (initial condition x(0) = 0).
A dynamical system G = (A, B, C, D) is internally stable and with an ||G|| < if and only is
there exists a positive denite symmetric matrix P (i.e P = PT > 0 s.t
T

A P+PA PB
CT
T P
T < 0, P > 0.

(24)
B
I
D
C
D
I
The Bounded Real Lemma (BRL), can also be written as follows (see Scherer)

I
A

0
C

T
0
0
B P

I 0
D
0

P
0
0
0

0
0
2 I
0

0
I
0 A

0 0
C
I

0
B

I
D

(25)

Note that the BRL is an LMI if the only unknown (decision variables) are P and (or 2 ).

O. Sename [GIPSA-lab]

79/133

Introduction to LMIs

LMI in control

Quadratic stability
This concept is very useful for the stability analysis of uncertain systems.
Let us consider an uncertain system
x = A()x

where is an parameter vector that belongs to an uncertainty set .


Theorem
The considered system is said to be quadratically stable for all uncertainties if there exists a
(single) "Lyapunov function" P = PT > 0 s.t
A()T P + PA() < 0, for all

(26)

This is a sufcient condition for ROBUST Stability which is obtained when A() is stable for all
.

O. Sename [GIPSA-lab]

80/133

Introduction to LMIs

The LMI approach for H control design

- Solvability
In this case only A1 is necessary. The solution is base on the use of the Bounded Real Lemma,
and some relaxations that leads to an LMI problem to be solved [?].
when we refer to the H control problem, we mean: Find a controller C for system M such that,
given ,
||Fl (P, K)|| <
(27)

The minimum of this norm is denoted as and is called the optimal H gain. Hence, it comes,

min

(AK ,BK ,CK ,DK )s.t.AC

Tzw (s)

(28)

As presented in the previous sections, this condition is fullled thanks to the BRL. As a matter of
fact, the system is internally stable and meets the quadratic H performances iff. P = P T
0
such that,
T

A P + PA
PB
CT
2

(29)
BT P
2 I DT < 0
C
D
I
where A, B, C, D are given in (16). Since this inequality is not an LMI and not tractable for SDP
solver, relaxations have to be performed (indeed it is a BMI), as proposed in [?].

O. Sename [GIPSA-lab]

81/133

Introduction to LMIs

The LMI approach for H control design

- Problem solution
Theorem (LTI/H solution [?])
A dynamical output feedback controller of the form C(s) =

Ac
Cc

Bc
Dc

that solves the H

control problem, is obtained by solving the following LMIs in (X, Y, A, B, C and D), while
minimizing ,

M11 ()T ()T ()T


M21 M22 ()T ()T

M31 M32 M33 ()T 0


M41 M42 M43 M44
X In
0
In
Y

(30)

where,
T

T
M11 = AX + XAT + B2 C + C B2

T
T
M21 = A + AT + C2 D B2

T
M22 = YA + AT Y + BC2 + C2 B

T
T
T
M31 = B1 + D21 D B2

T
B1 Y

T T
D21 B

M32 =
+
M41 = C1 X + D12 C
M43 = D11 + D12 DD21

O. Sename [GIPSA-lab]

(31)

M33 = Inu
M42 = C1 + D12 DC2
M44 = Iny

82/133

Introduction to LMIs

The LMI approach for H control design

Controller reconstruction
Once A, B, C, D, X and Y have been obtained, the reconstruction procedure consists in nding
non singular matrices M and N s.t. M N T = I X Y and the controller K is obtained as follows

Dc = D

Cc = (C Dc C2 X)M T
(32)
Bc = N 1 (B YB2 Dc )

1
T
T
Ac = N (A YAX YB2 Dc C2 X N Bc C2 X YB2 Cc M )M
where M and N are dened such that M N T = In XY (that can be solved through a singular
value decomposition plus a Cholesky factorization).
Remark. Note that other relaxation methods can be used to solve this problem, as suggested by
[?].

O. Sename [GIPSA-lab]

83/133

Introduction to LMIs

Some useful lemmas

Schur lemma
Lemma
Let Q = QT and R = RT be afne matrices of compatible size, then the condition
Q
ST

S
R

(33)

is equivalent to
R
Q SR1 S T

0
0

(34)

The Schur lemma allows to a convert a quadratic constraint (ellipsoidal constraint) into an LMI
constraint.

O. Sename [GIPSA-lab]

84/133

Introduction to LMIs

Some useful lemmas

Kalman-Yakubovich-Popov lemma
Lemma
For any triple of matrices A Rnn , B Rnm , M R(n+m)(n+m) =

M11
M21

M12
M22

, the

following assessments are equivalent:


1

There exists a symmetric K = K T


I
A

0
B

0 s.t.
0
K

K
0

I
A

0
B

+M <0

M22 < 0 and for all R and complex vectors col(x, w) = 0


A jI

x
w

=0

x
w

x
w

<0

I
0
0 K
I
0
then the second statement is equivalent to
A B
K
0
A B
the condition that, for all R with det(jI A) = 0,
If M =

I
C(jI A)1 B + D

Q
ST

S
R

I
C(jI A)1 B + D

>0

This lemma is used to convert frequency inequalities into Linear Matrix Inequalities.
O. Sename [GIPSA-lab]

85/133

Introduction to LMIs

Some useful lemmas

Projection Lemma
Lemma
For given matrices W = W T , M and N , of appropriate size, there exists a real matrix K = K T
such that,
W + M KN T + N K T M T
0
(35)
if and only if there exist matrices U and V such that,
W + MU + UT MT
W + NV + V T NT

0
0

(36)

or, equivalently, if and only if,


T
M W M
T
N W N

0
0

(37)

T
where M and N are the orthogonal complements of M , N respectively (i.e. M M = 0).

The projection lemma is also widely used in control theory. It allows to eliminate variable by a
change of basis (projection in the kernel basis). It is involved in one of the H solutions [?]see
e.g..

O. Sename [GIPSA-lab]

86/133

Introduction to LMIs

Some useful lemmas

Completion Lemma
Lemma
Let X = X T , Y = Y T Rnn such that X > 0 and Y > 0. The three following statements are
equivalent:
1

There exist matrices X2 , Y2 Rnr and X3 , Y3 Rrr such that,


X
T
X2

X2
X3

0 and

X
I

I
Y

0 and rank

X
I

I
Y

X
I

I
Y

X
T
X2

X2
X3

Y
T
Y2

Y2
Y3

(38)

0 and rank [XY I] r

n+r

This lemma is useful for solving LMIs. It allow to simplify the number of variables when a matrix
and its inverse enter in a LMI.

O. Sename [GIPSA-lab]

87/133

Introduction to LMIs

Some useful lemmas

Finslers lemma
This Lemma allows the elimination of matrix variables.
Lemma
The following statement are equivalent
xT Ax < 0 for all x = 0 s:t: Bx = 0

B T AB < 0 where B B = 0
A + B T B < 0 for some scalar
A + XB + B T X T < 0 for some matrix X
T

B AB < 0

O. Sename [GIPSA-lab]

88/133

Robust analysis

Outline
1

The H norm and related denitions


H norm as a measure of the system gain ?
LTI systems and signals norms
Performance analysis
Denition of the sensitivity functions
Frequency-domain analysis
Stability issues
Performance specications for analysis and/or design
Introduction
SISO case
MIMO case
Some performance limitations
H control design
About the control structure
Solving the H control problem
The Riccati approach
Example
Introduction to Linear Matrix Inequalities
Background in Optimisation
LMI in control
The LMI approach for H control design
Some useful lemmas
Uncertainty modelling and robustness analysis
Introduction
Representation of uncertainties
Denition of Robustness analysis
Robustness analysis: the unstructured case
Robustness analysis: the structured case
Towards Robust control design
Introduction to LPV systems and control
LPV modelling
LPV Control
O. Sename [GIPSA-lab]

89/133

Robust analysis

Introduction

Introduction
A control system is robust if it is insensitive to differences between the actual system and the
model of the system which was used to design the controller
How to take into account the difference between the actual system and the model ?
A solution: using a model set BUT : very large problem and not exact yet
A method: these differences are referred as model uncertainty.
The approach
1

determine the uncertainty set: mathematical representation

check Robust Stability

check Robust Performance

Lots of forms can be derived according to both our knowledge of the physical mechanism that
cause the uncertainties and our ability to represent these mechanisms in a way that facilitates
convenient manipulation.
Several origins :
Approximate knowledge and variations of some parameters
Measurement imperfections (due to sensor)
At high frequencies, even the structure and the model order is unknown (100
Choice of simpler models for control synthesis
Controller implementation
Two classes: parametric uncertainties / neglected or unmodelled dynamics
O. Sename [GIPSA-lab]

90/133

Robust analysis

Representation of uncertainties

Example 1: uncertainties [?]

G(s) =

k
esh ,
1 + s

2 k, h, 3

Let us choose the nominal parameters as, k = h = = 2.5 and G the according nominal model.
We can dene the relative uncertainty, which is actually referred as a MULTIPLICATIVE
UNCERTAINTY, as

G(s) = G(s)(I + Wm (s)(s))


with Wm (s) = 3.5s+0.25
s+1
and 1

O. Sename [GIPSA-lab]

91/133

Robust analysis

Representation of uncertainties

Example 2: unmodelled dynamcis


Let us consider the system:

G(s) = G(s)

1
, max
1 + s

This can be modelled as:

G(s) = G0 (s)(I + Wm (s)(s)), Wm (s) =

max j
1 + max j

with 1
which can be represented as

with
N (s) =

O. Sename [GIPSA-lab]

N11 (s)
N21 (s)

N12 (s)
=
N22 (s)

0
G0 Wm (s)

I
G0 (s)

92/133

Robust analysis

Representation of uncertainties

Example 3: parametric uncertainties


Consider the rst order system:
G(s) =

1
,
s+a

a0 b < a < a0 + b

Dene now:
a = a0 + .b
with || < 1. Then it leads:
1
1
.b 1
1
=
=
(1 +
)
s+a
s + a0 + .b
s + a0
s + a0
This can then be represented as a Multiplicative Inverse Uncertainty:

with
z = y =

1
(w
s+a0

O. Sename [GIPSA-lab]

bu )
93/133

Robust analysis

Representation of uncertainties

Example 4: parametric uncertainties in state space equations


Let us consider the following uncertain system:

x1 = (2 + 1 )x1 + (3 + 2 )x2
x2 = (1 + 3 )x2 + u

G:

y
= x1

(39)

In order to use an LFT, let us dene the uncertain inputs:


u1 = 1 x1 , u2 = 2 x2 , u3 = 3 x2
Then the previous system can be rewritten in the following LFR:
where and y are given as:

1
0
0
x1
0 2
, y = x2
0
=
0
0 3
x2

and N given by the state space representation:

=
2x1 3x2 + u1 + u
x1
x2

=
x2 + u + u3
N :

y
=
x1

O. Sename [GIPSA-lab]

94/133

Robust analysis

Representation of uncertainties

Towards LFR (LFT)


The previous computations are in fact the rst step towards an unied representation of the
uncertainties: the Linear Fractional Representation (LFR).
Indeed the previous schemes can be rewritten in the following general representation as:

Figure: N structure

This LFR gives then the transfer matrix from w to z, and is referred to as the upper Linear
Fractional Transformation (LFT) :
Fu (N, ) = N22 + N21 (I N11 )1 N12
This LFT exists and is well-posed if (I N11 )1 is invertible

O. Sename [GIPSA-lab]

95/133

Robust analysis

Representation of uncertainties

LFT denition
In this representation N is known and (s) collects all the uncertainties taken into account for the
stability analysis of the uncertain closed-loop system.
(s) shall have the following structure:
(s) = diag {1 (s), , q (s), 1 Ir1 , , r Irr ,
k k

i
with i (s) RH i , i R and
Remark: (s) includes

1 Ic1 ,

c Icc }

C.

q full block transfer matrices,


r real diagonal blocks referred to as repeated scalars (indeed each block includes a real
parameter i repeated ri times),
c complex scalars

repeated ci times.

Constraints: The uncertainties must be normalized, i.e such that:

O. Sename [GIPSA-lab]

1, |i | 1, | i | 1

96/133

Robust analysis

Representation of uncertainties

Uncertainty types
We have seen in the previous examples the two important classes of uncertainties, namely:
UNSTRUCTURED UNCERTAINTIES: we ignore the structure of , considered as a full
complex perturbation matrix, such that 1.
We then look at the maximal admissible norm for , to get Robust Stability and Performance.
This will give a global sufcient condition on the robustness of the control scheme.
This may lead to conservative results since all uncertainties are collected into a single matrix
ignoring the specic role of each uncertain parameter/block.
STRUCTURED UNCERTAINTIES: we take into account the structure of , (always such that
1).
The robust analysis will then be carried out for each uncertain parameter/block.
This needs to introduce a new tool: the Structured Singular Value. We then can obtain more
ne results but using more complex tools.
The analysis is provided in what follows for both cases.
In Matlabthis analysis is provided in the tools robuststab and robustperf.

O. Sename [GIPSA-lab]

97/133

Robust analysis

Denition of Robustness analysis

Robustness analysis: problem formulation


Since the analysis will be carried you for a closed-loop system, N should be dened as the
connection of the plant and the controller. Therefore, in the framework of the H control, the
following extended General Control Conguration is considered:

Figure: P K structure

and N is such that


N = Fl (P, K)
O. Sename [GIPSA-lab]

98/133

Robust analysis

Denition of Robustness analysis

Robust analysis: problem denition


In the global P K General Control Conguration, the transfer matrix from w to z (i.e the
closed-loop uncertain system) is given by:
z = Fu (N, )w,
with Fu (N, ) = N22 + N21 (I N11 )1 N12 .
and the objectives are then formulated as follows:
Nominal stability (NS): N is internally stable
Nominal Performance (NP):

N22

< 1 and NS

Robust stability (RS): Fu (N, ) is stable ,


Robust performance (RP):

O. Sename [GIPSA-lab]

Fu (N, )

< 1 ,

< 1 and NS

< 1 and NS

99/133

Robust analysis

Denition of Robustness analysis

Towards Robust stability analysis


Robust Stability= with a given controller K, we determine wether the system remains stable for all
plants in the uncertainty set.
According to the denition of the previous upper LFT, when N is stable, the instability may only
come from (I N11 ). Then it is equivalent to study the M structure, given as:

Figure: M structure

This leads to the denition of the Small Gain Theorem


Theorem (Small Gain Theorem)
Suppose M RH . Then the closed-loop system in Fig. 7 is well-posed and internally stable
for all RH such that :

(resp. < ) if and only if

O. Sename [GIPSA-lab]

M (s)

< 1/(resp. M (s)

1)

100/133

Robust analysis

Robustness analysis: the unstructured case

Denition of the uncertainty types

Figure: 6 uncertainty representations


O. Sename [GIPSA-lab]

101/133

Robust analysis

Robustness analysis: the unstructured case

Robust stability analysis: additive case


Objective: applying the Small Gain Theorem to these unstructured uncertainty representations.
Let us consider the following simple control
scheme as:

The objective is to obtain:

Figure: Control scheme

Additive case:

G(s) = G(s) + WA (s)A (s).


Computing the N form gives
N (s) =

WA KSy
Sy

O. Sename [GIPSA-lab]

WA KSy
Ty

Output Multiplicative uncertainties:

G(s) = (I + WO (s)O (s))G(s).


Then it leads
N (s) =

WO Ty
Sy

WO Ty
Ty

102/133

Robust analysis

Robustness analysis: the unstructured case

General results
Theorem (Small Gain Theorem)
Consider the different uncertainty types, and assume that NS is achieved, i.e M RH for each
type. Then the closed-loop system is robustly stable, i.e. internally stable for all k RH (for
k =A, 0, I, iO, iI) such that :
Additive :
WA KSy 1
Additive Inverse:
WiA Sy 1
Output Multiplicative:
WO Ty 1
Input Multiplicative:
WI Tu 1
Output Inverse Multiplicative:
WiO Sy 1
Input Inverse Multiplicative:
WiI Su 1
This gives some robustness templates for the sensitivity functions. However this may be
conservative.

O. Sename [GIPSA-lab]

103/133

Robust analysis

Robustness analysis: the unstructured case

Illustration on the SISO case


Here Robust Stability is analyzed through the Nyquist plot. For illustration, let us consider the case
of Multiplicative uncertainties (Input and Output case are identical for SISO systems), i.e

G = G(I + Wm m )
Then the loop transfer function is given as:

L = GK = GK(I + Wm m ) = L + Wm Lm ;

According to the Nyquist theorem, RS is


achieved the the closed-loop system is

stable for any L should not encircle, i.e L


should not encircle -1 for all uncertainties.
According to the gure, a sufcient condition
is then:
|Wm L| < |1 + L| ,
Wm L < 1,
1+L
|Wm T | < 1

O. Sename [GIPSA-lab]

104/133

Robust analysis

Robustness analysis: the unstructured case

A rst insight in Robust Performance


Objective: applying the Small Gain Theorem to these unstructured uncertainty representations.
Let us consider the following simple control
scheme as:

Case of Output Multiplicative uncertainties:

G(s) = (I + WO (s)O (s))G(s).


Computing the N form gives

N (s)

N11 (s)
N21 (s)

WO Ty
We Sy

=
Figure: Control scheme

We wish to get:

N12 (s)
N22 (s)
WO Ty
We Sy

The objectives are then formulated as


follows:
NS: N is internally stable
NP:

We Sy

RS:

WO Ty

RP:

O. Sename [GIPSA-lab]

< 1 and NS
< 1 and NS

Fu (N, ) < 1 , < 1,


Sufcient condition: NS and
(WO Ty ) + (We Sy ) < 1,

105/133

Robust analysis

Robustness analysis: the unstructured case

Illustration on the SISO case


Here Robust Performance is analyzed through the Nyquist plot. For illustration, let us consider the
case of Multiplicative uncertainties (Input and Output case are identical for SISO systems), i.e

G = G(I + Wm m )
Then the loop transfer function is given as:

L = GK = GK(I + Wm m ) = L + Wm Lm ;

First NP is achieved when:


|We S| < 1 , |We | <
|1 + L| , .
Therefore RP is achieved if

We S < 1,

S,

|We | < 1 + L ,

L,

Since 1 + L |1 + L| |Wm Lm |, a
sufcient condition is actually:

O. Sename [GIPSA-lab]

|We | + |Wm L| < |1 + L| ,


|We S| + |Wm T | < 1,
106/133

Robust analysis

Robustness analysis: the structured case

The structured case


= {diag{1 , , q , 1 Ir1 , , r Irr ,

1 Ic1 ,

c Icc }

Ckk }

Cki ki ,

with i
i R, i C,
where i (s), i = 1, . . . , q, represent full block complex uncertainties, i (s), i = 1, . . . , r, real
parametric uncertainties, and i (s), i = 1, . . . , c, complex parametric uncertainties.
Taking into account the uncertainties leads to the following General Control Conguration,
(s) 
vr

zr

- P (s)
v

-e
y

K(s)
Figure: General control conguration with uncertainties

where .

O. Sename [GIPSA-lab]

107/133

(41)

Robust analysis

Robustness analysis: the structured case

The structured singular value


To handle parametric uncertainties, we need to introduce , the structured singular value, dened
as:
Denition ()
For M Cnn , the structure singular value is dened as:
(M ) :=

1
min{() : , det(I M ) = 0}

In other words, it allows to nd the smallest structured which makes det(I M ) = 0.


Theorem (The structured Small Gain Theorem)
Let M (s) be a MIMO LTI stable system and (s) a LTI uncertain stable matrix, (i.e. RH ).
The system in Fig. 7 is stable for all (s) in (41) if and only if:
R

(M (j)) 1, with M (s) := Nzv (s)

More generally both following statements are equivalent


For R, N (s) and (s) belong to RH , and
R,

(M (j))

the system represented in gure 7 is stable for any uncertainty (s) of the form (41) such
that :
O. Sename [GIPSA-lab]

108/133

Robust analysis

Robustness analysis: the structured case

Build the whole control scheme

O. Sename [GIPSA-lab]

109/133

Robust analysis

Robustness analysis: the structured case

Introduction of a ctive block


Usually only real parametric uncertainties (given in r ) are considered for RS analysis. RP
analysis also needs a ctive full block complex uncertainty, as below,

(s)
f


r

vr

z r

N (s)

Figure: N

where N (s) =

N11 (s)
N21 (s)

N12 (s)
N22 (s)

, and the closed-loop transfer matrix is:

Tew (s) = N22 (s) + N21 (s)(s)(I N11 (s))1 N12 (s)
O. Sename [GIPSA-lab]

(42)
110/133

Robust analysis

Robustness analysis: the structured case

Robust analysis theorem


For RS, we shall determine how large (in the sense of H ) can be without destabilizing the
feedback system. From (42), the feedback system becomes unstable if det(I N11 (s) = 0 for
some s C, (s) 0. The result is then the following.
Theorem
Assume that the nominal system New and the perturbations are stable. Then the feedback
system is stable for all allowed perturbations such that ||(s)| | < 1/ if and only if
R, (N11 (j)) .
Assuming nominal stability, RS and RP analysis for structured uncertainties are therefore such
that:
NP

(N22 ) = f (N22 ) 1,

RS

r (N11 ) < 1,

RP

(N ) < 1, , =

f
0

0
r

Finally, let us remark that the structured singular value cannot be explicitly determined, so that the
method consists in calculating an upper bound and a lower bound, as closed as possible to .

O. Sename [GIPSA-lab]

111/133

Robust analysis

Robustness analysis: the structured case

Summary
The steps to be followed in the RS/RP analysis for structured uncertainties are then:
Denition of the real uncertainties r and of the weighting functions
Evaluation of (N22 ) , (N11 ) and (N)
f

Computation of the admissible intervals for each parameter


Remark: The Robust Performance analysis is quite conservative and requires a tight denition of
the weighting functions that do represent the performance objectives to be satised by the
uncertain closed-loop system. Therefore it is necessary to distinguish the weighting functions
used for the nominal design from the ones used for RP analysis.

O. Sename [GIPSA-lab]

112/133

Robust analysis

Robust control design

Brief overview on robust control design


In order to design a robust control, i.e. a controller for which the synthesis actually accounts for
uncertainties, some of the methods are:
Unstructured uncertainties: Consider an uncertainty weight (unstructured form), and
include the Small Gain Condition through a new controlled output. For example, robustness
face to Ouptut Multiplicative Uncertainties can be considered into the design procedure
adding the controlled output ey = WO y, which, when tracking performance is expected, leads
to the condition WO Ty 1.
Structured uncertainties: the design of a robust controller in the presence of such
uncertainties is the synthesis. It is handled through an interactive procedure, referred to
as the DK iteration. This procedure is much more involved than a "simple" H control
design and often leads to an increase of the order of the controller (which is already the sum
of the order of the plant and of the weighting functions).
Use other mathematical representation of parametric uncertainties, [?], as for instance the
polytopic model. In that case the set of uncertain parameters is assumed to be a polytope
(i.e. a convex) set. The stability issue in that framework is referred to as the Quadratic
stability i.e nd a single Lyapunov function for the uncertainty set. While in the general case
this is an unbounded problem, in the polytopic case (or in the afne case), the stability is to be
analyzed only at the vertices of the polytope, which is a nite dimensional problem.
This approach can then be applied to nd a single controller, valid over the potyopic set. Note
that this approach gives rise to the LPV design for polytopic systems, as described next.

O. Sename [GIPSA-lab]

113/133

LPV systems

Outline
1

The H norm and related denitions


H norm as a measure of the system gain ?
LTI systems and signals norms
Performance analysis
Denition of the sensitivity functions
Frequency-domain analysis
Stability issues
Performance specications for analysis and/or design
Introduction
SISO case
MIMO case
Some performance limitations
H control design
About the control structure
Solving the H control problem
The Riccati approach
Example
Introduction to Linear Matrix Inequalities
Background in Optimisation
LMI in control
The LMI approach for H control design
Some useful lemmas
Uncertainty modelling and robustness analysis
Introduction
Representation of uncertainties
Denition of Robustness analysis
Robustness analysis: the unstructured case
Robustness analysis: the structured case
Towards Robust control design
Introduction to LPV systems and control
LPV modelling
LPV Control
O. Sename [GIPSA-lab]

114/133

LPV systems

LPV modelling

The LPV approach


Denition of an Linear Parameter Varying system

B1 ()
A()
x

() : z = C1 () D11 ()
y
C2 () D21 ()

B2 ()
x
D12 () w
D22 ()
u

x(t) Rn , ...., = (1 (t), 2 (t), . . . , N (t)) , is a vector of time-varying parameters (


convex set)

Example

(Scherer, ACC Tutorial 2012)

Dampened mass-spring system:


Exogeneous
Inputs

System()

z
y

athematical Systems Theory

Controlled
outputs

Measured
outputs

Control
Inputs

O. Sename [GIPSA-lab]

p C c p C k@tA p a u; y a x

First-order state-space representation:
0 1
0
10 1

d @pA
dt p

Only parameter is

0 1

I
a @ kH@tA c A @ p A C @ H A u;
p
I


a IH

0 1
@pA

k @t A
115/133

LPV systems

LPV modelling

Different Models
According to the dependency on the parameter set, we may have several classes of models:
1

Afne parameter dependency: A() = A0 + A1 1 + ... + AN N

Polynomial dependency: A() = A0 + A1 + A2 2 + ... + AS S

Rational
dependency:A() = [An0 + An1 n1 + ... + AnN nN ][I + Ad1 d1 + ... + AdN dN ]1

If = (x(t), t) then the system is referred to as quasi-LPV.


For instance:
x(t) = x2 (t) = (t)x(t)

with = x.

O. Sename [GIPSA-lab]

116/133

LPV systems

LPV modelling

Polytopic models
Let us denote N the number of parameters.
The parameter are assumed to be bounded : i i i .
The vector of parameters evolves inside a polytope represented by Z = 2N vertices i , as
Co{1 , . . . , Z }

(43)

It is then written as the convex combination:


Z

i i , i 0,

=
i=1

(44)

i = 1
i=1

where the vertices are dened by a vector i = [i1 , . . . , iN ] where ij equals j or j .


A system is then represented as
Z

() =

k ()
k=1

where

Ak
Ck

Bk
Dk

Ak
Ck

Bk
Dk

2N

with

k () = 1 , k () > 0
k=1

is a LTI system corresponding to a vertex k.

O. Sename [GIPSA-lab]

117/133

LPV systems

LPV modelling

Poytopic models
For a LPV system with 2 parameters, boundend 1,2 1,2 , the corresponding polytope
onws 4 vertices as:
P = (1 , 2 ), (1 , 2 ), (1 , 2 ), (1 , 2 )
(45)
The polytopic coordinates are (i ) are obtained as:
1 = (1 , 2 ),

1 =

1 1
1 1

2 = (1 , 2 ),

2 =

1 1
1 1

3 = (1 , 2 ),

3 =

4 = (1 , 2 ),

4 =

1 1
1 1
1 1
1 1

2 2
2 2
2 2
2 2
(46)

2 2
2 2
2 2
2 2
(k)

where 1 and 2 are the instantaneous values of the parameters (i in the implementation step).
The LPV system is then rewritten under the polytopic representation:
A(1,2 )
C(1,2 )

B(1,2 )
D(1,2 )

= 1
+ 3

O. Sename [GIPSA-lab]

A(1 )
C(1 )
A(3 )
C(3 )

B(1 )
D(1 )
B(3 )
D(3 )

+ 2
+ 4

A(2 )
C(2 )
A(4 )
C(4 )

B(2 )
D(2 )
B(4 )
D(4 )

118/133

(47)

LPV systems

LPV modelling

LFT models

z
y

The equation of the system under LFR representation is as


follows:

A
x
x

B
B1
B2
z C D D1 D2 w

z = C1
D1
D11
D12 w
y
C2
D2
D21
D22
u

Figure: System under LFT form

O. Sename [GIPSA-lab]

119/133

LPV systems

LPV modelling

Towards a LFT/LPV model of an AUV


Considered the NL model with 2 state variables (the pitch angle and velocity q):

=cos()q sin()r
M q = p r(Ix Iz ) m[Zg (q w r v)] (Zq m Zf V )gsin()

(Xq m Xf V )gcos()cos() + Mwq w|q| + Mqq q|q| + Ff ins


where M interia matrix, m AUV mass, V volume and mass density. The other parameters
(Ix , Iz , Zg , Zq , Zf , Xq , Xf , Mwq ) appear in the dynamical and hydrodynamical functions.
Ff ins : forces and moments due to the ns.
Tangent linearization around Xeq = [0 ueq 0 0 0 0 0 0 eq 0 0 0]:


=q

M q = [(Zg m Zf V )gcos(eq ) + (Xg m Xf V )gsin(eq )] + Ff inseq

where and q are the variations of and q.

O. Sename [GIPSA-lab]

120/133

(48)

LPV systems

LPV modelling

A LFR model
An LFR model of the vehicle described in the form:

()
w
wk
uk

P (z)

zk
yk

The block contains the varying part of the model, which depends on the linearization point (eq ).
The LFR form is dened by:

u
xk+1 = Axk + B B1

u
(49)
u
C
D
0
y

=
xk +

C1
0
D1
y
u

O. Sename [GIPSA-lab]

121/133

LPV systems

LPV modelling

A LFR model
with

A=
B1 =
D =

0
0

1
0

, B =

0
(Zq m Zf V )g

0
(Xq m Xf V )g

0
Ff ins

, C =

1
0

0
1

0
0

0
0

, D1 =

z =

0
0

1
0

, C1 =

1
0

0
0

; u = z ; = 1

(50)

0
2

(51)

with:
1 = cos(eq )
2 = sin(eq )

O. Sename [GIPSA-lab]

(52)

122/133

LPV systems

LPV Control

Towards LPV control


The "gain scheduling" approach
External
parameters

Adaptation
strategy

References
Controller()

Measured orestimated
Parameters

Control
Inputs

Outputs
System()

Some references
Modelling, identication : (Bruzelius, Bamieh, Lovera, Toth)
Control (Shamma, Apkarian & Gahinet, Adams, Packard, Beker ...)
Stability, stabilization (Scherer, Wu, Blanchini ...)
Geometric analysis (Bokor & Balas)

O. Sename [GIPSA-lab]

123/133

LPV systems

LPV Control

The H /LP V control problem


Denition
Find a LPV controller C() s.t the closed-loop system is stable and for > 0, sup

z 2
w 2

< ,

Unbounded set of LMIs (Linear Matrix Inequalities) to be solved ( )


Some approaches: polytopic, LFT, gridding. See Arzelier [HDR, 2005], Bruzelius [Thesis,
2004], Apkarian et al. [TAC, 1995]...
A solution: The "polytopic" approach [C. Scherer et al. 1997]
Problem solved off line for each vertex of a polytope (convex optimisation) (using here a
single Lyapunov function i.e. quadratic stabilization).
On-line the controller is computed as the convex combination of local linear controllers

2N

C() =

k ()
k=1

Ac (k )
Cc (k )

Bc (k )
Dc (k )

C(2 )

k () = 1 , k () > 0
k=1

C(1 )
1

Easy implementation !!

O. Sename [GIPSA-lab]

C(4 )
C()

2N

124/133

C(3 )

- 1

LPV systems

LPV Control

LPV control design


CL ()
w

Generalized
plant
()

w: exagenous input
u: control input

z: output to minimize
y: measurement

Controller
S ()

Problem on standard form

Dynamical LPV generalized plant:

A()
z = C1 ()
() :
y
C2 ()

B1 ()
D11 ()
D21 ()

B2 ()
x
w
D12 ()
D22 ()
u

(53)

LPV controller structure:


S() :

xc

Ac ()
Cc ()

Bc ()
Dc ()

xc
y

(54)

A()
C()

B()
D()

(55)

LPV closed-loop system:


CL() :

O. Sename [GIPSA-lab]

125/133

LPV systems

LPV Control

LPV control design


H criteria Apkarian et al. [TAC, 1995]
Stabilize system CL() (nd K > 0) while minimizing .

A()T K + KA() KB () C ()T


2

B ()T K
I
D ()T < 0
C ()
D ()
I

Innite set of LMIs to solve ( ) ( is convex)


LPV control designs Arzelier [HDR, 2005], Bruzelius [Thesis, 2004]
LFT, Gridding, Polytopic

O. Sename [GIPSA-lab]

126/133

LPV systems

LPV Control

LPV control design


Polytopic approach
Solve the LMIs at each vertex of the polytope formed by the extremum values of each varying
parameter, with a common K Lyapunov function.
2N

C() =

Ac (k )
Cc (k )

k ()
k=1

Bc (k )
Dc (k )

where,
k () =

N
c
j=1 |j C (k )j |
N
j=1 (j j )

where C c (k )j = {j if (k )j = j or j } otherwise.
2N

k () = 1 , k () > 0
k=1
2
2

O. Sename [GIPSA-lab]

C(2 )

C(1 )

C(4 )
C()

C(3 )

127/133

LPV systems

LPV Control

LPV/H control synthesis


Proposition - feasibility (brief) Scherer et al. (1997)
Solve the following problem at each vertices of the parametrized points (illustration with 2
parameters):
= min
s.t. (57) |1 ,2
s.t. (57) |1 ,2
s.t. (57) |1 ,2
s.t. (57) |1 ,2

AX + B2 C(1 , 2 ) + ( )T
( )T
( )T ( )T

A(1 , 2 ) + AT
YA + B(1 , 2 )C2 + ( )T ( )T ( )T

0
T
T
T

B1
B1 Y + D21 B(1 , 2 )T
I ( )T
C1 X + D12 C(1 , 2 )
C1
D11 I
X I
0
I Y

O. Sename [GIPSA-lab]

128/133

(56)

(57)

LPV systems

LPV Control

LPV/H control synthesis


Proposition - reconstruction (brief) Scherer et al. (1997)
Reconstruct the controllers as,
solve

Cc (1 , 2 )
Bc (1 , 2 )
Ac (1 , 2 )

=
=
=

(59) |1 ,2
(59) |1 ,2
(59) |1 ,2
(59) |1 ,2

(58)

C(1 , 2 )M T
N 1 B(1 , 2 )
N 1 A(1 , 2 ) Y AX N Bc (1 , 2 )C2 X
Y B2 Cc (1 , 2 )M T M T

where M and N are dened such that M N T = I XY which may be chosen by applying a
singular value decomposition and a Cholesky factorization.

O. Sename [GIPSA-lab]

129/133

(59)

LPV systems

LPV Control

Interest of the LPV approach


LPV is a key tool to the control of complex systems.
Some examples :
Modelling of complex systems (non linear)
Use of a quasi-LPV representation to include non linearities in a linear state space model
(even delays)
Transformation of constraints (e.g. saturation) into an external parameter
Modelling of LTV, hybrid (e.g. switching control)
BUT :
A q-LPV system is not equivalent to the non linear one:
stability: = (x(t), t) is assumed to be bounded... so are the state trajectories
controllability: some non controllable modes of a non linear system may vanish according to
the LPV representation

O. Sename [GIPSA-lab]

130/133

LPV systems

LPV Control

Interest of the LPV approach


Some of works using LPV approaches - former PhD students
Gain-scheduled control
Account for various operating conditions using a variable "equilibrium point": (Gauthier 2007)
Control with real-time performance adaptation using parameter dependent weighting
functions from endogenous or exogenous parameters (Poussot 2008, Do 2011)
Analysis and control of LPV Time-Delay Systems: delay-scheduled control Briat 2008
Control under computation constraints: H variable sampling rate controller with sampling
dependent performances (Robert 2007, Roche 2011, Robert et al., IEEE TCST 2010))
Coordination of several actuators for MIMO systems
An LPV structure for control allocation Poussot et al. (CEP 2011)
Selection of a specic parameter for the control activation Poussot et al. (VSD 2011)

O. Sename [GIPSA-lab]

131/133

LPV systems

LPV Control

Some PhD students on robust and/or LPV control


Maria Rivas, "Modeling and Control of a Spark Ignited Engine for Euro 6 European Normative", PhD, GIPSA-lab / RENAULT, Grenoble INP, 2012.
Ahn-Lam Do, "LPV Approach for Semi-active Suspension Control & Joint Improvement of Comfort and Security", PhD, GIPSA-lab, Grenoble INP,
2011.
David Hernandez, "Robust control of hybrid electro-chemical generators", PhD, GIPSA-lab / G2Elab, Grenoble INP, 2011.
Emilie Roche, "Commande Linaire Paramtres Variants discrte chantillonnage variable : application un sous-marin autonome", PhD,
GIPSA-lab, Grenoble INP, 2011.
Sbastien Aubouet, "Semi-active SOBEN suspensions modelling and control", PhD, GIPSA-lab / SOBEN, INP Grenoble, 2010.
Charles Poussot-Vassal, "Robust LPV Multivariable Global Chassis Control", PhD , GIPSA-lab, INP Grenoble, 2008.
Corentin Briat, "Robust control and observation of LPV time-delay systems", PhD, GIPSA-lab, INP Grenoble, 2008.
Christophe Gauthier, "Commande multivariable de la pression dinjection dans un moteur Diesel Common Rail", PhD, LAG / DELPHI, Grenoble INP,
2007.
David Robert, "Contribution linteraction commande/ordonnacement", PhD, LAG, Grenoble INP, 2007.
Marc Houbedine, "Contribution pour lamlioration de la robustesse et du bruit de phase des synthtiseurs de frquences" , PhD, LAG / ST
Microlectronics, Grenoble INP, 2006.
Alessandro ZIN, "Sur la commande robuste de suspensions automobiles en vue du contrle global de chssis", PhD, LAG / Grenoble INP, 2005.
Julien Brely, " Rgulation multivariable de lires de production de bre de verre", PhD, LAG / ST Gobain Vetrotex, Grenoble INP, 2003.
Giampaolo Filardi, "Robust Control design strategies applied to a DVD-video player", PhD, LAG / ST Microlectronics, Grenoble INP, 2003.
Damien Sammier, "Modlisation et commmande de vhicules automobiles: application aux lments suspension", PhD, LAG / Grenoble INP, 2001.
Anas Fattouh, "Observabilit et commande des systmes linaires retards", PhD, LAG / Grenoble INP, 2000.

O. Sename [GIPSA-lab]

132/133

LPV systems

LPV Control

Some references
Doumiati, Moustapha; Sename, Olivier; Dugard, Luc; Martinez Molina, John Jairo; Gaspar, Peter; Szabo, Zoltan, Integrated vehicle dynamics control
via coordination of active front steering and rear braking", to appear in European Journal of Control, n/c (2013)
Dugard, Luc; Sename, Olivier; Aubouet, Sbastien; Talon, Benjamin, "Full vertical car observer design methodology for suspension control
applications", Control Engineering Practice, vol 20, Issue 9, pp 832-845, 2012.
C. Poussot-Vassal, O. Sename, L. Dugard, P. Gaspar, Z. Szabo & J. Bokor, "Attitude and Handling Improvements Through Gain-scheduled
Suspensions and Brakes Control", Control Engineering Practice (CEP), Vol. 19(3), March, 2011, pp. 252-263.
C. Poussot-Vassal, O. Sename, L. Dugard, S.M. Savaresi, "Vehicle Dynamic Stability Improvements Through Gain-Scheduled Steering and Braking
Control", Vehicle System Dynamics (VSD), vol 49, Nb 10, pp 1597-1621, 2011
Briat, C.; Sename, O., "Design of LPV observers for LPV time-delay systems: an algebraic approach", International Journal of Control, vol 84, nb 9,
pp 1533-1542, 2011
S.M. Savaresi, C. Poussot-Vassal, C. Spelta, O. Sename & L. Dugard. "Semi-Active Suspension Control Design for Vehicles", Elsevier,
Butterworth-Heinmann, 2010.
Robert, D., Sename, O., and Simon, D. (2010). An H LPV design for sampling varying controllers: experimentation with a T inverted pendulum.
IEEE Transactions on Control Systems Technology, 18(3):741749.
C. Briat, O. Sename, and J.-F. Lafay, ""Memory-resilient gain-scheduled state-feedback control of uncertain LTI/LPV systems with time-varying delays"
Systems & Control Let., vol. 59, pp. 451-459, 2010.
C. Briat, O. Sename, and J. Lafay, "Hinf delay-scheduled control of linear systems with time-varying delays," IEEE Transactions in Automatic Control,
vol. 42, no. 8, pp. 2255-2260, 2009.
Martinez Molina J. J., Sename O., Voda A., "Modeling and robust control of Blu-ray disc servo-mechanisms", Mechatronics, (2009) vol 19, n5, pp
715-725
Poussot-Vassal, C.; Sename, O.; Dugard, L.; Gaspar, P.; Szabo, Z. & Bokor, J. "A New Semi-active Suspension Control Strategy Through LPV
Technique", Control Engineering Practice, 2008, 16, 1519-1534
Zin A., Sename O., Gaspar P., Dugard L., Bokor J. "Robust LPV - Hinf Control for Active Suspensions with Performance Adaptation in view of Global
Chassis Control", Vehicle System Dynamics, Vol. 46, No. 10, 889-912, October 2008
Gauthier C., Sename O., Dugard L., Meissonnier G. "An LFT approach to Hinf control design for diesel engine common rail injection system", Oil &
Gas Science and Technology, vol 62, nb 4, pp. 513-522 (2007)
Sammier D. ; Sename O. ; Dugard L , "Skyhook And Hinf Control Of Semi-Active Suspensions: Some Practical Aspects", Vehicle Systems Dynamics,
Vol. 39, No 4, 2003, Pp. 279-308

O. Sename [GIPSA-lab]

133/133

Vous aimerez peut-être aussi