Règles locales
Personne ne dessine le motif : il apparaît de proche en proche, cellule après cellule.
C'est quoi, la règle ?
Une cellule, c'est un peu un voisin qui regarde par-dessus la haie : elle ne voit que ses voisines, rien d'autre. Dans l'automate élémentaire de Wolfram, chaque cellule est vivante ou morte, et la ligne suivante se déduit de la précédente. Pour chaque cellule, on regarde trois cases : celle de gauche, la sienne et celle de droite. Trois cases à deux états, ça fait 8 cas, et une règle, c'est juste la liste des 8 réponses :
gauche, centre, droite → 8 cas → 8 bits → règle 0 à 255
Ces 8 bits se lisent comme un nombre entre 0 et 255 : c'est le numéro de la règle. On part d'une seule cellule vivante, on applique la règle ligne après ligne, et tout le dessin sort de là. Trois règles sont célèbres : la 30 donne du chaos, la 90 un triangle de Sierpiński, et la 110 une complexité capable de calculer n'importe quoi (elle est Turing-complète, oui, avec trois voisines et des bits !).
règle 90 : la nouvelle cellule vit si exactement une de ses deux voisines (gauche ou droite) vit
La réaction-diffusion de Gray-Scott pousse l'idée plus loin : deux substances, A et B, se répandent sur une grille et réagissent entre elles. A se régénère à un taux feed, B se multiplie en consommant A, et disparaît à un taux kill. Cette réaction, A + 2B → 3B, fait naître des motifs organiques : pelage, corail, division cellulaire.
À toi de jouer
Coche les huit cases pour écrire ta propre règle : le numéro se met à jour et le dessin du dessus est recalculé. Les boutons « Règle 30 », « Règle 90 » et « Règle 110 » posent les trois règles célèbres.
En dessous, la réaction de Gray-Scott. Les deux curseurs règlent feed et kill, dans les limites de l'algorithme. « Un pas » fait avancer d'une génération, « Lecture » l'anime, et « Recommencer » repart de la graine. Pousse un curseur d'un cran seulement : le motif change de nature (c'est le moment le plus drôle).
Règle
Petite précision : le dessin ci-dessus est un schéma, pas l'œuvre. Il montre la règle, point. Les couleurs, la taille des points, le grain du tirage, il les rejoue pas.
Qu'est-ce qui change d'un algo à l'autre ?
- Automate cellulaire
- Un automate à une dimension. Une ligne de départ, et chaque ligne suivante déduite de la précédente par une règle de 8 bits sur trois voisines. Le bord est fini : hors de la bande, les cellules sont mortes.
- Automate cellulaire cyclique
- Une grille torique, où chaque cellule porte un état de 0 à N − 1. Une cellule passe à l'état suivant si assez de ses voisines y sont déjà : à force de se dévorer entre elles, les cellules font émerger des vagues et des spirales. Le voisinage est de von Neumann (4) ou de Moore (8), et le départ est aléatoire.
- Réaction-diffusion
- La réaction-diffusion à deux substances, sur une grille torique, avec la réaction A + 2B → 3B. C'est le plus gourmand des trois : du coup, on plafonne la grille et le nombre d'itérations.
Et le hasard, il décide quoi ?
Pour chaque œuvre, le programme tire ces réglages au sort, entre des bornes fixées à l'avance. Une fois tirés, ils bougent plus : ils font partie de l'identité de l'œuvre.
- Numéro de règle Automate cellulaire parmi 30, 90, 110, 54, 150, 18, 22, 126, 182, 105
- Nombre d'états Automate cellulaire cyclique de 3 à 16
- Taux d'alimentation Réaction-diffusion de 0,026 à 0,078
Les algorithmes de cette famille
- Automate cellulaire
- Automate cellulaire cyclique
- Réaction-diffusion