(Retour à la liste)

M-6. Le jeu de la vie


Le jeu de la vie est un ensemble de règles décrivant l'évolution de cellules dans un espace à deux dimensions. Il a été inventé par John Horton Conway en 1970. Il est un exemple de ce qu'on appelle un automate cellulaire. Il est connu pour l'incroyable complexité des structures qu'il peut générer à partir de règles très simples.

Canon laser dans le jeu de la vie
Crédits image : Чинк

On peut le voir comme un « jeu à zéro joueurs » car il ne nécessite aucune intervention de la part de l'utilisateur. Il est donc intéressant à étudier en informatique car il permet de simuler des systèmes complexes sans intervention humaine.

Le jeu de la vie se déroule sur une grille à deux dimensions, théoriquement infinie (mais de taille finie dans la pratique). Chaque case de la grille peut être dans l'un des deux états possibles : vivante ou morte. Chaque case interagit avec ses huit voisins, qui sont les cases adjacentes horizontalement, verticalement et diagonalement.

À chaque étape, les transitions suivantes se produisent :

Cahier des charges

Vous devez écrire un programme qui permet de simuler le jeu de la vie sur une grille de taille laissée à votre choix.

Au lancement du programme, l'utilisateur peut donner l'état initial de la grille (en indiquant les cellules vivantes) ou laisser le programme choisir un état initial aléatoire.

Vous devez ensuite afficher la grille à chaque étape de la simulation, en laissant chaque étape visible un certain temps (par exemple une seconde).

Aucun exemple d'affichage n'est donné dans ce projet car un de vos objectifs est de concevoir une interface adaptée.

Pour aller plus loin (palier 4)

Une fois que vous avez atteint le palier 3 des fonctionnalités, voici quelques idées pour aller plus loin et atteindre le palier 4 :