• Aucun résultat trouvé

2.5 Problématique et motivations

2.5.2 Problèmes Inverses d'Automates Cellulaires

Dans cette partie, nous donnons dans un premier temps une dénition du problème inverse de façon générale puis du problème inverse des automates cellulaires. Ensuite, nous présentons quelques problèmes inverses des automates cellulaires traités dans la littérature.

2.5.2.1 Dénitions

De façon générale, dans un problème direct, on déduit les eets connaissant les causes [Kel76]. A l'inverse du problème direct, un problème est inverse si les eets sont connus et on cherche à connaitre les causes.

1. Dénition du problème inverse

opérateurs [Cav11]. Un problème inverse classique est déni comme suit : soit A un opérateur de l'espace de Hilbert H dans K.

Pour k ∈ K donné, déterminer f ∈ H telle que Af = k

Le problème est donc de gérer cette inversion pour obtenir une reconstruction précise. Il existe des cas où l'on ne peut pas inverser cet opérateur. C'est le cas des problèmes mal posés.

2. Dénition du problème bien posé

Un problème est bien posé [Had32], s'il respecte les conditions suivantes : - Il existe une solution au problème ;

- La solution si elle existe est unique ;

- La solution dépend constamment des données.

Un problème inverse peut aussi se dénir lorsqu'une des trois conditions précédentes n'est pas satisfaite.

3. Dénition de l'émergence inversée

L'émergence inversée réfère à un problème inverse dont les sorties du problème direct sont obtenues par émergence.

En règle générale, la simulation des systèmes par automates cellulaires consiste à créer l'environnement le plus proche de celui du phénomène étudié (conditions initiales, paramètres, règles d'évolution,...etc). Ce type de problèmes est dit  direct  car on veut connaitre l'état futur de l'automate cellulaire connaissant sa conguration initiale et les règles qui régissent son évolution.

Dans certains cas, an d'obtenir une structure à une génération donnée ou une dynamique particulière de l'automate cellulaire, il est important de déterminer et choisir une fonction de transition qui permettrait à l'automate d'évoluer et de donner cette structure ou cette dyna- mique. Ce problème est connu sous le nom du problème inverse ou problème d'identication des automates cellulaire. On peut distinguer diérents problèmes inverses :

1. Déterminer la fonction de transition de l'automate cellulaire permettant de retrouver des structures dynamiques particulières (comportement) de l'automate cellulaire.

2. Déterminer la fonction de transition de l'automate cellulaire en connaissant ses congura- tions initiale et nale.

3. Retrouver la conguration initiale de l'automate cellulaire en connaissant sa fonction de transition et sa conguration nale.

Dans ce travail, nous nous intéressons uniquement au deuxième cas des problèmes inverses des automates cellulaires. [GSD+03] ont qualié ce problème d'extrêmement dicile.

2.5.2.2 Quelques Problèmes Inverses d'Automates Cellulaires

Le problème inverse des automates cellulaires consiste à déterminer les règles d'évolutions locales des cellules (fonction de transition) permettant d'obtenir une conguration de l'auto- mate cellulaire donnée.

Cette partie présente quelques problèmes inverses des automates cellulaires traités dans la littérature dans diérentes spécialités allant de la théorie à la biologie en passant par la phy- sique (Fig.2.8). Tous ces problèmes ont pour objectif de déterminer la fonction de transition de l'automate cellulaire.

Figure 2.8  Quelques problèmes inverses des automates cellulaires

a) Problème de majoration et de synchronisation :

* Problème de majoration : également appelé problème de classication de densité.Il consiste à chercher une fonction de transition d'un automate cellulaire binaire permettant de classier le maximum de congurations initiales. Pour résoudre ce problème, Mitchell [MCD+96] a utilisé

un algorithme génétique pour la recherche d'une fonction de transition qui permet de classier le maximum de congurations initiales.

* Problème de synchronisation : Il consiste à trouver la fonction de transition de l'automate cellulaire dont, après un nombre de générations important, la conguration nale oscille entre une conguration ne comportant que des cellules à l'état  0  et une conguration où toutes les cellules sont à l'état  1 . Un algorithme génétique a été également proposé pour résoudre ce problème par [MCD+96].

b) Synchronisation des lignes de fusiliers :

Le problème de lignes de fusiliers a été inventé par Myhill en 1957 mais formalisé par [Moo64] comme suit :  Soit un automate cellulaire 1D où toutes les cellules sont à un même état sauf

les deux qui sont aux bords. L'état d'une cellule dépend de son état et de celui de ces deux voisines (une de chaque côté). Au départ, toutes les cellules sont dans un état appelé  latent  sauf l'une des deux cellules situées aux bords. Le problème consiste à déterminer le nombre d'états et à trouver une fonction de transition de l'automate de telle façon à ce que au bout d'un certain nombre de générations, toutes les cellules se mettent en même temps à un état jamais apparu avant appelé état de  feu  .

La dénition suivante [Yun93] n'est qu'une dénition imagée du problème mais qui lui a donné son nom :  comment synchroniser une ligne de fusiliers pour qu'ils se mettent à tirer tous en même temps, alors que l'ordre donné par un général situé à l'un des deux bords de l'escadron met un temps pour se propager ? . En d'autres termes, ce problème consiste à déterminer la fonction de transition avec le minimum de nombre d'états en un minimum de temps. Plusieurs travaux se sont intéressés à la résolution de ce problème. Les algorithmes de résolution sont majoritairement des heuristiques [UHS05].

c) Filtrage et segmentation d'images :

Plusieurs travaux dans la littérature proposent d'utiliser les automates cellulaires pour segmen- ter des images en utilisant l'approche par contours. La segmentation par automate cellulaire consiste à déterminer la fonction de transition permettant à l'automate cellulaire d'évoluer d'une conguration initiale qui est l'image à segmenter vers une conguration nale représen- tant les contours de l'image à segmenter.

Dans [SBM07] et [BMA06], les auteurs utilisent un algorithme génétique pour extraire les règles d'un automate cellulaire pour la détection de contours sur images binaires. Une population initiale d'AC candidats est assimilée à des chromosomes. Un processus de sélection d'individus par croisement et mutation se fait itérativement. De ce processus cyclique, va émerger un en- semble d'individus (règles) intéressants, qui ont une tness élevée. L'un d'eux sera la solution retenue.

Dans [Ros06] l'auteur utilise une approche SFFS (Sequential Floating Forward Search), basée sur le Hill Climbing, pour sélectionner les règles. Cette approche a l'avantage d'être simple et facile à implémenter. Et elle ne nécessite pas de paramètres à régler comme pour les AGs. Elle a été appliquée pour le ltrage d'images binaires, amincissement de formes..

* Dans [Ros10], l'auteur décrit une version modiée de SFFS pour traiter directement et e- cacement des images à niveaux de gris. Comme le nombre de règles augmente dans ce cas, la méthode utilisée vise à trouver un codage dans le voisinage immédiat d'un pixel, pour réduire le nombre d'états de 256 à 3. le nombre de règles à considérer a été réduit à 954. les applica- tions en traitement d'images sont : le débruitage, détection de contours, détection d'arêtes et vallées (creux).

d) Recherche d'automates cellulaires universels :

Turing [Tur48] a introduit la notion d'une caractéristique fondamentale appelée universalité. Un automate cellulaire est universel s'il est capable de calculer toutes les fonctions calculables, c'est ce que l'on appelle l'Universalité de Turing. Une fonction f est calculable s'il existe un algorithme permettant de calculer f(x) pour chaque argument x en un nombre d'états ni. [BCG82]ont montré que le jeu de la vie est un automate cellulaire universel car il peut réaliser n'importe quelle fonction calculable et que toutes les portes (opérateurs) logiques peuvent être réalisées à l'aide d'interactions entre gures connues, stables ou périodique. Le planeur (les planeurs sont des formes qui réapparaissent dans des positions diérentes après un certain nombre de générations de l'automate cellulaire) est équivalent à l'unité de base bit qui permet à l'information de circuler. Chaque nombre est une chaine de bits obtenue par un faisceau de planeurs générés par des canons à planeurs.

[Sap03] s'est basé sur cette notion pour rechercher des automates cellulaires universels. Un automate cellulaire est universel s'il accepte :

- des planeurs, qui se déplacent dans la grille et permettent la représentation et la transmission d'informations ;

- des canons à planeurs qui émettent des ux de planeurs.

[Sap03] ont proposé un couplage d'algorithmes évolutionnaires et d'automates cellulaires pour rechercher des automates cellulaires universels. Ils ont considéré un automate cellulaire binaire 2D et un système d'interaction de Moore de rayon R = 1.

e) Extraction de la fonction de transition d'un automate cellulaire à partir d'un diagramme spatio-temporel :

[II08] ont proposé une méthode pour extraire la fonction de transition d'un automate cellulaire 1D à partir d'un diagramme spatio-temporel (espace-temps) et de dénir le rayon du système d'interaction R. Ils ont étudié deux automates cellulaires : un automate cellulaire déterministe et un automate cellulaire stochastique.

f) Problème de génération de formes :

* Pour étudier l'embryogénèse et les phénomènes de diérenciation cellulaire, [DG+99] ont

proposé d'utiliser un algorithme génétique pour générer des formes pleines représentant une colonie de cellules avec des automates cellulaires. L'algorithme génétique permet de déterminer la fonction de transition de l'automate cellulaire ainsi que les conditions correspondant à la mise à jour d'une cellule (direction, activation de la règle d'évolution locale).

* Chavoya et Duthen [CD06] ont proposé un modèle basé sur un automate cellulaire pour la génération de formes 2D pleines (carré, triangle, losange et cercle) à partir d'une cellule placée au centre de la grille. La fonction de transition ainsi que le nombre de générations de l'automate cellulaire sont déterminés par un algorithme génétique. Ce modèle est implémenté

sur un environnement programmable de modélisation NetLogo qui est basé sur des systèmes multi-agents. Cet environnement est utilisé pour modéliser et simuler certains phénomènes naturels et sociaux.

*Breukelaar et Back [BB05] se sont également intéressés à la génération de formes 2D et 3D par automate cellulaire. Parmi les formes à générer, ils ont traité le problème du damier. Ils ont proposé d'utiliser un algorithme génétique pour déterminer la fonction de transition de l'automate.

g)Dans [APV05], les auteurs ont eectué l'évolution d'un automate cellulaire par algo- rithme génétique pour la prédiction de séquences binaires complexes.