2 Le Jeu de la Vie
Un type d’AC très particulier a été inventé par John H. Conway (1937-), qu’il a nommé
"Le Jeu de la Vie", non pas parce qu’il est capable de simuler des cellules vivantes et
les processus génétiques qui en découlent, mais parce que les interactions cellulaires
qui en découlent deviennent très vite extrêmement complexes malgré la simplicité (la
trivialité !) des règles locales de communication. A tel point que lorsqu’on examine le
système de plus près, on peut se poser légitimement la question de la vie dans un tel
système.
Le jeu se présente ainsi. Chaque cellule a 8 voisins directs, et possède 2 états
possibles : elle est soit vivante soit morte (représentés par 1 et 0).
À chaque instant, l’état de la cellule est modifiée selon les règles suivantes :
• Si une cellule vivante a moins de 2 voisins, elle meurt (de solitude).
• Si une cellule vivante et a plus de 3 voisins, elle meurt (de surpopulation).
• Si une cellule vide (morte) a exactement 3 voisins, elle naît (par reproduction).
• Si une cellule vivante ou vide a exactement 2 voisins, elle reste dans le même
état.
2.1 Affichage graphique
Commençons par créer l’affichage graphique. La procédure est très similaire à celle
des Termites. Il nous faut une fenêtre graphique à laquelle est associée une matrice de
cases.
Ouvrez le fichier . Créez-y un monde en grille :
Il y a plus de paramètres que la dernière fois. Les deux premiers paramètres sont le
nombre de cases en x et y. Les deux suivants sont la largeur graphique des cases en x et
y. Les deux derniers sont l’espace entre les cases. Vous pouvez bien entendu modifier
ces valeurs à votre convenance.
Créez ensuite une imagette correspondant à une case vivante :
Créez la fonction d’affichage de la matrice :
Et enfin dites au monde d’utiliser cette fonction pour l’affichage :
Récupérez la matrice sous-jacente au monde :
Mettez-y une cellule vivante :
(Vous pouvez toujours utiliser aussi .)
Et affichez le tout :
3