Qu’importe le flocon !

“Le Nombre imaginaire” ou les mathématiques comme terrain de jeu où l’imagination seule fixe les limites.

Les concepts d’induction et de récursivité que nous avons explorés ces deux dernières semaines nous conduisent à un objet fascinant : la fractale. Ce joli mot, inventé dans les années 70 par le mathématicien franco-américain Benoît Mandelbrot, désigne une foisonnante classe d’objets mathématiques qui s’offrent souvent à des représentations visuelles impressionnantes, et parfois d’une complexité presque organique.

De manière générale, un objet fractal présente une propriété d’auto-similarité : la partie ressemble au tout. Vue à différentes échelles, de très près ou de très loin, une fractale présente le même aspect général. La nature regorge de tels objets, du moins en approximation. Si je vous montre une photo représentant une étendue de sable séparée d’une étendue d’eau par un rivage aux formes tourmentées, vous ne pouvez pas nécessairement savoir s’il s’agit d’une photo satellite d’une région entière, ou d’une photo aérienne d’une petite portion de littoral. Une touffe foisonnante de vert peut être un rameau ou une branche maîtresse ; un massif montagneux ressemble à un pic vu de plus près. Les détails peuvent changer, mais l’aspect général reste le même.

Il existe cependant une différence entre l’objet mathématique fractal et son approximation naturelle ou sa représentation graphique : dans ces dernières, on arrive nécessairement à une limite de résolution au-delà de laquelle l’auto-similarité cesse. Une cellule d’arbre ne ressemble pas à un arbre, un grain de sable ne ressemble pas à une plage. La véritable fractale mathématique, elle, est auto-similaire à toutes les échelles : vous pouvez zoomer à l’infini en retrouvant une structure analogue. Nous ne savons pas construire une représentation complète de l’objet mathématique, même si nous pouvons le définir sans aucune ambiguïté ; mais nous pouvons en construire une approximation aussi précise que nous le voulons.

Notre première fractale, un grand classique du genre, sera cette très jolie courbe en forme de flocon de neige appelée flocon de von Koch, dont wikipedia nous donne une représentation animée. Voici comment on l’obtient. Dessinons un triangle équilatéral, disons de 9 centimètres de côté. Divisons chaque côté en trois longueurs égales. Nous collons un triangle équilatéral plus petit, de 3 centimètres de côté, sur le segment central que nous effaçons ensuite. Une fois cette opération effectuée sur chacun des trois côtés de notre triangle, on obtient une étoile à six branches. Cette étoile comporte douze côtés, chacun de 3 centimètres de long. On divise chacun de ces côtés en trois, et on recommence : le segment central de chaque côté est effacé et remplacés par les deux autres côtés d’un triangle équilatéral de 1 centimètre de côté s’appuyant dessus. On obtient alors un début de flocon : une sorte de boule hérissée à quarante-huit côtés, chacun mesurant un centimètre. Et on continue…. à l’infini, ce que les maths seules nous permettent de faire.

L’objet mathématique résultant est une fractale. Si on vous montre une photo d’une petite partie, vous n’avez aucun moyen de savoir à quelle échelle cette photo a été prise. La courbe fermée obtenue ainsi possède des propriétés surprenantes : sa longueur est infinie, mais la surface qu’elle englobe ne l’est pas, et toutes ses représentations matérielles sont de longueur finie. Par ailleurs, bien qu’on considère intuitivement qu’une courbe est un objet à une dimension comme une surface en a deux, notre flocon est en fait caractérisé par une dimension dite fractale qui est un nombre intermédiaire entre un et deux ! En voici une explication informelle. Quand on regarde une courbe lisse, comme la frontière entre deux États des USA, sur des cartes à différentes échelles, la longueur de cette frontière à une dimension sur la carte augmente en proportion de l’échelle considérée ; elle double si l’échelle double. En revanche, la surface à deux dimensions d’un État sur la carte est multipliée par quatre (deux au carré) quand on double l’échelle. Or il se trouve que quand on regarde le flocon de von Koch de plus près, avec davantage de détails, sa longueur apparente sur la carte augmente plus vite que l’échelle utilisée mais moins vite que le carré de l’échelle : elle est multipliée par quatre quand l’échelle est triplée. On lui associe donc une dimension (environ 1,26) qui n’est pas un nombre entier.

Autre défi à l’intuition, bien que chacun soit constitué d’une infinité d’angles et de segments, on peut juxtaposer des flocons de Koch de tailles appropriées les uns à côté des autres, sans interstice ni recouvrement, pour obtenir une sorte de papier peint : c’est ce qu’on appelle un pavage du plan.

Il est possible, selon le même principe, de construire des fractales en volume : au lieu de remplacer un segment de ligne par un triangle s’appuyant dessus, on peut partir d’un tétraèdre régulier – un solide muni de quatre faces dont chacune est un triangle équilatéral –, puis couper chaque face triangulaire en quatre triangles équilatéraux plus petits, coller sur celui du centre un tétraèdre de même taille, et recommencer à l’infini sur toutes les facettes ainsi obtenues. L’objet final possède une surface infinie et un volume fini : l’idéal pour une cellule solaire, ou pour un catalyseur à la surface duquel se produit une réaction chimique désirée. L’idéal, aussi, pour la photosynthèse, ce qui explique pourquoi la nature recourt autant à cette technique.

Bien entendu, nous ne pouvons pas réellement construire notre flocon de neige ou notre boule à facettes fractale : la physique nous impose ses limites. En revanche, nous pouvons en construire des approximations aussi précises que le permet la technologie, et cette construction repose sur un algorithme récursif analogue à celui que nous avons utilisé pour résoudre le problème des tours de Hanoï. On peut même trouver une formulation de cet algorithme qui évite de dessiner un segment pour en effacer une partie plus tard : on créera directement la bonne courbe, sans avoir besoin de modifier ce qui a déjà été fait, et sans même lever le crayon. Si vous teniez des ciseaux à la place d’un crayon, vous pourriez ainsi découper d’un seul trait ce flocon de neige avec la précision que vous souhaitez, sans crainte de vous tromper.

Voici comment cela marche. Vous tenez une feuille blanche et un crayon. Vous jouez le rôle de l’ordinateur, et les seules instructions que je puisse vous donner sont de dessiner un trait d’une longueur donnée vers la droite ou de tourner la feuille d’un angle donné autour du crayon. Vous disposez également d’un nombre entier N qui représente la précision souhaitée pour notre flocon, et d’une longueur L qui représente la longueur du côté de notre triangle initial. Ces deux valeurs sont des paramètres de notre algorithme.

Nous allons en fait utiliser deux algorithmes. Le premier, qui est récursif, s’appelle dessiner un côté, et vous permet de dessiner la portion du flocon de von Koch qui couvre un des trois côtés du triangle équilatéral d’origine, pour une précision N et une longueur L données. Le second s’appelle dessiner le flocon, et se contente d’utiliser trois fois le précédent, en faisant tourner la feuille entre temps.

Pour N et L donnés, notre algorithme dessiner un côté se définit ainsi : Si N est égal à zéro, tracez un trait de longueur L vers la droite et vous avez fini. Si N est plus grand que zéro, alors dessinez un côté pour une précision N-1 et une longueur L/3 (l’algorithme fait récursivement appel à lui-même). Tournez la feuille de 60 degrés dans le sens des aiguilles d’une montre, ce qui amènerait la grande aiguille de midi à quatorze heures. Dessinez encore un côté pour la précision N-1 et la longueur L/3. Tournez la feuille de 120 degrés dans le sens inverse des aiguilles d’une montre, ce qui amènerait la grande aiguille de minuit à vingt heures, et dessinez encore un côté avec les mêmes paramètres. Tournez enfin la feuille de 60 degrés dans le sens des aiguilles d’une montre et dessinez un dernier côté avec les mêmes paramètres ; vous avez fini votre côté et votre feuille a retrouvé son orientation du départ.

L’algorithme dessiner le flocon est alors très simple : dessinez un côté avec les paramètres N et L puis tournez votre feuille de 120 degrés dans le sens inverse des aiguilles d’une montre ; répétez cette séquence de dessin et de pivotement deux fois. Vous aurez fini, et votre feuille sera orientée comme au départ.

Il existe des langages informatiques d’initiation (tels que le fameux logo) qui permettent de mettre en œuvre de tels algorithmes très facilement, avec une tortue virtuelle dans le rôle de votre crayon : n’hésitez pas à jouer avec! Allez, je vous donne le code en PS.

Tout cela est joli, mais, il faut bien l’avouer, notre flocon fractal est tout de même bien monotone : il est tellement égal à lui-même qu’on s’en lasse très vite. De plus, dans cet exemple, on devine bien que la propriété d’auto-similarité de notre fractale est une conséquence directe de la structure récursive de sa définition, ce qui déflore le mystère. Mais, comme nous le verrons la semaine prochaine, ce n’est pas toujours le cas loin de là, et il existe des fractales véritablement magiques, sensuelles, biologiques, et dont la structure émerge mystérieusement d’une définition a priori anodine. Qu’importe le flocon donc, pourvu qu’on ait l’ivresse !

Yannick Cras
Le nombre imaginaire

P-S : Le code du flocon de Koch en Logo :

pour uncoté :n :l
  si :n = 0 [avance :l STOP]
  uncoté (:n – 1) (:l / 3) gauche 60
  uncoté (:n – 1) (:l / 3) droite 120
  uncoté (:n – 1) (:l / 3) gauche 60
  uncoté (:n – 1) (:l / 3)
fin

pour koch :n :l repete 3 [uncoté :n :l dr 120] fin

VideEcran
koch 3 100

À noter que pour reproduire notre algorithme en Logo il faut échanger le sens des rotations car ce n’est pas la feuille qui tourne mais votre tortue. A cela près, on retrouve notre algorithme presque directement.

Imprimer Imprimer