3. Optimisation sans contrainte Fonctions à plusieurs variables
Transcription
3. Optimisation sans contrainte Fonctions à plusieurs variables
3. Optimisation sans contrainte Fonctions à plusieurs variables 3.1 Résultats préliminaires Soit Y ⊂ R n un ensemble ouvert et f : Y → R1 une fonction à valeurs réelles. Notes: n T i ) norme euclédienne de x ∈ R : x = x x = n 2 x ∑ i i =1 ii ) ∇f ( x ) le gradient de f à x ∈ R n : T ∂f ( x ) ∂f ( x ) ∂f ( x ) ∇f ( x ) = , , , . ∂x2 ∂xn ∂x1 X ⊂ R n est un ensemble ouvert si ∀x ∈ X il existe un ε >0 tel que Bε ( x ) = { z ∈ R n ; x − z < ε } ⊂ X . Dans R1 l'intervalle ouvert ( a, b ) est un ensemble ouvert puisque ∀x ∈ ( a, b ) , ∃ε > 0 tel que Bε ( x ) = { z : x − z < ε } ⊂ ( a, b ) Dans R 2 l'ensemble Γ = {[ x, y ] ∈ R 2 : x ∈ ( a, b ) , y = 0} ( ) a b n'est pas un ensemble ouvert puisque nous ne pouvons pas bouger pour modifier la valeur de y X ⊂ R n est un ensemble ouvert si ∀x ∈ X il existe un ε >0 tel que Bε ( x ) = { z ∈ R n ; x − z < ε } ⊂ X . Bε ( x ) • x X Dans R 2 l'ensemble X est ouvert puisque pour tout x ∈ X , il existe un ε > 0 tel que la sphère ouverte de rayon ε , Bε ( x ) = { z ∈ R 2 ; x − z < ε } ⊂ X . Soit Y ⊂ R n un ensemble ouvert et f : Y → R1 une fonction à valeurs réelles. Si f ∈ C 1 / Y (f possède des dérivées partielles de premier ordre continues sur Y ), pour toute paire de points x, y ∈ Y développement de Taylor de premier ordre (version résidu) f ( y ) = f ( x ) + ∇f ( x ) T ( y − x ) + α ( x, ( y − x ) ) y−x où lim α ( x, ( y − x ) ) = 0 ( y − x )→0 développement de Taylor sans résidu il existe un vecteur z sur le segment de droite entre x et y ( }) { z ∈ ℑ ( x, y ) = t ∈ R n : t = θ x + (1 − θ ) y, θ ∈ [ 0,1] tel que f ( y ) = f ( x ) + ∇f ( z ) T ( y − x) Si f ∈ C 1 / Y (f possède des dérivées partielles de premier ordre continues sur Y ), pour toute paire de points x, y ∈ Y développement de Taylor de premier ordre (version résidu) f ( y ) = f ( x ) + ∇f ( x ) T ( y − x ) + α ( x, ( y − x ) ) y−x où lim α ( x, ( y − x ) ) = 0 ( y − x )→0 Si f ∈ C 1 / Y (f possède des dérivées partielles de premier ordre continues sur Y ), pour tout x ∈ Y et d ∈ R n développement de Taylor de premier ordre (version résidu) f ( x + θ d ) = f ( x ) + ∇f ( x ) T ( x + θ d − x ) + α ( x, x + θ d − x ) x + θ d − x f ( x + θ d ) = f ( x ) + θ∇f ( x ) d + α ( x, θ d ) θ d ( 3.1) pour tout θ , où α ( x, θ d ) est une fonction de θ prenant des T valeurs réelles telles que lim α ( x, θ d ) = 0 θ →0 Lemme 3.1: Soient Y ⊂ R n un ensemble ouvert, f : Y → R1 , f ∈ C 1 / Y , x ∈ Y et d ∈ R n . Alors lim θ →0 f ( x +θ d ) − f ( x) θ T = ∇f ( x ) d . Preuve: Utilisant la relation (3.1) T f ( x + θ d ) = f ( x ) + θ∇f ( x ) d + α ( x,θ d ) θ d alors pour θ ≠ 0 f ( x + θ d ) − f ( x ) α ( x, θ d ) θ d T − = ∇f ( x ) d θ f ( x +θ d ) − f ( x) θ θ T ± α ( x , θ d ) d = ∇f ( x ) d ( 3.1) Preuve: Utilisant la relation (3.1) T f ( x + θ d ) = f ( x ) + θ∇f ( x ) d + α ( x, θ d ) θ d alors pour θ ≠ 0 f ( x + θ d ) − f ( x ) α ( x, θ d ) θ d T − = ∇f ( x ) d θ θ f ( x +θ d ) − f ( x) T ± α ( x, θ d ) θ d = ∇f ( x ) d θ f ( x +θ d ) − f ( x) T lim ± lim α ( x, θ d ) d = lim ∇f ( x ) d θ →0 θ →0 θ →0 θ f ( x +θ d ) − f ( x) T lim = ∇f ( x ) d . θ →0 θ ( 3.1) n Définition: Soient X ⊂ R et f : X → R1 . Étant donné x ∈ X , d ∈ R n est une direction réalisable à x s'il existe un scalaire λ ( x, d ) > 0 tel que ( x + λ d ) ∈ X ∀λ ∈ 0, λ ( x, d ) . x• d • x + λ ( x, d ) d Lemme 3.2: Soient X ⊂ R n , f ∈ C 1 / X , et x ∈ X . Si d ∈ R n est T une direction réalisable à x et ∇f ( x ) d < 0, alors il existe un scalaire ξ > 0 tel que pour tout 0 < τ ≤ ξ f ( x +τ d ) < f ( x). (i.e., d est une direction de descente à x.) Lemme 3.2: Soient X ⊂ R n , f ∈ C 1 / X , et x ∈ X . Si d ∈ R n est T une direction réalisable à x et ∇f ( x ) d < 0, alors il existe un scalaire ξ > 0 tel que pour tout 0 < τ ≤ ξ f ( x +τ d ) < f ( x). (i.e., d est une direction de descente à x.) Preuve : Puisque lim f ( x +θ d ) − f ( x) θ θ →0 T = ∇f ( x ) d < 0, alors il existe un scalaire ξ >0 tel que pour tout τ ≠ 0, − ξ ≤ τ ≤ ξ , f ( x +τ d ) − f ( x) < 0. τ Il suffit de restreindre τ à être positif pour avoir f ( x + τ d ) − f ( x ) < 0 ou f ( x + τ d ) < f ( x ) . Lemme 3.3: Soient X ⊂ R n un ensemble ouvert, f ∈ C 1 / X . Si x est un minimum local de f sur X , alors ∇f ( x ) =0. Preuve. Par contradiction, supposons que x est un minimum local et que ∇f ( x ) ≠ 0. Considérons la direction d = −∇f ( x ) . Puisque X est ouvert, alors d est une direction réalisable à x, et T T ∇f ( x ) d = −∇f ( x ) ∇f ( x ) < 0, puisque ∇f ( x ) ≠ 0. Par le Lemme 3.2, d = −∇f ( x ) est une direction de descente à x et par conséquent il est possible de déterminer un scalaire τ >0 tel que x + τ d ∈ Bε ( x ) et f ( x + τ d ) < f ( x ) , une contradiction. Lemme 3.4: Soient X ⊂ R n un ensemble ouvert, f ∈ C 1 / X . Si x est un maximum local de f sur X , alors ∇f ( x ) =0. Preuve. Similaire Conditions de 2ième ordre pour minimum locaux 2 ∂ f ( x) 2 Définition: Soit ∇ f ( x ) = le Hessien (matrice ∂xi ∂x j réelle n × n) au point x d'une fonction f de classe C 2 (ayant des dérivées partielles continues d'ordre 2). Lemme 3.5: Soient X ⊂ R n un ensemble ouvert et f ∈ C 2 / X . Si x ∈ X est un minimum local de f sur X , alors ∇f ( x ) =0 et ∇ 2 f ( x ) est une matrice semi-definie positive. Définition: Étant donné une matrice réelle D de dimension n × n, la forme quadratique associée est la fonction ψ : R n → R1 suivante ψ ( x ) = x T Dx. a11 a12 a13 x1 ψ ( x1 , x2 , x3 ) = [ x1 , x2 , x3 ] a21 a22 a23 x2 a a a x 31 32 33 3 a11 x1 + a12 x2 + a13 x3 = [ x1 , x2 , x3 ] a21 x1 + a22 x2 + a23 x3 a x + a x + a x 32 2 33 3 31 1 ( ) ( ) ( = a11 x12 + a21 x1 x2 + a31 x1 x3 + a12 x1 x2 + a22 x 22 + a32 x2 x3 + a13 x1 x3 + a23 x2 x3 + a33 x32 = a11 x12 + a22 x 22 + a33 x32 + ( a12 + a21 ) x1 x2 + ( a13 + a31 ) x1 x3 + ( a23 + a32 ) x2 x3 ) Définition: Étant donné une matrice réelle D de dimension n × n, la forme quadratique associée est la fonction ψ : R n → R1 suivante ψ ( x ) = x T Dx. Définition: Une matrice réelle D de dimension n × n est semi-définie positive (définie positive) si ψ ( x ) ≥ 0 ∀x ∈ R n (ψ ( x ) > 0 ∀x ∈ R n , x ≠ 0 ) . Résultats: Une matrice D réelle symétrique de dimension n × n est semi-définie positive (définie positive) si et seulement si i ) toutes ses valeurs propres sont non négatives (positives); ii ) tous les mineurs principaux sont non négatifs (tous les "leading" mineurs principaux sont positifs). a11 a12 a13 a21 a22 a23 a a a 31 32 33 Mineurs principaux d'ordre 1: a11 , a22 , a33 Leading mineurs principaux d'ordre 1: a11 d'ordre 2: a11 a12 a21 a22 , d'ordre 2: a11 a12 a21 a22 a22 a23 a11 a13 a32 a33 , a31 a33 d'ordre 3: a11 a12 a13 a21 a22 a23 a a a 31 32 33 d'ordre 3: a11 a12 a13 a21 a22 a23 a a a 31 32 33 Conditions de 2ième ordre pour minimum locaux 2 ∂ f ( x) 2 Définition: Soit ∇ f ( x ) = le Hessien (matrice ∂xi ∂x j réelle n × n) au point x d'une fonction f de classe C 2 (ayant des dérivées partielles continues d'ordre 2). Lemme 3.5: Soient X ⊂ R n un ensemble ouvert et f ∈ C 2 / X . Si x ∈ X est un minimum local de f sur X , alors ∇f ( x ) =0 et ∇ 2 f ( x ) est une matrice semi-definie positive. Lemme 3.5: Soient X ⊂ R n un ensemble ouvert et f ∈ C 2 / X . Si x ∈ X est un minimum local de f sur X , alors ∇f ( x ) =0 et ∇ 2 f ( x ) est une matrice semi-definie positive. Preuve. La première condition a été demontrée au Lemme 3.4. La seconde condition est établie à partir du développement de Taylor de 2ième ordre: T 1 2 T 2 f ( x + θ d ) = f ( x ) + θ∇f ( x ) d + θ d ∇ f ( x ) d + α ( x, θ d ) θ d 2 α ( x,θ d ) =0. où lim θ →0 Puisque ∇f ( x ) =0, alors 1 2 f ( x + θ d ) − f ( x ) = θ 2 d T ∇ 2 f ( x ) d + α ( x, θ d ) θ d 2 1 2 T 2 2 = θ d ∇ f ( x ) d + 2α ( x,θ d ) d . 2 2 Preuve. La première condition a été demontrée au Lemme 3.4. La seconde condition est établie à partir du développement de Taylor de 2ième ordre: T 1 f ( x + θ d ) = f ( x ) + θ∇f ( x ) d + θ 2 d T ∇ 2 f ( x ) d + α ( x, θ d ) θ d 2 où lim α ( x, θ d ) =0. 2 θ →0 Puisque ∇f ( x ) =0, alors 1 2 T 2 2 f ( x + θ d ) − f ( x ) = θ d ∇ f ( x ) d + α ( x, θ d ) θ d 2 1 2 T 2 2 = θ d ∇ f ( x ) d + 2α ( x, θ d ) d . 2 Par contradiction, si ∇ 2 f ( x ) n'est pas semi-definie positive, alors il existe un d ∈ R n tel que d T ∇ 2 f ( x ) d < 0. Ainsi, pour θ > 0 suffisemment petit, x + θ d ∈ Bε ( x ) et α ( x, θ d ) → 0. Par conséquent d ∇ f ( x ) d + 2α ( x, θ d ) d T 2 2 <0 et alors f ( x + θ d ) − f ( x ) < 0 ou f ( x + θ d ) < f ( x ) , contredisant le fait que x est un minimum local de f . Contre-exemple: Les conditions que ∇f ( x ) =0 et que ∇ 2 f ( x ) est une matrice semi-definie positive ne sont pas suffisantes pour assurer que x est un minimum local. Au point x = y = 0 f ( x, y ) = x 3 + y 3 f ( x, y ) = 0 T T ∇f ( 0, 0 ) = [ 0, 0] ∇f ( x, y ) = 3 x ,3 y 6x 0 0 0 2 2 ∇ f ( x, y ) = ∇ f ( 0, 0 ) = semi-def . pos. 0 6y 0 0 Donc les conditions sont satisfaites au point x = y = 0. ε ε Mais pour un ε >0 suffisemment petit, − , − ∈ Bε ( 0, 0 ) et 2 2 3 3 2ε 3 ε ε ε ε < 0 = f ( 0, 0 ) , f − ,− = − +− = − 8 2 2 2 2 et [ 0,0] ne peut être un minimum local même si les conditions sont satisfaites. 2 2 Lemme 3.6: Soient X ⊂ R n un ensemble ouvert et f ∈ C 2 / X . Si ∇f ( x *) =0 et ∇ 2 f ( x *) est une matrice definie positive, alors il existe un ε >0 suffisemment petit tel que f ( x *) <f ( x ) pour tout x ∈ Bε ( x *) . Preuve. Se référant au Lemme 3.5, 1 2 T 2 f ( x * +θ d ) = f ( x *) + θ∇f ( x *) d + θ d ∇ f ( x *) d + α ( x*,θ d ) θ d 2 α ( x*, θ d ) =0. où lim θ →0 T Puisque ∇f ( x ) =0, alors 1 2 T 2 2 f ( x * +θ d ) − f ( x *) = θ d ∇ f ( x *) d + 2α ( x*, θ d ) d . 2 2 2 Il est facile de vérifier que d T ∇ 2 f ( x *) d ≥ β d où β > 0 est la plus petite valeur propre de ∇ 2 f ( x *) . En effet, sous l'hypothèse que f ∈ C 2 / X , alors ∇ 2 f ( x *) est symétrique. Par conséquent, il existe une matrice orthogonale P (i.e., P T = P −1 ) telle que ∇ 2 f ( x *) = P∆P T où ∆ est une matrice diagonale comportant les valeurs propres de ∇ 2 f ( x *) sur la diagonale et où les colonnes de P sont les vecteurs propres normalisés de ∇ 2 f ( x *) . Donc n d ∇ f ( x *) d = d P∆P d = y ∆y = ∑ λi yi2 T 2 T T T i =1 où les λi sont les valeurs propres de ∇ 2 f ( x *) . Ainsi, si β = Min {λi } , alors i =1,…. n T T n 2 i n 2 i T T 2 d P∆P d = ∑ λi y ≥ β ∑ y = β d PP d = β d . i =1 i =1 Preuve. Se référant au Lemme 3.5, T 1 f ( x * +θ d ) = f ( x *) + θ∇f ( x *) d + θ 2 d T ∇ 2 f ( x *) d + α ( x*,θ d ) θ d 2 où lim α ( x*,θ d ) =0. θ →0 Puisque ∇f ( x ) =0, alors 1 2 f ( x * +θ d ) − f ( x *) = θ 2 d T ∇ 2 f ( x *) d + 2α ( x*,θ d ) d . 2 2 Nous venons de vérifier que d T ∇ 2 f ( x *) d ≥ β d où β > 0 est la plus petite valeur propre de ∇ 2 f ( x *) . Donc 1 2 2 f ( x * +θ d ) − f ( x *) ≥ θ 2 β d + 2α ( x*,θ d ) d 2 1 2 2 ≥ θ d β + 2α ( x*, θ d ) . 2 Puisque β > 0, il s'ensuit que pour θ >0 suffisemment petit β + 2α ( x*,θ d ) > 0 et ( x*,θ d ) ∈ Bε ( x *) et ainsi f ( x * +θ d ) − f ( x *) > 0 ou f ( x * +θ d ) > f ( x *) . Corollaire 3.7: Soient X ⊂ R n un ensemble ouvert et f ∈ C 2 / X . Si ∇f ( x *) =0 et ∇ 2 f ( x *) est une matrice definie positive, alors x* est un minimum locale de f sur X . Convergence d’algorithme Un algorithme défini sur un sous-ensemble X ⊂ R n est un processus itératif qui, partant d'une solution initiale x 0 ∈ X , génère une suite de points { x k } dans X . Exemple: X = { x ∈ R 2 : x1 ≥ 0, x2 ≥ 0} x 0 = (100,100 ) . À un algorithme correspond une multi application (multi function ou "mapping") A: X → X associant à un point x k ∈ X un sous ensemble A ( x k ) ⊂ X . x1 Exemple: A ( x ) = 0, , 2 x2 0, 2 . Dénotons par X * ⊂ X l'ensemble des solutions recherchées. Exemple: X * = ( 0, 0 ) Définition: Un algorithme A est un algorithme de descente par rapport à une fonction z : X → R1 continue si i ) x ∉ X * et y ∈ A ( x ) ⇒ z ( y ) < z ( x ) ii ) x ∈ X * et y ∈ A ( x ) ⇒ z ( y ) ≤ z ( x ) . x Exemple: A ( x ) = 0, 1 , 2 z ( x ) = x1 + x2 x2 0, 2 Note: souvent la fonction z que nous utilisons est la fonction économique du problème que nous voulons résoudre à l'aide de l'algorithme. Exemple: Min z ( x ) = x1 + x2 x∈ X Définition: Un algorithme A est fermé au point x ∈ X si i ) { x k } ∈ X a la propriété que x k → x { } k →∞ ii ) y k ∈ A ( x k ) a la propriété que y k → y k →∞ alors y ∈ A ( x ) . Note: la notion de fermeture pour les multi applications correspond à celle de continuité pour les fonctions. x1 x2 Exemple: A ( x ) = 0, , 0, 2 2 1 1 3 3 5 5 k x = 2 − , 2 − , k = 1,… ; (1,1) , , , , ,… , ( 2, 2 ) k k 2 2 3 3 1 1 1 1 3 3 5 5 k y = 1 − , 1 − , k = 1,… ; , , , , , ,… , (1,1) 2k 2k 2 2 4 4 6 6 Théorème 3.8: (Théorème de convergence globale) Supposons que i) X ⊂ R n , un ensemble non vide fermé, et X * l'ensemble non vide des solutions; ii) A un algorithme défini sur X qui, partant d'un point x 0 ∈ X , k génère une suite de points x suit: { Considérons une suite de points x}kcomme ∈ X,k = 1,… telle que k si x ∈ X *, l'algorithme s'arrête k x → x. Le point xk +est un point d'accumulation { } sinon, 1 k soit x ∈ A ( x ) (point limite) de X remplacer k par (k + 1) ferle méprocessus; X est un ensemble si tout point d'accumulation répéter iii)(point la suite de points limite) de X appar nt à Xpar . l'algorithme est contenu dans { x k } tiegénéré un sous ensemble compact de X ; iv) il existe une fonction continue z par rapport à laquelle A est un algorithme de descente. Sous ces conditions, si la multi application A est fermée aux points n'appartenent à X *, alors a) soit que l'algorithme s'arrête en un nombre fini d'itérations à un point de X *, b) soit qu'il génère une suite infinie de points { x k } telle que le point limite de toute sous-suite convergente de { x k } appartient à X *. Considérons une suite de points x k ∈ X , k = 1,… telle que { x } → x. Le point x est un point d'accumulation k (point limite) de X X est un ensemble fermé si tout point d'accumulation (point limite) de X appartient à X . Dans R1 l'intervalle fermé [ a, b ] est un ensemble fermé. Dans R 2 l'ensemble [ ] a b Γ = {[ x, y ] ∈ R 2 : x ∈ [ a, b ] , y = 0} est aussi un ensemble fermé. X ⊂ R n est un ensemble ouvert si ∀x ∈ X , alors la boule Bε ( x ) = { z ∈ R n ; x − z < ε } ⊂ X . Dans R1 l'intervalle ouvert ( a, b ) est un ensemble ouvert puisque ∀x ∈ ( a, b ) , ∃ε > 0 tel que Bε ( x ) = { z : x − z < ε } ⊂ ( a, b ) Dans R 2 l'ensemble Γ = {[ x, y ] ∈ R 2 : x ∈ ( a, b ) , y = 0} ( ) a b n'est pas un ensemble ouvert puisque nous ne pouvons pas bouger pour modifier la valeur de y Théorème 3.8: (Théorème de convergence globale) { } Supposons que i) X ⊂ R n , un ensemble non vide fermé, et X * l'ensemble non vide des solutions; ii) A un algorithme défini sur X qui, partant d'un point x 0 ∈ X , génère une suite de points { x k } comme suit: si x k ∈ X *, l'algorithme s'arrête sinon, soit x k +1 ∈ A ( x k ) remplacer k par (k + 1) répéter le processus; iii) la suite de points { x k } généré par l'algorithme est contenu dans un sous ensemble compact de X ; iv) il existe une fonction continue z par rapport à laquelle A est un algorithme Un de descente. ensemble Γ est borné si ∀x ∈ Γ, alors Sous ces conditions, si la multi application A est fermée aux points x < ∞. n'appartenent à X *, alors a) soit queUn l'algorithme un nombre ensembles'arrête Ψ est en compa ct si fini d'itérations à un point de X *, Ψ est un ensemble fermé et borné. k b) soit qu'il génère une suite infinie de points { x } telle que Considérons une suite de points x k ∈ X , k = 1,… telle que x k → x. Le point x est un point d'accumulation (point limite) de X X est un ensemble fermé si tout point d'accumulation (point limite) de X appartient à X . le point limite de toute sous-suite convergente de { x k } appartient à X *. Théorème 3.8: (Théorème de convergence globale) { } Supposons que i) X ⊂ R n , un ensemble non vide fermé, et X * l'ensemble non vide des solutions; ii) A un algorithme défini sur X qui, partant d'un point x 0 ∈ X , génère une suite de points { x k } comme suit: si x k ∈ X *, l'algorithme s'arrête Un ensemble Γ est borné si ∀x ∈ Γ, alors sinon, soit x k +1 ∈ A ( x k ) x < ∞. Un ensemble Ψ est compact si remplacer k par (k + 1) Ψ est un ensemble fermé et borné. répéter le processus; iii) la suite de points { x k } généré par l'algorithme est contenu dans un sous ensemble compact de X ; iv) il existe une fonction continue z par rapport à laquelle A est un algorithme de descente. Sous ces conditions, si la multi application A est fermée aux points n'appartenant à X *, alors a) soit que l'algorithme s'arrête en un nombre fini d'itérations à un point de X *, b) soit qu'il génère une suite infinie de points { x k } telle que Considérons une suite de points x k ∈ X , k = 1,… telle que x k → x. Le point x est un point d'accumulation (point limite) de X X est un ensemble fermé si tout point d'accumulation (point limite) de X appartient à X . le point limite de toute sous-suite convergente de { x k } appartient à X *. Méthode de descente par coordonnées f est minimisée pour chaque coordonnée séquentiellement. Ainsi, les directions utilisées en séquence sont 1 0 0 0 2 1 0 1 n e = , e = , …, e = . 0 0 1 À chaque fois que n itérations sont complétées, la séquence est reprise. Méthode de Gauss-Seidel Étape 0 Soit f : R n → R1 à minimiser. ∂ le niveau de tolerance Choisir solution initiale x 0 Poser k = 0 Étape 1 a) y 0 = x k b) Pour j = 1 à n • σ j solution optimale de La valeur de f diminue à mesure que les courbes de niveau se rapproche du centre des ellipses y0 = xk Min1 f ( y j −1 + σ e j ) σ ∈R • y = y j −1 + σ j e j c) x k +1 = y n j Étape 2 Si x k +1 − x k < ∂, STOP et x* = x k +1 . Sinon k = k + 1, et reprendre Étape 1. x k +1 = y 2 y1 Méthode de Jacobi La valeur de f diminue à mesure que les courbes de niveau se rapproche du centre des ellipses Étape 0 Soit f : R n → R1 à minimiser. ∂ le niveau de tolerance Choisir solution initiale x 0 Poser k = 0 Étape 1′ xk x + σ 2e k a) Pour j = 1 à n • σ j solution optimale de Min1 f ( x k + σ e j ) σ ∈R k +1 b) x défini comme suit x kj +1 = x kj + σ j , j = 1,… , n Étape 2 Si x k +1 − x k < ∂, STOP et x* = x k +1 . Sinon k = k + 1, et reprendre Étape 1. 2 x k + σ 1e1 x k +1 3.2 Méthodes itératives de résolution Une méthode itérative pour optimiser une fonction f : R n → R1 génère une suite de points { x k } où x 0 est un point initial choisi dans R n et où x k +1 = x k + σ k d k i.e., x k +1 est généré à partir de x k en choisissant une direction d k ∈ R n et en prenant un pas σ k ∈ R1 dans cette direction pour s'éloigner de x k . Les méthodes diffèrent par leurs choix de direction d k et de pas σ k . Étape 0 Soit f : R n → R1 à minimiser. f ∈ C1 Choisir solution initiale x 0 Poser k = 0 Étape 1 Si ∇f ( x k ) = 0, alors l'algo. s'arrête avec x* = x k . La valeur de f diminue à mesure que les courbes de niveau se rapproche du centre des ellipses xk x k +1 xk +2 Étape 2 Déterminer σ k tel que ( ( )) = f x k − σ k ∇f x k {( ( ))}. Min f x k − σ ∇f x σ ≥0 ( ) k Poser x k +1 = x k − σ k ∇f x . Poser k = k + 1. Répéter l'étape 1. k Note: En pratique, le critère d'arrêt à l'étape 1 est souvent défini en utilisant un niveau de tolérance ∂ : ∇f ( x k ) <∂ 1 Lemme 3.9: (Convergence) Soit f ∈ C . Tout point limite x* d'une sous-suite convergente de la suite générée par la méthode du gradient est tel que ∇f ( x *) = 0. { } Preuve. Considérons la sous-suite x kj de { x k } telle que { } → x *. x kj Par conséquent, se référant aux suites kj k j +1 k j +τ k { x } = … , x , x ,… , x ,… { {x } = {…, x kj kj , ,x k j +1 } ,…} où x k j +1 =x k j +τ . { } Preuve. Considérons la sous-suite x kj de { x k } telle que { } → x *. x kj Par conséquent, se référant aux suites kj k j +1 k j +τ k { x } = … , x , x , … , x ,… { {x } = {…, x kj kj , ,x k j +1 } ,…} où x k j +1 =x k j +τ . Ainsi, se référant à la suite { x k } ( f x ) = f (x ) ≤…≤ f (x ) f ( x ) = Min { f ( x − σ∇f ( x ) )} . k j +1 k j +τ k j +1 k j +1 kj kj σ ≥0 Donc ( f x k j +1 ) ( k ( )) ≤ f x j − σ∇f x kj ∀σ ≥ 0. ( f x k j +1 ) ( ≤ f x ) ( puisque k f ( x ) = Min { f ( x k j +1 j +1 k j +1 σ ≥0 kj ≥ k j + 1) ( ))}. − σ∇f x kj Ainsi ( f x k j +1 ) ≤ f (x kj ( )) − σ∇f x kj ∀σ ≥ 0. Puisque f ∈ C 1 , f est continue sur R n et k j +1 lim f x = f ( x *) j →∞ ( ) ( ( )) kj kj = f ( x * −σ∇f ( x *) ) lim f x − σ∇f x j →∞ Donc f ( x *) ≤ f ( x * −σ∇f ( x *) ) ∀σ ≥ 0. ∀σ ≥ 0. ( 3.2 ) f ( x *) ≤ f ( x * −σ∇f ( x *) ) ( 3.2 ) Par conséquent ∇f ( x *) = 0 car autrement si ∇f ( x *) ≠ 0, alors −∇f ( x *) est une direction de descente et se référant au lemme ∀σ ≥ 0. 3.2 nous obtenons une contradiction à la relation (3.2). Le prochain résultat indique que la méthode de descente se déplace en zig-zag puisque les directions utilisées à deux itérations successives sont à angle droit. Lemme 3.10: ( Déplacement en zig-zag ) Si x k +1 = x k − σ k ∇f ( x k ) où σ k est tel que ( ) { ( )} f x k − σ k ∇f ( x k ) = Min f x k − σ∇f ( x k ) , alors ∇f ( x k +1 T ) σ ≥0 ∇f ( x k ) = 0. Preuve. Si ∇f ( x k ) = 0, alors la preuve est complétée. Si ∇f ( x k ) ≠ 0, considérons la fonction ϕ:{σ ∈ R1:σ ≥ 0} → R1 ϕ (σ ) = f ( x k − σ∇f ( x k ) ) . ϕ ( σ ) = f ( g (σ ) ) Par dérivation en chaîne, ϕ ′ (σ ) = −∇f ( x k ) T ( ) ∇f x k − σ∇f ( x k ) . avec g (σ ) = x k + σ s k Par dérivation en chaîne, ϕ ′ (σ ) = −∇f ( x k ) T ( ) ∇f x k − σ∇f ( x k ) . Puisque σ k est un minimum local de ϕ (σ ) , alors par le lemme 3.3 ϕ ′ (σ k ) = 0, et alors 0 = ϕ ′ (σ k ) = −∇f ( x k ) T ( ∇ f x − σ k ∇f ( x k k )) = −∇f ( x k ) T ∇f ( x k +1 ) . Notes: i ) L'ordre de convergence de la méthode du gradient est linéaire. ii ) Au début de son application, la méthode permet de faire diminuer la valeur de la fonction économique relativement rapidement, mais son efficacité à ce chapitre diminue au cours des itérations. iii ) La méthode du gradient est la méthode la plus rapide marginalement ("steepest descent method") : T ∇f ( x ) d = ∇f ( x ) d cosθ où θ est l'angle entre d et ∇f ( x ) . Ainsi, parmi les directions d de norme 1 ( T d = 1) , celle minimisant ∇f ( x ) d a un angle de 1800 car cos (1800 ) = −1. Ainsi, cette direction d correspond à ∇f ( x ) − . ∇f ( x ) Méthode de Newton Méthode de deuxième ordre supposant que f ∈ C 2 et utilisant l'information au niveau du Hessien de f . Extension directe de la méthode pour les fonctions à une seule variable. Méthode de Newton Processus itératif pour construire une suite de points { x k } en partant d'un point x 0 dans le voisinage d'une solution optimale x *. Pour obtenir x k +1 , considérons l'approximation quadratique de f 1 k k T k k T Qk ( x ) = f ( x ) + ∇f ( x ) ( x − x ) + ( x − x ) ∇ 2 f ( x k )( x − x k ) . 2 Par le Théorème de Taylor, il existe un z entre x et x k tel que T T 1 f ( x ) = f ( x k ) + ∇f ( x k ) ( x − x k ) + ( x − x k ) ∇ 2 f ( z ) ( x − x k ) 2 Méthode de Newton Processus itératif pour construire une suite de points { x k } en partant d'un voint x 0 dans le voisinage d'une solution optimale x *. Pour obtenir x k +1 , considérons l'approximation quadratique de f 1 k k T k k T Qk ( x ) = f ( x ) + ∇f ( x ) ( x − x ) + ( x − x ) ∇ 2 f ( x k )( x − x k ) . 2 ∇Q ( x ) = ∇f ( x ) + ∇ f ( x )( x − x ) x k +1 est le point où le gradient de l'approximation Qk ( x ) s'annule: 0=∇Qk ( x k +1 ) = ∇f ( x k ) + ∇ 2 f ( x k )( x k +1 − x k ) ⇔ k 2 k k k x k +1 −1 = x − ∇ f ( x ) ∇f ( x k ) k 2 k 2 k Note: le Hessien ∇ f x 0 non-singulière. ) doit ordre de convergence: au(moins égaêtre l à 2une si xmatrice est choisi suffisemment près de x* où ∇f ( x *) = 0. Supposons que la matrice A est symetrique T 1 1 1 k k A x − x k = x T Ax − x k T Ax + x k T Ax k ψ x−x = x−x 2 2 2 ( ) ( ) ( ) k a11 a12 x1 − x1 a12 a22 x − x k 2 2 T a T a k 1 T a11 a12 x1 k k k k 11 a12 x1 1 11 a12 x1 = ( x1 , x2 ) x − x1 , x 2 a a x + x1 , x2 a a k a a 2 12 22 2 12 22 2 2 12 22 x2 T a T a k 1 1 2 2 k k k k 11 a12 x1 1 11 a12 x1 = a11 x1 + a12 x1 x2 + a22 x 2 − x1 , x 2 x + x1 , x2 a a k a a 2 12 22 2 2 12 22 x2 2 1 = x1 − x1k , x2 − x2k 2 ( ) T ( ) ( ( ∇ψ x − x k ) k a11 x1 + a12 x2 a11 a12 x1 = − k a x + a x a a 12 22 12 1 22 2 x2 k a11 a12 x1 a11 a12 x1 = x − a a x k a a 12 22 2 12 22 2 k a11 a12 x1 − x1 = k a a x − x 12 22 2 2 ( ) ) ( ) Méthode de Newton Processus itératif pour construire une suite de points { x k } en partant d'un voint x 0 dans le voisinage d'une solution optimale x *. Pour obtenir x k +1 , considérons l'approximation quadratique de f 1 k k T k k T Qk ( x ) = f ( x ) + ∇f ( x ) ( x − x ) + ( x − x ) ∇ 2 f ( x k )( x − x k ) . 2 x k +1 est celui où le gradient de l'approximation Qk ( x ) s'annule: 0=∇Qk ( x k +1 ) = ∇f ( x k ) + ∇ 2 f ( x k )( x k +1 − x k ) ⇔ x k +1 −1 = x − ∇ f ( x ) ∇f ( x k ) k 2 k ordre de convergence: au moins égal à 2 si x 0 est choisi suffisemment près de x* où ∇f ( x *) = 0. Méthode de Newton avec pas optimal Pour contrer la difficulté de choisir x 0 dans le voisinage de x* où ∇f ( x *) = 0. x k +1 −1 = x − ∇ 2 f ( x k ) ∇f ( x k ) k Méthode itérative où la direction d k au point x k est la suivante: −1 d = − ∇ f ( x ) ∇f ( x k ) . 2 k k d k est bien une direction de descente si le Hessien ∇ 2 f ( x k ) est une matrice positive définie et si ∇f ( x k ) ≠ 0: ∇f ( x k ) T d = −∇f ( x k k ) T −1 ∇ f ( x ) ∇f ( x k ) < 0. 2 k Méthode de Newton avec pas optimal Pour contrer la difficulté de choisir x 0 dans le voisinage de x* où ∇f ( x *) = 0. Méthode itérative où la direction d k au point x k est la suivante: −1 d = − ∇ f ( x ) ∇f ( x k ) . k 2 k Pas optimal σ k défini comme suit: f (x k +1 ( ) −1 k = f x − ∇ f x ∇ f x σ ) ( ) ( ) = k k 2 k {( −1 )} Min f x − σ ∇ f ( x ) ∇f ( x k ) . σ ≥0 k 2 ordre de convergence: au moins égal à 2 k Méthode de Newton modifiée avec pas optimal Pour contrer la difficulté de choisir x 0 dans le voisinage de x* où ∇f ( x *) = 0. Si le Hessien ∇ 2 f ( x k ) n'est pas une matrice positive définie, considérons la direction d k suivante au point x k : −1 d = − ε k I + ∇ f ( x ) ∇f ( x k ) où I est la matrice identité et où ε k ≥ 0 est la plus petite valeur k 2 k assurant que la matrice ε k I + ∇ 2 f ( x k ) a toute ses valeurs propres positives (i.e., est définie positive). ordre de convergence: au moins égal à 2 Méthode Quasi-Newton Plusieurs variantes existent. Voici celle de Fletcher-Powell. Éviter de calculer le Hessien ∇ 2 f ( x k ) et son inverse à chaque itération. Nous utilisons plutôt une matrice H k définie positive qui est modifiée d'une itération à l'autre. Méthode Quasi-Newton Étape 0. Soit f : R n → R1 et f ∈ C 2 . Soit H 0 =I . Choisissons une solution initiale x 0 ∈ R n . Si ∇f ( x 0 ) = 0, alors l'algo. s'arrête et alors x* = x 0 . Sinon, k = 0. Étape 1. Dénotons s k = − H k ∇f ( x k ) . Déterminons le pas optimal σ k dans la direction s k : { } k k σ f ( x k + σ k s k ) = Min f x + s ( ). σ ≥0 Étape 2. Posons x k +1 = x k + σ k s k . Si ∇f ( x k +1 ) = 0, alors l'algo. s'arrête et alors x* = x k +1 . x k +1 = x k + σ k s k . Étape 2. Posons Si ∇f ( x k +1 ) = 0, alors l'algo. s'arrête et alors x* = x k +1 . Étape 3. Posons y k = ∇f ( x k +1 ) − ∇f ( x k ) H k +1 =H k + Ak + B k où 2 k −H y ( H y k et kT σ ss A = kT k σks y k k k B = k kT k k k k ) T . y H y Remplacer k par k + 1 et reprendre l'étape 1. Lemme 3.11. Si H k est définie positive et ∇f ( x k ) ≠ 0 , alors s k est ( une direction de descente à x i.e., ∇f ( x k k ) T ) sk < 0 . Preuve. Par définition s k = − H k ∇f ( x k ) . Donc ∇f ( x k ) T s = −∇f ( x k k ) T H k ∇f ( x k ) < 0 sous les hypothèses que H k est définie positive et ∇f ( x k ) ≠ 0. Le prochain résultat indique que la direction s k est perpendiculaire au ∇f ( x k +1 ) . kT Lemme 3.12. Si H est définie positive, alors s ∇f ( x k +1 ) = 0. k Preuve. Si s k = 0, la preuve est complétée. Si s k ≠ 0, définissons la fonction ϕ (σ ) pour σ ≥ 0 : ϕ (σ ) = f ( x k + σ s k ) . kT Lemme 3.12. Si H est définie positive, alors s ∇f ( x k +1 ) = 0. k { } k k f ( x k + σ k s k ) = Min f x + σ s ( ) σ ≥0 Preuve. Si s =0, la preuve est complétée. Si s k ≠ 0, considérons la fonction ϕ:{σ ∈ R1:σ ≥ 0} → R1 : k ϕ (σ ) = f ( x k + σ s k ) . ϕ (σ ) = f ( g (σ ) ) avec g (σ ) = x k + σ s k Puisque ϕ : R1 → R1 , par dérivation en chaîne kT ϕ ′ ( σ ) = s ∇f ( x k + σ s k ) . Puisque σ k est un minimum local de ϕ (σ ) , alors par le lemme 3.3, ϕ ′ (σ k ) = 0 et alors kT 0=ϕ ′ (σ k ) = s ∇f ( x + σ k s k k )=s kT ∇f ( x k +1 ) . Lemme 3.13. H k est définie positive , k = 0,1, 2,…. k B =A = k Preuve. Preuve par induction sur k . Pour k =0, H 0 =I est définie positive. Supposons que H k est définie positive. Alors x T H k +1 x = x T H k x + x T Ak x + x T B k x k k k k T T 2 T k kT σk x s s x x H y (H y ) x k T = x H x+ − kT k kT σks y y H k yk kT = kT kT xT H k x y H k y k − xT H k y k y H x kT 2 σ s x) ( + . kT T k kT kT k x H x y H y −(x H y T k k k T k k ) 2 ≥ 0. k T σ y k k sHk k y k σ k s yk y H y Mais puisque H k est définie positive, il découle de l'inégalité de Schwartz que k kkT k − H σy s( Hs y 2k k k ) T T T x H k +1 x= kT k k T k k k kT kT x H x y H y −x H y y H x kT 2 σ s x) ( . + kT k kT σ k s yk y H y Mais puisque H k est définie positive, il découle de l'inégalité de Schwartz que kT k k x H x y H y −(x H y T k k k T k k ) 2 ≥ 0. Il s'ensuit que 2 σ s x) ( x≥ . kT T x H Or k +1 k kT σks y kT yk = ∇f ( xk +1 ) −∇f ( xk ) k kT σ k s y = σ k s ∇f ( x k +1 ) − ∇f ( x k ) k kT puisque s ∇f ( x k +1 ) =0 k = −σ k s ∇f ( x ) par le lemme 3.12 puisque par le lemme 3.11 s k est une >0 σ > direction de descente et que 0 k kT Jusqu'ici nous avons établi que σ s x) ( x≥ kT T x H k +1 2 k kT σ k s yk T et que σ k s k y k > 0. kT Donc si s x ≠ 0, substituons dans l'expression originale T T x H k +1 x= k kT k T k k y H y T = k kT k k k kT x H x y H y − x H y y Hkx kT k σ k s yk y H k yk k k kT x H x y H y − x H y y Hkx kT k kT k T σ s x) ( + kT 2 kT Par contre, si s x = 0, substituons dans l'expression originale kT T x H k +1 x= kT xT H k x y H k y k − xT H k y k y H k x kT k y H y T = k kT k k T σ s x) ( + kT 2 k kT σ k s yk k k k kT x H x y H y − x H y y Hkx kT y H k yk Il est possible de verifier que l'expression T k kT k k T k k 2 x H x y H y −(x H y ) est positive. Alors la preuve est complétée puisque T k kT k k T k k kT k x H x y H y − x H y y H x T k +1 x H x= > 0. kT k k y H y Notes. i ) Il est possible de démontrer que si f : R n → R1 est quadratique et possède un minimum x*, alors la méthode détermine x * en n itérations. ii ) Pour des fonctions générales, il est possible de démontrer que cette méthode a un ordre de convergence super linéaire. Méthodes de gradients conjugués Type de méthodes présenté dans le cadre de la programmation quadratique : 1 T f ( x ) = x Qx − bT x 2 où Q est une matrice symétrique n × n définie positive. Définition: Étant donné une matrice symétrique Q, deux vecteurs d 1 et d 2 sont Q-orthogonaux ou conjugués par rapport à Q si 1T d Qd 2 = 0. 1 2 1T 2 1T Note. d et d sont orthogonaux si d d = d Id 2 = 0 Le vecteurs unitaires e1 ,… , e n qui sont orthogonaux deux à deux, sont I -orthogonaux deux à deux. Théorème 3.14. ( Théorème des directions conjugées ) Supposons que la matrice Q est symétrique définie positive. Soit {d k } n −1 k =0 un ensemble de n vecteurs non-nuls qui sont Q-orthogonaux deux à deux. Étant donné un point x 0 ∈ R n quelconque, la suite { x k } générée comme suit x k +1 = x k + α k d k k = 0,1,… , n − 1 1 T x Qx − b T x 2 ∇f ( x ) = Qx − b f ( x) = ∇2 f ( x ) = Q où αk = − ∇f ( x kT d ∇2 T ) f (x )d k d k k k =− T k Qx − b d ( ) k kT d Qd k , 1 T converge vers l'unique minimum x * de f ( x ) = x Qx − b T x 2 après n itérations ( i.e., x* = x n ) . Mais comment définir un tel ensemble {d k } n −1 k =0 de n vecteurs Q-orthogonaux deux à deux? Il est possible de démontrer que la méthode suivante génère un tel ensemble tout en résolvant le problème 1 T Min x Qx − bT x . x∈R n 2 1 T Méthode du gradient conjugé pour f ( x ) = x Qx − bT x : 2 1 T Étape 0. Soit f ( x ) = x Qx − bT x. Choisir une solution 2 initiale x 0 ∈ R n . Définir d 0 = −∇f ( x 0 ) = − ( Qx 0 − b ) . Poser k = 0. 1 T x Qx − b T x 2 ∇f ( x ) = Qx − b f ( x) = ∇2 f ( x ) = Q Étape 1. • x k +1 = x k + α k d k où αk = − ∇f ( x kT d ∇ 2 T ) f (x )d k d k k k =− T k Qx − b d ( ) k kT d Qd k Étape 1. • x k +1 = x k + α k d k où αk = − ∇f ( x kT d ∇ 2 T ) f (x )d k d k k T k Qx − b d ( ) k k =− kT d Qd k • d k +1 = −∇f ( x k +1 ) + β k d k où βk = ∇f ( x k +1 T kT ) ∇ f (x )d 2 k d ∇2 f ( xk ) d k k = ∇f ( x k +1 T ) kT Qd k d Qd k . 1 T x Qx − b T x 2 ∇f ( x ) = Qx − b f ( x) = Étape 2. Si (k + 1) = n, alors x* = x n . ∇ f ( x) = Q Si (k + 1) < n, alors remplacer k par k + 1 et reprendre l'étape 1. 2 Méthode du gradient conjugé pour f ∈ C 2 quelconque : 2 Étape 0. Soit f ∈ C . Choisir une solution initiale x 0 ∈ R n . Poser k = 0. Étape 1. a) Poser y 0 = x k et d 0 = −∇f ( x k ) b) Pour j = 0 à n − 1 • y j +1 = y j + α j d j où αj = − ∇f ( y jT d ∇ 2 T ) f ( y )d j dj j j Étape 1. a) Poser y 0 = x k et d 0 = −∇f ( x k ) b) Pour j = 0 à n − 1 • y j +1 = y j + α j d j où αj = − ∇f ( y jT d ∇2 T ) f ( y )d j dj j j • d j +1 = −∇f ( y j +1 ) + β j d j où βj = ∇f ( y j +1 T jT ) ∇2 f ( y j ) d j d ∇ f ( y )d 2 j j . c) x k +1 = y n Étape 2. Si ∇f ( x k +1 ) = 0, alors l'algo. s'arrête avec x* = x k +1 . Sinon remplacer k par k + 1 et reprendre l'étape 1. Optimisation unidimentionnelle approximative (Inaccurate line search): Dans plusieurs méthodes itératives, pour identifier x k +1 il faut résoudre le problème unidimentionnelle (line search) Min ϕ (σ ) = Min f ( x k + σ d k ) = f ( x k + σ k d k ) = ϕ (σ k ) σ >0 σ >0 afin de déterminer le pas optimal. Il peut être avantageux d'utiliser une approximation de σ k en completant une optimisation approximative comme suit. Rappel: approximation linéaire de ϕ à 0 est obtenue à partir du développement de Taylor d'ordre 1: ϕ (σ ) ≈ ϕ (σ ) = ϕ ( 0 ) + ϕ ′ ( 0 ) σ . Rappel: approximation linéaire de ϕ à 0 est obtenue à partir du développement de Taylor d'ordre 1: ϕ ( σ ) ≈ ϕ (σ ) = ϕ ( 0 ) + ϕ ′ ( 0 ) σ . ϕ (σ ) = ϕ ( 0 ) + ϕ ′ ( 0 ) σ ϕ (0) = ϕ (0) ϕ ′ (σ ) = ϕ ′ ( 0 ) Pour déterminer une approximation acceptable du pas optimal σ k , nous considérons l'approximation suivante de ϕ : ϕˆ (σ ) = ϕ ( 0 ) + εϕ ′ ( 0 ) σ ϕˆ ( 0 ) = ϕ ( 0 ) ; ϕˆ ′ (σ ) = εϕ ′ ( 0 ) pour une valeur fixée de ε entre 0 et 1 (ε = 0.2, par exemple). Une valeur σ est acceptable ϕˆ (σ ) = ϕ ( 0 ) + εϕ ′ ( 0 ) σ tout en n'étant pas trop grande, ϕ (σ ) si ϕ (σ ) n'excède pas l'approximation ϕˆ (σ ) ; i.e., ϕ (σ ) ≤ ϕˆ (σ ) = ϕ ( 0 ) + εϕ ′ ( 0 ) σ ϕ (σ ) = ϕ ( 0 ) + ϕ ′ ( 0 ) σ Une valeur σ est acceptable tout en n'étant pas trop grande, si ϕ (σ ) n'excède pas l'approximation ϕˆ (σ ) ; i.e., ϕ (σ ) ≤ ϕˆ (σ ) = ϕ ( 0 ) + εϕ ′ ( 0 ) σ ( 3.3) Pour s'assurer que la valeur de σ choisie n'est pas trop petite σ doit satisfaire un des tests additionnels suivants: Règle d'Armijo: la valeur σ est telle que ϕ (ησ ) > ϕˆ (ησ ) = ϕ ( 0 ) + εϕ ′ ( 0 )ησ où η >1 (η =2, par exemple) (3.4) ϕ (σ ) n'excède pas l'approximation ϕˆ (σ ) ; i.e., ϕ (σ ) ≤ ϕˆ (σ ) = ϕ ( 0 ) + εϕ ′ ( 0 ) σ ( 3.3) Règle d'Armijo: la valeur σ est telle que ϕ (ησ ) > ϕˆ (ησ ) = ϕ ( 0 ) + εϕ ′ ( 0 )ησ (3.4) où η >1 (η =2, par exemple) Ainsi, si σ est multiplié par un facteur égal a η , alors la relation (3.3) n'est plus vérifiée. ϕˆ (σ ) = ϕ ( 0 ) + εϕ ′ ( 0 ) σ ϕ (σ ) ϕ ( 0) + ϕ ′ ( 0)σ valeurs acceptables de σ ϕ (σ ) ≤ ϕˆ (σ ) = ϕ ( 0 ) + εϕ ′ ( 0 ) σ ( 3.3) ϕ (ησ ) > ϕˆ (ησ ) = ϕ ( 0 ) + εϕ ′ ( 0 )ησ (3.4) Implémentation de la règle d'Armijo: • Choisir une certaine valeur de σ • Si (3.3) est satisfaite, multiplier à répétition par η jusqu'à ce que (3.3) ne soit plus satisfaite. Alors la valeur précédente parmi la suite des valeurs obtenues est celle du pas retenu. ϕˆ (σ ) = ϕ ( 0 ) + εϕ ′ ( 0 ) σ ϕ (σ ) Le pas 2σ satisfait la condition d'Armijo σ • 2σ • 4σ • ϕ ( 0) + ϕ ′ ( 0)σ valeurs acceptables de σ ϕ (σ ) ≤ ϕˆ (σ ) = ϕ ( 0 ) + εϕ ′ ( 0 ) σ ( 3.3) ϕ (ησ ) > ϕˆ (ησ ) = ϕ ( 0 ) + εϕ ′ ( 0 )ησ (3.4) • Choisir une certaine valeur de σ • Si (3.3) n'est pas satisfaite, diviser à répétition par η jusqu'à ce que (3.3) soit vérifiée. Cette dernière valeur satisfaisant (3.3) est celle du pas retenu puisque la multiplier par η entraîne que (3.3) n'est plus vérifiée. ϕˆ (σ ) = ϕ ( 0 ) + εϕ ′ ( 0 ) σ 1 Le pas σ satisfait la condition d'Armijo 2 ϕ (σ ) 1 σ 2• σ • ϕ ( 0) + ϕ ′ ( 0)σ valeurs acceptables de σ Une valeur σ est acceptable tout en n'étant pas trop grande, si ϕ (σ ) n'excède pas l'approximation ϕˆ (σ ) ; i.e., ϕ (σ ) ≤ ϕˆ (σ ) = ϕ ( 0 ) + εϕ ′ ( 0 ) σ ( 3.3) Pour s'assurer que la valeur de σ choisie n'est pas trop petite σ doit satisfaire un des tests additionnels suivants: Règle de Goldstein: la valeur σ est telle que ϕ (σ ) > ϕ ( 0 ) + (1 − ε ) ϕ ′ ( 0 ) 1 où 0 < ε < 2 (3.5) ϕ (σ ) n'excède pas l'approximation ϕˆ (σ ) ; i.e., ϕ (σ ) ≤ ϕˆ (σ ) = ϕ ( 0 ) + εϕ ′ ( 0 ) σ ( 3.3) Règle de Goldstein: la valeur σ est telle que ϕ (σ ) > ϕ ( 0 ) + (1 − ε ) ϕ ′ ( 0 ) σ 1 où 0 < ε < 2 (3.5) ϕˆ (σ ) = ϕ ( 0 ) + εϕ ′ ( 0 ) σ ϕ ( 0 ) + (1 − ε ) ϕ ′ ( 0 ) ϕ ( 0) + ϕ ′ ( 0)σ ϕ (σ ) valeurs acceptables de σ Une valeur σ est acceptable tout en n'étant pas trop grande, si ϕ (σ ) n'excède pas l'approximation ϕˆ (σ ) ; i.e., ϕ (σ ) ≤ ϕˆ (σ ) = ϕ ( 0 ) + εϕ ′ ( 0 ) σ ( 3.3) Pour s'assurer que la valeur de σ choisie n'est pas trop petite σ doit satisfaire un des tests additionnels suivants: Règle de Wolfe: la valeur σ est telle que ϕ ′ (σ ) ≥ (1 − ε ) ϕ ′ ( 0 ) où 0 < ε < 1 2 (3.6) ϕ (σ ) n'excède pas l'approximation ϕˆ (σ ) ; i.e., ϕ (σ ) ≤ ϕˆ (σ ) = ϕ ( 0 ) + εϕ ′ ( 0 ) σ ( 3.3) Règle de Wolfe: la valeur σ est telle que ϕ ′ (σ ) ≥ (1 − ε ) ϕ ′ ( 0 ) où 0 < ε < 1 2 (3.6) ϕˆ (σ ) = ϕ ( 0 ) + εϕ ′ ( 0 ) σ ϕ (σ ) (1 − ε ) ϕ ′ ( 0 ) ϕ ( 0) + ϕ ′ ( 0)σ valeurs acceptables de σ • L’application de ces règles pour déterminer le pas préserve quand même la convergence des méthodes.