Ensembles fractals déterministes n-dimensionnels

Piste rouge Le 23 août 2010  - Ecrit par  Jean-François Colonna Voir les commentaires (2)

Est-il possible d’étendre la complexité des ensembles fractals déterministes bidimensionnels à des espaces à trois et quatre dimensions ? Que sont les « MandelBulbs » et autres « JuliaBulbs » ?

Ensembles fractals déterministes bidimensionnels

Depuis de nombreuses années, les ensembles fractals déterministes [1] bidimensionnels sont bien connus car ils présentent de magnifiques et mystérieuses structures à toutes les échelles. Tous ces ensembles sont obtenus en itérant des fonctions $f$ (a priori quelconques), c’est-à-dire en calculant des suites du type :
\[z_{n+1}=f(z_n)\]
en chaque point (appelé point courant $C$) d’un domaine du plan complexe et ce à partir d’une valeur $z_0$ donnée [2]. Grâce à l’exemple des ensembles de Julia $J_A$, nous préciserons ce que cela signifie dans les lignes suivantes.

La plupart du temps les fonctions $f$ sont des polynômes du second degré donnant ainsi naissance en particulier d’une part à l’ensemble de Mandelbrot $M$ qui figure en bas et à gauche de ce zoom :

JPEG - 444.9 ko

\[z_0=C\]
\[z_{n+1}=z_n^2+C.\]

d’autre part aux ensembles de Julia $J_A$ ($A$ désignant un point Argument paramétrant $J_A$) dont voici seize exemplaires :

JPEG - 347.6 ko

\[z_0=C\]
\[z_{n+1}=z_n^2+A.\]
Expliquons dans ce cas particulier ce que signifie concrètement itérer. En chaque point $C$ du domaine choisi (en général rectangulaire) du plan complexe, on regarde comment évolue la suite de points :
\[z_0=C\]
\[z_1=z_0^2+A=C^2+A\]
\[z_2=z_1^2+A=(C^2+A)^2+A\]
\[z_3=z_2^2+A=((C^2+A)^2+A)^2+A\]
\[z_4=z_3^2+A=(((C^2+A)^2+A)^2+A)^2+A\]
\[etc\]
Deux possibilités se rencontrent alors : ou bien cette suite de points s’éloigne indéfiniment (et sans retour possible), ou bien elle reste au voisinage de l’origine et l’on dit alors que le point $C$ appartient à l’ensemble de Julia $J_A$. On notera que, pour des raisons matérielles évidentes, le nombre d’itérations effectuables en chaque point $C$ est limité et lorsque son maximum est atteint (fixé arbitrairement à 1000 par exemple), l’appartenance est aussi décrétée.

N’importe quelle fonction $f$ peut être utilisée, mais les polynômes du second degré sont déjà très instructifs tout en étant les plus simples.
L’article de Tan Lei présente un tel exemple avec la méthode de Newton de résolution des équations.

Mais comment transformer ces itérations en images ? En général, la couleur de chaque point $C$ est choisie en fonction du nombre d’itérations $n+1$ effectuées (cas des seize ensembles de Julia précédents) ou encore de l’argument [3] du dernier $z_{n+1}$ calculé (cas de l’ensemble de Mandelbrot ci-dessus). Une visualisation tridimensionnelle peut aussi être réalisée en utilisant, par exemple, le nombre d’itérations $n+1$ comme une troisième dimension :

JPEG - 253.6 ko

Ensembles fractals déterministes quadridimensionnels

Les nombres réels peuvent être considérés comme les « étiquettes » des points de la droite et les nombres complexes comme celles des points du plan. Pendant de nombreuses années, les mathématiciens ont cherché de nouveaux nombres qui pourraient « étiqueter » les points de l’espace tridimensionnel : leur quête n’aboutit pas à cause de l’impossibilité de définir de façon cohérente leur produit. William Hamilton découvrit en 1843 que cela pouvait être fait en « sautant » dans la quatrième dimension : les quaternions étaient nés et définis comme couples de nombres complexes, c’est-à-dire aussi comme quadruplets de nombres réels.

Afin de généraliser dans l’espace les magnifiques et mystérieuses structures des ensembles fractals du plan complexe, ce fut donc une idée naturelle pour tous ceux (dont je suis...) qui travaillèrent sur ce sujet que d’utiliser les quaternions puisqu’eux-mêmes généralisaient les nombres complexes.

Effectivement, cela fut fait, mais les résultats furent malheureusement relativement décevants : par exemple, une section tridimensionnelle à l’intérieur de l’ensemble de Mandelbrot dans les quaternions

JPEG - 148.7 ko

montre une forte symétrie de rotation et ne présente aucune structure réellement tridimensionnelle à tous les niveaux comme le révèle ce zoom :

JPEG - 326.4 ko

« Vrais » ensembles fractals déterministes quadridimensionnels

Rappelons l’arithmétique des nombres complexes. L’addition (+) de deux nombres complexes $(x_1,y_1)$ et $(x_2,y_2)$ est définie par
\[(x_1,y_1)+(x_2,y_2) = (x_1+x_2,y_1+y_2).\]
La multiplication ($\times$) est un peu plus compliquée :
\[(x_1,y_1) \times (x_2,y_2) = (x_1 x_2-y_1 y_2,x_1 y_2+x_2 y_1).\]
Mais si les coordonnées polaires $(\rho_i,\theta_i)$ sont utilisées à la place des coordonnées cartésiennes $(x_i,y_i)$, cela devient alors beaucoup plus simple :
\[(\rho_1,\theta_1) \times (\rho_2,\theta_2)=(\rho_1 \rho_2,\theta_1+\theta_2)\]
avec :
\[x_i=\rho_i\cos(\theta_i)\]
\[y_i=\rho_i\sin(\theta_i)\]
En particulier, le carré d’un nombre complexe vaut alors :
\[(\rho,\theta)^2=(\rho^2,2\theta).\]

Au cours des années passées, Daniel White a eu l’excellente idée d’étendre ce processus dans l’espace tridimensionnel. Des triplets de nombres réels $(x_i,y_i,z_i)$ sont alors définis, ainsi que leur addition et leur multiplication comme suit :
\[(x_1,y_1,z_1)+(x_2,y_2,z_2)=(x_1+x_2,y_1+y_2,z_1+z_2)\]

\[(\rho_1,\theta_1,\phi_1) \times (\rho_2,\theta_2,\phi_2)=(\rho_1 \rho_2 ,\theta_1+\theta_2 ,\phi_1+\phi_2)\]

avec :

\[x_i=\rho_i\cos(\phi_i)\sin(\theta_i)\]
\[y_i=\rho_i\sin(\phi_i)\sin(\theta_i)\]
\[z_i=\rho_i\cos(\theta_i)\]

($(\rho_i,\theta_i,\phi_i)$ sont appelées les coordonnées sphériques du point $(x_i,y_i,z_i)$).

La puissance n-ième d’un tel triplet vaut alors :

\[(\rho,\theta,\phi)^n=(\rho^n,n\theta,n\phi),\]

formule qui est à la base de la plupart des images alors obtenues.

Le lecteur pourra consulter avec le plus grand intérêt l’article de Jos Leys qui présente tout à la fois un historique de cette recherche, certaines techniques de visualisation employées ainsi que de magnifiques et spectaculaires images.

J’ai transposé cette idée dans un espace à quatre dimensions pour les raisons suivantes :

  • Tout ce que j’avais fait antérieurement pour les quaternions pouvait être réutilisé immédiatement (en particulier la possibilité d’itérer des fonctions quelconques) ; il suffisait simplement d’introduire la définition d’une nouvelle multiplication et d’ajouter un indicateur permettant à cette dernière de remplacer la multiplication usuelle lors des calculs.
  • Un espace à quatre dimensions inclut évidemment des espaces à deux et à trois dimensions.
  • Enfin, cela ouvre des portes concernant la « métamorphose » de ces objets. Pour comprendre aisément cela, il suffit de revenir dans l’espace tridimensionnel. Dans celui-ci, il est possible de faire des coupes planes dans un objet quelconque et par exemple dans un cylindre ; suivant l’orientation du plan, la coupe se métamorphosera : un cercle, une ellipse ou encore un rectangle... Cela sera illustré par la suite à l’aide de deux ensembles de Julia.

Cette nouvelle multiplication (appelée simplement multiplication dans les lignes suivantes) est définie par :
\[(\rho_1,\theta_1,\phi_1,\alpha_1) \times (\rho_2,\theta_2,\phi_2,\alpha_2) = (f_{\rho}(\rho_1,\rho_2),f_{\theta}(\theta_1,\theta_2),f_{\phi}(\phi_1,\phi_2),f_{\alpha}(\alpha_1,\alpha_2))\]

avec :

\[x_i=\rho_i\cos(\phi_i)\sin(\theta_i)\sin(\alpha_i)\]
\[y_i=\rho_i\sin(\phi_i)\sin(\theta_i)\sin(\alpha_i)\]
\[z_i=\rho_i\cos(\theta_i)\sin(\alpha_i)\]
\[t_i=\rho_i\cos(\alpha_i)\]

($(\rho_i,\theta_i,\phi_i,\alpha_i)$ seront appelées les coordonnées hyper-sphériques du point $(x_i,y_i,z_i,t_i)$).
Les quatre fonctions arbitraires $f_{\rho}$, $f_{\theta}$, $f_{\phi}$ et $f_{\alpha}$ sont définies par défaut avec :

\[f_{\rho}(\rho_1,\rho_2)=\rho_1 \rho_2\]
\[f_{\theta}(\theta_1,\theta_2)=\theta_1 + \theta_2\]
\[f_{\phi}(\phi_1,\phi_2)=\phi_1 + \phi_2\]
\[f_{\alpha}(\alpha_1,\alpha_2)=\alpha_1 + \alpha_2.\]

afin d’être compatibles avec la multiplication dans le plan complexe ainsi qu’avec les résultats de Daniel White.

Alors, avec ces définitions, la multiplication est le processus primaire et fondamental, alors que l’élévation à une puissance entière d’un nombre (par exemple le calcul de son carré ou de son cube) n’est qu’un processus secondaire puisque le résultat de plusieurs multiplications successives
 [4].
L’intérêt de privilégier ainsi la multiplication par rapport à l’élévation à une puissance entière réside dans le fait qu’il est ainsi possible de générer des objets reposant sur l’itération de fonctions plus générales que les polynômes de type $q^n+constante$ [5].

Voici quelques exemples ($q$ désignant le quaternion $(x,y,z,t)$=$(\rho,\theta,\phi,\alpha)$) en n’oubliant pas qu’il s’agit d’objets quadridimensionnels et donc non représentables dans leur intégralité. Ce seront donc des sections tridimensionnelles (obtenues, par exemple, en considérant la quatrième coordonnée $t$ constante) qui seront visualisées.

JPEG - 378.6 ko

Cet ensemble de Mandelbrot a été calculé en utilisant un polynôme $P(q)$ du second degré (en limitant le calcul à $t=0.1$) et les quatre fonctions suivantes :
\[P(q)=q^2+q_C\]
\[f_{\rho}(\rho_1,\rho_2)=\rho_1 \rho_2\]
\[f_{\theta}(\theta_1,\theta_2)=2(\theta_1 + \theta_2) + \pi \]
\[f_{\phi}(\phi_1,\phi_2)=2(\phi_1 + \phi_2) + \pi \]
\[f_{\alpha}(\alpha_1,\alpha_2)=\alpha_1 + \alpha_2.\]

JPEG - 156.8 ko

Sa vue de dessus ressemble à un flocon de neige à $5$ branches. Il a donc été calculé à l’aide d’un polynôme du second degré. Pour des polynômes du troisième, quatrième, cinquième et sixième degré, les nombres de branches sont respectivement $13 \ (=5\times 2+3)$, $29 \ (=13\times 2+3)$, $61 \ (=29\times 2+3)$ et $125 \ (=61\times 2+3)$ présentant ainsi une bien curieuse relation de récurrence.


JPEG - 514.1 ko

Cet ensemble de Mandelbrot a été calculé en utilisant un polynôme $P(q)$ du premier degré (en limitant le calcul à $t=0$) et les quatre fonctions suivantes :
\[P(q)=1 q+q_C\]
\[f_{\rho}(\rho_1,\rho_2)=(\rho_1 \rho_2)^8\]
\[f_{\theta}(\theta_1,\theta_2)=8(\theta_1 + \theta_2)\]
\[f_{\phi}(\phi_1,\phi_2)=8(\phi_1 + \phi_2)\]
\[f_{\alpha}(\alpha_1,\alpha_2)=8(\alpha_1 + \alpha_2)\]

(le terme $1q$ étant destiné à forcer une multiplication).
Il s’agit du fameux Mandelbulb de Daniel White et de Paul Nylander. Il contient en particulier des structures tout à fait mystérieuses et irrégulières qui rappellent de nombreuses formes naturelles :

JPEG - 1 Mo
JPEG - 916.8 ko
JPEG - 434.8 ko

Cet ensemble de Mandelbrot (« la ronde des enfants ») est le même que le précédent, mais en limitant cette fois-ci le calcul à $t=0.7$


JPEG - 429.6 ko

Cet ensemble de Julia a été calculé en utilisant un polynôme $P(q)$ du premier degré (en limitant le calcul à $t=0$) et les quatre fonctions suivantes :
\[P(q)=1 q+\{-0.5815147625160462,+0.6358885017421603,0,0\}\]
\[f_{\rho}(\rho_1,\rho_2)=(\rho_1 \rho_2)^3\]
\[f_{\theta}(\theta_1,\theta_2)=3(\theta_1 + \theta_2)\]
\[f_{\phi}(\phi_1,\phi_2)=3(\phi_1 + \phi_2)\]
\[f_{\alpha}(\alpha_1,\alpha_2)=\alpha_1 + \alpha_2.\]


JPEG - 216.4 ko

Ces seize images présentent une première métamorphose faite de seize sections tridimensionnelles différentes (obtenues par des rotations dans l’espace quadridimensionnel) d’un ensemble de Julia calculé en utilisant un polynôme $P(q)$ du premier degré et les quatre fonctions suivantes :
\[P(q)=1 q+\{-0.5815147625160462,+0.6358885017421603,0,0\}\]
\[f_{\rho}(\rho_1,\rho_2)=(\rho_1 \rho_2)^2\]
\[f_{\theta}(\theta_1,\theta_2)=2(\theta_1 + \theta_2)\]
\[f_{\phi}(\phi_1,\phi_2)=2(\phi_1 + \phi_2)\]
\[f_{\alpha}(\alpha_1,\alpha_2)=2(\alpha_1 + \alpha_2).\]

JPEG - 363.5 ko

Voici une seconde métamorphose calculée en utilisant un polynôme $P(q)$ du troisième degré et les quatre fonctions suivantes :
\[P(q)=1 q-q^2+q^3+\{-0.5815147625160462,+0.6358885017421603,0,0\}\]
\[f_{\rho}(\rho_1,\rho_2)=(\rho_1 \rho_2)^2\]
\[f_{\theta}(\theta_1,\theta_2)=2(\theta_1 + \theta_2)\]
\[f_{\phi}(\phi_1,\phi_2)=2(\phi_1 + \phi_2)\]
\[f_{\alpha}(\alpha_1,\alpha_2)=2(\alpha_1 + \alpha_2).\]


JPEG - 513.3 ko

Enfin, cet ensemble est en quelque sorte un mélange entre un fractal déterministe (un ensemble de Julia) et un fractal non déterministe. En effet, il a été calculé avec un polynôme $P(q)$ et les quatre fonctions suivantes :
\[P(q)=1 q+\{0,1,0,0\}\]
\[f_{\rho}(\rho_1,\rho_2)=(\rho_1 \rho_2)^{Fractal(x,y,z,t)}\]
\[f_{\theta}(\theta_1,\theta_2)=5(\theta_1 + \theta_2)\]
\[f_{\phi}(\phi_1,\phi_2)=8(\phi_1 + \phi_2)\]
\[f_{\alpha}(\alpha_1,\alpha_2)=11(\alpha_1 + \alpha_2)\]

où $Fractal(x,y,z,t)$ est une fonction fractale (du type de celles qui sont utilisées, par exemple, pour produire des animations de montagnes et de nuages).

De l’importance des itérations

Ces « expériences » confirment ce que nous savions déjà. La notion d’itération est fondamentale en permettant, en général à l’aide de règles élémentaires, d’aller du simple vers le complexe : itération d’opérations arithmétiques pour les fractales, itération de déplacements dans l’espace avec la marche aléatoire ou encore itération de règles de réécriture avec les automates cellulaires.

Des « MandelBulbs »...

PNG - 512.9 ko

et des « JuliaBulbs ».

PNG - 185.8 ko

Pour apprécier toute cette galerie d’images, on pourra consulter la version originale de cet article sur le site de l’auteur.

Post-scriptum :

Pour un article sur les ensembles de Julia voir Un ensemble-limite (NDLR).

Notes

[1Ces ensembles fractals sont dits déterministes car aucun processus aléatoire n’intervient mathématiquement parlant (contrairement aux fractals non déterministes qui permettent, par exemple, de générer des montagnes ou des nuages). Malgré tout, leurs calculs sont non linéaires et sont donc sensibles aux erreurs d’arrondi qui peuvent produire des artefacts d’apparence aléatoire.

[2Rappelons qu’un nombre complexe est défini comme un couple de nombres réels

[3Le $\theta$ dans les lignes suivantes

[4Il convient de noter que pour calculer le polynôme simple $q^n+constante$ deux solutions sont alors disponibles : soit utiliser le fait que $q^n=q...q$ ($q$ multiplié $n-1$ fois par lui-même) avec les définitions suivantes des quatre fonctions. :

\[f_{\rho}(\rho_1,\rho_2)=\rho_1 \rho_2\]
\[f_{\theta}(\theta_1,\theta_2)=\theta_1 + \theta_2\]
\[f_{\phi}(\phi_1,\phi_2)=\phi_1 + \phi_2\]
\[f_{\alpha}(\alpha_1,\alpha_2)=\alpha_1 + \alpha_2.\]

Dans ce cas la multiplication est effectuée $n-1$ fois. L’autre possibilité consiste à calculer le polynôme $1q$ (« $1$ multiplié par $q$ ») avec les définitions suivantes pour les quatre fonctions :

\[f_{\rho}(\rho_1,\rho_2)=(\rho_1 \rho_2)^n\]
\[f_{\theta}(\theta_1,\theta_2)=n(\theta_1 + \theta_2)\]
\[f_{\phi}(\phi_1,\phi_2)=n(\phi_1 + \phi_2)\]
\[f_{\alpha}(\alpha_1,\alpha_2)=n(\alpha_1 + \alpha_2)\]

soit dans le cas particulier du pôlynome $1q$ :

\[f_{\rho}(1,\rho)=\rho^n\]
\[f_{\theta}(0,\theta)=n\theta\]
\[f_{\phi}(0,\phi)=n\phi\]
\[f_{\alpha}(0,\alpha)=n\alpha\]

La multiplication n’est alors effectuée qu’une seule fois (dans ce cas particulier, les deux possibilités donnent évidemment le même résultat).

[5Il est à noter que tous ces programmes sont inclus dans un environnement qui permet la redéfinition dynamique des opérations arithmétiques élémentaires utilisées ajoutant ainsi encore plus de flexibilité et de possibilités.

Partager cet article

Pour citer cet article :

Jean-François Colonna — «Ensembles fractals déterministes n-dimensionnels» — Images des Mathématiques, CNRS, 2010

Commentaire sur l'article

  • Ensembles fractals déterministes n-dimensionnels

    le 23 août 2010 à 14:27, par Dimitri Karpov

    Bonjour,
    Est-ce que la non commutativité de l’algèbre des quaternions apparaît d’une façon ou d’une autre dans la structure des fractales ci-présentes ? D’ailleurs, est-ce que ça changerait sensiblement le résultat de prendre, par exemple, un polynôme X^n*a au lieu de a*X^n (où a est un quaternion) pour l’itération ?

    Répondre à ce message
    • Ensembles fractals déterministes n-dimensionnels

      le 24 août 2010 à 10:17, par Jean-François Colonna

      La multiplication n’est pas commutative pour les « vrais » quaternions (ceux d’Hamilton). Ici, avec cette définition de la multiplication à l’aide de quatre fonctions ’f’ arbitraires, il en est de même en toute généralité. Mais tous les exemples qui illustrent l’article ont été obtenus à l’aide de fonctions ’f’ qui « commutent » et avec des polynômes pour lesquels le problème ne se pose pas (sauf pour 1.q). L’expérience consistant à utiliser des polynômes plus généraux et des fonctions ’f’ ne commutant pas reste donc à faire (au passage, c’est aussi le cas dans les quaternions d’Hamilton). Je ne peux donc pas répondre aujourd’hui à votre question, même s’il me parait évident qu’a priori les objets obtenus avec d’une part ’a*X^n’ et d’autre part ’X^n*a’ seraient différents, mais certainement de « même nature »...

      Répondre à ce message

Laisser un commentaire

Forum sur abonnement

Pour participer à ce forum, vous devez vous enregistrer au préalable. Merci d’indiquer ci-dessous l’identifiant personnel qui vous a été fourni. Si vous n’êtes pas enregistré, vous devez vous inscrire.

Connexions’inscriremot de passe oublié ?

registros

Cet article fait partie du dossier «Benoît Mandelbrot et les objets fractals» voir le dossier

Suivre IDM