Méthode quasi-Newton
Une méthode quasi-Newton est une méthode numérique utilisée pour résoudre des systèmes d'équations non linéaires, reposant sur un principe similaire à la méthode de Newton. Typiquement, le problème que résout une méthode quasi-Newton est la recherche d'un zéro d'une fonction à valeurs vectorielles dont on ne connaît pas forcément l'expression analytique de la matrice jacobienne ou de la hessienne.
Principe de la méthode quasi-Newton
modifierLe problème posé est le même que celui d'une méthode de Newton : rechercher, pour une fonction , les solutions x tels que f (x) = 0. Pour de tels problèmes, il est en général possible d'utiliser la méthode de Newton-Raphson, dont les itérations sont
où Df(x) désigne la matrice jacobienne de f en x. En dimension 1, on retrouve l'expression de la méthode de Newton-Raphson classique. Celle-ci pose quelques problèmes pratiques :
- si la dimension n du système est grande, le calcul de la matrice jacobienne peut prendre trop de temps de calcul,
- de même, la résolution du système linéaire Df(xk)−1 • f(xk) est une opération coûteuse en calculs.
L'idée des méthodes quasi-Newton est de remplacer Df(xk)−1 par une matrice Bk plus facile à calculer, et à laquelle on peut imposer certaines propriétés. Le fait qu'elle soit une approximation de l'inverse du jacobien se traduit par la relation de quasi-Newton
- ,
ce qui est manifestement la généralisation du coefficient utilisé dans la méthode de la sécante.
Les itérations des méthodes de quasi-Newton sont alors de la forme suivante :
Le paramètre réel ρk est un coefficient choisi pour optimiser la convergence, et Bk est mise à jour à chaque itération selon une formule particulière. Selon les méthodes de quasi-Newton, la formule de mise à jour varie.
Souvent on applique la méthode à la recherche d'un minimum d'une fonction g(x) que l'on traduit en la recherche de f(x) := ∇g(x) = 0. Dans ce cas il est naturel d'imposer à la matrice Bk qu'elle soit symétrique, car elle correspond alors à la matrice hessienne de g.
Méthode de Broyden
modifierIci la mise à jour de la matrice Bk s'écrit
avec sk = xk+1 – xk, yk = f (xk+1) – f (xk). Cette méthode s'applique au cas général où le jacobien n'a pas de raison d'être symétrique.
Méthode de Davidon-Fletcher-Powell
modifierC'est historiquement la première méthode quasi-Newton appliquée à l'optimisation, c'est-à-dire au calcul d'un extremum d'une fonction. Par conséquent, elle impose la symétrie des matrices Bk. En effet, ici ces matrices sont censées représenter une approximation de l'inverse de la matrice hessienne de la fonction à minimiser. La symétrie de ces approximations est assurée par le fait qu'on utilise une mise à jour d'une forme particulièrement simple, .
On initialise B0 = I et x0 assez proche de la solution qu'on cherche. Les itérations sont les suivantes :
- On calcule d'abord la direction de déplacement dk = –Bk f (xk)
- le coefficient ρk s'en déduit, il est nécessairement strictement positif et choisi pour minimiser f (xk + ρk dk)
- on trouve le k+1e terme de la suite xk+1 = xk + ρk dk
- Bk+1 est calculé par la formule de Davidon-Fletcher-Powell
- avec, comme ci-dessus, sk = xk+1 – xk, yk = f (xk+1) – f (xk).
La méthode DFP a des propriétés satisfaisantes, mais dans la pratique elle est aujourd'hui en général remplacée par la méthode de Broyden-Fletcher-Goldfard-Shanno (BFGS) qui est encore plus efficace.[réf. nécessaire]
Voir aussi
modifierSources
modifier- Claude Brezinski et Michela Redivo-Zaglia, Méthodes numériques itératives, Éditions Ellipses, coll. « Mathématiques à l'université », , 320 p. (présentation en ligne)