PARTIE I MÉTHODES STANDARDS EN OPTIMISATION DÉPARTEMENT GÉNIE MATHÉMATIQUE ET MODÉLISATION 4ÈME ANNÉE, 2012-2013. Aude RONDEPIERRE & Pierre WEISS



Documents pareils
Optimisation non linéaire Irène Charon, Olivier Hudry École nationale supérieure des télécommunications

Fonctions de plusieurs variables

3 Approximation de solutions d équations

Programmation linéaire

Théorème du point fixe - Théorème de l inversion locale

Continuité en un point

Résolution d équations non linéaires

Programmation linéaire et Optimisation. Didier Smets

Chapitre 2 Le problème de l unicité des solutions

Souad EL Bernoussi. Groupe d Analyse Numérique et Optimisation Rabat http ://

LES MÉTHODES DE POINT INTÉRIEUR 1

Fonctions de plusieurs variables, intégrales multiples, et intégrales dépendant d un paramètre

Calcul différentiel sur R n Première partie

Développement décimal d un réel

Image d un intervalle par une fonction continue

Exercices - Fonctions de plusieurs variables : corrigé. Pour commencer

Chp. 4. Minimisation d une fonction d une variable

Limites finies en un point

Calcul différentiel. Chapitre Différentiabilité

FONCTIONS DE PLUSIEURS VARIABLES (Outils Mathématiques 4)

Optimisation des fonctions de plusieurs variables

Le produit semi-direct

La programmation linéaire : une introduction. Qu est-ce qu un programme linéaire? Terminologie. Écriture mathématique

La Licence Mathématiques et Economie-MASS Université de Sciences Sociales de Toulouse 1

Première partie. Préliminaires : noyaux itérés. MPSI B 6 juin 2015

I. Polynômes de Tchebychev

Équations non linéaires

Intégration et probabilités TD1 Espaces mesurés Corrigé

RO04/TI07 - Optimisation non-linéaire

Chapitre 3. Mesures stationnaires. et théorèmes de convergence

Optimisation Discrète

Correction de l examen de la première session

Groupe symétrique. Chapitre II. 1 Définitions et généralités

La fonction exponentielle

Continuité d une fonction de plusieurs variables

Programmation linéaire

De même, le périmètre P d un cercle de rayon 1 vaut P = 2π (par définition de π). Mais, on peut démontrer (difficilement!) que

Exercices - Polynômes : corrigé. Opérations sur les polynômes

Université Paris-Dauphine DUMI2E 1ère année, Applications

Introduction à l étude des Corps Finis

Chapitre 7. Statistique des échantillons gaussiens. 7.1 Projection de vecteurs gaussiens

Approximations variationelles des EDP Notes du Cours de M2

Cours d Analyse. Fonctions de plusieurs variables

Suites numériques 3. 1 Convergence et limite d une suite

Résolution de systèmes linéaires par des méthodes directes

Continuité et dérivabilité d une fonction

Notes du cours MTH1101 Calcul I Partie II: fonctions de plusieurs variables

Simulation de variables aléatoires

Sujet proposé par Yves M. LEROY. Cet examen se compose d un exercice et de deux problèmes. Ces trois parties sont indépendantes.

Les indices à surplus constant

Chapitre 2. Eléments pour comprendre un énoncé

Rappels sur les suites - Algorithme

Contexte. Pour cela, elles doivent être très compliquées, c est-à-dire elles doivent être très différentes des fonctions simples,


Texte Agrégation limitée par diffusion interne

Capes Première épreuve

Formes quadratiques. 1 Formes quadratiques et formes polaires associées. Imen BHOURI. 1.1 Définitions

Fonctions de plusieurs variables : dérivés partielles, diérentielle. Fonctions composées. Fonctions de classe C 1. Exemples

Intégration et probabilités TD1 Espaces mesurés

Seconde Généralités sur les fonctions Exercices. Notion de fonction.

Moments des variables aléatoires réelles

Fonctions de deux variables. Mai 2011

3. Conditionnement P (B)

Optimisation et programmation mathématique. Professeur Michel de Mathelin. Cours intégré : 20 h

EXERCICE 4 (7 points ) (Commun à tous les candidats)

I. Ensemble de définition d'une fonction

Dualité dans les espaces de Lebesgue et mesures de Radon finies

I. Introduction. 1. Objectifs. 2. Les options. a. Présentation du problème.

Dérivées d ordres supérieurs. Application à l étude d extrema.

Différentiabilité ; Fonctions de plusieurs variables réelles

Le théorème de Perron-Frobenius, les chaines de Markov et un célèbre moteur de recherche

Lagrange, où λ 1 est pour la contrainte sur µ p ).

Programmes des classes préparatoires aux Grandes Ecoles

IV- Equations, inéquations dans R, Systèmes d équations

M2 IAD UE MODE Notes de cours (3)

DOCM Solutions officielles = n 2 10.

Cours Fonctions de deux variables

Exo7. Matrice d une application linéaire. Corrections d Arnaud Bodin.

n N = u N u N+1 1 u pour u 1. f ( uv 1) v N+1 v N v t

La mesure de Lebesgue sur la droite réelle

Sujet 4: Programmation stochastique propriétés de fonction de recours

* très facile ** facile *** difficulté moyenne **** difficile ***** très difficile I : Incontournable T : pour travailler et mémoriser le cours

Sur certaines séries entières particulières

t 100. = 8 ; le pourcentage de réduction est : 8 % 1 t Le pourcentage d'évolution (appelé aussi taux d'évolution) est le nombre :

Bac Blanc Terminale ES - Février 2011 Épreuve de Mathématiques (durée 3 heures)

NOTATIONS PRÉLIMINAIRES

LA PHYSIQUE DES MATERIAUX. Chapitre 1 LES RESEAUX DIRECT ET RECIPROQUE

Baccalauréat S Antilles-Guyane 11 septembre 2014 Corrigé

Espérance conditionnelle

Table des matières. I Mise à niveau 11. Préface

Calcul fonctionnel holomorphe dans les algèbres de Banach

CHOIX OPTIMAL DU CONSOMMATEUR. A - Propriétés et détermination du choix optimal

Chaînes de Markov au lycée

Fonctions de plusieurs variables. Sébastien Tordeux

Théorie de la Mesure et Intégration

La demande Du consommateur. Contrainte budgétaire Préférences Choix optimal

Exercice autour de densité, fonction de répatition, espérance et variance de variables quelconques.

I - PUISSANCE D UN POINT PAR RAPPORT A UN CERCLE CERCLES ORTHOGONAUX POLES ET POLAIRES

Chapitre VI - Méthodes de factorisation

Chapitre VI Fonctions de plusieurs variables

Transcription:

DÉPARTEMENT GÉNIE MATHÉMATIQUE ET MODÉLISATION 4ÈME ANNÉE, 2012-2013. PARTIE I MÉTHODES STANDARDS EN OPTIMISATION NON LINÉAIRE DÉTERMINISTE Aude RONDEPIERRE & Pierre WEISS

Table des matières 1 Introduction 5 1.1 Qu est-ce qu un problème d optimisation?..................... 5 1.2 Algorithmique de l optimisation.......................... 7 1.2.1 Oracle, calcul des dérivées......................... 7 1.2.2 Convergence et vitesse de convergence.................. 7 1.2.3 Critères d arrêt............................... 9 2 Conditions d optimalité 11 2.1 Cas différentiable général.............................. 11 2.1.1 Cône des directions admissibles...................... 11 2.1.2 Condition nécessaire d optimalité géométrique.............. 13 2.2 Cas différentiable sans contraintes......................... 15 2.3 Cas différentiable avec contraintes fonctionnelles................. 15 2.3.1 Problèmes avec contraintes d égalité.................... 17 2.3.2 Problèmes avec contraintes d inégalités.................. 21 2.3.3 Problèmes avec contraintes d égalité et d inégalité............ 24 3 Méthodes de descente en optimisation différentiable sans contrainte 27 3.1 Recherches linéaires : stratégies de recherche d un pas de descente........ 28 3.1.1 Recherche linéaire d Armijo ou comment éviter les pas trop grands... 29 3.1.2 Conditions de Wolfe ou comment éviter les pas trop petits........ 31 3.1.3 Deux algorithmes pour la recherche linéaire de Wolfe........... 34 3.2 Algorithmes de type gradient............................ 36 3.2.1 Résultat de convergence.......................... 37 3.2.2 Comparaison numérique -Pas fixe/pas optimal vs Pas de Wolfe...... 39 3.2.3 Méthode du gradient conjugué....................... 41 3.3 Méthodes de type Newton............................. 45 3.3.1 Méthode de Newton avec recherche linéaire................ 46 3.3.2 Méthodes de quasi-newton......................... 49 3.4 Algorithmes pour la régression non-linéaire.................... 53 3.4.1 Problèmes de moindres carrés linéaires.................. 53 3.4.2 Algorithme de Gauss-Newton....................... 54 3.4.3 Algorithme de Levenberg-Marquardt................... 55 3

4 TABLE DES MATIÈRES 4 Méthodes et algorithmes pour l optimisation différentiable sous contrainte 57 4.1 Introduction à la dualité lagrangienne....................... 58 4.1.1 Problème primal - Problème dual..................... 58 4.1.2 Liens entre problème primal et problème dual............... 59 4.1.3 Cas convexe - Multiplicateurs de Kuhn-Tucker.............. 61 4.2 Méthodes directes.................................. 62 4.2.1 Méthode du gradient projeté........................ 62 4.2.2 Algorithmes newtoniens - Méthode SQP................. 64 4.3 Méthodes de pénalisation.............................. 67 4.3.1 Principe général.............................. 67 4.3.2 Le Lagrangien augmenté.......................... 68

Chapitre 1 Introduction Optimiser : rendre optimal, donner à quelque chose les meilleures conditions d utilisation, de fonctionnement ou de rendement au regard de certaines circonstances. (Déf. du LAROUSSE). 1.1 Qu est-ce qu un problème d optimisation? Soit X est un sous-ensemble non vide de R n. Considérons un problème d optimisation de la forme : min f(x) s.c. x X, (1.1) La fonction f : R n R est appelée fonction coût, objectif ou critère. L ensemble X est appelé ensemble ou domaine des contraintes. Tout point x R n vérifiant : x X, est appelé point admissible du problème (2.1). Chercher une solution du problème avec contraintes (2.1) revient à chercher un point de minimum local de f dans l ensemble des points admissibles, au sens de la définition suivante : Définition 1.1 x 0 R n est un point de minimum local de f sur X R n si et seulement si x 0 X et V x0 un voisinage de x 0 tq : x V x0 X, f(x) f(x 0 ) (1.2) x 0 R n est un point de minimum global de f sur X si et seulement si x 0 X et x X, f(x) f(x 0 ). (1.3) Les notions de maximum local et global sont définies de façon tout à fait similaire. En fait, on peut facilement démontrer que les problèmes (avec ou sans contraintes) min f(x) et max f(x) x x sont équivalents dans le sens où ils ont même ensemble de solutions et : min x f(x) = max x f(x) ou encore max x f(x) = min f(x). x Ainsi la recherche d un maximum pouvant se ramener à la recherche d un minimum, nous porterons une attention plus particulière à la recherche du minimum. Les problèmes d optimisation peuvent être classés en plusieurs grandes familles : 5

6 1.1. Qu est-ce qu un problème d optimisation? Optimisation numérique : X R n. Optimisation discrète (ou combinatoire) : X fini ou dénombrable. Commande optimale : X est un ensemble de fonctions. Optimisation stochastique : données aléatoires (à ne pas confondre avec les méthodes stochastiques d optimisation). Optimisation multicritère : plusieurs fonctions objectifs. Ce cours est un cours d optimisation numérique : une étape importante en pratique consiste à identifier le type de problème auquel on a affaire afin de savoir quelle famille d algorithme peut être pertinente. Voici un arbre des différents types d algorithmes les plus utilisés de nos jours : PROGRAMMATION LINÉAIRE Méthode du simplexe, points intérieurs. OPTIMISATION NON LINÉAIRE LOCALE AVEC DÉRIVÉES. Sans contrainte Pb de forme générique : Méthodes de type gradient Méthodes de Newton, quasi-newton Méthodes de sous-gradients (faisceaux) Pb de type moindres carrés : Levenberg-Marquardt Avec contraintes Résolution des conditions de KKT SQP (Newton), Wilson Méthodes duales Points intérieurs Méthodes de pénalisation Méthodes lagrangiennes (Uzawa, Lagrangien augmenté) SANS DÉRIVÉE Différentiation automatique Variantes différences finies Optimisation sans dérivées (DFO, NEWUOA, MADS par exemple). OPTIMISATION NON LINÉAIRE GLOBALE Méthodes déterministes Méta-Heuristiques : simplexe non linéaire (Nelder-Mead) Surfaces de réponse (réseaux de neurones et krigeage) Méthodes stochastiques à 2 phases méthodes évolutionnaires, recuit-simulé, recherche tabou

Chapitre 1. Introduction 7 1.2 Algorithmique de l optimisation 1.2.1 Oracle, calcul des dérivées Pour obtenir le prochain itéré, l algorithme aura besoin d informations sur la fonction objectif f : la valeur numérique de f en un point donné x, et souvent également le gradient f(x). Ces informations sont fournies en boite noire, i.e. par un sous-programme (un simulateur par exemple) indépendant de l algorithme d optimisation choisi. Le calcul des dérivées est une opération mécanique et fastidieuse qui peut parfois être automatisée. Il y a plusieurs techniques : La différentiation symbolique couteuse et pas toujours possible (par exemple si la fonction est définie en boite noire, ou par un processus itératif). La différentiation par différences finies qui calcule les dérivées d une fonction f en l évaluant en des points voisins, x et x+td par exemple, puis approche la dérivée par le quotient : f(x + td) f(x). t C est une méthode imprécise et peu adaptée au calcul du gradient (car demande un temps proportionnel au nombre de variables). Elle est surtout utilisée lorsque l on souhaite voir rapidement ce qu un algorithme donnerait avec un calcul de gradient ou lorsque les fonctions à traiter sont trop compliquées pour pouvoir en calculer le gradient. La différentiation automatique qui travaille sur une représentation de la fonction par un programme informatique et génère automatiquement un autre programme calculant les dérivées de la fonction en question en un point donné. Deux approches ont été développées : une fondée sur la transformation du code, l autre sur la surcharge des opérateurs arithmétiques. Les outils de différentiation automatique impliquent une interaction importante avec le langage utilisé pour coder les fonctions, ce qui impose que les fonctions manipulées soient codées dans un langage compatible avec les outils de calcul que l on veut utiliser. 1.2.2 Convergence et vitesse de convergence Étudier la convergence d un algorithme, c est étudier la convergence de la suite des itérés générés par l algorithme. Un algorithme de descente selon le modèle précédent, est dit convergent si la suite de ses itérés (x k ) k N converge vers un point limite x, solution du problème : min f(x). x R n De plus, la convergence est dite locale si elle n a lieu que pour des points initiaux x 0 dans un voisinage de x. Sinon elle est dite globale. En pratique, le but d un algorithme d optimisation est généralement de trouver un point critique (i.e. un point vérifiant les conditions nécessaires d optimalité du premier ordre). Définissons la notion de convergence globale d un algorithme pour des problèmes d optimisation sans contrainte :

8 1.2. Algorithmique de l optimisation Définition 1.2 Soit un algorithme itératif qui génère une suite (x k ) k N dans R n afin de résoudre le problème : min x R n f(x), où f : R n R est une application de classe C 1. L algorithme est dit globalement convergent si quel que soit le point initial x 0 R n, lim f(x k) = 0. k + Cette propriété garantit que le critère d arrêt f(x k ) ε sera satisfait à partir d un certain rang quelle que soit la précision ε > 0 demandée. Pour les problèmes d optimisation sous contrainte, le principe est le suivant : on définit une application θ telle que tout point critique x du problème considéré vérifie : θ( x) = 0, et réciproquement. Un algorithme sera alors dit globalement convergent si quel que soit le point initial x 0, la suite (θ(x k )) k converge vers 0. Il est bien entendu très important de garantir la convergence d un algorithme sous certaines hypothèses, mais la vitesse de convergence et la complexité sont également des facteurs à prendre en compte lors de la conception ou de l utilisation d un algorithme ; en effet, on a tout intérêt à ce que la méthode choisie soit à la fois rapide, précise et stable. Pour cela, on introduit les notions de vitesse (ou taux) de convergence qui mesurent l évolution de l erreur commise x k x. Définition 1.3 Soit (x k ) k N une suite d itérés générés par un algorithme convergent donné. On note x la limite de la suite (x k ) k N et on suppose : k N, x k x (sinon l algorithme convergerait en un nombre fini d itérations). La convergence de l algorithme est dite : linéaire si l erreur e k = x k x décroît linéairement i.e. s il existe τ ]0, 1[ tel que : superlinéaire si d ordre p s il existe τ 0 tel que : x k+1 x lim k + x k x = τ. x k+1 x lim k + x k x = 0. x k+1 x lim k + x k x = τ. p En particulier, si p = 2, la convergence est dite quadratique (grosso modo à partir d un certain rang, le nombre de chiffres significatifs exacts double à chaque itération). Bien entendu, on a intérêt à ce que la convergence d un algorithme soit la plus élevée possible afin de converger vers la solution en un minimum d itérations pour une précision donnée.

Chapitre 1. Introduction 9 x Remarque 1.1 La convergence est dite sous-linéaire si : lim k+1 x k + x k = 1. Un algorithme x à convergence sous-linéaire converge tellement lentement qu il est considéré en pratique comme inacceptable. Exemple 1.2.1 La fonction f : x x 3 6x + 1 admet un minimum local sur R en x = 2. Partant d une approximation grossière x 0 = 2 de x, comparons plusieurs algorithmes de calcul approché de x avec 5 chiffres significatifs exacts : Soit l algorithme x k+1 = x k α(x 2 1 k 2). Vérifier que pour 0 < α < 2, cet algorithme converge linéairement avec un taux τ = 2α 2 1. 2 1 α 3 0.5 3 1 2 2 τ = 2α 2 1 0.885 0.414 0.057 0 Nb d itérations 105 15 6 4 Nb chiffres sign. exacts 5 5 7 10 Si α = 1 2, la convergence est dite superlinéaire et c est la meilleure convergence possible 2 de l algorithme en question. Soit l algorithme : x k+1 = 1(x 2 k + 2 x k ) dont la convergence est quadratique. Alors 4 itérations suffisent pour calculer une valeur approchée de x avec 5 chiffres significatifs exacts ; en réalité, on a même 11 chiffres significatifs exacts dès la quatrième itération. 1.2.3 Critères d arrêt Soit x un minimum local du critère f à optimiser. Supposons que l on choisisse comme test d arrêt dans l algorithme de descente modèle, le critère idéal : x k = x. Dans un monde idéal (i.e. en supposant tous les calculs exacts et la capacité de calcul illimitée), soit l algorithme s arrête après un nombre fini d itérations, soit il construit (théoriquement) une suite infinie x 1, x 2,..., x k,... de points de R n qui converge vers x. En pratique, un test d arrêt devra être choisi pour garantir que l algorithme s arrête toujours après un nombre fini d itérations et que le dernier point calculé soit suffisamment proche de x. Soit ε > 0 la précision demandée. Plusieurs critères sont à notre disposition : tout d abord (et c est le plus naturel), un critère d optimalité basé sur les conditions nécessaires d optimalité du premier ordre présentées dans le chapitre 2 : par exemple en optimisation différentiable sans contrainte, on testera si f(x k ) < ε, (1.4) auquel cas l algorithme s arrête et fournit l itéré courant x k comme solution. En pratique, le test d optimalité n est pas toujours satisfait et on devra faire appel à d autres critères (fondés sur l expérience du numérique) : Stagnation de la solution : x k+1 x k < ε(1 + x k ). Stagnation de la valeur courante : f(x k+1 ) f(x k ) < ε(1 + f(x k ) ). Nombre d itérations dépassant un seuil fixé à l avance : k < IterMax.

10 1.2. Algorithmique de l optimisation et généralement une combinaison de ces critères : Critère d arrêt = Test d optimalité satisfait OU (Stagnation de la valeur courante & Stagnation de la solution) OU Nombre d itérations maximum autorisé dépassé. Remarque 1.2 En pratique, on préférera travailler avec les erreurs relatives plutôt qu avec les erreurs absolues, trop dépendantes de l échelle.

Chapitre 2 Conditions d optimalité Considérons un problème d optimisation très général de la forme : (P ) min f(x) s.c. x X, (2.1) où X est un sous-ensemble non vide de R n. Les résultats d existence de solutions que nous connaissons, ne sont d aucune aide pour trouver une solution du problème (P ). Ce qu il nous faut, c est une caractérisation analytique de l optimalité, un ensemble d équations ou d inéquations qui pourront être résolues par les algorithmes. Ce chapitre est consacré à l écriture de conditions d optimalité analytiques associées à différents problèmes d optimisation. Nous donnerons tout d abord une condition géométrique très générale en optimisation différentiable, puis nous considérerons le cas où le domaine X des contraintes est défini par des égalités et/ou des inégalités fonctionnelles. 2.1 Cas différentiable général 2.1.1 Cône des directions admissibles Une difficulté importante en optimisation sous contrainte consiste à savoir se déplacer dans l ensemble des contraintes i.e. étant donnée une direction de recherche comment garantir que l on reste dans l ensemble X. Pour cela, on introduit la notion de direction admissible : Définition 2.1 (Direction admissible) Soit x R n un point admissible du problème (2.1). Une direction d R n sera dite admissible en x s il existe η > 0 tel que x+sd soit admissible quel que soit s ]0, η]. On dit également que la direction d est rentrante dans X en x. Dans le cas particulier où le domaine des contraintes est convexe, déterminer une direction d admissible en x revient à déterminer un point admissible y, différent de x : d = y x est alors une direction admissible. En effet, quel que soit α [0, 1], x + αd = (1 α)x + αy est une combinaison convexe d éléments du convexe X, et donc un élément de X. Définition 2.2 (Cône tangent) Soit x X. Le cône tangent (ou cône des directions admissibles) à X en x, noté T x (X), est l ensemble des vecteurs v R n tels qu il existe une suite (x n ) n N 11

12 2.1. Cas différentiable général d éléments de X de limite x et une suite (ε n ) n N de réels strictement positifs de limite nulle, telles que : x n x lim = v. n + ε n Autrement dit, le cône admissible est l ensemble des directions admissibles dans X au point x, ainsi que les limites de ces directions. En posant v n = x n x ε n un peu plus maniable : dans la définition précédente, on obtient une définition équivalente mais Proposition 2.1 Une direction v est tangente à X en x X si et seulement s il existe une suite (v n ) n N de limite v et une suite (ε n ) n N de réels strictement positifs de limite nulle telles que : x + ε n v n X. Le passage à la limite est essentiel, sous peine d appauvrir radicalement le cône T x (X) et de le rendre ainsi inutilisable : Exercice 2.1.1 Soit X = {x R 2 x 2 1 x 2 2x 2 1}. Dessiner X dans R 2 et calculer l ensemble des directions admissibles à X au point (0, 0) puis le cône tangent à X en (0, 0). On remarquera que T x (X) est un cône fermé, et que les seuls cas intéressants sont ceux où le point x est sur la frontière de X. Proposition 2.2 Soit X un sous-ensemble d intérieur non vide de R n et x X. i. T x (X) est un cône fermé. ii. x / X T x (X) =. iii. x int X T x (X) = R n. Preuve. La preuve du point i. est laissée en exercice. Si x / X, il existe des voisinages de x qui ne rencontrent pas X. Aucune direction n est donc admissible ; le point ii. est ainsi démontré. Intéressons nous à la troisième assertion : soit x à l intérieur de X (en supposant X d intérieur non vide). Par définition, il existe r > 0 tel que : B(x, r) X. Pour toute direction d R n non nulle et pour tout s < r/ d, on a donc : x + sd B(x, r) X. Toute direction d dans R n est donc admissible au point x, d où : R n T x (X), ce qui implique : T x (X) = R n. Exercice 2.1.2 Soit X = {x R 2 x 2 1 T (1,1) (X) x 2 2}. Dessiner X dans R 2 et calculer T (0,0) (X) et

Chapitre 2. Conditions d optimalité 13 x x C x 000000000000 111111111111 000000000000 111111111111 000000000000 111111111111 000000000000 111111111111 000000000000 111111111111 000000000000 000000000000 111111111111 111111111111 0 000000000000 111111111111 000000000000 111111111111 000000000000 111111111111 000000000000 111111111111 0 00000000000 11111111111 00000000000 11111111111 00000000000 11111111111 00000000000 11111111111 00000000000 11111111111 00000000000 11111111111 00000000000 11111111111 00000000000 11111111111 FIGURE 2.1 Quelques exemples de cônes tangents 2.1.2 Condition nécessaire d optimalité géométrique L écriture des conditions d optimalité en présence de contraintes est basée sur l intuition qu il est impossible de descendre à partir d un minimum. Considérons le problème général : (P ) min f(x) sous la contrainte : x X. x Rn La condition nécessaire d optimalité du premier ordre énoncée ci-après met en évidence l utilité de la notion de cône tangent : Théorème 2.1 Soit f : R n problème (P ). Alors : R une application différentiable et x un minimum local du v T x (X), f(x ), v 0. (2.2) Cône tangent Cône tangent f(x ) f(x ) 0 0 Interprétation géométrique de la condition nécessaire d optimalité (2.2)

14 2.1. Cas différentiable général Preuve du théorème 2.1. Soit v T x (X). Par définition, il existe une suite (v n ) n N d éléments de R n de limite v et une suite (ε n ) n N de réels strictement positifs de limite nulle telles que : x n = x + ε n v n X. De plus, x est un minimum local de f sur X, donc il existe r > 0 tel que : y B(x, r) X, f(y) f(x ), et par construction, la suite (x n ) n N est une suite d éléments de X qui converge vers x. Donc il existe N N tel que : n N, x n = x + ε n v n X B(x, r), D où : f(x + ε n v n ) f(x ), pour n N. D autre part, pour n assez grand, on a également : f(x + ε n v n ) = f(x ) + ε n f(x ) v n + ε n v n ɛ(n), avec : lim n + ɛ(n) = 0 D où : ε n f(x ) v n + ε n v n ɛ(n) 0, soit : f(x ) v n + v n ɛ(n) 0. En passant à la limite quand n tend vers +, on obtient le résultat attendu. Cas où l ensemble admissible est convexe Dans le cas où le domaine X des contraintes est convexe, la condition d optimalité se simplifie dans le sens où elle ne fait plus intervenir le cône tangent mais uniquement l ensemble des directions admissibles. Bien que ce dernier soit plus petit que le cône tangent, il n y a pas de perte d information lorsque f est différentiable en x, que son adhérence est le cône tangent à X en x et que v f(x ), v est continue. Corollaire 2.1 (CN et CS en présence de convexité) Soit f : R n R une application différentiable et X un sous-ensemble convexe de R n. Si x est un minimum local de (P ), alors : x X, f(x ), x x 0. (2.3) Si f est convexe sur le convexe X, alors la condition (2.3) est suffisante pour que x soit un point de minimum global de (P ). Exercice 2.1.3 Démontrer le corollaire 2.1.

Chapitre 2. Conditions d optimalité 15 2.2 Cas différentiable sans contraintes Supposons maintenant que le domaine X des contraintes est un ouvert de R n. Par conséquent : int X = X, d où : T x (X) = R n. Le cône tangent est donc un espace vectoriel : si v R n alors v R n. La condition nécessaire d optimalité (2.2) s écrit donc à la fois : v R n, f(x ), v 0 et f(x ), v 0, ce qui implique : v R n, f(x ), v = 0, et par suite : f(x ) = 0. Nous retrouvons ainsi la condition nécessaire d optimalité du premier ordre pour l optimisation sans contrainte. Cela nous rappelle qu un problème d optimisation sur un ouvert, doit être traité comme un problème d optimisation sans contrainte. Exercice 2.2.1 Les problèmes min x R x2 s.t. x < 1 et min x R x2 s.t. x > 1 ont-ils des solutions? Rappelons (sans démonstration) les conditions nécessaires du premier et du second ordre pour des problèmes d optimisation différentiable sans contrainte : Conditions nécessaires d optimalité locale Si x R n réalise un minimum local (resp. maximum local) de f, alors : f(x ) = 0 H[f](x ) est semidéfinie positive (resp. H[f](x ) est semidéfinie négative) Condition suffisante d optimalité locale Soit X un ouvert de R n et x X. Si : (CN d optimalité du 1 er ordre) (CN d optimalité du 2 nd ordre) f(x ) = 0 et H[f](x ) symétrique, définie positive (resp. définie négative) Alors x est un point de minimum local (resp. maximum local) de f sur X. Condition Suffisante d optimalité globale Supposons f(x ) = 0. i. Si f est convexe, alors x est un point de minimum global de f. ii. Si f est strictement convexe, alors x est l unique point de minimum global de f. 2.3 Cas différentiable avec contraintes fonctionnelles Nous nous intéressons maintenant plus particulièrement à la résolution de problèmes d optimisation dont le domaine des contraintes X est défini par des égalités et/ou des inégalités : X = {x R n : h i (x) = 0, i = 1,..., p, g j (x) 0, j = 1,..., q}

16 2.3. Cas différentiable avec contraintes fonctionnelles noté également : X = {x R n : h(x) = 0, g(x) 0} où les fonctions g et h sont définies sur R n à valeurs respectivement dans R q et R p. Rappelons que sous les hypothèses : g : R n R q et h : R n R p continues sur R n : L ensemble X est un fermé de R n. L ensemble X n est pas nécessairement borné. Exemple : dans R 2, on choisit h 0 et g(x, y) = x. Alors l ensemble X = {(x, y) R 2 : x 0} n est pas borné. Si les fonctions h i, i = 1,..., p, sont affines et si les fonctions g j, j = 1,..., q, sont convexes, alors X est convexe. A partir de maintenant, nous travaillerons toujours à partir d un problème d optimisation écrit sous forme standard, à savoir : (P ) min f(x) x R n s.c. h i (x) = 0, i = 1,..., p g j (x) 0, j = 1,..., q. Par exemple, la forme standard du problème max (x,y) R 2 f(x, y) s.t. : x2 + y 2 1 et x + y = 5, est : min f(x, y) s.t. : 1 x2 y 2 0 et x + y 5 = 0. (x,y) R 2 Dans ce contexte, précisons la notion de convexité du problème (P ) : Proposition 2.3 Le problème (P ) est dit convexe si h est affine, g convexe et si la fonction objectif f est convexe sur X. Concernant les contraintes d inégalités, nous aurons également besoin de la notion de contrainte active : Définition 2.3 (Contraintes actives) Une contrainte d inégalité g j (x) 0, j {1,..., q}, est dite active en x si : g j ( x) = 0, et inactive en x si : g j ( x) < 0. Ce qui rend la notion de contrainte active attrayante, c est le fait qu au point de minimum local x X, les contraintes actives peuvent être remplacées par des contraintes d égalité et les contraintes inactives peuvent être ignorées. Si l intérêt de cette simplification reste essentiellement théorique (on ne connaît pas x à l avance!), un intérêt pratique est que si l on trouve un point de minimum local du problème sans contrainte, c est également un point de minimum local du problème contraint. L essentiel de notre travail dans ce chapitre consistera donc à trouver une expression plus pratique de la condition (2.2), et donc du cône tangent.

Chapitre 2. Conditions d optimalité 17 2.3.1 Problèmes avec contraintes d égalité Considérons un problème avec contraintes uniquement d égalité : (P E ) min x R n f(x) s.c. h i (x) = 0, i = 1,..., p. On note : X = {x R n : h i (x) = 0, i = 1,..., p} le domaine admissible. Définition 2.4 (Contraintes régulières) Soit x X. Supposons h de classe C 1 au voisinage de x. On dit que les contraintes du problème (P E ) sont régulières en x X, ou que x X est régulier, si la jacobienne Dh(x) des contraintes est surjective. Sous l hypothèse que h est de classe C 1 au voisinage de x X, on rappelle que la matrice Jacobienne Dh(x) de h en x est définie par : Dh(x) = [ h 1 (x)... h p (x) ], la matrice Dh(x) étant de taille p n. On a alors : x X régulier ssi : { p n les vecteurs h i (x), i + 1,..., p, sont linéairement indépendants. Intéressons nous maintenant à l écriture des conditions d optimalité dans le cas avec contrainte d égalité. La première étape, et la plus difficile, consiste à expliciter le cône tangent. Proposition 2.4 Soit x X. Si x est régulier, alors le cône T x (X) est un sous-espace vectoriel de R n, supplémentaire orthogonal de l espace V engendré par les gradients des contraintes : V = V ect( h i (x); i = 1,..., p). Plus précisément : T x (X) = Ker Dh(x). Démonstration de la proposition 2.4. i. Commençons par démontrer que : T x (X) Ker Dh(x) = {v R n : v, h i (x) = 0}. Soit v T x (X) : il existe une suite (v n ) n N de R n qui converge vers v et une suite (ε n ) n N de réels strictement positifs telles que : x n = x + ε n v n X. On observe alors que la suite (x n ) n converge vers x. Soit i {i = 1,..., p}. La contrainte h i étant supposée C 1, pour n assez grand, on a : h i (x + ε n v n ) = h i (x) + ε n h i (x), v n + ε n v n γ(n), avec : Or x + ε n v n et x sont des éléments de X, d où : h i (x + ε n v n ) = h i (x) = 0 et : h i (x), v n + v n γ(n) = 0. lim γ(n) = 0. n +

18 2.3. Cas différentiable avec contraintes fonctionnelles Par passage à la limite quand n tend vers +, on obtient alors : h i (x), v = 0 et ce pour tout i {i = 1,..., p}. Donc v Ker Dh(x), et : T x (X) Ker Dh(x). ii. Réciproque : par hypothèse, les vecteurs h i (x), i = 1,..., p, sont linéairement indépendants : ils forment donc une base du sous-espace vectoriel V qu ils engendrent. De plus V admet un supplémentaire orthogonal dans R n que l on note W. On vérifie alors : W = Ker Dh(x) et : R n = V Ker Dh(x). Étape 1 : Le but de cette étape est de décrire explicitement les vecteurs vérifiant les contraintes, c est-à-dire l équation implicite : h(x) = 0. Voyons comment appliquer le théorème d inversion locale. Le point x X étant régulier, l application linéaire Dh(x) est de rang p. Quitte à renuméroter les variables, supposons les p dernières colonnes de Dh(x) linéairement indépendantes. Donc h s écrit : h : R n p R p R p y = (u, v) h(y) = h(u, v) Notons : x = (u 0, v 0 ). La contrainte h est de classe C 1 au voisinage de x, h(x) = 0 et : D v h(x) = [ Dh(x) ] 1 i p, n p+1 j n est une matrice de rang p et de taille p p, donc inversible. D après le théorème des fonctions implicites, il existe un voisinage U 0 de u 0, un voisinage V 0 de v 0 et une application ϕ : U 0 V 0 tels que : { (u, v) U0 V 0 h(u, v) = 0 { (u, v) U0 V 0 v = ϕ(u) On pose alors : ψ(u) = (u, ϕ(u)) dont l image Im ψ décrit l ensemble des points vérifiant les contraintes : ψ(u 0 ) = (u 0, ϕ(u 0 )) = (u 0, v 0 ) = x u U 0, ψ(u) X, En particulier, on a donc : u U 0, h(ψ(u)) = 0 soit au voisinage de u 0 : Dh(ψ(u 0 )) Dψ(u 0 ) = Dh(x) Dψ(u 0 ) = 0. On en déduit : Im ψ(u 0 ) Ker Dh(x). De plus, Dψ(u 0 ) = ( In p Dϕ(u 0 ) est de rang (n p), ainsi que Ker Dh(x). Donc : Im ψ(u 0 ) = Ker Dh(x). )

Chapitre 2. Conditions d optimalité 19 Étape 2 : soit d Ker Dh(x) = Im Dψ(u 0 ) : il existe z tel que : Dψ(u 0 )(z) = d. Soit (ε n ) n N une suite de réels strictement positifs, de limite nulle. Au voisinage de u 0, on écrit le développement de Taylor d ordre 1 de ψ, soit : ψ(u 0 + ε n z) = ψ(u 0 ) + ε n Dψ(u 0 )(z) + ε n γ(n), avec : lim n 0 γ(n) = 0 = x + ε n d + ε n γ(n). On pose : x n = ψ(u 0 + ε n z). Par construction, les x n sont éléments de X, et la suite (x n ) n converge vers x. De plus : x n x ε n = d + γ(n) d quand n +. On en conclut (c est la définition du cône tangent!) que : d T x (X). L hypothèse de régularité des contraintes n est en réalité qu une condition suffisante pour avoir l égalité : T x (X) = KerDh(x) (on a sinon seulement l inclusion T x (X) KerDh(x)!). On introduit alors la notion de qualification des contraintes utilisée pour l établissement des conditions d optimalité : Définition 2.5 (Qualification des contraintes d égalité) La contrainte "h(x) = 0" de (P E ) est dite qualifiée en x X si h est différentiable en x et si T x (X) = Ker Dh(x). Comment interpréter cette définition? Le cône tangent ne dépend que de l ensemble X et pas de la fonction h choisie pour le représenter. Au contraire Ker Dh(x) dépend directement de h. La qualification des contraintes peut être vue comme un critère permettant de sélectionner de bonnes représentations de X par h. En pratique, la définition de qualification des contraintes est difficile à vérifier ; une hypothèse couramment utilisée pour garantir la qualification des contraintes est qu elles soient régulières. Théorème 2.2 (Théorème de Lagrange - CN d optimalité du premier ordre) Soit f : R n R et h : R n R p différentiables en x. Supposons la contrainte h(x) = 0 qualifiée en x X. Si x est un point de minimum local de f sur X, alors il existe des réels λ 1,..., λ p tels que : f(x ) + p λ i h i (x ) = 0. i=1 Le vecteur λ = [λ 1... λ p] est appelé multiplicateur de Lagrange et est déterminé de façon unique. Preuve du théorème 2.2. La condition nécessaire d optimalité s écrit : pour tout v T x (X), f(x ), v 0. Or le cône tangent étant un sous-espace vectoriel, si v T x (X), alors v T x (X), et la condition d optimalité devient : v T x (X), f(x ), v = 0. Le vecteur f(x ) est donc orthogonal à T x (X), et se décompose dans la base { h i (x); i = 1,..., p}.

20 2.3. Cas différentiable avec contraintes fonctionnelles TERMINOLOGIE : Le vecteur λ est aussi appelé solution duale du problème (P E ), x solution primale de (P E ) et (x, λ ) solution primate-duale de (P E ). On appelle point stationnaire du problème (P E ) tout point x vérifiant les conditions nécessaires d optimalité du premier ordre : f( x) + h( x) = 0 p λ i h i ( x) = 0 pour un certain multiplicateur λ R p. En pratique, on retrouve les conditions d optimalité du problème (P E ) en introduisant le Lagrangien du problème (P E ) : i=1 L(x; λ) = f(x) + λ, h(x) R p, x R n, λ R p. Sous hypothèse de qualification des contraintes, les conditions d optimalité du problème (P E ) s écrivent alors : { x L(x; λ) = 0 h(x) = 0 ou encore : (x,λ) L(x; λ) = 0. Nous admettrons sans démonstration que les conditions nécessaire et suffisante d optimalité du second ordre s obtiennent en étudiant le Hessien du Lagrangien calculé selon la composante x uniquement : CN d optimalité locale du second ordre v T x (X), H x [L](x; λ) v, v 0. CS d optimalité locale du second ordre v T x (X), v 0, H x [L](x; λ) v, v > 0. Remarquons que si la matrice hessienne H x [L](x; λ) est définie positive, alors il est inutile de calculer le cône tangent au point x puisque dans ce cas : v R n, v 0, H x [L](x) v, v > 0, et donc : v T x (X), v 0, H x [L](x) v, v > 0 et la condition suffisante d optimalité est automatiquement satisfaite. Exercice 2.3.1 Trouver tous les rectangles de R 2 de surface maximale pour un périmètre p fixé.

Chapitre 2. Conditions d optimalité 21 2.3.2 Problèmes avec contraintes d inégalités Intéressons nous maintenant à des problèmes d optimisation sous contraintes d inégalité : (P I ) min x R n f(x) sous la contrainte : g j(x) 0, j = 1,..., q. On note : X = {x R n : g j (x) 0, j = 1,..., q}. Proposition 2.5 Soit x X. Supposons g différentiable au point x. Le cône tangent à X en x est inclus dans le cône obtenu par linéarisation des contraintes actives et appelé cône linéarisant : T x (X) {v R n : pour tout j actif en x, g j (x), v 0}. Preuve. ( ) Soit v T x (X) : il existe une suite (v n ) n qui converge vers v et une suite (ε n ) n de réels strictement positifs de limite nulle telles que : x + ε n v n X, n N, c est-à-dire : j = 1,..., q, n N, g j (x + ε n v n ) 0. Soit j {1,..., q} actif en x, i.e. : g j (x) = 0. La fonction g j étant de classe C 1, on peut écrire son développement de Taylor d ordre 1 au voisinage de x, soit : g j (x + ε n v n ) = g j (x) + ε n g j (x), v n + o(ε n v n ) = ε n g j (x), v n + o(ε n v n ) (car j actif en x). On a vu : g j (x + ε n v n ) 0 par construction. D où : g j (x), v n + o( v n ) 0. Par passage à la limite quand n tend vers +, on en conclut : g j (x), v 0, d où l inclusion demandée. L égalité du cône tangent et du cône linéarisant est souhaitable pour exprimer les conditions d optimalité dans des termes plus simples. Ceci fait à nouveau intervenir la notion de qualification des contraintes : Définition 2.6 (Qualification des contraintes d inégalité) La contrainte "g(x) 0" de (P I ) est dite qualifiée au point x X si g est différentiable en x et si : T x (X) = {v R n : pour tout j actif en x, g j (x), v 0}. L interprétation est la même que dans le cas de contraintes d égalité : la qualification des contraintes peut être vue comme un critère permettant de sélectionner de "bonnes" représentations de X par g. Remarque 2.1 La plupart des algorithmes échouent lorsqu ils doivent résoudre un problème dont les contraintes ne sont pas qualifiées en la solution. Il est dans ce cas préférable de changer la description de l ensemble X des contraintes avant de chercher à résoudre le problème. Une fois de plus, cette condition est difficile à vérifier en pratique et couramment remplacée par des conditions suffisantes de qualification des contraintes.

22 2.3. Cas différentiable avec contraintes fonctionnelles Proposition 2.6 (CS de qualification des contraintes) Les contraintes g j (x) 0, j = 1,..., q, sont qualifiées en un point x X s il existe un vecteur v 0 tel que pour toute contrainte active g j (x) = 0, on ait : soit g j est affine et : g j (x), v = 0, soit : g j (x), v < 0. Preuve. Soit v R n tel que pour toute contrainte j active en x, on ait : g j (x), v 0. Soit u un vecteur de R n assurant la qualification des contraintes en x. On se donne une suite (ε n ) n quelconque de réels strictement positifs, de limite nulle et un réel η > 0. On pose : x n = x + ε n (v + ηu). x n x La suite (x n ) n ainsi définie converge vers x et : lim = v + ηu. Pour que v soit une n + ε n direction du cône tangent en x, il suffit de montrer que : x n X à partir d un certain rang. 1 er cas : la contrainte j n est pas active en x. Alors : g j (x) < 0. De plus la suite (x n ) n converge vers x, d où par continuité de g j : il existe un entier N N tel que : n N, g j (x n ) 0. 2 nd cas : la contrainte j est active en x. Alors : g j (x) = 0 et deux sous-cas se présentent : soit g j est affine et : g j (x), u = 0. Dans ce cas : g j (x n ) = g j (x) + ε n g j (x), v + ηu = ε n g j (x), v 0 soit : g j (x), u < 0. Sachant que : g j (x) = 0, le développement de Taylor d ordre 1 de g j au voisinage de x, s écrit : g j (x n ) = ε n g j (x), v + ηu + o(ε n ) = ε n g j (x), v + ηε n g j (x), u + o(ε n ) < ηε n g j (x), u + o(ε n ) 0 à partir d un certain rang. Dans tous les cas : x n X à partir d un certain rang, soit : v + ηu T x (X) pour tout η > 0. Par passage à la limite quand η tend vers 0 +, le cône T x (X) étant fermé, on en conclut : v T x (X). En conséquence, si x est solution du problème (P I ) avec contraintes d inégalités et si ces contraintes sont qualifiées en x au sens de la proposition 2.6, alors la condition nécessaire d optimalité s écrit : [ ] v R n, j actif en x, g j (x), v 0, f(x), v 0. En utilisant le lemme de Farkas (ici admis) : Lemme 2.1 (Lemme de Farkas) Soient v 1,..., v l un ensemble de vecteurs de R n et u R n. Alors : [ ] x R n, j = 1,..., l, v j, x 0, u, x 0 est équivalent à : Il existe des réels λ 1,..., λ l positifs tels que : u = l λ j v j. j=1

Chapitre 2. Conditions d optimalité 23 on obtient immédiatement la formulation suivante : Théorème 2.3 (CN d optimalité du premier ordre sous contraintes d inégalités) Soit x X. Supposons f et g différentiables en x et les contraintes qualifiées en x. Si x est un point de minimum local de f sur X, alors il existe des réels positifs ou nuls λ 1,..., λ q tels que : q f(x ) + λ j g j (x ) = 0, j=1 avec pour tout j = 1,..., q, λ j 0 et λ jg j (x ) = 0. TERMINOLOGIE : Le vecteur λ est aussi appelé solution duale du problème (P I ), x solution primale de (P I ) et (x, λ ) solution primate-duale de (P I ). On appelle point stationnaire du problème (P I ) tout point x vérifiant les conditions nécessaires d optimalité du premier ordre : f( x) + q λ i g j ( x) = 0 j=1 λ j 0, j = 1,..., q, λ j g j ( x) = 0, j = 1,..., q. pour un certain multiplicateur λ R q. Les relations : λ j g j ( x) = 0 sont appelées relations de complémentarité et signifie : Soit : λ j = 0, soit : g j ( x) = 0. Ces relations sont trivialement satisfaites par toute contrainte j active en x et indiquent que pour toute contrainte inactive, le multiplicateur λ j correspondant est nul. Cela signifie que toute contrainte inactive à l optimum aurait pu être relaxée. En effet, soit x un point de minimum local de f sur X = {x R n : j = 1,..., q, g j (x) 0}. Le point x est donc également un point de minimum local de f sur le sous-ensemble : X = {x X : pour toute contrainte j active en x, on ait : g j (x) = 0} du domaine admissible X. Minimiser f sur X revient à résoudre un problème d optimisation sous contraintes d égalités. D après le théorème de Lagrange (cf théorème 2.2), il existe donc des réels λ j pour j actif en x tels que : f(x ) + j actifs en x λ j g j (x ) = 0 ce qui est équivalent à : f(x ) + q j=1 λ j g j (x ) = 0, avec : λ jg j (x ) = 0.

24 2.3. Cas différentiable avec contraintes fonctionnelles En pratique, on retrouve les conditions d optimalité du problème (P I ) en introduisant le Lagrangien associé au problème (P I ) : L(x; λ) = f(x) + λ, g(x) R q, x R n, λ R q. Sous hypothèse de qualification des contraintes, les conditions nécessaires d optimalité du premier ordre du problème (P I ) s écrivent alors : x L(x; λ) = 0 λ j g j (x) = 0, j = 1,..., q λ j 0, j = 1,..., q. Remarque 2.2 Concernant les conditions d optimalité du second ordre, le cas des problèmes avec des contraintes d inégalité est délicat et ne figure pas dans ce cours. 2.3.3 Problèmes avec contraintes d égalité et d inégalité Considérons pour terminer un problème d optimisation avec à la fois des contraintes d égalité et des contraintes d inégalité : (P ) min f(x) s.c. h i (x) = 0, i = 1,..., p, g j (x) 0, j = 1,..., q. où l on note X le domaine des contraintes. Les contraintes d égalité et d inégalité sont dites qualifiées au point x X si chacunes sont qualifiées au sens des définitions vues précédemment à savoir : Définition 2.7 Les contraintes du problème (P ) sont dites qualifiées au point x X si g et h sont différentiables au point x et si le cône tangent est égal au cône linéarisant de X en x i.e. : T x (X) = {v R n ; i = 1,..., p, h i (x), v = 0 et pour toute contrainte j active, g j (x), v 0}. Cependant cette condition est rarement utilisée car difficile à vérifier. Il existe plusieurs conditions suffisantes de qualification des contraintes utilisées dans la littérature (cf qualification de Slater, de Mangasarian-Fromovitz par exemple) ; la plus simple que l on retiendra ici est la suivante : Proposition 2.7 (CS de qualification des contraintes) Les contraintes du problème (P ) sont qualifiées au point x X si les gradients des contraintes actives en x : sont linéairement indépendants. { h i (x); i = 1,..., p} { g j (x); j {1,..., q} active}, On introduit le Lagrangien associé au problème (P ) : L(x; λ, µ) = f(x) + p λ i h i (x) + où x R n, λ = (λ 1,..., λ p ) R p et µ = (µ 1,..., µ q ) R q. i=1 q µ j g i (x), j=1

Chapitre 2. Conditions d optimalité 25 Théorème 2.4 (CN d optimalité/conditions de Karush-Kuhn-Tucker (1951)) Soit x X un point admissible du problème (P ). Supposons f, g et h différentiables en x et les contraintes qualifiées au point x. Si x est un point de minimum local de f sur X alors il existe λ R p et µ R q tels que : x L(x ; λ, µ ) = 0 h i (x ) = 0, i = 1,..., p µ jg j (x ) = 0, j = 1,..., q µ j 0, j = 1,..., q Remarque 2.3 Attention! Le signe des multiplicateurs associés aux contraintes d inégalité peut changer si le problème n est pas écrit sous forme standard, à savoir si l on cherche les points de maximum local de f sur X ou si les contraintes d inégalité sont écrites sous la forme g(x) 0. Proposition 2.8 (CS d optimalité) Soit x un point admissible du problème (P ). Supposons le problème (P ) convexe et les fonctions f, g et h différentiables en x. S il existe des multiplicateurs (λ, µ ) R p R q tels que les conditions de Karush-Kuhn- Tucker soient vérifiées, alors x est un point de minimum global de f sur X.

Chapitre 3 Méthodes de descente en optimisation différentiable sans contrainte Nous nous intéressons dans ce chapitre à la conception de méthodes numériques pour la résolution de problèmes d optimisation sans contrainte. Autrement dit, le domaine X des contraintes est un ouvert de R n. Sans perte de généralité, nous supposerons dans ce chapitre que : X = R n. Nous cherchons donc à résoudre le problème : (P ) min x R n f(x). où f est une fonction définie sur R n à valeurs réelles. Dans ce chapitre, nous nous intéressons à une classe de méthode appelées méthodes de descente. Rappels sur les méthodes de descente Un vecteur d R n est une direction de descente pour f à partir d un point x R n si t f(x + td) est décroissante en t = 0, c est-à-dire s il existe η > 0 tel que : t ]0, η], f(x + td) < f(x). (3.1) Dans le cas où f est différentiable, un vecteur d R n est une direction de descente de f au point x ssi : df(x; d) = f(x) d < 0. (3.2) De plus pour tout β < 1, il existe η > 0 tel que : t ]0, η], f(x + td) < f(x) + tβ f(x) d. (3.3) Partant d un point x 0 arbitrairement choisi, un algorithme de descente va chercher à générer une suite d itérés (x k ) k N définie par : x k+1 = x k + s k d k où d k R n est une direction de descente de f en x k et s k > 0 le pas effectué dans cette direction, et telle que : k N, f(x k+1 ) f(x k ) 27

28 3.1. Recherches linéaires : stratégies de recherche d un pas de descente Lorsqu elle existe, la dérivée directionnelle donne des informations sur la pente de la fonction dans la direction d, tout comme la dérivée donne des informations sur la pente des fonctions à une variable : si f (x; d) > 0 alors f est croissante dans la direction d. si f (x; d) < 0 alors f est décroissante dans la direction d : dans ce cas, d est bien une direction de descente au sens de la définition (3.1). Le schéma général d un algorithme de descente est alors le suivant : ALGORITHME DE DESCENTE MODÈLE. Données: f : R n R admettant des dérivées directionnelles, x 0 point initial arbitraire. Sortie: une approximation de la solution du problème : min x R n f(x). 1. k := 0 2. Tant que test d arrêt non satisfait, (a) Trouver une direction de descente d k telle que : f (x k ; d k ) < 0. (b) Recherche linéaire : Choisir un pas s k > 0 à faire dans cette direction et tel que : f(x k + s k d k ) < f(x k ). (c) Mise à jour : x k+1 = x k + s k d k ; k := k + 1 ; 3. Retourner x k. Un algorithme de descente est complètement déterminé par les stratégies de choix des directions de descente successives et du pas effectué à chaque itération dans la direction choisie. Une fois la théorie bien maîtrisée, calculer une direction de descente est relativement simple. Dans le cas différentiable, il existe deux grandes stratégies de choix de direction de descente : la stratégie de Cauchy : d k = f(x k ), conduisant aux algorithmes de gradient décrits au paragraphe 3.2. la stratégie de Newton : d = H[f](x k ) 1 f(x k ), conduisant aux algorithmes Newtoniens décrits au paragraphe 3.3. Remarquons que si x k est un point stationnaire non optimal alors toutes ces directions sont nulles et aucun de ces algorithmes ne pourra trouver progresser. Ce problème est résolu en utilisant des approches de type région de confiance. Supposons pour l instant résolu le problème du choix de la direction de descente et intéressons nous uniquement au calcul du pas : c est la phase de recherche linéaire. 3.1 Recherches linéaires : stratégies de recherche d un pas de descente Soit x R n un point de R n non critique. Étant donnée une direction de descente d de fen x, nous cherchons à calculer un pas s > 0 de sorte que : f(x + sd) < f(x).

Chapitre 3. Méthodes de descente en optimisation différentiable sans contrainte 29 Le choix de ce pas répond généralement à deux objectifs souvent contradictoires : trouver le meilleur pas possible et effectuer le moins de calculs possibles. Ces deux objectifs ont donné naissance à deux grandes familles d algorithmes : les algorithmes à pas fixe et ceux à pas optimal. Illustrées par les méthodes de descente de gradient, aucune de ces deux stratégies ne s est révélée réellement convaincante : si la première peut être dangereuse du point de vue de la convergence, la seconde est souvent loin d être triviale à mettre en oeuvre (sauf dans le cas quadratique) et généralement inutilement coûteuse : en effet, à quoi bon calculer très précisément un pas optimal dans une direction qui n est peut-être pas la bonne? (comme c est par exemple le cas pour la méthode de plus profonde descente). Les recherches linéaires modernes reposent sur l idée qu un pas de descente acceptable est un pas qui fait suffisamment décroître la fonction objectif. Reste alors à définir les pas qui sont acceptables et ceux qui ne le sont pas. Dans toute cette section, on introduit la fonction ϕ : s R f(x + sd), appelée fonction de mérite. f étant supposée au moins différentiable, la fonction ϕ dérivable sur R, de dérivée : ϕ (s) = f(x + sd) d et : ϕ (0) = f(x) d < 0. (3.4) 3.1.1 Recherche linéaire d Armijo ou comment éviter les pas trop grands Commençons par illustrer sur un exemple simple le fait que la condition de descente : f(x k + s k d k ) < f(x k ) n est pas suffisante pour que le pas s k soit considéré comme acceptable. Soit f : x R 1 2 x2 à minimiser sur R. Appliquons une méthode de descente de gradient normalisée à pas variable, à partir du point x 0 = 2, définie par : (A 1 ) Direction de descente normalisée : d k = f (x k )/ f (x k ) = sgn(x k ). Pas de descente : s k = 2 + 3 2 k+1. Les résultats sont présentés sur la figure 3.1. On voit qu il s agit bien d un algorithme de descente puisque la suite (f(x k )) k est décroissante, mais la convergence ne semble pas vérifiée. Vérifions analytiquement ces observations numériques. On démontre par récurrence (en distinguant les cas k pair/k impair) que : x k = ( 1) k (1 + 1 2 k ). Pour tout k N : f(x k+1 ) < f(x k ) : on a donc bien un algorithme de descente mais la suite (x k ) k N ne converge pas : elle possède deux points d accumulation en x = 1 et x = 1 et aucun de ces deux points n est un extremum de f. L échec de l algorithme (A 1 ) tient au fait que la notion de direction de descente est une notion locale, i.e. qui ne s applique qu au voisinage de l itéré courant. Si jamais on choisit un pas de descente trop grand, trouver un meilleur itéré sera uniquement le fait du hasard.

30 3.1. Recherches linéaires : stratégies de recherche d un pas de descente FIGURE 3.1 1000 premiers itérés (f(x k )) k générés par l algorithme de gradient (A 1 ). De ce fait, au lieu de chercher à minimiser ϕ, on préfère imposer des conditions moins restrictives (et moins coûteuses à mettre en oeuvre) : une première condition est dû à Armijo (1966) : f(x + sd) f(x) + εs ( f(x) d ), 0 < ε < 1 (3.5) et est appelée condition d Armijo ou encore condition de décroissance linéaire. ϕ(0) 1 εϕ (0) ϕ(s) 0 PAS s ACCEPTABLES FIGURE 3.2 Règle d Armijo s ϕ(0) + εϕ (0)s Autrement dit, on demande à ce que f décroisse au moins autant que ce que ferait son modèle linéaire en x. En pratique la constante ε est choisie très petite de manière à satisfaire (3.5) le plus facilement possible ; typiquement : ε = 10 4.

Chapitre 3. Méthodes de descente en optimisation différentiable sans contrainte 31 Remarque 3.1 D après la définition (3.1) d une direction de descente, il existe tout un intervalle de pas satisfaisant la condition d Armijo (3.5). 3.1.2 Conditions de Wolfe ou comment éviter les pas trop petits Reprenons le même exemple que précédemment et testons un autre algorithme de descente : (A 2 ) Direction de descente normalisée : d k = f (x k )/ f (x k ) = sgn(x k ). Pas de descente : s k = 1 2 k+1. En effet, compte tenu de notre dernière tentative, on essaie cette fois-ci un pas très petit dans l espoir de garantir la convergence de l algorithme. Commençons par tester numériquement l algorithme (A 2 ), cf figure 3.3. On s aperçoit à nouveau qu il s agit bien d un algorithme de descente puisque la suite (f(x k )) k est décroissante, mais les itérés semblent converger vers le point x = 1 qui n est pas un extremum de f! FIGURE 3.3 1000 premiers itérés (f(x k )) k générés par l algorithme de gradient (A 2 ). Vérifions analytiquement ces observations numériques. Les itérés générés par l algorithme (A 2 ) à partir de x 0 = 2, sont tous positifs et vérifient : k N, x k+1 = x k 1 2 k+1 sgn(x k) = x k 1 2 k+1. On en déduit alors la suite des itérés est décroissante, d où : k N, f(x k+1 ) < f(x k ). L algorithme (A 2 ) est donc bien un algorithme de descente. Calculons maintenant par récurrence l expression explicite des x k : x k = x k 1 1 2 k = x k 2 1 2 k 1 1 2 k = = x 0 = 2 (1 1 2 k ) = 1 + 1 2 k k i=1 1 2 i