Analyse de convergence — Définitions et ordre de convergence

Objectifs d'apprentissage

À la fin de cette leçon, vous serez en mesure de :

  • Définir l'ordre de convergence d'une méthode itérative
  • Calculer la constante asymptotique pour différentes méthodes
  • Comparer les vitesses de convergence des méthodes étudiées

Motivation

Nous avons vu plusieurs méthodes pour résoudre F(x)=0F(x) = 0. Dans nos exemples, nous avons observé que :

  • La bissection converge en ~11 itérations
  • L'interpolation linéaire converge en ~8 itérations
  • La sécante converge en ~5 itérations
  • Newton converge en ~3 itérations

Pourquoi ces différences ? Est-ce un hasard lié à notre exemple, ou y a-t-il une explication théorique ?

Pour répondre, nous devons étudier à quelle vitesse l'erreur diminue d'une itération à l'autre.


Rappel : suites convergentes

Une suite numérique {xn}\{x_n\} est une séquence de nombres réels indexés par nn :

x0,x1,x2,x3,,xn,x_0, x_1, x_2, x_3, \ldots, x_n, \ldots

Une suite converge vers une limite LL si ses termes se rapprochent arbitrairement de LL quand nn devient grand. On note :

limnxn=L\lim_{n \to \infty} x_n = L

Formellement, cela signifie que pour tout ε>0\varepsilon > 0, il existe un rang NN tel que xnL<ε|x_n - L| < \varepsilon pour tout nNn \geq N.

SuiteLimiteComportement
xn=1nx_n = \frac{1}{n}0Décroît vers 0
xn=12nx_n = \frac{1}{2^n}0Décroît rapidement vers 0
xn=1+(1)nnx_n = 1 + \frac{(-1)^n}{n}1Oscille en se rapprochant de 1
xn=(1)nx_n = (-1)^nDiverge (oscille entre -1 et 1)

Dans nos méthodes itératives, nous générons une suite {xn}\{x_n\} qui converge vers la racine xx^*. La question est : à quelle vitesse ?


L'erreur signée

Supposons qu'une méthode itérative génère une suite {xn}\{x_n\} convergeant vers xx^*.

L'erreur signée à l'itération nn est la différence entre notre approximation et la vraie solution :

en=xnxe_n = x_n - x^*

L'erreur peut être positive ou négative (d'où « signée »). En pratique, on ne connaît pas xx^* exactement, mais on peut étudier le comportement théorique de ene_n.

La question fondamentale est : quelle est la relation entre en+1e_{n+1} et ene_n ?


Convergence linéaire

La forme la plus simple est celle où l'erreur est multipliée par un facteur constant à chaque itération :

en+1Cene_{n+1} \approx C \cdot e_n

0<C<10 < C < 1 est une constante. On parle alors de convergence linéaire.

Exemple avec C = 0.5

Si l'erreur initiale est e0=1e_0 = 1 et C=0.5C = 0.5 :

Itération nErreur eₙCalcul
01Valeur initiale
10.51 × 0.5
20.250.5 × 0.5
30.1250.25 × 0.5
40.06250.125 × 0.5
10≈ 0.0011 × (0.5)¹⁰

Par récurrence, on obtient en=Cne0e_n = C^n \cdot e_0. Puisque 0<C<10 < C < 1, on a Cn0C^n \to 0, donc la méthode converge.

Observation : Pour gagner une décimale de précision (diviser l'erreur par 10), il faut environ 3-4 itérations.


Convergence quadratique

Une convergence plus rapide se produit quand l'erreur est élevée au carré :

en+1Cen2e_{n+1} \approx C \cdot e_n^2

On parle alors de convergence quadratique.

Exemple avec C = 1

Si l'erreur initiale est e0=0.1e_0 = 0.1 :

Itération nErreur eₙCalculDécimales correctes
00.1Valeur initiale1
10.01(0.1)²2
20.0001(0.01)²4
30.00000001(0.0001)²8
410⁻¹⁶(10⁻⁸)²16 (précision machine)

Avec la convergence quadratique, le nombre de décimales correctes double à chaque itération. C'est pour cela que Newton converge si vite : 4 itérations suffisent pour atteindre la précision machine.

Formule générale

Par récurrence, on peut montrer que :

ene02n|e_n| \approx |e_0|^{2^n}

Forme générale de la décroissance de l'erreur

Comparons les deux types de convergence en regardant comment logen\log|e_n| évolue.

Convergence linéaire

On a en=Cne0|e_n| = C^n \cdot |e_0|, donc :

logen=nlogC+loge0\log|e_n| = n \log C + \log|e_0|

Le logarithme de l'erreur décroît linéairement en nn.

Convergence quadratique

On a ene02n|e_n| \approx |e_0|^{2^n}, donc :

logen2nloge0\log|e_n| \approx 2^n \cdot \log|e_0|

Le logarithme de l'erreur décroît exponentiellement en nn, comme 2n2^n.

Généralisation pour p > 1

Pour une convergence d'ordre p>1p > 1, on observe que logen\log|e_n| décroît comme pnp^n.

Cela signifie que l'erreur a la forme :

enεpn|e_n| \approx \varepsilon^{p^n}

ε\varepsilon est une petite constante (liée à l'erreur initiale).


Définition formelle

Nous pouvons maintenant généraliser avec une définition formelle.

🚨

Ordre de convergence

Soit {xn}\{x_n\} une suite convergeant vers xx^* et en=xnxe_n = x_n - x^*.

S'il existe deux constantes positives CC et pp telles que :

limnen+1enp=C\lim_{n \to \infty} \frac{|e_{n+1}|}{|e_n|^p} = C

on dit que la convergence est d'ordre p avec une constante asymptotique C.

Cette définition formalise l'idée que en+1Cenpe_{n+1} \approx C \cdot e_n^p.

Nomenclature

Ordre pNomComportement
p=1p = 1Convergence linéaireL'erreur est multipliée par CC
1<p<21 < p < 2Convergence superlinéairePlus rapide que linéaire
p=2p = 2Convergence quadratiqueL'erreur est élevée au carré

Comment déterminer l'ordre ?

En pratique, on procède par essais :

  1. Essayer p = 1 : calculer limnen+1en\displaystyle\lim_{n \to \infty} \frac{|e_{n+1}|}{|e_n|}

    • Si on obtient 0<C<10 < C < 1 → convergence linéaire
    • Si on obtient C=0C = 0 → essayer p = 2
  2. Essayer p = 2 : calculer limnen+1en2\displaystyle\lim_{n \to \infty} \frac{|e_{n+1}|}{|e_n|^2}

    • Si on obtient C0C \neq 0 → convergence quadratique

Application : méthode de bissection

Rappelons que l'intervalle de confiance se réduit de moitié à chaque itération :

ΔX(n)=X2X12n\Delta X^{(n)} = \frac{|X_2 - X_1|}{2^n}

L'erreur est bornée par enΔX(n)|e_n| \leq \Delta X^{(n)}.

Calcul de l'ordre

Avec p=1p = 1, calculons le rapport des erreurs successives :

en+1en=ΔX(n+1)ΔX(n)=X2X1/2n+1X2X1/2n=2n2n+1=12\frac{|e_{n+1}|}{|e_n|} = \frac{\Delta X^{(n+1)}}{\Delta X^{(n)}} = \frac{|X_2 - X_1|/2^{n+1}}{|X_2 - X_1|/2^n} = \frac{2^n}{2^{n+1}} = \frac{1}{2}

Conclusion : La bissection a une convergence linéaire (p=1p = 1) avec C=1/2C = 1/2.

À chaque itération, l'erreur est divisée par 2. Pour réduire l'erreur d'un facteur 1000 (≈ 3 décimales), il faut environ 10 itérations car 210=1024>10002^{10} = 1024 > 1000.


Application : méthode d'interpolation linéaire

La méthode d'interpolation linéaire (Regula Falsi) a également une convergence linéaire (p=1p = 1), mais avec une constante CC qui dépend de la fonction.

Le phénomène de la borne bloquée

Rappelons que Regula Falsi garde toujours deux points de signes opposés. Quand la fonction est convexe (ou concave) au voisinage de la racine, une des deux bornes reste souvent « bloquée » pendant plusieurs itérations tandis que l'autre se déplace.

Par exemple, si FF est convexe et croissante, la borne inférieure reste fixe et seule la borne supérieure converge vers la racine.

Analyse de l'erreur

Pour déterminer la constante CC, on analyse l'erreur sur la borne mobile. Notons :

  • aa : la borne fixe (bloquée)
  • xnx_n : la borne mobile à l'itération nn
  • en=xnxe_n = x_n - x^* : l'erreur de la borne mobile
  • ea=axe_a = a - x^* : l'erreur de la borne fixe (constante !)

Point de départ : On développe F(xn)F(x_n) et F(a)F(a) en série de Taylor autour de la racine xx^*. Comme F(x)=0F(x^*) = 0 :

F(xn)=enF(x)+en22F(ξn)enF(x)F(x_n) = e_n \cdot F'(x^*) + \frac{e_n^2}{2} F''(\xi_n) \approx e_n \cdot F'(x^*)
F(a)=eaF(x)+ea22F(ξa)eaF(x)+ea22F(x)F(a) = e_a \cdot F'(x^*) + \frac{e_a^2}{2} F''(\xi_a) \approx e_a \cdot F'(x^*) + \frac{e_a^2}{2} F''(x^*)

Pour F(xn)F(x_n), on néglige le terme en en2e_n^2 car en0e_n \to 0. Mais pour F(a)F(a), on garde le terme en ea2e_a^2 car eae_a reste constant (la borne est bloquée).

La formule de Regula Falsi donne :

xn+1=xnF(xn)xnaF(xn)F(a)x_{n+1} = x_n - F(x_n) \cdot \frac{x_n - a}{F(x_n) - F(a)}

Calcul de l'erreur en+1=xn+1xe_{n+1} = x_{n+1} - x^* : En substituant les développements de Taylor et en simplifiant (exercice !), on obtient :

en+1enea2F(x)F(x)e_{n+1} \approx e_n \cdot \frac{e_a}{2} \cdot \frac{F''(x^*)}{F'(x^*)}

Cette formule montre que en+1e_{n+1} dépend de :

  • ene_n : l'erreur actuelle de la borne mobile
  • eae_a : l'erreur de la borne fixe (qui reste constante)
  • Le rapport F(x)F(x)\frac{F''(x^*)}{F'(x^*)} : la courbure relative de FF

Résultat

La constante asymptotique est donc :

C=ea2F(x)F(x)C = \frac{|e_a|}{2} \cdot \frac{|F''(x^*)|}{|F'(x^*)|}

Cette constante dépend de deux facteurs :

  • ea|e_a| : la distance entre la borne bloquée et la racine
  • F(x)F(x)\frac{|F''(x^*)|}{|F'(x^*)|} : la courbure relative de FF à la racine

Interprétation :

  • Plus eae_a est petit (borne fixe proche de la racine) → CC petit → convergence rapide
  • Si F0F'' \approx 0 (fonction presque linéaire) → C0C \approx 0 → convergence rapide
  • Si FF'' est grand et eae_a grand → CC proche de 1 → convergence lente

Comparaison avec la bissection

Condition sur CComparaison
C>1/2C > 1/2Regula Falsi plus lente que bissection
C<1/2C < 1/2Regula Falsi plus rapide que bissection

Application : méthode de la sécante

La sécante utilise la même formule que Regula Falsi, mais garde les deux points avec F(X)|F(X)| le plus petit (au lieu des signes opposés). Cette différence change radicalement l'ordre de convergence.

Pourquoi un ordre différent de Regula Falsi ?

Dans Regula Falsi, une borne reste bloquée → l'erreur diminue d'un seul côté → convergence linéaire.

Dans la sécante, les deux points se rapprochent de la racine à chaque itération. L'information des deux dernières approximations est utilisée, ce qui accélère la convergence.

Une récurrence à deux termes

Pour Newton, l'erreur en+1e_{n+1} ne dépend que de ene_n :

en+1Cen2e_{n+1} \approx C \cdot e_n^2

Pour la sécante, la formule utilise XnX_n et Xn1X_{n-1}. On peut montrer (par développement de Taylor) que l'erreur satisfait une récurrence faisant intervenir les deux dernières erreurs :

en+1Cenen1e_{n+1} \approx C \cdot e_n \cdot e_{n-1}

C'est un produit, pas une puissance ! Cette structure particulière va donner un ordre de convergence inhabituel.

Résolution de la récurrence

Pour trouver l'ordre de convergence pp, on utilise la forme générale vue précédemment.

Rappel : Pour une convergence d'ordre pp, l'erreur décroît comme :

enεpn|e_n| \approx \varepsilon^{p^n}

Ici, on ne connaît pas pp, c'est ce qu'on cherche ! Posons p=αp = \alpha (inconnue).

Substitution : En remplaçant dans en+1Cenen1e_{n+1} \approx C \cdot e_n \cdot e_{n-1} :

εαn+1Cεαnεαn1\varepsilon^{\alpha^{n+1}} \approx C \cdot \varepsilon^{\alpha^n} \cdot \varepsilon^{\alpha^{n-1}}

En comparant les exposants de ε\varepsilon (et en ignorant la constante CC pour l'analyse asymptotique) :

αn+1=αn+αn1\alpha^{n+1} = \alpha^n + \alpha^{n-1}

Simplification : En divisant par αn1\alpha^{n-1} :

α2=α+1\alpha^2 = \alpha + 1

Le nombre d'or apparaît

L'équation α2=α+1\alpha^2 = \alpha + 1 est l'équation caractéristique de la suite de Fibonacci !

Ses solutions sont :

α=1±52\alpha = \frac{1 \pm \sqrt{5}}{2}

La solution positive est le nombre d'or :

φ=1+521.618\varphi = \frac{1 + \sqrt{5}}{2} \approx 1.618

Puisque α\alpha correspond à l'ordre de convergence pp, on a :

p=φ1.618p = \varphi \approx 1.618

Interprétation

L'ordre de convergence de la sécante est p1.618p \approx 1.618, ce qui en fait une méthode superlinéaire :

  • Plus rapide que la bissection et Regula Falsi (p=1p = 1)
  • Moins rapide que Newton (p=2p = 2)

Mais attention : chaque itération de la sécante ne nécessite qu'une seule évaluation de FF, contre deux pour Newton (FF et FF'). Cette économie compense partiellement l'ordre inférieur.


Comparaison des méthodes

Coût par itération

MéthodeÉvaluations de FÉvaluations de F'Total
Bissection101
Interpolation linéaire101
Sécante101
Newton112

Efficacité (ordre / coût)

MéthodeOrdre pCoûtEfficacité
Bissection111.00
Interpolation linéaire111.00
Sécante1.61811.618
Newton221.00

En termes d'efficacité pure, la sécante est la meilleure ! Cependant, Newton reste souvent préféré car sa convergence quadratique est plus prévisible.

Les quatre récurrences tracées ci-dessus sont celles établies dans cette leçon : en+1=0,5ene_{n+1} = 0{,}5\,e_n pour la bissection, en+1=Cene_{n+1} = C e_n pour l'interpolation linéaire, en+1Cen1,618e_{n+1} \approx C e_n^{1{,}618} pour la sécante et en+1=Cen2e_{n+1} = C e_n^2 pour Newton. En échelle logarithmique, l'ordre se lit directement dans la forme de la courbe : une droite signale un ordre 1, une courbe qui s'incurve vers le bas un ordre supérieur à 1.


L'ordre domine la constante

Une question naturelle : vaut-il mieux un grand ordre pp ou une petite constante CC ?

Réponse : L'ordre est beaucoup plus important.

Exemple

Comparons deux méthodes avec e0=0.01e_0 = 0.01 :

  • Méthode A : linéaire (p=1p = 1) avec C=0.1C = 0.1 (excellente constante)
  • Méthode B : quadratique (p=2p = 2) avec C=10C = 10 (mauvaise constante)
ItérationMéthode A (p=1, C=0.1)Méthode B (p=2, C=10)
00.010.01
10.0010.001
20.00010.00001
30.0000110⁻⁹
40.00000110⁻¹⁷

Une fois l'erreur suffisamment petite, la méthode d'ordre supérieur écrase l'autre, quelle que soit la constante.

💡

Conseil pratique

On combine souvent les méthodes : d'abord une méthode robuste (bissection) pour se rapprocher de la racine, puis Newton pour la précision finale.


Résumé

MéthodeOrdre pConstante CCaractéristique
Bissection1 (linéaire)1/2Prévisible, robuste
Interpolation linéaire1 (linéaire)Dépend de F'', F'Variable selon la courbure
Sécante≈ 1.618 (nombre d'or)Meilleure efficacité

Points clés

  1. Erreur signée : en=xnxe_n = x_n - x^*

  2. Convergence linéaire (p=1p = 1) : en+1Cene_{n+1} \approx C \cdot e_n

  3. Convergence quadratique (p=2p = 2) : en+1Cen2e_{n+1} \approx C \cdot e_n^2 — les décimales correctes doublent

  4. L'ordre p est plus important que la constante C

  5. La sécante a l'ordre du nombre d'or (≈ 1.618)