• Aucun résultat trouvé

Automates cellulaires

2.2 Automates cellulaires classiques

2.2.1 Description informelle

Un automate cellulaire est d´ecrit par la donn´ee d’un espace cellulaire discret, d’un voisi-nage, d’un alphabet fini (ou ensemble fini d’´etats) et d’une fonction de transition (ou r`egle).

L’espace cellulaire est une grille r´eguli`ere qui poss`ede une dimension. Dans le cas de la mod´eli-sation de ph´enom`enes naturels, les espaces 2D et 3D sont ´evidemment privil´egi´es. N´eanmoins, l’´etude th´eorique syst´ematique des automates cellulaires s’est faite en une dimension, et il est

´egalement possible de bˆatir des automates cellulaires de dimension quelconque. La structure topologique de cet espace conditionne le type de voisinage de l’automate cellulaire. Le voisi-nage de la cellule est l’ensemble des cellules qui vont influer sur l’´etat de cette cellule. Dans le cas classique d’une grille 2D `a maille carr´ee (´equivalent `a un ´echiquier infini), les deux voi-sinages les plus courants sont les voivoi-sinages dits de Von Neumann et de Moore, qui incluent respectivement 4 et 8 voisins, plus la cellule centrale (ousite). Des voisinages ´etendus peuvent ˆetre ´egalement consid´er´es (figure 2.1), on parle alors de voisinages R-axial et R-radial :

Voisinage R-axial de s ={c∈C, |cx−sx| ≤R ∧ |cy−sy| ≤R }

Voisinage R-radial de s ={c∈C, |cx−sx|+|cy−sy| ≤R } (2.1) avec C l’espace cellulaire 2D, sle site (cellule centrale), etcx, sx (respectivementcy, sy) les coordonn´ees horizontales (respectivement verticales) de cets. Il est `a noter que le voisinage de Von Neumann peut ˆetre consid´er´e comme le voisinage 1-axial, celui de Moore comme le voisinage 1-radial. `A l’inverse, on peut rencontrer le cas extrˆeme du voisinage restreint `a la cellule elle-mˆeme (voisinage 0-axial ou 0-radial). Enfin, le voisinage peut ˆetre asym´etrique, voire mˆeme al´eatoirement d´efini.

Chaque cellule est caract´eris´ee `a un instant donn´e par son ´etat, ´el´ement de l’ensemble fini d’´etats de l’automate cellulaire. L’ensemble d’´etat le plus simple contient deux ´el´ements {0, 1}ou{noir, blanc}(la possibilit´e de repr´esenter visuellement les automates cellulaires est un de leurs attraits majeurs, et les couleurs ou niveaux de gris ont ´et´e souvent utilis´es pour coder les ´etats). Comme le voisinage de Von Neumann, cet ensemble d’´etats, ´equivalent au bit de l’informatique, est `a la base des premiers automates cellulaires (appel´es parfois automates cellulaires ´el´ementaires) et suffit `a produire en une dimension les comportements les plus complexes et les moins pr´evisibles, comme l’a montr´e Wolfram (2002). Enfin, l’´etat courant de la cellule est donn´e par la fonction de transition, qui prend en compte le voisinage de la cellule pour calculer le nouvel ´etat. L’automate cellulaire classique est discret spatialement,

2.2. Automates cellulaires classiques 31

(a) Voisinage de Von Neu-mann

(b) Voisinage de Moore (c) Voisinage 2-radial (d) Voisinage 2-axial

Figure 2.1 – Diff´erents voisinages classiques d’un automate cellulaire bidimensionnel.

mais aussi temporellement, et ´evolue de mani`ere synchrone : le calcul des nouveaux ´etats des cellules est fait `a partir des ´etats courants des cellules, qui sont mises `a jour«simultan´ement» (ce parall´elisme id´eal n’´etant souvent pas r´ealisable concr`etement, une solution fr´equemment utilis´ee est de faire la lecture de l’´etat courant `a partir d’une copie des cellules, faite avant toute modification). Il est bien sˆur n´ecessaire de d´efinir un ´etat initial des cellules afin de pouvoir amorcer l’´evolution du syst`eme.

2.2.2 D´efinition formelle

De fa¸con formelle, un automate cellulaire classique peut se repr´esenter par un quadruplet : AC =h C, Q, f V i

avec les d´efinitions suivantes :

C ⊆Zn (n∈N) d´efinit l’espace cellulaire, correspondant `a la discr´etisation de l’espace

`andimensions ´etudi´e,

Q={qi, i∈N}est un ensemble fini d’´etats, appel´e ´egalement alphabet, f est une fonction deQp dansQ, dite fonction de transition (ou r`egle locale),

V = (−→v1, . . . ,−→vp) est un ensemble ordonn´e de p vecteurs de Zn qui d´efinit le voisinage de dimensionp identique pour toutes les cellules et qui sert `a la fonction de transitionf; le voisinage d’une cellulec∈C se d´efinit alors par :

V(c) = (c+−→vi)i[1..p]∈Cp

Il est `a noter que le vecteur nul peut faire partie de la d´efinition du voisinage, autrement dit la cellule peut ˆetre sa propre voisine.

On appelle configuration de l’automate cellulaire, l’applicationh:N×C →Qqui donne `a chaque instantt∈N, correspondant `a une it´eration, l’´etat des cellulescdeC; par commodit´e, nous noteronsh(t, c) en indi¸cant l’applicationhpart:ht(c) ;h0d´efinit alors un ´etat particulier de l’automate cellulaire appel´e ´etat initial.

32 Chapitre 2. Automates cellulaires L’´evolution globale du syst`eme entre les instants tett+ 1 se traduit avec ces d´efinitions par la formule suivante :

∀ t∈N, ∀ c∈C, ht+1(c) =f

ht c+−→v1

, . . . , ht c+−→vp

(2.2)

Il est int´eressant de relever que les caract´eristiques de l’automate cellulaire peuvent se r´epartir de fa¸con naturelle en sa partie structurelle, comprenant C et Q, et sa partie fonc-tionnelle, compos´ee de V etf.

2.2.3 Historique

2.2.3.1 Premi`ere p´eriode (1950–1970) : le probl`eme de l’autor´eplication

John Von Neumann (1903–1957) fut l’un des pionniers de la science informatique, don-nant notamment en 1945 une description du principe de l’architecture d’un ordinateur. Dans les ann´ees 1940, il s’int´eresse au probl`eme de l’autor´eplication et cherche `a construire un au-tomate capable de se reproduire. Parall`element `a cette recherche, un autre g´enie pr´ecurseur, Stanislaw Ulam (1909-1984), qui ´etudiait la croissance des cristaux, s’amusait `a utiliser les premiers ordinateurs du laboratoire de Los Alamos pour produire des «objets g´eom´etriques r´ecursivement d´efinis»(recursively defined geometrical objects) et ´etudier leur ´evolution. Ces objets ´etaient d´efinis dans une grille r´eguli`ere de cellules, dans un ´etat passif ou un ´etat actif, et changeant d’´etat en fonction de leur voisinage. Ulam simulait ainsi des syst`emes proches d’automates cellulaires 2D et remarqua l’apparition de figures complexes (ces travaux furent publi´es en 1970).

Von Neumann, apr`es avoir envisag´e des mod`eles bas´es sur des usines 3D d´ecrites par des ´equations aux d´eriv´ees partielles, essayait de concevoir un syst`eme robotique capable de se reproduire `a partir de pi`eces d´etach´ees. Il finit par penser qu’un syst`eme bidimensionnel pourrait ˆetre suffisant, et en 1951, Ulam lui sugg´era d’utiliser le principe de ses «espaces cellulaires»pour tenter de construire son automate autor´eplicant. Il simplifia donc son mod`ele et parvint vers 1952 `a un automate cellulaire 2D `a 29 couleurs pour chaque cellule, et des r`egles complexes reproduisant les op´erations de composants ´electroniques et m´ecaniques. Il lui fut n´ecessaire de construire un syst`eme de 200 000 cellules afin de donner la preuve math´ematique de la possibilit´e d’autor´eplication de ce syst`eme. Ces travaux furent compl´et´es et publi´es en 1966, et il est remarquable de constater qu’il fallut attendre presque 50 ans pour en voir proposer une impl´ementation concr`ete (Pesavento, 1995).

Pendant les ann´ees suivantes, les automates cellulaires furent surtout ´etudi´es sous l’angle de leurs propri´et´es math´ematiques, et notamment leur capacit´e `a l’autor´eplication. Ainsi Codd (1968) proposa une nouvelle solution au probl`eme de l’autor´eplication, avec 8 ´etats au lieu des 29 ´etats de la solution de Von Neumann. Diff´erents probl`emes furent abord´es, comme le jardin d’´Eden (trouver une configuration qui ne puisse ˆetre qu’une configuration initiale) ou la synchronisation des fusiliers (trouver un automate cellulaire unidimensionnel, tel que, partant d’une configuration o`u toutes les cellules sont dans l’´etat de repos `a l’exception d’une unique cellule, on arrive `a une configuration o`u toutes les cellules sont dans un mˆeme ´etat jamais apparu avant). Le travail sur les automates cellulaires ´etait devenu relativement ´esot´erique,

2.2. Automates cellulaires classiques 33 et l’int´erˆet qu’il avait suscit´e commen¸cait `a s’estomper. L’invention de trois r`egles simples allait changer cet ´etat de fait.

2.2.3.2 Deuxi`eme p´eriode (1970–1982) : le jeu de la vie

En 1968, le math´ematicien John Conway, int´eress´e par la logique math´ematique et les jeux de simulation, commen¸ca `a exp´erimenter diff´erentes r`egles applicables `a un automate cellulaire 2D. En 1970 il proposa ce qu’il appela le jeu de la vie (The Game of Life ou plus simplementLife), bas´e sur un automate cellulaire 2D, muni d’un voisinage de Moore, `a deux

´etats {vivante, morte} et ´evoluant selon les trois r`egles suivantes : – une cellule morte entour´ee de 3 cellules vivantes devient vivante ; – une cellule vivante entour´ee de 2 ou 3 cellules vivantes reste vivante ; – dans tous les autres cas, la cellule est morte.

Ces r`egles peuvent ˆetre interpr´et´ees comme des simplifications extrˆemes des conditions n´e-cessaires `a la vie : une population n´ecessaire pour une naissance et suffisante pour ´eviter l’isolement, mais pas trop nombreuse de mani`ere `a pr´evenir la surpopulation. Il est `a noter que ces r`egles n’impliquent aucune conservation de la mati`ere (en l’occurrence le nombre de cellules vivantes) : la conservation de la mati`ere n’est pas intrins`eque au mod`ele des auto-mates cellulaires classiques, elle n’existe que comme cons´equence des r`egles utilis´ees ; ce point est fondamental si l’on d´esire reproduire un ph´enom`ene naturel.

Le jeu de Conway fut rapidement popularis´e par un article du magazine Scientific Ame-rican (1970) et d`es lors il fut l’objet d’innombrables exp´eriences. Le terme«exp´erience» est tout `a fait appropri´e : il s’agit d’´etudier le comportement d’un syst`eme `a partir de conditions initiales donn´ees, de faire des hypoth`eses sur ces conditions initiales et renouveler l’exp´e-rience. Il ne s’agit pas de simulation puisque le syst`eme ´etudi´e est l’automate cellulaire en lui-mˆeme. Contrairement aux automates cellulaires pr´ec´edents, avec des degr´es de libert´e plus nombreux (on pouvait d´ecider du nombre d’´etats ou changer les r`egles en recherchant un but bien pr´ecis), Life est apparu comme un v´eritable monde virtuel `a explorer, r´eservant bien des surprises par les comportements impr´evisibles qu’il g´en`ere. Son succ`es fut tel qu’en 1974 Time Magazine a regrett´e qu’un tel temps de calcul soit gˆach´e par «des hordes croissantes de fanatiques»(growing hordes of fanatics) passant leurs journ´ees de bureau sur ce nouveau

«jouet»(cit´e par Rennard). N´eanmoins, l’´etude des propri´et´es deLifea permis de mettre en

´evidence l’existence d’objets cellulaires bien particuliers : les objets stables (p. ex. le carr´e), les oscillateurs (p. ex. le clignotant), les objets p´eriodiques (p. ex. le planeur, qui jouera un rˆole essentiel par la suite), etc.Life s’est ainsi enrichi d’un catalogue de plus en plus vaste, v´eritable faune peuplant cet univers virtuel. De plus, au del`a du cˆot´e r´ecr´eatif ind´eniable qui fit son succ`es, cette quˆete a permis de r´epondre `a des questions plus scientifiques.

La premi`ere question fut pos´ee par Conway d`es 1970 : pouvait-on trouver une figure `a croissance illimit´ee ? Faute de pouvoir ´etablir une preuve math´ematique, il a fallu que des informaticiens du MIT cr´eent la figure du«lance planeur»(glider gun) pour montrer qu’une telle figure existait bel et bien, et que la croissance illimit´ee ´etait bien possible dansLife. La deuxi`eme question abord´ee n’´etait pas nouvelle : il s’agit de l’existence de jardins d’´Eden, qui fut d´emontr´ee dans Life par le math´ematicien Alvy Ray Smith en 1970. Cependant la question fondamentale de la calculabilit´e universelle deLiferestait `a aborder, et c’est en 1982

34 Chapitre 2. Automates cellulaires

Figure 2.2 –Configuration d’une machine de Turing reproduite dansLife, con¸cue par Rendell (2002).

que cette ´etape importante allait ˆetre franchie par Berlekamp, Conway, et Guy, marquant ainsi la fin d’une p´eriode pleine d’enthousiasme pour les automates cellulaires. Le lecteur int´eress´e pourra trouver dans Rennard (2002) comment les fonctions logiques peuvent ˆetre reproduites par les figures de Life, et dans Rendell (2002) le d´etail d’une machine de Turing (figure 2.2).

2.2.3.3 Troisi`eme p´eriode : a new kind of science

Mˆeme si l’ouvrage auquel cette section emprunte son titre n’est paru qu’en 2002, il semble appropri´e pour d´efinir la p´eriode qui a succ´ed´e au formidable engouement suscit´e par Life.

Tout d’abord par une co¨ıncidence de dates, puisque son auteur, Stephen Wolfram, a ´ecrit son premier article traitant des automates cellulaires exactement en 1982. Ensuite parce que dans cet article, les automates cellulaires sont donn´es comme pouvant ˆetre utilis´es comme des mod`eles math´ematiques discrets de syst`emes physiques, biologiques et informatiques : ils passent donc d’un domaine purement math´ematique (o`u ils sont l’objet d’´etude) `a celui de la mod´elisation et de la simulation (o`u ils deviennent le mod`ele d’un autre syst`eme). Enfin, Wolfram va le premier entreprendre l’´etude syst´ematique d’une cat´egorie d’automates cellu-laires unidimensionnels, donnant ainsi une rigueur nouvelle `a ce champ d’investigation. Les automates cellulaires vont ˆetre d`es lors `a la fois objet d’´etude et outil de mod´elisation, prin-cipalement dans quatre domaines : la th´eorie math´ematique, les syst`emes informatiques, la mod´elisation physique et la mod´elisation de syst`emes biologiques ou sociaux. Comme soulign´e par les ´etats de l’art propos´es par Sarkar (2000) et Ganguly et coll. (2003), il existe d’une part les questions pos´ees par les aspects math´ematiques et informatiques des automates cellulaires, et d’autre part les questions pos´ees par leur utilisation dans la mod´elisation de ph´enom`enes naturels, autrement dit une fronti`ere s’est clairement dessin´ee entre le champ th´eorique et le champ applicatif.

2.2. Automates cellulaires classiques 35 L’´etude th´eorique des automates cellulaires va d’abord passer par la classification op´er´ee par Wolfram (1984), inspir´e par la th´eorie des syst`emes dynamiques et qui a abouti `a un syst`eme `a quatre classes :

1. l’´evolution de l’automate cellulaire conduit `a des configurations homog`enes (toutes les cellules sont dans le mˆeme ´etat) ;

2. l’´evolution conduit `a des structures stables ou p´eriodiques (`a p´eriode courte) ; 3. l’´evolution conduit `a des configurations chaotiques ;

4. l’´evolution conduit `a des structures locales complexes parfois persistantes (Life ´etant par exemple consid´er´e par Wolfram comme un automate cellulaire typique de cette quatri`eme classe, qui aurait seule la propri´et´e de calculabilit´e universelle).

Alors que Wolfram a men´e son ´etude en partant de configurations al´eatoires, Langton (1990) essaie de faire une analyse quantitative de la classification de Wolfram en introduisant le param`etre λ, une valeur statistique calcul´ee `a partir des r`egles de l’automate cellulaire.

En ´etudiant un comportement moyen d’automates cellulaires unidimensionnels en fonction de ce param`etre, il aboutit ´egalement `a quatre types de comportement qui se rapprochent des quatre classes de Wolfram. Outre la classification des automates cellulaires, qui reste un champ d’investigation ouvert, les probl`emes th´eoriques abord´es sont demeur´es classiquement les questions d’autor´eplication, de calculabilit´e et constructibilit´e universelles, ou encore de tessellation. Dans d’autres travaux, les automates cellulaires sont plutˆot consid´er´es comme des syst`emes informatiques abstraits, et sont utilis´es pour traiter les questions de complexit´e spatiale et temporelle, d’ind´ecidabilit´e des probl`emes ou de langages acceptables par les au-tomates cellulaires. Life a continu´e aussi `a fournir son lot d’´etudes : g´en´eralisation dans un espace `a trois dimensions, param´etrage des r`egles originelles, extension du rayon de voisinage.

Le champ applicatif des automates cellulaires est d’une grande diversit´e (l’´etat de l’art publi´e par Ganguly et coll. contient quelques 269 r´ef´erences dont la plupart sont des applica-tions d’automates cellulaires). Toffoli (1984) a montr´e que les automates cellulaires peuvent ˆetre utilis´es comme alternative aux ´equations diff´erentielles, ce qui revient `a dire que tout syst`eme physique ob´eissant `a des ´equations diff´erentielles peut ˆetre mod´elis´e par un automate cellulaire, avec l’avantage de permettre de g´erer facilement des ´etats initiaux et des conditions aux limites complexes. Malheureusement, les ´equations r´egissant un syst`eme ´etudi´e sont rare-ment ´etablies. Dans cette situation courante, les automates cellulaires ont prouv´e leur int´erˆet grˆace au principe d’´emergence : plutˆot que de tenter de comprendre un comportement global complexe, on tente d’en fixer des r`egles locales simples. Ces r`egles deviennent en quelque sorte les lois physiques (parfaitement connues) du monde virtuel d´efini par l’automate cellulaire, et il devient ainsi possible de tester et comparer le comportement global de cet univers. Toffoli (1994) va avancer et d´emontrer par l’exemple deux principes qui lui permettent de justifier la g´en´eralisation de cette m´ethodologie : (i) un comportement apparemment continu doit ´emer-ger `a une ´echelle macroscopique de tout m´ecanisme microscopique discret ; (ii) quasiment toutes les ´equations diff´erentielles de la physique connues sont les comportements limites de simples m´ecanismes microscopiques discrets. Que la th`ese de Toffoli soit av´er´ee ou non, il reste ´etabli que les automates cellulaires ont servi avec succ`es `a la simulation du comporte-ment d’un gaz ou de mat´eriaux magn´etiques, des processus de percolation, du d´eveloppecomporte-ment urbain, des processus de cristallisation, de la propagation des feux de forˆet, de la turbulence des fluides, du vieillissement, de la formation des nuages et des dunes de sable, etc. En de-hors des applications de simulation, les automates cellulaires servent aussi `a la conception d’ordinateurs massivement parall`eles, `a la reconnaissance de formes, `a la cryptographie, `a

36 Chapitre 2. Automates cellulaires la g´en´eration de nombres al´eatoires,... Soumis `a un telle quantit´e et `a une telle diversit´e d’emplois, il ´etait in´evitable que le mod`ele classique d’automates cellulaires soit l’objet de variations et d’extensions destin´ees `a en sp´ecialiser l’utilisation, au prix sans doute de la perte de sa simplicit´e et de sa g´en´ericit´e originelles. La section suivante ´enum`ere quelques-unes de ces variations et extensions.

2.2.4 Variations et extensions

Chacune des caract´eristique de l’automate cellulaire peut ˆetre la source d’une variation `a partir du mod`ele original : la forme des cellules, le synchronisme de la mise `a jour, le caract`ere discret des ´etats, l’uniformit´e et le d´eterminisme des r`egles. Nous allons bri`evement les passer en revue.

La forme des cellules: la principale alternative aux cellules carr´ees est la grille hexago-nale, qui peut permettre de mieux se rapprocher du comportement d’un ph´enom`ene naturel, comme la vision de la mouche ou la formation de flocons de neige (figure 2.3). Un autre exemple c´el`ebre est le mod`ele de gaz sur r´eseau FHP, bas´e sur des cellules triangulaires, et capable de simuler un fluide ob´eissant aux ´equations de Navier-Stokes (Frisch et coll., 1986).

Nous verrons cependant dans la section 6.3.1.4 que l’anisotropie de la propagation du contenu des cellules ne peut ˆetre compl`etement corrig´ee par le choix de la grille.

Figure 2.3 –Des flocons de neige obtenus sur une grille hexagonale (Coxe et Reiter, 2003).

Le synchronisme de la mise `a jour par la fonction de transition : une des motivations pour s’affranchir de la r`egle du synchronisme est la lourdeur qu’elle impose au niveau de l’impl´ementation, qui peut par cons´equent limiter la taille des espaces qui peuvent ˆetre simul´es efficacement. N´eanmoins, en g´en´eral, le comportement des r`egles est diff´erent selon la strat´egie de mise `a jour choisie, et le risque d’empˆecher tout comportement ´emergent existe. Certains chercheurs ont d’ailleurs avanc´e l’hypoth`ese que les propri´et´es int´eressantes des automates cellulaires ne seraient que la cons´equence de l’´evolution synchrone du syst`eme.

La continuit´e de l’espace des ´etats : en rempla¸cant les ´etats discrets de l’automate par une repr´esentation continue et les r`egles de transition par une fonction, il est possible d’obtenir des comportements proches des fluides et des gaz, comme l’a montr´e le mod`ele de fluides de Boltzmann sur r´eseau. Des exemples de simulation en sont donn´es par le mod`ele CML (Coupled Map Lattices) illustr´e par la figure 2.4.

L’uniformit´e des r`egles dans l’espace cellulaire : les automates cellulaires dits « hy-brides» autorisent que les r`egles locales puissent diff´erer d’une cellule (ou d’une r´egion de

L’uniformit´e des r`egles dans l’espace cellulaire : les automates cellulaires dits « hy-brides» autorisent que les r`egles locales puissent diff´erer d’une cellule (ou d’une r´egion de