LES FRACTALES



détail du "lac de Mandelbrot"

Une fractale est une figure géométrique complexe basée, comme son nom l'indique, sur un principe de fractionnement. Les fractales sont à la base d'un nouveau système de géométrie permettant de représenter des objets très irréguliers tels que les reliefs montagneux, la végétation, les amas galactiques ou les côtes rocheuses très découpées.
Apparues au XIXesiècle, les fractales furent considérées comme des curiosités mathématiques jusqu'au milieu du XXesiècle. Elles n'acquirent un statut à part entière que dans les années 1970, grâce au mathématicien français Benoît Mandelbrot qui en fit l'objet d'une nouvelle discipline mathématique: la géométrie fractale.
Le terme «fractale» (du latin fractus, «brisé») fut d'ailleurs inventé par Mandelbrot pour désigner un type d'objets dont l'irrégularité les distingue des figures géométriques euclidiennes telles que la droite ou le cercle.
En géométrie euclidienne, les figures ont une dimension entière: 0 pour un point, 1 pour une courbe, 2 pour une surface et 3 pour un volume.

B. Mandelbrot
En revanche, la dimension d'une fractale peut prendre des valeurs qui ne sont pas des nombres entiers: la dimension fractale constitue une généralisation de la notion de dimension utilisée en géométrie euclidienne.

Les fractales à homothétie interne présentent en outre une propriété particulière: chacune de leur partie reproduit leur totalité. Elles présentent ainsi un aspect tout à fait identique quelle que soit l'échelle considérée.


Des fractales à homothétie interne dans la cuisine, avec le chou "Romanesco"

La génération des fractales à homothétie interne est souvent basée sur un algorithme simple.
La courbe de Koch, dite «flocon de neige», représentée ci-dessous, en constitue un exemple.

Si on l'examine à différentes échelles, on observe une structure à peu près identique. On construit la courbe de Koch en reproduisant un triangle équilatéral à des échelles de plus en plus petites. En répétant ce processus une infinité de fois, la courbe obtenue possède alors un périmètre infini mais une aire limitée.

Cette propriété se traduit par une dimension fractale strictement comprise entre 1 et 2.

La géométrie fractale n'est pas qu'une théorie abstraite. En effet, les fractales se sont révélées adaptées à la représentation d'objets naturels complexes: montagnes, nuages, feuillages, amas galactiques. Avez-vous déjà regardé de près un chou Romanesco? Les fractales interviennent également dans le cadre de la théorie du chaos déterministe qui possède des applications dans de nombreux domaines (chimie, mécanique des fluides, biologie, informatique etc.).
Par ailleurs, la beauté des fractales en a fait un élément clé de l'infographie.
Les fractales servent aussi à charger des images fixes ou des vidéos sur un ordinateur. En 1987, le mathématicien Michael F.Barnsley montra en effet qu'on pouvait obtenir une approximation de photographies numérisées à l'aide de fractales. Cette compression fractale des images est utilisée dans de nombreuses applications multimédias.

Voici quelques exemples de fractales, obtenues avec le logiciel shareware FRACTINT:

LA PLUME

LE "LAC" DE MANDELBROT

JULIA

NEWTON

En pratique, comment procède t-on pour calculer et dessiner les figures ci-dessus?

  • A chaque point de la figure est associé un nombre complexe Z dont les parties réelles et imaginaires sont respectivement les coordonnées cartésiennes X et Y du point, soit: Z=X+Yi
  • On lance alors un calcul par itérations en appliquant une formule F() correspondant à la fractale recherchée: Z(0)=C et Z(n)=F(Z(n-1)) + C
  • A chaque itération, on teste le dépassement d'une limite. Quand la limite est atteinte, le nombre d'itérations détermine la couleur du point, par simple indexation d'une palette de couleurs (256 dans les exemples ci-dessus) Cette indexation permet d'accélérer les calculs par ailleurs très longs. Malgré cela, l'affichage d'une image complète peut se révéler assez long, même avec un ordinateur puissant.

Application à la fractale de Mandelbrot : Z(0)=C et Z(n)=Z(n-1)² + C avec une limite égale à 2
Pour télécharger mon programme-exemple avec les sources en Delphi, cliquez ICI
N'hésitez pas à m'envoyer vos remarques, critiques, programmes, etc...