• Aucun résultat trouvé

Exemple de graphe d’automates : les r´eseaux d’automates cellulaires

2.3 Calcul de trajectoires

3.1.4 Exemple de graphe d’automates : les r´eseaux d’automates cellulaires

n

X

j=1

wij´etat(xj)−θi

o`u ´etat(xk)∈S d´esigne l’´etat du neuronexk et H est la fonction de Heaviside :

H: R −→ S

x 7−→

0si x≤0

1si x >0

Le neurone xi sera donc activ´e si la somme pond´er´ee de ses entr´ees (c’est-`a-dire de tous les

neurones du r´eseaux) est suffisamment forte pour d´epasser le seuil θi. Dans le cas contraire, il

sera d´esactiv´e.

Dans la partie qui suit, nous nous int´eressons `a une autre classe de graphes d’automates

largement ´etudi´ee dans la litt´erature qui sont les automates cellulaires.

3.1.4 Exemple de graphe d’automates : les r´eseaux d’automates cellulaires

D´efinition

Nous allons donner ici la d´efinition d’un r´eseau d’automates cellulaires (voir [63]) en

repre-nant par ´etape la d´efinition 3.7. Nous consid´erons un grapheG= (X,A) infini de degr´e born´e.

Le plus souvent, l’ensemble X est la grilleZd, avecd∈N (voir figure 3.1). Nous nous pla¸cons

dans ce cas d´esormais. L’ensemble des connexions A est donn´e par exemple par l’expression

suivante :

∀x, y∈Zd, (x→y)∈ A ⇐⇒ kx−yk= 1 (3.4)

Nous remarquons grˆace `a cette d´efinition que le graphe Gest sym´etrique, c’est-`a-dire que :

∀x, y∈Zd, (x→y)∈ A ⇐⇒(y→x)∈ A

Deux ´el´ementsxetydeZd tels que (x→y)∈ Aseront appel´espremiers voisins ou simplement

voisins. Il y a plusieurs mani`eres de d´efinir cet ensemble de connexions selon la normek.kque

l’on choisit. Si l’on choisit la normek.k1 (d´efinie parkxk1 =

d

X

i=1

|xi|), chaque cellule a 2dvoisins

(c’est le cas dans la figure 3.1). Si l’on choisit la norme k.k∞ (d´efinie par kxk∞ = max

i=1...d|xi|),

alors chaque cellule a 3d−1 voisins (sur la figure 3.1, il faut rajouter les liaisons diagonales :

Nord-Est, Sud-Est, etc.).

Le principe de base des automates cellulaires est l’uniformit´e du r´eseau, dans le sens que

chaque cellule sur la grille a le mˆeme ensemble d’´etats et la mˆeme r`egle de transition. De plus,

l’ensemble des voisins d’un automate se calcule de la mˆeme fa¸con pour tous les automates.

Grˆace `a ces hypoth`eses, nous pouvons formuler la d´efinition suivante :

Z

◦ ◦ ◦ ◦ ◦

◦ ◦ ◦ ◦ ◦

◦ ◦ ◦ ◦ ◦ Z

◦ ◦ ◦ ◦ ◦

◦ ◦ ◦ ◦ ◦

Fig. 3.1: Graphe d’automates cellulaires sur Z2

. L’ensemble A des

connexions, repr´esent´e par les traints pointill´es, est donn´e par l’expression

(3.4) calcul´ee `a partir de la normek.k1.

D´efinition 3.9 Un r´eseau d’automates cellulairesR sur la grilleZd est donn´e par le quadruplet

(d, S,N, δ) o`u :

– d∈N est la dimension de la grille.

– S est l’ensemble (fini) des ´etats.

– Le voisinage N se r´eduit `a un sous-ensemble {n1, . . . , np} ordonn´eet fini de Zd.

– δ est la fonction de transition locale du r´eseau :δ : (S)K+1−→S

On appelle configurationdu r´eseauRtoute fonctionc:Zd −→S. L’ensemble des configurations

de R est CR=SZd

.

Une fois associ´e `a chaque automatex∈Zd un ´etats∈S(i.e. une fois choisie une

configura-tion initiale c), chaque automate calcule simultan´ement son ´etat suivants0 grˆace `a la formule :

s0 =δ(c(x), c(x+n1), . . . , c(x+np))

La configuration suivante c0 de cest donc :

∀x∈Zd, c0(x) =δ(c(x), c(x+n1), . . . , c(x+np))

Remarque 3.4 Dans le cas des automates cellulaires, nous avons fait l’hypoth`ese implicite que

tous les automates sont mis `a joursimultan´ement. En toute g´en´eralit´e, ceci n’est pas le cas pour

un r´eseau d’automates quelconque. Nous reviendrons sur ce point dans la suite en abordant la

dynamique des r´eseaux bool´eens.

Automates cellulaires et ´equations aux d´eriv´ees partielles

Les automates cellulaires ont de nombreuses applications dans des domaines vari´es, que ce

soit en math´ematiques ou en informatique. Ainsi, la r´esolution num´erique d’une ´equation aux

d´eriv´ees partielles par une discr´etisation de l’espace et du temps suivie d’un sch´ema it´eratif

peut en fait se voir comme la construction et l’it´eration d’un r´eseau d’automates cellulaires

associ´e `a cette ´equation.

Pour fixer les id´ees, consid´erons une fonctionu=u(t, x, y) `a valeurs dansR qui v´erifie une

´equation aux d´eriv´ees partielles d’´evolution :

∂u

∂t +L(u) =f

u(0, x, y) =u0(x, y)

(3.5)

o`uLest un op´erateur diff´erentiel non lin´eaire enu,f =f(t, x, y) etu0(x, y) sont des fonctions

donn´ees.

Nous consid´erons `a pr´esent une discr´etisation de l’EDP (3.5). Pour cela, nous choisissons trois

constantes r´eelles positives ∆x, ∆y et ∆t(pas en espace et en temps) et nous posons :

∀(i, j)∈Z2, xi=i∆x et yj =j∆y

∀n∈N, tn=n∆t (3.6)

Le but de la m´ethode est de calculer par un algorithme it´eratif une approximation de la solution

usur la grille (xi, yj). Nous ´etudions donc une suite `a trois indices :

un

i,j

n∈N

(i,j)∈Z2 telle que un

i,j

“approche”u(xi, yj, tn). A priori,un

i,j est un r´eel, nous reviendrons sur ce point pr´ecis dans la

suite.

Un sch´ema aux diff´erences finies explicite de l’´equation (3.5) selon la discr´etisation (3.6)

consiste donc `a se donner un op´erateurHdiscret et `a r´esoudre l’´equation r´ecurrente suivante :

∀n∈N, ∀(i, j) ∈Z2, uni,j+1=H unik,jk, unik+1,jk, . . . , uni+k,jk, unik,jk+1, . . . , uni+k,j+k

`a laquelle on ajoute la condition initiale : u0i,j =u0(xi, yj), pour tout (i, j) ∈ Z2. H est une

fonction de (2k+ 1)2 variables, on dira alors que le sch´ema est `a (2k+ 1)2 points.

La r´esolution num´erique d’une telle ´equation d´epend bien sˆur du choix de l’op´erateur H∆.

Une fois cet op´erateur judicieusement choisi (voir exemple 3.3 ci-dessous), il faut ensuite

mon-trer laconsistance d’un tel sch´ema avec l’EDP, puis saconvergence ainsi que sastabilit´e. Notre

objet n’est pas de traiter ici ces questions, relatives `a la r´esolution num´erique d’´equations aux

d´eriv´ees partielles. Nous nous contenterons de proposer l’´etude d’un exemple particulier afin

de pr´eciser les notions que nous venons d’aborder.

Exemple 3.3

Nous consid´erons une ´equation de diffusion en deux dimensions surR2(´equation de la chaleur) :

∂u

∂t −a∆u= 0

u(0, x, y) =u0(x, y)

(3.7)

avec a un r´eel positif. Nous supposons que les pas∆x et ∆y sont ´egaux (grille uniforme). La

discr´etisation de (3.7) n´ecessite la discr´etisation de trois termes. Nous utilisons pour la d´eriv´ee

temporelle une approximation d’Euler classique :

∂u

Pour les d´eriv´ees spatiales, nous choisissons un sch´ema centr´e :

2u

∂x2 (xi, yj, tn) ' u(xi−1, yj, tn)2u(xi, yx2j, tn) +u(xi+1, yj, tn)

2u

∂y2 (xi, yj, tn) ' u(xi, yj−1, tn)2u(xi, yj, tn) +u(xi, yj+1, tn)

∆x2

En injectant ces approximations dans l’´equation (3.7), nous obtenons l’´equation suivante :

uni,j+1−un

i,j

∆t − a

∆x2 uni−1,j−2uni,j+uni+1,j+uni,j−1−2uni,j+uni,j+1

= 0

d’o`u, en posant λ= at

∆x2 :

uni,j+1=λ uni−1,j+uni,j−1

+ (1−4λ)uni,j+λ uni+1,j+uni,j+1

Le sch´ema choisi est donc un sch´ema `a 5points :

H(u−1,0, u0,−1, u0,0, u0,1, u1,0) =λ(u−1,0+u0,−1) + (1−4λ)u0,0+λ(u1,0+u0,1)

Enfin, la condition initiale est donn´ee par : u0

i,j =u0(xi, yj), i et j appartenant `aZ.

Sur cet exemple, nous allons voir qu’`a ce sch´ema aux diff´erences finies explicite de l’´equation

d’´evolution (3.7), nous pouvons associer un r´eseau d’automates cellulaires d´efini plus haut

(d´efinition 3.9). Pour cela, il nous suffit d’adopter la m´ethode suivante :

1. La dimension du r´eseau est ´egale au nombre de variables spatiales dont d´epend l’inconnue

u. Dans notre exemple, on construit donc notre r´eseau sur la grille Z2.

2. Le voisinage d´epend des sch´emas de discr´etisation des d´eriv´ees que l’on choisit. Le principe

g´en´eral est que, pour calculer une approximation de la d´eriv´ee d’une fonction en un point

x, on n’a besoin que de la valeur de cette fonction aux points de la grille voisins de x.

Dans notre exemple, nous avons choisi un sch´ema `a 5 points, le voisinage peut s’exprimer

ainsi : N = ((−1,0),(0,−1),(0,0),(0,1),(1,0)) (cet ensemble est ordonn´e selon l’ordre

des variables dans l’op´erateur H d´efini plus haut).

3. La fonction de transitionδ est ´egale `a H.

Dans notre description, nous avons volontairement omis de pr´eciser l’ensemble des ´etats des

automates. Comme nous l’´evoquions plus haut, les valeursun

i,j sont a priori r´eelles, ce qui pose

un probl`eme car l’ensemble des ´etats d’un automate cellulaire doit ˆetre fini. Or, lorsque nous

sommes amen´es `a impl´ementer un tel sch´ema sur ordinateur, nous nous apercevons que les

valeurs des un

i,j sont des nombres flottants, qui sont en nombre fini (ce nombre d´epend bien

entendu de la fa¸con de coder ces flottants en machine). On peut donc consid´erer que l’ensemble

des ´etats des automates est en r´ealit´e fini puisqu’il est ´egal `a l’ensemble des nombres flottants.

La r´esolution num´erique sur ordinateur d’une ´equation aux d´eriv´ees partielles d’´evolution

par diff´erences finies peut donc ˆetre vue comme l’impl´ementation d’un r´eseau d’automates

cellulaires sur une grille Zd.

Remarque 3.5 Nous avons consid´er´e la solution u de l’´equation (3.5) comme ´etant d´efinie

pour(x, y)∈R2. Le plus souvent, un probl`eme de mod´elisation par des EDP consiste `a trouver

conditions aux limites sur la fronti`ere ∂Ω. Il n’est alors plus possible de d´efinir notre r´eseau

d’automates cellulaires sur la grille Z2, mais sur une partie de cette grille. Il nous faut dans

ce cas modifier notre d´efinition d’un r´eseau d’automates cellulaires, en le consid´erant sur un

graphe fini.

Dans cette partie, nous avons d´efini la notion de r´eseau d’automates sur un graphe ou

graphe d’automates. Nous avons vu que cette d´efinition est assez g´en´erale puisqu’elle englobe

plusieurs types de r´eseaux discrets, notamment les r´eseaux neuronaux de Hopfield ou encore

les automates cellulaires. Nous allons `a pr´esent d´efinir les r´eseaux d’automates bool´eens, qui

forment une sous-classe de r´eseaux largement utilis´ee dans la mod´elisation de r´eseaux issus de

la biologie.