Projet Programmation L2 Les automates cellulaires 1 Introduction

Projet Programmation L2
Les automates cellulaires
Ann´
ee 2012-2013
1 Introduction
Selon Wikipedia (http://fr.wikipedia.org/wiki/Automate cellulaire)
“un automate cellulaire consiste en une grille r´
eguli`
ere de cellules contenant chacune
un ´
etat choisi parmi un ensemble fini et qui peut ´
evoluer au cours du temps. L´
etat
d’une cellule au temps t+1 est fonction de l’´
etat au temps td’un nombre fini de cel-
lules appel´
e son voisinage.
La grille r´
eguli`
ere est g´
en´
eralement compos´
ee de cellules carr´
ees, comme un ´
echiquier,
et elle peut ˆ
etre finie ou infinie. Le voisinage d’une cellule est g´
en´
eralement constitu´
e
des 8 cellules qui entourent la cellule en question.
L’exemple le plus connu d’un automate cellulaire est le Jeu de la vie de John
Conway. Dans le jeu de la vie, chaque cellule peut avoir deux ´
etats : morte ou vivante.
Les r`
egles pour l’´
evolution sont les suivantes.
si au temps tla cellule est vivante, alors au temps t+1
elle reste vivante si elle a exactement deux ou trois cellules vivantes dans son
voisinage
elle meure de solitude ou de surpeuplement sinon
si au temps tla cellule est morte, alors au temps t+1
elle devient vivante si dans son voisinage il y a exactement trois cellules vi-
vantes (ses trois ”parents”)
elle reste morte sinon
Si la grille est finie, il faut ´
egalement trouver des r`
egles sp´
eciales pour les cellules
du bord. Une fac¸on d’´
eviter cela est de consid´
erer un grille finie sans bord, par exemple
une grille torique ou une bouteille de Klein.
Les figures ci dessous montrent trois g´
en´
erations successives dans une grille infinie
du jeu de la vie.
1
2 Fonctionnalit´
es requises
Le but de ce projet est d’´
ecrire un programme qui permette de r´
ealiser l’activit´
e
d’un automate cellulaire. Il devra `
a une premi`
ere instance permettre de r´
ealiser le jeu
de la vie :
choisir le type de la grille : infinie, finie avec bord, finie torique, et ´
eventuellement
finie en bouteille de Klein
choisir la configuration initiale
visualiser l’´
evolution des g´
en´
erations - dans le cas d’une grille infinie, il faudra
en visualiser seulement une partie finie
Le programme devra ensuite permettre la r´
ealisation d’autres automates cellulaires :
des automates avec d`
es r`
egles diff´
erentes de celles du jeu de la vie - id´
ealement
l’utilisateur du programme devrait pouvoir entrer ses propres r`
egles `
a l’aide d’un
menu
des automates avec trois ou quatre ´
etats par cellule
des automates avec une notion diff´
erente de voisinage
des automates avec la grille compos´
ee de cellules hexagonales
d’autres extensions que vous pouvez inventer.
2
1 / 2 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !