Vous êtes sur la page 1sur 160

Techniques d’optimisation

Optimisation continue – discrète – fonctionnelle

Théorie – Algorithmes – Exemples

Max CERF
2018

1
Max CERF
Techniques d’optimisation 2018

Sommaire
1. Bases théoriques

2. Optimisation sans contraintes

3. Optimisation avec contraintes

4. Optimisation discrète

5. Optimisation fonctionnelle

« Je suis capable du meilleur et du pire.


Mais dans le pire, c’est moi le meilleur. » (Coluche) 2
1 Bases théoriques Max CERF
Techniques d’optimisation 2018

Sommaire
1. Bases théoriques
1.1 Définitions
1.2 Contraintes linéaires
1.3 Contraintes non linéaires
1.4 Conditions d’optimalité

2. Optimisation sans contraintes

3. Optimisation avec contraintes

4. Optimisation discrète

5. Optimisation fonctionnelle

3
1 Bases théoriques Max CERF
1.1 Définitions
Techniques d’optimisation 2018

Sommaire
1. Bases théoriques
1.1 Définitions
1.1.1 Problème d’optimisation
1.1.2 Solution
1.1.3 Différentiabilité
1.1.4 Convexité
1.1.5 Conditionnement
1.1.6 Direction de déplacement
1.2 Contraintes linéaires
1.3 Contraintes non linéaires
1.4 Conditions d’optimalité

2. Optimisation sans contraintes


3. Optimisation avec contraintes
4. Optimisation discrète
5. Optimisation fonctionnelle

4
1 Bases théoriques Max CERF
1.1 Définitions
1.1.1 Problème d’optimisation
Techniques d’optimisation 2018

1.1.1 Problème d’optimisation

Classification des problèmes d’optimisation


- Optimisation continue dans Rn

Formulation mathématique et notations


- Variables
- Critère
- Contraintes

Norme sur Rn
- Norme vectorielle
- Norme matricielle

Suite dans Rn
- Limite
- Vitesse de convergence

5
1 Bases théoriques Max CERF
1.1 Définitions
1.1.1 Problème d’optimisation
Techniques d’optimisation 2018

1.1.1 Classification
Optimisation fonctionnelle / paramétrique
• Inconnues = fonctions Optimisation fonctionnelle
Optimisation en dimension infinie
Commande optimale

• Inconnues = entiers ou réels Optimisation paramétrique


Optimisation en dimension finie
Programmation mathématique

Programmation mathématique
• Inconnues = entiers Optimisation combinatoire
Programmation en nombres entiers

• Inconnues = réels Optimisation continue


Programmation linéaire (LP)
Programmation non linéaire (NLP)

• Inconnues = entiers et réels Programmation mixte

6
1 Bases théoriques Max CERF
1.1 Définitions
1.1.1 Problème d’optimisation
Techniques d’optimisation 2018

1.1.1 Formulation
Formulation mathématique
c E (x) 0
minn f(x) sous c I (x) 0 formulation standard
x R
x X problème noté (PO)

Notations
• x : n variables ou paramètres vecteur de Rn
ou inconnues

• f : critère ou fonction coût fonction de Rn dans R


ou fonction objectif x Rn f(x) R

• cE : p contraintes d’égalité fonction de Rn dans Rp


x Rn c E (x) R p

• cI : q contraintes d’inégalité fonction de Rn dans Rq


x Rn c I (x) R q

• X : ensemble convexe X Rn valeurs admissibles des variables

7
1 Bases théoriques Max CERF
1.1 Définitions
1.1.1 Problème d’optimisation
Techniques d’optimisation 2018

1.1.1 Optimisation continue


Hypothèses
• Continuité : Fonctions continues de variables réelles
Optimisation continue
Optimisation combinatoire, Programmation en nombres entiers

• Différentiabilité : Fonctions différentiables


Méthodes à base de gradient
Méthodes sans dérivées

• Déterminisme : Les données du problème sont parfaitement connues


Optimisation stochastique

• Programmation linéaire : coût linéaire et contraintes linéaires (LP)


• Programmation quadratique : coût quadratique et contraintes linéaires (QP)
• Programmation non linéaire : cas général, fonctions quelconques (NLP)

Rappels d’analyse
• Norme
• Suite - Convergence

8
1 Bases théoriques Max CERF
1.1 Définitions
1.1.1 Problème d’optimisation
Techniques d’optimisation 2018

1.1.1 Norme
Norme vectorielle sur Rn
x 0
• Fonction . : Rn R vérifiant x 0 x 0
x y x y
n
αx α x
p
• Norme p : x p
p xi
i 1
x2
• Norme : x max x i x
i 1,..., n
x
• Norme 2 = norme euclidienne

x 2
Norme matricielle
x1
. x
• Norme induite sur Rm n par la norme vectorielle 1

Ax
• Fonction . :R m n
R définie par A m n
max
m n x R n ,x 0 x

9
1 Bases théoriques Max CERF
1.1 Définitions
1.1.1 Problème d’optimisation
Techniques d’optimisation 2018

1.1.1 Suite
Suite dans Rn
• Suite : xk , k=0,1,2,… = x0 , x1 , x2 ,…, xn, …

• Limite : lim x k x* lim x k x*


k k

Vitesse de convergence
• Convergence linéaire : xk 1 x* c xk x* avec 0 c 1
lent à partir d’un certain rang k0

• Convergence superlinéaire : xk 1 x* ck x k x* avec lim c k 0


k
bonne à partir d’un certain rang k0
p
• Convergence d’ordre p : xk 1 x* c xk x* avec 0 c 1
à partir d’un certain rang k0

• Convergence quadratique si p=2


rapide

10
1 Bases théoriques Max CERF
1.1 Définitions
1.1.2 Solution
Techniques d’optimisation 2018

1.1.2 Solution

Solution admissible

Minimum
- Minimum local
- Minimum global
- Infimum

Problèmes équivalents
- Transformations simples

Contrainte active

Point intérieur

11
1 Bases théoriques Max CERF
1.1 Définitions
1.1.2 Solution
Techniques d’optimisation 2018

1.1.2 Solution admissible


Solution admissible

x solution admissible de (PO) x satisfait les contraintes c E (x) 0


(ou point admissible) c I (x) 0
x X
Ensemble admissible
X adm x R n / c E (x) 0 , c I (x) 0,x X
Non admissible

Illustration dans R2
• c1(x) = 0 courbe
• c2(x) 0 région du plan
• c3(x) 0 région du plan

Dans Rn
• c(x) = 0 hypersurface
(dimension n-1)
• aTx = 0 hyperplan a Rn
(linéaire)

12
1 Bases théoriques Max CERF
1.1 Définitions
1.1.2 Solution
Techniques d’optimisation 2018

1.1.2 Minimum
Minimum global (= meilleure solution dans l’absolu)
• x* minimum global de (PO) x X adm , f(x*) f(x)
• x* minimum global strict x X adm , f(x*) f(x) si x x*

Minimum local (= meilleure solution dans un voisinage)


• x* minimum local de (PO) ε 0 / x X adm , x x * ε , f(x*) f(x)
• x* minimum local strict ε 0 / x X adm , x x * ε , f(x*) f(x) si x x *

Sans contrainte Avec contrainte


f(x) f(x)

minimum global strict


minima locaux
minimum local strict

minimum global strict Non admissible Admissible

x Xadm x
13
1 Bases théoriques Max CERF
1.1 Définitions
1.1.2 Solution
Techniques d’optimisation 2018

1.1.2 Infimum
Borne inférieure
f : Rn R f bornée inférieurement sur Y Rn
M R / x Y , M f(x)

Infimum
• Infimum de f sur Y = plus grande borne inférieure

• Notation : inf Y f inf f(y) , y Y

x Y , inf Y f f(x)
• Propriété : et
M inf Y f , x Y / f(x) M

Théorème de Weierstrass
• f atteint son infimum si f continue, Y compact : x* Y / f(x*) inf Y f

• Conditions réalisées en pratique : fonctions continues, intervalles fermés


Le problème (PO) admet une solution x*.

14
1 Bases théoriques Max CERF
1.1 Définitions
1.1.2 Solution
Techniques d’optimisation 2018

1.1.2 Problèmes équivalents


Problèmes équivalents
(PO1) et (PO2) sont deux problèmes équivalents si on peut associer à tout point admissible
x1 de (PO1) un point admissible x2 de (PO2) avec la même valeur pour le critère.

x1 X1adm x2 X2adm
f1(x1) f1(x1)=f2(x2) f2(x2)

(PO1) et (PO2) ont alors des solutions de même coût : f1(x1*) = f2(x2*)

Transformations simples
• Changement de variable : y= (x) avec strictement croissante sur X

• Maximisation / minimisation : max f(x) min f(x)


x x

• Contrainte inférieur / supérieur : c(x) 0 c(x) 0


x 0
• Variables positives : x x x avec
x 0
• Variables d’écart : c(x) y 0
c(x) 0 c(x) z2 0
y 0
15
1 Bases théoriques Max CERF
1.1 Définitions
1.1.2 Solution
Techniques d’optimisation 2018

1.1.2 Contrainte active


Contrainte active

Une contrainte du problème (PO) est active (ou saturée) en x si elle s’annule en x.

Ensemble des contraintes actives


C act (x) j / c Ej (x) 0 j / c Ij (x) 0

• Contrainte égalité cE : x admissible cE(x) = 0 cE active en x


• Contrainte inégalité cI : x admissible cI(x) 0 cI active en x si cI(x) = 0
cI inactive en x si cI(x) < 0
Intérêt
• Les contraintes inégalité inactives n’ont pas d’influence sur la solution x* du problème (PO).
On peut les ignorer, si on identifie l’ensemble Cact(x*). Mais x* n’est pas connu au départ …

• Le problème (PO) est équivalent au problème (PO)act réduit aux contraintes actives
prises comme des contraintes égalité.
c E (x) 0
min f(x) sous min f(x) sous c j (x) 0, j C act (x*) noté min f(x) sous c(x) 0
x Rn c I (x) 0 x Rn x Rn

16
1 Bases théoriques Max CERF
1.1 Définitions
1.1.2 Solution
Techniques d’optimisation 2018

1.1.2 Exemple
Contrainte active
2 x 1 f(x) f(x)=x2
min x 1 sous x* 1
x R x 2

1. Minimum sans contrainte


min x 2 1 x* 0
x R

• Respecte la contrainte x 2
• Ne respecte pas la contrainte x 1
Activation de la contrainte x = 1
admissible
2. Minimum avec contrainte active x = 1 0 1 2 x
min x 2 1 sous x 1 x* 1
x R

• Respecte la contrainte x 2 Minimum sans contrainte


• Respecte la contrainte x 1 Minimum avec contrainte
Solution du problème

3. Bilan : 1 contrainte active x 1 transformée en égalité


1 contrainte inactive x 2 ignorée
17
1 Bases théoriques Max CERF
1.1 Définitions
1.1.2 Solution
Techniques d’optimisation 2018

1.1.2 Point intérieur


Point intérieur
y point intérieur à Y
Il existe un voisinage de y contenu dans Y : ε 0 / z, z - y ε , z Y
Un problème avec contraintes égalité n’admet pas de point intérieur

Solution intérieure aux contraintes


• x* minimum local du problème avec contraintes inégalité min f(x) sous c I (x) 0
x Rn
• Si x* est un point intérieur, alors
x* minimum local du problème sans contraintes min f(x) plus simple
x Rn

Point intérieur - Contrainte inactive Contrainte active

x*
x*

18
1 Bases théoriques Max CERF
1.1 Définitions
1.1.2 Solution
Techniques d’optimisation 2018

1.1.2 Exemple
Point intérieur
f(x) f(x)=x2
min x 2 1 sous x 1 x* 0
x R

1. Ensemble admissible
X adm x R/x 1 ] ,1]
2. Ensemble intérieur à la contrainte
X int x R/x 1 ] ,1[
admissible
X int X adm 1
0 1 x
x Xint voisinage de x inclus dans Xint
intervalle ouvert
Minimum avec contrainte
3. Solution : x*=0

x* Xint intérieur à la contrainte contrainte inactive

19
1 Bases théoriques Max CERF
1.1 Définitions
1.1.3 Différentiabilité
Techniques d’optimisation 2018

1.1.3 Différentiabilité

Définitions
- Dérivée partielle
- Dérivée directionnelle
- Gradient – Hessien – Jacobien

Théorème de Taylor
- Ordre 1 et 2
- Modèle quadratique-linéaire
- Ligne de niveau

Dérivées numériques
- Différences finies
- Erreurs numériques
- Incrément
- Dérivée complexe
- Méthode d’extrapolation
20
1 Bases théoriques Max CERF
1.1 Définitions
1.1.3 Différentiabilité
Techniques d’optimisation 2018

1.1.3 Gradient
Différentiabilité ordre 1
f fonction continue de Rn dans R

Dérivée partielle f(x) f(x ,.., x i s,.., x n ) f(x1 ,.., x i ,.., x n )


Dérivée partielle de f en x par rapport à xi : f x i (x) lim 1
xi s 0 s
si la limite existe
f(x)
Gradient
x1
Gradient de f en x : g(x) f(x) f(x)
g(x) ...
g(x) : R n R n xi i 1,..., n f(x)
si toutes les dérivées partielles existent
xn
Dérivée directionnelle f(x sd) - f(x)
Dérivée directionnelle de f en x dans la direction d Rn : f d (x) lim
s 0 s
si la limite existe
(dérivée directionnelle = produit scalaire avec le gradient) f d (x) g(x) T d

Fonction différentiable
f différentiable en x f admet une dérivée directionnelle pour tout d Rn

21
1 Bases théoriques Max CERF
1.1 Définitions
1.1.3 Différentiabilité
Techniques d’optimisation 2018

1.1.3 Hessien
Différentiabilité ordre 2
f fonction deux fois différentiable de Rn dans R
2 2
Hessien f(x) f(x)
2 ...
Hessien de f en x : H(x) f(x) 2
2
x1 x1 x n
n f(x)
H(x) : R Rn n
H(x) ... ... ...
xi x j 2
f(x) 2
f(x)
i, j 1,..., n
... 2
x n x1 xn

Courbure
On définit pour une direction d Rn au point x la fonction à une variable : (s) = f(x+sd)
variation de f dans la direction d

• Dérivée première : ' (s) d T f(x sd) ' (0) d T g(x)


• Dérivée seconde : ' ' (s) d T 2 f(x sd)d ' ' (0) d T H(x)d
d T H(x)d
La courbure de f en x dans la direction d est définie par :
dTd
normalisation de ’’ en s=0
= quotient de Rayleigh de H(x) dans la direction d

22
1 Bases théoriques Max CERF
1.1 Définitions
1.1.3 Différentiabilité
Techniques d’optimisation 2018

1.1.3 Jacobien
Matrice gradient
c fonction continue de Rn dans Rm

Gradient de c en x : c(x) : R n Rn m

c1 (x) c m (x)
...
c j (x) x1 x1
c(x) c1 (x) ,..., c m (x) ... ... ...
xi i 1,..., n c1 (x) c m (x)
j 1,..., m ...
xn xn
Matrice jacobienne (« jacobien » = déterminant de Jc)
c1 (x) c1 (x)
c1 (x) T ...
x1 xn
c i (x)
J c (x) c(x) T ... ... ... ...
xj i 1,..., n c m (x) c m (x)
c m (x) T j 1,..., m ...
x1 xn
Contraintes du problème (PO)
Matrice jacobienne regroupant les contraintes égalité cE et les contraintes inégalité cI
J E (x) c E (x) T
J(x) : R n
R ( p q) n
J(x)
J I (x) c I (x) T
23
1 Bases théoriques Max CERF
1.1 Définitions
1.1.3 Différentiabilité
Techniques d’optimisation 2018

1.1.3 Théorème de Taylor


Théorème de Taylor
n
f fonction de Rn dans R : x R f(x) R
d Rn : déplacement à partir de x

• Ordre 1
f continument différentiable 1 fois au voisinage de x

f(x d) f(x) f(x) T d o d

Il existe s [0,1] tel que : f(x d) f(x) f(x sd) T d

• Ordre 2
f continument différentiable 2 fois au voisinage de x

1 T 2
f(x d) f(x) f(x) T d d 2
f(x)d o d
2
1 T
Il existe s [0,1] tel que : f(x d) f(x) f(x) T d d 2
f(x sd)d
2

24
1 Bases théoriques Max CERF
1.1 Définitions
1.1.3 Différentiabilité
Techniques d’optimisation 2018

1.1.3 Modèle quadratique-linéaire


Problème avec contraintes égalité
minn f(x) sous c(x) 0 contrainte actives
x R

Fonction modèle
• Application du théorème de Taylor au point x0 Rn
1
• Modèle quadratique du critère : f̂ 0 (x) f(x 0 ) f(x 0 ) T (x x 0 ) (x x 0 ) T 2
f(x 0 )(x x 0 )
2
• Modèle linéaire des contraintes : ĉ 0 (x) c(x 0 ) c(x 0 ) T (x x 0 )

Problème quadratique-linéaire local

Au voisinage de x0 : f (x) f̂ 0 (x)


c(x) ĉ 0 (x)

min f̂ 0 (x) sous ĉ 0 (x) 0 Problème quadratique-linéaire


x Rn
- localement « proche » du problème initial
- plus simple à résoudre

25
1 Bases théoriques Max CERF
1.1 Définitions
1.1.3 Différentiabilité
Techniques d’optimisation 2018

1.1.3 Exemple
Modèle quadratique : fonction de 1 variable

• Fonction : f ( x) x 4 12x 3 47 x 2 60x

• Gradient : f ( x) 4x 3 36x 2 94x 60


2
• Hessien : f ( x) 12x 2 72x 94
2
• Modèle quadratique en x0 = 3 : f ( x0 ) 0 , f ( x0 ) 6, f ( x 0 ) 14
1 2
f̂ 0 ( x ) 6x 3 14 x 3 7x 2 48x 81
2
2
• Modèle quadratique en x0 = 4 : f ( x0 ) 0 , f ( x0 ) 4 , f ( x0 ) 2
1 2
f̂ 0 ( x ) 4 x 4 2x 4 x2 4x
2
2
• Modèle quadratique en x0 = 5 : f ( x0 ) 0 , f ( x0 ) 10 , f ( x0 ) 34
1 2
f̂ 0 ( x ) 10 x 5 34 x 5 17 x 2 160x 375
2
26
1 Bases théoriques Max CERF
1.1 Définitions
1.1.3 Différentiabilité
Techniques d’optimisation 2018

1.1.3 Exemple
Modèle quadratique : fonction de 2 variables
2 2
• Fonction : f ( x 1 , x 2 ) 100 x 2 x 12 1 x1 fonction de Rosenbrock

400 x 2 x 12 x 1 2 1 x 1
• Gradient : f ( x)
200 x 2 x 12

400 x 2 3x12 2 400x1


• Hessien : 2
f ( x)
400x1 200

0 2 802 400
• Modèle quadratique en x0 = (1,1) : f ( x 0 ) 0 , f ( x 0 ) , f ( x0 )
0 400 200
T
1 x1 1 802 400 x 1 1
f̂ 0 ( x 1 , x 2 )
2 x2 1 400 200 x 2 1

2 2
f̂ 0 ( x 1 , x 2 ) 401 x 1 1 400 x 1 1 x 2 1 100 x 2 1

27
1 Bases théoriques Max CERF
1.1 Définitions
1.1.3 Différentiabilité
Techniques d’optimisation 2018

1.1.3 Résultats utiles


Gradient d’une fonction scalaire
• Le gradient de f : Rn R en x est le vecteur g Rn tel que
f(x d)f ( x) g T d o d , d R n
1 T
• Fonction quadratique : f(x) x Qx c T x b Q matrice symétrique
2
1 T T T 1 T
f(x d) (x d) Q(x d) c (x d) b f(x) Qx c d d Qd
2 2
2
f(x) Qx c f(x) Q
Gradient d’une fonction vectorielle
• Le gradient de f : Rn Rp en x est la matrice G Rn p telle que
f(x d) f(x) GT d o d , d R n

• Fonction composée : f(x) h g(x) avec f : R n R p , g :R n R m , h :R m Rp


T
f(x d) h g(x d) h g(x) g( x ) T d o d h g(x) h g(x) g( x ) T d o d
f(x) g( x ) h g(x)

• Fonction linéaire : g(x) Ax g(x d) Ax Ad g(x) AT


f(x) h Ax f(x) A T h Ax
28
1 Bases théoriques Max CERF
1.1 Définitions
1.1.3 Différentiabilité
Techniques d’optimisation 2018

1.1.3 Ligne de niveau


Définition
• Ligne (ou surface) de niveau l0 de la fonction f
L0 x R n / f(x) l 0 hypersurface dans Rn (sous-espace de dimension n-1)

• Ligne de niveau passant par x0


L0 x R n / f(x) f(x 0 ) avec f(x) f(x 0 ) f(x 0 ) T (x x 0 ) o x x 0 à l' ordre1

Gradient
x L0 f(x) f(x 0 ) f(x 0 ) T (x x 0 ) 0 hyperplan tangent à L0 en x0
Le gradient de f est orthogonal aux lignes de niveaux.

f(x1,x2)
x2
x2

x*
x*
f
f
x1 x1 29
1 Bases théoriques Max CERF
1.1 Définitions
1.1.3 Différentiabilité
Techniques d’optimisation 2018

1.1.3 Exemple
Ligne de niveau : fonction quadratique

f (x1 , x 2 ) x 12 25x 22
x2

0.2

f=0 0,5 1 x1

30
1 Bases théoriques Max CERF
1.1 Définitions
1.1.3 Différentiabilité
Techniques d’optimisation 2018

1.1.3 Exemple
Ligne de niveau : fonction de Rosenbrock
2 2
f ( x1 , x 2 ) 100 x 2 x12 1 x1
5,0

4,0
Lignes de niveau
f=0.5 , 1 , 4 , 7 , 10

3,0

2,0

1,0
Minimum en x*=(1,1)

0,0
-2,5 -2,0 -1,5 -1,0 -0,5 0,0 0,5 1,0 1,5 2,0 2,5

-1,0
31
1 Bases théoriques Max CERF
1.1 Définitions
1.1.3 Différentiabilité
Techniques d’optimisation 2018

1.1.3 Dérivées numériques


Différences finies
Les expressions analytiques de f(x) et 2f(x) ne sont généralement pas disponibles.
Evaluation par différences finies avec incrément h appliqué successivement sur chaque variable
1 i 1 i i 1 n
x x he i avec e i (0, , 0 ,1, 0 , , 0) T , i 1 à n
Gradient
f f(x he i ) f(x)
• Différence finie simple : (x) o( h )
amont si h<0 xi h
aval si h>0 n appels fonction pour évaluer f(x)
f f(x he i ) f(x he i )
• Différence finie centrée : (x) o( h 2 )
plus précis xi 2h
2n appels fonction pour évaluer f(x)

Hessien
2
f f(x he i he j ) f(x he i ) f(x he j ) f(x)
• Différence finie simple : (x) o( h )
xi x j h2
n(n+1)/2+n appels fonction pour évaluer 2f(x)
32
1 Bases théoriques Max CERF
1.1 Définitions
1.1.3 Différentiabilité
Techniques d’optimisation 2018

1.1.3 Dérivées numériques


Sources d’erreurs
L’ évaluation d’une dérivée par différence finie génère 2 types d’erreurs :
• Erreur d’arrondi (ou de conditionnement)
• Erreur de troncature

Erreur d’arrondi
Les réels sont représentés en mémoire machine calcul avec une précision finie.
La précision machine m est le plus petit réel tel que : 1 + m 1
erreur relative m=10-16 sur la valeur d’un réel x en double précision
erreur relative r sur la valeur évaluée de f(x)
r >> m par cumul des erreurs au cours des opérations pour passer de x à f(x)
f eval (x) f exact (x)(1 ε r ) f exact (x) ε f f = erreur absolue sur f

Erreur de troncature
L’ évaluation d’une dérivée par différence finie tronque le développement de Taylor à l’ordre 1.
1 2
• f(x 0 h) f(x 0 ) hf' (x 0 ) h f' ' (x 0 sh) avec s 0,1
2
1 2
• f(x 0 h) f(x 0 ) hf' (x 0 ) h εt avec ε t M majorant de f ' ' ( x ) sur x 0 , x 0 d
2
33
1 Bases théoriques Max CERF
1.1 Définitions
1.1.3 Différentiabilité
Techniques d’optimisation 2018

1.1.3 Dérivées numériques


Erreur sur la dérivée
' f eval (x 0 h) f eval (x 0 )
f eval (x 0 ) avec
h
• f eval (x 0 ) f exact (x 0 ) εf arrondi sur feval(x0)
• f eval (x 0 h) f exact (x 0 h) εf arrondi sur feval(x0+h)
' 1 2
• f exact (x 0 h) f exact (x 0 ) hf exact (x 0 ) h εt troncature sur fexact(x0+h)
2
En remplaçant dans l’expression de f’eval(x0) :
' 1 2
hf exact (x 0 ) h εt 2ε f
' f exact (x 0 h) f exact (x 0 ) 2ε f 2
f eval (x 0 )
h h
' ' hε t 2ε f
f eval (x 0 ) f exact (x 0 )
2 h
hε t 2ε f
L’erreur maximale sur la dérivée numérique est : f'
2 h

34
1 Bases théoriques Max CERF
1.1 Définitions
1.1.3 Différentiabilité
Techniques d’optimisation 2018

1.1.3 Dérivées numériques


Incrément optimal
hε t 2ε f
• On choisit l’incrément pour minimiser l’erreur : min f'
h 2 h
d f' εt 2ε f εf
0 h opt 2
dh 2 h2 εt
f' 2 εf εt

hopt
• Règle empirique de réglage de l’incrément
En supposant que l’ordre de grandeur de la dérivée seconde est de l’ordre de 1 :

h opt εf incrément de l’ordre de la racine de la précision d’évaluation de f

f' εf précision sur f’ de l’ordre de la racine de la précision d’évaluation de f


(2 fois moins de chiffres significatifs)

35
1 Bases théoriques Max CERF
1.1 Définitions
1.1.3 Différentiabilité
Techniques d’optimisation 2018

1.1.3 Exemple
Dérivée numérique
f (x) x 4 x 2 f ' (x) 4x 3 2x

• Dérivée en x=1 : f (1) = 6


f (x h) f (x)
• Dérivée numérique avec incrément h erreur e(h ) f ' (x)
h
1
h (f(x+h)-f(x))/h Erreur log(h) 0
1E-01 6,7410000000 7,410E-01
-16 -14 -12 -10 -8 -6 -4 -2 0
1E-02 6,0704010000 7,040E-02 -1
1E-03 6,0070040010 7,004E-03 -2
1E-04 6,0007000400 7,000E-04
-3
1E-05 6,0000700004 7,000E-05
1E-06 6,0000069997 7,000E-06 -4
1E-07 6,0000007007 7,007E-07 -5
1E-08 6,0000000079 7,944E-09 -6
1E-09 6,0000004964 4,964E-07
-7
1E-10 6,0000004964 4,964E-07 log(e)
1E-11 6,0000004964 4,964E-07 -8
1E-12 6,0005334035 5,334E-04 -9
1E-13 5,9952043330 -4,796E-03
1E-14 5,9952043330 -4,796E-03
1E-15 6,6613381478 6,613E-01 incrément adapté
36
1 Bases théoriques Max CERF
1.1 Définitions
1.1.3 Différentiabilité
Techniques d’optimisation 2018

1.1.3 Dérivées numériques


Dérivée complexe
On peut améliorer la précision sur la dérivée par différence finie en nombres complexes.
h2 h3
• Développement de f en x0 : f ( x 0 h ) f ( x 0 ) hf ' ( x 0 ) f ' ' (x 0 ) f ' ' ' (x 0 ) o h 3
2 6
• Estimation de la dérivée avec un incrément réel h
f (x 0 h) f (x 0 ) h h2
f ' (x 0 ) f ' ' (x 0 ) f ' ' ' (x 0 ) o h 2 précision de l’ordre de h
h 2 6
L’incrément h ne peut pas être choisi trop petit h εf
à cause de l’erreur d’arrondi

• Estimation de la dérivée avec un incrément imaginaire ih


f ( x 0 ih ) f ( x 0 ) h h2
if ' ( x 0 ) f ' ' (x 0 ) i f ' ' ' (x 0 ) o h 2
h 2 6
f ( x 0 ih ) f ( x 0 ) h2
Im f ' (x 0 ) f ' ' ' (x 0 ) o h 2 précision de l’ordre de h2
h 6
L’incrément h peut être choisi à la précision machine h εf
car il ne porte que sur la partie imaginaire de f
37
1 Bases théoriques Max CERF
1.1 Définitions
1.1.3 Différentiabilité
Techniques d’optimisation 2018

1.1.3 Dérivées numériques


Dérivée complexe
• La dérivée numérique est évaluée par différence finie complexe.
f ( x 0 ih ) f ( x 0 )
f ' (x 0 ) Im
h
• Il faut que l’ensemble du logiciel soit écrit en variables complexes
pour propager l’incrément imaginaire ih de x0+ih à f(x0+ih).
Programmation directe en déclarant des variables complexes
ou
Surcharge d’opérateurs pour effectuer toutes les opérations en complexes

Exemple
f (x) x 2 f ' (x) 2x
h) f (x 0 ) (x 0 h)2 (x 0 )2
f (x 0
• Différence finie réelle : 2x 0 h erreur = h
h h
f ( x 0 ih ) f ( x 0 ) ( x 0 ih ) 2 ( x 0 ) 2
• Différence finie imaginaire : 2ix 0 h 2
h h
f ( x 0 ih ) f ( x 0 )
Im 2x 0 valeur exacte
h
38
1 Bases théoriques Max CERF
1.1 Définitions
1.1.3 Différentiabilité
Techniques d’optimisation 2018

1.1.3 Dérivées numériques


Méthode d’extrapolation
f(x 0 h ) f(x 0 )
• La dérivée de f en x0 est par définition : f' (x 0 ) lim
h 0 h
L’approximation par différence finie comporte une erreur de troncature en o(h).
La réduction de l’incrément h introduit une erreur d’arrondi liée à la précision machine.

Pour améliorer la précision, on peut appliquer la méthode d’extrapolation de Richardson.

• On cherche la limite a0 d’une fonction A(h) non définie en h = 0.

lim A(h ) a 0 → à évaluer


h 0

Le développement de Taylor à l’ordre n de A en 0 est

A(h ) a 0 a 1h a 2 h 2 anhn o( h n )

• La méthode d’extrapolation de Richardson consiste à :


- évaluer la fonction A en plusieurs points h0 , h1 , … , hm
- combiner les valeurs Ak = A(hk) pour éliminer les termes du développement de Taylor

39
1 Bases théoriques Max CERF
1.1 Définitions
1.1.3 Différentiabilité
Techniques d’optimisation 2018

1.1.3 Extrapolation
Développement de Taylor
• On choisit un incrément h > 0 et un rapport r : 0 < r < 1.
La fonction A est évaluée en m+1 points h0 , h1 , … , hm définis par : h k rkh
1 h h h
Pour r (valeur usuelle) : h0 h , h1 , h2 , h3 ,
2 2 4 8

• On calcule les valeurs de A aux points hk : A k ,0 A(h k ) → m+1 valeurs de rang 0


def

En utilisant le développement de Taylor : A(h ) a 0 a 1h a 2 h 2 anhn o( h n )

on obtient à l’ordre n : A 0, 0 A(r 0 h ) a0 a 1h a 2h 2 anhn o( h n )


A1,0 A ( r 1h ) a0 a1rh a 2r 2h 2 anrnhn o( h n )
A 2, 0 A(r 2 h ) a0 a 1r 2 h a 2r 4h 2 a n r 2n h n o( h n )

A m,0 A(r m h ) a0 a 1r m h a 2 r 2m h 2 a n r mn h n o( h n )

• Les m+1 valeurs Ak,0 de rang 0 sont ensuite combinées pour éliminer les termes en h.
→ m valeurs Ak,1 de rang 1
40
1 Bases théoriques Max CERF
1.1 Définitions
1.1.3 Différentiabilité
Techniques d’optimisation 2018

1.1.3 Extrapolation
Elimination des termes en h
• On définit les m valeurs Ak,1 de rang 1 à partir des m+1 valeurs Ak,0 de rang 0.
A k ,0 rA k 1, 0
A k ,1 pour k = 1 à m
def 1 r
• Ces combinaisons gardent le terme a0 et éliminent les termes en h du développement de Taylor.

A1,1 a0 b2h 2 bn h n o( h n )
A 2,1 a0 b2r 2h 2 bn r n h n o( h n )
A 3,1 a0 b2r 4h 2 b n r 2n h n o( h n )

A m ,1 a0 b 2 r 2m h 2 b n r mn h n o( h n )

Les termes d’ordre supérieur en h2, … , hn ont les mêmes coefficients b2, … , bn.

• On élimine de la même façon les termes en h2 → m 1 valeurs Ak,2 de rang 2


puis les termes en h3 → m 2 valeurs Ak,3 de rang 3
…………………
jusqu’aux termes en hm → 1 valeur Am,m de rang m
41
1 Bases théoriques Max CERF
1.1 Définitions
1.1.3 Différentiabilité
Techniques d’optimisation 2018

1.1.3 Extrapolation
Elimination des termes jusqu’à hm
• On applique la formule de récurrence entre le rang j 1 et le rang j.
A k, j 1 r jA k 1, j 1
A k, j j
pour k = j à m , et j = 1 à m
def 1 r
• En pratique on dispose les calculs en colonnes.

A0,0 A1,1 A2,2 A3,3 Am,m


A1,0 A2,1 A3,2
A2,0 A3,1
A3,0

Am 1,0 Am,1
Am,0

• Les termes de rang j sont des approximations de a0 à l’ordre hj.


Le dernier terme Am,m est une approximation de a0 à l’ordre hm : A m ,m a0 r m ( m 1) h m 1

42
1 Bases théoriques Max CERF
1.1 Définitions
1.1.3 Différentiabilité
Techniques d’optimisation 2018

1.1.3 Extrapolation
Dérivée première et seconde
• Pour évaluer les dérivées premières et secondes de f en x0, on définit 2 fonctions A(h) et B(h).
f (x 0 rh ) f ( x 0 h)
A(h )
(r 1)h

f (x 0 rh ) rf ( x 0 h ) (r 1)f ( x 0 )
B(h ) 2
r (r 1)h 2

• Les développements de Taylor de A et B en h=0 sont

1 r2 1 1 r n 1 n 1 (n)
A(h ) f ' (x 0 ) hf ' ' ( x 0 ) h f (x 0 )
2 r 1 n! r 1

1 r2 1 2 r n 1 1 n 2 (n)
B(h ) f ' ' (x 0 ) hf ' ' ' ( x 0 ) h f (x 0 )
3 r 1 n! r 1

• La méthode d’extrapolation de Richardson appliquée aux fonctions A(h) et B(h)


permet d’évaluer les dérivées premières et secondes de f en x0.

43
1 Bases théoriques Max CERF
1.1 Définitions
1.1.3 Différentiabilité
Techniques d’optimisation 2018

1.1.3 Extrapolation
Dérivée première et seconde
• On choisit un incrément initial h, un rapport r entre 0 et 1 et un ordre d’extrapolation m.

La fonction f est évaluée en x0+h0 , x0+h1 , … , x0+hm avec h k rkh fk f (x 0 hk )

• Les termes de rang 0 des fonctions A(h) et B(h) sont calculés à partir des valeurs fk.

fk 1 fk fk 1 rf k (r 1)f ( x 0 )
A k ,0 A(h k ) Bk ,0 B(h k ) 2
(r 1)h k r (r 1)h 2k

• Les termes Am,m et Bm,m de rang m sont des approximations de f (x0) et f (x0).

• En pratique l’ordre d’extrapolation m est limité par la précision machine .


m ( m 1) m 1 m2
A m,m a0 r h r hm (en supposant a0 ≈ 1)
log h (log h ) 2 4 log r log
m avec r 1
2 log r

Exemple : r=0.5 , =10 16 , h=10 4 → m<4


h=10 8 → m<3
44
1 Bases théoriques Max CERF
1.1 Définitions
1.1.3 Différentiabilité
Techniques d’optimisation 2018

1.1.3 Exemple
Dérivée par extrapolation
1 1 2
f (x) x2 f ' ( x ) 2x f ' ' (x) 2
x x2 x3
• Dérivée première et seconde en x=1 : f (1) = 1 , f (1) = 4
• Incrément initial : h = 0.1 → ordre d’extrapolation m = 6

hk x+hk f(x+hk)
0,10000000 1,10000000 2,11909091
0,05000000 1,05000000 2,05488095
0,02500000 1,02500000 2,02623476
0,01250000 1,01250000 2,01281057
0,00625000 1,00625000 2,00632788
0,00312500 1,00312500 2,00314450
0,00156250 1,00156250 2,00156738

A0 A1 A2 A3 A4 A5
1,2841991342 1,0074965685 1,0001968322 1,0000025180 1,0000000159 1,0000000000 → f (1) = 1
1,1458478513 1,0020217662 1,0000268073 1,0000001723 1,0000000005
1,0739348088 1,0005255470 1,0000035017 1,0000000113
1,0372301779 1,0001340130 1,0000004476
1,0186820955 1,0000338389
1,0093579672 approximations de f (1)
45
1 Bases théoriques Max CERF
1.1 Définitions
1.1.3 Différentiabilité
Techniques d’optimisation 2018

1.1.3 Exemple
Dérivée par extrapolation
1 1 2
f (x) x2 f ' ( x ) 2x f ' ' (x) 2
x x2 x3
• Dérivée première et seconde en x=1 : f (1) = 1 , f (1) = 4
• Incrément initial : h = 0.1 → ordre d’extrapolation m = 6

hk x+hk f(x+hk)
0,10000000 1,10000000 2,11909091
0,05000000 1,05000000 2,05488095
0,02500000 1,02500000 2,02623476
0,01250000 1,01250000 2,01281057
0,00625000 1,00625000 2,00632788
0,00312500 1,00312500 2,00314450
0,00156250 1,00156250 2,00156738

B0 B1 B2 B3 B4 B5
3,7316017316 3,9850068631 3,9996063356 3,9999949640 3,9999999683 4,0000000000 → f (1) = 4
3,8583042973 3,9959564675 3,9999463855 3,9999996555 3,9999999990
3,9271303824 3,9989489060 3,9999929968 3,9999999775
3,9630396442 3,9997319741 3,9999991049
3,9813858091 3,9999323222
3,9906590657 approximations de f (1)
46
1 Bases théoriques Max CERF
1.1 Définitions
1.1.4 Convexité
Techniques d’optimisation 2018

1.1.4 Convexité

Ensemble convexe

Fonction convexe

Lien avec le gradient et le hessien

47
1 Bases théoriques Max CERF
1.1 Définitions
1.1.4 Convexité
Techniques d’optimisation 2018

1.1.4 Convexité
Ensemble convexe
X Rn convexe x, y X , λ 0,1 , λx (1 λ)y X
Interprétation géométrique : Segment inclus dans X

x x

y y
Non connexe Non convexe Convexe

Fonction convexe
f fonction de Rn dans R
• f convexe x, y R n , λ 0,1 , f λx (1 λ)y λf(x) (1 λ)f(y)
• f strictement convexe x, y R n , λ 0,1 , f λx (1 λ)y λf(x) (1 λ)f(y)
• f concave f convexe

Interprétation géométrique : Sécante au dessus de la courbe


Concavité vers le haut

x y
48
1 Bases théoriques Max CERF
1.1 Définitions
1.1.4 Convexité
Techniques d’optimisation 2018

1.1.4 Convexité
Convexité et gradient
f fonction différentiable de X Rn dans R, X ensemble convexe ouvert

• f convexe x, y X , f(y) f(x) (y x) T g(x)


• f strictement convexe x, y X , f(y) f(x) (y x) T g(x)

Interprétation géométrique : Tangente au dessous de la courbe

x y
Convexité et hessien
f fonction deux fois différentiable de X Rn dans R, X ensemble convexe ouvert

• f convexe x R n , H(x) semi-définie positive


• f strictement convexe x R n , H(x) définie positive

Matrice définie positive


A Rn n
• A définie positive d R n , d T Ad 0
• A semi-définie positive d R n , d T Ad 0

49
1 Bases théoriques Max CERF
1.1 Définitions
1.1.4 Convexité
Techniques d’optimisation 2018

1.1.4 Exemple
Fonction convexe f(x)=x3
f(x)
• Fonction : f(x) = x2 f(x)=x2
f’’(x) = 2 convexe sur R

• Fonction : f(x) = x3 x
f’’(x) = 6x convexe sur R+
non convexe sur R

x2
Ensemble convexe

• Ensemble : X ( x 1, x 2 ) / x 12 x 22 1
convexe

• Ensemble : X ( x 1, x 2 ) / x 12 x 22 1 x1
non convexe

50
1 Bases théoriques Max CERF
1.1 Définitions
1.1.5 Conditionnement
Techniques d’optimisation 2018

1.1.5 Conditionnement

Conditionnement d’une matrice

Conditionnement d’une fonction

Préconditionnement

Système linéaire perturbé

Mise à l’échelle

51
1 Bases théoriques Max CERF
1.1 Définitions
1.1.5 Conditionnement
Techniques d’optimisation 2018

1.1.5 Conditionnement
Conditionnement d’une matrice
A matrice symétrique semi-définie positive
Valeurs propres de A : σ1 σn A 2
σ1
σ1
Nombre de conditionnement de A : κ(A) A A -1 1
2 2 σn
Conditionnement d’une fonction
f fonction deux fois différentiable
Conditionnement de f en x = nombre de conditionnement de A=H(x)

Interprétation
Vecteur propre dk associé à la valeur propre k : Akdk σkdk
d Tk H(x)d k
Courbure de f en x dans la direction dk : σk
d Tk d k
Théorème de Rayleigh-Ritz
d1 = direction de plus forte courbure (courbure = 1)
dn = direction de plus faible courbure (courbure = n)

52
1 Bases théoriques Max CERF
1.1 Définitions
1.1.5 Conditionnement
Techniques d’optimisation 2018

1.1.5 Exemple
Matrice 2 2
a b 1 1 d b
• Inverse : A A avec det(A) ad bc
c d det(A) c a

2
• Valeurs propres : det(A I) 0 a d bc 0 a d det(A) 0

Conditionnement
0.1 1
• A
0.20002 2

2 2.10001
• Valeurs propres : 2.1 0.00002 0 1
2 0.00001

A σ1 σ1
• Conditionnement : -1
2 (A) 210001
A 1/ σ2 σ2
2

53
1 Bases théoriques Max CERF
1.1 Définitions
1.1.5 Conditionnement
Techniques d’optimisation 2018

1.1.5 Préconditionnement
Changement de variable
~
x Mx
• Variable : ~ (M Rn n inversible = matrice de préconditionnement)
~ -1~
• Fonction : f (x) f(x) f(M x)
~~ ~
• Gradient : f (~x) M -T f(M -1~ x) g(~
x) M -T g(x)
2 ~ -T 2 -1~ -1 ~~
• Hessien : f (x ) M f(M x )M H (x) M -T H(x)M -1

Préconditionnement de f
• Factorisation de Cholesky (si H(x) définie positive) : H(x)=LLT
~ ~ ~
• Conditionnement optimal (minimal) de f en x pour : x LT x H(~
x) I κ(H) 1

Sans conditionnement Avec conditionnement

x2 ~
x2

x* ~
x*
f ~
f

x1 ~
x1 54
1 Bases théoriques Max CERF
1.1 Définitions
1.1.5 Conditionnement
Techniques d’optimisation 2018

1.1.5 Système linéaire perturbé


Perturbation du second membre
• Système non perturbé : Ax =b solution x*
• Système perturbé au 2nd membre : A(x + xb) = b+ b solution x* + xb
• Système perturbé au 1er membre : (A+ A)(x + xA) = b solution x* + xA

Ax * b Ax * b b Ax *
A(x * Δx b ) b Δb A.Δ x b Δb Δx b A 1Δb
(A ΔA)(x * Δx A ) b A.Δ x A ΔA.x* 0 Δx A A 1. A . x *

• Majoration de la perturbation
1 A
b Ax * b A . x*
x* b
Δx b 1
Δb
1 A .A .
Δx b 1
A Δb Δx b A . Δb x* b
Δx A A 1. A . x * Δx A A 1
. ΔA . x * Δx A 1
ΔA
A .A .
x* A

• Amplification maximale de la perturbation : κ(A) A . A -1

55
1 Bases théoriques Max CERF
1.1 Définitions
1.1.5 Conditionnement
Techniques d’optimisation 2018

1.1.5 Exemple
Système perturbé 2 2
• Système non perturbé
0.1x 1 x2 2 0.1 1 x1 2 x 1 10
0.20002x 1 2x 2 4.0002 0.20002 2 x 2 4.0002 x2 1

0.101 1 x1 0.101
• Perturbation A : A x2 2.010
0.20002 2

2.01 x1 990
• Perturbation b : b
4.0002 x2 101.01

x2
Conditionnement : (A) 210001

10 x1
56
1 Bases théoriques Max CERF
1.1 Définitions
1.1.5 Conditionnement
Techniques d’optimisation 2018

1.1.5 Mise à l’échelle


Principe
• Des valeurs numériques trop différentes sont sources de blocage des algorithmes.
Exemple : (1 + 10-20) 1 = 1 1 = 0 au lieu de 10-20 avec 16 chiffres significatifs
• Pour réduire les erreurs numériques, il faut que les différentes valeurs utilisées dans les calculs
aient des ordres de grandeur comparables.
• Méthode de mise à l’échelle : transformation affine X’ = X +

Quantités à mettre à l’échelle


• Variables : x x’ 1 ( déplacement sur toutes les composantes de x)
• Critère : f f’ 1 ( tests d’arrêt sur variation de f)
• Contraintes : c c’ 1 ( contraintes de poids équivalents)

• Jacobien : c c' 1 ( directions admissibles)


2 2
• Hessien : L L' 1 ( courbure, conditionnement)

Difficultés
• On ne peut pas simultanément mettre toutes les quantités à l’échelle choix expérimental
• Le facteur d’échelle dépend du point x à adapter au cours des itérations
(mise à l’échelle dynamique)
57
1 Bases théoriques Max CERF
1.1 Définitions
1.1.6 Direction de déplacement
Techniques d’optimisation 2018

1.1.6 Direction de déplacement

Direction de descente
- Définition
- Point de Newton
- Point de Cauchy

Direction admissible

Contraintes linéaires

58
1 Bases théoriques Max CERF
1.1 Définitions
1.1.6 Direction de déplacement
Techniques d’optimisation 2018

1.1.6 Direction de descente


Direction de descente
• Gradient de f en x Rn : g(x) = f(x)
• Dérivée directionnelle de f en x suivant d Rn : fd(x) = g(x)Td
d est une direction de descente en x si : fd(x) = g(x)Td < 0

• La direction de plus forte pente d+ est la direction du gradient : d+ = g(x)


• La direction de plus forte descente d est opposée au gradient : d = g(x)
2
d Rn/ d d , g(x) T d g(x) T d g(x)

x2 d1
f(x)

x*
d2

x0

x1
59
1 Bases théoriques Max CERF
1.1 Définitions
1.1.6 Direction de déplacement
Techniques d’optimisation 2018

1.1.6 Direction de descente


Variation suivant une direction
• Déplacement d Rn à partir de x0 Rn : d = sd0 avec d0 Rn = direction de déplacement
s R = pas de déplacement suivant d0
• Modèle quadratique au voisinage de x0 : (s)=f(x0+sd0) fonction de R dans R
1 2 T 1 2
f̂(x 0 sd 0 ) f(x 0 ) sg T0 d 0 s d 0 H 0d 0 ˆ (s) (0) s ' (0) s ' ' (0)
2 2
g0 f(x 0 ) ' (0) g T0 d 0
avec 2 avec
H0 f(x 0 ) ' ' (0) d T0 H 0 d 0

Meilleure direction : d2 < d < d1


f(x0) d1
(s)
d1(s)
d-(s)

d2
x*

x0 d2(s)

s=0 sd1 sd- sd2 s


x=x0 60
1 Bases théoriques Max CERF
1.1 Définitions
1.1.6 Direction de déplacement
Techniques d’optimisation 2018

1.1.6 Direction de descente


Minimisation locale
Deux points particuliers sont définis à partir du modèle quadratique de f en x 0 :
• Point de Newton : minimisation de f par rapport à d Rn x n = x0 + d n
• Point de Cauchy : minimisation de f suivant d0= g0 x c = x 0 sc g 0

Point de Newton
1 T g0
T
min f̂(x 0 d) f(x 0 ) g d d H 0d
0
d Rn 2
dn H 0 1g 0 si H 0 0 xc

xn existe si H0= 2f(x


0) est définie positive.
xn x0
Point de Cauchy
1 2
min ˆ (x 0 sg 0 ) (0) s ' (0) s ' ' (0)
s R
2
2
' (0) 2 g T0 g 0
sc T
si ' ' (0) g T0 H 0 g 0 0
' ' (0) g 0 H 0g 0

xc existe si f est convexe suivant g0 (condition moins forte que H0 définie positive).

61
1 Bases théoriques Max CERF
1.1 Définitions
1.1.6 Direction de déplacement
Techniques d’optimisation 2018

1.1.6 Direction admissible


Direction admissible
d Rn direction de déplacement à partir de x Xadm point admissible

Définition : d direction admissible d


ε 0 / s, 0 s ε x sd X adm
On peut se déplacer d’au moins suivant d à partir de x
en restant admissible x
c(x)
• Contrainte égalité : cE(x)Td = 0 tangent
• Contrainte inégalité : cI(x)Td 0 intérieur

Ensemble convexe
Xadm convexe, y x, x,y Xadm [x,y] Xadm
d=y x est une direction admissible à partir de x

Point intérieur
x point intérieur à Xadm x d
Toute direction d Rn est admissible à partir de x

62
1 Bases théoriques Max CERF
1.1 Définitions
1.1.6 Direction de déplacement
Techniques d’optimisation 2018

1.1.6 Contraintes linéaires


Contraintes linéaires
Contraintes linéaires sous forme standard : Ax b
x 0
X adm x R n / Ax b, x 0

Direction admissible
Ad 0
d Rn direction admissible à partir de x point admissible
d i 0 si x i 0
Preuve :
A(x sd) b Ad 0 car Ax b
Pour s>0 petit, on doit avoir :(x sd) X adm
x sd 0 x sd 0
Si xi 0, alors xi sd i 0 pour s assez petit
Si xi 0, alors xi sd i 0 si d i 0

Combinaison de directions admissibles


Toute combinaison linéaire à coefficients positifs de directions admissibles
est une direction admissible.
Ad 0
Preuve : Une combinaison linéaire à coefficients positifs vérifie également d 0 si x 0
i i

63
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
Techniques d’optimisation 2018

Sommaire
1. Bases théoriques
1.1 Définitions
1.2 Contraintes linéaires
1.2.1 Rappels d’algèbre linéaire
1.2.2 Direction admissible
1.2.3 Réduction
1.2.4 Projection
1.3 Contraintes non linéaires
1.4 Conditions d’optimalité

2. Optimisation sans contraintes


3. Optimisation avec contraintes
4. Optimisation discrète
5. Optimisation fonctionnelle

64
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.1 Rappels d’algèbre linéaire
Techniques d’optimisation 2018

1.2.1 Rappels d’algèbre linéaire

Application linéaire
- Matrice d’une application linéaire
- Espace nul
- Espace image

Matrice
- Valeurs et vecteurs propres
- Matrices particulières
- Factorisations

Système linéaire
- Solutions
- Contraintes redondantes

Inversion matricielle
- Formule de Sherman-Morrison-Woodbury
65
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.1 Rappels d’algèbre linéaire
Techniques d’optimisation 2018

1.2.1 Application linéaire


Application linéaire
Une matrice A Rm n définit une application linéaire de Rn dans Rm : x Rn y Ax R m

Espace nul (ou noyau)


• L’espace nul de A est défini par : Ker(A) x R n / Ax 0
• Si A est non singulière : Ker(A) 0

Espace image
• L’espace image de A est défini par : Im(A) y Ax, x Rn
• Si A est non singulière : Im(A) R n

Le rang de A est la dimension de Im(A) : rang(A) dim(Im(A))

Théorème fondamental de l’algèbre


Ker(A) et Im(AT) sont supplémentaires dans Rn : Ker(A) Im(A T ) R n
Tout x Rn s’écrit de façon unique comme somme d’un élément xZ de Ker(A)
et d’un élément xY de Im(AT)
xZ Ker(A)
x Rn, x xZ xY avec de façon unique
xY Im(A T )
66
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.1 Rappels d’algèbre linéaire
Techniques d’optimisation 2018

1.2.1 Matrice
Valeurs et vecteurs propres
Une matrice A Rn n admet la valeur propre R
s’il existe un vecteur non nul v Rn tel que : Av = v
v est un vecteur propre associé à la valeur propre .

Matrices particulières
• A non singulière Aucune valeur propre de A n’est nulle.

• A symétrique AT = A
A admet n valeurs propres réelles (distinctes ou non)
A admet une base orthonormée de vecteurs propres

• A orthogonale AAT = ATA = I

• A semi-définie positive vTAv 0 pour tout v Rn


• A définie positive vTAv 0 pour tout v Rn

• A symétrique définie positive A admet n valeurs propres réelles positives


(distinctes ou non)

67
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.1 Rappels d’algèbre linéaire
Techniques d’optimisation 2018

1.2.1 Exemple
Valeurs propres d’une matrice 2 2
a 11 a 12
• Matrice A : A
a 21 a 22

a 11 a 12
• Valeurs propres : det(A I) 0 0 (a 11 )(a 22 ) a 12 a 21 0
a 21 a 22
2
(a 11 a 22 ) a 11a 22 a 12 a 21 0
1
a 11 a 22 (a 11 a 22 ) 2 4(a 11a 22 a 12 a 21 )
2

802 400 1 1001.60


• Exemple : A
400 200 0.39936
2

Conditionnement : (A) = 2508

68
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.1 Rappels d’algèbre linéaire
Techniques d’optimisation 2018

1.2.1 Exemple
Diagonalisation matrice symétrique 2 2
a b
• Matrice Q : Q avec b c
c d
cos sin
• Base orthonormée de vecteurs propres : v1 , v2
sin cos

cos sin
• Matrice de passage orthogonale : P
sin cos

T a cos 2 2b cos sin d sin 2 (d a ) cos sin b(cos 2 sin 2 )


P QP
(d a ) cos sin b(cos 2 sin 2 ) a sin 2 2b cos sin d cos 2

diagonale si (d a ) cos sin b(cos 2 sin 2 ) 0

avec b 0 sinon Q directement diagonale cos 0


a d
• Direction des axes principaux (vecteurs propres) : tan 2 tan 1 0
2 solutions 1 et 2 = 1 + /2 b

69
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.1 Rappels d’algèbre linéaire
Techniques d’optimisation 2018

1.2.1 Permutation
Permutation de colonnes
1 j k n
1

A Rm n, matrice à m lignes, n colonnes A


m

E Rn n , matrice de permutation des colonnes j et k


ET = E
1 j k n
1 1 0 0 0
1 j k n
1
j 0 0 1 0
E AE
m
k 0 1 0 0

n 0 0 0 1

70
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.1 Rappels d’algèbre linéaire
Techniques d’optimisation 2018

1.2.1 Factorisation
Factorisation de matrice
A Rm n, matrice à m lignes, n colonnes avec m < n
A de rang plein : rang(A) = m < n
1 j k n
1

A
m

3 types de factorisations sont utiles dans les algorithmes d’optimisation.

• Factorisation LU Pour réduire le problème (variables dépendantes et indépendantes)


Pour construire une base de l’espace nul

• Factorisation QR Pour réduire le problème (variables dépendantes et indépendantes)


Pour construire une base orthogonale de l’espace nul

• Factorisation LLT Pour une matrice définie positive


ou LDLT Pour rendre le hessien défini positif

71
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.1 Rappels d’algèbre linéaire
Techniques d’optimisation 2018

1.2.1 Factorisation LU
Factorisation LU 1 j k n
1

A Rm n, matrice à m lignes, n colonnes A


m
• Matrice carrée n n
L n n triangulaire inférieure
AE LU
U n n triangulaire supérieure

• Matrice rectangulaire m n, m< n Factorisation de AT


L1 m m triangulaire inférieure
L 1
EA T LU U L2 (n m) m pleine
L2 U m m triangulaire supérieure

L1T LT2
• Base de l’espace nul : Z E T
U T

Méthode de factorisation LU
Méthode d’élimination de Gauss (ou méthode du pivot de Gauss)

72
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.1 Rappels d’algèbre linéaire
Techniques d’optimisation 2018

1.2.1 Factorisation QR
Factorisation QR 1 j k n
1

A Rm n, matrice à m lignes, n colonnes A


m

• Matrice rectangulaire m n
Q m m orthogonale QQT = I
AE QR
R m n triangulaire supérieure

• Base de l’espace nul Factorisation de AT


Q1 n m orthogonale
EA T QR Q1 Q 2 R Q2 n (n m) orthogonale Z ET Q2
R n m triangulaire supérieure

Méthode de factorisation QR
Méthode de Householder ou méthode de Givens

73
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.1 Rappels d’algèbre linéaire
Techniques d’optimisation 2018

1.2.1 Factorisation LLT


Factorisation LLT

A Rn n, matrice carrée n n symétrique définie positive

ETAE = LLT avec L matrice n n triangulaire inférieure

• Lien avec la factorisation QR

AE QR E T A T AE R T Q T QR R TR car Q orthogonale
R L
1
Q AER

Méthode de factorisation LLT ou LDLT


• Méthode de Cholesky
Permet de vérifier que la matrice A est bien définie positive

• Méthode de Cholesky modifiée


Permet de rendre la matrice A définie positive en la modifiant au cours de la factorisation

74
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.1 Rappels d’algèbre linéaire
Techniques d’optimisation 2018

1.2.1 Exemple
Factorisation LDLT d’une matrice 3 3
A L D LT
a 11 a 21 a 31 1 0 0 d1 0 0 1 l 21 l 31
a 21 a 22 a 32 l 21 1 0 0 d2 0 0 1 l 32
a 31 a 32 a 33 l 31 l 32 1 0 0 d3 0 0 1

• Résolution directe
d1 a 11 d1 , d2 , d3 > 0
a 11 d1 si A est définie positive
a 21
a 21 d1l 21 l 21
d1 sinon on modifie dj
a 31 d1l 31 a 31 en cours de factorisation
l 31
d1 dj = max( , dj) , > 0
a 22 d1l 221 d 2 d2 a 22 d1l 221

a 32 d1l 31l 21 d 2 l 32 a 32 d1l 31l 21


l 32
2 2
d2
a 33 d1l 31 d 2 l 32 d3 d3 2
a 33 d1l 31 2
d 2 l 32
75
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.1 Rappels d’algèbre linéaire
Techniques d’optimisation 2018

1.2.1 Exemple
Factorisation LDLT d’une matrice 2 2

A L D LT d1 a 11
a 11 a 21 1 0 d1 0 1 l 21 a 21
l 21
a 21 a 22 l 21 1 0 d 2 0 1 d1
d2 a 22 d1l 221
• Exemple

802 400 1 0 802 0


A L ,D
400 200 0.4988 1 0 0.4988

Les éléments de la matrice diagonale D sont positifs A est définie positive

1 1001.60
Valeurs propres de A :
2 0.39936

76
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.1 Rappels d’algèbre linéaire
Techniques d’optimisation 2018

1.2.1 Factorisation LDLT


Méthode de Cholesky modifiée
A matrice n n symétrique matrice A’ définie positive « proche » de A
(A’ = A si A est définie positive)
A’ = LDLT avec L triangulaire inférieure, D diagonale positive
• Notations : A=(aij) , L=(lij) , D=(dij) , i,j=1,…,n

• Algorithme
Pour j = 1,2,…,n Modification pour rendre dj > 0
j 1 (si A n’est pas définie positive)
c jj a jj d s l 2js
s 1 Si dj 2
j
dj c jj dj max c jj , , avec j max c ij
j i n

Pour i = j+1,…,n
j 1 dj
c ij a ij d s l is l js
s 1
m ij l ij d j , i j 1,..., n
c ij
l ij Paramètres : > 0 petit ( = 10-3)
dj >0 ( = 1)
Fin boucle i
Fin boucle j
77
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.1 Rappels d’algèbre linéaire
Techniques d’optimisation 2018

1.2.1 Système linéaire


Système linéaire

A Rm n
matrice de rang r : rang(A) = r
Ax b avec b Rm m équations
x Rn n inconnues

Le rang de A est la dimension du sous-espace engendré par A (image de A).

Im(A) y Ax, x Rn r = dim(Im(A)) m,n

Solutions possibles
• Pas de solution : système incompatible (m>n : plus d’équations que d’inconnues)
• Solution unique : système non singulier (m=n : autant d’équations que d’inconnues)
• Infinité de solutions : système sous-déterminé (m<n : moins d’équations que d’inconnues)

Problème d’optimisation
Contraintes linéaires Ax=b système sous-déterminé (m<n)
n-m inconnues «libres» permettant de minimiser le critère

78
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.1 Rappels d’algèbre linéaire
Techniques d’optimisation 2018

1.2.1 Système linéaire


Contraintes redondantes
Pour un système sous-déterminé (m<n), si A est de rang déficient : rang(A) = r < m,
on peut extraire de A une sous-matrice à Rr n de rang plein, telle que
~ ~
Ax b Ax b
à est composée des lignes l1,…,lr de A.
Les lignes lr+1,…,lm sont combinaisons linéaires des lignes l1,…,lr.
Elles correspondent à des contraintes redondantes et peuvent être éliminées de la résolution.

A Ã
1 n 1 n
1 l1

lr
lr 1

m lm

79
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.1 Rappels d’algèbre linéaire
Techniques d’optimisation 2018

1.2.1 Inversion matricielle


Formule de Sherman-Morrison-Woodbury

Pour des matrices A,B Rn n


U,V Rn m , m ≤ n
1
B A UV T B 1
A 1
A 1U I V T A 1U VTA 1

Preuve : par vérification


1
BB ( A UV T )( A 1
A 1U(I V T A 1U ) 1V T A 1 )

I UV T A 1
U(I V T A 1U ) 1V T A 1
UV T A 1U(I V T A 1U ) 1V T A 1

I UV T A 1
U(I V T A 1U) (I V T A 1U ) 1V T A 1
en factorisant

I UV T A 1
UV T A 1
I

De même pour B-1B

80
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.2 Direction admissible
Techniques d’optimisation 2018

1.2.2 Direction admissible

Polytope

Forme standard

Sommet

Base

Solution de base

Direction de base

81
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.2 Direction admissible
Techniques d’optimisation 2018

1.2.2 Polytope
Définition
Polytope P dans Rn P x R n / Ax b A Rm n , b Rm

Interprétation géométrique

A1,1 x 1 A1,2 x 2 A1, n x n b1 hyperplan 1


A 2,1 x 1 A 2,2 x 2 A 2, n x n b2 hyperplan 2
Ax b
A m,1 x 1 A m,2 x 2 A m, n x n bm hyperplan m

A j,. x bj
Chaque hyperplan j sépare Rn en 2 sous-espaces :
A j,. x bj
P
P = ensemble de points de Rn délimité par m hyperplans

Polytope dans R2 = polygone


Polytope dans R3 = polyèdre

82
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.2 Direction admissible
Techniques d’optimisation 2018

1.2.2 Forme standard


Forme standard
Polytope P dans Rn sous forme standard
A Rm n , b Rm
P x R n / Ax b , x 0
A de rang plein (élimination contraintes redondantes Ã)

Passage sous forme standard


• Contrainte inégalité : Transformation en contrainte égalité
Ajout d’une variable d’écart positive
c(x) z b c (x) b avec c (x) c(x) z
c(x) b
z 0 z 0
c(x) z b c (x) b avec c (x) c(x) z
c(x) b
z 0 z 0
• Contraintes de bornes : Changement de variable borne inférieure
Ajout d’une variable d’écart positive borne supérieure
x x xl , x 0 x x xl , x 0
xl x xu 0 x xl xu xl
x xu xl x z xu xl , z 0

• Variable libre : Différence de 2 variables positives


x R x z y , y, z 0
83
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.2 Direction admissible
Techniques d’optimisation 2018

1.2.2 Exemple
Mise sous forme standard
• Problème linéaire (P)
x 1 3x 2 5
min x 1 2x 2 3x 3 sous 2x 1 x 2 3x 3 6
x1 , x 2 , x 3
x 1 R, x 2 1, x 3 4

• Changement de variables pour les bornes


x1 R x 1 z 1 y1 y1 , z 1 0
x2 1 x2' x2 1 x2' 0
x3 4 x3 ' 4 x3 x3 ' 0

• Variables d’écart pour les contraintes inégalité


2x 1 x 2 3x 3 6 2x 1 x 2 3x 3 z 2 6 z2 0

• Problème équivalent à (P) sous forme standard


y1 z1 3x 2 ' 2
min z1 y1 2x 2 ' 3x 3 ' 14 sous
y1 , z 1 , z 2 , x 2 ', x 3 ' 2z1 2y1 x 2 ' 3x 3 ' z 2 5

84
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.2 Direction admissible
Techniques d’optimisation 2018

1.2.2 Sommet
Sommet
Polytope P dans Rn sous forme standard
A Rm n , b Rm
P x R n / Ax b , x 0
A de rang plein : rang(A)=r=m n

Définition

x P est un sommet de P
sommets
On ne peut pas trouver y,z P, différents de x
tels que x soit combinaison convexe de y et z non sommets
i.e. x = y + (1- )z avec 0< <1

Existence
Tout polytope non vide possède au moins un sommet.

85
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.2 Direction admissible
Techniques d’optimisation 2018

1.2.2 Base
Base
Polytope P dans Rn sous forme standard
P x R n / Ax b , x 0 A Rm n , b Rm

• A est de rang plein r=m n Il existe m colonnes indépendantes.


• On choisit une sous-matrice B Rm m de rang plein (parmi C mn combinaisons possibles)

B N
1 m m 1 k 1 k k 1 n
1
m n m
AE B N
m

E matrice de permutation des colonnes de A : EET=I

A.,k = kème colonne de AE


• B = matrice de base B Rm m inversible
• N = matrice hors base N Rm (n-m)

86
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.2 Direction admissible
Techniques d’optimisation 2018

1.2.2 Solution de base


Identification des sommets
Polytope P dans Rn sous forme standard
P x R n / Ax b , x 0 A Rm n , b Rm

• Choix d’une base B Rm m

m n m xB
AE B N ET x
xN
• xB Rm = variables en base (ou liées ou dépendantes)
xN Rn-m = variables hors base (ou libres ou indépendantes)
1
Ax b Bx B Nx N b xB B b Nx N
• Point admissible : x P
x 0 x 0 x 0

• Identification des sommets


xB B 1b 0 T B 1b
Tout point x tel que : E x est un sommet du polytope.
xN 0 0

« solutions de base »
87
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.2 Direction admissible
Techniques d’optimisation 2018

1.2.2 Solution de base


Identification des sommets
Preuve : par l’absurde
T
xB xB B 1b 0
• On suppose le point x : E x avec n’est pas un sommet de P.
xN xN 0
x peut alors s’écrire : x = y + (1- )z avec 0< <1
y et z P , y x, z x

• En décomposant suivant les composantes B et N : x B yB ( 1 )z B avec y P yN 0


xN yN ( 1 )z N z P zN 0
• A partir de xN=0
yN , zN 0 yN 0
xN yN (1 )z N 0 avec
0 1 zN 0

• A partir de y P : Ay b By B Ny N b yB B 1b yB xB
A partir de z P : Az b Bz B Nz N b zB B 1b zB xB

B 1b
• On obtient y z x en contradiction avec l’hypothèse que x n’est pas un sommet de P
0
88
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.2 Direction admissible
Techniques d’optimisation 2018

1.2.2 Solution de base


Solution de base
Polytope P dans Rn sous forme standard
P x R n / Ax b , x 0 A Rm n , b Rm
A de rang plein : rang(A)=r=m n
Définition
x Rn est une solution de base de P

Il existe m indices i1,…,im tels que


• La matrice B Rm m composée des colonnes i1,…,im de A est de rang plein
• Les n-m composantes xi, i i1,…,im sont nulles xN 0 B 1b
1 ET x
• x vérifie Ax=b xB B b 0

Solution de base admissible


Une solution de base x est admissible si toutes ses composantes sont positives (x P).
x vérifie également x 0 x B B 1b 0
Base admissible ou réalisable, solution de base admissible ou réalisable

Solution de base dégénérée


Une solution de base x est dégénérée si plus de n-m composantes de x sont nulles.
xN=0 par définition (n-m composantes) xB comporte des composantes nulles
89
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.2 Direction admissible
Techniques d’optimisation 2018

1.2.2 Solution de base


Lien sommet – solution de base
Polytope P dans Rn sous forme standard
P x R n / Ax b , x 0 A Rm n , b Rm
A de rang plein : rang(A)=r=m n

• I=indices des composantes nulles en x* P : I* i / x *i 0


(= contraintes inégalités actives)

• S=variété linéaire définie par : S* x R n / Ax b , xi 0, i I*

x* Rn est un sommet de P S* x* x* est une solution de base admissible de P

Lien sommet – contraintes actives

x* P est un sommet de P Au moins n contraintes sont actives en x*

• m contraintes égalité : Ax * b
• n-m contraintes inégalité : x *N 0
Les m contraintes inégalité sur xB peuvent être actives ou non :
x *B B 1b 0 dégénérescence
90
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.2 Direction admissible
Techniques d’optimisation 2018

1.2.2 Solution de base


Lien sommet – solution de base
Eléments de la démonstration : Le sens inverse est déjà démontré (identification des sommets)

Sens direct : x Rn est un sommet de P x est une solution de base admissible de P


• On suppose par contraposée que x n’est pas une solution de base admissible.
m n m
T xB
• En décomposant suivant les composantes B et N : AE B N E x
xN
avec B,N choisies telles que xB > 0
• x n’est pas une solution de base admissible Il existe au moins une composante xNk 0
T
d Bk B 1 A.,k 1 m m 1 k 1 k k 1 n
On construit la direction dk ET d k ek d1 dm 0 0 1 0 0
(dite kème direction de base) d Nk 0

Ad k Bd Bk Nd Nk BB 1 A.,k Nd Nk A.,k A.,k 0 car N d Nk k


A.,k
Ax dk Ax Ad k b
avec A.,k = kème colonne de AE, dk a toutes ses composantes hors base nulles sauf la kème = 1
xB 0 Ax b
• Comme , on peut se déplacer suivant dk et +dk d’un pas petit en conservant
x Nk 0 x 0
On obtient 2 points y et z de P tels que x = y + (1- )z avec 0< <1
x n’est pas un sommet de P. 91
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.2 Direction admissible
Techniques d’optimisation 2018

1.2.2 Exemple
Recherche des solutions de base
Polytope P dans R4 sous forme standard
1 1 1 0 1
P x 1 , x 2 , x 3 , x 4 / Ax b, x 0 avec A , b
1 1 0 1 1

• On utilise les contraintes pour réduire le problème à (x1,x2)


x1 x 2 x3 1 x3 1 x1 x 2
Ax b
x1 x 2 x4 1 x4 1 x1 x 2
x3 0 x1 x 2 1
x 0
x4 0 x1 x 2 1

• Polytope P’ réduit dans R2

x1 x x2 1 x1 0
P' / 1 ,
x2 x1 x 2 1 x2 0
x1
x2 x1
• Les polytopes P dans R4 et P’ dans R2 sont équivalents : P P'
x3 x2
x4
Remarque : P = forme standard de P’
92
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.2 Direction admissible
Techniques d’optimisation 2018

1.2.2 Exemple
Recherche des solutions de base
• Représentation de P’ dans R2 x2
x1 x x2 1 x1 0 1 C
P' / 1 ,
x2 x1 x 2 1 x2 0
x1+x2=1
représentation des valeurs possibles de (x1,x2)
pour (x1,x2,x3,x4) P
x1 P
1 1 1 0 x2 1
• Contraintes de P : Ax b A B
1 1 0 1 x3 1
4 variables 2 contraintes x4 0 1 x1
• Base de P
choisir 2 colonnes indépendantes de A
6 combinaisons possibles
x1 x2=1
• Solution de base
fixer les 2 variables hors base xN à 0
calculer les 2 variables de base xB pour vérifier Ax=b D
base admissible si xB 0
93
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.2 Direction admissible
Techniques d’optimisation 2018

1.2.2 Exemple
Recherche des solutions de base
Examen des 6 bases possibles de P x2
1 1 1 0 1 1 C
A , b xB B 1b
1 1 0 1 1
x1+x2=1
1 1 0,5 0,5 1
• Base (x1,x2) : B , B -1 , xB
1 1 0,5 0,5 0
x = (1 0 0 0) admissible point B P
A B
1 1 0 1 1 0 1 x1
• Base (x1,x3) : B , B -1 , xB
1 0 1 1 0
x = (1 0 0 0) admissible point B

1 0 1 0 1 x1 x2=1
• Base (x1,x4) : B , B -1 , xB
1 1 1 1 0
x = (1 0 0 0) admissible point B D

94
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.2 Direction admissible
Techniques d’optimisation 2018

1.2.2 Exemple
Recherche des solutions de base
Examen des 6 bases possibles de P x2
1 1 1 0 1 1 C
A , b xB B 1b
1 1 0 1 1
x1+x2=1
1 1 0 1 1
• Base (x2,x3) : B , B -1 , xB
1 0 1 1 2
x = (0 1 2 0) non admissible point D P
A B
1 0 1 0 1 0 1 x1
• Base (x2,x4) : B , B -1 , xB
1 1 1 1 2
x = (0 1 0 2) admissible point C

1 0 1 0 1 x1 x2=1
• Base (x3,x4) : B , B -1 , xB
0 1 0 1 1
x = (0 0 1 1) admissible point A D

95
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.2 Direction admissible
Techniques d’optimisation 2018

1.2.2 Direction de base


Direction de déplacement à partir d’un sommet
Polytope P dans Rn sous forme standard
P x R n / Ax b , x 0 A Rm n de rang plein, b Rm
T xB B 1b
x Rn solution de base admissible de P : E x 0
xN 0

dB
d Rn direction de déplacement : ETd
dN
Direction admissible
Ad 0
d direction admissible en x (contraintes linéaires)
d i 0 si x i 0
Ad 0 Bd B Nd N 0 dB B 1 Nd N

dB B 1 Nd N
d direction admissible en x dN 0 car x N 0
d Bi 0 si x Bi 0 (solution de base dégénérée)

« directions de base »
96
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.2 Direction admissible
Techniques d’optimisation 2018

1.2.2 Direction de base


Direction de base
T xB B 1b
x Rn solution de base admissible de P : E x 0
xN 0
k = indice d’une variable hors-base d kB dB
T k
dk = kème direction de base en x : E d noté
d kN dN
• Les composantes dN sur les variables hors base sont toutes nulles, sauf sur la variable xk
T
1 k 1 k k 1 n
0
ET ek 0 0 1 0 0
dN
• Les composantes dB sur les variables en base vérifient la 1ère condition de direction admissible
Ad 0 Bd B Nd N 0 dB B 1 Nd N B 1
A ., jd j
j hors base
dB 1
B A ., k (A.,k = kème colonne de AE)

• Définition d kB B 1A ., k 1 m m 1 k 1 k k 1 n
T
T k
La kème direction de base en x est : E d ek d1 dm 0 0 1 0 0
d kN 0
• Interprétation géométrique : directions de base = arêtes du polytope en x
97
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.2 Direction admissible
Techniques d’optimisation 2018

1.2.2 Direction de base


Direction de base admissible
x Rn solution de base admissible de P, k = indice d’une variable hors-base

La kème direction de base dk en x vérifie par définition : Ad 0


dN 0
Pour que dk soit une direction admissible, il faut également vérifier : d Bi 0 si x Bi 0

Cas d’une base non dégénérée

x solution de base admissible non dégénérée (xB > 0)

Toutes les directions de base en x sont admissibles

Combinaison de directions de base


x Rn solution de base admissible de P
Toute direction admissible d en x est combinaison linéaire des directions de base dk en x

d αkdk avec dk = kème direction de base en x


k hors base

98
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.2 Direction admissible
Techniques d’optimisation 2018

1.2.2 Direction de base


Cas d’une base non dégénérée
Preuve : on suppose que x est une solution de base non dégénérée.
• La kème direction de base dk vérifie
Ad k Bd Bk Nd Nk BB 1 A.,k Nd Nk A.,k A.,k 0 car N d Nk k A.,k
• Comme x B 0 , on peut se déplacer suivant dk à partir de x en restant admissible
dN 0 dk est une direction admissible.

Combinaison de directions de base


Preuve : on suppose que d est une direction admissible.

• En décomposant suivant les composantes B et N : Ad Bd B Nd N 0 dB B 1 Nd N

• En notant dk les composantes de dN dans la base canonique de Rn : d N d k ek


k N
dB B 1 A.,k
• On obtient pour d : d dk
dN k N ek

k B 1 A.,k
avec d = kème direction de base d = combinaison linéaire des dk
ek
99
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.2 Direction admissible
Techniques d’optimisation 2018

1.2.2 Exemple
Recherche des directions de base
Polytope P dans R4 sous forme standard x2

P x1 , x 2 , x 3 , x 4 / Ax b, x 0 1 C

1 1 1 0 1 x1+x2=1
avec A , b
1 1 0 1 1
• Direction de base en une solution de base admissible
choisir une variable hors base (k) P
fixer la composante hors base correspondante dNk à 1 A B
fixer les autres composantes hors base dN à 0
calculer les composantes en base dB par B 1A.,k 0 1 x1

• Si la base est non dégénérée, la direction est admissible.


Sinon, il faut vérifier dB 0 sur les composantes xB = 0
x1 x2=1
• Sommets de P
2 variables hors base à chaque sommet
2 directions de base (= arêtes du polytope) D

100
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.2 Direction admissible
Techniques d’optimisation 2018

1.2.2 Exemple
Recherche des directions de base
Examen de directions de base de P x2
1 1 1 0 1 C
A
1 1 0 1
x1+x2=1
• Base admissible (x2,x4) : x = (0 1 0 2) point C
1 0 1 0 d3 d1
B , B -1
1 1 1 1 P
• Direction de base d1 correspondant à la variable hors base x1 A B
1 0 1 1 0 1 x1
dB B -1A .,1
1 1 1 2
d1 = (1 1 0 2) admissible

• Direction de base d3 correspondant à la variable hors base x3 x1 x2=1


-1 1 0 1 1
dB B A .,3
1 1 0 1 D
d3 = (0 1 1 1) admissible
101
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.2 Direction admissible
Techniques d’optimisation 2018

1.2.2 Exemple
Recherche des directions de base
Examen de directions de base de P x2
1 1 1 0 1 C
A
1 1 0 1
x1+x2=1
• Base admissible (x1,x4) : x = (1 0 0 0) point B
base dégénérée d2
1 0 1 0
B , B -1
1 1 1 1 P
• Direction de base d2 correspondant à la variable hors base x2 A B
1 0 1 1 0 1 x1
dB B -1A ., 2 d3
1 1 1 2
d2 = ( 1 1 0 2) admissible

• Direction de base d3 correspondant à la variable hors base x3 x1 x2=1


-1 1 0 1 1
dB B A .,3
1 1 0 1 D
d3 = ( 1 0 1 1) admissible
102
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.2 Direction admissible
Techniques d’optimisation 2018

1.2.2 Exemple
Recherche des directions de base
Examen de directions de base de P x2
1 1 1 0 1 C
A
1 1 0 1
x1+x2=1
• Base admissible (x1,x2) : x = (1 0 0 0) point B
1 1 0,5 0,5 base dégénérée d4
B , B -1
1 1 0,5 0,5 P
• Direction de base d3 correspondant à la variable hors base x3 A B
0,5 0,5 1 0,5 0 1 x1
dB B -1A .,3
0,5 0,5 0 0,5
d3 = ( 0,5 0,5 1 0) non admissible (base dégénérée)
d3
• Direction de base d4 correspondant à la variable hors base x4 x1 x2=1
-1 0,5 0,5 0 0,5
dB B A ., 4
0,5 0,5 1 0,5 D
d4 = ( 0,5 0,5 0 1) admissible
103
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.3 Réduction
Techniques d’optimisation 2018

1.2.3 Réduction

Principe

Méthode générale

Réduction avec noyau

Choix des matrices Y et Z

Interprétation géométrique

104
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.3 Réduction
Techniques d’optimisation 2018

1.2.3 Réduction
Problème sous contraintes linéaires
minn f(x) sous Ax b , A Rm n, b Rm, A de rang plein r=m n
x R

• On cherche un déplacement p à partir d’un point initial x0.


Le point initial x0 n’est pas forcément admissible : Ax0=b0.
• Le nouveau point x doit être admissible et meilleur que x0 (diminution du critère).
Ax b admissible
x0 x x 0 p avec
f(x) f(x 0 ) amélioration

Principe de réduction
On utilise les m contraintes pour réduire le problème à n m variables.
Le déplacement p est décomposé en 2 termes : p = plibre + plié , plibre Rn , plié Rn
• plibre dépend de n m variables libres (ou indépendantes) pour minimiser le critère f
• plié dépend de m variables liées (ou dépendantes) pour restaurer l’admissibilité

• plié est calculé à partir des contraintes


Ax b A(x 0 p) b A(plibre p lié ) b b 0 Ap lié b b 0 Ap libre
Système non singulier (A de rang plein)
Le problème d’optimisation est réduit à plibre (n m variables)
105
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.3 Réduction
Techniques d’optimisation 2018

1.2.3 Méthode générale


Décomposition du déplacement
• On choisit une base de Rn formée de n vecteurs indépendants : (y1…,ym,z1 ,…,zn-m)
Le déplacement p s’écrit comme une combinaison linéaire des vecteurs yi et zi .
m n m
p a i yi bi zi p Yp Y Zp Z
i 1 i 1

avec matrice Y = (y1 ,…,ym ) Rn m = composantes des m vecteurs y1,…,ym


matrice Z = (z1 ,…,zn-m) Rn (n m) = composantes des n m vecteurs z1,…,zn-m
vecteur pY= (a1 ,…,am) Rm = coefficients des m vecteurs y1,…,ym
vecteur pZ= (b1 ,…,bn-m) Rn m = coefficients des n m vecteurs z1,…,zn-m

• Les composantes liées et libres du déplacement p = plié + plibre sont définies par
plié = YpY Rn m variables liées (pY)
plibre = ZpZ Rn n m variables libres (pZ)

• Le déplacement doit être admissible


A ( x 0 p) b Ap lié b b 0 Ap libre
AYp Y b b 0 AZp Z
1
p Y AY b b 0 AZp Z si la matrice AY est inversible

106
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.3 Réduction
Techniques d’optimisation 2018

1.2.3 Méthode générale


Problème équivalent sans contrainte
• Déplacement total
1
p Yp Y Zp Z avec p Y AY b b 0 AZp Z si la matrice AY est inversible
1 1
p Y AY b b0 I Y AY A Zp Z réduction à n m variables pZ

• Coût réduit
1 1
f (x) f (x 0 p) f x0 Y AY b b0 I Y AY A Zp Z

(p Z ) coût réduit = fonction de n m variables


noté

minn f(x 0 p) sous A(x 0 p) b n variables p / m contraintes


p R

min (p Z ) n-m variables pZ / 0 contrainte


p Z R n -m

Choix des matrices Y et Z


• Réduction avec noyau respect des contraintes avec pY , minimisation avec pZ
• Matrices orthogonales meilleur conditionnement

107
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.3 Réduction
Techniques d’optimisation 2018

1.2.3 Réduction avec noyau


Base du noyau
• On choisit pour les n m vecteurs (z1 ,…,zn-m) une base de l’espace nul de A : Azi=0
+ m vecteurs (y1 ,…,ym ) pour former une base de Rn
AZ = 0

• La matrice (Y Z) Rn n est de rang plein (base de Rn)


A(Y Z) = (AY 0) de rang plein
AY matrice inversible de Rm m

• Le déplacement lié se simplifie


1 1
p lié Yp Y Y AY b b 0 AZp Z Y AY b b0
plié est constant et indépendant de plibre = ZpZ
1
p Yp Y Zp Z Y AY b b0 Zp Z

Problème réduit
1
min f(x 0 p) sous A(x 0 p) b min (p Z ) f x0 Y AY b b0 Zp Z
p Rn p Z R n -m

108
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.3 Réduction
Techniques d’optimisation 2018

1.2.3 Choix des matrices Y et Z


A partir d’une base de A
• On choisit une base B Rm m de la matrice A (= m colonnes indépendantes de A)
m n m
T pB m
AE B N E p (E = matrice de permutation de colonnes de A)
pN n m
• Le déplacement p est décomposé en p = plibre + plié avec plié Rn , plibre Rn , définis par
pB 0
E T p lié E T p libre Ap lié b b 0 Ap libre pB B 1
b b0 B 1 Np N
0 pN

• La décomposition correspondante dans Rn est p =YpY + ZpZ avec


m n m
B m 1 1
B N m pB
Y Z p Yp Y Zp Z
0 n m I n m pN
pY b b0 pZ pN décomposition directe selon les composantes de p

Problème réduit
1
minn f(x 0 p) sous A(x 0 p) b minn-m (p N ) f x 0B B b b 0 Np N , x 0N pN
p R pN R

109
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.3 Réduction
Techniques d’optimisation 2018

1.2.3 Choix des matrices Y et Z


A partir de matrices orthogonales
• La matrice AY doit être inversée
1
p Yp Y Zp Z Y AY b b0 Zp Z
Il faut choisir la base (Y Z) pour obtenir le meilleur conditionnement possible

• Factorisation QR de A
T
ATE = QR avec Q orthogonale (QQ =I) méthode de Householder
R triangulaire
m
T
m n m
R m Y Q1
A E n Q1 Q2
Z Q2
0 n m

• Conditionnement de AY
A T E Q1R A ER T Q1T AY ER T Q1T Q1 ER T

même conditionnement que R


même conditionnement que A (car QQT=I conditionnement = 1)
= conditionnement minimal possible à partir de A

110
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.3 Réduction
Techniques d’optimisation 2018

1.2.3 Interprétation géométrique


A partir d’une base de A
• pN = n m composantes de x minimisation de f
• pB = m composantes de x restauration de Ax=b
pB 0 car pN ne tient pas compte les contraintes mauvais conditionnement si pB >> pN

A partir de matrices orthogonales


• ZpZ = déplacement dans le noyau x minimisation de f
• YpY = déplacement orthogonal à ZpZ restauration de Ax=b
pY =0 si x0 est admissible car pZ conserve les contraintes meilleur conditionnement

x2

pZ
pN
Ax=b
pB

x1
111
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.4 Projection
Techniques d’optimisation 2018

1.2.4 Projection

Projection orthogonale sur un hyperplan

Projection sur le noyau

112
1 Bases théoriques Max CERF
1.2 Contraintes linéaires
1.2.4 Projection
Techniques d’optimisation 2018

1.2.4 Projection
Projection orthogonale sur un hyperplan
La projection orthogonale de x0 Rn sur l’hyperplan d’équation Ax=b est le point x solution de

minn x x 0 sous Ax b point xP de l’hyperplan le plus proche de x0


x R

• Problème quadratique équivalent xP


1 2 1 T
min x x 0 x x 0 x x 0 sous Ax b
x R 2n
2
1 T T
• Lagrangien : L( x, ) x x0 x x0 b Ax
2 x0
• Condition d’ordre 1
1
x x0 AT 0 Ax AA T Ax 0 AA T b Ax 0
1
Ax b Ax b x x 0 A T AA T b Ax 0
1 1
• Solution : xP I A T AA T A x0 A T AA T b
1
• Projection de x0 sur le noyau de A : Ax=0 xP I A T AA T A x0
1
matrice de projection : P I A T AA T A
113
1 Bases théoriques Max CERF
1.3 Contraintes non linéaires
Techniques d’optimisation 2018

Sommaire
1. Bases théoriques
1.1 Définitions
1.2 Contraintes linéaires
1.3 Contraintes non linéaires
1.3.1 Direction admissible
1.3.2 Déplacement admissible
1.4 Conditions d’optimalité

2. Optimisation sans contraintes


3. Optimisation avec contraintes
4. Optimisation discrète
5. Optimisation fonctionnelle

114
1 Bases théoriques Max CERF
1.3 Contraintes non linéaires
1.3.1 Direction admissible
Techniques d’optimisation 2018

1.3.1 Direction admissible

Indépendance linéaire

Direction admissible à la limite

Cône des directions

Qualification des contraintes

115
1 Bases théoriques Max CERF
1.3 Contraintes non linéaires
1.3.1 Direction admissible
Techniques d’optimisation 2018

1.3.1 Indépendance linéaire


Contraintes linéaires
Pour des contraintes linéaires Ax=b, A Rm n, si A est de rang déficient : rang(A) = r < m,
on peut toujours extraire de A une sous-matrice à Rr n de rang plein : rang(Ã) = r, telle que
~ ~
Ax b Ax b élimination des contraintes redondantes (cf §1.2.1)

Contraintes non linéaires


Pour des contraintes non linéaires, on considère un modèle linéaire local.

• x0 point admissible : c E (x 0 ) 0
c(x 0 ) 0 (contraintes actives en x0)
c I (x 0 ) 0
• Contraintes actives linéarisées : ĉ 0 (x) c(x 0 ) c(x 0 ) T (x x 0 ) avec c(x0)=0
ĉ 0 (x) 0 c(x 0 ) T x c(x 0 ) T x 0 Ax b

On se ramène au cas de contraintes linéaires avec A = c(x0)T (gradient des contraintes actives)

Condition d’indépendance linéaire


Les contraintes sont dites linéairement indépendantes en x0
si les gradients des contraintes actives sont linéairement indépendants en x0.
La matrice jacobienne des contraintes actives J(x0)= c(x0) est de rang plein.

116
1 Bases théoriques Max CERF
1.3 Contraintes non linéaires
1.3.1 Direction admissible
Techniques d’optimisation 2018

1.3.1 Exemple
Indépendance linéaire
• 1 contrainte égalité + 1 contrainte inégalité dans R2
x1 2 c1 ( x ) x 2 x 12 0
x R 2
x2 c 2 ( x ) x 12 x 2 1 1 0
2,0
1
• En x
1
1,5
2 2
c1 c2
1 0 1,0

linéairement indépendants
0,5
0
• En x
0 0,0
-2,0 -1,5 -1,0 -0,5 0,0 0,5 1,0 1,5 2,0
0 0
c1 c2
1 2 -0,5

linéairement dépendants -1,0

117
1 Bases théoriques Max CERF
1.3 Contraintes non linéaires
1.3.1 Direction admissible
Techniques d’optimisation 2018

1.3.1 Direction admissible


Définition générale
c E (x 0 ) 0
• x point admissible : c(x 0 ) 0 (contraintes actives en x0)
c I (x 0 ) 0
• d direction admissible à partir de x η 0 / s , 0 s η , x sd admissible
On peut se déplacer sur un segment de longueur suivant d à partir de x en restant admissible.

Applicabilité
• Applicable aux contraintes inégalité et aux contraintes égalité linéaires

d
d

• Inapplicable aux contraintes égalité non linéaires d

Définition à partir de suites de points admissibles

118
1 Bases théoriques Max CERF
1.3 Contraintes non linéaires
1.3.1 Direction admissible
Techniques d’optimisation 2018

1.3.1 Direction admissible à la limite


Suite de points admissibles
x point admissible
k , xk x
Définition : (xk)k N suite admissible en x lim x k x
k
k 0 / k k 0 , x k admissible

Direction admissible à la limite


xk x
• On considère la suite des directions dk reliant xk à x : d k
xk x
• Définition
d1
d direction admissible à la limite en x pour la suite (xk)k N
Il existe une sous-suite d k i i N telle que : lim
i
d ki d x1
d2
• Direction admissible à la limite = direction tangente x2
dk
xk

x
d
119
1 Bases théoriques Max CERF
1.3 Contraintes non linéaires
1.3.1 Direction admissible
Techniques d’optimisation 2018

1.3.1 Cône des directions


Définition
x point admissible

Le cône des directions D(x) en x est l’ensemble des directions d Rn vérifiant


• cEj(x)Td = 0 pour toutes les contraintes égalité cEj(x) = 0, j=1 à p
• T
cIj(x) d 0 pour les contraintes inégalité actives : cIj(x) = 0, j=1 à q
x
direction tangente aux contraintes égalité
d D( x )
direction intérieure aux contraintes inégalité actives

Propriété
Toute direction admissible à la limite en x appartient au cône des directions en x

Preuve :
c E (xk ) 0 xk x
(xk) suite admissible de limite x directions dk
c I (xk ) 0 xk x
c contrainte active en x : c(x)=0 c(xk ) c(x) c(x)T (xk x) o xk x
c(xk ) c(x) o xk x c(xk ) 0 (égalité)
c(x)T d k c(x)T d lim
xk x xk x k xk x 0 (inégalité)
120
1 Bases théoriques Max CERF
1.3 Contraintes non linéaires
1.3.1 Direction admissible
Techniques d’optimisation 2018

1.3.1 Qualification
Caractérisation des directions admissibles
• Le cône des directions D(x) au point x admissible est simple à manipuler en pratique.
c E (x) T d 0 pour toutes les contraintes égalité
d D( x )
c I (x) T d 0 pour les contraintes inégalité actives en x

• Toutes les directions admissibles à la limite en x appartiennent à D(x),


mais D(x) peut contenir également des directions non admissibles.
D(x) ne caractérise pas les directions admissibles.

Qualification des contraintes


Les contraintes vérifient la condition de qualification au point admissible x
si toute direction du cône D(x) est admissible à la limite.

Condition très importante dans les algorithmes

Conditions suffisantes de qualification des contraintes


• Contraintes linéaires : Ax=b
ou
• Contraintes linéairement indépendantes en x : c(x) de rang plein
réalisable simplement en pratique par extraction d’une sous-matrice de rang plein
121
1 Bases théoriques Max CERF
1.3 Contraintes non linéaires
1.3.2 Déplacement admissible
Techniques d’optimisation 2018

1.3.2 Déplacement admissible

Principes

Elimination directe

Réduction généralisée

Restauration

122
1 Bases théoriques Max CERF
1.3 Contraintes non linéaires
1.3.2 Déplacement admissible
Techniques d’optimisation 2018

1.3.2 Déplacement admissible


Problème sous contraintes non linéaires
c E (x) 0
min f(x) sous
x Rn c I (x) 0
• On cherche à construire un déplacement p admissible et améliorant à partir d’un point initial x 0.
On se ramène à un problème avec contraintes égalité (contraintes actives en x 0).

min f(x) sous c( x ) 0 m contraintes actives en x0


x Rn
c( x 0 p ) 0
• Les n composantes du déplacement p doivent vérifier :
f ( x 0 p) f ( x 0 )
Méthodes possibles
• Elimination directe
On exprime m variables à partir des n m autres à partir des contraintes.
On substitue dans l’expression de f problème sans contraintes

• Réduction généralisée
On linéarise les contraintes en x0.
On applique la méthode de réduction des contraintes linéaires (matrices Y et Z).
On corrige le déplacement pour prendre en compte les non-linéarités.
123
1 Bases théoriques Max CERF
1.3 Contraintes non linéaires
1.3.2 Déplacement admissible
Techniques d’optimisation 2018

1.3.2 Elimination directe


Principe

min f(x) sous c( x ) 0 m contraintes actives


x Rn

• Les contraintes sont de la forme : c( x ) c( x lié , x libre ), x lié R m , x libre Rn m

• Si l’on sait résoudre : c( x lié , x libre ) 0 x lié ( x libre )

le problème devient : min (x libre ) avec ( x libre ) f ( x lié , x libre ) f ( ( x libre ), x libre )
x libre R n m
def

problème de dimension n-m, sans contrainte

Difficultés
• Il faut faire attention au domaine de définition des variables (contraintes implicites)
voir exemples

• Il faut disposer de l’expression analytique des fonctions (rarement réalisé en pratique)

124
1 Bases théoriques Max CERF
1.3 Contraintes non linéaires
1.3.2 Déplacement admissible
Techniques d’optimisation 2018

1.3.2 Exemples
3,0
contrainte
Elimination directe lignes de f2,0
• Exemple 1 : min x 12 x 22 sous x 12 x 22 1
x1 , x 2
1,0
2 2 2 2
Elimination de x1 : x 1 x 2 1 x 1 1 x 2 x*
0,0
min 1 2x 22 x2 0 -3,0 -2,0 -1,0 0,0 1,0 2,0 3,0
x2 -1,0

x1 1
Solution correcte : x2 0
-2,0

-3,0

1,5
• Exemple 2 : min x 2
1
2
x sous x
2
2
1 4x 2
2 1 contrainte
x1 , x 2
lignes de f 1,0
2 2 2 2
Elimination de x1 : x 1 4x 2 1 x 1 1 4x 2 x*
0,5
min 1 3x 22 x2
x2
0,0
Solution incorrecte -1,5 -1,0 -0,5 0,0 0,5 1,0 1,5
2 2
Contrainte implicite : x 1 1 4x 00 2 -0,5
1 1
x2 -1,0
2 2
à prendre en compte explicitement dans la résolution -1,5
125
1 Bases théoriques Max CERF
1.3 Contraintes non linéaires
1.3.2 Déplacement admissible
Techniques d’optimisation 2018

1.3.2 Réduction généralisée


Principe
min f(x) sous c( x ) 0 m contraintes actives
x Rn

On construit le déplacement p à partir du point initial x0 en 2 étapes : p = p1 + p2

• Etape de linéarisation + réduction


Le déplacement p1 améliore le critère en supposant un modèle linéaire des contraintes en x0.
linéarisation des contraintes en x0
application de la méthode de réduction de contraintes linéaires x2 p
On obtient un nouveau point : x1 = x0 + p1 2

x1
• Etape de restauration
Les contraintes actives (non linéaires) ne sont pas respectées en x1. p1
Le déplacement p2 restaure un point admissible à partir du point x1.
linéarisation des contraintes en x1 x0
résolution d’un système sous-déterminé c(x)=0
On obtient un nouveau point : x2 = x1 + p2
c(x)=c1
• Le point x2 doit être : - admissible pour l’ensemble des contraintes (actives et inactives en x0)
- meilleur que x0 (f(x2) < f(x0))
126
1 Bases théoriques Max CERF
1.3 Contraintes non linéaires
1.3.2 Déplacement admissible
Techniques d’optimisation 2018

1.3.2 Réduction généralisée


Etape de linéarisation + réduction
min f(x) sous c( x ) 0 m contraintes actives
x Rn

• On linéarise les contraintes au point initial x0 : ĉ 0 (x) c(x 0 ) c(x 0 ) T (x x 0 )

• Le déplacement p est admissible pour les contraintes linéaires si


ĉ 0 (x 0 p) 0 c(x 0 ) T
c(x 0 ) p 0 A0p b0 avec A 0 c(x 0 ) T
b0 c(x 0 )

• On applique la méthode de réduction de contraintes linéaires.


Le déplacement est décomposé en p = YpY + ZpZ avec Z base du noyau de A0
1
min f(x 0 p) sous A 0 p b0 min (p Z ) f x0 Y A0Y b0 Zp Z c(x)=0
p Rn p Z R n -m
problème à n m variables sans contraintes c(x)=c1
déplacement p1

• Le nouveau point x1 = x0 + p1 x0 p1 x1
- est meilleur que x0 : f(x1) < f(x0)
- ne vérifie pas les contraintes : c(x1) = c1 0

127
1 Bases théoriques Max CERF
1.3 Contraintes non linéaires
1.3.2 Déplacement admissible
Techniques d’optimisation 2018

1.3.2 Réduction généralisée


Etape de restauration
• Les contraintes actives ne sont pas vérifiées en x1 : c(x1) = c1 0
On cherche un déplacement p2 à partir de x1 tel que : c(x1+p2) = 0
système non linéaire sous-déterminé de m équations à n inconnues

• On linéarise les contraintes au point x1 : ĉ1 (x) c(x1 ) c(x1 ) T (x x 1 )


On obtient un système linéaire sous-déterminé de m équations à n inconnues.

ĉ1 (x1 p) 0 c(x1 ) T


c(x1 ) p 0 A1 p b1 avec A1 c(x1 ) T
b1 c(x1 )
Résolution du système
• Il faut recalculer les gradients des contraintes en x1 très coûteux (m n appels fonction)
On fait l’approximation que : c(x1 ) c(x 0 )
approximation correcte si le déplacement p1 est petit
ou si les contraintes sont peu non linéaires

• Le système sous-déterminé admet une infinité de solutions (n m variables libres).


Choix possibles : - solution de norme minimale (projection sur les contraintes)
- solution de base (pour ne pas dégrader la minimisation due à p 1)

128
1 Bases théoriques Max CERF
1.3 Contraintes non linéaires
1.3.2 Déplacement admissible
Techniques d’optimisation 2018

1.3.2 Restauration
Résolution du système

avec A1 c(x1 ) T c(x 0 ) T A0


Le déplacement p2 doit vérifier : A1p b1
b1 c(x1 ) c1
• Solution de norme minimale projection sur l’hyperplan tangent aux contraintes actives
1 (cf §1.2.4)
minn p sous A1p b1 p 2 A1T A1A1T b1
p R

• Solution de base pour ne pas dégrader la minimisation réalisée par pZ


1 1 (cf §1.2.3)
A1 (Yp Y Zp Z ) b1 pY A 1 Y b1 p 2 Y A 1 Y b1

p2
c(x)=0
p1 x1
x0
c(x)=c1
c(x1)
c(x0) 129
1 Bases théoriques Max CERF
1.3 Contraintes non linéaires
1.3.2 Déplacement admissible
Techniques d’optimisation 2018

1.3.2 Restauration
Itérations
• La résolution est basée sur une linéarisation du système en x 1.

A1 p b1 avec A1 c(x1 ) T c(x 0 ) T A0 déplacement p2


b1 c(x1 ) c1
• Le point x2 = x1 + p2 ne vérifie pas forcément les contraintes : c(x2) = c2 0
Il faut alors réitérer la résolution à partir de x2.

• On cherche un déplacement p3 à partir de x2 tel que : c(x2+p3) = 0

A2p b2 avec A 2 c(x 2 ) T c(x 0 ) T A0


déplacement p3
b2 c(x 2 ) c2
• Si l’on n’obtient pas de point admissible après un nombre donné d’itérations,
il faut réduire le déplacement p1 pour rendre l’approximation linéaire suffisamment correcte.

• Si l’on obtient un point admissible x2, il faut encore vérifier que


- les contraintes qui étaient inactives en x0 sont respectées en x2
- le point x2 est meilleur que le point initial x0 (car la restauration peut dégrader le critère).
Sinon il faut réduire le déplacement p1.

130
1 Bases théoriques Max CERF
1.3 Contraintes non linéaires
1.3.2 Déplacement admissible
Techniques d’optimisation 2018

1.3.2 Restauration
Illustrations
Restauration en plusieurs itérations : p2 , p3 Restauration infructueuse (non linéarité)

c(x)=0 p3 c(x)=0 p2

c(x)=c1 x0 p2 c(x)=c1 x0
p1 p1
x1 x1

Restauration avec dégradation du critère

p2
c(x)=0 lignes de f

x0 p1 x1

131
1 Bases théoriques Max CERF
1.3 Contraintes non linéaires
1.3.2 Déplacement admissible
Techniques d’optimisation 2018

1.3.2 Direction d’ordre 2


Effet Maratos
La restauration après le déplacement p1 peut dégrader systématiquement le critère.
Il faut alors réduire fortement le pas p1 pour progresser.
Ceci peut bloquer un algorithme basé sur une recherche linéaire suivant p 1 (effet Maratos).

Correction d’ordre 2
• On corrige la direction de déplacement pour prendre en compte la non-linéarité des contraintes.
p1 = pas d’ordre 1 (en supposant des contraintes linéaires)
p2 = pas d’ordre 2 (correction des non linéarités constatées en x1 = x0 + p1)
T
A1p 2 b1 avec A 1 c(x 0 ) p 2 A1T A1A1T b1
1

b1 c(x 0 p1 )

• Pas total : pt = p1 + p2 direction de recherche.


pt p2
c(x)=0
p1 x1
x0
c(x)=c1

c(x0) 132
1 Bases théoriques Max CERF
1.4 Conditions d’optimalité
Techniques d’optimisation 2018

Sommaire
1. Bases théoriques
1.1 Définitions
1.2 Contraintes linéaires
1.3 Contraintes non linéaires
1.4 Conditions d’optimalité
1.4.1 Dualité
1.4.2 Problème sans contraintes
1.4.3 Problème avec contraintes
1.4.4 Problème linéaire
1.4.5 Problème quadratique

2. Optimisation sans contraintes


3. Optimisation avec contraintes
4. Optimisation discrète
5. Optimisation fonctionnelle

133
1 Bases théoriques Max CERF
1.4 Conditions d’optimalité
1.4.1 Dualité
Techniques d’optimisation 2018

1.4.1 Dualité

Dualité critère contraintes


- Critère augmenté
- Lagrangien
- Lagrangien augmenté
- Fonction duale

Problème dual
- Dualité faible
- Saut de dualité
- Point col
- Dualité forte

Programmation linéaire
- Problème primal
- Problème dual

134
1 Bases théoriques Max CERF
1.4 Conditions d’optimalité
1.4.1 Dualité
Techniques d’optimisation 2018

1.4.1 Dualité
Problème avec contraintes égalité
minn f(x) sous c(x) 0 m contraintes d’égalité (= contraintes actives)
x R

Dualité
Difficulté de résolution due aux 2 objectifs antagonistes :
• Minimiser le critère f(x) min f ( x )
x

• Satisfaire les contraintes c(x)=0 min c(x)


x
Dualité critère-contraintes

Méthodes duales
Prise en compte des contraintes avec pondération dans la fonction coût
• Critère augmenté pondération = pénalisation des contraintes
• Lagrangien pondération = multiplicateurs de Lagrange
• Lagrangien augmenté pondération = pénalisation + multiplicateurs

Problème sans contraintes plus simple


Réglages des pondérations / Equivalence au problème avec contraintes

135
1 Bases théoriques Max CERF
1.4 Conditions d’optimalité
1.4.1 Dualité
Techniques d’optimisation 2018

1.4.1 Critère augmenté


Problème avec contraintes égalité
minn f(x) sous c(x) 0 m contraintes d’égalité (= contraintes actives)
x R

Critère augmenté
1 2
f ρ (x) f(x) ρ c(x)
2
= coefficient de pénalisation > 0 Pénalise la violation des contraintes
Pondération critère-contraintes

Problème pénalisé sans contraintes


minn f ρ (x) Problème équivalent au problème avec contraintes
x R
si la pénalisation est assez grande

Problème pénalisé avec contraintes


minn f ρ (x) sous c(x) 0 Problème équivalent au problème avec contraintes
x R
Renforce le poids des contraintes dans le critère

136
1 Bases théoriques Max CERF
1.4 Conditions d’optimalité
1.4.1 Dualité
Techniques d’optimisation 2018

1.4.1 Exemple
Critère augmenté
1 2 1 2 1 2
min x 2 x 12 sous x 1 1 f x1 , x 2 x2 x 12 x1 1 x *( ) 0
x ,x 2
1 2 2 2 1
1 2 =1 =10
f (x) x 2 x 12 x* 1 0 2,0 2,0
2 1,5 1,5
c( x ) x 1 1 1,0 1,0
0,5 0,5
=0 0,0 0,0
2,0
-1,0 -0,5
-0,5 0,0 0,5 1,0 1,5 2,0 2,5 -1,0 -0,5
-0,5 0,0 0,5 1,0 1,5 2,0 2,5
1,5
-1,0 -1,0
1,0
-1,5 -1,5
0,5
-2,0 -2,0
0,0
-1,0 -0,5 0,0 0,5 1,0 1,5 2,0 2,5
=2 =100
-0,5 2,0 2,0

-1,0 1,5 1,5


1,0 1,0
-1,5
0,5 0,5
-2,0
0,0 0,0
-1,0 -0,5
-0,5 0,0 0,5 1,0 1,5 2,0 2,5 -1,0 -0,5
-0,5 0,0 0,5 1,0 1,5 2,0 2,5
-1,0 -1,0
-1,5 -1,5
-2,0 -2,0
137
1 Bases théoriques Max CERF
1.4 Conditions d’optimalité
1.4.1 Dualité
Techniques d’optimisation 2018

1.4.1 Exemple
Problème de la boîte
• Réaliser une boîte cylindrique de volume donné V0 et de surface S minimale
r
Dimensions : hauteur = h , rayon = r
Surface : S 2 r 2 2 rh
Volume : V r 2 h
h
• Formulation avec contrainte (en divisant S et V par )
min f (h, r ) 2r 2 2rh sous c(h, r ) r 2 h 2v 0 0 avec V0 2 v0
h ,r

Solution exacte
2v 0
• La contrainte permet d’éliminer h : h
r2

2 4v 0 1
3
1
En reportant dans la fonction coût : min 2r r v0 h 2v 0 3
r r
2
• Valeur optimale du coût : f 6v 0 3

138
1 Bases théoriques Max CERF
1.4 Conditions d’optimalité
1.4.1 Dualité
Techniques d’optimisation 2018

1.4.1 Exemple
Solution par pénalisation
• Formulation avec contrainte
r
min f (h, r ) 2r 2 2rh sous c(h, r ) r 2 h 2v 0 0
h ,r

• Formulation pénalisée h
1
min f (h, r ) 2r 2 2rh (r 2 h 2v 0 ) 2
h ,r 2
f
0 2r r 2 (r 2 h 2v 0 ) 0
Conditions de minimum : h
f
0 4r 2h 2 rh (r 2 h 2v 0 ) 0
r

La 1ère équation donne : r (r 2 h 2v 0 ) 2

En remplaçant dans la 2ème équation : h 2r

On obtient une équation en r : r (r 3 v 0 ) 1 0 à résoudre numériquement

139
1 Bases théoriques Max CERF
1.4 Conditions d’optimalité
1.4.1 Dualité
Techniques d’optimisation 2018

1.4.1 Exemple
Application numérique
• Volume : v0 = 1000
r

• Solution exacte : r = 10 , h = 20 , f = 600

• Solution pénalisée pour allant de 10 3 à 102. h

Résolution numérique de : r (r 3 v 0 ) 1 0 r,h 2r

r h f c
0.001 9.641582 19.28316 557.761 792.565 Pénalisation faible
0.01 9.966442 19.93288 595.980 979.933 Contrainte mal respectée
0.1 9.996664 19.99333 599.600 997.999 Écart important à la solution exacte
1 9.999667 19.99933 599.960 999.800
10 9.999967 19.99993 599.996 999.980
100 9.999997 19.99999 600.000 999.998 Pénalisation forte
Contrainte bien respectée
Écart faible à la solution exacte

140
1 Bases théoriques Max CERF
1.4 Conditions d’optimalité
1.4.1 Dualité
Techniques d’optimisation 2018

1.4.1 Lagrangien
Problème avec contraintes égalité et inégalité

c E (x) 0 p contraintes d’égalité


min f(x) sous (PO)
x Rn c I (x) 0 q contraintes d’inégalité

Multiplicateurs de Lagrange
1 multiplicateur par contrainte
• Rp multiplicateurs des contraintes d’égalité
• Rq multiplicateurs des contraintes d’inégalité

Fonction de Lagrange (ou lagrangien)


Le lagrangien du problème (PO) est la fonction L de Rn+p+q dans R
x R n , λ R p ,μ Rq L(x, λ, μ) R
p q
T T
L(x, λ, μ) f(x) λ c E (x) μ c I (x) L(x, λ, μ) f(x) λ jc Ej (x) μ jc Ij (x)
j 1 j 1

multiplicateurs coefficients de pénalisation des contraintes


interprétation comme des sensibilités aux niveaux des contraintes

141
1 Bases théoriques Max CERF
1.4 Conditions d’optimalité
1.4.1 Dualité
Techniques d’optimisation 2018

1.4.1 Lagrangien augmenté


Problème pénalisé avec contraintes égalité
• Critère augmenté : coefficient de pénalisation >0
1 2
minn f ρ (x) sous c(x) 0 avec f ρ (x) f(x) ρ c(x)
x R 2
• Lagrangien du problème pénalisé avec contraintes
L ρ (x, λ) f ρ (x) λ T c(x)
1 2
f(x) λ T c(x) ρ c(x)
2
1 2
L(x, λ) ρ c(x)
2
L = lagrangien augmenté = lagrangien initial + pénalisation des contraintes

• Utilisation du lagrangien augmenté


- Démonstration des conditions suffisantes d’optimalité
- Algorithme de lagrangien augmenté = suite de minimisations sans contraintes

142
1 Bases théoriques Max CERF
1.4 Conditions d’optimalité
1.4.1 Dualité
Techniques d’optimisation 2018

1.4.1 Exemple
Lagrangien augmenté
• Fonction de 2 variables
1 minimum en x* = (1 0)
min x 22 x12 sous x1 1
x1 , x 2 2
*=1
• Critère augmenté
1 2 1 2 minimum en x * ( )
f x1 , x 2 x 2 x 12 x1 1 0
2 2 1
• Lagrangien augmenté
1 2 1 2
minimum en x * ( , )
L x1 , x 2 , x 2 x12 x1 1 x1 1 0
2 2 1

Pour = * = 1, le minimum sans contrainte du lagrangien augmenté


1
est la solution x* du problème initial. x * ( , *) 0 1 0
1
x1 2,0

=2 =1
1,5

1,0

0,5
=0
0,0
2,0 4,0 6,0 8,0 10,0 12,0 14,0 143
1 Bases théoriques Max CERF
1.4 Conditions d’optimalité
1.4.1 Dualité
Techniques d’optimisation 2018

1.4.1 Exemple
Lagrangien augmenté
1 2 1 2 1 2
min x 2 x 12 sous x 1 1 L x1 , x 2 , x2 x 12 x1 1 x1 1 x *( ) 0
x ,x 2
1 2 2 2 1
1 2 =1 , =1 =10 , =1
f (x) x 2 x 12 x* 1 0 2,0 2,0
2 1,5 1,5
c( x ) x 1 1 * 1 1,0 1,0
0,5 0,5
=0 0,0 0,0
2,0
-1,0 -0,5
-0,5 0,0 0,5 1,0 1,5 2,0 2,5 -1,0 -0,5
-0,5 0,0 0,5 1,0 1,5 2,0 2,5
1,5
-1,0 -1,0
1,0
-1,5 -1,5
0,5
-2,0 -2,0
0,0
-1,0 -0,5 0,0 0,5 1,0 1,5 2,0 2,5
=2 , =1 =100 , =1
-0,5 2,0 2,0
-1,0 1,5 1,5
1,0 1,0
-1,5
0,5 0,5
-2,0
0,0 0,0
-1,0 -0,5
-0,5 0,0 0,5 1,0 1,5 2,0 2,5 -1,0 -0,5
-0,5 0,0 0,5 1,0 1,5 2,0 2,5
-1,0 -1,0
-1,5 -1,5
-2,0 -2,0
144
1 Bases théoriques Max CERF
1.4 Conditions d’optimalité
1.4.1 Dualité
Techniques d’optimisation 2018

1.4.1 Exemple
Lagrangien augmenté

lignes de niveau pour =0 lignes de niveau pour =1 lignes de niveau pour = 10


=2 2,0
=2 =2
2,0 2,0
1,5 1,5 1,5
1,0 1,0 1,0
0,5 0,5 0,5
0,0 0,0 0,0
-1,0 -0,5
-0,5 0,0 0,5 1,0 1,5 2,0 2,5 -1,0 -0,5
-0,5 0,0 0,5 1,0 1,5 2,0 2,5 -1,0 -0,5
-0,5 0,0 0,5 1,0 1,5 2,0 2,5
-1,0 -1,0 -1,0
-1,5 -1,5 -1,5
-2,0 -2,0 -2,0

=10 2,0
=10 =10
2,0 2,0
1,5 1,5 1,5
1,0 1,0 1,0
0,5 0,5 0,5
0,0 0,0 0,0
-1,0 -0,5
-0,5 0,0 0,5 1,0 1,5 2,0 2,5 -1,0 -0,5
-0,5 0,0 0,5 1,0 1,5 2,0 2,5 -1,0 -0,5
-0,5 0,0 0,5 1,0 1,5 2,0 2,5
-1,0 -1,0 -1,0
-1,5 -1,5 -1,5
-2,0 -2,0 -2,0
145
1 Bases théoriques Max CERF
1.4 Conditions d’optimalité
1.4.1 Dualité
Techniques d’optimisation 2018

1.4.1 Fonction duale


Fonction duale
La fonction duale du problème (PO) est la fonction w de Rp+q dans R

w(λ , μ) min L(x, λ, μ) Minimisation du lagrangien à et fixés


x Rn
x = variables primales
et = variables duales
• Domaine de w : X w λ R p , μ R q / w(λ , μ) w bornée

Concavité - Convexité

• La fonction duale w est concave


• Le domaine Xw est convexe

Preuve : on note : =( , )
• L(x, 1+(1 ) 2) = L(x, 1) + (1 )L(x, 2) car L linéaire en et
w( 1+(1 ) 2) w( 1) + (1 )w( 2) pour le minimum/x de chaque membre
w concave
• Si 1et 2 Xw, w( 1+(1 ) 2) w( 1) + (1 )w( 2) >
1+(1 ) 2 Xw
Xw convexe
146
1 Bases théoriques Max CERF
1.4 Conditions d’optimalité
1.4.1 Dualité
Techniques d’optimisation 2018

1.4.1 Problème dual


Problème dual
c E (x) 0
• Problème primal : min f(x) sous
x Rn c I (x) 0
• Fonction duale : w(λ , μ) min L(x, λ, μ) x(λ , μ) / x L(x, λ , μ) 0
x Rn

• Domaine de w : Xw λ R p ,μ R q / w(λ , μ) w bornée

• Problème dual : max w(λ , μ) sous (λ , μ) X w , μ 0


λ R p ,μ R q

L(x, λ , μ) 0 x(λ , μ)
max L(x, λ , μ) sous x
dual de Wolfe
x R n , λ R p ,μ R q (λ , μ) X w , μ 0

Borne sur la fonction duale


• x* solution du problème primal w(λ , μ) f(x*)
• ( , ) Xw, 0
Preuve :
w(λ , μ) minn L(x, λ, μ) L(x*, λ, μ) f(x*) λ T c E (x*) μ T c I (x*)
x R
f(x*) μ T c I (x*) car x * admissible c E (x*) 0
f(x*) car x * admissible c I (x*) 0 et μ 0
147
1 Bases théoriques Max CERF
1.4 Conditions d’optimalité
1.4.1 Dualité
Techniques d’optimisation 2018

1.4.1 Exemple
Fonction duale
1 2
• Problème primal : min x2 x12 sous x1 1
x ,x
1 2 2
1 2
• Lagrangien : L( x , ) x2 x 12 x1 1
2
1
• Solution : x* , * 1
0

L x1 0 x1
• Fonction duale : w(λ ) min L(x, λ) 0
x x x2 0 x2 0
1 2 x1
w( ) avec
2 x2 0

max w ( ) w
• Problème dual : 0 1
1
• Solution : * 1 , x*
0

148
1 Bases théoriques Max CERF
1.4 Conditions d’optimalité
1.4.1 Dualité
Techniques d’optimisation 2018

1.4.1 Dualité faible


Théorème de la dualité faible
• x* solution du problème primal w(λ * , μ*) f(x*)
• *, * solution du problème dual

Preuve : λ, μ 0, w(λ , μ) f(x*) w(λ * , μ*) f(x*)

Dualité et admissibilité
• Si le problème primal est non borné, le problème dual est non admissible.
• Si le problème dual est non borné, le problème primal est non admissible.

Preuve : en utilisant w*( *, *) f(x*)


Existence de solutions x*, *, * fonctions bornées

Saut de dualité
Le saut de dualité est la différence entre la solution du problème primal et du problème dual.
f(x*) w(λ * , μ*) 0

Dans le cas général n’est pas nul, il n’est pas équivalent de minimiser f ou maximiser w.

149
1 Bases théoriques Max CERF
1.4 Conditions d’optimalité
1.4.1 Dualité
Techniques d’optimisation 2018

1.4.1 Dualité forte


Point col
(x*, *, * 0) est un point col (ou point selle) du lagrangien si

L(x*, λ , μ) L(x*, λ*, μ*) maximisationde L par rapport à ( , )


(x, λ , μ 0),
L(x*, λ*, μ*) L(x, λ*, μ*) minimisation de L par rapport à (x)

Caractérisation
L(x*, λ*, μ*) min L(x, λ*, μ*)
x
(x*, *, * 0) est un point col du lagrangien si et seulement si c E (x*) 0
c I (x*) 0
μ * c I (x*) 0
Théorème de la dualité forte
Le lagrangien admet un point col (x*, *, *) si et seulement si le saut de dualité est nul.

(x*, *, * 0) un point col w( *, *) = f(x*)

Il est alors équivalent de minimiser f(x) ou maximiser w( , ).

150
1 Bases théoriques Max CERF
1.4 Conditions d’optimalité
1.4.1 Dualité
Techniques d’optimisation 2018

1.4.1 Dualité forte


Point col (ou point selle)

L(x, )

(x*, *)

L maximal par rapport à

L minimal par rapport à (x) x

151
1 Bases théoriques Max CERF
1.4 Conditions d’optimalité
1.4.1 Dualité
Techniques d’optimisation 2018

1.4.1 Dualité forte


Optimum global
x* min L(x, λ*, μ*)
x
Si (x*, *, * 0) est un point col du lagrangien : c E (x*) 0 , c I (x*) 0
μ * c I (x*) 0
c E (x) 0
alors x* est un optimum global du problème primal : minn f(x) sous
x R c I (x) 0
En pratique
• Si le lagrangien admet un point col, on peut obtenir l’optimum global x*.
• Pour un problème non convexe, il n’existe en général pas de point col.
2x 1 0
Exemple min f ( x ) x 2 sous solution : x* = 0.5
x 0 x 1
0 x 1
L( x , ) x2 (2x 1) avec
0
min L( x, ) x 0 si 0.5
x
0 x 1 x 1 si 0.5
Point col : 2x 1 0 x 0 Il n’existe pas de point col.
μ(2x 1) 0 0 0.5 x 1
μ 0
152
1 Bases théoriques Max CERF
1.4 Conditions d’optimalité
1.4.1 Dualité
Techniques d’optimisation 2018

1.4.1 Programmation linéaire


Problème primal
Ax b
min c T x sous problème linéaire sous forme standard
x x 0
b Ax 0 multiplicateur
min c T x sous multiplicateur
x x 0

• Fonction de Lagrange : L(x, λ, μ) c T x λ T (b Ax) μ T ( x)


T
c ATλ μ x Tb linéaire en x

• Fonction duale : w(λ , μ) min L(x, λ, μ)


x

• Domaine de définition : Xw (λ, μ ) / w(λ , μ)

• La fonction duale n’est définie que si L(x, , ) est borné inférieurement.


L(x, , ) est linéaire en x Le coefficient de x doit être nul.

(λ, μ) X w c ATλ μ 0
T
L(x, λ, μ) b w(λ , μ) λTb

153
1 Bases théoriques Max CERF
1.4 Conditions d’optimalité
1.4.1 Dualité
Techniques d’optimisation 2018

1.4.1 Programmation linéaire


Problème dual
(λ , μ) X w
max w(λ , μ) sous
λ,μ μ 0
T
max λ b T
sous c A λ μ 0 ne dépend pas de
λ,μ μ 0
max b T λ sous c A T λ 0 nouveau problème linéaire en
λ

• Le problème dual est également un problème linéaire dont la variable est .


On met le problème dual sous forme standard en notant la variable y au lieu de
min b T y sous A T y c 0 multiplicateur
y

On peut ensuite définir les fonctions associées à ce problème linéaire.

• Fonction de Lagrange notée Ld(y, ) : L d (y, ) b T y T ( A T y c)


( A b) T y T c bornée si A b 0
T
• Fonction duale notée wd( ) : wd ( ) min L d (y, ) c si A b 0
y

154
1 Bases théoriques Max CERF
1.4 Conditions d’optimalité
1.4.1 Dualité
Techniques d’optimisation 2018

1.4.1 Programmation linéaire


Problème dual du problème dual
Le problème dual admet lui-même pour dual :
X wd
max w d ( ) sous
0
T A b Ax b
max c sous min c T x sous identique au problème primal
0 x x 0
• Le problème dual du problème dual est le problème primal.

• Pour un problème linéaire, il est équivalent de résoudre le problème primal ou problème dual.
Les solutions du problème primal et du problème dual ont le même coût dualité forte

Solutions possibles Dual


Optimum fini Optimum infini Sans solution
Optimum fini dualité forte impossible impossible
Primal Optimum infini impossible impossible dualité faible
Sans solution impossible dualité faible contraintes incompatibles

155
1 Bases théoriques Max CERF
1.4 Conditions d’optimalité
1.4.1 Dualité
Techniques d’optimisation 2018

1.4.1 Programmation linéaire


Correspondances primal dual
Ax b
• Problème primal (P) sous forme standard : (P) min c T x sous
x x 0

• Problème dual (D) du problème (P) : ( D) max b T y sous A T y c


y

• Le nombre de variables de (P) est égal au nombre de contraintes de (D).


• Le nombre de contraintes de (P) est égal au nombre de variables de (D).
• La matrice des contraintes de (D) est la transposée de la matrice des contraintes de (P).
c jx j m
• Une variable xj 0 de coût cj donne une contrainte de niveau cj : a ij y i cj
xj 0 i 1

n
bi yi
• Une contrainte = de niveau bi donne une variable yj R de coût bi : a ij x j bi
j 1
yi R

généralisation à un problème linéaire quelconque (signe des variables, sens des contraintes)

156
1 Bases théoriques Max CERF
1.4 Conditions d’optimalité
1.4.1 Dualité
Techniques d’optimisation 2018

1.4.1 Programmation linéaire


Correspondance primal-dual
• Problème primal (P)

A1 x 1 B1 x 2 C1 x 3 b1 , b1 R m 1
m1 égalités
A 2 x1 B2 x 2 C 2 x 3 b 2 , b 2 R m 2
m2 inégalités inférieur
m
sous A 3 x 1 B3 x 2 C 3 x 3 b 3 , b 3 R m3 inégalités supérieur
3
min c1T x 1 c T2 x 2 c 3T x 3
x 1 R n1 x1 0 n1 variables positives
x 2 R n2
x 3 R n3 x2 0 n2 variables négatives
n
x3 R 3
n3 variables libres

• Problème dual (D)

A1T y1 A T2 y 2 A 3T y 3 c1 , c1 R n 1
n1 inégalités inférieur
B1T y1 B T2 y 2 B3T y 3 c 2 , c 2 R n 2
n2 inégalités supérieur
T T T n
T
max b y1 b y 2 T T
b y3 sous C1 y 1 C 2 y 2 C 3 y 3 c 3 , c 3 R 3
n3 égalités
1 2 3
y1 R m1 y1 R m 1
m1 variables libres
y 2 R m2
y 3 R m3 y2 0 m2 variables négatives
y3 0 m3 variables positives

157
1 Bases théoriques Max CERF
1.4 Conditions d’optimalité
1.4.1 Dualité
Techniques d’optimisation 2018

1.4.1 Programmation linéaire


Correspondance primal-dual
Preuve
• Lagrangien du problème primal (P)

L x1 , x2 , x3 , 1 , 2 , 3 , 1 , 2 c1T x1 c2T x2 c3T x3


T
1 b1 A1 x1 B1 x2 C1 x3 m1 multiplicateurs 1
T
2 A2 x1 B2 x2 C 2 x3 b2 m2 multiplicateurs 2 0
T
3 b3 A3 x1 B3 x2 C3 x3 m3 multiplicateurs 3 0
T T
1 x1 2 x2
n1 multiplicateurs 1 0
n2 multiplicateurs 2 0

• On regroupe les termes en x1,x2,x3 :


L x1 , x2 , x3 , 1 , 2 , 3 , 1 , 2 b1T 1 b2T 2 b3T 3
T
c1 A1T 1 A2T 2 A3T 3 1 x1 linéaire en x
T
c2 B1T 1 B2T 2 B3T 3 2 x2
T
c3 C1T 1 C 2T 2 C3T 3 x3

• La fonction duale est définie par : w(λ , μ) min L(x, λ, μ) bornée si les coefficients
x
de x1,x2,x3 sont nuls
158
1 Bases théoriques Max CERF
1.4 Conditions d’optimalité
1.4.1 Dualité
Techniques d’optimisation 2018

1.4.1 Programmation linéaire


Correspondance primal-dual
• L x1 , x2 , x3 , 1 , 2 , 3 , 1 , 2 b1T 1 b2T 2 b3T 3
T
c1 A1T 1 A2T 2 A3T 3 1 x1
T
c2 B1T 1 B2T 2 B3T 3 2 x2
T
c3 C1T 1 C 2T 2 C3T 3 x3

c1 A1T A2T A3T 0


1 2 3 1 , 0
• L bornée c2 B1T B2T B3T 0 avec 1 2
2, 0
1 2 3 2
3
c3 C1T 1 C 2T 2 C3T 3 0

y1 1
A1T y1 A2T y 2 A3T y3 c1 1 c1 car 1 0
• En posant : y2 2 0 B1T y1 B2T y 2 B3T y3 c2 2 c2 car 2 0
y3 3 0 C1T y1 C 2T y 2 C3T y3 c3

• Fonction duale : w y1 , y 2 , y3 L 1 , 2 , 3 , 1 , 2 w y1 , y 2 , y 3 b1T y1 b2T y 2 b3T y3

A1T y1 A2T y 2 A3T y3 c1


T T T
• Problème dual : max w y1 , y 2 , y3 b y1 b y 2
1 2 b y3
3 sous B1T y1 B2T y 2 B3T y3 c2
y1 , y 2 , y 3
C1T y1 C 2T y 2 C3T y3 c3
159
1 Bases théoriques Max CERF
1.4 Conditions d’optimalité
1.4.1 Dualité
Techniques d’optimisation 2018

1.4.1 Exemple
Correspondance primal-dual
• Problème primal (P)
x 1 3x 2 5
2x 1 x 2 3x 3 6
(P) min x 1 2x 2 3x 3 sous
x1 , x 2 , x 3 x3 4
x 1 0, x 2 0, x 3 R

• Problème dual (D)


y1 2y 2 1
3y1 y 2 2
( D) max 5y1 6y 2 4y 3 sous
y1 , y 2 , y 3 3y 2 y 3 3
y1 R , y 2 0, y 3 0
y1 2y 2 1
3y1 y 2 2
min 5y1 6y 2 4y 3 sous
y1 , y 2 , y 3 3y 2 y 3 3
y1 R , y 2 0, y 3 0

• Problème dual du dual : on retrouve le problème primal (P)

160

Vous aimerez peut-être aussi