Top Qs
Chronologie
Chat
Contexte
Jeu de la vie
automate cellulaire De Wikipédia, l'encyclopédie libre
Remove ads
Le jeu de la Vie (Game of Life) est un automate cellulaire — devenu un jeu de simulation mathématique — imaginé par John Horton Conway en 1970. Malgré des règles très simples, il est Turing-complet.

Règles
Résumé
Contexte
Le jeu de la Vie est un « jeu à zéro joueur », c'est-à-dire qu'il ne nécessite aucune intervention du joueur lors de son déroulement. Il s’agit d’un automate cellulaire, un modèle où chaque état conduit mécaniquement à l’état suivant à partir de règles préétablies.
Le jeu se déroule sur une grille à deux dimensions, théoriquement infinie, dont les cases — appelées « cellules », par analogie avec les cellules vivantes — peuvent prendre deux états distincts : « vivante » ou « morte ».
Chaque cellule possède huit voisines, qui sont les cellules adjacentes horizontalement, verticalement et diagonalement.
À chaque itération, l'état d’une cellule est entièrement déterminé par l’état de ses huit cellules voisines, selon les règles suivantes :

- Une cellule morte possédant exactement trois cellules voisines vivantes devient vivante (elle naît) ;
- Une cellule vivante ne possédant pas exactement deux ou trois cellules voisines vivantes meurt.
Ainsi, la configuration
donne au tour suivant la configuration
qui redonne ensuite la première.
On peut également formuler cette évolution ainsi :

- Si une cellule a exactement trois voisines vivantes, elle est vivante à l’étape suivante.
- C’est le cas de la cellule verte dans la configuration de gauche ;

- Si une cellule a exactement deux voisines vivantes, elle reste dans son état actuel à l’étape suivante.
- Dans le cas de la configuration de gauche, la cellule située entre les deux cellules vivantes reste morte à l’étape suivante ;

- si une cellule a strictement moins de deux ou strictement plus de trois voisines vivantes, elle est morte à l’étape suivante.
- C’est le cas de la cellule rouge dans la configuration de gauche.
L'état suivant d'une cellule est : (S = 3) OU (E = 1 ET S = 2).
Avec :
- S : nombre actuel de cellules vivantes dans son voisinage (entier naturel compris entre 0 et 8 inclus) ;
- E : état actuel de la cellule (entier naturel égal à 0 pour une cellule morte et égal à 1 pour une cellule vivante).
Légende des schémas
Afin de représenter le processus, les cellules vivantes sont généralement représentées colorées sur la grille, sur un fond de cellules mortes incolores.
Les schémas de cet article suivent les conventions de couleur suivantes :
- bleu : cellules en cours de vie ;
- vert : cellules naissantes ;
- rouge : cellules mourantes ;
- jaune : cellules ne vivant qu’une seule génération.
Remove ads
Histoire
Résumé
Contexte
Le jeu de la Vie est inventé en 1970 par John Horton Conway, professeur de mathématiques à l’université de Cambridge, au Royaume-Uni.
J. H. Conway s’intéresse alors à un problème proposé par le mathématicien John Leech dans le domaine de la théorie des groupes et qui avait trait à l’empilement dense de sphères à 24 dimensions (connu comme le réseau de Leech). Il découvre quelques propriétés remarquables et publie les résultats de son étude en 1968. Conway est également intéressé par un problème présenté vers les années 1940 par un mathématicien renommé : John von Neumann.
Ce dernier a essayé de trouver une machine hypothétique qui pourrait s’auto-reproduire. Il y parvient en construisant un modèle mathématique aux règles complexes sur un repère cartésien. Conway simplifie les idées de von Neumann en couplant ses résultats précédents sur les réseaux de Leech avec ses travaux sur les machines autoréplicatives, et donne ainsi naissance au « jeu de la Vie ».
Le premier contact entre le grand public et ces travaux se fait en 1970 à travers une publication dans Scientific American dans la rubrique de Martin Gardner : « Mathematical Games »[1].
Gardner écrit dans ses colonnes que « le jeu de la Vie » rendit Conway rapidement célèbre et qu'il permit également d'ouvrir un nouveau champ de recherche mathématique, celui des automates cellulaires. En effet, selon lui, les analogies du jeu de la Vie avec le développement, le déclin et les altérations d’une colonie de micro-organismes, le rapprochent des jeux de simulation qui miment les processus de la vie réelle.
D’après Gardner, Conway expérimenta plusieurs jeux de règles concernant la naissance, la mort et la survie d’une cellule avant d’en choisir un où la population des cellules n’explose pas (ce qui arrive souvent lorsque les conditions de naissances sont moins strictes), mais où des structures intéressantes apparaissent cependant facilement. À l’origine, John Conway y jouait à la main, en utilisant un plateau de go pour grille et des pierres de go pour matérialiser les cellules vivantes.
Plusieurs structures intéressantes furent découvertes, comme le « planeur », un motif qui se décale en diagonale toutes les quatre générations, ou divers « canons » qui génèrent un flux sans fin de planeurs. Ces possibilités augmentent l’intérêt pour le jeu de la Vie. Sa popularité augmente d’autant plus vite à une époque où une nouvelle génération de mini-ordinateurs plus économiques est commercialisée, ce qui permet de tester des structures pendant la nuit, lorsque personne d’autre n'utilise les ordinateurs.
Vers la fin des années 1980, la puissance des ordinateurs est suffisante pour permettre la création de programmes de recherche de structures automatiques efficaces ; couplés au développement massif d’Internet, ils conduisent à un renouveau dans la production de structures intéressantes.
Au bout du compte, le jeu de la Vie attire plus l’intérêt du grand public sur les automates cellulaires (entre autres grâce à divers économiseurs d’écran) que, par exemple, tous les travaux de Edgar Frank Codd, spécialiste reconnu du domaine et auteur de l’ouvrage de référence Cellular automata (1968)[2].
Remove ads
Structures
Résumé
Contexte
Des structures, constituées de plusieurs cellules, peuvent apparaître dans l’univers ; les plus classiques sont :
- les structures stables ;
- les structures périodiques, ou oscillateurs ;
- les vaisseaux ;
- les mathusalems.
Il existe également d’autres structures, qui apparaissent beaucoup plus rarement (voire pas du tout pour les jardins d'éden) dans l’univers de jeu :

- les puffeurs ;
- les canons ;
- les jardins d’Éden ;
- les spacefillers.
Structures stables

Les structures stables (en anglais still life) sont des ensembles de cellules ayant stoppé toute évolution : elles sont dans un état stationnaire et n’évoluent plus tant qu’aucun élément perturbateur n’apparaît dans leur voisinage. Un bloc de quatre cellules est la plus petite structure stable possible.
Certaines figures se stabilisent en structures florales après une succession d'itérations comparables à une floraison.
Oscillateurs

Les oscillateurs se transforment de manière cyclique, en revêtant plusieurs formes différentes avant de retrouver leur état initial. Des figures de ce type sont très nombreuses : on en connaît actuellement des centaines[3]. La « grenouille » est une structure qui se répète toutes les deux générations.
Elles peuvent apparaître relativement facilement dans l’univers de jeu par l’évolution spontanée de « graines » beaucoup plus simples.
Vaisseaux

Les vaisseaux — ou navires — (en anglais spaceships, « vaisseaux spatiaux ») sont des structures capables, après un certain nombre de générations, de produire une copie d’elles-mêmes, mais décalées dans l’univers du jeu.
Le déplacement d’un vaisseau qui retrouve après n étapes sa configuration initiale déplacée de A cases horizontalement et de B cases verticalement est noté A-B, et sa vitesse (A, B)c/n, où c représente la « vitesse de la lumière » dans le jeu de la Vie, c'est-à-dire la vitesse maximale d'une cellule par génération. L’existence de vaisseaux de type A - B pour A et B quelconques a été démontrée[réf. souhaitée]. On distingue :
- des vaisseaux de type transversal (ou orthogonaux), c’est-à-dire A = 0 ou B = 0 ;
- des vaisseaux de type diagonal, avec A = ± B ;
- des vaisseaux ayant un déplacement oblique, c'est-à-dire A ≠ ± B. On parle aussi de « vaisseau cavalier » (knightship en anglais).
Le premier vaisseau oblique, appelé Gemini, a été découvert par Andrew J. Wade en 2010[4]. Il se déplace de 5 120 cellules verticalement et de 1 024 cellules horizontalement toutes les 33 699 586 générations. Des variantes existent où sa vitesse et sa période sont différentes. C'est aussi un constructeur universel.
On prouve également qu’un vaisseau de type A - B a nécessairement une période N ≥ 2(A+B)[5], donc que la vitesse maximale pour un vaisseau diagonal est (1, 1)c/4, et que celle pour un vaisseau orthogonal (horizontal) est (2, 0)c/4 = (1, 0)c/2.
On sait construire des vaisseaux de taille et de période aussi grandes que souhaitées, en utilisant des séries de composants[6]. Le planeur est le plus petit vaisseau du jeu de la Vie, qui possède aussi la plus grande vitesse pour un vaisseau diagonal.
Mathusalems
Les mathusalems sont des structures actives qui mettent un certain temps avant de se stabiliser. Certains, comme les « lapins », mettent plus de 15 000 générations avant de se stabiliser en un nombre plus ou moins important de débris variés.
Puffeurs
Les puffeurs (de l’anglais puffer, « générateur de fumée ») sont des configurations qui se déplacent en laissant derrière elles une traînée constituée de débris.
Canons

Les canons sont des configurations qui émettent un autre motif, tel qu'un vaisseau, à intervalles réguliers. Ces vaisseaux sont des motifs qui continuent de se déplacer sur la grille de jeu. La périodicité des canons, soit l'intervalle de temps après lequel ils répètent leur comportement, peut varier. Voici quelques précisions sur les différents types de canons :
- Canon à planeurs (glider gun) : le plus célèbre est le canon à planeurs de Gosper, qui produit un planeur toutes les 30 générations. Il a été découvert par Bill Gosper en 1970 et fut la première structure connue à avoir une croissance infinie.
- Autres canons : il existe d'autres canons qui produisent des vaisseaux spatiaux ou d'autres motifs à différents intervalles. Certains peuvent le faire toutes les 15, 23, 60, 120, 240 générations, etc. La période dépend de la complexité de la structure du canon.
- Canons « pseudo-aléatoires » : il existe également des sortes de canons qui produisent des vaisseaux de manière « pseudo-aléatoires ». Ces structures ne sont pas totalement imprévisibles, mais elles ont des règles sous-jacentes complexes qui rendent difficile la prévision exacte de quand un vaisseau sera émis.
La variation des périodes des canons est souvent exploitée par les passionnés pour construire des calculateurs ou d'autres structures complexes au sein de l'univers du jeu de la Vie.
De telles structures peuvent être créées à partir de puffeurs que l’on modifie afin que les débris s’agencent sous forme de navires. Le premier canon à avoir été découvert émet un planeur toutes les trente générations.
Jardins d'Éden

Un jardin d’Éden est une configuration sans passé possible : aucune configuration ne donne à l’étape suivante un jardin d’Éden.
La démonstration mathématique se fonde sur la combinatoire et se trouve notamment dans Winning Ways for your Mathematical Plays, livre publié en 1982 par Berlekamp, Conway et Guy.
Constructeurs universels
En 2010, Gemini, le tout premier constructeur universel du jeu de la Vie, fut découvert. Cette immense figure fait 4 217 807 cellules sur 4 220 191. En avançant, cette figure crée une copie d'elle-même en détruisant la précédente. L'opération prend environ 34 millions de générations. Comme Gemini se déplace et ne laisse rien derrière lui, c'est aussi un vaisseau. C'est d'ailleurs le premier vaisseau à se déplacer obliquement, c'est-à-dire ni orthogonalement ni diagonalement.
Dimension et complexité

La puissance et la capacité mémoire des ordinateurs personnels depuis l'exploitation de systèmes 64 bits permet l’exploration de très grands espaces cellulaires du jeu de la Vie. On peut ainsi en espérer l’émergence de structures complexes d’un haut niveau d’auto-organisation, voire d’esthétique. Stephen Wolfram et d’autres[7],[8] ont exploré cette voie. Dès les années 1980, le clown émerge à l’itération 110 d’une dynamique d’un réseau amorcé à partir d’un U initial de sept cellules (appelé généralement pi heptomino) formant une image de la lettre U.
Le clown est formé à l’envers. Pour voir un clown comme sur l’illustration, c’est un U inversé qu’il faut dessiner.
Détails sur la dynamique du réseau : ce « U » de sept cellules (également appelé « heptomino pi ») évolue vers une structure complexe et « organique » en passant par des formes très esthétiques. De plus, la structure est autoreproductible avec un déphasage, la nouvelle structure fille (itération 45) interférant avec une version de la structure mère (itération 15) en cours d’évolution. À l’itération 110, on obtient cette image de « clown ». Puis le réseau se stabilise sur une forme stable oscillante complexe[9].
Remove ads
Questions mathématiques
Certaines propriétés du jeu de la Vie ont pu être démontrées, en particulier :
- la croissance d’une configuration est au maximum en t2. Cette propriété est triviale pour tout automate cellulaire bidimensionnel : dans le cas du jeu de la Vie, comme la vitesse de transmission de l'information est d'une case par pas de temps dans chacune des huit directions, le nombre de cellules vivantes est trivialement limité par une borne en 8t2. Nous ne connaissons pas encore la configuration dont le taux de croissance est maximal.
- l’existence de portes logiques ET, OU, NON[10]. Ces portes logiques permettent de coder une machine de Turing universelle au sein du jeu de la Vie. Par conséquent, le problème qui consiste à prédire le comportement asymptotique de toute structure du jeu de la Vie est indécidable.
Remove ads
Calculabilité
Malgré sa simplicité, ce jeu est une machine de Turing universelle[11] : il est possible de calculer tout algorithme pourvu que la grille soit suffisamment grande et les conditions initiales correctes.
Simulation
Résumé
Contexte
De nombreux programmes informatiques simulent des automates cellulaires, dont le jeu de la Vie, comme Mirek's Cellebration[12]. Ceux qui sont écrits en Java ou JavaScript peuvent être inclus aisément dans une page web. Une approche dite « naïve » pour la création de ces programmes consiste à représenter le terrain par un tableau bi-dimensionnel et faire évoluer les cellules une par une à chaque tour, en suivant directement les règles de Conway. Quoique simples à implémenter, ces algorithmes sont peu efficaces sur de grandes grilles[13].
En 1980, Bill Gosper crée Hashlife, un algorithme de simulation plus efficace, permettant de manipuler plusieurs millions de cellules sur des millions de générations en des temps plus courts. Cet algorithme considère une portion de l’espace du jeu relativement isolée de ses voisines, en simule l'évolution sur un certain nombre n de générations, puis mémorise le résultat. Si la configuration de départ se reproduit ailleurs, il est alors possible de « sauter » directement n générations pour cette partie du jeu, en réutilisant le résultat calculé précédemment. Ce nouvel algorithme simule donc différentes portions de l’espace à des vitesses différentes et parvient à préserver la cohérence aux bordures de chaque région. Il fait appel à une table de hachage pour mémoriser et retrouver rapidement des configurations locales.
Le comportement d’une implémentation du jeu de la Vie dépend de la manière de calculer la génération suivante. L'implémentation classique est synchrone, c'est-à-dire que l'état de chaque cellule de génération n+1 est calculé à partir de l'état des cellules de génération n. Bersini et Detours montrent en 1994 que les comportements « intéressants » du jeu de la Vie disparaissent avec la quasi-totalité des schémas de mise à jour non synchrones (où les états n+1 peuvent s'influencer les uns les autres)[14]. Cependant, Nehaniv démontre en 2002 que tout comportement synchrone peut être émulé par des automates cellulaires asynchrones et qu'il est donc possible de retrouver le comportement du jeu de la Vie sans « horloge globale » cadençant l'évolution des générations[15],[16].
Depuis 2008, de nombreux programmes (dont le plus connu est Golly[17]) intègrent cet algorithme dans une interface graphique. Ils permettent de créer des configurations de grande taille (Golly permet la simulation de jusqu'à 100 millions de cellules[18]) et de suivre leur évolution. Ces outils permettent d'approfondir l'étude des automates cellulaires.
Depuis 2012, une recherche sur le moteur de recherche Google des termes « Conway's game of life » fait apparaître un easter egg : un jeu de la Vie interactif s'affiche en arrière-plan.
Remove ads
Variantes
Il existe des variantes du jeu de la Vie, fondées sur des règles de voisinage légèrement différentes, par exemple HighLife ou Day & Night. Cette variante comporte deux types de cellules, les « positives » et les « négatives », chacune répondant aux mêmes règles, à la différence du signe. Une cellule positive nécessite une somme de 3 pour « naître », une négative une somme de −3. Les cellules vivantes s’intègrent dans le bilan des cellules alentour pour leur survie ou leur déclin. Les deux populations ne peuvent en général survivre côte à côte.
Bibliographie
: document utilisé comme source pour la rédaction de cet article.
- (en) Martin Gardner, « Mathematical Games. The fantastic combinations of John Conway’s new solitaire game « life », Scientific American, no 223, , p. 120-123 (lire en ligne, consulté le )

- (en) Edgar Frank Codd, Cellular Automata, New York Academic Press,

- Jean-Paul Delahaye, Jeux finis et infinis, Éditions du Seuil, (ISBN 978-2-02-096483-8), chap. 1 (« Quarante ans de jeu de la vie »)
Remove ads
Notes et références
Voir aussi
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads

