En 1979, Benoit B. Mandelbrot s'amusa avec une équation de récurrence toute simple

zn+1 = zn2 + C
z0 = 0

dont le développement est z0 , z02 + C , (z02 + C)2 + C , ...

Né en Pologne en 1924, le mathématicien Benoit B. Mandelbrot émigre en France en 1936. Il travaille en 1958 pour IBM au centre de recherche Thomas B. Watson à New York. Il enseigne maintenant en Sciences Mathématiques à l'Université Yale.

Site web de Benoit B. Mandelbrot


La valeur de C étant une constante de l'ensemble des nombres complexes qu'il associa à un point de l'écran de son ordinateur. Pour chaque nombre complexe C associé à un pixel de son écran, il obtint une suite de nombres complexes. Il calcula le module de chacun des termes de la suite

| z0 | , | z1 | , | z2 | , | z3 | , | z4 | , ...

Lorsque la suite des modules convergeait (ne tendait pas vers l'infini), le point C était considéré comme appartenant à l'espace recherché et était noirci. L'ensemble de Mandelbrot venait de naître.

Pour reproduire l'ensemble de Mandelbrot, on associe à C des valeurs du plan complexe. On considère généralement la portion du plan complexe ayant comme partie réelle, les valeurs entre -2.5 et 1.5 et comme partie imaginaire, les valeurs entre -1.5 et 1.5. Cette portion du plan complexe est subdivisée de façon à former une grille dont les éléments seront associés à des valeurs de C. Pour chaque valeur de C, on obtient une suite dont les modules peuvent converger ou diverger. En pratique, on considère que la suite des modules converge si les 30 premiers modules sont inférieurs à 2. Lorsque la suite des modules converge, on colorie en noir le point de la grille. Après avoir considéré tous les points de la grille, on obtient un ensemble de points noircis : l'ensemble de Mandelbrot.

On peut colorer les points à l'extérieur de l'ensemble de Mandelbrot en utilisant des couleurs qui dépendent du nombre de termes calculés avant d'obtenir un module supérieur ou égal à 2. Les points d'une même couleur peuvent être interprétés comme étant des points s'éloignant à la même vitesse de l'ensemble de Mandelbrot.

Exemple

Donnons à C la valeur -0.1 + i correspondant au point (-0.1, 1) de notre grille.
zn+1 = zn2 + (-0.1 + i)
z0 = 0

Pour cette valeur de C, on obtient une suite de nombres complexes.

z0 = 0 + 0 i | z0 | = 0
z1 = -0.1 + i | z1 | = 1.005
z2 = -1.09 + 0.8 i | z2 | = 1.352
z3 = 0.448 - 0.744 i | z3 | = 0.869
z4 = -0.453 + 0.333 i | z4 | = 0.562
z5 = -0.006 + 0.698 i | z5 | = 0.698
z6 = -0.586 + 0.992 i | z6 | = 1.153
z7 = -0.738- 0.165 i  | z7 | = 0.756
z8 = 0.417 + 1.244 i  | z8 | = 1.312
z9 = -1.473 + 2.038 i  | z9 | = 2.514

Puisque | z9 | est supérieur à 2, on considère que la suite des modules ne convergera pas. Ce point n'appartient pas à l'ensemble de Mandelbrot. On assignera donc la couleur # 9 au point (-0.1, 1) de la grille. Tous les points d'une même couleur requièrent le calcul d'un même nombre de termes avant de constater qu'ils ne font pas partie de l'ensemble de Mandelbrot.

Géométrie fractale

L'ensemble de Mandelbrot présente une propriété intéressante d'autosimilarité. Sa structure se reproduit d'une façon identique à toutes les échelles d'observation. Les formes qui présentent cette propriété d'autosimilarité s'appellent des fractales. Les fractales ont la particularité que n'importe quelle région lorsqu'elle est agrandie se révèle tout aussi finement structurée que la figure plus grande dont elle est extraite. Autrement dit, il y a une régression infinie de détails, un emboîtement infini de structures.

En agrandissant une région quelconque de l'ensemble de Mandelbrot, on remarque la présence de points noirs qui se révèlent être des copies conformes de l'ensemble de départ.


1. L'ensemble de Mandelbrot


2. Zoom dans la partie supérieure de la figure 1


3.
Zoom dans la partie supérieure de la figure 2


4.
Zoom dans la branche de gauche de la figure 3

Suggestions de quelques outils d'exploration

  • Il existe sur le Web une multitude de logiciels qui portent sur l'ensemble de Mandelbrot et que l'on peut télécharger. Ces logiciels permettent de faire l'étude de cette structure à différents niveaux d'observation. Je vous suggère "Ultra Fractal " pour ceux qui travaillent sur un PC.

  • On peut aussi faire une incursion dans l'ensemble de Mandelbrot en utilisant Maple. Il suffit de copier le programme (en rouge) sur une feuille de travail du logiciel et d'indiquer à la place de (-2)..(1),(-1.5)..(1.5) de la dernière ligne, l'étendue des parties réelles et imaginaires de C que l'on désire visualiser. Faites attention aux décimales si vous utilisez Maple 7 car il 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.

    couleur:=proc(a,b)

    local x,y,xi,yi,n;
    x:=a;
    y:=b;
    for n from 0 to 30 while evalf(x^2+y^2) < 4 do;
    xi:=evalf(x^2-y^2+a);
    yi:=evalf(2*x*y+b);
    x:=xi;
    y:=yi;
    od;
    n;
    end:

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

    Lorsque la partie réelle du point C est entre -2 et 1 et la partie imaginaire entre -1.5 et 1.5, on obtient à partir du programme précédent, une représentation colorée de l'ensemble de Mandelbrot.

    Voici des images qui ont été créées par ce programme. L'ordinateur utilisé doit être rapide et doit disposer de beaucoup de mémoire. Chaque image nécessite le calcul d'environ 300 000 termes. Pour augmenter la vitesse d'exécution de l'ordinateur, il faudra diminuer la valeur du paramètre numpoints=20000. L'image sera évidemment moins précise. Pour augmenter les détails, on devra changer la valeur 30 de la boucle n from 0 to 30 pour une valeur supérieure.

    Merci à Nicolas Rochette du Cégep Beauce-Appalaches pour cette variation originale de l'ensemble de Mandelbrot.
    En changeant la dernière commande du programme précédent pour celle-ci,

    plot3d(couleur, (-2)..(1), (-15/10)..(15/10), orientation=[-70,45], style=patchnogrid, axes=framed, lightmodel='light1', numpoints=40000, color=couleur);

    on obtient