OPTIMISATION
Programme du cours
Chapitre 3, les méthodes de descentes : étude graphique du gradient et de la relaxation (§ 3.1,
§ 3.2). La méthode de Newton (§ 3.3) et la notion de préconditionnement (§ 3.4.1).
(x2,y2) (x1,y1)
(x0,y0)
(x3,y3)
(xn,yn)
(xn+1,yn+1))
FIG. 1 – Système denbarres articulées
Notations
On noteV un espace vectoriel normé,xun point deV,F une fonction deV dansR.
< x, y >=P
ixiyiest le produit scalaire canonique deRn.
Question 1
Minimisation au sens des moindres carrés.
L’identification de paramètres à partir de mesures conduit au problème classique suivant : déterminer nparamètres représentés par un vecteurx∈Rnde façon à vérifierp > néquationsf(x) = 0définies par lesp points de mesures, oùf(x) est une application de Rn dans Rp. Ce système surabondant d’équations n’admet pas de solution mais on peut chercher une solution approchée qui minimise la somme des carrés des équations, c’est à dire la fonction
F(x) =< f(x), f(x)>
le minimum devant être proche de0. Cette fonction n’a pas de raison d’être convexe, sauf sif(x) est linéaire, et elle peut avoir un grand nombre de minimums qui ne correspondent pas à des valeurs petites de la fonction.
•Déterminer une fonction affine Y = aX +bapprochant au sens des moindres carrésp points de mesures(Xi, Yi),Xi∈R,Yi ∈R.
•On considère le cas général où la fonctionf(x) = Cx−best linéaire (Cest une matrice(p, n), x∈Rn,b∈Rp).
i) Montrer que la solutionau sens des moindres carrésvérifie CtCx=Ctb
ii) Que doit vérifier la matriceCpour que ce système ait une solution unique ? Question 2
Régularisation d’un maillage.
On considère un graphe planaire, représentation par exemple d’un maillage d’un domaine plan en triangles ou bien d’un problème de liens entre des tâches, défini par ses nœudsxi ∈R2, i= 1, ..., N et un ensemble E d’arcs (i, j). On se propose de “régulariser” le graphe c’est à dire assurer une répartition régulière des nœuds. On supposera que les nœuds du “bord” sont laissés fixes. Une idée naturelle est de chercher que chaque point “intérieur” soit le centre de gravité des nœuds auxquels il est relié. Supposons les nœuds du bord du graphe portent les numérosn+ 1, n+ 2, ..., N, les nœuds intérieurs doivent donc vérifier
∀i= 1, ...n X
j/(i,j)∈E
(xi−xj) = 0
•Montrer que le vecteurx= (x1, ..., xn)∈R2nréalise le minimum de la fonction quadratique
F(x) = X
(i=1,N,j≤i)∈E
kxi−xjk2
•Compte tenu de ce que la précision n’a pas besoin d’être très grande on utilise une méthode simple à mettre en oeuvre : la relaxation. Comment s’interprète géométriquement cette méthode ici ?
Question 3
Notion de préconditionnement.
Nous avons vu en cours que la vitesse de convergence de la méthode du gradient appliquée à une fonction quadratique F(x) = 12hAx, xi − hb, xi dépend du conditionnement de la matrice A. En effectuant un changement de variable on peut modifier cette matrice et améliorer le conditionnement.
On considère ici l’optimisation d’une fonction convexeF(x) ∈ C2(Rn). SoitL une matrice inver- sible quelconque. On effectue le changement de variabley=Lxdans la fonctionF(x).
•Dans le cas d’une fonctionF(x)quadratique, montrer que, cela revient à changer la matriceAen L−tAL−1.
•On pose
M =LtL
La matriceM, appeléematrice de préconditionnementest symétrique définie positive. Montrer que, pour espérer améliorer le conditionnement la matriceA,Mdoit être proche deA.
• Écrire pour une fonction F(x) quelconque l’algorithme du gradient pour la recherche de mini- mum de la fonctionF(L−1y), puis revenir aux variables initiales. On obtient la forme suivante de l’algorithme dit degradient préconditionné:
x0 = 0,=précision g0 =∇F(x0) M =LtL Md0 =g0 Faire :
Calcul du minimum unidirectionnel :F(xk+ρkdk)≤F(xk+ρdk)∀ρ∈R xk+1 =xk+ρkdk
gk+1=∇F(xk) Mdk+1 =gk+1 Tant quekgkk ≥kg0k
Par rapport au gradient ordinaire cet algorithme n’exige qu’une opération supplémentaire : la résolu- tion d’un système linéaire de matriceMque l’on choisira de façon que ce système ait une résolution rapide par un algorithme de type pivot de Gauss.
Notes : Pour une fonction convexe quelconque on peut préconditionner en utilisant une matrice fixe ou variable. Cette matrice peut être par exemple le Hessien d’une approximation simple de la fonction F(x).
On vérifiera que si on choisitM=HF(x)on obtient la méthode de Newton.
D’une manière générale introduire un préconditionnement équivaut à définir le gradient en utilisant un autre produit scalaire que le produit scalaire canonique.
Question 4
Étude d’une chaîne pesante
On considère une“chaîne pesante”, i.e. un système den+ 1barres articulées, de même longueurLet
de même masse (pour simplifier l’écriture...), reliées sans frottement par des rotules1. C’est une étude préliminaire à un problème proche mais plus complexe : l’étude de l’équilibre des toiles pesantes et tendues.
La barre 1et la barre n+ 1sont fixées à leur extrémité (Fig. (3)). On suppose que le système est soumis seulement à son poids et on veut déterminer la position d’équilibre. On paramètre la posi- tion du système par la position des nœuds ((xi, yi), i = 1, . . . , n) et on suppose fixées(x0, y0) et (xn+1, yn+1).
On pose
U∈R2n= (x1, y1. . . , xi, yi, . . . , x,yn,)
Les barres sont indéformables ; l’ensembleEdespositions admissiblesest donc défini par E ={U∈R2n/(xi−xi−1)2+ (yi−yi−1)2=L2, i= 1, . . . , n+ 1}
D’après leprincipe du minimum de l’énergie, la position d’équilibre des nœuds est, parmi toutes les positions admissibles, celle pour laquelle le centre de gravité du système est le plus bas possible.
• Écrire ce problème comme un problème d’optimisation d’une fonction linéairehP,Ui sous des
Position de la chaîne après 531 itérations
0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0
−0.643
−0.572
−0.500
−0.429
−0.357
−0.286
−0.214
−0.143
−0.071 0.000
FIG. 2 – Position d’équilibre de la chaîne
contraintes quadratiques d’égalitéhBiU,Ui = 1, i = 1, . . . , n+ 1, où le vecteurPet les matrices Bi sont à préciser.
• Pour résoudre de façon approchée ce problème on utilise une méthode de “pénalisation” : cela revient à supposer que les barres sont légèrement déformables et à introduire dans la formulation du problème une pseudo-énergie de déformation de ces barres.
On choisit, pour la barrei, l’expression suivante de la pseudo-énergie de déformation Ei = 1
4((xi−xi−1)2+ (yi−yi−1)2−L2)2
1i.e. elle tourne librement autour de leur point d’articulation
où, lecoefficient de pénalisationest un nombre petit. On montre (cf. chapitre 4) que le minimum libre de la fonction énergie
J(U) =hP,Ui+
n+1
X
i=1
Ei
est proche du minimum du problème initial.
Montrer que la fonctionJ(U)est coercive. Est-elle convexe ?
• On applique la méthode du gradient à ce problème, comparer les temps de calcul de différentes variantes pour différents coefficients de pénalisation :
−Sans préconditionnement et avec un calcul précis du minimum unidirectionnel.
−En fixant le pasρk(comment le faire sans risque de divergence ?).
−En préconditionnant par la matrice de la partie quadratique de la fonctionF(x). Dans ce cas le pas ρkpeut être rapidement fixé à1, pourquoi ?
−Avez vous une autre idée ?
Les résultats ci-dessous sont obtenus avec= 10−3, le nombre d’appel de fonction dépend de la précision, exigée ou non par la méthode, de l’optimisation unidimensionnelle :
−Méthode du gradient avec pas optimal : 1430 itérations, 58487 appels de fonctions ;
−Méthode du gradient préconditionné avec pas fixe : 531 itérations, 608 appels de fonctions ;
−Méthode du gradient conjugué : 31 itérations, 1013 appels de fonctions ;
0 100 200 300 400 500 600
−14
−12
−10
−8
−6
−4
−2 0 2
Evolution de la norme du gradient, échelle logarithmique
FIG. 3 – Méthode du gradient préconditionné : Évolution de la norme du gradient