Title: Chapitre 2 Optimisation non linaire sans contraintes
1Chapitre 2Optimisation non linéairesans
contraintes
- Optimisation I
- Systèmes de Communication
2Méthodes de descente
3Directions de descente
- Problème
- min f IRn ? IR
- f continûment différentiable
- Idée
- On démarre dun point x0
- On génére des vecteurs x1, x2, tels que la
valeur de f décroit à chaque itération - f(xk1) lt f(xk) k1,2,
4Directions de descente
f(x)c1
f(x)c2 lt c1
f(x)c3 lt c2
5Directions de descente
- Soit x ? IRn tel que ?f(x) ? 0.
- Condidérons la demi-droite
- xa x a ?f(x)
- Théorème de Taylor (1er ordre)
- f(xs) f(x) ?f(x)Ts o(s)
- avec s xa-x
- f(xa) f(x) ?f(x)T(xa-x) o(xa-x)
- f(x) a ?f(x)2 o(a?f(x))
- f(x) a ?f(x)2 o(a)
6Directions de descente
- f(xa) f(x) a ?f(x)2 o(a)
- Si a est petit, on peut négliger o(a)
- Donc, pour a positif mais petit,
- f(xa) lt f(x)
- Théorème
- Il existe d tel que, pour tout a ? 0,d
- f(x- a?f(x)) lt f(x)
7Directions de descente
- Gradient plus forte pente
- Question y a-t-il dautres directions de
descente que -?f(x) ? - Appliquons le même raisonnement avec d ? 0.
8Directions de descente
- Condidérons la demi-droite
- xa x a d
- Théorème de Taylor (1er ordre)
- f(xs) f(x) ?f(x)Ts o(s)
- avec s xa-x
- f(xa) f(x) ?f(x)T(xa-x) o(xa-x)
- f(x) a ?f(x)Td o(a d)
- f(x) a ?f(x)Td o(a)
9Directions de descente
- f(xa) f(x) a ?f(x)Td o(a)
- Si a est petit, on peut négliger o(a)
- Pour avoir f(xa) lt f(x), il faut
- ?f(x)Td lt 0
- Théorème
- Soit d tel que ?f(x)Td lt 0. Il existe d tel que,
pour tout a ? 0,d - f(xad) lt f(x)
10Directions de descente
- Définition
- Soit fIRn?IR, une fonction continûment
différentiable, et x un vecteur de IRn. Le
vecteur d ? IRn est appelé direction de descente
de f en x ssi - ?f(x)Td lt 0
11Méthodes de descente
- Algorithme de base
- Soit x0 ? IRn. Poser k0.
- Tant que ?f(xk) ? 0
- Choisir dk tel que ?f(xk)Tdk lt 0
- Choisir ak gt 0
- Poser xk1 xk ak dk
12Méthodes de descente
- Notes
- Il y a beaucoup de choix possibles
- En général, on choisit ak tel que
- f(xkakdk) lt f(xk)
- mais il y a des exceptions
- Il ny a aucune garantie de convergence pour
lalgorithme de base
13Choix de la direction
- Ecrivons dk -Dk ?f(xk)
- où Dk est une matrice n x n
- La condition ?f(xk)Tdk lt 0 sécrit
- ?f(xk)T Dk?f(xk) gt 0
- Si Dk est définie positive, cette condition est
toujours vérifiée. - Le choix de la direction revient donc au choix
dune matrice définie positive.
14Choix de la direction
- Quelques exemples souvent utilisés
- Méthode de la plus forte pente
- Dk I
- xk1 xk ak ?f(xk)
- Méthode de Newton
- Dk (?2f(xk))-1
- xk1 xk ak (?2f(xk))-1 ?f(xk)
Attention il faut que ?2f(xk) soit inversible et
déf. pos.
15Choix de la direction
- Mise à léchelle diagonale
- dki gt 0 pour tout i
16Choix de la direction
- Méthode de Newton modifiée
- Dk (?2f(x0))-1
- xk1 xk ak (?2f(x0))-1 ?f(xk)
- etc
17Choix du pas minimisation
- 1. Règle de minimisation
- Choisir ak qui minimise la fonction le long de
dk, cest-à-dire tel que
ou encore
18Choix du pas minimisation
f(xkadk)
a
19Choix du pas minimisation
- Minimisation à une variable
- min g(a)f(xkadk), a ? a0,b0
- Algorithme de la section dor
- Hypothèse
- g est unimodale dans a0,b0
- ssi
- g possède un et un seul minimum global a dans
a0,b0 - Soient a1 et a2 ? a0,b0
- Si a1 lt a2 lt a, alors g(a1) gt g(a2) gt g(a)
- Si alt a1 lt a2, alors g(a) lt g(a1) lt g(a2)
20Choix du pas minimisation
Si f(a0) lt f(b0) Alors a?a0,b0 a1,b1
a0,b0
21Choix du pas minimisation
Si f(a0) gt f(b0) Alors a?a0,b0 a1,b1
a0,b0
22Choix du pas minimisation
- Idée
- Définir une suite ak,bk dintervalles
- tels que, pour tout k
- ak1,bk1 ? ak,bk
- a ? ak,bk
- Comment être efficace ?
- Ajustement symétrique
- Economiser des évaluations de fonction
23Choix du pas minimisation
Ajustement symétrique
- a0-a0
-
- b0-b0
-
- r(b0-a0),
- lt ½
24Choix du pas minimisation
- Economie de fonctions
- Itération 0 g(a0), g(b0), g(a0), g(b0)
- Supposons a1,b1 a0,b0
- Comment choisir a1 et b1 ?
b1
- Prenons b1 a0 pour économiser une évaluation
25Choix du pas minimisation
- Itération 0 a0-a0b0-b0r(b0-a0)
- Itération 1 a1-a1b1-b1r(b1-a1)
- a1-a0b0-a0 r(b0-a0)
- On montre que
- r (3-?5)/2 ? 0.382
26Choix du pas minimisation
- Preuve
- Posons l b0-a0
- On utilise a0-a0b0-b0r(b0-a0)rl
- b0 - a0
- b0 - a0 a0 - a0 b0 - b0
- - (b0 - b0) - (a0 - a0) b0 - a0
- - r l - r l l l ( 1-2 r)
- b0- a0
- b0 a0 b0 b0
- - (b0 b0) b0 a0
- - r l l l ( 1- r)
27Choix du pas minimisation
- On utilise b0-a0 r(b0-a0)
- l (1 - 2 r) r l ( 1 - r)
- (1 - 2 r) r (1 - r)
- r2 - 3r 1 0
- Solutions
- r (3?5)/2 ? 2.618
- r (3- ?5)/2 ? 0.382
- Il faut que r lt ½
- CQFD
28Choix du pas minimisation
- Notes anciens Grecs
- Section dor
(1-r)(b0-a0)(1-r)l
r(b0-a0) rl
29Choix du pas minimisation
- Algorithme de la section dor
- Soient g(a) unimodale sur a0,b0, e ? IR et r
(3-?5)/2 - Pour k1,2,
- Si bk-ak lt e, alors a(akbk)/2 STOP
- ak akr(bk-ak)(1-r)akrbk
- bk bk-r(bk-ak) rak(1-r)bk
- Si g(ak)g(bk), alors ak1ak, bk1bk
- Si g(ak)gt g(bk), alors ak1ak, bk1bk
30Choix du pas minimisation
- Exemple
- min g(a)a4 - 14a3 60a2 - 70a
- a ? 0,2
31Choix du pas
- Règle de minimisation
- Méthode de la section dor
- Règle dapproximation
- Minimisation prend du temps
- Section dor nécessite lunimodalité
- A-t-on besoin du minimum exact ?
- Idée
- Choisir un pas qui diminue suffisamment la valeur
de la fonction.
32Choix du pas approximation
- Démarche
- Voyons dabord ce que sont de mauvais pas.
- Déterminons des règles empêchant les mauvais
pas. - Prenons
- f(x) x2
- x0 0
33Choix du pas approximation
- Stratégie 1
- dk (-1)k1
- ak 23(2-(k1))
- xk(-1)k(12-k)
- Lorsque k est grand
- dk (-1)k1
- ak ? 2
- xk ?(-1)k
34Choix du pas approximation
- Stratégie 1
- dk (-1)k1
- ak 23(2-(k1))
- xk(-1)k(12-k)
- Lorsque k est grand
- dk (-1)k1
- ak ? 2
- xk ?(-1)k
35Choix du pas approximation
- Problème de la stratégie 1
- très petites diminutions de f relativement à la
longueur des pas - Solution
- exiger une diminution suffisante de f
36Choix du pas approximation
f(xk)a?f(xk)Tdk
f(xk)ab1?f(xk)Tdk b1 ? 0,1
37Choix du pas approximation
- On choisit ak tel que
- f(xkakdk) f(xk)akb1?f(xk)Tdk
- b1 ? 0,1
- Reprenons lexemple (k grand et impair)
- f(x)x2, xk -1, dk1, ak2, f(x)2x
- f(-12?1) 12b1(-2 ?1)
- 1 1 4 b1
- 4 b1 0
- Impossible
- La stratégie 1 sera rejetée par cette règle
38Choix du pas approximation
x0
- Stratégie 2
- dk -1
- ak 2-k1
- xk 12-k
x1
x2
x3
x4
- Lorsque k est grand
- dk -1
- ak ? 0
- xk ? 1
x5
x6
x7
39Choix du pas approximation
- Stratégie 2
- dk -1
- ak 2-k1
- xk 12-k
- Lorsque k est grand
- dk -1
- ak ? 0
- xk ? 1
40Choix du pas approximation
- Problème de la stratégie 2
- les pas sont trop petits relativement à la
diminution de f - il y a plusieurs manières dempêcher cela
- Idée essayer dabord un grand pas
41Choix du pas approximation
- Conditions dArmijo-Goldstein
- f(xkakdk) f(xk)akb1?f(xk)Tdk
- b1 ? 0,1
42Choix du pas approximation
- Algorithme de recherche linéaire
- Soient g(a), b1,l ? 0,1, b2?b1,1, a0 gt 0
- Pour k1,2,
- Si f(xkakdk) f(xk)akb1?f(xk)Tdk alors aak
STOP - ak1 l ak
43Convergence
- Concept de non orthogonalité
- Supposons que dk est déterminée de manière unique
par xk. - On dit que la suite (dk)k0,1, est en relation
gradient avec la suite (xk)k0,1, si la
propriété suivante est vérifiée - Pour toute sous-suite (xk)k?K qui converge vers
un point non stationnaire, la sous-suite
correspondante (dk)k?K est bornée et vérifie - lim supk??,k?K ?f(xk)Tdk lt 0
44Convergence
- Notes
- On peut souvent garantir a priori que (dk) est en
relation-gradient. - En particulier, cest le cas si
- dk -Dk?f(xk), et
- les valeurs propres de Dk sont bornées, i.e. pour
c1 et c2 gt 0, on a - c1z2 zTDkz c2z2, ?z?IRn, k0,1,
45Convergence
- Théorème
- Si (dk) est en relation-gradient avec (xk)
- Si le pas est choisi
- soit par la règle de minimisation
- soit par la règle dArmijo-Goldstein
- Alors tous les points limites de (xk) sont
stationnaires.
46Critère darrêt
- En général, ces méthodes ne permettent pas de
trouver la solution en un nombre fini
ditérations. - Quand arrête-t-on les itérations ?
- Critère 1
- ?f(xk) lt e, avec e gt 0 petit.
- Problèmes
- Supposons e10-3, et f(x)?10-7,10-5. Il est
probable que toutes les valeurs de x vérifieront
la condition darrêt. - Par contre, si f(x) ?105,107, cela narrivera
peut-être jamais.
47Critère darrêt
- Critère 2
- r(x)? e, avec e gt 0 petit,
- avec r(x)i (?f(x)i xi) / f(x).
- r(x) est le gradient relatif en x.
- Ce critère est indépendant de changement dunités
en f et en x. - Attention si f ou x est proche de 0.
48Critère darrêt
- où
- e gt 0 est petit.
- txi est une valeur typique de xi.
- tf est une valeur typique de f.