La méthode de Newton est très efficace pour estimer les zéros d'une fonction. En utilisant la notion de dérivée, elle parvient souvent à localiser un zéro d'une façon très précise en quelques étapes seulement. Pour qu'elle puisse efficacement localiser un zéro, il faut lui fournir une valeur de départ xo qui soit suffisamment près du zéro en question. C'est précisément cette valeur initiale xo qui est à l'origine des fractales de Newton. Rappelons d'abord cette méthode pour estimer les zéros d'une fonction.

Si f(x) a un zéro suffisamment près de x0, la suite des nombres réels définie à partir de l'équation


converge vers le zéro en question pourvu que f '(x0), f '(x1), f '(x2),... existent et soient différents de 0.


Prenons f(x) = x5 - 1. La fonction possède 5 zéros sur l'ensemble des nombres complexes: -0,809 + 0,588i ; 0,309 + 0,951i ; 1 ; 0,309 - 0,951i ; -0,809 - 0,588i. Si on appliquait la méthode de Newton à f(x) en utilisant une quelconque valeur pour xo, elle convergerait fort probablement vers l'un ou l'autre des 5 zéros de la fonction. Lorsqu'on utilise une valeur initiale suffisamment près d'un zéro, la méthode de Newton converge en général très rapidement vers ce zéro. Dans le cas contraire, elle peut tout aussi bien converger vers un autre zéro, pas nécessairement celui qui est le plus près de xo.

Il serait intéressant de localiser sur le plan complexe toutes les valeurs initiales xo pour lesquelles la méthode de Newton converge vers un même zéro. En utilisant un ordinateur, on peut trouver une solution à ce problème en colorant de la même couleur tous les points xo du plan complexe qui conduisent vers un même zéro. La coloration permet de mettre en évidence différentes zones d'attraction (ou bassins d'attraction) liées aux valeurs de xo. Il existe plusieurs logiciel qui permettent de résoudre ce genre de problème. Voici une image obtenue à l'aide du logiciel "Fractal Explorer" à partir de la fonction du haut. L'image est surprenante.

Toutes valeurs initiales xo choisies dans les régions colorées en jaune font que la méthode de Newton converge vers -0,809+0,588i. Elle converge vers 0,309+0,951i pour des valeurs initiales choisies dans les régions colorées en vert. Il en est de même pour les autres couleurs.

L'image obtenue nous fait prendre conscience de la grande sensibilité de la méthode. On note que certaines zones sur les diagonales qui séparent les zéros sont d'un type particulier. Ces zones sont constituées de figures qui présentent une propriété intéressante d'autosimilarité. La structure se reproduit d'une façon identique à toutes les échelles d'observation. C'est ce que les mathématiciens appellent une structure fractale. En agrandissant ces zones, on voit très bien son caractère d'autosimilarité.

Suggestions de quelques outils d'exploration

  • Il existe plusieurs logiciels qui permettent de tracer des fractales de Newton et que l'on peut télécharger. En général, ces logiciels font l'étude de cette structure à différents niveaux d'observation. Je vous suggère "Ultra Fractal " pour ceux qui travaillent sur un PC (compatible IBM) avec Windows.

  • Il est possible d'utiliser le logiciel Maple pour ce genre d'étude. Il suffit de copier le programme (en rouge) sur une feuille de travail du logiciel. Maple 7 gère très mal les étendues contenant des décimales dans la macro-commande plot3d. Écrivez -15/10..15/10 plutôt que -1.5..1.5.

    restart:
    couleur := proc(a, b)
    local x, i;
    x := a+b*I;
    for i from 0 to 30 while abs(x^n-1) >= 0.01 do x := x-(x^n-1)/(n*x^(n-1)) od;
    i/30
    end:

    n :=5:
    # Indiquez le degré du polynôme

    plot3d(0, (-15/10) .. (15/10), (-15/10) .. (15/10), orientation=[-90,0], axes=framed, grid=[100,100], style=patchnogrid, scaling=constrained, color=couleur);


    Par exemple si on considère la fonction f(x) = x5 - 1 et que l'on prend comme valeurs de xo des nombres complexes dont les parties réelle et imaginaire sont entre -1.5 et 1.5, on obtient l'image du bas à gauche. La coloration est fonction de la vitesse de convergence de l'algorithme vers l'un ou l'autre des zéros de la fonction pour chacune des valeurs initiales xo associées à la grille. L'ordinateur utilisé doit être rapide et doit disposer de beaucoup de mémoire. Pour obtenir cette image, l'ordinateur a dû appliquer la méthode de Newton 10 000 fois avec un maximum de 30 itérations à chaque fois. Soyez patient si vous utilisez ce programme. Il peut s'écouler deux à trois minutes avant que l'image apparaisse.
  

En changeant quelques lignes à la procédure, on obtient l'image du haut à droite colorée différemment. Tous les points de la même couleur sont associés à des valeurs de xo pour lesquelles la méthode de Newton converge vers un même zéro.

restart:
couleur := proc(a, b)
local x, i, j;
x := a+b*I;
for i from 0 to 30 while abs(x^n-1) >= 0.01 do x := x-(x^n-1)/(n*x^(n-1)) od;
for j from 1 to n while abs(x-sol[j]) >= 0.01 do od;
j/n
end:

n :=5:
# Indiquez le degré du polynôme

sol :=solve(x^n-1.):
plot3d(0,
(-15/10) .. (15/10), (-15/10) .. (15/10), orientation=[-90,0], axes=framed, grid=[100,100], style=patchnogrid, scaling=constrained, color=couleur);

Dans les zones à caractère fractal, la méthode de Newton devient très sensible aux variations de xo aussi petites soient-elles. Pour s'en convaincre, copiez le programme du bas sur une feuille de travail Maple puis changez la valeur de xo pour les valeurs suivantes: 0.3+0,492i ; 0.3+0,493i ; 0.3+0,494i ; 0.3+0,495i ; 0.3+0,496i. On constate que pour ces 5 valeurs de xo toutes très près les unes des autres, la méthode de Newton converge vers des zéros différents.

restart:

xo:=0.3+0.492*I; # Indiquez la valeur de xo

z :=evalf(xo):
for m from 0 to 100 while abs(z^5-1) >= 0.001 do
z := z - (z^5-1)/(5*z^4)
od;