II. Travail demandé : objectifs principaux et
secondaires
Comme nous l'avons déjà précisé, le projet, BioDyn3D, est une amélioration de NetBioDyn qui
introduit la 3D. Par conséquent, BioDyn3D devra avant toute chose d'être au moins capable de faire
les mêmes choses, tout du moins d'un point de vue simulation.
Les fonctionnalités qu'il faudra donc forcément inclure sont :
•grille redimensionnable (dimensions X, Y ; dimension Z ajoutée pour BioDyn3D)
•définition / modification des entités (demi-vie)
•définition / modification des comportements (probabilité, réactions entité → entité)
•exécution, pause et pas-à-pas de la simulation
•enregistrement / chargement de modèles de simulations
•dessin / gommage d'entités sur la grille
Certaines fonctionnalités secondaires n'ont pas été retenues, parce qu'elles ne sont pas nécessaires
pour l'exécution du programme :
•graphes de quantités d'entités
•exportation des résultats de la simulation
•exportation du modèle de simulation sous forme textuelle
À noter que ces fonctionnalités restent prévues, mais leur priorité est très faible.
Une fois que toutes les fonctionnalités originales de NetBioDyn seront implémentées, il sera alors
possible de se pencher sur les extensions, qui permettront à BioDyn3D de bien se distinguer de son
ancêtre. On citera comme nouveautés :
•molécules : produites et consommées par les entités
•réactions « simples » : différentes des réactions de NetBioDyn : chaque direction peut avoir
une entité différente. Quelque chose d'assez similaire existe déjà dans une ancienne version
de NetBioDyn.
Idéalement, on souhaiterait aussi que les fonctionnalités suivantes soient implémentées :
•système de « cloud » pour stocker/charger des modèles de simulation, afin de pouvoir les
partager
•support OpenCL, ou au moins un traitement des données en parallèle : en effet, la grille peut
devenir très dense (beaucoup d'entités), ce qui aura tendance à ralentir le programme. La
parallélisation de l'exécution des comportements permettrait d'accélérer la simulation, mais
cela pourrait rendre le code plus difficile à gérer.
Enfin, il serait aussi souhaitable, à terme, de fournir une aide pour l'utilisation du programme :
tutoriels et fichiers d'exemples, pour permettre aux utilisateurs de comprendre le fonctionnement et
les possibilités de BioDyn3D.
5