6. Optimisation
MTH1101
C. Audet, G. Jomphe, S. Le Digabel Polytechnique Montr´eal
A2019
Plan
1. Introduction
2. Optimisation continue sans contraintes
3. M´ethode du gradient
4. Optimisation continue avec contraintes
1. Introduction
2. Optimisation continue sans contraintes 3. M´ethode du gradient
4. Optimisation continue avec contraintes 5. Conditions de second ordre
Probl`
eme d’optimisation
I Sans contraintes : min x∈D⊆Rnf (x) I Avec contraintes : min x∈D⊆Rn{f (x) : x ∈ Ω} avec Ω = {c1(x) ≤ 0, c2(x) ≤ 0, . . . , cm(x) ≤ 0} ⊆ RnForme des contraintes
I Ensemble r´ealisable :Constitu´e de m contraintes :
Ω = {c1(x) ≤ 0, c2(x) ≤ 0, . . . , cm(x) ≤ 0} ⊆ Rn
I Une contrainte in´egalit´e peut se transformer en une contrainte
´
egalit´e (avec unevariable d’´ecart non n´egative).
I Une contrainte ´egalit´e peut se transformer en deux contraintes in´egalit´e.
Optima locaux et globaux
Soit la fonction f d´efinie sur D ⊆ Rn dans R
I x∗ ∈ D est unminimum global (ou absolu) de f sur D si f (x∗) ≤ f (x) pour tout x ∈ D
I x∗ ∈ D est unminimum localde f sur D si il existe r > 0 tel que f (x∗) ≤ f (x) pour tout x ∈ D ∩ Br(x∗)
I D´efinitions ´equivalentes pour unmaximum globalet un
maximum local.
Domaine ferm´
e et born´
e et existence d’un optimum
I Un domaine est dit ferm´e si sa fronti`ere est inclue dans le domaine. Dans le cas contraire, il est dit ouvert ou semi-ouvert.
I Un domaine est dit born´e s’il ne s’´etend pas vers l’infini. Dans le cas contraire, il est dit non born´e.
I Un domaine ferm´e et born´e est appel´e compact. I Exemple 1 : Exemples de domaines.
I Si f est une fonction continue dans un domaine D ferm´e et
born´e, alors f poss`ede un maximum global et un minimum
1. Introduction
2. Optimisation continue sans contraintes
3. M´ethode du gradient
4. Optimisation continue avec contraintes 5. Conditions de second ordre
CN1 : Condition n´
ecessaire d’optimalit´
e du 1er ordre
Soit le probl`eme d’optimisation min
x∈D⊆Rnf (x)
I CN1 :Si x∗ est un optimum local de f sur D et si f est diff´erentiable en x∗, alors ∇f (x∗) = 0
I Un point x tel que que ∇f (x) = 0 est appel´e un point stationnaireoucritique.
I Condition n´ecessaire : Un point stationnaire peut ˆetre un minimum, un maximum, ou aucun des deux.
I Un point critique qui n’est pas un minimum ou un maximum est appel´e unpoint de selle(ou point-col).
Exemple 2
1. Introduction
2. Optimisation continue sans contraintes 3. M´ethode du gradient
4. Optimisation continue avec contraintes 5. Conditions de second ordre
Description de la m´
ethode
I Pour la minimisation d’une fonction diff´erentiable f : Rn→ R sans contraintes.
I Direction de descente en x : d ∈ Rn telle que ∇f (x)>d<0
I Ladirection de plus forte descente en x est −∇f (x)
I On effectue unerecherche lin´eaire (line search) le long de cette direction : C’est un sous-probl`eme d’optimisation en une seule variable.
I La m´ethode donne un point critique qui peut ˆetre un minimum local, un point de selle, ou mˆeme un maximum local.
I La qualit´e du point obtenu d´epend du choix du point de d´epart x0
Optimisation sans contraintes : M´
ethode du gradient
Pour la minimisation d’une fonction diff´erentiable f : Rn→ R sans contraintes.
[0] Initialisation
Point de d´epart : x0∈ Rn k ← 0
[1] It´eration k
Calculer dk= −∇f (xk) (dir. de descente) Si (dk = 0) : Stop (point critique) Trouver αk∈ arg min
α≥0
h(α) = f (xk+ αdk) xk+1← xk+ αkdk
k ← k + 1 Aller `a [1]
M´
ethode du gradient : Remarques
I Lorsque la minimisation de h est faite de fa¸con exacte, les directions cons´ecutives dk et dk+1 sont perpendiculaires : on
s’arrˆete toujours de fa¸con tangente `a une courbe de niveau. I La m´ethode peut prendre un nombre consid´erable d’it´erations
1. Introduction
2. Optimisation continue sans contraintes 3. M´ethode du gradient
4. Optimisation continue avec contraintes
Optimisation avec contraintes
min
x∈Rn{f (x) : x ∈ Ω}
Th´eor`eme
Si Ω est ferm´e et born´e et si f est continue sur Ω, alors il existe un minimum global atteint en un point de Ω et un maximum global atteint en un point de Ω
En pratique, cela signifie que pour r´esoudre le probl`eme, on peut ´enum´erer tous les candidats (les points critiques) et les comparer afin de trouver les optima.
Optimisation avec une contrainte ´
egalit´
e
Avec Ω = {x ∈ Rn: c(x) = 0} ⊆ Rn : CN1
Si x∗ ∈ Rn est un minimum local de f dans Ω, et si ∇c(x∗) 6= 0,
alors c(x∗) = 0 et il existe λ ∈ R tel que ∇f (x∗) = λ∇c(x∗)
I Un point x∗ satisfaisant cette condition est appel´e unpoint critique(on n’utilise plus le terme stationnaire en pr´esence de contraintes).
I Exemple 3 : min
x=(x,y)∈R23x − 2y s.c. x
Optimisation avec une contrainte in´
egalit´
e
Avec Ω = {x ∈ Rn: c(x) ≥ 0} ⊆ Rn : CN1
Si x∗ est un minimum local de f dans Ω, alors il existe λ≥0 tel que ∇f (x∗) = λ∇c(x∗) et c(x∗)λ = 0
I Un point x∗ satisfaisant ces conditions est appel´e unpoint critique.
I Si c(x∗) > 0, la condition devient ∇f (x∗) = 0 I Pour un maximum, la condition λ ≥ 0 devient λ ≤ 0 I Exemple 4 : min
x=(x,y)∈R2(x − 1)
Optimisation avec plusieurs contraintes ´
egalit´
e
Avec Ω = {x ∈ Rn: ci(x) = 0, i ∈ E } ⊆ Rn et |E | = m :
CN1
Si x∗ est un minimum local de f dans Ω o`u {∇ci(x∗) : i ∈ E } est
un ensemble lin´eairement ind´ependant, alors ci(x∗) = 0 pour tout
i ∈ E et il existe λ ∈ Rm tel que ∇f (x∗) =X
i∈E
λi∇ci(x∗)
Un point x∗ satisfaisant cette condition est appel´e unpoint critique.
Multiplicateurs de Lagrange
I Les λ des conditions n´ecessaires sont appel´es les
multiplicateurs de Lagrange.
I Ils peuvent servir `a effectuer des analyses de sensibilit´esur les membres de droite des contraintes.
I En effet, un λ repr´esente la variation de f lorsque le membre de droite de la contrainte associ´ee augmente d’une unit´e.
Analyse de sensibilit´
e : Pour n = 2 et une contrainte
´
egalit´
e
min
x=(x,y)∈R2f (x) s.c. g(x) = c
I La fonction v(c) repr´esente la valeur optimale (min. ou max.) au point (x(c), y(c)) I On a v(c) = f (x(c), y(c)) et g(x(c), y(c)) = c I dv dc(c) = ∂f ∂x dx dc(c) + ∂f ∂y dy dc(c) I CN1 : ∇f = λ∇g I dv dc(c) = λ h ∂g ∂x dx dc(c) + ∂g ∂y dy dc(c) i = λdgdc(c) = λ
λ repr´esente le taux de variation de la valeur optimale en fonction de c
Exemples 5 et 6
I Exemple 5 :
a) Donner les optima de f (x) = x + y sous la contrainte x2+ y2= 4
b) Donner les nouvelles valeurs optimales lorsque la contrainte devient x2+ y2= 4.1
I Exemple 6 : On optimise une fonction sous la contrainte g(x) = c et on trouve une valeur optimale de 10 pour c = 1. Pour c = 3, on trouve une valeur optimale de 15. Trouver la valeur du multiplicateur de Lagrange `a la solution optimale du probl`eme avec c = 1
1. Introduction
2. Optimisation continue sans contraintes 3. M´ethode du gradient
4. Optimisation continue avec contraintes 5. Conditions de second ordre
Signe d’une matrice
Une matrice A sym´etrique est dite
I d´efinie positivesi x>Ax > 0 pour tout x 6= 0
I semi-d´efinie positive(SDP) si x>Ax ≥ 0 pour tout x I d´efinie n´egative si −A est d´efinie positive.
I semi-d´efinie n´egative (SDN) si −A est semi-d´efinie positive. I ind´efiniesi A n’est ni SDP, ni SDN.
Taylor pour justifier la CN2
I D´eveloppement de Taylor de f en tout point x autour du point x0 : f (x) = f (x0)+∇f (x0)>(x−x0)+ 1 2(x−x0) >∇2f (x 0)(x−x0)+. . .
I Si x0= x∗ est un point critique, alors on a
f (x) − f (x∗) ' 1 2(x − x
∗
CN2
Avec x∗ critique, on a, pour tout x proche de x∗ :
f (x) − f (x∗) ' 1 2(x − x
∗)>∇2f (x∗)(x − x∗)
Et donc la CN2 est :
I Si ∇2f (x∗) est d´efinie-positive, alors x∗ est un minimum
local.
I Si x∗ est un minimum local, alors ∇2f (x∗) est SDP. I Si ∇2f (x∗) est d´efinie-n´egative, alors x∗ est un maximum
local.
I Si x∗ est un maximum local, alors ∇2f (x∗) est SDN. I Si ∇2f (x∗) est ind´efinie, alors x∗ est un point de selle.
Sous-matrices principales
Les d´eterminants des nsous-matrices principalesde ∇2f (x∗) = [a ij] ∈ Rn×n sont α1 = |a11| α2 = a11 a12 a21 a22 α3 = a11 a12 a13 a21 a22 a23 a31 a32 a33 . . . ... αk = a11 a12 · · · a1k a21 a22 · · · a2k . . . ... . .. ... ak1 ak2 · · · akk . . . ... αn = det ∇2f (x∗)
Crit`
ere de Sylvester
Pour tout i = 1, 2, . . . , n :
I Les d´eterminants des sous-matrices principales de −∇2f (x∗) sont βi= (−1)iαi
I Si tous les αi sont > 0, x∗ est un minimum local. Et pas
besoin de regarder les βi
I Si un αi est < 0, x∗ n’est pas un minimum local. Il faut alors
regarder les βi
I Si le plus petit αi est = 0, on ne peut rien dire. Il faut alors
regarder les βi
I Si tous les βi sont > 0, x∗ est un maximum local.
I Si un βi est < 0, x∗ n’est pas un maximum local.
I Si le plus petit βi est = 0, on ne peut rien dire.
R´
esum´
e des conditions de second ordre
Soit f (x) une fonction de Rn dans R et soit x∗ un point critique.
I ∇f (x∗) = 0
I CN2 : Si ∇2f (x∗) est :
I d´efinie positive : x∗ est unminimum localde f
I d´efinie n´egative : x∗ est unmaximum localde f
I non-d´efinie : x∗ est unpoint de selle
I semi-d´efinie positive ou n´egative : On ne sait pas. I CS2 : Si ∇2f (x), pour tout x, est :
I semi-d´efinie positive : f estconvexeet x∗ est unminimum
globalde f
I semi-d´efinie n´egative : f estconcave et x∗est un maximum globalde f