Méthode de surrelaxation successive

En analyse numérique, la méthode de surrelaxation successive (en anglais : Successive Overrelaxation Method, abrégée en SOR) est une variante de la méthode de Gauss-Seidel pour résoudre un système d'équations linéaires. La convergence de cet algorithme est généralement plus rapide. Une approche similaire peut être appliquée à bon nombre de méthodes itératives.

Selon David Kincaid[1], cette méthode aurait été découverte simultanément par David M. Young, Jr. (en) et Stan Frankel en 1950 dans le but de résoudre automatiquement des systèmes linéaires avec des ordinateurs ; mais les méthodes de surrelaxations étaient déjà utilisées auparavant : qu'il suffise de citer la méthode de Lewis Fry Richardson ou la méthode de R. V. Southwell (1946). Ces méthodes étaient conçues pour le calcul à la main et requéraient une expertise certaine afin d'assurer la convergence. Ces méthodes ne pouvaient être retranscrites sur ordinateur. Ces limitations ont été discutées dans la thèse de David Young[2]

Formulation

On considère un système linéaire de n équations avec n inconnues notées x (qui est un vecteur) :

où :

A étant la somme d'une matrice diagonale notée D et de deux matrices triangulaires (respectivement inférieure et supérieure) notées L et U :

le système d'équations linéaires peut être reformulé par :

pour tout ω > 0.

La méthode de surrelaxation successive est une méthode itérative initialisée par le choix d'un arbitraire, et où chaque itération consiste à déterminer à l'aide de selon la formule suivante :

La matrice de gauche (D+ωL) étant triangulaire, il est aisé de calculer par :

Le choix du facteur de relaxation n'est pas trivial et dépend des coefficients de la matrice. Pour une matrice définie positive, on peut démontrer que l'algorithme est convergent pour tout . Toutefois, on veut une convergence aussi rapide que possible. Notons que pour un facteur de relaxation de 1, on tombe sur la méthode de Gauss-Seidel

Algorithme

Entrée: A, b, ω
Sortie:

On choisit une solution initiale arbitraire . Répéter jusqu'à convergence

Boucler i de 1 à n
Boucler j de 1 à i − 1
Fin (boucle j)
Boucler j de i + 1 à n
Fin (boucle j)
Fin (boucle i)
Vérifier la convergence.

Fin (boucle répétition)

Note:
peut aussi être écrit . Ceci économise une multiplication à chaque itération.

Autre applications de la méthode

Une technique similaire peut être utilisée pour toute méthode itérative. On suppose que l'itération peut être écrite sous la forme :

alors la méthode modifiée devient :

ou de manière équivalente :

En pratique, le choix est utilisé pour accélérer la convergence tandis que le choix est souvent utilisé pour faire converger un processus divergent.

Il existe de nombreuses méthodes pour décider de la valeur à donner au paramètre , basées sur le comportement de l'algorithme. En principe ces méthodes permettent d'avoir une convergence superlinéaire dans beaucoup de cas, mais elles peuvent échouer dans certains cas.

Voir aussi

Notes

  1. ↑ (en) David R. Kincaid et M. Feistauer (dir.), Numerical Mathematics and Advanced Applications, Berlin, Heidelberg, Springer, (ISBN 978-3-642-62288-5, DOI 10.1007/978-3-642-18775-9_52), « Celebrating Fifty Years of David M. Young’s Successive Overrelaxation Method », p. 549–558
  2. ↑ David M. Young, Iterative methods for solving partial difference equations of elliptical type, vol. PhD thesis, Harvard University, (lire en ligne)

Références

Liens externes

  • icône décorative Portail de l’algèbre
  • icône décorative Portail de l'informatique théorique