U.F.R.
Ecole Doctorale
Mathematiques, Informatique Mathematiques, Informatique
et Gestion et Telecommunications de Toulouse
Optimisation non lisse pour la
commande
des syst`emes de lAeronautique
TH
`
ESE
presentee et soutenue publiquement le 23 novembre 2007
pour lobtention du
Doctorat de lUniversite Paul Sabatier Toulouse III
(specialite Mathematiques appliquees et Automatique)
par
Vincent BOMPART
Composition du jury
Rapporteurs : M. Samir ADLY Universite de Limoges
M. Pierre-Alexandre BLIMAN INRIA Rocquencourt
Examinateurs : M. Paul ARMAND Universite de Limoges
M. Jean-Philippe HARCAUT MBDA France
M. Jean-Baptiste HIRIART-URRUTY Universite Paul Sabatier
Toulouse III
Directeurs : M. Pierre APKARIAN ONERA Centre de Toulouse
M. Dominikus NOLL Universite Paul Sabatier
Toulouse III
Institut de Mathematiques de Toulouse UMR CNRS 5219
Equipe Mathematiques pour lIndustrie et la Physique
Mise en page L
A
T
E
X base sur la classe thloria.
i
Remerciements
Mes premiers remerciements sadressent Pierre Apkarian et Dominikus Noll, tous
deux lorigine de cette thse et qui lont dirige conjointement durant ces trois annes ;
jai pu bncier de leur expertise scientique et de leurs clairages complmentaires, mais
galement de leur coute et de leur gentillesse.
Je remercie les rapporteurs, Samir Adly et Pierre-Alexandre Bliman : ils ont accept
de prendre connaissance de mon travail de faon approfondie, malgr les dlais rduits
dont ils disposaient, et leurs remarques prcises ont permis damliorer la qualit de ce
document. Merci galement aux autres membres du jury, Paul Armand, Jean-Philippe
Harcaut et Jean-Baptiste Hiriart-Urruty, qui ont bien voulu se rendre disponibles pour
juger mon travail.
Jai pu bncier pendant toute la thse de lenvironnement scientique et humain de
lONERA, ainsi que de son soutien nancier. Jai t accueilli au dpartement de com-
mande des systmes et dynamique du vol (DCSD), Toulouse, dont je souhaite remercier
tout particulirement le directeur, Patrick Fabiani, qui a su me donner les moyens de
mener bien cette thse, ainsi que Philippe Mouyon, responsable de lunit de recherche
commande et intgration (UR CDIN). Merci galement aux ingnieurs de recherche du
dpartement (et en particulier Pierre Vacher, Michel Corrge, et . . .Catherine Tessier
pour ses clats de rire communicatifs). Je noublie pas les membres du groupe de travail
Optimisation et Interactions, au sein de lquipe MIP de lInstitut de Mathmatiques de
Toulouse.
Merci aux doctorants du DCSD : Jean-Baptiste, dont jai partag le bureau pen-
dant la premire anne, et qui ma pass le relais et encourag. Bureau que jai mon
tour partag avec Patrice qui, jen suis sr, trouvera vite un remplaant pour changer
ses rexions scientiques ou philosophiques toujours passionnantes. Merci aussi, dans le
dsordre, Sophie, Damien, Greg et Greg, Manu, Nico, Florian, Andreas, Alex, Julien,
Sylvain B., Clment, Alberto, et aux anciens thsards, Charles, Olivier, Cdric, Florent,
Sylvain D., Sebastian, Fabien et Elodie. Encore des remerciements pour Olivier et Aude
de lquipe MIP.
La thse est un investissement personnel de chaque instant, qui passe par des doutes
et des remises en question parfois trop lourds porter seul ; mes parents ont su mcou-
ter, me parler et me soutenir dans ces moments dlicats, et je dsire ici leur tmoigner
ma profonde reconnaissance. Merci galement David pour ses encouragements constants.
Un dernier petit mot et une pense, enn, pour ma grand-mre, Marie-Louise, qui sen
est alle alors que je rdigeais ma thse.
ii
Table des matires
Introduction 3
I Notions fondamentales et cadre de travail 9
1 Introduction la commande des systmes 11
1.1 Terminologie et dnitions . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.1.1 Systmes dynamiques . . . . . . . . . . . . . . . . . . . . . . . 11
1.1.2 Normes de signaux . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.1.3 Stabilit des systmes linaires . . . . . . . . . . . . . . . . . . 16
1.1.4 Normes de systmes . . . . . . . . . . . . . . . . . . . . . . . . 18
1.2 Problmes de synthse pour la commande . . . . . . . . . . . . . . . . 19
1.2.1 Forme standard pour la commande . . . . . . . . . . . . . . . . 20
1.2.2 Stabilisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
1.2.3 Synthse H
. . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2 Optimisation non lisse 33
2.1 Terminologie et dnitions . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.1.1 Ingrdients pour lanalyse non lisse . . . . . . . . . . . . . . . . 33
2.1.2 Analyse non lisse : le cas convexe . . . . . . . . . . . . . . . . . 36
2.1.3 Analyse non lisse : le cas lipschitizien . . . . . . . . . . . . . . . 38
2.2 Conditions doptimalit . . . . . . . . . . . . . . . . . . . . . . . . . . 42
2.3 Algorithmes pour loptimisation non lisse . . . . . . . . . . . . . . . . . 43
2.3.1 Direction de descente . . . . . . . . . . . . . . . . . . . . . . . . 43
2.3.2 Mthodes de faisceaux . . . . . . . . . . . . . . . . . . . . . . . 45
2.3.3 Mthodes pour les problmes minimax . . . . . . . . . . . . . . 47
iii
iv Table des matires
II Algorithmes dvelopps et applications 55
3 Techniques non lisses pour la stabilisation des systmes linaires 57
3.1 Introduction and notations . . . . . . . . . . . . . . . . . . . . . . . . . 59
3.2 Minimizing the spectral abscissa . . . . . . . . . . . . . . . . . . . . . . 61
3.3 Subgradients of the spectral abscissa . . . . . . . . . . . . . . . . . . . 62
3.3.1 Subgradients in state-space . . . . . . . . . . . . . . . . . . . . 62
3.3.2 Subgradients and dynamic controllers . . . . . . . . . . . . . . . 64
3.3.3 Subgradients with structured controllers . . . . . . . . . . . . . 64
3.4 Descent step and optimality function . . . . . . . . . . . . . . . . . . . 65
3.5 Nonsmooth descent algorithms . . . . . . . . . . . . . . . . . . . . . . 66
3.5.1 Variant I (rst-order type) . . . . . . . . . . . . . . . . . . . . . 66
3.5.2 Variant II (second-order type) . . . . . . . . . . . . . . . . . . . 68
3.6 Numerical examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
3.6.1 Academic test . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
3.6.2 Transport airplane . . . . . . . . . . . . . . . . . . . . . . . . . 74
3.6.3 VTOL helicopter . . . . . . . . . . . . . . . . . . . . . . . . . . 77
3.6.4 B-767 airplane . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
3.6.5 PID controllers . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
3.7 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
4 Optimisation non lisse pour la commande structure 81
4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
4.2 Nonsmooth H
design technique . . . . . . . . . . . . . . . . . . . . . 85
4.2.1 Subdierential of the H
map . . . . . . . . . . . . . . . . . . 86
4.2.2 Structured controllers . . . . . . . . . . . . . . . . . . . . . . . 87
4.2.3 PID controllers . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
4.2.4 Setpoint lter design . . . . . . . . . . . . . . . . . . . . . . . 90
4.2.5 Nonsmooth descent method . . . . . . . . . . . . . . . . . . . . 91
4.3 Nonsmooth loop-shaping design . . . . . . . . . . . . . . . . . . . . . . 94
4.3.1 Loop-shaping design . . . . . . . . . . . . . . . . . . . . . . . . 94
4.3.2 PID Loop-shaping design . . . . . . . . . . . . . . . . . . . . . 95
4.4 Application to a separating tower . . . . . . . . . . . . . . . . . . . . 96
4.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
v
5 Commande temporelle et frquentielle par techniques non lisses 103
5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
5.2 Time- and frequency domain designs . . . . . . . . . . . . . . . . . . . 107
5.3 Nonsmooth descent method . . . . . . . . . . . . . . . . . . . . . . . . 109
5.3.1 Nonsmooth properties . . . . . . . . . . . . . . . . . . . . . . . 111
5.4 Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
5.4.1 Application to observer-based controller design . . . . . . . . . 115
5.4.2 Application to reliable control . . . . . . . . . . . . . . . . . . 116
5.4.3 Application to PID time response shaping . . . . . . . . . . . . 121
5.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
6 Optimisation non lisse du second ordre pour la synthse H
125
6.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
6.2 Problem setting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
6.3 Approach via semi-innite programming . . . . . . . . . . . . . . . . . 129
6.4 Solving with SQP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
6.4.1 Quadratic tangent subproblem . . . . . . . . . . . . . . . . . . 132
6.4.2 First and second derivative formulas . . . . . . . . . . . . . . . 134
6.4.3 Multiple eigenvalues . . . . . . . . . . . . . . . . . . . . . . . . 136
6.4.4 Globalisation via trust-region . . . . . . . . . . . . . . . . . . . 138
6.5 Technical aspects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
6.5.1 Identifying peak frequencies . . . . . . . . . . . . . . . . . . . . 140
6.5.2 Stopping criteria . . . . . . . . . . . . . . . . . . . . . . . . . . 141
6.6 Numerical results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
6.7 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
Conclusion 147
Bibliographie 149
vi Table des matires
1
Notations et symboles
Notation Signication
Egal , par dnition
Ensemble vide
R, C Corps des nombres rels, des nombres complexes
Re z, Imz Partie relle, partie imaginaire de z C
[x[, [z[ Valeur absolue de x R, module de z C
R
+
Ensemble des nombre rels positifs ou nuls
x
+
Partie positive de x C
x
+
max x, 0
C
, C
+
Demi-plan ouvert gauche, droit
R
n
, C
n
Espace des vecteurs rels, complexes n composantes
R
pm
Espace vectoriel des matrices relles de taille p m,
soit p lignes et m colonnes
(L
n
(R) Groupe linaire des matrices carres inversibles de taille nn
o
n
(R) Sous-espace vectoriel des matrices symtriques relles de taille
n n
I
n
, I Matrice identit (de taille n, de taille fonction du contexte)
X ~ 0, X 0 X o
n
(R) est dnie positive, dnie ngative
X _ 0, X _ 0 X o
n
(R) est semi-dnie positive, semi-dnie ngative
Tr X Trace de la matrice X C
nn
vec X Vectoris (par colonnes) de X R
pm
X
T
Matrice transpose de X R
pm
X
H
Matrice adjointe de X C
pm
X
1
Matrice inverse de X C
nn
X
+
Pseudo-inverse (ou inverse de Moore-Penrose) de X C
pm
X
1
2
Racine carre de la matrice X _ 0
x, y) Produit scalaire euclidien (hermitien) sur R
n
(C
n
)
x, y) x
H
y
X, Y )) Produit scalaire euclidien (hermitien) sur R
pm
(C
pm
)
X, Y )) Tr (X
H
Y )
|x|
max
1in
[x
i
[
|x|
2
ou |x| Norme euclidienne (hermitienne) du vecteur x R
n
(x C
n
)
|x|
2
x
H
x
B(x, r) Boule de centre x R
n
et de rayon r R
+
pour la norme
euclidienne
B(X, r) y R
n
: |y x| < r
2 Table des matires
Notation Signication
|X|
F
ou |X| Norme hermitienne (ou de Frbenius) de la matrice X C
pm
|X|
F
_
Tr (X
H
X)
|X|
2
Norme 2 de la matrice X C
pm
|X|
2
(X)
u(t) ou u Signal causal rel temps continu u : t R
+
u(t) R
m
U(s) ou U Transforme de Laplace du signal u
U(s)
_
+
0
u(t)e
st
dt pour tout s C tel que Re s x
0
|u|
Norme H
(X),
i
(X), 1 i n Valeurs propres de la matrice X C
nn
i
(X), 1 i q Valeurs propres (sans rptitions) de la matrice X C
nn
(X),
i
(X), 1 i min(m, p) Valeurs singulires (en ordre dcroissant) de la matrice X
C
pm
(X) ou
1
(X) Plus grande valeur singulire de la matrice X C
pm
f : R
n
R Fonction f dnie sur R
n
, valeurs relles
[a, b] Segment dextrmits a, b R
n
[a, b] x R
n
: il existe t, 0 t 1 et x = ta + (1 t)b
co S Enveloppe convexe de S R
n
min S, max S Minimum (plus petit lment), maximum (plus grand l-
ment) dun ensemble non vide S R (sils existent)
min
xE
f(x), max
xE
f(x) Valeur minimum, maximum de f sur E (si elle en admet), ou,
suivant le contexte, problme de minimisation, de maximisa-
tion (locale ou globale) de f sur E
arg min
xE
f(x), Un minimum, un maximum x E de f (sil en existe)
arg max
xE
f(x)
f
t
(x) Direntielle de f en x R
n
f
t
x
(x, t) Direntielle partielle de f par rapport x
f
t
(x, d) Drive directionnelle de f en x R
n
, dans la direction d R
n
f
c
f(x) Sous-direntiel de f en x R
n
, en analyse convexe
f(x) Sous-direntiel de Clarke de f en x R
n
Introduction
Les processus industriels prsentent une complexit grandissante, quil sagisse dunits
de production (racteurs chimiques, centrales lectriques), de moyens de transport (avions
civils ou militaires, hlicoptres), ou autres. Ils rsultent frquemment de linterconnexion
de plusieurs sous-systmes mis en rseau. Ils intgrent des fonctionnalits en plus grand
nombre quauparavant, et doivent satisfaire des cahiers des charges plus contraignants :
satisfaction de contraintes de qualit ou de scurit, respect de normes environnementales
(bruit, pollution)... Le respect de ces spcications passe par la conception dun systme
de commande, dont laction sur le processus lui confre les proprits souhaites.
Ces processus sont par ailleurs de mieux en mieux modliss : les techniques diden-
tication sont plus performantes et peuvent intgrer de plus grands volumes de donnes
exprimentales. Les moyens de simulation de ces modles suivent laccroissement de leur
complexit.
Ainsi, les mthodes de conception de commande dites classiques, bases sur des tech-
niques frquentielles, essentiellement graphiques, parfois empiriques, ne sont plus adap-
tes. La formulation des objectifs de commande sous la forme dun problme doptimisa-
tion (commande LQ, LQG, H
2
, H
i=1
x
i
F
i
0 , (2)
o les matrices F
i
(0 i n) sont symtriques relles. Ce nest quavec lapparition de
mthodes itratives, telles celles dites des points intrieurs, issues de la programmation
linaire il y a une vingtaine dannes, que le domaine de recherche a dpass le cadre de
lAutomatique thorique, pour connatre un essor certain.
Tous les problmes de commande ne sont cependant pas rductibles des LMI/SDP!
Bien souvent, en pratique, et mme pour le critre aussi essentiel quest la stabilit
interne, les expressions matricielles ne sont pas linaires ou anes. Plus exactement, elles
ne sont pas convexes, et les problmes doptimisation sous ce type de contraintes sont
bien plus diciles rsoudre. Quand bien mme la synthse dun correcteur peut se
ramener, aprs dventuelles manipulations algbriques, un problme SDP, la loi de
commande obtenue est bien souvent du mme ordre
1
que le systme commander. Or,
dans les applications embarques, par exemple, les ressources en puissance de calcul et
en mmoire sont limites ; larchitecture du processeur cible peut tre particulire, et
contraint la complexit de la loi de commande implmenter.
De plus, la mise en uvre de la commande sur le systme rel saccompagne dune
tape de validation, ayant ventuellement pour consquence la retouche du correcteur,
rendue dicile par son niveau de complexit. La synthse dun correcteur plus simple
que le systme commander (on parle de correcteur dordre rduit) gure donc parmi les
thmes de recherche actuels de lAutomatique, pour lesquels les applications attendues
sont nombreuses.
Dautre part, les savoir-faire spciques lapplication considre et la connaissance
du systme rel impliquent gnralement des contraintes sur la structure de la loi de
commande : dans le cas de systmes rpartis, ou pour limiter la complexit des commandes,
par exemple, il peut tre impos de ne pas lier la commande dun actionneur une mesure
donne (commande dite dcentralise). Bien souvent, laction du correcteur synthtiser
a une forme prdtermine (cas des correcteurs PID par exemple, trs rpandus, qui
combinent une action proportionnelle, intgrale, et drive), et seuls quelques paramtres
restent ajuster. Ces exemples plaident pour la prise en compte de la structure de la loi
de commande en amont, ds sa conception. Malheureusement, lajout a priori de telles
contraintes nest pas ais avec les mthodes actuelles base de LMI, car les variables
du correcteur napparaissent pas toujours explicitement dans les ingalits matricielles
eectivement rsolues.
Enn, la prsence de variables de Lyapunov dans ces ingalits vient les compliquer
articiellement : dune part, la taille de ces variables ne correspond pas la dimension
des variables du correcteur, mais crot avec le carr de lordre du systme comman-
der. Ainsi, la synthse de lois de commande pour les systmes dynamiques comportant
1
lordre dune loi de commande, en tant que systme dynamique suppos linaire, est, intuitivement,
la dimension minimale de la variable qui permet de dcrire compltement son volution, comme solution
dun systme direntiel linaire. Nous en donnerons une dnition prcise au chapitre 1.
5
quelques dizaines dtats est dicile : un Boeing 767, modlis autour dun point de vol
par un systme linaire dordre 55, ncessite 1540 variables scalaires pour la matrice de
Lyapunov. Les systmes linaires modlisant des quations aux drives partielles (EDP),
obtenus par lments nis, sont encore plus gros (souvent plusieurs milliers dtats) et sont
totalement hors de porte dune synthse par LMI/SDP. Dautre part, lordre de grandeur
des variables de Lyapunov na aucune raison dtre le mme que celui des variables du
correcteur, ce qui peut poser de srieux problmes dordre numrique lors de la rsolution
ou de loptimisation.
Ces trois points fondamentaux constituent les principales limitations actuelles des m-
thodes de synthse de lois de commande. Labondance et la richesse des publications
dans le domaine des LMI ces quinze dernires annes na pas apport de mthode num-
rique satisfaisante pour les problmes de synthse structure ou dordre rduit. Celles qui
sont proposes sont souvent heuristiques, sans preuve de convergence, ou ne sappliquent
qu des classes trs particulires de systmes. Mme les approches les plus rcentes,
qui proposent de rsoudre les problmes doptimisation avec contraintes matricielles non
convexes, restent limites par la taille des variables de Lyapunov. Pourquoi alors ne pas
laisser de ct ces variables auxiliaires pour se concentrer sur les vritables variables de
dcision qui dnissent le correcteur ? Ces variables sont gnralement en petit nombre,
car les lois de commande recherches sont les plus simples possibles (correcteurs dordre
rduit, voire statiques), et les mesures et commandes restent en nombre trs raisonnable
(typiquement, de une quatre sorties mesures, autant dentres commandes). Les formu-
lations directes des problmes de synthse amnent cependant minimiser des fonctions
qui se prsentent comme un maximum de fonctions, de la forme
f
() max
x.
f(, x) . (3)
La variable regroupe tous les paramtres du correcteur, et x permet d indexer les
fonctions sur un ensemble A, qui peut tre discret ou continu. Ce dernier peut tre un
intervalle de frquences dans le cas dun critre portant sur les transferts (norme H
par
exemple), un intervalle de dates pour un critre temporel, ou encore un ensemble ni din-
dices sil sagit dun critre spectral. On voit ici que cette formulation est susamment
gnrale pour permettre dexprimer, voire de combiner entre eux de nombreux critres de
synthse. Elle laisse au concepteur le soin de dnir la forme de loi de commande quil
recherche, partir des paramtres scalaires contenus dans . Dans le cas dun correcteur
statique, par exemple, contient tous les gains scalaires, canal par canal. Pour un correc-
teur PID, regroupe les gains des actions proportionnelle, intgrale et drive. Le prix
payer cependant dune telle approche est le caractre non lisse, cest--dire non partout
direntiable, du critre minimiser. Qui plus est, les points o concident les valeurs de
plusieurs fonctions partielles f(, x) sont gnralement de bons candidats pour constituer
des minima locaux (voir gure 1). Les algorithmes doptimisation direntiable (descente
de gradient, Newton ou quasi-Newton, programmation quadratique successive pour les
problmes sous contraintes, etc.) sont alors mis en dfaut.
Le cadre thorique adapt est celui propos par lanalyse non lisse, qui gnralise les no-
tions de direntielle et de gradient certaines classes de fonctions (essentiellement les
6 Introduction
f
2
()
f
() = max f
1
(), f
2
()
f
1
()
.
fonction convexes dune part, et les fonctions localement lipschitziennes dautre part).
Cest un cadre riche dun point de vue de lOptimisation numrique, car il permet de
construire des algorithmes de descente et de prouver leur convergence vers des minima
locaux. Ces algorithmes doptimisation non lisse doivent tre bien distingus des m-
thodes doptimisation sans drive (parfois dites de recherche directe, ou dordre zro),
qui nexploitent que les valeurs de la fonction critre pour progresser.
Ainsi le point de vue scientique adopt dans cette thse se situe la croise de
lAutomatique (puisque nous nous intressons des problmes de commande des systmes
linaires), de lOptimisation non lisse, et du dveloppement logiciel. Sur ce dernier point,
lobjectif concret est, en eet, de proposer un outil numrique cohrent, document, et
volutif, directement accessible lautomaticien, et utilisable la faon dune bote
outils pour la synthse de lois de commande. Cet outil permet de formuler et de rsoudre
des problmes diciles, notamment en terme de taille (systme commander dordre
lev), de contraintes sur le compensateur synthtiser (ordre ou structure xs), ou de
nature du problme (synthse multimodle, commande tolrante aux pannes). Il repose
sur le socle thorique et algorithmique mis en place dans la thse. Cest l que rside
lobjectif central de nos travaux : dmontrer le bien-fond et la faisabilit de lapproche
non lisse pour la rsolution de problmes de synthse de lois de commande. Pour ce faire,
nous nous sommes attachs prsenter des applications varies, issues pour partie dune
bibliothque de problmes de commande (bibliothque COMPl
e
ib de F. Leibfritz), mais
aussi dexemples isols, diciles, traits jusqualors par des mthodes heuristiques.
Le document est organis en deux grandes parties : la premire partie regroupe en deux
chapitres (chapitres 1 et 2) lensemble des notions qui nous ont sembl tre fondamen-
tales. Ces deux chapitres sont complmentaires dans leur thmatique : le lecteur familier
des systmes dynamiques linaires et de leur commande en boucle ferme pourra survoler
7
le premier chapitre, dans lequel nous formulons les problmes tudis (stabilisation et
synthse H
(dont traitent les chapitres 4 6). Nous avons donc compar direntes
techniques doptimisation permettant de rechercher un correcteur stabilisant, dont une
approche non lisse originale que nous prsentons. Laccent est ensuite mis sur la synthse
H
:
elle consiste reformuler localement la synthse comme un problme direntiable, puis
rsoudre une suite de problmes quadratiques dits tangents. Une convergence plus
rapide en est attendue, et sera eectivement montre.
Les notations utilises dans la premire partie du document sont standard, et un
tableau les rcapitule dans les pages prcdentes. Elles sont gnralement suivies dans
les quatre chapitres de la deuxime partie, sauf lorsque le contexte nous a conduits
prfrer une notation spcique (en cas dambigut, par exemple) ; la nouvelle notation
choisie est alors explicite en dbut de chapitre. Enn, nous proposons au lecteur, en n
de document, les rfrences synthtiques des sources bibliographiques cites dans la thse.
8 Introduction
Premire partie
Notions fondamentales et cadre de
travail
9
Chapitre 1
Introduction la commande des
systmes
Ce premier chapitre prsente les problmes de commande qui sont abords dans le
cadre de nos travaux, prsents dans la deuxime partie de ce document. Nous nous
intressons plus particulirement aux problmes de stabilisation et de synthse H
.
1.1 Terminologie et dnitions
Nous rappelons ici les concepts fondamentaux de lAutomatique indispensables lana-
lyse et la commande des systmes dynamiques, et notamment des systmes linaires.
Nous invitons le lecteur se reporter aux ouvrages [2, 143] sil souhaite en approfondir
certains aspects.
1.1.1 Systmes dynamiques
Nous considrons un systme linaire et invariant dans le temps, en anglais linear and
time-invariant (LTI). Cest un processus liant des signaux dentre et de sortie, dcrit par
un systme dquations direntielles linaires coecients constants. Cette hypothse
conduit gnralement manipuler une approximation du systme rel considr ; les sys-
tmes rencontrs dans les applications industrielles comportent en eet des non-linarits,
ne serait-ce quen raison de contraintes physiques ou de scurit portant sur les action-
neurs ou sur les capteurs, qui se traduisent par des saturations en position ou en vitesse.
Il faut donc garder en mmoire que le domaine de validit dun systme linaire invariant
dans le temps est limit, par exemple, au voisinage dun point de fonctionnement
1
, une
bande de frquence, ou un intervalle de temps.
Dautre part, les algorithmes qui ont t dvelopps dans le cadre de la thse ne
concernent que les systmes LTI temps continu. Il ny a cependant aucun obstacle
thorique leur transposition aux systmes discrets.
1
On parle de point de vol en aronautique, dni par laltitude et la vitesse relative.
11
12 Chapitre 1. Introduction la commande des systmes
Reprsentation des systmes LTI
Matrice de transfert Un systme LTI entre et sortie scalaires (SISO, single-input
/ single-output) est compltement dcrit par sa rponse impulsionnelle g(t), cest--dire
la rponse de ce systme une impulsion de Dirac. En eet, puisque la rponse y(t)
du systme est solution dune quation direntielle linaire coecients constants, le
principe de superposition permet dexprimer y(t) pour tout signal dentre u(t) comme le
produit de convolution
y(t) =
_
+
_
C
CA
CA
2
.
.
.
CA
n1
_
_
(1.12)
est de plein rang (n, en colonne).
On dispose aussi des caractrisations modales suivantes : (A, B) est commandable (resp.
(C, A) est observable) si et seulement si tout vecteur propre gauche v de A est tel que
v
.
La commandabilit et lobservabilit, tout comme la stabilisabilit et la dtectabilit,
sont des notions despace dtat. Si elles sont invariantes par changement de variable,
elles dpendent cependant du choix de la dimension de la variable dtat. Ainsi, parmi
toutes les ralisations (A, B, C, D) dune matrice de transfert G(s), les ralisations la
fois commandables et observables sont exactement celles qui sont minimales.
Ples et zros dun systme LTI
Les ples (resp. les zros) dun systme SISO sont les racines du numrateur (resp. du
dnominateur) de sa fonction de transfert G(s), suppose irrductible. Pour un systme
MIMO, les ples sont les racines du polynme det(sI A), cest--dire les valeurs propres
de A, o (A, B, C, D) est une ralisation minimale de G(s). Plus gnralement, les ples
dune ralisation quelconque (A, B, C, D) de G(s) sont les valeurs propres de A. La d-
nition de zros dans le cas MIMO est plus dlicate que dans le cas SISO, et ncessite den
distinguer plusieurs types :
les valeurs s C telles que le rang de la matrice
_
A sI B
C D
_
(1.15)
est dcient sont les zros invariants (ou simplement les zros),
2
Sous rserve que toute valeur propre non relle soit couple avec sa conjugue.
16 Chapitre 1. Introduction la commande des systmes
les valeurs s C qui annulent compltement la matrice de transfert G(s) sont les
zros de blocage.
En particulier, les modes non observables ou non commandables sont des zros invariants.
1.1.2 Normes de signaux
On considre un signal vectoriel complexe temps continu u : R
+
C
m
. On dnit
la norme inni ou norme sup de u par
|u|
sup
t0
|u(t)|
. (1.16)
Si u est de carr sommable sur R
+
(cest--dire si u L
2
(R
+
), espace de Hilbert), on
dnit la norme
|u|
2
__
0
|u(t)|
2
2
dt
_1
2
, (1.17)
dnomme norme L
2
. Cest la norme induite par le produit scalaire sur L
2
(R
+
)
u, v)
_
0
u(t)
H
v(t) dt . (1.18)
Elle sinterprte comme lnergie du signal, et sexprime de faon quivalente dans le
domaine frquentiel
|u|
2
=
_
1
2
_
|U(j)|
2
2
d
_
1
2
, (1.19)
grce au thorme de Parseval. Lexpression droite de lgalit dnit une norme (encore
note | |
2
) sur lespace de Hardy H
2
, constitu des fonctions de la variable complexe U,
analytiques dans le demi-plan droit C
+
, et telles que
sup
>0
_
1
2
_
|U( +j)|
2
2
d
_
1
2
< . (1.20)
Cest, l encore, la norme induite par le produits scalaire sur H
2
(encore not , ))
U, V )
1
2
_
U(j)
H
V (j) d . (1.21)
Lespace H
2
est limage de L
2
(R
+
) par la transforme de Fourier, qui ralise ainsi un
isomorphisme despaces de Hilbert.
1.1.3 Stabilit des systmes linaires
La notion de stabilit est fondamentale pour les systmes dynamiques, quil sagisse de
commande en boucle ouverte ou en boucle ferme. Dnir la stabilit pour un systme LTI
dpend du point de vue adopt pour le reprsenter : dans le cas dune approche entre-
sortie, par matrice de transfert, on parle de stabilit BIBO (bounded input / bounded
output) ; si ltat x(t) du systme est connu, au moyen dune ralisation
_
x(t) = Ax(t) +Bu(t)
y(t) = Cx(t) + Du(t) .
(1.22)
on peut introduire la notion (plus forte) de stabilit interne.
1.1. Terminologie et dnitions 17
Stabilit BIBO
Un systme (LTI ou autre) est BIBO-stable si, par dnition, pour toute entre u(t)
telle que |u|
).
La stabilit interne implique la stabilit BIBO de la matrice de transfert associe
G(s) = C(sI A)
1
B + D, puisque les ples du systme sont des valeurs propres de
A. La rciproque est fausse en gnral, sauf si les modes instables de A sont comman-
dables et observables (cest--dire si (A, B) est stabilisable et (C, A) est dtectable). On a
alors quivalence des deux notions de stabilit. Cest le cas en particulier si la ralisation
(A, B, C, D) est minimale, les ples de G tant alors exactement les valeurs propres de A.
An de caractriser la stabilit interne de faon analytique, on dnit, pour toute
matrice M R
nn
, labscisse spectrale de M, note (M), comme la plus grande partie
relle des valeurs propres de M :
(M) max
(M)
Re () . (1.24)
La stabilit interne du systme (1.22) est donc quivalente lingalit (A) < 0. Si la
matrice dtat dpend de paramtres (A = A()), la recherche de valeurs de paramtres
rendant le systme stable peut ainsi tre ramene un problme de minimisation de
labscisse spectrale.
Une autre approche consiste caractriser la stabilit interne par la condition de
Lyapunov, exprime en terme dingalit linaire matricielle (ou LMI, Linear Matrix In-
equality) :
Thorme 1.1.1 Le systme linaire (1.22) est stable de faon interne si et seulement
si il existe une matrice P o
n
(R), P ~ 0, tel le que
A
T
P +PA 0 . (1.25)
18 Chapitre 1. Introduction la commande des systmes
Nous dresserons un inventaire des techniques de stabilisation en boucle ferme dans
la section 1.2.2 ci-aprs, ainsi quau chapitre 3.
1.1.4 Normes de systmes
La conception dune loi de commande doit gnralement rpondre, au del de lexigence
de stabilit, des spcications relatives la taille des signaux ou des matrices de
transfert : on cherchera par exemple rduire limpact sur le comportement du systme
des perturbations pouvant aecter la commande ou la sortie, ou encore minimiser leet
du bruit apparaissant sur les mesures. On pourra aussi exiger de maintenir la puissance
dlivre par les actionneurs en de dune certaine limite. Ces objectifs ou contraintes de
performance sont exprimes au moyen de normes de systmes.
Norme H
Soit G la matrice de transfert dun systme LTI, suppos stable. Cest une fonction
rationnelle relle de la variable complexe s, comme fraction de polynmes coecients
rels. Elle est propre, analytique et borne dans le demi-plan droit C
+
. On dnit sa
norme H
par
|G|
sup
Re s>0
[G(s)] (1.26)
= sup
R
[G(j)]
= sup
R
+
[G(j)] .
o [G(s)] dsigne la plus grande valeur singulire de G(s).
On montre que lespace H
2
(dni en 1.1.2) est invariant par loprateur linaire M
G
:
U GU, et que la norme H
= sup
|U|
2
<
U,=0
|GU|
2
|U|
2
(1.27)
et mesure le gain maximal en nergie du systme.
La norme H
nest pas dnie dans le cas dun systme LTI instable (appliquer la
dnition (1.26) aboutirait une valeur innie). Cependant, pour un systme LTI sans
ples sur laxe imaginaire, de matrice de transfert G, la quantit sup [G(j)] / R
est nie. Cest la norme L
, (1.28)
o G est la matrice de transfert dun systme LTI, et G
a
(s) = G(sa), ce qui a pour eet
de translater de a les ples du systme dans le plan complexe. La norme H
a-shifte est
1.2. Problmes de synthse pour la commande 19
nie si et seulement les ples de G sont partie relle strictement infrieure a. Ainsi
en choisissant a < 0 susamment grand en valeur absolue, la norme shifte permet de
mesurer le gain dun systme instable.
Norme H
2
La norme H
2
est dnie pour toute matrice de transfert stable strictement propre G.
Elle vaut
|G|
2
_
1
2
_
Tr
_
G(j)
H
G(j)
_
d
_
1
2
(1.29)
= sup
|U|
<
U,=0
|GU|
2
|U|
. (1.30)
avec |U|
= sup
Re s>0
|U(s)| = sup
R
|U(j)|.
La norme H
2
mesure lnergie en sortie du systme, lorsquun bruit blanc normalis
(cest--dire de densit spectrale uniforme S
uu
(j) = U(j)U
H
(j) = I) est appliqu en
entre.
1.2 Problmes de synthse pour la commande
La commande
3
des systmes dynamiques ne recouvre pas tout fait les mmes notions
suivant que lon se place du point de vue du mathmaticien ou de celui de lautomaticien,
comme le souligne Bergounioux dans [21]. Le but poursuivi est le mme : trouver une
expression du signal de commande u(t) appliquer en entre du systme an que ce dernier
vrie un ensemble de spcications. Cela peut tre par exemple un critre minimiser
(comme la norme H
2
dun transfert par exemple), on parle alors de commande optimale. Il
peut sagir simplement de trouver une commande qui stabilise le systme, ou, dans le cas
dun systme linaire, qui permet de placer les ples dans le plan complexe (commande
modale). Le mathmaticien va rechercher une telle commande dans un espace fonctionnel
donn, dont les lments ne dpendent pas a priori de la variable dtat x du systme,
ou de la sortie y. Cest ce que lautomaticien nomme commande en boucle ouverte, car le
systme est pilot en aveugle par un signal prcalcul. La commande en boucle ferme
est, au contraire, construite en temps-rel, partir des signaux disponibles en sortie du
systme et mesurs par des capteurs. Les signaux de commande sont alors appliqus en
entre via des actionneurs. Le processus de fabrication du signal de commande dnit un
systme dynamique en tant que tel, que lon appelle correcteur, compensateur, ou encore
loi de commande. Nous nous limiterons dans le cadre de notre tude aux correcteurs de
mme type que les systmes considrs, cest--dire linaires et invariants dans le temps
(LTI).
3
on trouve parfois le terme contrle, ou contrle actif, par opposition au contrle passif qui implique
une modication de la structure du systme.
20 Chapitre 1. Introduction la commande des systmes
1.2.1 Forme standard pour la commande
Nous introduisons tout dabord une formulation gnrique dite standard, reprsenta-
tion qui donne un cadre trs gnral pour la synthse de lois de commande. Elle facilite
lexplicitation du cahier des charges en isolant, parmi les entres et sorties du systme,
celles qui interviennent dans les spcications.
Parmi les entres du systme command (not P(s) sur la gure 1.1), on distingue celles
produites par le correcteur K(s) de celles dites exognes. Ces dernires sont regroupes
dans le vecteur w R
m
1
et comprennent les perturbations (rafales de vent pour un
aronef), les bruits, ou encore les signaux de consigne. Finalement, lentre u R
m
2
ne contient que les signaux des actionneurs gnrs par le correcteur, cest--dire les
commandes. De mme, parmi toutes les sorties du systme, celles qui sont accessibles au
correcteur pour llaboration des ces commandes sont dsignes par le vecteur y R
p
2
(ce
sont les mesures), tandis que z R
p
1
contient les sorties rgules, sur lesquelles portent
les spcications.
sorties mesures commandes
sorties rgules entres exognes
y
z w
u
K(s)
P(s)
Fig. 1.1 La forme standard.
La forme standard permet donc une description de direntes congurations de boucles
fermes (boucle de suivi, boucle de rgulation, asservissement un ou plusieurs degrs de
libert) laide dune reprsentation unique.
Transformation linaire fractionnaire
La matrice de transfert P(s), des signaux dentre w et u vers les signaux de sortie z
et y, est partitionne en quatre blocs, associs chacun des quatre canaux du systme,
de la faon suivante :
_
Z(s)
Y (s)
_
=
_
P
11
(s) P
12
(s)
P
21
(s) P
22
(s)
_ _
W(s)
U(s)
_
. (1.31)
Linterconnexion en boucle ferme du systme et du correcteur, reprsents par leurs
matrices de transfert respectives P et K (supposes propres), constitue un nouveau sys-
tme LTI, dentre w et de sortie z. La matrice de transfert en boucle ferme T
wz
est
T
wz
(s) = P
11
(s) + P
12
(s)K(s)(I P
22
(s)K(s))
1
P
21
(s) , (1.32)
1.2. Problmes de synthse pour la commande 21
appele transformation linaire fractionnaire (LFT) ou produit de Redheer de P et K.
Le systme boucl est dit bien pos si, par dnition, cette matrice de transfert existe
et est propre, ou, de faon quivalente, ds que I P
22
()K() est inversible. Cette
hypothse de travail, qui revient sassurer que la boucle ferme possde bien un sens
physique, sera toujours suppose vraie par la suite.
Reprsentation dtat
La formulation LFT et lapproche par variable dtat orent un cadre mthodologique
riche pour la rsolution de problmes de commande, notamment dans le cas de la synthse
H
. Nous reprenons donc ici les notations usuelles pour la forme standard exprime en
espace dtat. Supposons que les sorties z et y sont lies aux entres w et u par la ralisation
_
_
x(t) = Ax(t) + B
1
w(t) + B
2
u(t)
z(t) = C
1
x(t) + D
11
w(t) + D
12
u(t)
y(t) = C
2
x(t) + D
12
w(t) + D
22
u(t) ,
(1.33)
avec x R
n
, et la condition initiale x(0) = 0, de sorte que
P(s) =
_
P
11
(s) P
12
(s)
P
21
(s) P
22
(s)
_
=
_
C
1
C
2
_
(sI A)
1
_
B
1
B
2
_
+
_
D
11
D
12
D
21
D
22
_
. (1.34)
De mme, soit
_
x
K
(t) = A
K
x
K
(t) + B
K
y(t)
u(t) = C
K
x
K
(t) + D
K
y(t)
(1.35)
une ralisation du correcteur, de variable dtat x
K
R
n
K
(avec x
K
(0) = 0), telle que
K(s) = C
K
(sI A
K
)
1
B
K
+D
K
. (1.36)
An dallger la formulation en espace dtat de la forme standard (gure 1.1), nous
faisons lhypothse que le bloc P
22
de la matrice de transfert P est strictement propre, ce
qui revient poser D
22
= 0 (pas de transmission directe de u vers y). Cette condition est
trs souvent vrie dans les applications, et peut se poser sans perte de gnralit dans
les problmes de synthse de correcteur. En eet, si D
22
,= 0, il sut de dporter le bloc
de transmission directe dans le correcteur, en posant
y(t) C
2
x(t) +D
21
w(t) (1.37)
la place de la dernire galit dans (1.33) et, par suite, de remplacer (1.35) par
_
_
_
x
K
(t) =
_
A
K
+B
K
D
22
(I D
K
D
22
)
1
C
K
_
x
K
(t) + B
K
(I D
22
D
K
)
1
y(t)
u(t) = (I D
K
D
22
)
1
C
K
x
K
(t) + (I D
K
D
22
)
1
D
K
y(t) .
(1.38)
I D
K
D
22
et I D
22
D
K
sont inversibles puisque la boucle ferme est bien pose, par
hypothse. Ainsi un simple changement de variable au niveau du correcteur permet de
22 Chapitre 1. Introduction la commande des systmes
se ramener au cas D
22
= 0, sans consquence sur le transfert T
wz
. On obtient alors, en
liminant u et y, une ralisation de la boucle ferme
_
_
x(t) = (A +B
2
D
K
C
2
)x(t) + B
2
C
K
x
K
(t) + (B
1
+B
2
D
K
D
21
)w(t)
x
K
(t) = B
K
C
2
x(t) + A
K
x
K
(t) +B
K
D
21
w(t)
z(t) = (C
1
+D
12
D
K
C
2
)x(t) + D
12
C
K
x
K
(t) + (D
11
+D
12
D
K
D
21
)w(t) ,
(1.39)
de sorte que
T
wz
(s) = C
c
(K) [sI A
c
(K)]
1
B
c
(K) + D
c
(K) , (1.40)
avec
A
c
(K) =
_
A +B
2
D
K
C
2
B
2
C
K
B
K
C
2
A
K
_
, B
c
(K) =
_
B
1
+B
2
D
K
D
21
B
K
D
21
_
,
C
c
(K) =
_
C
1
+D
12
D
K
C
2
D
12
C
K
_
, D
c
(K) =
_
D
11
+D
12
D
K
D
21
_
.
(1.41)
Nous ferons donc toujours lhypothse D
22
= 0 dans notre travail.
Retour statique, retour dynamique
Les contraintes dimplmentation des correcteurs, en termes de puissance de calcul
disponible, de mmoire, mais aussi de cot ou de abilit, font que les lois de commande
simples sont privilgies lors de la conception.
La commande par retour statique de sortie (SOF en anglais, pour static output feed-
back) apparat comme un cas particulier de la commande dnie par (1.35), avec n
K
= 0.
Le correcteur qui la ralise est rduit un simple gain matriciel y(t) = D
K
u(t) = Ku(t).
La synthse dun correcteur dynamique, dordre x n
K
1, permet daccder des lois
de commande plus labores. Lorsque n
K
< n, on parle dordre rduit, et pour n
K
= n
dordre plein. Notons que la commande par retour dynamique de sortie (DOF en anglais),
dordre x, se ramne formellement laction dun correcteur statique
K, constitu des
blocs A
K
, B
K
, C
K
et D
K
, par augmentation de x, u et y (voir par exemple [95]). Plus
prcisment, en posant
x =
_
x
x
K
_
, y =
_
x
K
y
_
, u =
_
x
K
u
_
, (1.42)
nous obtenons la ralisation
A =
_
A 0
0 0
n
K
_
,
B
1
=
_
B
1
0
_
,
B
2
=
_
0 B
2
I
n
K
0
_
,
C
1
=
_
C
1
0
_
,
D
11
= D
11
,
D
12
=
_
0 D
12
_
,
C
2
=
_
0 I
n
K
C
2
0
_
,
D
21
=
_
0
D
21
_
,
D
22
= 0 .
(1.43)
1.2. Problmes de synthse pour la commande 23
Le systme ainsi augment, command par
u =
_
A
K
B
K
C
K
D
K
_
. .
K
y (1.44)
concide avec la boucle ferme obtenue par retour dynamique. Dans le cas de la commande
par un correcteur dordre x, nous pourrons donc supposer sans perte de gnralit et
aprs augmentation du systme commander que ce correcteur est statique.
1.2.2 Stabilisation
La stabilisation dun systme LTI par retour statique de sortie consiste rechercher,
sil en existe, un correcteur K R
m
2
p
2
tel que la boucle ferme soit stable de manire
interne, cest--dire tel que
(A +B
2
KC
2
) C
. (1.45)
En utilisant labscisse spectrale dnie par (1.24), cela revient chercher K tel que
(A +B
2
KC
2
) < 0.
Lorsque le correcteur recherch est dynamique, il sagit de dterminer, toujours sous
condition dexistence, des matrices A
K
, B
K
, C
K
et D
K
telles que
(A
c
(K)) C
avec A
c
(K) =
_
A +B
2
D
K
C
2
B
2
C
K
B
K
C
2
A
K
_
. (1.46)
La stabilisation par retour de sortie demeure un problme ouvert de la commande
[22]. Il apparat comme le plus souvent cit dans lenqute [23] compilant les points de
vue dautomaticiens sur les enjeux de leur discipline. Il a t, et est toujours, lobjet de pu-
blications trs abondantes, dont le lecteur trouvera une slection de rfrences dans [100].
La plupart des approches existant pour trouver un correcteur K stabilisant sont prsen-
tes dans [131]. Dans certains cas particuliers, lexistence dun correcteur K stabilisant
(la stabilisabilit) peut tre vrie par des critres algbriques bien connus [143] :
Si n
K
= 0 et C = I (retour dtat statique), il faut et il sut que le couple
(A, B
2
) soit stabilisable (par dnition mme), ce qui revient vrier que les modes
instables de A sont commandables, soit encore [A I
n
B
2
] de plein rang (en ligne)
pour toute valeur propre (A) C
+
(critre PBH).
Si n
K
= n (retour de sortie dordre plein), une condition ncessaire et susante est
(A, B
2
) stabilisable et (C
2
, A) dtectable, cest--dire que les modes instables de A
sont commandables et observables. Elle peut tre vrie par le critre PBH.
Si n
K
< n (retour de sortie dordre rduit), cette dernire condition nest que n-
cessaire.
Si n
K
= 0 (retour de sortie statique), la condition suivante dite PIP paire (pour
parity interlacing property) portant sur les ples et les zros de G(s) = C
2
(sI
A)
1
B
2
est une condition ncessaire de stabilisabilit [131] :
le nombre de ples rels de G (compts avec leur multiplicit) entre deux zros
de blocage rels de G positifs ou nuls est pair, et
24 Chapitre 1. Introduction la commande des systmes
le nombre de zros de blocage rels de G entre deux ples rels de G est pair.
Ces conditions dexistence sont dun faible intrt pratique car elles ne sappliquent
qu un nombre limit de problmes de stabilisabilit, et surtout parce quelles ne sont
pas constructives. Dautre part, la complexit du problme de stabilisabilit par retour
de sortie statique nest pas tablie, mais des problmes trs voisins (stabilisabilit par
retour dtat avec correcteur born, stabilisation simultane par retour de sortie, . . .) sont
clairement NP-diciles [24].
Des mthodes constructives sont cependant bien connues dans le cas des systmes
SISO, pour lesquels K est un scalaire : ltude graphique du lieu des ples de la fonction de
transfert en boucle ferme (dit lieu dEvans) permet de rpondre la question dexistence
dun correcteur statique stabilisant, et donne le cas chant une valeur numrique pour
K. Il en est de mme pour le critre algbrique de Routh-Hurwitz.
Dans le cas des systmes MIMO, la tche de construction dun correcteur stabilisant
est plus complexe, et direntes mthodes ont t proposes, faisant appel des domaines
des mathmatiques trs divers. Nous en donnons ci-aprs un aperu.
Mthodes de dcision
Il est toujours possible de ramener le problme de stabilit de la boucle ferme un
ensemble dinquations scalaires polynmiales, dont les inconnues sont les lments de
K. Cela peut tre ralis au moyen des dterminants de Hurwitz associs det(sI
A B
2
KC
2
), qui sont tous strictement positifs ds que les ples sont dans le demi-plan
gauche C
1
2
, (1.52)
o S o
m
2
(R), S ~ 0, est dnie par
S R
1
R
1
B
T
2
Y Q
1
_
QC
T
2
_
C
2
Q
1
C
T
2
_
1
C
2
_
1
Q
1
Y B
2
R
1
, (1.53)
et R o
m
2
(R), R ~ 0, est choisie tel le que
R
1
~ B
+
2
_
W
B
T
2
_
W
T
B
T
2
W
B
T
2
_
1
W
T
B
T
2
_
(B
+
2
)
T
, (1.54)
= XA
T
+AX. (1.55)
Enn, L R
m
2
p
2
doit vrier |L|
2
< 1, et Q o
n
(R), Q ~ 0, est dtermine par
Q = Y B
2
R
1
B
T
2
Y Y A A
T
Y. (1.56)
26 Chapitre 1. Introduction la commande des systmes
Bien que (1.49) et (1.50) soient des LMI, la contrainte de couplage (1.51) est non
convexe et rend la rsolution en (X, Y ) dicile. La complexit en est dailleurs connue :
le problme est NP-dicile [52]. Il a donn lieu de nombreux algorithmes heuristiques,
dont la convergence vers une solution de (1.49)-(1.51) nest pas garantie (min/max [58],
projections alternes [62], par exemple). Les mthodes de type Lagrangien augment par-
tiel [49, 15], avec contraintes LMI explicites, prennent en compte la contrainte non linaire
(1.51) et sont assorties dune preuve de convergence [106] vers une solution locale. Leur
mise en uvre est cependant coteuse en temps de calcul.
Ds quune solution de (1.49)-(1.51) est connue, un correcteur statique stabilisant K
se dduit explicitement avec (1.52), aprs avoir x les paramtres R et L. Une alternative
consiste rsoudre lingalit matricielle (A+B
2
KC
2
)
T
Y +Y (A+B
2
KC
2
) 0, devenue
une LMI en K puisque la variable de Lyapunov Y est maintenant xe.
Optimisation non linaire
Nous lavons dj not, la stabilisation du systme (1.33) par un correcteur statique
peut tre assimile un problme doptimisation, en introduisant labscisse spectrale de la
matrice dtat en boucle ferme A
c
(K) = A+B
2
KC
2
. Nous considrons donc le problme
doptimisation
min
KR
m
2
p
2
(A +B
2
KC
2
). (1.57)
Lapplication K A + B
2
KC
2
est ane, mais na pas de bonnes proprits
pour loptimisation : elle est continue, mais non convexe, et surtout non lisse, et mme
non lipschitzienne en gnral. Une mthode numrique inspire des mthodes de faisceaux
(gradient bundle methods, prsentes dans le chapitre suivant) est introduite dans [35] pour
rsoudre (1.57). Elle comporte cependant, chaque itration, une tape dchantillonnage
autour du correcteur courant, ce qui lui donne un caractre alatoire et ne permet pas la
reproductibilit de la squence doptimisation. Cest pourquoi nous proposons au chapitre
3 dappliquer un algorithme dterministe de minimisation non lisse pour rsoudre (1.57).
Dautres fonctions critres sont proposes dans [36]. Elles sont introduites partir
du pseudo-spectre
(X)
_
z C : Y C
nn
det (Y zI
n
) = 0 et |Y X|
2
_
. (1.58)
On dnit ainsi
labscisse pseudo-spectrale
(X) :
(X) max Re z : z
(X) , (1.59)
la distance linstabilit (X), dnie comme la distance de X lensemble (ferm)
des matrices non Hurwitz de C
nn
:
(X) min
_
|Y X|
2
: Y C
nn
, (Y ) 0
_
. (1.60)
Ces deux quantits sont lies entre elles par la relation
. (1.62)
La minimisation de
(A
c
(K)) (avec > 0 x), permet de rechercher un correcteur
stabilisant, avec de surcrot une proprit de robustesse [37]. Le problme demeure non
convexe et non lisse, mais
(A
c
(K)) ou de
(A
c
(K)) sont toutefois coteuses en temps de calcul : les mthodes numriques proposes
dans [38, 99] sappuient, comme pour la norme H
consiste
rechercher une loi de commande par retour de sortie U(s) = K(s)Y (s), qui stabilise la
boucle ferme et minimise la norme H
du transfert T
wz
(K) :
min
K(s) stabilise (1.33)
|T
wz
(K)|
. (1.63)
Rappelons que la norme H
. Elles ont en
commun de sappuyer sur des caractrisations de lensemble des correcteurs stabilisants -
sous-optimaux, cest--dire tels que |T
wz
(K)|
< (1.64)
Les conditions de validit de cette premire approche sont les suivantes :
(i) (A, B
2
) est stabilisable et (C
2
, A) est dtectable,
(ii) D
12
et D
21
sont de plein rang,
(iii) P
12
et P
21
(transferts partiels dnis par 1.31) nont pas de zro sur laxe imaginaire,
(iv) D
T
12
_
C
1
D
12
_
=
_
0 I
_
et
_
B
1
D
21
_
D
T
21
=
_
0
I
_
,
(v) D
11
= 0 et D
22
= 0.
Il est possible de satisfaire les hypothses (iv) et (v), dites de normalisation, par des
changements de variables. Les manipulations, dont une partie a dj t voque en (1.37)
et (1.38) pour annuler D
22
, sont dtailles dans [125]. Notons cependant quil est ncessaire
de supposer (ii) an de pouvoir se ramener D
21
D
T
21
= I et D
T
12
D
12
= I. (ii) et (iii) sont
des hypothses de rgularit du systme. Enn, (i) est une condition ncessaire et susante
pour la stabilisabilit du systme par un correcteur dordre plein.
Thorme 1.2.2 Etant donn > 0, et sous les hypothses (i)-(v), le systme (1.33)
admet un correcteur -sous-optimal pour le problme H
, Y
o
n
(R) aux deux quations algbriques de Riccati
suivantes :
A
T
X
+X
A +X
(
2
B
1
B
T
1
B
2
B
T
2
)X
+C
T
1
C
1
= 0, (1.65)
AY
+Y
A
T
+Y
(
2
C
T
1
C
1
C
T
2
C
2
)Y
+B
1
B
T
1
= 0, (1.66)
et si, de plus, ces solutions vrient
X
_ 0, Y
_ 0, (X
) <
2
. (1.67)
1.2. Problmes de synthse pour la commande 29
Une ralisation dun correcteur -sous-optimal particulier (appel correcteur central) est
alors donne par
_
_
A
K
= A + (
2
B
1
B
T
1
B
2
B
T
2
)X
(I
2
Y
)
1
Y
C
T
2
C
2
B
K
= (I
2
Y
)
1
Y
C
T
2
C
K
= B
T
2
X
D
K
= 0 .
(1.68)
Cette caractrisation permet, en procdant par dichotomie sur , de trouver un en-
cadrement du gain H
-optimal
opt
, et ceci la prcision souhaite : cest lalgorithme
de -itration. Le correcteur central (strictement propre et dordre plein) est reconstruit
avec (1.68).
Notons daprs [47] que lensemble des correcteurs -sous-optimaux K
, ralisant une
performance |T
wz
(K
(s)
K
0
(s)
w z
y u
Q(s)
P(s)
Fig. 1.2 Paramtrisation des correcteurs sous-optimaux K
.
Le bloc K
0
est bas sur le correcteur central (1.68), augment de la faon suivante :
K
0
(s) =
_
_
A
K
B
K
(I
2
Y
)
1
B
2
C
K
D
K
I
C
2
I 0
_
_ . (1.69)
Le paramtre Q(s), qui doit tre choisi stable et tel que |Q|
dordre n
K
= n p
2
. En dehors de quelques cas
particuliers cependant, la faon dont le paramtre Q modie lordre ou la structure du
correcteur H
nest pas matrise. Dans le cas de lordre rduit, seules des conditions
30 Chapitre 1. Introduction la commande des systmes
susantes ont t proposes [63]. Elles font apparatre des quations de Riccati modies
et couples, rsolues par des algorithmes de continuation homotopique.
Ainsi, le problme H
. La formulation du problme H
< (1.70)
si et seulement si il existe une matrice X o
n
(R), X ~ 0, tel le que
_
_
A
T
X +XA XB C
T
B
T
X I D
T
C D I
_
_ 0 . (1.71)
Lapplication du lemme born-rel la ralisation
_
A
c
(K), B
c
(K), C
c
(K), D
c
(K)
_
, qui
dcrit la boucle ferme sous forme standard ((1.41), page 22) donne ainsi une caractrisa-
tion des correcteurs H
_
(A +B
2
KC
2
)
T
X +X(A +B
2
KC
2
) X(B
1
+B
2
KD
21
) (C
1
+D
12
KC
2
)
T
(B
1
+B
2
KD
21
)
T
X I (D
11
+D
12
KD
21
)
T
C
1
+D
12
KC
2
D
11
+D
12
KD
21
I
_
_ 0 ,
(1.72)
P ~ 0 , (1.73)
o les matrices A, B
1
, B
2
, C
1
, C
2
, D
11
, D
12
, D
21
et K sont augmentes conformment
(1.43)-(1.44), dans le cas dun retour dynamique (n
K
> 0). Bien que le critre soit
linaire, la nature des contraintes (une BMI) rend le problme non convexe en (K, X, ).
1.2. Problmes de synthse pour la commande 31
On trouvera dans la thse [133] (ainsi que dans les rfrences qui y gurent) un tat des
lieux concernant les techniques de rsolution actuelles de tels problmes (points intrieurs,
optimisation non lisse, branch-and-bound, descente coordonne), ainsi que la prsentation
de plusieurs mthodes originales (dont une de type Lagrangien augment).
Comme pour la stabilit (Thorme 1.2.1, page 25), il est cependant possible de rame-
ner la BMI (1.72) un systme de deux LMI couples par une contrainte non linaire. Par
une srie de manipulations algbriques introduites dans [55] (incluant des projections du
lemme born-rel), la variable K du correcteur disparat, et lon aboutit une nouvelle
caractrisation des solution du problme H
sous-optimal.
Thorme 1.2.4 Etant donn > 0, et sous les hypothses (i)-(ii), le systme (1.33)
admet un correcteur -sous-optimal pour le problme H
(1.64) si et seulement si il
existe des matrices X, Y o
n+n
K
(R) vriant les LMI
_
W
[B
T
2
D
T
12
]
0
0 I
_
T
_
_
AX +XA
T
XC
T
1
B
1
C
1
X I D
11
B
T
1
D
T
11
I
_
_
_
W
[B
T
2
D
T
12
]
0
0 I
_
0 , (1.74)
_
W
[C
2
D
21
]
0
0 I
_
T
_
_
A
T
Y +Y A Y B
1
C
T
1
B
T
1
Y I D
T
11
C
1
D
11
I
_
_
_
W
[C
2
D
21
]
0
0 I
_
0 , (1.75)
_
X I
I Y
_
_ 0 , (1.76)
o W
[B
T
2
D
T
12
]
et W
[C
2
D
21
]
sont des matrices dont les colonnes forment des bases des noyaux
de [B
T
2
D
T
12
] et de [C
2
D
21
].
Lensemble des correcteurs -sous-optimaux contient des correcteurs dordre n
K
< n
si et seulement si les matrices X et Y vrient de plus la contrainte de rang
rang (I XY ) n
K
. (1.77)
Grce au thorme 1.2.4, la synthse H
originel (1.63), qui est lui-mme non lisse comme nous lavons
dj soulign ? Cette approche directe, qui fonde les travaux dvelopps dans cette thse,
peut tre exploite pour rsoudre des problme de stabilisation (travaux de Burke, Lewis
et Overton prcdemment cits, et nouvel algorithme prsent au chapitre 3). Dans le cas
de la synthse H
, les travaux rcents prsents dans [8, 9, 7] et dans [94, 32] montrent
clairement les bnces tirer :
la dimension de lespace de recherche est rduite au nombre de paramtres du cor-
recteur ; elle est indpendante de lordre du systme commander,
la lisibilit des variables de dcision fait quil devient ais dimposer des contraintes
au correcteur ; en pratique, il sura de disposer dune paramtrisation diren-
tiable K() du correcteur pour xer la structure souhaite (ordre rduit,
Proportionnel-Intgral-Driv ou PID, commande dcentralise, . . .),
bien que le problme de synthse H
sd
(A) max Re
i
(A) = (A).
Chapitre 2
Optimisation non lisse
Je me dtourne avec eroi et horreur de
cette plaie lamentable des fonctions
continues qui nont point de drives.
Charles Hermite (1822-1901),
cit par F. H. Clarke [44].
2.1 Terminologie et dnitions
Nous adoptons ici les notations habituelles et gnrales de lAnalyse et de lOptimi-
sation non lisse. En particulier, les variables et symboles choisis ne font jamais rfrence,
dans ce chapitre, aux notions relatives aux systmes dynamiques et la commande pr-
cdemment prsents.
Nous avons choisi une prsentation didactique des notions danalyse non lisse : nous
commenons par quelques pr-requis, puis nous introduisons le sous-direntiel dans le
cas des fonctions convexes, pour lesquelles la gnralisation du gradient est assez intuitive.
Nous prsentons ensuite le sous-direntiel de Clarke, partir des drives directionnelles
gnralises. Le principe gnral des mthodes de faisceaux est expos. Enn, nous dcri-
vons des mthodes doptimisation non lisse spciques aux problmes minimax, du type
de ceux rencontrs dans les problmes de commande.
2.1.1 Ingrdients pour lanalyse non lisse
Lespace R
n
est muni du produit scalaire euclidien x, y) = x
T
y. La norme associe est
note |.|. B(x, r) dsigne la boule (ouverte) de centre x R
n
et de rayon r > 0, dnie
par
B(x, r) y R
n
: |y x| < r .
An de bien distinguer les composantes dun vecteur x R
n
dans la base canonique
dune part, et les termes dune suite (x
i
)
iI
(I ni ou non) dlments de R
n
dautre part,
on notera les composantes x
j
et les termes x
i
. Ainsi x
j
i
dsigne la j-me composante du
i-me terme dune suite.
33
34 Chapitre 2. Optimisation non lisse
Nous ne rappelons pas ici les notions fondamentales du calcul direntiel (direntia-
bilit au sens de Frchet, au sens de Gteaux, gradient, fonctions de classe c
n
), mais nous
xons les quelques dnitions supplmentaires indispensables une gnralisation de ces
notions.
Dnition 2.1.1 Un ensemble C R
n
est dit convexe si, pour tout x, y C et pour
tout rel [0, 1], on a x + (1 )y C.
On note [x, y] z R
n
: z = x+(1)y et 0 1 le segment ferm dextrmits
x et y.
Pour tout k N
,
k
dsigne le simplexe unit de R
k
, dni par
k
R
k
:
k
i=1
i
= 1 et
i
0 pour tout 1 i k . (2.1)
Si C R
n
est convexe, et si (x
1
, . . . , x
k
) C
k
, alors toute combinaison linaire convexe
de la forme
k
i=1
i
x
i
(avec
k
) est encore dans C.
Toute intersection de convexes est encore convexe. Etant donne un ensemble S R
n
,
on appelle enveloppe convexe de S et on note co S lintersection de tous les convexes
contenant S, cest--dire le plus petit convexe contenant S. Il est dcrit par toutes les
combinaisons linaires convexes dlments de S :
co S = x R
n
: x =
k
i=1
i
x
i
,
k
, x
i
S, 1 i k, k 1 . (2.2)
Dnition 2.1.2 Soit C R
n
un ensemble convexe, s R
n
et x
C. La direction s est
dite normale C en x si
s, y x) 0 pour tout y C. (2.3)
Lensemble de ces directions s forme le cne normal C en x, not N
C
(x).
Dnition 2.1.3 Une fonction f : R
n
R est dite convexe si, pour tout x, y R
n
et
pour tout rel [0, 1], on a
f(x + (1 )y) f(x) + (1 )f(y) . (2.4)
Si lingalit (2.4) est stricte pour tout x, y R
n
tels que x ,= y, et pour tout ]0, 1[,
f est dite strictement convexe.
Une fonction f : R
n
R est convexe si et seulement si son pigraphe
Epi (f)
__
x
s
_
R
n+1
: s f(x)
_
est une partie convexe de R
n+1
. Enn, toute fonction convexe est continue sur R
n
.
2.1. Terminologie et dnitions 35
Dnition 2.1.4 Une fonction f : R
n
R est dite lipschitzienne sur S R
n
sil existe
une constante L > 0 tel le que, pour tout y, z S
[f(y) f(z)[ L|y z| (2.5)
f est dite localement lipschitzienne en x R
n
sil existe un rel positif > 0 tel que f est
lipschitzienne sur B(x, ).
Si f est lipschitzienne sur S (resp. localement lipschitzienne en x), toute valeur de L
qui vrie lingalit (2.5) de la dnition 2.1.4 est appele constante de Lipschitz de f
sur S (resp. en x, ou au voisinage de x).
Le caractre localement lipschitzien dune fonction en x assure que son taux daccrois-
sement peut tre contrl dans un voisinage de x. Une fonction localement lipschitzienne
en un point nest pas ncessairement direntiable en ce point (par exemple x [x[
en 0). Enn, on peut montrer que toute fonction convexe f : R
n
R est localement
lipschitzienne en tout point de R
n
(et donc que f est lipschitzienne sur tout compact de
R
n
).
Terminons par la notion de drive directionnelle :
Dnition 2.1.5 Une fonction f : R
n
R admet une drive directionnelle (unilatrale)
en x R
n
dans la direction d R
n
si la limite
lim
t0
t>0
f(x +td) f(x)
t
(2.6)
existe et est nie. On la note alors f
t
(x, d).
Si f est direntiable en x (au sens de Frchet ou au sens de Gteaux), alors elle admet
des drives directionnelles dans toutes les directions d, et on a f
t
(x, d) = f
t
(x)(d) =
f(x)
T
d. Rappelons que la rciproque nest pas vraie en gnral, sauf si les drives
directionnelles sont continues.
Dnition 2.1.6 Une fonction : R
n
R est dite sous-linaire si, par dnition, elle
est convexe et positivement homogne, cest--dire
(tx) = t(x) pour tout x R
n
et t > 0 . (2.7)
On montre facilement que, dans cette dnition, lhypothse de convexit peut tre rem-
place par la sous-additivit de :
(x +y) (x) + (y) pour tout x, y R
n
(2.8)
Ainsi une fonction sous-linaire est une fonction sous-additive et positivement homogne.
Toute fonction sous-linaire possde la proprit fondamentale de majorer au moins
une fonction linaire, ce qui permet dnoncer le thorme suivant :
36 Chapitre 2. Optimisation non lisse
Thorme 2.1.7 Soit : R
n
R une fonction sous-linaire. Alors lensemble
S
s R
n
: s, x) (x) pour tout x R
n
(2.9)
est non vide. Il est de plus compact et convexe. On a enn la relation
(x) = sup s, x) : s S
. (2.10)
Rciproquement, tant donn un ensemble S non vide, compact et convexe, la fonction
support
S
: R
n
R de S, dnie par
S
(x) sup s, x) : s S , (2.11)
est sous-linaire.
Le thorme prcdent permet ainsi dtablir une bection entre lensemble des parties
non vides, compactes et convexes de R
n
dune part, et lensemble des applications sous-
linaires R
n
R dautre part.
2.1.2 Analyse non lisse : le cas convexe
Sous-direntiel dune fonction convexe
Lanalyse convexe permet de gnraliser assez naturellement la notion de direntielle,
en introduisant de nouveaux objets (sous-direntiel et sous-gradient), dnis pour les
fonctions convexes sur R
n
(donc pas ncessairement direntiables). Nous en donnons
ici les principales tapes, et nous invitons le lecteur se rfrer louvrage [68], qui
propose une approche trs pdagogique de lanalyse convexe, ainsi qu [121], rfrence
en la matire.
Dans toute la section 2.1.2, f : R
n
R dsigne une fonction convexe.
Thorme 2.1.8 Pour tout x R
n
, f admet des drives directionnelles dans toutes les
directions d R
n
, et on a
f
t
(x, d) = inf
t>0
f(x +td) f(x)
t
. (2.12)
De plus, pour tout x x, lapplication d R
n
f
t
(x, d) est sous-linaire.
Remarquons que toute constante locale de Lipschitz L de f en x est encore une
constante de Lipschitz de d R
n
f
t
(x, d), et ce de faon globale. On a en particu-
lier
[f
t
(x, d)[ L|d| (2.13)
Le thorme 2.1.7 permet donc de considrer d R
n
f
t
(x, d) comme la fonction
support dun ensemble non vide, compact et convexe de R
n
, dni comme suit :
2.1. Terminologie et dnitions 37
Dnition 2.1.9 Le sous-direntiel de f en x, not
c
f(x) (avec c pour convexe), est
lensemble non vide, compact et convexe de R
n
dont la fonction support est d R
n
f
t
(x, d), cest--dire
c
f(x) s R
n
: s, d) f
t
(x, d) pour tout d R
n
. (2.14)
Les lments de
c
f(x) sont appels les sous-gradients de f en x.
De plus, connaissant
c
f(x), il est immdiat de retrouver nimporte quelle drive direc-
tionnelle :
f
t
(x, d) = max s, d) : s
c
f(x) . (2.15)
Enn, on a
c
f(x) B(0, L), avec (2.13).
Interprtation gomtrique
Le thorme suivant donne une caractrisation du sous direntiel qui ne fait pas appel
aux drives directionnelles, mais plutt la notion de minoration par une fonction ane :
Thorme 2.1.10 Pour tout x R
n
, on a lgalit suivante
c
f(x) = s R
n
: f(y) f(x) +s, y x) pour tout y R
n
. (2.16)
Cette description du sous-direntiel sinterprte bien en termes gomtriques, dans
R
n+1
: s
c
f(x) si et seulement si [
s
1
] est dans le cne normal lpigraphe de f
en [
x
f(x)
]. La gure 2.1 illustre cette interprtation dans le cas dune fonction convexe
dnie sur R; le cne tangent Epi (f) en [
x
f(x)
] est reprsent par des ches en trait
pointill, le cne normal par des ches en trait continu. Un vecteur [
s
1
] du cne normal
est reprsent en gras.
38 Chapitre 2. Optimisation non lisse
x +
c
f(x)
x x +s
f(x)
Epi (f)
f(x) 1
Fig. 2.1 Interprtation gomtrique du sous-direntiel dans le cas convexe.
Cas direntiable
Thorme 2.1.11 Si f convexe est direntiable en x, alors
c
f(x) est rduit au single-
ton f(x). Rciproquement, si f est convexe et
c
f(x) = s, alors f est direntiable
en x et s = f(x).
Nous navons volontairement pas indiqu le type de direntiabilit de f en x, car
celle au sens de Frchet et celle au sens de Gteaux concident dans le cas des fonctions
localement lipschitziennes, donc en particulier pour les fonctions convexes.
2.1.3 Analyse non lisse : le cas lipschitizien
Sous-direntiel de Clarke
f : R
n
R est maintenant suppose localement lipschitzienne en x R
n
, de constante
de Lipschitz L, et ce dans toute la section 2.1.3. Lhypothse nest pas susante pour
parler de drives directionnelles de f, contrairement au cas convexe. Clarke [44], dont
2.1. Terminologie et dnitions 39
notre prsentation reprend ici les principaux rsultats, dnit la drive directionnelle
gnralise de la faon suivante :
Dnition 2.1.12 Pour tout d R
n
, la fonction f admet une drive directionnelle
gnralise en x dans la direction d, note f
(x, d) limsup
yx
t0
t>0
f(y +td) f(y)
t
. (2.17)
Puisque f est localement lipschitzienne en x R
n
, f
(x, d) est sous-linaire, de sorte quil est permis de dnir, de faon analogue la
dnition 2.1.9, un sous-direntiel pour les fonctions localement lipschitziennes :
Dnition 2.1.13 Le sous-direntiel de Clarke de f en x, not f(x) est lensemble
non vide, compact et convexe de R
n
dont la fonction support est d R
n
f
(x, d),
cest--dire
f(x) s R
n
: s, d) f
(x, d) = f
t
(x, d) pour tout d R
n
, et par suite f(x) =
c
f(x).
Le lien avec le cas direntiable est moins vident que dans le cas convexe : si f,
toujours suppose localement lipschitzienne en x, est (Frchet- ou Gteaux-) direntiable
en x, alors on a f
t
(x, d) = f(x), d) f
i
f
i
est encore localement lipschitzienne en x, et on a
_
p
i=1
i
f
i
_
(x)
p
i=1
i
f
i
(x) . (2.22)
On a galit si une fonction f
i
au plus nest pas continment direntiable en x. On a
encore galit si les f
i
sont rgulires au sens de Clarke, et si
i
0 pour tout i.
42 Chapitre 2. Optimisation non lisse
Prcisons que le second membre de (2.22) contient toutes les sommes de la forme
i
s
i
, o s
i
f
i
(x).
Proposition 2.1.18 (Rgle de direntiation en chane)
Soit F : R
n
R
m
une fonction continment direntiable en x R
n
, et g : R
m
R
une fonction localement lipschitzienne en F(x). Alors la compose g F est localement
lipschitzienne en x, et on a
(g F)(x) g (F (x)) F
t
(x), (2.23)
o F
t
(x) dsigne la direntielle de F en x. On a galit si g est rgulire au sens de
Clarke en F(x), et, dans ce cas, la compose g F est aussi rgulire au sens de Clarke
en x.
Le second membre de (2.23) dsigne lensemble des formes linaires sur R
n
de la forme
d s, F
t
(x).d), o s dcrit g (F (x)). On le note encore [F
t
(x)]
g (F (x)), comme
action de lapplication linaire adjointe [F
t
(x)]
sur le sous-direntiel.
Proposition 2.1.19 Soit (f
i
)
1ip
une famil le nie de fonctions dnies sur R
n
, va-
leurs relles, et localement lipschitziennes en x R
n
. Alors le maximum point par point
max
i
f
i
est encore localement lipschitzien en x R
n
, et on a
_
max
1ip
f
i
_
(x) co f
j
(x) : j (x) , (2.24)
o (x) dsigne lensemble des indices j actifs en x, tels que f
j
(x) = max
i
f
i
(x). On a
galit si, pour tout j (x), les f
j
sont rgulires au sens de Clarke en x, et dans ce
cas max
i
f
i
est elle-mme rgulire au sens de Clarke en x.
Cette dernire rgle est fondamentale, car elle permet dobtenir tous les sous gradients
dune fonction dnie comme le maximum point par point dune famille de fonctions
continment direntiables. De telles fonctions apparaissent souvent en pratique, lors-
quun ensemble (ni ou non) de spcications exprimes par des ingalits doivent tre
vries. La minimisation de ces fonctions forme la familles des problmes dits minimax,
sur lesquels nous reviendrons la section 2.3.3.
2.2 Conditions doptimalit
Nous montrons dans cette section en quoi les lments qui viennent dtre prsents
forment un cadre thorique adapt la rsolution de problmes doptimisation.
Considrons le problme doptimisation
min
xR
n
f(x) , (2.25)
o f : R
n
R est suppose localement lipschitzienne en tout point x R
n
. Il sagit dun
problme non lisse, puisque f nest pas ncessairement direntiable sur R
n
en entier.
Rappelons quune solution de (2.25), si elle existe, peut tre globale, ou seulement locale :
2.3. Algorithmes pour loptimisation non lisse 43
Dnition 2.2.1 Un point x
R
n
est un minimum global de f sur R
n
si, pour tout
x R
n
, f(x
) f(x).
Un point x
R
n
est un minimum local de f sil existe > 0 tel que, pour tout
x B(x
, ), f(x
) f(x).
Le sous-direntiel de Clarke permet de formuler une condition ncessaire doptimalit
locale (sans contrainte) pour les fonctions localement lipschitzienne sur R.
Thorme 2.2.2 Si x
).
Remarque: Si x
(x
, d) = max s, d) : s f(x
) 0 (2.26)
puisque 0 f(x
).
Le thorme 2.2.2 gnralise la condition ncessaire doptimalit locale du premier
ordre des fonctions direntiables (f(x
R
n
tel que
0 f(x
).
Le thorme de Rademacher pourrait laisser penser que les conditions doptimalit
des thormes 2.2.2 et 2.2.3 ont un faible intrt pratique, puisquil y a peu de chances
de tomber sur un point x o f nest pas direntiable. Cest en pratique le contraire
qui se produit : un minimum est souvent atteint en un point o la direntiabilit est
perdue, et en lequel les conditions doptimalit pour les fonctions lisses sont videmment
inapplicables.
2.3 Algorithmes pour loptimisation non lisse
2.3.1 Direction de descente
En optimisation non lisse comme en optimisation direntiable, la recherche pratique
des minima locaux se fait rarement par la rsolution directe des conditions doptima-
lit, mais utilise des mthodes itratives pour construire une suite ditrs (x
k
)
kN
R
n
,
qui converge vers un minimum (local ou global) x
(x, d) < 0
(ii) s, d) < 0 pour tout s f(x)
Une direction dite de plus profonde descente est une direction de descente pour laquelle
la drive directionnelle gnralise est la plus ngative possible. Etant donn que d
f
(x, d) , (2.28)
ou, de faon quivalente,
min
|d|1
max
sf(x)
s, d) , (2.29)
dont toute solution d
(x) =
s
(x)
|s
(x)|
, o s
f
k
(x) max
j7
k
f(y
j
) +s
j
, x y
j
) , (2.31)
ou encore, en faisant apparatre le point courant x
k
,
f
k
(x) = max
j7
k
_
f(x
k
) +s
j
, x x
k
)
j
k
_
, (2.32)
o le terme
j
k
est lerreur de linarisation, pour tout j 1
k
j
k
f(x
k
) f(y
j
) s
j
, x
k
y
j
) . (2.33)
Comme f est convexe, on a
j
k
0 pour tout j 1
k
, et
f
k
(x) f(x) pour tout x R
n
. La
direction de recherche d
k
est ensuite obtenue comme solution du problme de minimisation
min
dR
n
_
f
k
(x
k
+d) +
1
2
d, G
k
d)
_
, (2.34)
o le terme quadratique (avec G
k
~ 0) assure lexistence et lunicit du minimum, et
pnalise le critre si x
k
+ d est trop loign de x
k
. Il agit ainsi comme une contrainte de
type rgion de conance, permettant de tenir compte du caractre local de
f
k
. Il permet
de plus dinclure une information du second-ordre sur f au voisinage de x
k
.
Le sous-problme (2.34) est encore non lisse, mais peut facilement se reformuler comme
le programme quadratique convexe sous contrainte de type ingalit
min
dR
n
vR
v +
1
2
d, G
k
d)
tel que s
j
, d)
j
k
v pour tout j 1
k
(2.35)
qui est lui-mme quivalent, par dualit lagrangienne (voir par exemple [102]), la re-
cherche du multiplicateur
k
= (
j
k
)
j7
k
solution de
min
I
k
j7
k
j
k
j
k
+
1
2
_
_
j7
k
j
k
s
j
_
_
T
G
1
k
_
_
j7
k
j
k
s
j
_
_
, (2.36)
46 Chapitre 2. Optimisation non lisse
o
7
k
dsigne le simplexe unit dni par
7
k
_
_
_
(
j
k
)
j7
k
:
j7
k
j
k
= 1 et
j
k
0 pour tout j 1
k
_
_
_
. (2.37)
La direction de recherche d
k
solution de (2.35) est reconstruite partir du multiplica-
teur optimal
k
solution de (2.36), comme combinaison convexe :
d
k
=
j7
k
j
k
G
1
k
s
j
. (2.38)
Enn, la dcroissance de f attendue (base sur le modle
f
k
) est la valeur v
k
de v, solution
du problme (2.35). On a
v
k
=
f
k
(x
k
+d
k
) f(x
k
)
=
j7
k
j
k
j
k
d
k
, G
k
d
k
)
0 .
Recherche linaire
On procde ensuite une recherche linaire dans la direction d
k
, partir du point
courant x
k
. Comme t f(x
k
+td
k
) est non lisse, il faut recourir des mthodes adaptes.
On suppose xs les paramtres m
L
]0,
1
2
[, m
R
]m
L
, 1[ et une taille de pas minimale
t ]0, 1]. On recherche le plus grand pas t
L,k
[t, 1] qui ralise la fraction m
L
de la
dcroissance attendue, cest--dire
f(x
k
+t
L,k
d
k
) f(x
k
) +m
L
t
L,k
v
k
. (2.39)
La condition (2.39) est rapprocher de la condition dArmo, o v
k
remplace ici la drive
directionnelle f
t
(x
k
, d
k
).
Trois situations peuvent se prsenter :
1. Un tel t
L,k
existe ; on ralise un long serious step :
x
k+1
x
k
+t
L,k
d
k
et y
k+1
x
k+1
. (2.40)
2. La condition (2.39) nest vrie pour aucun pas dans [t, 1], mais par t
L,k
]0, t[ ; on
ralise un short serious step :
x
k+1
x
k
+t
L,k
d
k
et y
k+1
x
k+1
+t
R,k
d
k
. (2.41)
3. La condition (2.39) nest vrie sur [0, 1] que pour t
L,k
= 0 ; on ralise un null step :
x
k+1
x
k
et y
k+1
x
k+1
+t
R,k
d
k
. (2.42)
2.3. Algorithmes pour loptimisation non lisse 47
Dans les deux derniers cas, t
R,k
est choisi tel que
t
R,k
> t
L,k
et
k+1
k+1
+s
k+1
, d
k
) m
R
v
K
(2.43)
avec s
k+1
f(y
k+1
), et
k+1
k+1
= f(x
k+1
) f(y
k+1
) + s
k+1
, y
k+1
x
k+1
). La condition
(2.43) garantit que tout nouveau sous-gradient s
k+1
f(y
k+1
) enrichit linformation
contenue dans (s
j
)
j7
k
, car alors x
k+1
et y
k+1
sont localiss de part et dautre dune
discontinuit de x f
t
(x, d
k
).
Une nouvelle direction de recherche d
k+1
est ensuite dtermine, suivie dune nouvelle
recherche linaire, et ce, tant que la condition
v
k
=
f
k
(x
k
+d
k
) f(x
k
) < (2.44)
est vrie, pour > 0 x. Sous certaines hypothses (voir les remarques ci-aprs, ainsi
que [80]), lalgorithme ainsi dni neectue quun nombre ni de nul l steps, et converge
vers un point stationnaire de f.
Remarques:
Si f nest pas convexe mais localement lipschitzienne, lalgorithme doit tre adapt
car lerreur de linarisation (2.33) peut changer de signe (voir par exemple [80]).
Au bout dun grand nombre ditrations, lensemble 1
k
devenant important, le sto-
ckage en mmoire des sous-gradients peut tre problmatique, et leur grand nombre
peut rendre le sous-problme quadratique (2.36) dicile rsoudre. On impose alors
une taille maximale 1
k
, que lon met jour comme une le FIFO (rst in, rst out,
soit premier entr, premier sorti). La convergence de lalgorithme nest cependant
plus assure, et lon doit faire appel une stratgie dagrgation de sous-gradients
an de la garantir (voir [80]).
La famille des matrices G
k
~ 0 doit rester borne an de conserver la convergence
de lalgorithme. La varit des mthodes de faisceaux existantes repose en grande
partie sur la latitude dans le choix de G
k
. Avec G
k
= u
k
I
n
, on obtient par exemple
la mthode dite proximal bundle (voir [81]) ou bundle trust region (voir [127]).
2.3.3 Mthodes pour les problmes minimax
Les problmes doptimisation dits minimax (ou min-max) sans contrainte sont de la
forme
min
xR
n
max
j
p
f
j
(x) , (2.45)
o
p
est lensemble ni dindices
p
1, . . . , p, et les fonctions f
j
: R
n
R sont
soit des fonctions continment direntiables ; on dit dans ce cas que (2.45) est un
problme minimax ni, sans contrainte,
soit dnies elles-mmes comme des maxima de fonctions :
f
j
(x) = max
y
j
Y
j
j
(x, y
j
) , (2.46)
avec, pour tout j
p
, Y
j
une partie compacte de R
m
j
et
j
: R
n
R
m
j
R une
fonction continue et telle que pour tout y R
m
j
, lapplication partielle x
j
(x, y)
48 Chapitre 2. Optimisation non lisse
est continment direntiable sur R
n
. On parle dans ce cas de problme minimax
semi-inni, car si lespace de recherche est de dimension nie n, la fonction objectif
apparat comme le maximum dune innit de fonctions.
On notera par la suite f = max
j
f
j
.
Sous les hypothses prcdemment nonces, on montre que f est rgulire au sens de
Clarke (elle admet donc en tout point un sous-direntiel et des drives directionnelles
dans toutes les directions, gales aux drives directionnelles gnralises), et pour tout
x, d R
n
on a
f(x) = co
j
p
(x)
f
j
(x) ,
f
t
(x, d) = max
j
p
(x)
f
j
(x), d)
= max
sf(x)
s, d)
(2.47)
dans le cas minimax ni, avec
p
(x) = j
p
: f
j
(x) = f(x) lensemble des indices
dits actifs en x, et
f(x) = co
j
p
(x)
_
co
yY
j
(x)
j
(x, y)
_
,
f
t
(x, d) = max
j
p
(x)
max
yY
j
(x)
j
(x, y), d)
= max
sf(x)
s, d)
(2.48)
dans le cas minimax semi-inni, o Y
j
(x) = y
j
Y
j
:
j
(x, y
j
) = f
j
(x) (ensemble des
valeurs de y actives) et pour tout y Y
j
(x),
x
j
(x, y) dsigne le gradient en x de
lapplication partielle
j
(, y).
Remarque: Le problme de synthse H
[0,+]
i
[T
wz
(K)(j)] (2.49)
o les
i
[T
wz
(K)(j)] dsignent les valeurs singulires de la matrice de transfert en
boucle ferme T
wz
(K), value la pulsation .
Les problmes minimax sont largement voqus par Polak dans louvrage [114], ainsi
que dans [113]. Les lments qui suivent, et notamment le choix de la fonction doptimalit,
en sont directement issus. Nous invitons le lecteur sy rfrer pour tout approfondisse-
ment.
Conditions doptimalit
Dans le cas ni, la condition ncessaire doptimalit dcoule de la proposition 2.1.19
et du thorme 2.2.2 :
Thorme 2.3.3 Si x
) = co
j
p
(x
)
f
j
(x
) , (2.50)
avec
p
(x
) =
_
j
p
: f
j
(x
) = f(x
) = max
i
p
f
i
(x
)
_
.
2.3. Algorithmes pour loptimisation non lisse 49
Elle peut encore snoncer par combinaison convexe : il existe un vecteur
p
tel que
p
i=1
i
f
i
(x
) = 0 , (2.51)
et vriant la condition de complmentarit
p
i=1
i
[f(x
) f
i
(x
)] = 0 . (2.52)
Ce rsultat se gnralise au cas minimax semi-inni (voir [113, Thorme 3.1.4]) :
Thorme 2.3.4 Si x
) = co
j
p
(x
)
f
j
(x
) , (2.53)
avec
p
(x
) = j
p
: f
j
(x
) = f(x
), et
f
j
(x
) = co
y
j
Y
j
(x
j
(x
, y
j
) , (2.54)
o Y
j
(x
) = y
j
Y
j
:
j
(x
, y
j
) = f
j
(x
).
Ces conditions ncessaires doptimalit locale se prsentent sous la forme dquations
o apparaissent les gradients des fonctions intervenant dans le max, et des multiplicateurs
convexes. Comme nous lavons dj remarqu dans un cadre plus vaste, la rsolution
directe de ces quations nest gnralement pas envisageable en pratique ; on a alors recours
un algorithme de descente. La direction normalise de plus profonde descente (pour la
norme euclidienne) est, dans le cas dun problme minimax ni :
d
(x) =
s
(x)
|s
(x)|
, o
s
j
p
(x)
j
f
j
(x)| :
p
(x)
_
_
_
.
avec
p
(x)
le simplexe unit dni par
p
(x)
_
_
_
(
j
k
)
j
p
(x)
:
j
p
(x)
j
k
= 1 et
j
k
0 pour tout j
p
(x)
_
_
_
. (2.55)
Nous lavons dj soulign, lapplication x d
f(x
0
, x) max
j
p
_
f
j
(x
0
) +f
j
(x
0
), x x
0
) +
1
2
|x x
0
|
2
_
, (2.56)
avec > 0 x. Cest un modle du premier ordre de f en x
0
, strictement convexe. Il
permet de dnir une fonction doptimalit : R
n
R, ainsi quune direction de recherche
h : R
n
R; pour tout x R
n
(x) min
hR
n
_
p
_
_
q
j=1
j
[f(x) f
j
(x)] +
1
2
_
_
_
_
_
_
q
j=1
j
f
j
(x)
_
_
_
_
_
_
2
_
_
. (2.58)
En eet le max dans (2.57) porte sur une famille ni de scalaires, et reste inchang sil
est tendu lenveloppe convexe de ces scalaires :
(x) = min
hR
n
max
p
_
_
_
q
j=1
j
[f
j
(x) f(x)] +
q
j=1
j
f
j
(x), h) +
1
2
|h|
2
_
_
_
. (2.59)
Par dualit lagrangienne, il est possible dchanger le min et le max sans modier (x),
et pour
p
x, le min interne
min
hR
n
_
_
_
q
j=1
j
[f
j
(x) f(x)] +
q
j=1
j
f
j
(x), h) +
1
2
|h|
2
_
_
_
(2.60)
est un programme quadratique strictement convexe et sans contrainte, dont la solution
est h =
1
q
j=1
j
f
j
(x). En substituant cette dernire expression h dans (2.59), on
obtient nalement (2.58), et, toujours par dualit, h(x) sexprime laide du multiplicateur
(x) solution de (2.58) :
h(x) =
1
j=1
j
(x)f
j
(x) (2.61)
On a, de plus, les proprits suivantes pour tout x R
n
:
(i) (x) 0 et 0 f(x) si et seulement si (x) = 0
2.3. Algorithmes pour loptimisation non lisse 51
(ii) f
t
(x, h(x)) (x)
1
2
|h(x)|
2
(x).
(iii) Lapplication : R
n
R est continue.
(iv) Lapplication h : R
n
R est continue.
La fonction permet de caractriser les solutions du problme minimax ni ; son va-
luation fournit une direction de recherche h(x) qui est une direction de descente pour f en
x. Il est ainsi possible de construire un algorithme de descente, gnralisant aux problmes
minimax nis la mthode de plus profonde descente avec critre dArmo. Cet algorithme,
dit algorithme PPP (pour Pshenichnyi, Pironneau, Polak, voir [114, Algorithme 2.4.1]),
se prsente de la faon suivante :
Algorithme 1 Problmes minimax nis (Algorithme PPP).
Fixer les paramtres ]0, 1], > 0.
Initialiser le compteur k 0 et xer le point initial x
0
R
n
.
Etape 1. Evaluer f
j
(x
k
) et f
j
(x
k
) pour tout j
p
= 1, . . . , p.
En dduire f(x
k
).
Etape 2. Evaluer la fonction doptimalit
k
(x
k
) en rsolvant le sous-problme qua-
dratique convexe (2.58). En dduire la direction de recherche h
k
h(x
k
) avec
(2.61).
Etape 3. Si
k
= 0, arrt de lalgorithme.
Sinon, dterminer une taille de pas t
k
dans la direction h
k
ralisant au moins la
fraction de la dcroissance de f attendue, autrement dit telle que
f(x
k
+t
k
h
k
) f(x
k
) t
k
k
. (2.62)
Etape 4. Mettre jour x
k+1
x
k
+t
k
h
k
.
Incrmenter le compteur k k + 1. Retourner ltape 1.
On montre que les points daccumulation x
lunique
solution du problme minimax.
Si on suppose de plus les fonctions f
j
deux fois continment direntiables, et quil
existe m > 0, M > 0, m M tels que, pour tout j
p
, pour tout x, h R
n
m|h|
2
_
h,
2
xx
f(x)h
_
M|h|
2
; (2.63)
si on suppose enn que [m, M], et que, ltape 3 de lalgorithme 1, la taille de
pas est dtermine par backtracking de paramtre ]0, 1[, cest--dire
t
k
arg max
lN
_
l
: f(x
k
+
l
h
k
) f(x
k
)
l
k
_
, (2.64)
52 Chapitre 2. Optimisation non lisse
alors la convergence de la suite des itrs est R-linaire : il existe une constante
C > 0 telle que, pour tout k N
|x
k
x
| C
__
1
m
M
_
k
. (2.65)
Notons que sous une hypothse assez forte portant sur x
|
|x
k
x
|
2
C . (2.66)
Signalons enn que la mthode de Newton a galement t adapte aux problmes
minimax. La fonction doptimalit propose dans [115, 114] est cependant beaucoup
plus dicile valuer. Elle sexprime sous forme duale par
(x) = min
p
_
q
j=1
j
_
f(x) f
j
(x)
_
+
1
2
_ q
j=1
j
f
j
(x),
_
q
j=1
2
f
j
(x)
_
1
q
j=1
j
f
j
(x)
_
_
, (2.67)
qui nest plus du tout un programme quadratique convexe.
Lalgorithme 1 a t appliqu dans le cadre des problmes de commande un critre
temporel (chapitre 5). Il a galement t utilis pour rsoudre, sous certaines hypothses,
des problme de stabilisation de systmes (chapitre 3).
Minimax semi-inni : fonction doptimalit et de descente
Les problmes minimax semi-innis appartiennent au domaine plus gnral de lOpti-
misation appel programmation semi-innie. On appelle problme semi-inni (linaire ou
non linaire) tout problme doptimisation sous contraintes, de la forme
min
zR
q
g(z)
tel que h(z, y) 0 pour tout y Y
(2.68)
o Y contient une innit dlments. On retrouve le problme minimax en posant z = [
t
x
]
o t est une variable relle auxiliaire, g(z) = t, Y = 1 Y
1
p Y
p
, et
h(z, y) =
y
1
_
_
x,
_
_
y
2
.
.
.
y
m
y
1
_
_
_
_
t.
La rsolution numrique des problmes semi-innis est aborde en dtails dans [67],
nous en donnons ici un bref aperu; les direntes mthodes procdent toutes par rsolu-
tions successives de sous problmes issus de (2.68), pour lesquels les contraintes sont en
nombre ni. Les approches varient dans la faon de rduire lensemble Y un nombre ni
dlments :
2.3. Algorithmes pour loptimisation non lisse 53
Les mthodes dchange sappuient sur une suite de parties nies Y
k
de Y , qui sont
mises jour chaque itration par ajout et suppression dlments.
Les mthodes de discrtisation (ou gridding) utilisent des discrtisations de plus en
plus nes de Y .
Enn, les mthodes de rduction locale exploitent les maxima (locaux et supposs
en nombre ni) de la fonction y h(z
k
, y) (z
k
dsignant litr courant) an de
formuler un sous-problme avec un nombre ni de contraintes.
Un algorithme pour le problme minimax semi-inni bas sur une technique de dis-
crtisation des ensembles Y
j
est propos dans [113, 114]. Il sappuie sur la thorie des
approximations consistantes, prsentes dans [114], et, pour chaque sous-problme mi-
nimax ni gnr, eectue un pas de descente analogue celui de lalgorithme 1. Nous
prfrons dvelopper ici la mthode introduite dans [6] pour la synthse H
et aisment
gnralisable aux problmes minimax semi-innis (algorithme 2 ci-aprs). Son application
au problme de synthse H
multibande [10]
et multidisque [9]. Enn, nous proposerons au chapitre 6 dappliquer une mthode de
rduction locale pour la rsolution du problme de synthse H
, chaque sous-problme
tant rsolu par programmation quadratique successive (SQP).
54 Chapitre 2. Optimisation non lisse
Algorithme 2 Problmes minimax semi-innis (Noll et Apkarian).
Fixer les paramtres ]0, 1], ]0, 1[, > 0.
Initialiser le compteur k 0 et xer le point initial x
0
R
n
.
Etape 1. Dterminer pour tout j
p
= 1, . . . , p un ensemble ni Y
j,k
R
m
j
contenant Y
j
(x
k
).
Etape 2. Evaluer
j
(x
k
, y
j
) et
x
j
(x
k
, y
j
) pour tout j
p
et pour tout y
j
Y
j,k
.
En dduire f(x
k
).
Etape 3. Evaluer la fonction doptimalit
k
(x
k
) en rsolvant le sous-problme
(x
k
) = min
hR
n
max
j
p
max
y
j
Y
j,k
_
j
(x
k
, y
j
) f(x
k
) +
x
j
(x
k
, y
j
), h) +
1
2
|h|
2
_
.
(2.69)
En dduire la direction de recherche h
k
h(x
k
) avec
h(x
k
) = arg min
hR
n
max
j
p
max
y
j
Y
j,k
_
j
(x
k
, y
j
) +
x
j
(x
k
, y
j
), h) +
1
2
|h|
2
_
. (2.70)
Etape 4. Si
k
= 0, arrt de lalgorithme.
Sinon, dterminer une taille de pas t
k
dans la direction h
k
telle que la dcrois-
sance du modle max ni vrie la condition de type Armo
k
max
j
p
max
y
j
Y
j,k
j
(x
k
+t
k
h
k
, y
j
) f(x
k
) t
k
k
. (2.71)
Calculer la dcroissance eective
k
f(x
k
+t
k
h
k
, y
j
) f(x
k
) . (2.72)
Etape 5. Si
k
k
, mettre jour x
k+1
x
k
+t
k
h
k
, incrmenter le compteur k k+1,
et retourner ltape 1.
Sinon, pour tout j
p
, mettre jour Y
j,k
par Y
j,k+1
ni tel que Y
j,k
Y
j,k+1
Y
j
, poser x
k+1
x
k
, incrmenter le compteur k k + 1, et retourner ltape
2.
Deuxime partie
Algorithmes dvelopps et
applications
55
Chapitre 3
Techniques non lisses pour la
stabilisation des systmes linaires
Nous nous intressons dans ce premier dveloppement au problme de la stabilisation
en boucle ferme des systmes LTI (voir section 1.2.2). Si, dans lordre chronologique, nos
premiers travaux ont port sur lapport de lOptimisation non lisse pour la synthse H
shifte |.|
,a
(voir [8, section 7.1], labscisse pseudo-spectrale
et la distance
linstabilit .
X (la multiplicit algbrique de )
3.1. Introduction and notations 59
Nonsmooth techniques for stabilizing
linear systems
V. Bompart, P. Apkarian and D. Noll
Article publi dans les actes de American Control Conference,
New York City, 2007.
Abstract
We discuss closed-loop stabilization of linear time-invariant dynamical systems, a problem
which frequently arises in controller synthesis, either as a stand-alone task, or to initialize
algorithms for H
C. If
a negative value (A + BK
l
C) < 0 is obtained, we can stop the procedure at this
iterate, and the question of optimality is irrelevant.
On the other hand, if iterates are not stabilizing, (A + BK
l
C) 0 for all l, then
we need to check whether the limit point A+BK
is a
so-called dead point, that is, a limit point which is not locally optimal, then we
should not do a restart, but use nonsmooth decent techniques and keep optimizing
until a local minimum is found.
Several strategies for addressing the nonsmoothness in (3.4) have been put forward: Burke,
Lewis and Overton have extended the idea of gradient bundle methods (see [69] for the
convex case and [80] for the Lipschitz continuous case) to certain non-Lipschitz functions,
for which the gradient is dened, continuous and computable almost everywhere. The
resulting algorithm, called gradient sampling algorithm, is presented in [35] (in the sta-
bilization context) and analyzed in [34, 39] with convergence results. The outcome of
this research is a package HIFOO, which will be included in our tests, see Section 3.6.
The search direction in HIFOO depends on randomly sampled points which gives the
algorithm a nondeterministic aspect. In contrast, Apkarian and Noll propose a composite
approach in [6], combining a direct search method and a nonsmooth strategy for descent
and stopping test. By construction, direct search algorithms require a lot of functions
evaluations, which is demanding if the number of controller decision variable is large.
In response, the present paper proposes an algorithm which uses exclusively nonsmooth
descent steps, allowing to avoid the drawbacks of both approaches.
3.3 Subgradients of the spectral abscissa
3.3.1 Subgradients in state-space
In this section, we suppose that all active eigenvalues of the closed-loop state matrix
A
c
(K) are semisimple, with r = [(K)[ < q distinct active eigenvalues (s = [1(/)[ < n
if counted with their multiplicity). We have /(K) =
1
(A
c
(K)) , . . . ,
r
(A
c
(K)) =
1
(A
c
(K)) , . . . ,
s
(A
c
(K)). The Jordan form J(K) of A
c
(K) is then partly diagonal,
more precisely :
J(K) = V (K)
1
A
c
(K)V (K)
=
_
_
D(K)
J
r+1
(K)
.
.
.
J
q
(K)
_
_
3.3. Subgradients of the spectral abscissa 63
D(K) = diag [
1
(A
c
(K)) , . . . ,
s
(A
c
(K))] is the diagonal part of active eigenval-
ues,
J
j
(K), for r < j q are n
j
n
j
block-diagonal matrices of Jordan blocks, such as
J
j
(K) =
_
_
J
j,1
(K)
.
.
.
J
j,p
j
(K)
_
_
, with
J
j,k
=
_
j
1
.
.
.
.
.
.
.
.
.
1
j
_
_
V (K) = [v
1
(A
c
(K)) , . . . , v
n
(A
c
(K))], where the rst s columns are right eigen-
vectors of A
c
(K) associated with the active eigenvalues (the other columns are
generalized right eigenvectors),
V (K)
1
=
_
_
u
1
(A
c
(K))
H
.
.
.
u
n
(A
c
(K))
H
_
_
,where the rst s rows are left eigenvectors of A
c
(K)
associated with the active eigenvalues (the other rows are generalized left eigenvec-
tors).
We dene U(K) = V (K)
H
, and for 1 j r, V
j
(K) (resp. U
j
(K)) the nn
j
block from
V (K) (resp. from U(K)) composed of the right eigenvectors (resp. of the transconjugate
of the left eigenvectors) associated with
j
.
The function A
c
is Clarke regular at K, as a composition of the ane mapping
A
c
with , which is locally Lipschitz continuous at K. Let
j
/(A
c
(K)) be an active
eigenvalue of A
c
(K), such that
j
=
i
(A
c
(K)) = =
i+n
j
(A
c
(K)). Then the real
matrix
j
(K) = Re
_
B
T
U
j
Y
j
V
H
j
C
T
_
=
_
Re
_
CV
j
Y
j
U
H
j
B
__
T
is a Clarke subgradient of the composite function A
c
at K, where Y
j
_ 0 and Tr(Y
j
) = 1.
Moreover, the whole subdierential ( A
c
)(K) is described by matrices of the form
Y
(K) =
j(A
c
(K))
_
Re
_
CV
j
Y
j
U
H
j
B
__
T
(3.5)
where Y
j
_ 0 and
j(A
c
(K))
Tr(Y
j
) = 1.
Notice that the complex conjugate paired active eigenvalues
j
and
k
=
j
(k ,= j)
share the same closed-loop spectral abscissa subgradient
j
=
k
. The subdierential is
then kept unchanged if the active set only contains the active eigenvalues whose imaginary
part is nonnegative: /(M) =
j
(M) [ Re (
j
(M)) = (M) and Im(
j
(M)) 0.
64 Chapitre 3. Techniques non lisses pour la stabilisation des systmes linaires
Remark 1 If the open-loop plant is not controllable, then every uncontrollable mode
l
(A) persists in the closed-loop: for al l controllers K, there exists j such that
l
(A) =
j
(A
c
(K)). Moreover, if this eigenvalue is semisimple and active for A
c
, the asso-
ciated subgradients are null, because U
H
j
B = 0. The case of unobservable modes leads
to the same conclusion, because CV
j
= 0. In this way, whenever an uncontrollable or
unobservable open-loop mode
l
(A) becomes active for the closed-loop spectral abscissa,
we get 0 (A
c
)(K) and then we have local optimality of K. Moreover, the optimality
is global because Re
l
(A) is a lower bound for A
c
.
3.3.2 Subgradients and dynamic controllers
The problem of stabilizing the plant P by dynamic output feedback reduces formally to
the static case, with the substitutions (3.3). Nevertheless, the dynamic case is slightly
more tricky, because the matrices A
K
, B
K
, C
K
and D
K
have to dene a minimal con-
troller realization, both at the initialization stage and at every subsequent iteration of the
algorithm.
As an illustration, if the n
K
-th order (nonminimal) realization of the initial controller
is chosen with B
K
= 0 and C
K
= 0 (neither observable nor controllable) and with
(A
K
) < (A + BD
K
C), it is straightforward to show that the resulting subgradients of
the closed-loop spectral abscissa are convex linear combinations of matrices of the form
j
(K) =
_
_
0 0
0 Re
_
CV
j
Y
j
U
H
j
B
_
T
_
_
where V
j
(resp. U
H
j
) are blocks of right (resp. left) eigenvectors associated with the active
eigenvalues of A + BD
K
C, and Y
j
_ 0, Tr(Y
j
) = 1. As the successive search directions
have the same structure, see (3.13), this results in unchanged A
K
, B
K
, C
K
blocks among
the new iterates. Put dierently, they all represent static controllers.
In order to initialize the descent algorithm with a minimal n
K
-th order controller, and
to maintain this minimality for all subsequent iterates, we use an explicit parametrization
of minimal, stable and balanced systems [107, 43]. With this canonical structure, the
number of free parameters for a n
K
-th order controller with p inputs and m outputs is
n
K
(m +p) +mp.
3.3.3 Subgradients with structured controllers
Formulation (3.4) is general enough to handle state-space structured controllers, such as
decentralized or PID controllers, minimal realizations (see 3.3.2), and others. Let K :
R
k
R
mp
be a smooth parametrization of an open subset / R
mp
, containing state-
space realizations of a family of controllers of a given structure. Then the stabilization
problem can be written as
min
R
k
(A
c
K ()) .
3.4. Descent step and optimality function 65
The Clarke subgradients R
k
of the composite function A
c
K are derived from
(3.5) with the chain rule (see [44, section 2.3])
() = J
vec(K)
()
T
vec ((K ()))
where J
vec(K)
() R
mpk
is the Jacobian matrix of vec(K) : R
k
vec(K()) R
mp
.
3.4 Descent step and optimality function
In order to derive a descent step from the subdierential ( A
c
)(K), we follow a rst-
order step generation mechanism for minimax problems introduced by Polak in [113, 114].
It was described and applied in the semi-innite context of the H
j
0
j
j
= 1
max
Y
j
_ 0
Tr(Y
j
) = 1
_
q
j=1
j
Re (
j
(A
c
(K))) (A
c
(K))
1
2
_
_
_
_
_
_
q
j=1
j
(K)
_
_
_
_
_
_
2 _
(3.7)
and we get the minimizer H(K) of the primal formulation (3.6) from the solution
_
_
j
(K)
_
1jq
,
_
Y
j
(K)
_
1jq
_
of the dual expression (3.7) in the explicit form
H(K) =
1
j=1
j
(K) Re
_
CV
j
Y
j
(K)U
H
j
B
_
T
. (3.8)
We recall from [113] the basic properties of and H :
1. (K) 0 for all K /, and (K) = 0 if and only if 0 ( A
c
)(K).
66 Chapitre 3. Techniques non lisses pour la stabilisation des systmes linaires
2. If 0 , ( A
c
)(K), then H(K) is a descent direction for the closed-loop spectral
abscissa at K. More precisely for all K:
( A
c
)
t
(K, H(K)) (K)
1
2
|H(K)|
2
(K).
3. The function is continuous.
4. The operator K H(K) is continuous.
Therefore direction H(K) will be chosen as a search direction in a descent-type algorithm
and combined with a line search. The continuity of H () ensures that every accumulation
point
K in the sequence of iterates satises the necessary optimality condition 0 (
A
c
)(
K) (see [8]). It is not clear whether continuity in this sense is still satised when
the hypothesis of semi-simplicity of the eigenvalues is dropped. Notice that even for
semisimple eigenvalues, continuity fails for the steepest descent direction, dened as the
solution of the program
min
|H|1
( A
c
)
t
(K, H) = min
|H|1
max
j(A
c
(K))
max
Y
j
_ 0
Tr(Y
j
) = 1
j
(K), H)) .
This is why steepest descent steps for nonsmooth functions may fail to converge. In our
case this justies the recourse to the quadratic, rst-order model as a descent function.
Moreover, properties 1) and 3) suggest a stopping test based on the value of (K), because
as soon as (K)
j
0
j
j
= 1
_
_(A
c
(K)) +
n
j=1
j
Re (
j
(A
c
(K)))
1
2
_
_
_
_
_
_
n
j=1
j
(K)
_
_
_
_
_
_
2
_
_ (3.9)
3.5. Nonsmooth descent algorithms 67
where
j
(K) = Re
_
Cv
j
u
H
j
B
_
T
, with v
j
a right eigenvector associated with
j
(A
c
(K)),
and u
H
j
the corresponding left eigenvector (such that u
H
j
v
j
= 1).
To go one step further, we reduce the dimension of the search space. There are n
scalar variables
j
in (3.9), n the order of the open-loop plant, augmented by n
K
, the
order of the controller, in the case of a dynamic controller. For a given ratio [0, 1],
we dene the following enriched set of active eigenvalues
/
(K)
_
j
(A
c
(K)) : (A
c
(K)) Re (
j
(A
c
(K)))
_
(A
c
(K)) min
1in
Re (
i
(A
c
(K)))
_
_
(3.10)
where
(K) = j N [ 1 j n and
j
(A
c
(K)) /
(K) /
1
(K) = spec (A
c
(K)) for all [0, 1]. Hence, we have
locally
(A
c
(K)) = max
j
(K)
Re (
j
(A
c
(K))) . (3.11)
By applying the descent function to this local formulation, we nally get the quadratic
program
(K) = max
j
0
j
j
= 1
_
_(A
c
(K)) +
[
(K)[
j=1
j
Re (
j
(A
c
(K)))
1
2
_
_
_
_
_
_
[
(K)[
j=1
j
(K)
_
_
_
_
_
_
2
_
_.
(3.12)
The descent direction H(K) is obtained from the maximizer
_
j
(K)
_
1j[
(K)[
as
H(K) =
1
(K)[
j=1
j
(K) Re
_
Cv
j
u
H
j
B
_
T
. (3.13)
Notice that for = 0 the QP in (3.12) reduces to the steepest descent nding problem
min
j
0
j
j
= 1
_
_
_
_
_
_
[(K)[
j=1
j
(K)
_
_
_
_
_
_
= min
(A
c
)(K)
||
while = 1 reproduces (3.9). The parameter oers some additional numerical exibility,
and allows the weaker asumption that only eigenvalues in /
,
K
> 0, ]0, 1[. Set the counter
l 0.
1. Compute (A
c
(K
0
)), the enriched active index set
(K
0
) and the corresponding
subgradients
j
(K
0
).
2. Solve (3.12) for K = K
l
and get the search direction H(K
l
) from (3.13).
If (K
l
)
then stop.
3. Find a step length t
l
> 0 satisfying the Armo line search condition
(A
c
(K
l
+t
l
H(K
l
))) (A
c
(K
l
)) +t
l
(K
l
)
4. Set K
l+1
K
l
+t
l
H(K
l
).
Compute (A
c
(K
l+1
)), the extended active index set
(K
l+1
) and the correspond-
ing subgradients
j
(K
l+1
).
5. If (A
c
(K
l
)) (A
c
(K
l+1
))
(1 + (A
c
(K
l
))) and |K
l
K
l+1
|
K
(1 +|K
l
|)
then stop.
Otherwise set l l + 1 and go back to 2.
In case of a multiple but semisimple eigenvalue, the Clarke subdierential still exists
(see 3.3.1), but is underestimated in the algorithm because we made the hypothesis
that active eigenvalues were simple in order to reduce the SDP to a QP. More pre-
cisely in that case
( A
c
)(K
l
) = co
_
Re
_
CV
j
Y
j
U
H
j
B
_
T
: j (K
l
), Y
j
_ 0 and Tr(Y
j
) = 1
_
co
_
Re
_
Cv
j
u
H
j
B
_
T
: j (K
l
)
_
In case of a defective eigenvalue, the Clarke subdierential no longer exists.
3.5.2 Variant II (second-order type)
In the optimality function (3.6) the parameter acts as an estimate of the average of the
curvatures of Re
j
A
c
. If second order information is available, it may therefore be
attractive to replace the scalar in (3.6) by Hessian matrices. Polak [114] extends the
Newton method to min-max problems, but the corresponding dual expression for (K
l
)
does no longer reduce to a quadratic program like (3.9). We propose a dierent approach
here which is based on a heuristic argument. The quadratic term of
is weighted by a
matrix Q
l
, which is updated at each step using a second-order model of A
c
. We suggest
3.6. Numerical examples 69
a quasi-Newton method based on the new optimality function
at iteration l 1:
(K
l
) min
H|
max
j
(K
l
)
max
Y
j
_ 0
Tr(Y
j
) = 1
_
Re (
j
(A
c
(K
l
))) (A
c
(K
l
)) +
j
(K), H))
+
1
2
vec(H)
T
Q
l
vec(H)
_
. (3.14)
The matrix Q
l
is a positive-denite, symmetric mp mp matrix, updated with the sym-
metric rank-two BFGS update
Q
l+1
Q
l
+
y
l
y
T
l
y
T
l
s
l
Q
l
s
l
s
T
l
Q
l
s
T
l
Q
l
s
l
(3.15)
where s
l
= vec(K
l+1
K
l
), and y
l
= vec(g
l+1
g
l
), with g
l
the subgradient of minimal
norm in ( A
c
)(K
l
), by analogy with the gradient for smooth functions.
The dual form of (3.14) is then the convex QP
(K
l
) = max
j
0
j
j
= 1
_
_
(A
c
(K)) +
[
(K
l
)[
j=1
j
Re (
j
(A
c
(K
l
)))
1
2
vec
_
_
[
(K
l
)[
j=1
j
(K
l
)
_
_
T
Q
1
l
vec
_
_
[
(K
l
)[
j=1
j
(K
l
)
_
_
_
_
(3.16)
and the vectorized descent direction derived from the optimal
_
j
(K
l
)
_
convex coecients
is:
vec
_
H(K
l
)
_
= Q
1
l
[
(K
l
)[
j=1
j
(K
l
) vec (
j
(K
l
)) . (3.17)
The resulting algorithm is given below (Algorithm 2). Notice that the quadratic
subproblem (3.16) invokes the inverse of the BFGS update Q
l
. Inversion can be avoided
by directly updating Q
1
l
at step 5, with the update formula
Q
1
l+1
= Q
1
l
+
(s
l
Q
1
l
y
l
)s
T
l
+s
l
(s
l
Q
1
l
y
l
)
T
s
T
l
y
s
y
T
l
(s
l
Q
1
l
y
l
)s
l
s
T
l
(s
T
l
y
l
)
2
(3.18)
=
_
I
s
l
y
T
l
s
T
l
y
l
_
Q
1
l
_
I
s
l
y
T
l
s
T
l
y
l
_
T
+
s
l
s
T
l
s
T
l
y
l
3.6 Numerical examples
In this section we test our nonsmooth algorithm on a variety of stabilization problems
from the literature. We use variants I and II of the descent algorithm in the following
applications, with the default parameters values (unless other values are specied):
= 0.8, = 0.1,
= 10
5
,
= 10
6
,
K
= 10
6
and = 0.9
70 Chapitre 3. Techniques non lisses pour la stabilisation des systmes linaires
Algorithm 2 Variant II descent type algorithm for the closed-loop spectral abscissa.
Set the parameters [0, 1], Q
0
~ 0, K
0
/,
,
K
> 0, ]0, 1[.
Set the counter l 0.
1. Compute (A
c
(K
0
)), the enriched active index set
(K
0
), the corresponding sub-
gradients
j
(K
0
), and the subgradient of minimal norm g
0
in ( A
c
)(K
0
).
2. Solve (3.16) for K = K
l
and get the search direction
H(K
l
) from (3.17).
If
(K
l
)
then stop.
3. Find a step length t
l
> 0 satisfying the Armo line search condition
_
A
c
_
K
l
+t
l
H(K
l
)
__
(A
c
(K
l
)) +t
l
(K
l
)
(try t
l
= 1 rst)
4. Set K
l+1
K
l
+t
l
H(K
l
).
Compute (A
c
(K
l+1
)), the enriched active index set
(K
l+1
), the corresponding
subgradients
j
(K
l+1
), and the subgradient of minimal norm g
l+1
in (A
c
)(K
l+1
).
5. Compute Q
1
l+1
with the BFGS update formula (3.18).
6. If (A
c
(K
l
)) (A
c
(K
l+1
))
(1 + (A
c
(K
l
))) and |K
l
K
l+1
|
K
(1 +|K
l
|)
then stop.
Otherwise set l l + 1 and go back to 2.
We compare the performance of our method with that of other minimization algorithms,
namely multi-directional search (MDS), two algorithms implemented in the Matlab Op-
timization Toolbox, and the Matlab package HIFOO [32].
Multidirectional search (MDS) belongs to the family of direct search algorithms [136].
This derivative-free method explores the controller space via successive geometric trans-
formations of a simplex (contraction, expansion and reection). Its convergence to a local
minimum is established for C
1
-functions, but nonsmoothness can make it converge to a
nondierentiable and nonoptimal point [137], called a dead point. In [6] we have shown
how to combine MDS with nonsmooth descent steps in order to avoid this diculty and
guarantee convergence. Here we use MDS with two stopping criteria: the rst is based on
the relative size of the simplex:
max
i
|v
i
v
0
|
max(1,|v
0
|)
<
1
where v
i
are the vertices of the simplex,
and v
0
is the vertex of smallest function value of the objective f. The second stopping test
quanties the function value variations over the vertices:
max
i
f(v
i
)f(v
0
)
max(1,[f(v
0
)[)
<
2
. Experiments
were performed with
1
=
2
= 10
6
, and two simplex shapes (MDS 1: right-angled, MDS
2: regular).
Secondly, two Matlab Optimization Toolbox functions have been tested, one designed
for general constrained optimization (fmincon), the second suited for min-max problems
(fminimax). Both functions are essentially based on SQP algorithm with BFGS, line
search and an exact merit function, see [96]. The nite constrained cast of (3.4) passed
3.6. Numerical examples 71
to fmincon is
min
t R
K /
t subject to Re (
i
(A +BKC)) t for all 1 i n
Equivalently, the min-max formulation used for fminimax is
min
K|
max
1in
Re (
i
(A +BKC))
Clearly here we make the implicit assumption that all the eigenvalues are simple in order
to work with smooth constraints or maximum of smooth functions, which is required by
SQP. Our testing will show whether the toolbox functions run into diculties in those
cases where this hypothesis is violated.
Finally, we use the Matlab package HIFOO (version 1.0). As discussed in [32], the
underlying algorithm consists in a succession of (at most) three optimization phases:
BFGS, local bundle (LB) and gradient sampling (GS). By virtue of its probabilistic nature,
HIFOO does not return the same nal controller even when started from the same initial
guess. We noticed that for the same reason the number of evaluations of the spectral
abscissa could greatly change from one run to the other, even when all the settings are
unchanged. This probabilistic feature of HIFOO is inherent to the multiple starting point
strategy (by default, 3 random controllers, in addition to the user input), and to the
gradient sampling algorithm itself. The rst stabilizing controller is obtained with the
parameter +, whereas the nal one is with s. The iteration number of each stage is
given as BFGS+LB+GS.
As we have indicated before, nal controllers are not necessarily local minimizers of
A
c
. The optimality is less import in practice than in design problems with performance
criteria. However, we discuss the status of every termination case in terms of active
eigenvalues multiplicity, and of associated eigenspaces dimension.
3.6.1 Academic test
We begin with an academic 2nd order SISO plant from the output feedback literature [89],
cited in [85] (example NN2), and representing a damped linear oscillator. The open-loop
plant is marginally unstable, with two pure imaginary modes (
1
= i and
2
= i). The
closed-loop state matrix is
A
c
(K) = A +BKC =
_
0 1
1 K
_
For K R [2, 2] (resp. K ]2, 2[), A
c
(K) is diagonable with two real eigenvalues
=
K
2
K
2
4 (resp. two complex conjugate eigenvalues =
K
2
i
4 K
2
), and
thus A
c
is Clarke regular. This is not the case at K = 2 (resp. K = 2), where the
eigenvalues of A
c
(K) coalesce into the double root = 1 (resp. = 1). For these two
controller values, A
c
looses Lipschitz continuity, and the Clarke subdierential is not
dened.
72 Chapitre 3. Techniques non lisses pour la stabilisation des systmes linaires
Nonsmooth optimization algorithm (variant I)
We have A
c
(K) =
K
2
+
_
[K
2
4]
+
. The global minimum is attained at K = 2, for
which the based optimality certicate is unfortunately useless. Yet for K / 2, 2,
the stabilization algorithm provides a descent direction and allows to compute a descent
step. We have tried various initial controller values K
0
, taken on dierent pieces of the
spectral abscissa curve.
For every given K
0
, the algorithm converges to the global minimum. As soon as
the relative step length and the relative spectral abscissa decrease are small enough, the
algorithm stops.
K
0
-5 0 2 5
rst < 0 2.09 10
1
2.50 10
1
2.50 10
1
5.73 10
1
(iter.) (0) (1) (1) (3)
nal 1.00 1.00 1.00 1.00
(iter.) (30) (17) (17) (17)
fun. evaluations 117 71 72 70
nal 1.25 10
1
1.25 10
1
1.25 10
1
1.25 10
1
nal extended set size 1 1 1 1
nal active set size 1 1 1 1
Table 3.1: Damped linear oscillator stabilization, nonsmooth algorithm variant I, various
initial controllers K
0
.
Surprisingly, even from K
0
= 2, our nonsmooth stabilization algorithm converges to
the global minimum, even though Clarke subgradients are not well dened at the rst
iteration. Figure 3.1 clearly shows the nonsmooth and even non-Lipschitz behavior of the
closed-loop eigenvalues for K = 2.
3.6. Numerical examples 73
5 0 5
5
4
3
2
1
0
1
2
3
4
5
K
A
c
(
K
)
closedloop eigenvalues
5 0 5
1
0.8
0.6
0.4
0.2
0
0.2
0.4
0.6
0.8
1
Re(
i
A
c
(K))
I
m
(
A
c
(
K
)
)
closedloop eigenvalues locus
Figure 3.1: Closed-loop eigenvalues variation around K = 0.
Remark 2 For K 2, 2, the double eigenvalue of A
c
(K) is defective but nonderoga-
tory. Thus, the closed-loop spectral abscissa is subdierentially regular, and the set of
regular subgradients of A
c
can be obtained explicitly from the Jordan decomposition,
as shown in [41]. We get
( A
c
) (2) =
_
,
1
2
_
and
( A
c
) (2) =
_
1
2
, +
_
. Even
though the regular subdierential could be used for characterizing the sharp local minimiz-
ers of A
c
(see [33]), the detection and the computation of nontrivial Jordan blocks
associated with active eigenvalues in A
c
are numerical chal lenges. Except for simplistic
examples with exact and integer data, the variational informations for the defective and
nonderogatory case are practically out of reach.
Other algorithms
In table 3.2, we give the results obtained with MDS, Matlab Optimization Toolbox, and
HIFOO with the initialization K
0
= 0.
algorithm MDS 1 fmincon fminimax HIFOO
rst < 0 1.00 - 0.25 0.25
(iter.) (1) (-) (1) (1+0+0)
nal 1.00 0 9.95 10
1
1.00
(iter.) (21) (198) (5) (8+2+5)
fun. evaluations 44 201 38 308
Table 3.2: Damped linear oscillator stabilization, other algorithms, K
0
= 0.
74 Chapitre 3. Techniques non lisses pour la stabilisation des systmes linaires
We observe that fmincon fails to converge after 200 function evaluations, and returns
K = 1.84 10
14
. In a second testing, we try to initialize the algorithms with the
problematic controller value K
0
= 2 (see table 3.3).
algorithm MDS 1 fmincon fminimax HIFOO
rst < 0 1.00 - - 1.49 10
8
(iter.) (2) (-) (-) (1)
nal 1.00 1.00 1.00 1.00
(iter.) (21) (100) (100) (76+2+5)
fun. evaluations 44 201 201 1212
Table 3.3: Damped linear oscillator stabilization, other algorithms, K
0
= 2.
HIFOO nds the global minimum at the BFGS stage, tries in vain to improve it
with local bundle and gradient sampling iterations, but doesnt give any local optimality
certicate at the end (local optimality measure is 1.5 10
1
).
fmincon and fminimax got stuck at K = 2, even after 200 function evaluations. MDS
converged in both cases to the minimizer K = 2, with fewer function evaluations than
the nonsmooth algorithm: the very small dimension of the search space is favorable to
this direct search technique. In contrast, HIFOO needs many more spectral abscissa calls
in order to complete the optimization, without any optimality certicate, as above.
Remark 3 In the one-dimension case here, right-angled and regular simplices are inter-
vals, the shape of the simplex has no inuence on the MDS algorithm.
3.6.2 Transport airplane
The linearized plant of 9th-order describes the longitudinal motion of a transport airplane
at given ight conditions (system AC8 from [83], see also [56]). The open loop is unstable,
with spectral abscissa = 1.22 10
2
, attained by a simple, real mode: the composite
function A
c
is then dierentiable at K
0
= D
K
0
= 0 (all the other modes are stable,
with real parts between 5.00 10
1
and 3.18 10
2
).
Nonsmooth optimization algorithm (variant I)
In table 3.4, we show the inuence of the ratio (see (3.10)) on the nonsmooth algorithm
(variant I here). Notice that the rst case ( = 0) is steepest descent.
In each of the rst two cases, the nal value of is not reliable for optimality, because
A
c
looses Clarke regularity. This is suggested by the graphical representation of
A
c
around the nal controller, along a chosen direction (see gure 3.2 for the 0.1 %
3.6. Numerical examples 75
case # 1 2 3 4
ratio 0 % 0.1 % 1 % 2 %
rst < 0 7.07 10
2
1.07 10
2
1.18 10
2
1.05 10
2
(iter.) (1) (1) (1) (1)
nal 1.15 10
1
1.43 10
1
1.30 10
1
4.45 10
1
(iter.) (20) (27) (16) (9)
fun. evaluations 96 121 63 43
nal 1.54 10
2
1.30 10
1
3.10 10
1
5.60 10
17
nal extended set size 1 2 4 4
nal active set size 1 1 1 2
Table 3.4: Transport airplane stabilization, nonsmooth algorithm variant I, various active
set extensions.
enlargement case), and further conrmed by inspection of closed-loop modes: two complex
conjugate eigenvalues with small imaginary parts are active (
1
= 1.4310
1
+1.1510
4
i
and
2
=
1
) and they are very near from coalescence into a defective real eigenvalue.
0.05 0 0.05
0.15
0.14
0.13
0.12
0.11
0.1
0.09
K
A
c
(
K
+
K
H
)
closedloop spectral abscissa
0.25 0.2 0.15 0.1
0.1
0.08
0.06
0.04
0.02
0
0.02
0.04
0.06
0.08
0.1
Re(
i
A
c
(K+K H))
I
m
(
A
c
(
K
+
K
H
)
)
closedloop eigenvalues locus
(3 largest real parts eigenvalues)
Figure 3.2: Closed-loop eigenvalues variation around nal K along H = [1, 0, 0, 0, 0]
(0.1 % enlargement).
The fourth case is more favorable. The enlargement of /
1
), the other one is real (
3
= 4.45 10
1
). We notice that these three
modes come directly from the plant, and are not controllable. This is conrmed by the
associated closed-loop subgradients,
1
=
2
0 and
3
0, leading to a singleton
subdierential ( A
c
)(K
9
) = 0. The nal point is then smooth, in spite of multiple
active eigenvalues, and the uncontrollability of the active modes gives a global optimality
certicate (see Remark 1, section 3.3.1). As an illustration, see gure 3.3.
0.05 0 0.05
0.445
0.44
0.435
0.43
0.425
0.42
0.415
0.41
0.405
0.4
0.395
K
A
c
(
K
+
K
H
)
closedloop spectral abscissa
0.55 0.5 0.45 0.4
0.25
0.2
0.15
0.1
0.05
0
0.05
0.1
0.15
0.2
0.25
Re(
i
A
c
(K+K H))
I
m
(
A
c
(
K
+
K
H
)
)
closedloop eigenvalues locus
(6 largest real parts eigenvalues)
3 uncontrollable modes
Figure 3.3: Closed-loop eigenvalues variation around nal K along H = [1, 0, 0, 0, 0]
(2 % enlargement).
Other algorithms
Here the algorithms were initialized with K
0
= 0, and the multidirectional search (MDS)
algorithm was applied with two dierent shapes of simplices in the controller space.
algorithm MDS 1 MDS 2 fmincon fminimax HIFOO
rst < 0 1.09 10
1
1.04 10
2
4.45 10
1
1.13 10
2
2.62 10
2
(iter.) (3) (7) (13) (1) (1+0+0)
nal 4.21 10
1
1.57 10
1
4.45 10
1
4.45 10
1
2.31 10
1
(iter.) (36) (37) (13) (25) (396+3+2)
fun. eval. 366 376 32 131 1140
Table 3.5: Transport airplane stabilization, other algorithms.
MDS becomes very greedy in function evaluations, as the controller size increases in
this example. Moreover, the global minimum is not found, either because of an unsuc-
cessful local minimum, or a dead point.
3.6. Numerical examples 77
Both Matlab functions return the global minimum, after very few iterations for fmincon.
HIFOO terminates far from the global minimum, because slow convergence occurs:
numerous BFGS iterations (99) are needed for each of the four initial controllers (K
0
= 0
and three perturbed K
0
). The nal optimality measure is 5.28 10
4
.
3.6.3 VTOL helicopter
This model (HE1 from [85]) with four states, one measurement and two control variables,
describes the longitudinal motion of a VTOL (Vertical Take-O and Landing) helicopter,
at given ight conditions. The open-loop spectral abscissa is = 2.76 10
1
, attained by
two complex conjugate eigenvalues. All the open-loop eigenvalues are simple.
Nonsmooth optimization algorithm (variants I and II)
Algorithm variant I II (with BFGS)
rst < 0 6.16 10
2
6.16 10
2
(iter.) (1) (1)
nal 2.39 10
1
2.47 10
1
(iter.) (216) (26)
fun. eval. 796 90
nal 9.77 10
6
1.70 10
6
Table 3.6: VTOL helicopter stabilization, nonsmooth algorithm, variants I and II.
Using variant I, the closed-loop becomes stable after the rst iteration, and the spectral
abscissa decreases slowly until satisfaction of the local optimality stopping test. This slow
convergence strongly calls for variant II of our nonsmooth descent algorithm, which nds
a lower closed-loop spectral abscissa with much less iterations. For both cases, the value
close to 0 of indicates local optimality.
The nal closed-loop spectrum at convergence obtained by algorithm variant I is
=
_
2.39 10
1
5.76 10
1
i, 2.39 10
1
, 7.91 10
1
_
,
and the subgradients associated with
1
= 2.39 10
1
+ 5.76 10
1
i and with
3
=
2.39 10
1
are, respectively,
1
=
2
=
_
1.26 10
1
+2.92 10
2
_
,
3
=
_
+6.26 10
2
1.55 10
2
_
.
Convergence analysis is favorable for our algorithm, because the nonsmoothness comes
from several simple active eigenvalues for the closed-loop spectral abscissa: the Clarke
subdierential is then well dened and the value of (K) is reliable as an optimality
criterion.
A plot in the neighborhood of the convergence point of variant I (see gure 3.4) clearly
shows the nonsmoothness at optimality.
78 Chapitre 3. Techniques non lisses pour la stabilisation des systmes linaires
2 2.5 3 3.5 4
10.5 11 11.5 12 12.5
0.24
0.22
0.2
0.18
0.16
0.14
0.12
0.1
0.08
0.06
K
1
closedloop spectral abscissa
around variant I local minimum
K
2
(
A
+
B
[
K
1
;
K
2
]
C
)
Figure 3.4: Closed-loop spectral abscissa around optimal K of variant I algorithm.
Other algorithms
The same closed-loop spectral abscissa is found by MDS (with regular simplex shape),
the Matlab routines, which are very ecient in this example, and by HIFOO (with nal
local optimality measure 9.87 10
4
). Notice that iterates of fmincon become feasible
only at the last iteration, a classical feature of SQP algorithms.
algorithm MDS 1 MDS 2 fmincon fminimax HIFOO
rst < 0 1.23 10
1
9.95 10
2
2.47 10
1
5.09 10
2
6.16 10
2
(iter.) (1) (1) (36) (1) (1+0+0)
nal 1.35 10
1
2.47 10
1
2.47 10
1
2.47 10
1
2.46 10
1
(iter.) (15) (58) (36) (36) (116+0+0)
fun. eval. 63 235 73 73 216
Table 3.7: VTOL helicopter stabilization, other algorithms.
The same closed-loop spectral abscissa is found by MDS (with regular simplex shape),
the Matlab routines, which are very ecient in this example, and by HIFOO (with nal
local optimality measure 9.87 10
4
). Notice that iterates of fmincon become feasible
only at the last iteration, a classical feature of SQP algorithms.
3.6.4 B-767 airplane
Our last example taken from [85] (system AC10) is of higher order (55 states), with two
controlled inputs and two measured outputs. The state-space data describe a modied
3.6. Numerical examples 79
Boeing B-767 at utter condition (see [46]). The open-loop is unstable, but the only active
eigenvalues of A for the spectral abscissa are
1
= 1.015 10
1
and
1
, with multiplicity
one.
Nonsmooth optimization algorithm (variants I and II)
We use algorithm variants I and II, with all gains of the initial controller set to 0. The two
versions of our algorithm stabilize the plant after a single iteration. If the optimization
is continued, variant II gives fast convergence to a local minimum (certied by the small
value of ). Variant I is slower here.
Algorithm variant I II (with BFGS)
rst < 0 2.37 10
2
2.36 10
2
(iter.) (1) (1)
nal 7.99 10
2
3.50 10
2
(iter.) (99) (29)
fun. eval. 387 111
nal 8.00 10
4
8.70 10
6
Table 3.8: B-767 airplane stabilization, nonsmooth algorithm, variants I and II.
Other algorithms
See table 3.9.
algorithm MDS 1 MDS 2 fmincon fminimax HIFOO
rst < 0 3.59 10
3
2.35 10
2
2.47 10
2
2.36 10
2
2.34 10
2
(iter.) (2) (13) (3) (1) (1+0+0)
nal 3.23 10
2
3.54 10
2
3.44 10
2
5.24 10
2
3.62 10
2
(iter.) (60) (100) (9) (15) (132+3+15)
fun. eval. 485 805 21 31 1858
Table 3.9: B-767 airplane stabilization, other algorithms.
3.6.5 PID controllers
As our algorithm can handle controller structure (see 3.3.3), it oers an interesting frame-
work for PID controller design, particularly attractive for MIMO plants where very few
generic tuning techniques are available. In this example, we seek a 3 input, 3 output
stabilizing PID controller for an open-loop marginally unstable aircraft model (AC2 from
[85]), given as:
K(s) = K
P
+
1
s
K
I
+
s
1 + s
K
D
where K
P
, K
I
, K
D
R
22
and > 0. The algorithm is initialized with K
P
= 0,
K
I
= K
D
= I
3
and = 10
3
. The resulting closed-loop is unstable ((A
c
(K)) = 8.06).
80 Chapitre 3. Techniques non lisses pour la stabilisation des systmes linaires
The algorithm (variant I) nds a stabilizing PID controller after 2 iterations. It stops
after 42 iterations, with:
K
P
=
_
_
72.23 4.62 28.69
17.89 3.93 33.70
33.65 13.17 114.77
_
_ ,
K
I
=
_
_
41.38 3.80 102.45
23.93 3.82 42.75
11.79 18.42 20.37
_
_ ,
K
D
=
_
_
0.91 0 0
0 0.91 0
0 0 0.91
_
_, = 9.55 10
4
The nal closed-loop spectral abscissa is = 6.03 10
1
. Notice that K
D
and are
nearly unchanged.
3.7 Conclusion
Formulated as an optimization program, static or xed-structure output feedback sta-
bilization has been solved for several case studies from the literature. The proposed
nonsmooth algorithm addresses the nonsmoothness of the spectral abscissa and generates
successive descent steps. Even if the theoretical assumption of semisimple active eigen-
values may seem restrictive, the experimental results show that very few nonsmooth steps
will generally yield a stabilizing static controller. Our framework is generic enough to
handle realistic stabilization problems with structured compensators. The two proposed
variants are deterministic and numerically ecient, with signicantly fewer evaluations
of the spectral abscissa than MDS or HIFOO. Finally, although BFGS is designed for
smooth optimization, we noticed that it performs quite well for static output feedback
stabilization (in variant II, in the initial phase of HIFOO and in the Matlab optimization
tools), agreeing with [32].
Chapitre 4
Optimisation non lisse pour la
commande structure, application au
loop-shaping par correcteur de type
PID
Lalgorithme non lisse prsent dans le chapitre prcdent pour la stabilisation a t
conu originellement dans le but de rsoudre le problme de la synthse H
(voir [8]). Il
est plus dlicat mettre en uvre dans ce contexte, car le problme minimax sous-jacent
est semi-inni. Il est aussi plus adapt, car, sans hypothse particulire, la norme H
du
transfert en boucle ferme est localement lipschitzienne, et admet donc en tout point un
sous-direntiel au sens de Clarke. Comme pour la stabilisation, notre approche par op-
timisation locale permet de prendre en compte en amont, cest--dire dans toute la phase
de synthse du correcteur, une structure particulire de la boucle ferme ou de la loi de
commande elle-mme. Elle peut tre dordre x, ou suivre un certain formalisme (PID,
ples/zros, etc.). Ces spcications peuvent gnralement se traduire par une paramtri-
sation continment direntiable du correcteur qui, grce la rgle de direntiation en
chane pour le sous-direntiel de Clarke, sintgre dans le processus doptimisation.
Nous proposons dans larticle qui suit dillustrer la exibilit de cette approche tra-
vers la commande par loop-shaping dun racteur chimique, laide dun correcteur de
type PID. Dans ce type dapplication, des spcications frquentielles portent sur le prol
des valeurs singulires en boucle ouverte. Ces spcications sont introduites par lajout
de fonctions de pondration dynamiques en entre et en sortie, ce qui a pour eet de
faire crotre articiellement lordre du systme commander. La synthse de correcteurs
dordre rduit (et, plus gnralement, de structure xe) est donc particulirement sou-
haitable dans le cadre du loop-shaping. Grce lapport thorique de lOptimisation non
direntiable, nous traitons directement ce problme de commande structure dans les-
pace des paramtres du correcteur PID. A la convergence de lalgorithme de descente,
loptimalit locale vis vis de la norme H
est garantie.
Nous montrons aussi quil est possible de tester loptimalit locale dun correcteur
PID donn, pour le critre H
locale-
ment maximale).
83
Nonsmooth structured control design
with application to PID loop-shaping
of a process
P. Apkarian, V. Bompart and D. Noll
Article publi dans International Journal of Robust and Nonlinear Control,
17(14) :1320-1342, 2007.
Abstract
Feedback controllers with specic structure arise frequently in applications because they
are easily apprehended by design engineers and facilitate on-board implementations and
re-tuning. This work is dedicated to H
loop-
shaping with decentralized constraints. In [132], again in the loop shaping context, the
authors adopt a truncation procedure to reduce a full-order controller to a PID controller.
Those are heuristic procedures, because closed-loop performance is not necessarily inher-
ited by the nal controller. In [123], Saeki addresses sucient conditions under which
PID synthesis reduces to solving LMIs.
In a recent interesting work, Rotkowitz and Lall [122] fully characterize a class of
problems for which structured controller design can be solved using convex programming.
They introduce the concept of quadratic invariance and show that for problems having
this property, optimal structured controllers may be eciently synthesized. In a dierent
4.2. Nonsmooth H
design technique 85
but related work [140], the authors identify various control structures that are amenable
to convex optimization by an appropriate choice of coprime factors in the Youla-Kucera
parametrization [29]. A similar analysis is made by Scherer in [126] both for structured
controller design and multi-objective H
T
wz
acting on the controller space, where T
wz
(K) denotes
the closed-loop transfer function from w to z at a given controller K, gure 4.1. These
results are used to develop nonsmooth descent algorithms for various design problems
[8, 9, 10]. Here we extend our results to structured controller design and elaborate the
case of MIMO PID controllers. We then demonstrate how the proposed technique can be
used in the context of PID loop-shaping as introduced in [98, 57]. We conclude with an
application to chemical process control.
4.2 Nonsmooth H
design technique
Consider a plant P in state-space form
P(s) :
_
_
x
z
y
_
_ =
_
_
A B
1
B
2
C
1
D
11
D
12
C
2
D
21
D
22
_
_
_
_
x
w
u
_
_ , (4.1)
where x R
n
is the state vector of P, u R
m
2
the vector of control inputs, w R
m
1
the vector of exogenous inputs, y R
p
2
the vector of measurements and z R
p
1
the
86 Chapitre 4. Optimisation non lisse pour la commande structure
controlled or performance vector. Without loss, it is assumed throughout that D
22
= 0.
The focus is on H
norm |T
wz
(K)|
. Here T
wz
(K) denotes the closed-loop transfer
function from w to z.
4.2.1 Subdierential of the H
map
For the time being we leave apart structural constraints and assume that K(s) has the
frequency domain representation:
K(s) = C
K
(sI A
K
)
1
B
K
+D
K
, A
K
R
kk
, (4.2)
where k is the order of the controller, and where the case k = 0 of a static controller
K(s) = D
K
is included. A further simplication is obtained if we assume that preliminary
dynamic augmentation of the plant P(s) has been performed:
A
_
A 0
0 0
k
_
, B
1
_
B
1
0
_
, etc.
so that manipulations will involve a static matrix
/
_
A
K
B
K
C
K
D
K
_
. (4.3)
With this proviso, the following closed-loop notations will be useful:
_
/(/) B(/)
c(/) T(/)
_
_
A B
1
C
1
D
11
_
+
_
B
2
D
12
_
/
_
C
2
D
21
_
. (4.4)
Owing to its special composite structure, the function f = |.|
T
wz
, which maps
the set T R
(m
2
+k)(p
2
+k)
of stabilizing controllers into R
+
, is Clarke subdierentiable
[104, 8, 7]. Its Clarke subdierential can be described as follows. Introduce the set of
active frequencies at a given /
(/) [0, +] : (T
wz
(/, j)) = f(/). (4.5)
We assume throughout that (/) is a nite set and we refer the reader to [27] for a
justication of this hypothesis. We shall also need the notation:
_
T
wz
(/, s) G
12
(/, s)
G
21
(/, s)
_
_
c(/)
C
2
_
(sI /(/))
1
_
B(/) B
2
_
+
_
T(/) D
12
D
21
_
.
(4.6)
This leads to the following result
4.2. Nonsmooth H
design technique 87
Theorem 4.2.1 Assume the controller K(s) stabilizes P(s) in (4.1), that is, / T.
With the notations (4.5) and (4.6), let Q
1
_
T
wz
(/, j)T
wz
(/, j)
H
_
= (T
wz
(/, j))
2
. Then, the Clarke subdierential of
the mapping f at / T is the compact and convex set f(/) =
Y
: Y o(/), where
Y
= f(/)
1
(|)
Re
_
G
21
(/, j) T
wz
(/, j)
H
Q
(Q
)
H
G
12
(/, j)
_
T
, (4.7)
and S(/) is the spectraplex set
o(/) Y = (Y
)
(|)
: Y
= (Y
)
H
_ 0,
(|)
Tr Y
= 1. (4.8)
Proof: The proof is based on the chain rule for the Clarke gradient of the composite
mapping f = |.|
T
wz
and we refer the reader to [44] and [116, 8, 7] for a proof and
further details.
In geometric terms, the subdierential of f is a linear image of the spectraplex set
S(/). We shall see later that it reduces to a more familiar geometric set under additional
assumptions on the multiplicity of the singular values.
4.2.2 Structured controllers
Note that we have assumed so far that controllers have no specic structure. We now
extend the results in section 4.2.1 to structured controllers using chain rules.
Assume / dened in (4.3) depends smoothly on a free parameter R
q
, that is,
/ = /(), where /() is smooth. Then the subgradients with respect to of the mapping
g = |.|
T
wz
(.) /(.) at are obtained as /
t
()
acts on
elements F R
(m
2
+k)(p
2
+k)
via
/
t
()
F =
_
Tr (
|()
1
T
F), . . . , Tr (
|()
q
T
F)
_
T
.
We infer the following
Corollary 4.2.2 Assume the controller /() stabilizes P(s) in (4.1), that is, /() T.
With the notations of Theorem 4.2.1, the Clarke subdierential of the mapping g = |.|
T
wz
(.) /(.) at R
q
is the compact and convex set
g() =
_
_
Tr (
|()
1
T
Y
), . . . , Tr (
|()
q
T
Y
)
_
T
:
Y
f(/())
_
. (4.9)
Using vectorization, the subgradients in (4.9) can be rewritten as
_
vec
|()
1
, . . . , vec
|()
q
_
T
vec
Y
. (4.10)
88 Chapitre 4. Optimisation non lisse pour la commande structure
An important special case in practice is when the maximum singular values
(T
wz
(/(), j))
have multiplicity one for every (/()). Then the subgradients
Y
reduce in vector
form to vec
Y
= where
(|())
= 1,
(Q
)
H
G
12
(/, j)
_
T
_
(|())
.
Combining this expression with (4.10), the subdierential g() at admits a simpler
representation in the form of a linear image of a simplex
g() =
_
_
_
_
vec
|()
1
, . . . , vec
|()
q
_
T
:
(|())
= 1,
0, (/())
_
_
_
.
4.2.3 PID controllers
If this section we specialize the above results to PID controllers. A common representation
of MIMO PID controllers is
K(s) = K
p
+
K
i
s
+
K
d
s
1 + s
, (4.11)
where K
p
, K
i
and K
d
are the proportional, the integral and the derivative gains, re-
spectively. The PID gains K
p
, K
i
and K
d
all belong to R
m
2
m
2
for a square plant with
m
2
inputs and outputs. is a small scalar which determines how close the last term in
(4.11) comes to a pure derivative action. Using partial fraction expansion, an alternative
representation can be obtained in the form
K(s) = D
K
+
R
i
s
+
R
d
s +
, (4.12)
with the correspondence
D
K
K
p
+
K
d
, R
i
K
i
, R
d
K
d
2
,
1
.
Note that these two representations are in one-to-one correspondence via
K
d
=
2
R
d
, K
p
= D
K
+R
d
, K
i
= R
i
, =
1
.
From (4.12) we obtain a linearly parameterized state-space representation of a MIMO
PID controller
/ =
_
A
K
B
K
C
K
D
K
_
=
_
_
0 0 R
i
0 I R
d
I I D
K
_
_, A
K
R
2m
2
2m
2
. (4.13)
4.2. Nonsmooth H
design technique 89
Since the state-space representation of the PID controller is ane in the parameters ,
R
i
, R
d
and D
k
, the same is true for its vectorized form and we can write
vec
_
A
K
B
K
C
K
D
K
_
= vec
_
_
0 0 0
0 0 0
I I 0
_
_ +T
..
_
vec R
i
vec R
d
vec D
K
_
_
,
for a suitable matrix T R
(k+m
2
)(k+p
2
)(3m
2
2
+1)
. The linear part of (4.13) can be expanded
as
_
_
_
0
I
0
_
_
_I
_
_
_
0
I
0
_
_
_
T
+
_
_
_
I
0
0
_
_
_R
i
_
_
_
0
0
I
_
_
_
T
+
_
_
_
0
I
0
_
_
_R
d
_
_
_
0
0
I
_
_
_
T
+
_
_
_
0
0
I
_
_
_D
K
_
_
_
0
0
I
_
_
_
T
.
In consequence, using the Kronecker product to convert matrix products into vectors, we
obtain the transformation
T =
_
_
_
_
_
0
I
0
_
_
_
_
_
_
0
I
0
_
_
_vec I
_
_
_
0
0
I
_
_
_
_
_
_
I
0
0
_
_
_
_
_
_
0
0
I
_
_
_
_
_
_
0
I
0
_
_
_
_
_
_
0
0
I
_
_
_
_
_
_
0
0
I
_
_
_
_
_ .
Finally, the subdierential of the mapping g = |.|
T
wz
(.) /(.) at , where /()
describes a MIMO PID controller (4.11) or (4.12) above, is the compact and convex set
of subgradients
g() =
_
T
T
vec
Y
:
Y
f(/())
_
. (4.14)
For a decentralized MIMO PID controller, R
i
, R
d
and D
K
reduce to diagonal matrices.
Introducing the linear transformation
J
_
e
1
e
1
. . . e
m
2
e
m
2
_
,
where (e
i
)
i=1,...,m
2
is the canonical basis of R
m
2
, it is easily veried that
vec M = J [M
11
, M
22
, . . . , M
m
2
m
2
]
T
for any square matrix M of size m
2
. This leads to
_
vec R
i
vec R
d
vec D
K
_
_
=
L
..
_
_
1 0 0 0
0 J 0 0
0 0 J 0
0 0 0 J
_
..
_
vec diag R
i
vec diag R
d
vec diag D
K
_
_
90 Chapitre 4. Optimisation non lisse pour la commande structure
with the new parameter vector as indicated above. Again by the chain rule for Clarke
subdierentials, we obtain that the subdierential of the mapping g = |.|
T
wz
(.)/(.)
at , where /() describes a MIMO decentralized PID controller stabilizing (4.1), is the
compact and convex set of subgradients
g() =
_
L
T
T
T
vec
Y
:
Y
f(/())
_
.
We emphasize that the outlined procedure to determine subdierentials of various
types of PID controllers is general and encompasses most controller structures. In partic-
ular, this includes all structures / = /() with a dierentiable parametrization /(). In
addition, in some cases the parameter R
q
may be restricted to a contraint subset of
R
q
.
4.2.4 Setpoint lter design
Despite the improvement in performance achieved by our new technique, using PID feed-
back alone may not be sucient to meet suitable time-domain constraints. Traditionally,
this diculty is overcome by using a two-degree of freedom strategy including feedback
and preltering or setpoint ltering. Setpoint lters operate on the reference signals to
improve responses properties such as settling-time, overshoot and decouplings. In gure
4.2, a typical model following strategy is shown. The setpoint lter F(s) is used in such a
way that the responses of the feedback controlled plant G(s) match as closely as possible
those of a reference model G
ref
(s). Finding such a lter could also be cast as an H
synthesis problem, where the transfer function from the reference signal r to the tracking
error e is minimized:
minimize
F(s)
|T
re
(F)|
. (4.15)
+
e
r
F(s)
G
ref
(s)
K(s)
+
G(s)
Figure 4.2: Setpoint lter design.
To solve the setpoint lter design problem, we suggest once again the use of nonsmooth
optimization methods. In order to illustrate the construction, consider the case of a two-
input two-output system. To achieve decoupling and good quality responses, the setpoint
4.2. Nonsmooth H
design technique 91
lter is sought in the form [132],
F(s) =
_
1
1
s+1
a
1
s
b
1
s+1
a
2
s
b
2
s+1
1
2
s+1
_
. (4.16)
Setting
1
=
1
1
,
2
=
1
b
1
,
3
=
a
1
b
1
,
4
=
1
2
,
5
=
1
b
2
,
6
=
a
2
b
2
,
a state-space representation of the lter is obtained as
T()
_
A
F
B
F
C
F
D
F
_
=
_
1
0 0 0
1
0
0
2
0 0 0
3
0 0
4
0 0
4
0 0 0
5
6
0
1
2
0 0 0
3
0 0 1
5
6
0
_
_
.
This means there exists a matrix U such that
vec T() = vec T(0) + U, R
6
.
We immediately deduce the relevant subgradient formulas for program (4.15). With
v |.|
T
re
(.) T(.), the subdierential of v at , where T() is a setpoint lter, is
the compact and convex set of subgradients
v() =
_
U
T
vec
Y
:
Y
(|.|
T
re
) (T())
_
. (4.17)
The remaining expression for the subdierential is directly obtained from Theorem 4.2.1.
4.2.5 Nonsmooth descent method
In this section we briey present our nonsmooth optimization technique for composite
functions of the H
-norm. For a more detailed discussion we refer the reader to [8, 9].
We start by representing the composite functions f = | |
T
wz
or more generally
g = | |
T
wz
/() under the form
g() = max
[0,+]
g(, ),
where each g(, ) is a composite maximum singular value function
g(, ) = (((, j)) .
Here ((, j) = T
wz
(/(), j). At a given parameter , we can compute the set
() (/()) of active frequencies, which is either nite, or coincides with [0, +] in
those rare cases where the closed-loop system is all-pass. Excluding this case, we assume
() nite and construct a nite extension
e
() by adding frequencies according to the
strategy presented in [8, 9]. See gure 4.3 for a typical choice.
92 Chapitre 4. Optimisation non lisse pour la commande structure
Following the general trend of Polak [114], we now dene the optimality function
e
() min
hR
q
max
e
()
max
Y
0
Tr(Y
)=1
g() + g(, ) + h
T
+
1
2
h
T
Qh, (4.18)
where for every xed ,
Y
_
Tr (
|()
1
T
), . . . , Tr (
|()
q
T
)
_
T
,
where
= g(, )
1
Re G
21
(/, j) T
wz
(/, j)
H
Q
(Q
)
H
G
12
(/, j) , Y
_ 0, Tr Y
= 1.
The model of the objective function represented by
e
is in principle of rst order, but
the quadratic term h
T
Qh may in some cases be used to include second order information.
In [8, 9] we had worked with the basic choice Q = I ~ 0, but we shall propose a more
sophisticated choice here using BFGS updates.
Notice that independently of the choices of Q ~ 0 and the nite extension
e
() of
() used, the optimality function has the following property:
e
() 0, and
e
() = 0
if and only if 0 g(), that is, is a critical point of g. In order to use
e
to compute
descent steps, it is convenient to obtain a dual representation of
e
. To do this we use
Fenchel duality to swap the max and min operators in (4.18). This means that we rst
replace the rst inner supremum by a supremum over a convex hull which does not alter
the value of
e
. Then, after swapping max and min, the now inner inmum over h R
q
becomes unconstrained and can be computed explicitely. Namely, for xed Y
and
in
the outer program, we obtain the solution of the form
h(Y, ) = Q
1
_
_
e
()
_
_
. (4.19)
Substituting this back we obtain the dual expression
e
() = max
e
()
=1
max
Y
0
Tr(Y
)=1
_
_
e
()
(g(, ) g())
1
2
_
e
()
_
T
Q
1
_
e
()
_
_
_
. (4.20)
Notice that in its dual form, computing
e
() leads to a semidenite program. Indeed,
substituting Z
e
() = max
Z
e
()
Tr(Z
)=1
_
_
e
()
Tr(Z
) (g(, ) g())
1
2
_
e
()
_
T
Q
1
_
e
()
_
_
_
. (4.21)
4.2. Nonsmooth H
design technique 93
The latter program is converted to an LMI problem using a Schur complement argument.
As a byproduct we see that
e
() 0 and that
e
() = 0 implies is critical that is,
0 g().
What is important is that the direction h(Y, ) = h(Z) in (4.19) is a descent direction
of g at in the sense that the directional derivative satises the decrease condition
g
t
(; h(Z))
e
()
1
2
_
e
()
_
Q
1
_
e
()
_
,
where Z is the dual optimal solution. See [9, Lemma 4.3] for a proof. In conclusion, we
obtain the following algorithmic scheme:
Nonsmooth descent method for min
g()
Parameters 0 < < 1, 0 < < 1, 0 < 1.
1. Initialization. Find a structured closed-loop stabilizing controller /().
2. Active frequencies. Compute g() using the algorithm of [28] in its rened
version [27] and obtain set of active frequencies ().
3. Add frequencies. Build nite extension
e
() of () as proposed in [8, 9],
and choose Q _ I.
4. Step computation. Compute
e
() by the dual SDP (4.20) and thereby
obtain direction h(Z) in (4.19). If
e
() = 0 stop. Otherwise:
5. Line search. Find largest t =
k
such that g( +th(Z)) < g() t
e
()
and such that /( +th(Z)) remains stabilizing.
6. Step. Replace by +th(Z) and go back to step 2.
Notice that the line search in step 5 is successful because t
1
(g( +th(Z)) g())
g
t
(; h(Z)) as t 0
+
, and because
e
() < 0 and 0 < < 1. Choosing t under the form
t =
k
with the largest possible k comes down to doing a backtracking line search, which
safeguards against taking too small steps.
The nal elements to be provided is computation of the matrix Q
1
. Since Q is sup-
posed to carry second order information on the objective function, it may seem appropriate
to do a BFGS update
Q
+
= Q+
yy
T
y
T
s
Qss
T
Q
s
T
Qs
,
where s =
+
and y =
+
, where is the subgradient of minimal norm in g(),
g
+
the subgradient of minimal norm in g(
+
). Here the notation x
+
and x stands for
current and past iterates, respectively. Since the inverse Q
1
is required, an alternative
is to use the inverse BFGS update. Here we maintain the matrix P Q
1
in step 4 of
the algorithm through
P
+
= P +
(s Py)s
T
+s(s Py)
T
s
T
y
y
T
(s Py)ss
T
(s
T
y)
2
.
As is well-known, P ~ 0 is guaranteed as long as s
T
y > 0. If this fails, or if P ,~ 0 for
numerical reasons, we modify P
+
or restart the procedure.
94 Chapitre 4. Optimisation non lisse pour la commande structure
Note that computing minimal norm elements g() amounts to computing mini-
mal norm elements in the LMI set (4.9) and therefore reduces to an LMI problem. Finally,
we emphasize the important fact that when singular values (((, j)) are simple on
e
(), which is the rule in practice, we have Z
= Tr Z
synthesis is
4.3. Nonsmooth loop-shaping design 95
performed to minimize the objective
|T
(w
1
,w
2
)(z
1
,z
2
)
(K)|
|
_
K
I
_
(I W
2
GW
1
)
1
_
G I
_
|
(4.22)
which yields a controller K. The nal controller is then implemented in the form W
1
KW
2
and has no specic structure. Notice that the H
design.
4.3.2 PID Loop-shaping design
For loop-shaping design with a PID controller we have adopted the strategy introduced
in [57]. In this approach the controller K is sought in the form K = W
1
1
K
PID
, assuming
that the pre-compensator W
1
is invertible and K
PID
is a PID controller. The synthesis
problem is then of the form
minimize
K
PID
stabilizing
|
_
W
1
1
K
PID
I
_
(I W
2
GK
PID
)
1
_
W
2
GW
1
I
_
|
. (4.23)
Note that this scheme retains all the benets of the H
design.
4.4 Application to a separating tower
In this section, we consider the application of the nonsmooth technique to the control
design for a chemical process from the literature [57]. It consists of a 24-tray tower for
separating methanol and water. The transfer function for controlling the temperature on
the 4th and 17th trays is given as
_
t
17
t
4
_
=
_
2.2e
s
7s+1
1.3e
0.3s
7s+1
2.8e
1.8s
9.5s+1
4.3e
0.35s
9.2s+1
_ _
u
1
u
2
_
. (4.24)
Settling times of about 10 seconds are desired for the closed-loop process in response to
step inputs, as well as good decoupling between the temperatures t
17
and t
4
. A good
robustness margin is also required to account for process model uncertainties. The latter
will be assessed using the coprime factor uncertainty margin as dened in section 4.3.
The actual plant in (4.24) is approximated by a rational model using 2nd-order Pade ap-
proximation of the delays. This leads to a 12th-order model. Pre- and post-compensators
are taken from [57]:
W
1
(s) =
_
5s+2
s+0.001
0
0
5s+2
s+0.001
_
, W
2
(s) =
_
10
s+10
0
0
10
s+10
_
.
4.4. Application to a separating tower 97
The standard form of gure 4.5 incorporating the compensators is therefore of 18th-
order. For comparison, we have synthesized an unstructured full-order controller, whose
associated step responses and singular value frequency responses are displayed in gures
4.6 and 4.7, respectively. For full order the robustness was found to be
1
= 0.361.
This is very satisfactory in terms of stability and gives good agreement with the prescribed
open-loop shapes. This is conrmed by the fast and well-damped step responses in gure
4.6. We also observe short term couplings between t
17
and t
4
, an unpleasant behavior
which we try to reduce later when dealing with PID controllers. For future use, we
keep in mind that the the optimal = 2.77 achieved at this stage is globally optimal if
controller structural constraints are disregarded.
In reference [57] a state-space BMI formulation is used to characterize PID solutions
of the H
controller.
10
5
10
4
10
3
10
2
10
1
10
0
10
1
10
2
10
3
80
60
40
20
0
20
40
60
Singular Values
Frequency (rad/sec)
S
in
g
u
la
r
V
a
lu
e
s
(
d
B
)
Figure 4.7: Frequency response of H
controller.
0 10 20 30
0.2
0
0.2
0.4
0.6
0.8
1
1.2
1.4
time (sec.)
o
u
t
p
u
t
#
1
0 10 20 30
0.2
0
0.2
0.4
0.6
0.8
1
1.2
time (sec.)
o
u
t
p
u
t
#
2
Figure 4.8: Time-domain simulations of
PID controller in [57].
10
2
10
1
10
0
10
1
10
2
10
3
30
20
10
0
10
20
30
40
Singular Values
Frequency (rad/sec)
S
i
n
g
u
l
a
r
V
a
l
u
e
s
(
d
B
)
Figure 4.9: Frequency response of PID
controller in [57].
0 10 20 30
0.2
0
0.2
0.4
0.6
0.8
1
1.2
time (sec.)
o
u
t
p
u
t
#
1
0 10 20 30
0.2
0
0.2
0.4
0.6
0.8
1
1.2
time (sec.)
o
u
t
p
u
t
#
2
Figure 4.10: Time-domain simulations of
1st PID controller.
10
3
10
2
10
1
10
0
10
1
10
2
10
3
30
20
10
0
10
20
30
40
50
60
70
Singular Values
Frequency (rad/sec)
S
i
n
g
u
l
a
r
V
a
l
u
e
s
(
d
B
)
Figure 4.11: Frequency response of 1st
PID controller.
100 Chapitre 4. Optimisation non lisse pour la commande structure
0 10 20 30
0.2
0
0.2
0.4
0.6
0.8
1
1.2
time (sec.)
o
u
t
p
u
t
#
1
0 10 20 30
0.2
0
0.2
0.4
0.6
0.8
1
1.2
time (sec.)
o
u
t
p
u
t
#
2
Figure 4.12: Time-domain simulations of 1st PID controller with setpoint lter.
0 10 20 30
0.2
0
0.2
0.4
0.6
0.8
1
1.2
time (sec.)
o
u
t
p
u
t
#
1
0 10 20 30
0.2
0
0.2
0.4
0.6
0.8
1
1.2
time (sec.)
o
u
t
p
u
t
#
2
Figure 4.13: Time-domain simulations of
2nd PID controller.
10
3
10
2
10
1
10
0
10
1
10
2
10
3
40
20
0
20
40
60
80
Singular Values
Frequency (rad/sec)
S
in
g
u
la
r
V
a
lu
e
s
(
d
B
)
Figure 4.14: Frequency response of 2nd
PID controller.
0 10 20 30
0.2
0
0.2
0.4
0.6
0.8
1
1.2
time (sec.)
o
u
t
p
u
t
#
1
0 10 20 30
0.2
0
0.2
0.4
0.6
0.8
1
1.2
time (sec.)
o
u
t
p
u
t
#
2
Figure 4.15: Time-domain simulations of 2nd PID controller with setpoint lter.
4.5. Conclusion 101
4.5 Conclusion
We have presented and discussed a nonsmooth optimization technique for the synthesis of
nely structured controllers with an H
. Seul le calcul
des lments direntiels dire, et fait ici appel des simulations temporelles.
La mthode de descente non lisse pour la commande structure est ici rappele dans
un contexte commun ces trois applications. Cette unit dapproche nest pas seulement
satisfaisante dun point de vue thorique : nous pensons quelle facilitera, dans les travaux
futurs, la combinaison de critres et de contraintes de nature frquentielle ou temporelle
dans un mme problme doptimisation non lisse.
103
104 Chapitre 5. Commande temporelle et frquentielle par techniques non lisses
5.1. Introduction 105
Control design in the time- and frequency
domains using nonsmooth techniques
V. Bompart, P. Apkarian and D. Noll
Article paratre dans Systems & Control Letters (sous presse).
Abstract
Signicant progress in control design has been achieved by the use of nonsmooth and semi-
innite mathematical programming techniques. In contrast with LMI or BMI approaches,
these new methods avoid the use of Lyapunov variables, which gives them two major
strategic advances over matrix inequality methods. Due to the much smaller number of
decision variables, they do not suer from size restrictions, and they are much easier to
adapt to structural constraints on the controller. In this paper, we further develop this
line and address both frequency- and time-domain design specications by means of a
nonsmooth algorithm general enough to handle both cases. Numerical experiments are
presented for reliable or fault-tolerant control, and for time response shaping.
Keywords: Nonsmooth optimization, H
1
(F(K, )), which are composite functions of a smooth but
nonlinear operator F, and a nonsmooth but convex function
1
.
The new approach is highly exible, as it allows to address, with almost no additional
cost, structured synthesis problems of the form f() = max
[0,]
1
(F(/(), )),
where /() denes a mapping from the space of controller parameters to the space
of state-space representations K. From a practical viewpoint, structured controllers
are better apprehended by designers and facilitate implementation and re-tuning
whenever performance or stability specications change. This may be the major
advantage of the new approach over matrix inequality methods.
The new approach is general and encompasses a wide range of problems beyond
pure stabilization and H
_
x
z
y
_
_ =
_
_
A B
1
B
2
C
1
D
11
D
12
C
2
D
21
D
22
_
_
_
_
x
w
u
_
_ , (5.1)
where x R
n
is the state vector of P, u R
m
2
the vector of control inputs, w R
m
1
the vector of exogenous inputs or a test signal, y R
p
2
the vector of measurements and
z R
p
1
the controlled or performance vector. Without loss, it is assumed throughout
that D
22
= 0.
The focus is on time- or frequency domain synthesis with structured controllers, which
consists in designing a dynamic output feedback controller K(s) with feedback law u =
K(s)y for the plant in (5.1), having the following properties:
Controller structure: K(s) has a prescribed structure.
Internal stability: K(s) stabilizes the original plant P(s) in closed-loop.
Performance: Among all stabilizing controllers with that structure, K(s) is such
that either the closed-loop time response z(t) to a test signal w(t) satises prescribed
constraints, or the H
is minimized. Here
T
wz
(K) denotes the closed-loop transfer function from w to z, see gure 5.1.
For the time being we leave apart structural constraints and assume that K(s) has
the frequency domain representation:
K(s) = C
K
(sI A
K
)
1
B
K
+D
K
, A
K
R
kk
, (5.2)
where k is the order of the controller, and where the case k = 0 of a static controller
K(s) = D
K
is included. A further simplication is obtained if we assume that preliminary
dynamic augmentation of the plant P(s) has been performed:
A
_
A 0
0 0
k
_
, B
1
_
B
1
0
_
, etc.
108 Chapitre 5. Commande temporelle et frquentielle par techniques non lisses
so that manipulations will involve a static matrix
/
_
A
K
B
K
C
K
D
K
_
R
(k+m
2
)(k+p
2
)
. (5.3)
With this proviso, the following closed-loop notations will be useful:
_
/(/) B(/)
c(/) T(/)
_
_
A B
1
C
1
D
11
_
+
_
B
2
D
12
_
/
_
C
2
D
21
_
. (5.4)
Structural constraints on the controller will be dened by a matrix-valued mapping
/(.) from R
q
to R
(k+m
2
)(k+p
2
)
, that is / = /(), where vector R
q
denotes the
independent variables in the controller parameter space R
q
. For the time being we will
consider free variation R
q
, but the reader will be easily convinced that adding param-
eter restriction by means of mathematical programming constraints g
I
() 0, g
E
() = 0
could be added if need be. We will assume throughout that the mapping /(.) is continu-
ously dierentiable, but otherwise arbitrary. As a typical example, consider MIMO PID
controllers, given as
K(s) = K
p
+
K
i
s
+
K
d
s
1 + s
, (5.5)
where K
p
, K
i
and K
d
are the proportional, the integral and the derivative gains, respec-
tively, are alternatively represented in the form
K(s) = D
K
+
R
i
s
+
R
d
s +
, (5.6)
with the relations
D
K
K
p
+
K
d
, R
i
K
i
, R
d
K
d
2
,
1
, (5.7)
and a linearly parameterized state-space representation is readily derived as
/() =
_
A
K
B
K
C
K
D
K
_
=
_
_
0 0 R
i
0 I R
d
I I D
K
_
_, A
K
R
2m
2
2m
2
. (5.8)
Free parameters in this representation can be gathered in the vector obtained as
_
vec R
i
vec R
d
vec D
K
_
_
R
3m
2
2
+1
.
We stress that the above construction is general and encompasses most controller struc-
tures of practical interest. We shall see later that interesting control problems such as
reliable control are also special cases of the general structured design problem.
With the introduced notation, time-domain design is the optimization program
minimize
R
q
_
f
() max
t[0,T]
f(, t)
_
5.3. Nonsmooth descent method 109
where the case T = is allowed. See section 5.3.1.0 for further details and other practical
options.
Frequency-domain design is the standard H
problem
minimize
R
q
_
f
() sup
[0,]
(T
wz
(/(), j)) = [[T
wz
(/())[[
_
.
5.3 Nonsmooth descent method
In this section we briey present our nonsmooth optimization technique for time- and
frequency-domain max functions. For a detailed discussion of the H
max
xX
f(, x) , (5.9)
where the semi-innite variable x = t or x = is restricted to a one-dimensional set X.
Here X may be the haline [0, ], or a limited band [
1
,
2
], or a union of such bands in
the frequency domain, and similarly in the time domain. The symbol denotes the design
variable involved in the controller parametrization /(), and we introduce the objective
or cost function
f
() max
xX
f(, x) .
At a given parameter , we assume that we can compute the set () of active times
or frequencies, which we assume nite for the time being:
() x X : f(, x) = f
() . (5.10)
For future use we construct a nite extension
e
() of () by adding times or frequencies
to the nite active set (). An ecient strategy to construct this set for x = has been
discussed in [8, 9]. For x = t some ideas will be given in section 5.4.3.
For the ease of presentation we assume that the cost function f is dierentiable with
respect to for xed x
e
(), so that gradients
x
=
e
() min
hR
q
max
x
e
()
f
() + f(, x) + h
T
x
+
1
2
h
T
Qh, (5.11)
Notice that
e
is a rst-order model of the objective function f
() in (5.9) in a neigh-
borhood of the current iterate . The model oers the possibility to include second-order
information [5] via the term h
T
Qh, but Q ~ 0 has to be assured. For simplicity, we will
assume Q = I with > 0 in our tests.
Notice that independently of the choices of Q ~ 0 and the nite extension
e
() of
() used, the optimality function has the following property:
e
() 0, and
e
() = 0 if
and only if 0 f
. In order to use
e
to compute
descent steps, it is convenient to obtain a dual representation of
e
. To this aim, we rst
110 Chapitre 5. Commande temporelle et frquentielle par techniques non lisses
replace the inner maximum over
e
() in (5.11) by a maximum over its convex hull and
we use Fenchel duality to swap the max and min operators. This leads to
e
() max
x
0
x
e
()
x
=1
min
hR
q
x
e
()
x
(f(, x) f
() + h
T
x
) +
1
2
h
T
Qh.
These operations do not alter the value of
e
. The now inner inmum over h R
q
is now
unconstrained and can be computed explicitly. Namely, for xed
x
in the outer program,
we obtain the solution of the form
h() = Q
1
_
_
x
e
()
x
_
_
. (5.12)
Substituting this back in the primal program (5.11) we obtain the dual expression
e
() = max
x
0
x
e
()
x
=1
_
_
x
e
()
x
(f(, x) f
())
1
2
_
x
e
()
x
_
T
Q
1
_
x
e
()
x
_
_
_
. (5.13)
Notice that in its dual form, computing
e
() is a convex quadratic program (QP). As
a byproduct we see that
e
() 0 and that
e
() = 0 implies is critical that is,
0 f
().
What is important is that as long as
e
() < 0, the direction h() in (5.12) is a
descent direction of f
(; h())
e
()
1
2
_
x
e
()
x
_
T
Q
1
_
x
e
()
x
_
e
() < 0,
where is the dual optimal solution of program (5.13). See [9, Lemma 4.3] for a proof.
In conclusion, we obtain the following algorithmic scheme:
Nonsmooth descent method for min
()
Parameters 0 < < 1, 0 < < 1.
1. Initialize. Find a structured closed-loop stabilizing controller /().
2. Active times or frequencies. Compute f
( +bh()) < f
() b
e
()
and such that /( +b h()) remains closed-loop stabilizing.
6. Step. Replace by +b h() and go back to step 2.
Finally, we mention that the above algorithm is guaranteed to converge to a critical
point [8, 9], a local minimum in practice.
5.3. Nonsmooth descent method 111
5.3.1 Nonsmooth properties
In order to make our conceptual algorithm more concrete, we need to clarify how subdif-
ferential information can be obtained for both time- and frequency-domain design.
Frequency-domain design
In the frequency domain we have x = . The function f
() becomes f
() = [[.[[
T
wz
(.) /(), which maps R
q
into R
+
, and is Clarke subdierentiable as a composite
function [104, 8, 7]. Its Clarke gradient is obtained as /
t
()
(/), where /
t
() is
the derivative of /(.) at , /
t
()
is dened as g
[[.[[
T
wz
(.) and maps the set T R
(m
2
+k)(p
2
+k)
of closed-loop stabilizing controllers into
R
+
. Introducing the notation
_
T
wz
(/, s) G
12
(/, s)
G
21
(/, s)
_
_
c(/)
C
2
_
(sI /(/))
1
_
B(/) B
2
_
+
_
T(/) D
12
D
21
_
.
(5.14)
the Clarke subdierential of g
(/)
Y
: Y o(/) where
Y
= g
(/)
1
(|)
Re
_
G
21
(/, j) T
wz
(/, j)
H
Q
(Q
)
H
G
12
(/, j)
_
T
, (5.15)
and where S(/) is the spectraplex
o(/) = Y = (Y
)
(|)
: Y
= (Y
)
H
_ 0,
(|)
Tr (Y
) = 1, Y
H
r
.
In the above expressions, Q
1
_
T
wz
(/, j)T
wz
(/, j)
H
_
of multiplicity r
x
=
Y
= /
t
()
f(, )
1
Re
_
G
21
(/, j) T
wz
(/, j)
H
Q
(Q
)
H
G
12
(/, j)
_
T
where Q
is as before and Y
H
r
, Y
_ 0, Tr (Y
on elements F R
(m
2
+k)(p
2
+k)
. Namely, we have
/
t
()
F =
_
Tr (
|()
1
T
F), . . . , Tr (
|()
q
T
F)
_
T
.
112 Chapitre 5. Commande temporelle et frquentielle par techniques non lisses
In the general case, where some of the maximum eigenvalues at some of the frequencies
in the extended set
e
() has multiplicity > 1, the formulas above should be used, and
the dual program in (5.13) becomes a linear SDP [8, 9]. This is more expensive than a
QP, but the size of the SDP remains small, so that the method is functional even for large
systems. When maximum eigenvalues are simple, which seems to be the rule in practice,
matrices Y
are scalars, and the primal and dual subproblems become much faster convex
QPs. This feature, taken together with the fact that Lyapunov variables are never used,
explains the eciency of the proposed technique.
Time-domain design
We now specialize the objective function f
() = max
t0
max [z(, t) z
max
(t)]
+
, [z
min
(t) z(, t)]
+
(5.17)
is well dened, f
() 0, and f
is Clarke
regular and its subdierential is
f
() = co
t()
_
co
i7(,t)
f
i
(, t)
_
, (5.18)
where () is the set of active times dened by (5.10), and
1(, t) = i 1, 2, 3 : f(, t) = f
i
(, t) .
5.3. Nonsmooth descent method 113
More precisely, for all t (),
co
i7(,t)
f
i
(, t) =
_
z(, t),
1
() t : t (), f
1
(, t) = f
()
2
() t : t (), f
2
(, t) = f
()
(5.20)
and the Clarke subdierential g
Y
(/) =
t
1
(|)
Y
t
|
z(/, t)
t
2
(|)
Y
t
|
z(/, t) (5.21)
where Y
t
0 for all t (/), and
t(|)
Y
t
= 1.
Remark. The hypothesis of a nite set () may be unrealistic in the time domain
case, because the step response trajectory z(, t) is not necessarily analytic or piecewise
analytic, and may therefore attain the maximum value on one or several contact intervals
[t
, t
+
], where t
,
x = t
+
, and one additional element
x
= 0 for say x = (t
+ t
+
)/2 on the interior of the
contact interval. (This is a dierence with the frequency domain case, where the functions
f(, ) are analytic, so that the phenomenon of a contact interval could not occur).
A more systematic approach to problems of this form with innite active sets would
consist in allowing choices of nite sets
e
(), where () ,
e
() is allowed. This leads
to a variation of the present algorithm discussed in [11, 119, 12], where a trust region
strategy replaces the present line search method.
Gradient computation By dierentiating the state-space equations (5.1) with respect
to /
ij
, we get
_
_
d
dt
x
|
ij
(/, t) = A
x
|
ij
(/, t) + B
2
u
|
ij
(/, t)
z
|
ij
(/, t) = C
1
x
|
ij
(/, t) +D
12
u
|
ij
(/, t)
y
|
ij
(/, t) = C
2
x
|
ij
(/, t)
(5.22)
114 Chapitre 5. Commande temporelle et frquentielle par techniques non lisses
controlled by
u
|
ij
(/, t) =
|
|
ij
(/, t)y(/, t) +/
y
|
ij
(/, t)
= y
j
(/, t)e
i
+/
y
|
ij
(/, t)
(5.23)
where e
i
stands for the i-th vector of the canonical basis of R
m
2
. It follows that the partial
derivative of the output signal
z
|
ij
(/, t) is the simulated output of the interconnection
in gure 5.2, where the exogenous input w is held at 0, and the vector y
j
(/, t)e
i
is added
to the controller output signal. We readily infer that n
u
n
y
simulations are required in
order to form the sought gradients.
/
y
j
e
i
0
+
+
y
/
ij
u
/
ij
z
/
ij
P
Figure 5.2: Interconnection for gradient computation.
This way of computing output signal gradients by performing closed-loop simulations
is at the root of the Iterative Feedback Tuning (IFT) method, intially proposed in [73] for
SISO systems and controllers. This optimization technique has originated an extensive
bibliography (see [72, 71, 59] and references therein) and was extended to multivariable
controllers [70]. Most of these papers illustrate the IFT with a smooth quadratic objective
function, minimized with the Gauss-Newton algorithm. In [78], the nonsmooth absolute
error is used, but a dierentiable optimization algorithm (DFP) is applied. Our approach
here diers both in the choice of the nonsmooth optimization criterion f
, and in the
design of a tailored nonsmooth algorithm as outlined in section 5.3.
Practical aspects The active time sets
1
(/) and
2
(/) are computed via numerical
simulation of the closed-loop system in response to the input signal w, see gure 5.1.
This rst simulation determines the time samples (t
l
)
0lN
that will be used throughout
the optimization phase. Measured output values
_
y(t
l
)
_
must be stored for subsequent
gradient computation. The extension
e
(/) is built from (/) by adding time samples
with largest envelope constraint violation (5.16), up to n
e
(/)) result from n
u
n
y
additional simulations of the closed-loop (gure 5.2) at the
same time samples (t
l
)
0lN
.
5.4. Applications 115
5.4 Applications
In this section, we illustrate our nonsmooth technique on a variety of examples including
structured H
control, reliable control and time response shaping. We insist on the high
exibility of the proposed nonsmooth techniques and its excellent success in solving hard
practical problems.
5.4.1 Application to observer-based controller design
Observer-based controllers suit many realistic control problems, whenever the system state
variables are not directly available for feedback synthesis. Unlike unstructured dynamic
controllers, they have a straightforward physical interpretation, since controller states are
simply estimates of the plant states. In addition, observer-based controllers are easier to
implement and to re-tune.
Let x be an asymptotic estimate of the state vector x of the plant P (5.1). We assume
that (C
2
, A) is detectable, and that (A, B
2
) is stabilizable. As is well known, the estimate
x is obtained through the full-order Luenberger observer:
x = A x +B
2
u +K
f
(y C
2
x), (5.24)
where K
f
R
np
2
is the state estimator gain. The controlled input is u = K
c
x, where
K
c
R
m
2
n
is the state feedback gain. With the notations in (5.3), we get
/() =
_
A
K
B
K
C
K
D
K
_
=
_
A B
2
K
c
K
f
C
2
K
f
K
c
0
_
(5.25)
where the controller parameters are described as
_
vec K
f
vec K
c
_
R
n(p
2
+m
2
)
.
This state-space realization of the standard full-order observer-based controller is linear
in . It follows that the Jacobian matrix /
t
() only depends on the plant data A, B
2
and
C
2
.
Nonsmooth H
_
36.6 18.923 0.414
1.9 0.983 77.8
0 57.3 0
_
_
_
x
G
u
G
_
(5.26)
The exogenous inputs are the disturbances w
1
(on the actuator signal) and w
2
(on the
measurement). Two frequency domain weights W
u
(s) and W
y
(s) are applied to u =
u
G
w
1
respectively to y = y +w
1
, dening the regulated outputs z
1
and z
2
. They are
W
u
(s) =
50s + 5000
s + 10000
, and W
y
(s) =
0.5s + 1.5
s + 10000
. (5.27)
116 Chapitre 5. Commande temporelle et frquentielle par techniques non lisses
The resulting augmented model (gure 5.3) has order 4, with state vector x = [x
G
, x
u
, x
y
]
T
,
and the realization used in our computations is the following:
P(s) :
_
_
x
z
y
_
_ =
_
_
36.6 18.923 0 0 0.414 0 0.414
1.9 0.983 0 0 77.8 0 77.8
0 0 10000 0 0 0 512
0 3667.2 0 10000 0 64 0
0 0 966.8 0 0 0 50
0 28.65 0 78.102 0 0.5 0
0 57.3 0 0 0 1 0
_
_
_
_
x
w
u
_
_
(5.28)
Notice that the static gains K
f
and K
c
depend on the state-space realization chosen for
P, since the controller state variable x estimates x.
z
1
z
2
y
+
+
w
1
+
+
W
u
W
y
G
u
K()
w
2
Figure 5.3: Observer-based feedback with augmented model.
Running our nonsmooth algorithm to minimize |T
wz
(/())|
controller = 0.5109.
5.4.2 Application to reliable control
Reliable or fault-tolerant control has to guarantee satisfactory stability and performance
in nominal conditions as well as in scenarios, where some system components turn faulty
or deviate from nominal conditions. The active approach uses a fault detection scheme
or identication procedure to adjust the controller in real-time to ensure safe opera-
tion. Here the focus is on the passive approach, where a single controller is required
to handle most plausible default scenarios. See [129] and the survey [111] for a com-
prehensive view. We reformulate this problem as a doubly structured design problem
5.4. Applications 117
and use our nonsmooth method to derive a local solution. In gure (5.4) we show on
the left side various synthesis scenarios, where a single (unstructured or already struc-
tured) controller /() must simultaneously minimize the closed-loop performance chan-
nels [[T
w
i
z
i
(/())[[
synthesis problem, where the sought controller K() has a repeated block-diagonal
structure K() = 1 /(). See the right-hand side of gure 5.4. A state-space represen-
tation of the plant P(s) is readily derived as
_
_
A B
1
B
2
C
1
D
11
D
11
C
2
D
21
D
22
_
_ =
_
_
diag
i=1,...,N
A
i
diag
i=1,...,N
B
i
1
diag
i=1,...,N
B
i
2
diag
i=1,...,N
C
i
1
diag
i=1,...,N
D
i
11
diag
i=1,...,N
D
i
12
diag
i=1,...,N
C
i
2
diag
i=1,...,N
D
i
21
diag
i=1,...,N
D
i
22
_
_
.
where the superscript i refers to the ith scenario and where appropriate dynamic augmen-
tations have been performed beforehand for dynamic controllers. Note that the controller
is now doubly-structured in the sense that the already structured data /() are repeated
in the block-diagonal structure I
N
/(), which we describe by the diagonal block rep-
etition operator 1 above (see gure 5.4). This ts nicely into the general framework
presented in sections 5.2 and 5.3, because the chain rule can obviously be used to cope
with a diagonal augmentation 1 / of controller parameterizations.
118 Chapitre 5. Commande temporelle et frquentielle par techniques non lisses
P
w
N
z
N
y
N
P
N
w
1
z
1
y
1
P
1
w
z
y
u
N
u
1
u
.
.
.
.
.
.
/()
T
w
N
z
N
(/())
T
w
1
z
1
(/())
/()
/()
T
wz
(/())
/()
Figure 5.4: Reliable control based on N scenarios.
We illustrate the synthesis technique by means of the following example from [142].
It consists of 10 plants G
0
to G
9
with G
0
(s) =
1
s1
, the nominal model and
G
1
(s) =
6.1
s
2
+5.1s6.1
, G
2
(s) =
1.425
s1.425
G
3
(s) =
0.67
s0.67
,
G
4
(s) =
(s14.29)
(s+14.29)(s1)
, G
5
(s) =
4900
(s1)(s
2
+21s+4900)
, G
6
(s) =
4900
(s+777.7)(s+6.301)(s1)
,
G
7
(s) =
1562510
6
(s+50)
6
(s1)
, G
8
(s) =
2.9621(s9.837)(s+0.7689)
(s+32)(s1)(s+0.5612)
, G
9
(s) =
4.991(s
2
+3.672s+34.85)
(s+32)(s+7.241)(s1)
,
as faulty modes. The design objective is to minimize
max
i=0,...,9
[[W(s)T
w
i
z
i (K)[[
, where T
w
i
z
i (I +G
i
(s)K(s))
1
(5.30)
and W(s) =
0.25s+0.6
s+0.006
is a weighting function penalizing the low frequency range to achieve
good tracking properties in response to a step command. Dierent controller structures
/() will be considered in the sequel. The author in [142] investigated various options
including a controller with good nominal performance K
1
(s) =
10(0.9s+1)
s
, a robust con-
troller K
2
(s) =
2.8s+1
s
, and a generalized internal model control (GIMC) implementation
based on both K
1
(s) and K
2
(s), which we shall denote K
gimc
(s). The latter is a 6th
order controller with Youla parameter
Q
0.68889s(s + 1.452)(s + 1)
(s + 1.111)(s
2
+ 1.8s + 1)
.
5.4. Applications 119
Step responses of these controllers for nominal and faulty modes of the plant are
displayed in gures 5.6 to 5.8. Clearly, K
1
has good nominal performance, but is not
satisfactory on faulty modes. On the other hand, controller K
2
shows very robust per-
formance, but responses are slower and the controller performs poorly in the nominal
case. The GIMC implementation dramatically improves the situation, since good nomi-
nal performance is maintained and the controller also gives good performance on faulty
modes.
We have used the proposed nonsmooth technique to minimize the worst case objective
in (5.30) over the set of PID feedback controllers with parametrization given in (5.6). The
following parameter values were obtained:
= 0.0100, R
i
= 1.1589, R
d
= 0.4883, D
K
= 4.0263 .
The achieved max H
norm is 0.4886, and step responses with this controller are shown
in gure 5.9. This controller shows clearly better performance than K
1
(s) or K
2
(s), but
performs slightly worse than K
gimc
(s). Note that the GIMC controller can also be viewed
as a two-degree of freedom controller [141], which suggests using a two-degree of freedom
architecture to improve the PID feedback controller. We have used the model following
synthesis interconnection shown in gure 5.5, where G
ref
is a reference model to compute
a second-order feedforward controller F(s) with xed feedback controller K(s) = K
PID
.
As before, the feedforward controller is required to minimize the worst-case tracking error
from r to e over simultaneously the nominal model and the faulty modes
minimize
F(s)
max
i=0,...,9
[[T
i
re
(F(s))[[
.
With a slow reference model
G
ref
=
11.11
s
2
+ 6s + 11.11
,
the following feedforward controller was obtained
F(s) =
3.0642(s + 1.976)(s + 1.273)
(s + 3.796)(s + 1.049)
.
With a faster reference model
G
ref
=
28.7
s
2
+ 7.5s + 28.7
,
we have obtained
F(s) =
1.1684(s
2
+ 1.46s + 18.51)
s
2
+ 5.015s + 18.39
.
Note that the overall controller has order 4 since it consists in a PID controller in the
feedback path and a second-order controller for feedforward action. Steps responses are
given in gures 5.10 and 5.11, respectively, for slow and fast feedforward controllers. Note
that the latter controller appears to be the best obtained so far in terms of settling time
and overshoot.
120 Chapitre 5. Commande temporelle et frquentielle par techniques non lisses
+
G
ref
(s)
e
K(s)
G(s)
+
+
+
F(s)
r
Figure 5.5: Feedforward design with reference model.
0 1 2 3 4 5 6 7 8 9 10
1
0.5
0
0.5
1
1.5
2
2.5
3
time (sec.)
o
u
t
p
u
t
Figure 5.6: Step response with perfor-
mance controller.
0 1 2 3 4 5 6 7 8 9 10
0.5
0
0.5
1
1.5
2
time (sec.)
o
u
t
p
u
t
Figure 5.7: Step response with robust
controller.
5.4. Applications 121
0 1 2 3 4 5 6 7 8 9 10
0.5
0
0.5
1
1.5
2
time (sec.)
o
u
t
p
u
t
Figure 5.8: Step response with general-
ized internal model controller.
0 1 2 3 4 5 6 7 8 9 10
0.5
0
0.5
1
1.5
2
time (sec.)
o
u
t
p
u
t
Figure 5.9: Step response with nons-
mooth PID controller.
0 1 2 3 4 5 6 7 8 9 10
0.5
0
0.5
1
1.5
2
time (sec.)
o
u
t
p
u
t
Figure 5.10: Step response with PID
+ feedforward control, slow reference
model.
0 1 2 3 4 5 6 7 8 9 10
0.5
0
0.5
1
1.5
2
time (sec.)
o
u
t
p
u
t
Figure 5.11: Step response with PID +
feedforward control, fast reference model.
5.4.3 Application to PID time response shaping
In order to illustrate the ability of the proposed nonsmooth technique to handle time-
domain constraints and controller structure, the following test examples from [88] have
been used
G
1
(s) =
1
20s+1
e
5s
, G
2
(s) =
1
20s+1
e
20s
G
3
(s) =
1
(10s+1)
8
, G
4
(s) =
5s+1
(10s+1)(20s+1)
.
(5.31)
The time delays are replaced by a third-order Pad approximation, which generates non-
minimum phase zeros in the transfer functions G
1
and G
2
. Each of these plants is regu-
lated by a two-degree-of-freedom (2-DOF) PID controller, as shown in gure 5.12, with
K
r
(s) = K
p
+
K
i
s
and K
y
(s) = K
p
+
K
i
s
+
K
d
s
1+s
.
122 Chapitre 5. Commande temporelle et frquentielle par techniques non lisses
K
r
(s) G(s)
K
y
(s)
u y + r
Figure 5.12: 2-DOF with PID.
/()
r
_
y P
G
w = r z = y
y
u
Figure 5.13: Equivalent standard form to
2-DOF with PID.
This 2-DOF controller structure is equivalent to the following state-space representa-
tion, in the framework shown in gure 5.13, with the notations from (5.7):
/() =
_
_
0 0 0 R
i
0
0 0 R
d
0
0 0 0 0 R
i
1 1 1 D
K
D
K
+
R
d
_
, (5.32)
where the search space is = [, R
i
, R
d
, D
K
]
T
R
4
.
For each of the four systems (5.31), the envelope functions were chosen piecewise
constant, in order to constrain the overshoot z
os
and the settling time at 2% of the
steady state. Using the indicatrix function 1
[a,b[
to restrict to intervals, we dene
z
max
= (1 + z
os
) 1
[0,t
s
[
+ 1.02 1
[t
s
,+[
z
min
=
_
on [0, t
s
[
0.98 on [t
s
, +[
(5.33)
The vector was initialized with the PID parameters obtained with the Ziegler-Nichols
(ZN) tuning rules in [88], a heuristic which gives unsatisfactory step responses for the
plants (5.31), with high overshoot and slow settling times. The results are summarized in
table 5.1, where NS indicates the controller parameters obtained from the nonsmooth
optimization. They are compared to those from [88], denoted by IFT. The corresponding
step responses are drawn in gures 5.14 to 5.17.
Obviously, arbitrary low z
os
or t
s
are not necessarily achievable with the structured
controller /(). If the chosen time envelope is too restrictive, the algorithm will converge
to a minimizer of f
(i.e.
e
( ) 0) with f
> 0.
Conversely, as the algorithm returns a local minimizer , f
= 3.4033 10
2
(resp.
f
= 1.3907 10
2
) at convergence, which was an unsatisfactory local minimum. We got
around this diculty by restarting the algorithm from a new point, denoted by NEW
in table 5.1.
5.4. Applications 123
plant contr. K
p
K
i
K
d
t
s
(s) z
os
(%)
G
1
ZN (init) 10
3
4.0588 0.4388 9.3860 46.22 46.92
G
1
IFT 10
3
3.6717 0.1324 7.7311 21.34 5.37
G
1
NS 10
3
3.3315 0.1221 9.3874 20.94 1.95
G
2
NEW (init) 10
3
0.5000 0.0500 5.0000 319.45 45.72
G
2
IFT 10
3
0.9303 0.0309 5.6332 50.15 0.90
G
2
NS 9.9992 10
4
0.9361 0.0305 4.9920 49.35 1.73
G
3
NEW 10
3
0.5000 0.0100 10.0000 235.54 0.11
G
3
IFT 10
3
0.6641 0.0123 12.0959 131.99 1.00
G
3
NS 10
3
0.6590 0.0121 9.9997 129.91 1.97
G
4
ZN 10
3
3.5294 0.2101 14.8235 69.22 53.82
G
4
IFT 10
3
3.0279 0.0654 18.4075 28.31 0.53
G
4
NS 10
3
2.8947 0.0615 14.8247 25.58 1.67
Table 5.1: PID parameters, settling time and overshoot.
0 10 20 30 40 50 60 70 80 90 100
0
0.5
1
1.5
t
z
(
t
)
ZN (initial)
IFT
NS
z
max
z
min
Figure 5.14: G
1
step responses with
PIDs.
0 50 100 150 200 250 300
0
0.5
1
1.5
t
z
(
t
)
initial
IFT
NS
z
max
z
min
Figure 5.15: G
2
step responses with
PIDs.
0 50 100 150 200 250 300 350 400 450 500
0
0.2
0.4
0.6
0.8
1
1.2
t
z
(
t
)
initial
IFT
NS
z
max
z
min
Figure 5.16: G
3
step responses with
PIDs.
0 20 40 60 80 100 120 140 160 180 200
0.2
0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
t
z
(
t
)
ZN (initial)
IFT
NS
z
max
z
min
Figure 5.17: G
4
step responses with
PIDs.
124 Chapitre 5. Commande temporelle et frquentielle par techniques non lisses
Finally, we mention that we did not use any temporal mask as is classically done in
the IFT approach to avoid spurious solutions.
5.5 Conclusion
We have described a general and very exible nonsmooth algorithm to compute locally
optimal solutions to synthesis problems subject to frequency- or time-domain constraints.
Our method oers the new and appealing possibility to integrate controller structures of
practical interest in the design. We have now several encouraging reports of successful
experiments, which advocate the use of nonsmooth mathematical programming techniques
when it comes to solving dicult (often NP-hard) design problems. The results obtained
in this paper corroborate previous studies on dierent problem classes. Extension of our
nonsmooth technique to problems involving a mixture of frequency- and time-domain
constraints seems a natural next step, which is near at hand. For time-domain design, we
have noticed that the proposed technique assumes very little about the system nature,
except the access to simulated responses. A more ambitious goal would therefore consider
extensions to nonlinear systems.
Ackowledgements
The authors acknowledge nancial support from the Fondation dentreprise EADS (under
contract Solving challenging problems in feedback control), and from the Agence Nationale
de Recherche (ANR) (under project NT05 Guidage).
Chapitre 6
Optimisation non lisse du second
ordre pour la synthse H
Les applications dveloppes dans les chapitres prcdents sappuient toutes sur le
mme schma algorithmique doptimisation non lisse, prsent dans la premire partie
(section 2.3.3), rappel et gnralis plusieurs reprises (sections 3.5.1, 4.2.5 et 5.3). Il
sagit dune mthode du premier ordre, convergence R-linaire en gnral. Nous avons
dj propos daner le modle quadratique servant la construction de la direction de
descente, laide dune mise jour de type BFGS (voir section 3.5.2). Sa mise en uvre
dans un cadre non direntiable est cependant tout fait heuristique, et, si un gain en
terme de nombre ditrations a pu tre observ sur certains problmes de stabilisation
(chapitre 3), nous ne pouvons cependant conclure de faon gnrale.
Ce dernier chapitre dcrit un algorithme du second ordre pour la synthse H
, dont
le mcanisme dire fortement de lapproche prcdente : le problme non lisse est tout
dabord reformul comme un problme semi-inni doptimisation non linaire. Celui-ci est
ensuite ramen par rduction locale un nombre ni de contraintes, et peut tre rsolu par
la mthode SQP (Programmation Quadratique Successive), dont la convergence locale
1
est superlinaire. Lalgorithme propos couple la mthode SQP lapproche du premier
ordre prcdente, an de garantir la proprit de convergence globale.
Les exprimentations numriques montrent un apport indiscutable de cette mthode en
terme de nombre ditrations ncessaires pour la convergence. Le gain en temps de calcul
est cependant moins net : trs important dans certains cas, inexistant dans dautres. En
eet, la globalisation de lalgorithme sappuie sur un recours la mthode du premier
ordre, et ncessite donc chaque itration de calculer deux directions : celle de Cauchy
(premier ordre) et celle de Newton (SQP), pour lesquelles les gradients et hessiens sont
calculs de manire exacte.
Enn, ces travaux tant chronologiquement antrieurs aux applications prsentes dans
les trois chapitres prcdents, nous navons pas envisag le cas, pourtant essentiel en pra-
tique, des correcteurs structurs. La description de ces travaux dans les pages qui suivent
est cependant motive par leur originalit en regard des dveloppements prcdents, et
1
Un algorithme doptimisation converge localement vers un minimum x
synthesis
V. Bompart, D. Noll and P. Apkarian
Article publi dans Numerische Mathematik,
107(3) :433-454, 2007.
Abstract
The standard way to compute H
output
feedback control design problem, which is based on nonlinear and nonsmooth mathemat-
ical programming techniques. Our approach avoids the use of Lyapunov variables, and is
therefore exible in many practical situations.
6.1 Introduction
Well designed feedback control systems in high technology elds are expected to respond
favorably to a list of concurring performance specications such as stability, good reg-
ulation against disturbances, desirable responses to commands, robustness, control law
specications, system security, and much else. In addition, controllers should be hardware
implementable at low cost, and should allow a exible adaption to strategic changes dur-
ing the model building process. These ever growing demands have shown the limitations
of currently used mathematical tools for synthesis, which are based on solving algebraic
Riccati equations (AREs). The rise of linear matrix inequalities (LMIs) since the early
1990s has certainly improved the situation, but the main limitations of these approaches
persist.
In response, various new design methods have been proposed since the late 1990s,
including methods from global optimization, [16, 18, 138, 124], matrix inequality con-
strained nonlinear programming, [50, 86, 87, 14, 134], augmented Lagrangian methods,
[49, 106], eigenvalue optimization, [6, 8, 9, 76], and others. Presently we discuss a new
strategy for H
_
x
z
y
_
_ =
_
_
A B
1
B
2
C
1
D
11
D
12
C
2
D
21
0
p
2
m
2
_
_
_
_
x
w
u
_
_ ,
where s is the Laplace variable, x R
n
is the state of the system, u R
m
2
the control,
w R
m
1
an exogenous signal (noise, commands), z R
p
1
the regulated variable (response
of the system to the input w), and y R
p
2
the measured output. The goal of feedback
control synthesis is to design an output feedback controller
K(s) :
_
x
K
u
_
=
_
A
K
B
K
C
K
D
K
_ _
x
K
y
_
where x
K
R
n
K
, A
K
R
n
K
n
K
, B
K
R
n
K
p
2
, C
K
R
m
2
n
K
and D
K
R
m
2
p
2
, such
that the following three criteria are met:
Internal stability: The closed-loop system obtained by substituting K into P is expo-
nentially stable.
Performance: Among all internally stabilizing controllers, K minimizes the H
-norm
of the performance channel w z.
Control law specications: The controller K may be subject to additional structural
constraints. For instance, one may look for decentralized controllers, reduced-order con-
trollers, PID, feed-forward, lead lag structures, etc.
Let us explain the performance requirement for the case u = Ky of a static output
feedback controller, where D
K
= K R
m
2
p
2
. Here the closed-loop transfer function for
the performance channel w z is
T
wz
(K)(s) = T(K) +c(K)
_
sI
n
/(K)
_
1
B(K) (6.1)
where the closed loop data are
/(K) = A +B
2
KC
2
B(K) = B
1
+B
2
KD
21
c(K) = C
1
+D
12
KC
2
T(K) = D
11
+D
12
KD
21
For brevity, we shall subsequently write T(K, ) T
wz
(K)(j). Denoting by
1
the
maximum eigenvalue function on the space of Hermitian matrices, and by the maximum
singular value of m
1
p
1
matrices, we dene
f(K, ) =
1
(T(K, )
H
T(K, )) = [ (T(K, ))]
2
,
where Z
H
stands for the conjugate transpose of the complex matrix Z. The square of the
H
= max
[0,]
f(K, ). (6.2)
6.3. Approach via semi-innite programming 129
Optimizing the performance of the controller therefore leads to minimizing the function
f(K) = max
[0,]
f(K, ) over the set o of all closed-loop exponentially stabilizing
controllers K R
m
2
p
2
. Notice that f is nonsmooth with two possible sources of nons-
moothness: (a) the innite max-operator, and (b) the nonsmoothness of
1
, which may
lead to nonsmoothness of f(, ) for xed .
Remark. A diculty is that the set of exponentially stabilizing controllers o is open and
not a constraint set in the usual sense of nonlinear programming. We have observed that
it is usually possible to ignore the constraint K o, and start the minimization (6.3)
with an initial closed-loop stabilizing controller K o. The fact that |T
wz
(K)|
is
minimized, and therefore stays nite, very often implies closed-loop stability of the limit
point
K. That is why we shall consider program
min
KR
m
2
p
2
f(K) = |T
wz
(K)|
2
.
(6.3)
under the implicit assumption that iterates K
k
and the limit
K are closed-loop stabilizing.
In those cases where |T
wz
(K)|
, |T
stab
(K)|
2
_
, (6.4)
and we are now sure that f(K) < implies closed-loop stability of K. Notice that f is
again of the form (6.3) if a transfer matrix with the two diagonal blocks T
wz
and T
stab
is introduced.
Remark. Our approach to H
norm is avoided
and replaced by a matrix inequality using the bounded real lemma [30]. In solving (6.3)
directly we dispense with Lyapunov variables, which leads to a spectacular reduction in
the number of unknowns, especially when small controllers for large systems are sought.
In exchange we have to deal with nonsmoothness and with semi-innity, and those are
addressed during the next sections.
First-order nonsmooth optimization methods for (6.3) have for the rst time been pro-
posed in [6], and have been further developed in [8, 10, 9]. Here we propose a second-order
approach, which when combined with the rst-order technique speeds up the minimization
process at the end, improves the nal precision, and serves as an additional convergence
certicate.
6.3 Approach via semi-innite programming
In the previous section we have introduced program (6.3) for the case of static controllers,
and we shall continue to do so because the general case of dynamic K may be reduced to
130 Chapitre 6. Optimisation non lisse du second ordre pour la synthse H
the static case by prior dynamic augmentation of the system. More precisely, the following
substitutions are performed:
K
_
A
K
B
K
C
K
D
K
_
, A
_
A 0
0 0
k
_
B
1
_
B
1
0
_
, C
1
_
C
1
0
_
B
2
_
0 B
2
I
k
0
_
, C
2
_
0 I
k
C
2
0
_
, D
12
_
0 D
12
_
, D
21
_
0
D
21
_
.
(6.5)
Now we have the following
Lemma 6.3.1. For a closed-loop stabilizing controller K, the set of active frequencies
(K) [0, ] : f(K) = f(K, ) is either nite, or (K) = [0, ], that is,
f(K, ) = f(K) for all .
Proof. Notice that as K is xed, we are concerned with a one parameter family
T(K, )
H
T(K, ) of m
1
m
1
Hermitian matrices. Here the bundle of the m
1
eigenvalues
i
_
T(K, )
H
T(K, )
_
as functions of has a very specic structure: it consists of m
1
real analytic functions
i
(), R; see e.g. [79, p. 82, p. 138], or [91]. More precisely,
there are m
1
real analytic functions
1
, . . . ,
m
1
such that
1
(T(K, )), . . . ,
m
1
(T(K, )) = [
1
()[, . . . , [
m
1
()[, (6.6)
where
i
(T(K, )) are the singular values of T(K, ). In consequence, the maximum
eigenvalue function (6.2) is the maximum of m
1
real analytic functions
2
i
(). These
2
i
are also analytic at , because we are dealing with a stable (proper) transfer matrix
T(K, ), which is rational as a function of . (The statement above may be made more
precise: There exist functions
i
which are analytic on a strip B on the Riemann sphere
S
2
= C , such that B contains the meridian S
1
= R passing through the
north pole , with
i
taking real values on S
1
, such that (6.6) is satised for all S
1
.)
Suppose now (K) is innite. Then one of these m
1
real analytic functions
2
i
has an
innity of maxima on S
1
with the same value f(K). Since S
1
is compact, these maxima
have an accumulation point . In terms of the analytic extensions on B, that means the
Taylor expansion of the
2
i
in question at is the same as the Taylor expansion of the
function with constant value f(K). This implies indeed
2
i
() = f(K) for all .
Remark. 1) The stable transfer function : s
s1
s+1
satises (j)(j) = 1, so it is
theoretically possible that (K) = [0, ]. This may even arrive in practice: It is known
that the so-called central (full order) optimal H
-controller K
, ) at or all-pass.
2) Notice also that we cannot omit the frequency = in the discussion, as witnessed
by the stable transfer function (s) : s
s+1
s+2
. Here max
[0,]
(j)(j) = 1 is
attained at = .
3) The frequencies (K) will be called the peaks of the frequency curve at
K. Local maxima of the frequency curve f(K, ) which are not peaks will be
called secondary peaks. Notice that the above argument also shows that the number of
secondary peaks is nite.
6.3. Approach via semi-innite programming 131
For the technical formulas we shall concentrate on those K, where the set of active
frequencies or peaks (K) = [0, ] : f(K) = f(K, ) is nite. In practice we have
never observed at frequency curves when the order of the controller is smaller than the
order of the plant.
During the following we will analyze the case where the multiplicity of
1
(T(K, )
H
T(K, ))
is one at all active frequencies . This is motivated by practical considerations, because
nonsmoothness (b) never occurred in our tests. The necessary changes required for the
general case will be discussed in Section 6.4.3.
It is useful to cast program (6.3) as an equivalent constrained semi-innite program
minimize t
subject to f(K, ) t 0, [0, ]
(6.7)
with decision variable (K, t). In [67] three approaches to semi-innite programming are
discussed: exchange of constraints, discretization, and local reduction. Here we use a local
reduction method. The main ideas are recalled below; see also [77] for this approach.
Let (
K,
t), with
t = f(
K), be a local solution of (6.7). Indexing the active frequencies
(
K) =
1
, . . . ,
p
at
K, we suppose that the following conditions are satised
(i) f
t
(
K,
i
) = 0, i = 1, . . . , p.
(ii) f
tt
(
K,
i
) < 0, i = 1, . . . , p.
(iii) f(
K, ) < f(
K), for every / (
K) =
1
, . . . ,
p
.
These assumptions dene the setting denoted as the standard case in semi-innite
programming [67]. The three conditions express the fact that the frequencies
i
(
K)
are the strict global maximizers of f(
K, ). Notice that condition (iii) is the niteness
hypothesis already mentioned, justied by Lemma 6.3.1, while condition (ii) is slightly
conservative, because the necessary optimality condition only tells us that f
tt
(
K,
i
) 0.
Remark. Notice that f(
K, ) is twice dierentiable at each
i
even without the hypothesis
that the maximum singular values of the T(K,
i
) have multiplicity 1. This is because the
maximum singular value function (G(j)) of a stable transfer matrix G is always
twice continuously dierentiable at its local maxima [28].
Conditions (i) and (ii) allow the implicit function theorem, according to which we can
nd a neighborhood U of
K, and neighborhoods V
i
of
i
(i = 1, . . . , p), together with
C
1
-functions
i
: U V
i
, such that the following conditions are satised
(iv)
i
(
K) =
i
, i = 1, . . . , p.
(v) f
t
(K,
i
(K)) = 0, i = 1, . . . , p.
(vi) Whenever K U and V
i
satisfy f
t
(K, ) = 0, then =
i
(K).
132 Chapitre 6. Optimisation non lisse du second ordre pour la synthse H
(
K,
i
) < 0, so by shrinking U if required, we may arrange that
f
tt
(K,
i
(K)) < 0 for K U. Then
i
(K) are local maxima of f(K, ). Moreover, by
(vi),
i
(K) is the only critical point of f(K, ) in V
i
. We then have the following
Lemma 6.3.2. Under conditions (i) (iii) the neighborhood U of
K may be chosen
such that max
[0,]
f(K, ) = max
i=1,...,p
f(K,
i
(K)) for every K U. In particular, (K)
1
(K), . . . ,
p
(K) for every K U.
Proof. Choose U and V
i
such that conditions (iv) - (vi) are satised. Suppose that
contrary to the statement there exists a sequence K
r
K such that
m
r
max
i=1,...,p
f(K
r
,
i
(K
r
)) < max
[0,]
f(K
r
, ) =: M
r
.
Pick
r
where the maximum M
r
is attained. Passing to a subsequence, we may assume
for some
[0, ]. Since m
r
f(
K) and M
r
f(
K), we have f(
K) =
f(
K,
=
i
for some i = 1, . . . , p. Then (K
r
,
r
) UV
i
from some index r
0
onwards.
But f
t
(K
r
,
r
) = 0, because
r
is a maximum at K
r
, so condition (vi) implies
r
=
i
(K
r
). That shows m
r
= M
r
for r r
0
, a contradiction.
Altogether, we have shown that program (6.3) is locally equivalent to the standard
constrained nonlinear program
minimize t
subject to f (K,
i
(K)) t 0, i = 1, . . . , p
(6.8)
which we may solve via a SQP method. In the next section we will discuss how this
should be organized, and that the jet information may be computed eciently. Local
convergence of this approach will be assured under the following hypothesis
(vii) f
t
K
(
K,
1
), . . . , f
t
K
(
K,
p
) are linearly independent
because this guarantees that program (6.8) satises the linear independence constraint
qualication hypothesis (LICQ).
6.4 Solving with SQP
6.4.1 Quadratic tangent subproblem
In this section we assume that for K in a neighborhood of
K, the set
1
(K), . . . ,
p
(K)
is available. The computation of this set will be discussed in Section 6.5.1.
In order to derive the tangent quadratic program for (6.8), let us write G
i
(K, t) =
f (K,
i
(K)) t, F(K, t) = t. The Lagrangian of (6.8) is then
L(K, t; ) = F(K, t) +
p
i=1
i
G
i
(K, t),
6.4. Solving with SQP 133
so that
L
t
K
(K, t; ) =
p
i=1
i
(f
t
K
(K,
i
(K)) +f
t
(K,
i
(K))
t
i
(K))
=
p
i=1
i
f
t
K
(K,
i
(K))
using condition (v) above. Similarly,
L
t
t
(K, t; ) = 1
p
i=1
i
.
The second-order elements are L
tt
Kt
(K, t; ) = 0, L
tt
tt
(K, t; ) = 0, and
L
tt
KK
(K, t; ) =
p
i=1
i
[f
tt
KK
(K,
i
(K))
+f
t
(K,
i
(K))
tt
i
(K)
+f
tt
K
(K,
i
(K))
t
i
(K)
]
=
p
i=1
i
_
f
tt
KK
(K,
i
(K)) +f
tt
K
(K,
i
(K))
t
i
(K)
_
,
again using condition (v). Dierentiating (v) gives
0 = f
tt
K
(K,
i
(K)) +f
tt
(K,
i
(K))
t
i
(K),
which allows us to express
t
i
(K) through derivatives of f. Altogether,
L
tt
(K, t; ) =
_
L
tt
KK
(K, t; ) 0
0 0
_
with
L
tt
KK
(K, t; ) =
p
i=1
i
[f
tt
KK
(K,
i
(K))
f
tt
K
(K,
i
(K)) f
tt
(K,
i
(K))
1
f
tt
K
(K,
i
(K))
].
The tangent quadratic program is now
minimize t +
1
2
K
L
tt
KK
(K, t; )K
subject to f (K,
i
(K)) +f
t
K
(K,
i
(K))
K t t 0,
i = 1, . . . , p
t R, K R
m
2
p
2
(6.9)
134 Chapitre 6. Optimisation non lisse du second ordre pour la synthse H
_
A(u) = Q(u)(u)Q(u)
H
,
(u) = diag
_
1
(u), . . . ,
n
(u)
_
and
Q(u) =
_
q
1
(u), . . . , q
n
(u)
_
.
For a xed k and a given u
0
R
p
, under the assumption that
k
(u
0
) is a simple (nonde-
generate) eigenvalue of A(u
0
),
k
and q
k
are dierentiable at u
0
, and for all u in R
p
, we
have
t
k
(u
0
).u = q
k
(u
0
)
H
_
A
t
(u
0
).u
_
q
k
(u
0
)
q
t
k
(u
0
).u =
n
i=1
i,=k
q
i
(u
0
)
H
_
A
t
(u
0
).u
_
q
k
(u
0
)
k
(u
0
)
i
(u
0
)
q
i
(u
0
)
Notice from the second equality that q
t
k
(u
0
).u is orthogonal to the eigenvector q
k
(u
0
).
Furthermore we derive from these expressions that
k
is twice dierentiable at u
0
, and
for all u
1
, u
2
in R
p
, dropping the dependency on u
0
for the right hand side terms, we
get
tt
k
(u
0
).(u
1
, u
2
) = q
H
k
(A
tt
.(u
1
, u
2
)) q
k
+ 2 Re
_
_
_
_
n
i=1
i,=k
q
H
k
(A
t
.u
1
) q
i
q
H
i
(A
t
.u
2
) q
k
i
_
_
_
_
.
We specialize to the case of f(K, ), the squared maximum singular value of the
transfer matrix T(K, ). Then u = (K, ) and A(u) = A(K, ) = T(K, )
H
T(K, ), and
f =
1
A.
We note eigenvalues of T(K, )
H
T(K, ) as (
i
)
1im
1
and an orthonormal basis of
associated eigenvectors as (q
i
)
1im
1
. We drop the dependency on K and for ease of
notation. We assume that
1
>
2
3
m
1
. Applying the above formulae gives:
f
t
K
(K, ).K = 2 Re
_
q
H
1
T
H
(T
t
K
.K)q
1
_
f
t
(K, ) = 2 Re
_
q
H
1
T
H
T
t
q
1
_
6.4. Solving with SQP 135
f
tt
KK
(K, ).(K
1
, K
2
) = 2 Re
_
_
q
H
1
_
(T
t
K
.K
2
)
H
T
t
K
.K
1
+T
H
T
tt
KK
.(K
1
, K
2
)
_
q
1
+
m
1
i=2
q
H
1
_
T
H
T
t
K
.K
1
+ (T
t
K
.K
1
)
H
T
_
q
i
q
H
i
_
T
H
T
t
K
.K
2
+ (T
t
K
.K
2
)
H
T
_
q
1
i
_
_
f
tt
(K, ) = 2 Re
_
_
q
H
1
_
T
t
H
T
t
+T
H
T
tt
_
q
1
_
_
+ 2
m
1
i=2
q
H
1
_
T
H
T
t
+T
t
H
T
_
q
i
i
f
tt
K
(K, ).K = 2 Re
_
_
q
H
1
_
(T
t
K
.K)
H
T
t
+T
H
T
tt
K
.K
_
q
1
+
m
1
i=2
q
H
1
_
T
H
T
t
+T
t
H
T
_
q
i
q
H
i
_
T
H
T
t
K
.K + (T
t
K
.K)
H
T
_
q
1
i
_
_
The rst and second partial derivatives of the transfer function T can be expanded
with the closed-loop state-space matrices /, B and c. Starting out with formula (6.1),
we derive
T
t
K
.K = T
t
K
(K, ).K
=
_
D
12
+c
_
jI
n
/
_
1
B
2
_
K
_
C
2
_
jI
n
/
_
1
B +D
21
_
T
tt
KK
.(K
1
, K
2
) = T
tt
KK
(K, ).(K
1
, K
2
)
=
_
D
12
+c
_
jI
n
/
_
1
B
2
_
_
K
2
C
2
_
jI
n
/
_
1
B
2
K
1
+K
1
C
2
_
jI
n
/
_
1
B
2
K
2
_
_
D
21
+C
2
_
jI
n
/
_
1
B
_
T
t
= T
t
(K, ) T
tt
= T
tt
(K, )
= j c
_
jI
n
/
_
2
B = 2 c
_
jI
n
/
_
3
B
T
tt
K
.K = T
tt
K
(K, ).K
= j
_
_
D
12
+c
_
jI
n
/
_
1
B
2
_
K
_
C
2
_
jI
n
/
_
2
B
_
+
_
c
_
jI
n
/
_
2
B
2
_
K
_
D
21
+C
2
_
jI
n
/
_
1
B
_
_
136 Chapitre 6. Optimisation non lisse du second ordre pour la synthse H
= jcF
2
B
T
tt
= 2cF
3
B
T
tt
K
.K = j
_
G
12
KC
2
F
2
B +cF
2
B
2
KG
21
_
.
Remark. Notice that the transfer matrices F, T, G
12
, G
21
and G
22
can be reliably and
eciently evaluated at the active frequencies (K) with a Hessenberg method, as
explained in [82].
Altogether, we have proved the following
Proposition 6.4.1. Suppose
1
_
T(K,
i
)
H
T(K,
i
)
_
has multiplicity 1 for every
i
1
(K), . . . ,
p
(K). Then the frequency response (w
1
, w
2
) (z
1
, z
2
) of the plant
_
_
x
z
1
z
2
_
_ =
_
_
/(K) B(K) B
2
c(K) T(K) D
12
C
2
D
21
0
p
2
m
2
_
_
_
_
x
w
1
w
2
_
_,
can be used to compute all the jet elements of tangent program (6.9). Indeed, it suces
to partition in order to get T, G
12
, G
21
and G
22
:
T(K, ) = T
w
1
z
1
(K, j) G
12
(K, ) = T
w
2
z
1
(K, j)
G
21
(K, ) = T
w
1
z
2
(K, j) G
22
(K, ) = T
w
2
z
2
(K, j)
Similar formulae for the derivatives of the transfer function T are obtained for dynamic
controllers, using the substitutions (6.5). Proposition 6.4.1 has the practical consequence
that the jet information for (6.9) may be computed using the MATLAB control tool
environment. Our experience shows that this works eciently even for systems with
several hundreds of states.
6.4.3 Multiple eigenvalues
The working hypothesis of the previous section was that leading eigenvalues
1
_
T(K,
i
(K))
H
T(K,
i
(K)
_
6.4. Solving with SQP 137
had multiplicity 1 for all frequencies in the set
1
(K), . . . ,
p
(K) and for all K in a
neighborhood of
K. This hypothesis is motivated by our numerical experience, where we
have never encountered multiple eigenvalues. This is clearly in contrast with experience
in pure eigenvalue optimization problems, where multiplicity of limiting elements is > 1
as a rule, causing failure of those numerical methods which assume smoothness of the
maximum eigenvalue function.
Nonetheless, our approach is still functional if the hypothesis of single eigenvalues at
peak frequencies is dropped. What is needed is the weaker assumption that the eigenvalue
multiplicities r
i
at the limit point
K are known for all active frequencies
i
, i = 1, . . . , p.
More precisely,
1
_
T(
K,
i
)
H
T(
K,
i
_
has multiplicity r
i
, i = 1, . . . , p, and for K su-
ciently close to
K, we have a mechanism to reliably guess r
i
, based solely on the informa-
tion at the current iterate K.
This situation has been discussed by several authors, see e.g. [51, 108, 109, 105].
With r
i
known, SQP can still be applied as follows. Consider X S
m
1
where
1
(X) has
multiplicity r. We replace the maximum eigenvalue function
1
by the average of the rst
r eigenvalues
r
(X) =
1
r
r
=1
(X) .
This function is smooth in a neighborhood of the smooth manifold
/
r
= X S
m
1
:
1
(X) = =
r
(X) >
r+1
(X)
of Hermitian matrices X S
m
1
with eigenvalue multiplicity r, and
1
=
r
on /
r
. The
manifold has co-dimension d
r(r+1)
2
1 in S
m
1
, and in a neighborhood of
X may be
described by d equations h
1
(X) = 0, . . . , h
d
(X) = 0. The tangent space of /
r
can be
computed, see [128, 109], and an SQP approach may be derived, if hypotheses (i) and
(ii) are suitably modied. For pure eigenvalue optimization, this has been discussed in
[105]. The extension to the semi-innite case is clear under the niteness assumption
(iii). Introducing natural analogues of conditions (i), (ii), see for instance [67], we may
then approach minimization of the H
r
i
_
T(K,
i
(K))
H
T(K,
i
(K))
_
t
T(K,
i
(K))
H
T(K,
i
(K)) /
r
i
i = 1, . . . , p
with decision variables (K, t). Its tangent quadratic program uses the explicit form of the
tangent space T(/
r
, X) given in [128].
The case of multiple eigenvalues therefore requires two separate estimation steps. As
before we have to select p primary and secondary peaks. Then we have to estimate the
eigenvalue multiplicity for each T(K,
i
)
H
T(K,
i
). There exist indeed practically useful
ways to estimate the limiting multiplicity r = r
i
of
1
for each frequency
i
. For instance,
with a small threshold > 0, a guess r of r could be obtained by letting
r
< max1, [
1
[,
1
r+1
max1, [
1
[.
We leave the details of this extension to the care of the reader.
138 Chapitre 6. Optimisation non lisse du second ordre pour la synthse H
1
(K, t; ) = t +
1
i=1
[f (K,
i
(K)) t]
+
1
(K, t; ) = t +
1
2
K
L
tt
KK
(K, t; )K+
1
i=1
[K
f (K,
i
(K)) t
+f (K,
i
(K)) t]
+
.
The agreement between the actual reduction and the predicted reduction is measured by
the ratio
=
1
(K, t; )
1
(K +K, t +t; )
1
(0; )
1
(K, t; )
. (6.10)
Then the trust-region radius is managed according to the following algorithm, based on
a basic trust-region algorithm from [45].
6.4. Solving with SQP 139
Fix 0 <
1
2
< 1, 0 < < 1.
1. Initialize. Find an initial closed-loop stabilizing controller K
0
. Fix t
0
=
f(K
0
), p
0
and
0
R
p
0
+
, and set counter k = 0.
2. Peak estimation. Given current K
k
and
k
R
p
k1
+
, estimate number
p
k
and positions of primary and secondary peaks
1
(K
k
), . . . ,
p
k
(K
k
).
3. Model inconsistency. If p
k
diers from p
k1
, or if last step taken was
Cauchy step, then modify old
k
R
p
k1
+
or create a new consistent
multiplier vector
k
R
p
k
+
.
4. Initialize Newton method. Put K
k,0
= K
k
,
k,0
=
k
.
Set
0
= 1 if k = 0 or if k 1 and K
k
= K
C
Otherwise, set
0
=
j+1
.
Set counter j = 0.
5. Newton step. Use current iterate K
k,j
, multiplier estimate
k,j
and trust
region radius
j
to solve (6.9) and generate Newton trial step K
k,j+1
, with
associated multiplier estimate
k,j+1
R
p
k
+
.
6. Decision. Compare predicted progress in the local quadratic model
1
to
progress in
1
using progress ratio
j+1
in (6.10). There are two cases:
Step accepted:
j+1
1
. If even
j+1
2
and |K
k,j
K
k,j+1
|
=
j
, then double radius
j+1
= 2
j
. Otherwise keep
j+1
=
j
.
Put K
N
= K
k,j+1
and p
N
f(K
k
) f(K
N
). Goto step 7.
Step refused:
j+1
<
1
. Put
j+1
=
j
/2, increase counter j, and
go back to step 5.
7. Cauchy step. Given the current iterate K
k
, compute a Cauchy step K
C
away from K
k
using the rst-order method described in [8]. Let p
C
f(K
k
) f(K
C
) 0 be rst-order progress. If p
N
p
C
let K
k+1
= K
N
,
and
k+1
=
k,j+1
, otherwise put K
k+1
= K
C
.
8. Stopping test. If accepted step K
k+1
K
N
, K
C
oers no progress
over K
k
, stop. Otherwise increase counter k and go back to step 2.
In the inner loop j, the penalty parameter
j
for the expressions
1
,
1
is initialized at
j = 0 with
0
= (|
1
|
+ )
1
and updated according to the following rule for j 1,
with a chosen constant > 0
j
=
_
j1
if
1
j1
|
j+1
|
+,
(|
j+1
|
+ 2)
1
otherwise,
In this way,
j
< |
j+1
|
1
and the
1
merit function
1
is exact (see [103]).
Notice that the trust region procedure in the inner loop j between steps 4 and 6 follows
standard lines, but is based on the guess p and
1
(K), . . . ,
p
(K) of model (6.8), so a
few comments are in order here. Namely, since the model may be incorrect, the following
phenomenon may be observed. The Newton step may be successful with regard to (6.8),
i.e., with regard to the inner loop, but may nevertheless fail when matched with reality
in step 7. This is when the rst order step K
C
takes over. In the worst case, our method
therefore converges with the speed of the underlying rst-order technique [8]. Alternative
rst-order methods which could be used instead are for instance [117, 97, 10, 9].
140 Chapitre 6. Optimisation non lisse du second ordre pour la synthse H
A second phenomenon, which also arises due to the necessity to guess p, is addressed
in step 3. It may happen that the new K
k+1
K
N
, K
C
is no longer consistent with
the old model used in the previous step, because the number p had to undergo a change,
or because a rst-order step K
C
had to be taken. The multiplier estimate
k+1
=
k,j+1
from the last instance of step 6 is then of little use. We then restart multipliers afresh, or
we recycle the old ones.
Finally, when p and
i
(K) have been estimated correctly, the quadratic model will
ultimately produce steps with quadratic progress. This means the test in step 8 will
ultimately accept the Newton step, showing that our method has a fair chance to give
local quadratic convergence.
Notice that two kinds of stopping tests are needed. We have to apply a standard second
order test in order to halt the inner loop j if too small a trust region radius (indicating
failure) arises. But even when the inner loop j is stopped with a successful step K
N
, the
rst-order step K
C
may override this decision in cases where the model was incorrect. It
may even happen that the Newton model alerts a local minimum (K
N
= K
k
), but K
C
allows to decrease the function value further. These cases are covered by the test in step
8.
6.5 Technical aspects
6.5.1 Identifying peak frequencies
It is important to observe that our approach diers substantially from standard semi-
innite programming methods in so far as we have a highly ecient procedure to evaluate
the H
.
Fix tolerance > 0.
2. Step. For current , nd the frequency intervals I
1
, . . . , I
+
= (1 + ) max
k=1,...,
G(j
k
). Go back to step 2.
The returned value satises |G|
_
0 B
C
0
__
I D
D
I
_
1
_
C 0
0 B
_
.
We use the fact that
Lemma 6.5.1. is a singular value of G(j) if and only if j is an eigenvalue of H().
Remark. Our approach is robust with respect to the estimation of the cardinality p of
the unknown set (
K). If we overestimate p, we create a program (6.8), where some
constraints remain inactive near
K, a situation which is automatically dealt with by the
SQP solver. What is needed to justify this situation theoretically is an implicit function
for any of these additional secondary peaks. That may be assured by extending conditions
(i) and (ii) to secondary peaks.
6.5.2 Stopping criteria
We implemented two stopping tests in order to check convergence. The rst of them
checks criticality of the iterate (K
k
, t
k
) with multipliers
k
, through the absolute test
|L
t
(K,t)
(K
k
, t
k
;
k
)| <
1
,
where | | is a norm on R
m
2
p
2
+1
.
The second stopping condition checks the relative step length on the decision variables
|(K
k
, t
k
) (K
k1
, t
k1
)| = |(K, t)| <
2
(1 +|(K
k1
, t
k1
)|)
As some SQP iterates may become infeasible for problem (6.8), we also check if
f(K,
i
(K)) t < for all i = 1, . . . , p. The algorithm stops as soon as the current
iterate is feasible and one of the stopping tests is satised.
142 Chapitre 6. Optimisation non lisse du second ordre pour la synthse H
performance
is |T
wz
(K
0
)|
= 6.5091 10
2
.
Table 6.1 shows that the gain of the second-order algorithm NS2 over the existing method
NS1 is signicant in terms of the number of iterations and CPU.
Alg. iterations CPU H
optimality nal
Cauchy Newton time (s) norm criteria [[
NS1 434 0 95.42 6.5098 10
2
9.7008 10
6
2
NS2 2 11 12.23 6.5091 10
2
9.4168 10
6
2
Table 6.1: H
method gives little progress and iterates many times (like AC7 or HE2), the gain is dra-
matic. Other examples like REA3 show less signicant gain or no gain at all, (AC6, AC8)
in cases where no superlinear convergence occurs. Nonetheless, attempting second order
steps is generally benecial, because the nal precision is improved (AC10).
plant n m
2
p
2
alg. iter CPU (s) H
[(K)[
AC6 7 2 4 NS1 79 30.28 4.1140 2
NS2 25 41.45 4.1140 2
AC7 7 1 2 NS1 434 95.42 6.5098 10
2
2
NS2 13 12.23 6.5091 10
2
2
AC8 9 1 5 NS1 14 23.50 2.0050 4
NS2 9 37.20 2.0050 4
AC10 55 2 2 NS1 74 206.16 1.3244 10
1
2
NS2 35 187.47 1.3236 10
1
5
AC10
optimality nal
Cauchy Newton time (s) norm criteria dist
NS1 74 0 206.16 1.3244 10
1
5.4287 10
2
3.4000 10
5
NS2 28 7 187.47 1.3236 10
1
1.1926 10
6
3.3987 10
5
Table 6.3: Comparison of NS1 and NS2 for large scale example Boeing 747 under utter
condition (AC10). Column dist shows nal distance to instability.
needs 35 steps and converges quadratically. Despite the higher cost for setting up and
computing second order steps, this leads to a better CPU. What is more important in
this example, however, is that the second order stopping test is much more stringent
(second column from the right in Table 6.3) than for the rst order method. This is
particularly signicant for the Boeing 767 example, because iterates of both NS1 and
NS2 get extremely close to the hidden boundary of the stability region. The rightmost
column of Table 6.3 gives the distance to instability of the two solutions, and iterates on
the way have approximately the same distance. For NS1 it is therefore impossible to
decide whether the optimal solution is strictly inside or on the boundary of the stability
region, because the nal precision (the size of the steps before stopping) is comparable
in magnitude to the distance to instability. In contrast, for NS2, the higher precision
of the stopping test allows to conclude that the local minimum of NS2 is indeed inside
the stability region. In this example the NS1 solution has only two active peaks, while
6.7. Conclusion 145
NS2 nds 5 peaks, which gives further evidence that NS1 indeed fails to converge, (even
though the solution is still reasonable from a control point of view).
In this study the stability region turns out extremely narrow, which explains numerical
diculties with this example in the past. We have therefore performed a second test,
labeled AC10
= 4|(sI /(K
0
))
1
|
2
, which gave
= 2.3150 10
4
.
We mention that adding the stabilizing channel does not resolve the intrinsic diculty
of this example, caused by the fact that the objective function in (6.3) or (6.4) is only
dened on a narrow region.
6.7 Conclusion
We have developed and tested a second-order method to compute static and reduced-
order H
Conclusion
Les problmes de synthse par retour de sortie, avec un correcteur structur ou dordre
rduit, sont des problmes diciles de lAutomatique, pour lesquels les mthodes de rso-
lutions actuelles ne donnent pas toujours satisfaction, quand elles ne sont pas inoprantes.
Les travaux de cette thse se sont fonds sur un parti-pris original : formuler et rsoudre
ces problmes dans le contexte gnral de lOptimisation, en dpit de leurs mauvaises
proprits (ils sont non linaires bien videmment, non convexes, et surtout non lisses).
Les dicults sous-jacentes ont t leves en proposant deux approches distinctes.
La premire dentre elles, base sur les travaux de Polak, est une mthode de descente
non lisse, avec recherche linaire. Cette approche sest avre riche, exible et performante.
Riche, parce que nous avons pu la mettre en uvre pour des critres de synthse de
natures direntes (chapitres 3 5). Flexible, ensuite, parce que les contraintes portant
sur la structure ou lordre du correcteur peuvent tre directement et simplement prises en
compte. Performante, enn, comme cela est soulign dans la varit des exemples traits :
pour certains dentre eux (chapitres 4 et 5), nous avons amlior des rsultats obtenus par
les mthodes existantes, avec des temps de calcul beaucoup plus courts.
La seconde approche (chapitre 6) a t tudie pour la synthse H
par des techniques non lisses. Nous avons montr que cette approche permet-
tait de rsoudre ecacement des problmes de commande considrs comme diciles, et
quelle pouvait tre applique dautres types de critres de synthse (stabilit, critre
temporel). Il ne sagit l, notre avis, que dun chantillon des problmes de commande
pour lesquels le recours loptimisation non lisse est pertinent. Nous avons dj fait rf-
rence au problme H
,
et au problme multibande (voir [10]), encore plus gnral :
min
Kstabilisant
max
1iN
max
I
i
[T
w
i
z
i
(K, j)] ,
o les I
i
sont des intervalles ou des runions dintervalles de frquences. Dautre part, la
norme H
:
min
Kstabilisant
_
_
_T
w
H
2
z
H
2
(K)
_
_
_
2
t.q.
_
_
_T
w
H
z
H
(K)
_
_
_
.
La norme H
2
est parfaitement direntiable, cependant lapproche non lisse permet de
prendre en compte la contrainte (non lisse) en suivant la dmarche algorithmique de
Polak dcrite dans [114]. Nous renvoyons le lecteur intress par ces dveloppements aux
travaux de Apkarian, Noll et Rondepierre [12, 13]. Dautres formes de contraintes non
lisses sont envisageables, telles que le critre temporel prsent au chapitre 5, dont nous
avons dtaill le calcul des sous-gradients, et qui pourrait mme tre tendu sans dicult
aux systmes non linaires.
Enn, les problmes de synthse robuste qui se prtent au formalisme IQC (Contrainte
Quadratique Intgrale) peuvent tre rsolus en considrant une formulation non lisse dans
le domaine frquentiel, donc sans matrice de Lyapunov (voir [7, 119, 118]).
Bibliographie
[1] D. Alazard and P. Apkarian. Exact observer-based structures for arbitrary com-
pensators. Int. J. of Robust and Nonlinear Control, 9(2) :101118, 1999.
[2] D. Alazard, C. Cumer, P. Apkarian, M. Gauvrit, and G. Ferreres. Robustesse et
Commande Optimale. Cpadus, 1999.
[3] B. D. O. Anderson, N. K. Bose, and E. I. Jury. Output feedback stabilization
and related problems Solution via decision methods. IEEE Transactions on
Automatic Control, 20(1) :5366, 1975.
[4] B. D. O. Anderson and S. Vongpanitlerd. Network analysis and synthesis : a modern
systems theory approach. Prentice-Hall, 1973.
[5] P. Apkarian, V. Bompart, and D. Noll. Nonsmooth structured control design with
application to PID loop-shaping of a process. Int. J. of Robust and Nonlinear
Control, 17(14) :13201342, 2007.
[6] P. Apkarian and D. Noll. Controller design via nonsmooth multi-directional search.
SIAM Journal on Control and Optimization, 44(6) :19231949, 2006.
[7] P. Apkarian and D. Noll. IQC analysis and synthesis via nonsmooth optimization.
Systems and Control Letters, 55(12) :971981, 2006.
[8] P. Apkarian and D. Noll. Nonsmooth H
synthesis.
European Journal of Control, 12(3) :229244, 2006.
[10] P. Apkarian and D. Noll. Nonsmooth optimization for multiband frequency domain
control design. Automatica, 43(4) :724731, 2007.
[11] P. Apkarian, D. Noll, and O. Prot. Trust region spectral bundle method for non-
convex eigenvalue optimization. submitted, 2007.
[12] P. Apkarian, D. Noll, and A. Rondepierre. Mixed H
2
/H
-norm.
Systems and Control Letters, 15(1) :17, 1990.
[29] S. Boyd and C. Barratt. Linear Controller Design : Limits of Performance. Prentice-
Hall, 1991.
[30] S. Boyd, L. El Ghaoui, E. Feron, and V. Balakrishnan. Linear Matrix Inequalities
in System and Control Theory, volume 15 of SIAM Studies in Applied Mathematics.
SIAM, Philadelphia, PA, 1994.
151
[31] N. A. Bruinsma and M. Steinbuch. A fast algorithm to compute the H
-norm of a
transfer function matrix. Systems and Control Letters, 14(5) :287293, 1990.
[32] J. V. Burke, D. Henrion, A. S. Lewis, and M. L. Overton. HIFOO A MATLAB
package for xed-order controller design and H
-norm revisited. In
Proc. IEEE Conf. on Decision and Control, pages 22572258, Tucson, AZ, December
1992.
[55] P. Gahinet and P. Apkarian. A linear matrix inequality approach to H
control.
Int. J. of Robust and Nonlinear Control, 4(4) :421448, 1994.
[56] D. Gangsaas, K. R. Bruce, J. D. Blight, and U.-L. Ly. Application of modern
synthesis to aircraft control : Three case studies. IEEE Transactions on Automatic
Control, 31(11) :9951014, 1986.
[57] A. U. Genc. A state-space algorithm for designing H
control-
ler design. In Proc. IEEE Conf. on Decision and Control, pages 29092912, San
Antonio, TX, December 1993.
[91] A. G. J. MacFarlane and Y. S. Hung. Analytic properties of the singular value of
a rational matrix. Int. J. Control, 37(2) :221234, 1983.
[92] M. Mkel. Survey of bundle methods for nonsmooth optimization. Optimization
methods and software, 17(1) :129, 2002.
[93] P. M. Mkil and H. T. Toivonen. Computational methods for parametric LQ
minimization A survey. IEEE Transactions on Automatic Control, 32(8) :658
671, 1987.
[94] M. Mammadov and R. Orsi. H
synthesis.
IEEE Transactions on Automatic Control, 37(6) :759769, 1992.
[99] E. Mengi and M. L. Overton. Algorithms for the computation of the pseudospectral
radius and the numerical radius of a matrix. IMA Journal of Numerical Analysis,
25(4) :648669, 2005.
[100] M. Mesbahi. Fixed-order output feedback synthesis via semidenite programming.
http://www.aa.washington.edu/faculty/mesbahi/papers/ofp.pdf, 2004.
[101] S. Miyamoto and G. Vinnicombe. Robust decentralized control design based on
coprime factorization representations and LMI optimization. In Proc. SICE Annual
Conf., pages 10071012, Tokushima, Japan, July 1997.
[102] S. G. Nash and A. Sofer. Linear and nonlinear programming. McGraw-Hill, New
York, 1996.
[103] J. Nocedal and S. Wright. Numerical optimization. Springer-Verlag, New York,
1999.
[104] D. Noll and P. Apkarian. Spectral bundle methods for nonconvex maximum ei-
genvalue functions : rst-order methods. Mathematical Programming Series B,
104(2) :701727, 2005.
[105] D. Noll and P. Apkarian. Spectral bundle methods for nonconvex maximum ei-
genvalue functions : second-order methods. Mathematical Programming Series B,
104(2) :729747, 2005.
[106] D. Noll, M. Torki, and P. Apkarian. Partially augmented Lagrangian method for
matrix inequality constraints. SIAM Journal on Optimization, 15(1) :161184, 2004.
[107] R. J. Ober. Balanced parametrizations of classes of linear systems. SIAM Journal
on Control and Optimization, 29(6) :12511287, 1991.
[108] M. L. Overton. A quadratically convergent method for minimizing a sum of Eucli-
dean norms. Mathematical Programming, 27 :3463, 1983.
[109] M. L. Overton. On minimizing the maximum eigenvalue of a symmetric matrix.
SIAM Journal on Matrix Analysis and Applications, 9(2) :256268, 1988.
[110] M. L. Overton and R. S. Womersley. On minimizing the special radius of a nonsym-
metric matrix function : Optimality conditions and duality theory. SIAM Journal
on Matrix Analysis and Applications, 9(2) :473498, 1988.
[111] R. J. Patton. Fault-tolerant control : the 1997 situation. In Proc. IFAC Symp. on
Fault Detection, Supervision and Safety, pages 10331055, Hull, UK, August 1997.
[112] T. Penzl. Algorithms for model reduction of large dynamical systems. Linear Algebra
and its Applications, 415(2-3) :322343, 2006.
[113] E. Polak. On the mathematical foundations of nondierentiable optimization in
engineering design. SIAM Review, 29(1) :2189, 1987.
156 Bibliographie
[114] E. Polak. Optimization : Algorithms and Consistent Approximations. Applied Ma-
thematical Sciences. Springer-Verlag, 1997.
[115] E. Polak, D. Q. Mayne, and J. E. Higgins. On the extension of Newtons method
to semi-innite minimax problems. SIAM Journal on Control and Optimization,
30(2) :367389, 1992.
[116] E. Polak and S. Salcudean. On the design of linear multivariable feedback systems
via constrained nondierentiable optimization in H
control problem.
Automatica, 42(1) :93100, 2006.
[124] M. G. Safonov, K. C. Goh, and J. H. Ly. Control system synthesis via bilinear
matrix inequalities. In Proc. American Control Conf., pages 4549, Baltimore, MD,
June-July 1994.
[125] M. G. Safonov and D. J. N. Limebeer. Simplifying the H
, ou de satisfaction
de contraintes temporelles se posent naturellement avec ce formalisme et sont tudis dans la thse. Une
premire approche exploitant la description exhaustive du sous-direntiel de Clarke est prsente, puis
mise en uvre pour chacun de ces trois problmes. Laccent est port sur son ecacit numrique et
sa exibilit, travers un large choix dapplications en synthse structure ou dordre x. Une seconde
approche, dveloppe spciquement pour la synthse H
synthesis, or satisfaction of
time-domain constraints arise naturally in this formalism and are studied in this thesis. Firstly, we propose
a nonsmooth descent algorithm which exploits an exhaustive description of the Clarke subdierential. It
is applied to each of these three fundamental control problems. Its numerical eciency and versatility
are stressed through a vast array of applications in structured or xed-order controller synthesis. A
second approach, specically developed for H