Descente en gradient et descente en gradient conjugué

11

Pour un projet, je dois implémenter ces deux méthodes et comparer leurs performances sur différentes fonctions.

Il semble que la méthode du gradient conjugué soit destinée à résoudre des systèmes d'équations linéaires du for

UNEX=b

Où est une matrice n par n symétrique, définie positive et réelle.UNE

D'un autre côté, quand je lis sur la descente de gradient, je vois l'exemple de la fonction Rosenbrock , qui est

F(X1,X2)=(1-X1)2+100(X2-X12)2

Selon moi, je ne peux pas résoudre ce problème avec une méthode de gradient conjugué. Ou est-ce que je manque quelque chose?

Philipp
la source

Réponses:

14

La descente par gradient et la méthode du gradient conjugué sont deux algorithmes pour minimiser les fonctions non linéaires, c'est-à-dire des fonctions comme la fonction de Rosenbrock

F(X1,X2)=(1-X1)2+100(X2-X12)2

ou une fonction quadratique multivariée (dans ce cas avec un terme quadratique symétrique)

F(X)=12XTUNETUNEX-bTUNEX.

Les deux algorithmes sont également itératifs et basés sur la direction de la recherche. Pour le reste de ce post, et seront des vecteurs de longueur ; et sont des scalaires, et les exposants indiquent l'indice d'itération. La descente de gradient et la méthode du gradient conjugué peuvent être utilisées pour trouver la valeur qui résoutd n f ( x ) α x XnF(X)αX

minF(X)

Les deux méthodes partent d'une supposition initiale, , puis calculent l'itération suivante à l'aide d'une fonction du formulaireX0

Xje+1=Xje+αjeje.

En d'autres termes, la valeur suivante de est trouvée en commençant à l'emplacement actuel et en se déplaçant dans la direction de recherche sur une certaine distance . Dans les deux méthodes, la distance à parcourir peut être trouvée par une recherche de ligne (minimisez sur ). D'autres critères peuvent également être appliqués. Là où les deux méthodes diffèrent, c'est dans leur choix de . Pour la méthode du gradient, . Pour la méthode du gradient conjugué, la procédure de Grahm-Schmidt est utilisée pour orthogonaliser les vecteurs de gradient. En particulier, , mais alors est égalx i d i α i f ( x i + α i d i ) α i d i d i = - f ( x i ) d 0 = - f ( x 0 ) d 1 - f ( x 1 )XXjejeαjeF(Xje+αjeje)αjejeje=-F(Xje)0=-F(X0)1-F(X1) moins la projection de ce vecteur sur telle que . Chaque vecteur de gradient suivant est orthogonalisé par rapport à tous les précédents, ce qui conduit à de très belles propriétés pour la fonction quadratique ci-dessus.0(1)T0=0

La fonction quadratique ci-dessus (et les formulations associées) est également à l'origine de la discussion de la résolution de utilisant la méthode du gradient conjugué, car le minimum de cette est atteint au point où .UNEX=bF(X)XUNEX=b

Elaine Hale
la source
9

Dans ce contexte, les deux méthodes peuvent être considérées comme des problèmes de minimisation de la fonction: Lorsque est symétrique, alors est minimisé lorsque .

ϕ(X)=12XTUNEX-XTb
UNEϕUNEX=b

La descente en gradient est la méthode qui recherche de manière itérative un minimiseur en regardant dans la direction du gradient. Le gradient conjugué est similaire, mais les directions de recherche doivent également être orthogonales les unes aux autres dans le sens où .pjeTUNEpj=0je,j

Bill Barth
la source