Comparaison de diff´ erentes m´ ethodes d’optimisa- tion sans contrainte
1 Banane de Rosenbrock
L’objectif de ce TP est de comparer diff´erentes m´ethodes d’optimisation, afin de bien comprendre les diff´erences fondamentales entre les m´ethodes de relaxation, de descente de gradient `a pas constant, et de descente de gradient `a pas optimal.
A cette fin, nous allons consid´erer une fonction classique en optimisation, appel´ee souvent “banane de Rosenbrock” :
J(x) =J(x1, x2) = (x1−1)2+ 10(x21−x2)2 (1) Cette fonction est-elle convexe ? En quel pointJ est elle minimum ? Calculer∇J(x) puis∇2J(x).
Visualiser cette fonction en 3D avec matlab. On utilisera pour cela la fonction meshgrid.
Visualiser ensuite en 2D cette fonction, i.e. comme une image (le niveau de gris d’un pixel repr´esente la valeur de la fonction). On pourra utiliser la fonction imagesc.
Commentaires ? Expliquer pourquoi la fonctionJ n’est pas facile `a minimi- ser.
2 Pr´ eliminaires : optimisation en dimension 1
Comme rappel´e en cours, la dimension 1 est un cas sp´ecial pour l’optimi- sation (essentiellement dˆu au fait que R est un ensemble ordonn´e). De nom- breux algorithmes d’optimisation (comme le gradient `a pas optimal) utilisent une m´ethode d’optimisation en dimension 1.
Ecrire une fonction qui prends en entr´ee un pointxet un vecteurd, et qui calcule le minimum de la fonctionf :=t7→J(x+dt) en utilisant la m´ethode de Newton (penser `a calculerf0(t) =h∇J(x+td), dietf00(t) =h∇2J(x+td)d, di).
3 Minimisation de J
3.1 M´ ethode de relaxation
Impl´ementer la m´ethode de relaxation. L’utiliser pour la fonctionJ, en par- tant du point (−1,1). Afficher la trajectoire des points calcul´es successivement par la m´ethode.
1
3.2 M´ ethode du gradient ` a pas constant
Impl´ementer la m´ethode du gradient `a pas constant. L’utiliser pour la fonc- tionJ, en partant du point (−1,1). Afficher la trajectoire des points calcul´es successivement par la m´ethode. Comment faut-il r´egler le pas pour arriver vrai- ment au minimum ?
3.3 M´ ethode du gradient ` a pas optimal
Impl´ementer la m´ethode du gradient `a pas optimal. L’utiliser pour la fonc- tionJ, en partant du point (−1,1). Afficher la trajectoire des points calcul´es successivement par la m´ethode. Comparer les temps de calcul avec la m´ethode pr´ec´edente.
3.4 M´ ethode de Newton
Impl´ementer la m´ethodes de Newton. L’utiliser pour la fonctionJ, en partant du point (−1,1). Afficher la trajectoire des points calcul´es successivement par la m´ethode.
3.5 M´ ethode du gradient conjugu´ e
Impl´ementer la m´ethodes du gradient conjugu´ee (version Polack-Ribi`ere).
L’utiliser pour la fonctionJ, en partant du point (−1,1). Afficher la trajectoire des points calcul´es successivement par la m´ethode.
3.6 Comparaisons
Comparer les diff´erentes trajectoires obtenues. Commentaires (nombres d’it´erations, temps de calcul, . . .).
2