[En développement] Simulateur de fourmilière: SimuAnt

Présentez vos expériences et projets de recherche en rapport avec les fourmis. N'hésitez pas à solliciter l'aide de la communauté pour mener à bien vos expériences. C'est aussi l'occasion d'aborder les fourmis comme support pédagogique auprès des élèves d'école primaire.
Répondre
Avatar de l’utilisateur
Thedahu
Larve 1
Larve 1
Messages : 19
Inscription : dim. 6 juil. 2014 14:16
Genre :

[En développement] Simulateur de fourmilière: SimuAnt

Message non lu par Thedahu »

Bonjour,
Dans ma présentation, je disais souhaiter développer une application permettant de simuler une fourmilière.
Depuis quelques jours maintenant, j'ai mis la mains à la pâte, et progresse doucement dans mon projet.

Présentation de SimuAnt
:arrow: Simulateur de fourmilière oui, mais précisément ?
SimuAnt est un logiciel qui va simuler le comportement de fourmis au seins d'une colonie.
La simulation commencera alors que la gyne sera seule, puis les premiers oeufs/larves/cocons, premières ouvrières etc ...
Le terrain (l'espace de simulation) évoluera avec la colonie, avec au départ un tube à essai vers un nid que choisira l'utilisateur.
L'objectif est donc de se rapprocher du comportement des fourmis, de pouvoir jouer avec certains paramètres à des fins ludiques (sans pour autant faire mal aux bestioles) ou tout simplement pour s'amuser.
Je ne prétend pas recopier à l'identique la nature! Elle est bien meilleure développeuse que moi, mais juste tenter de m'en rapprocher.

:arrow: Simulation ... Mais comme en vrai, il va falloir attendre plusieurs jours avant de voir sa première ouvrière ?!
Oui et non. L'avantage d'une simulation, c'est que celle-ci peut être accélérée, on peut même sauter des étapes.
Tout dépendra de l'utilisateur et des ses envies.

:arrow: Peut-on choisir entre plusieurs espèces ?
Bien sur! Un système de fichiers XML permet d'ajouter des espèces, et de définir un comportement particulier pour celle-ci.
L'objectif sera de pouvoir partager les données entre utilisateurs.

:arrow: Je suppose que l'on peut aussi choisir son futur nid ?
Exact, l'utilisateur pourra créer son propre nid, choisir la matière, les formes ...

:arrow: Fourmilère ok, mais aussi un ADF (Aire de Fourragement) ?
Oui. Vous devrez d'ailleurs y placer vos points de nourritures, d'eau pour vos fourmis.

:arrow: Je ne suis pas un As de l'informatique, puis-je utiliser ce programme ?
Oui, oui et oui! Ce programme sera conçu à la manière d'un jeu vidéo, avec une interface simple et logique.
Un tutoriel sera disponible à tout moment si vous bloquez.

:arrow: Puis-je sauvegarder ma colonie ?
Oui !
De plus, lors de chargement de celle-ci, deux choix vous seront proposés:
- Soit je reprend ma partie comme je l'ai quitté.
- Soit je la reprend avec la prise en compte du temps qui s'est écoulé.

:arrow: Très bien, où je signe ?!
Oula ! On y est pas encore. Je suis au début du développement, j'ai pas mal de données et graphes sous les mains mais coder prend du temps, et le temps, j'en manque un peu :-P .
Cela dit, je développe à mon rythme et je posterai l'évolution du programme dans ce sujet au fur et à mesure.

Évolution du développement (Mise à jour 31 Juil 14)

Ressources:
  • Création d'un XML "species.xml" qui références tous les fichiers des espèces.
  • Création de l'espèce Lasius Debugger ayant des caractéristiques proches des Lasius niger.

Visuel:
  • Création de la fenêtre principal.
  • Création du menu de choix de l'espèce.

Moteur:
  • Ajout d'un lecteur XML pour les espèces.
  • Ajout d'un DataCenter pour la gestion des données.
  • Création de l'objet Species qui contiendra les données d'une espèces.
  • Création de l'objet Ant qui va jouer le rôle d'une fourmis.
  • Ajout de paramètres dans l'objet Ant (Taille, eau, nourriture, age, stresse, ...).
  • Ajout de différent états de Ant (Œuf, larve, ...).
  • Ajout de différent types de Ant (Ouvrière, gyne).
  • Création du moteur AntEngine
  • Mise en place de l'évolution du temps.
  • Mise en place de l'évolution du fourmis au cours du temps (Relation entre Ant et AntEngine).
  • Création de l'objet Map qui va jouer le rôle de la zone de simulation (Tube à essai, nid).
  • Création de l'objet WaterZone qui va jouer le rôle de zone d'eau.
  • Mise en place de la relation entre WaterZone :arrow: Map :arrow: AntEngine.
  • Changement de WaterZone en Zone.
  • Ajout des types de zones : ZoneType (eau, nourriture, ...).
  • Création de l'objet Action qui représentera l'action que doit accomplir une fourmi.
  • Ajout des type d'actions : ActionType (Attendre, se déplacer, manger, boire, ...).
  • Ajout du gestionnaire d'action : ActionManager.
  • Ajout des positions des fourmis. *NEW*
  • Ajout de la liste d'action dans Ant. *NEW*
  • Création de l'objet Feel (sentiments/envies de la fourmi). *NEW*
  • Ajout du sentiment de faim et de soif. *NEW*
  • La fourmi gère ses besoins personnels. *NEW*
  • Ajout d'une licorne et 2 arcs-en-ciel. *NEW*

Debug:
  • Mise en place d'une console de débogage.
  • Ajout de l'onglet Log pour avoir tous les retours de l'application.
  • Ajout de l'onglet Ants pour avoir toutes les informations pour chaque fourmis.

Screenshot:
Pas grand chose à montrer, mais un peu de visuel, c'est toujours agréable.
/!\Attention: Le visuel n'est pas du tout déterminé, ce que vous verrez par la suite ne reflétera pas le contenu final.
Image

Votre avis m’intéresse
Avez-vous une remarque, une idée, un conseil, une critique, un encouragement XD ?
N'hésitez pas à me le dire, car cela me sera très utile tout au long du développement !

@ Bientôt
Dernière modification par Thedahu le jeu. 31 juil. 2014 16:01, modifié 7 fois.
Raison : Mis en post-it
Avatar de l'utilisateur
Coffee
Gyne Vierge
Gyne Vierge
Messages : 645
Inscription : lun. 23 juin 2014 14:35

Re: [En développement] Simulateur de fourmilière: SimuAnt

Message non lu par Coffee »

J'espérais un truc en python avec de la PL intégrée via Pylog. :(
Sinon c'est super !
Le code source sera (ou est, si j'ai mal lu) visible ? Histoire de faire le script kiddy et voir ce que t'as fait ! :-p

Par contre, si tu pouvais orienter le truc vers de la simulation "naturelle" et non de "artifical antfarm simulator", ce serait top ! *good*

Je suis dispo pour des graphismes. J'ai juste pas de logiciel pro de vectorisation, mais je pense pas que tu veuilles traiter ce genre de données. ;)

Bonne chance et courage !

(Tu comptes utiliser de la simulation 3D "en 2D", c'est à dire par couches ? Un peu comme Dwarf Fortress ?)
Dernière modification par Coffee le sam. 26 juil. 2014 18:35, modifié 1 fois.
Avatar de l’utilisateur
formicaaa
Nymphe 1
Nymphe 1
Messages : 144
Inscription : ven. 9 mai 2014 17:52
Genre :
Contact :

Re: [En développement] Simulateur de fourmilière: SimuAnt

Message non lu par formicaaa »

Moi je dis bravo ! Et bonne chance, j'ai lu, c'est génial ! :slap: o_O
Venez sur mon petit site internet sur les fourmis, cela me fera plaisir!!! (lien dans mon profil et dans la partie annuaire du forum)
Avatar de l’utilisateur
Thedahu
Larve 1
Larve 1
Messages : 19
Inscription : dim. 6 juil. 2014 14:16
Genre :

Re: [En développement] Simulateur de fourmilière: SimuAnt

Message non lu par Thedahu »

Coffee a écrit :J'espérais un truc en python avec de la PL intégrée via Pylog. :(
Sinon c'est super !
Le code source sera (ou est, si j'ai mal lu) visible ? Histoire de faire le script kiddy et voir ce que t'as fait ! :-p
[...]
Hey hey! Merci de ta réponse.
Le code source du moteur sera sur un Git quand il sera bien avancé.
Pour ce qui est de la simu naturelle, ce sera juste deux trois paramètres à changer, alors pourquoi ne pas faire les deux ? (vive la programmation objet!) XD
La vecto ... cette horrible chose à traiter D: A voir, je regarderai ce qui est disponible dans le domaine de l'opensource, mais c'est pas la priorité. Pour le développement, je vais me contenté de jolies rectangles noirs, et par la suite, des bitmaps. :-p

(Le moteur est indépendant, 2D/3D, c'est juste l'histoire de quelques lignes à changer. Pour ce projet, la vue sera en 2D en vue de face, et pour l'ADF, en vue de dessus. Dwarf fortress, ce jeu *love*. )
formicaaa a écrit :Moi je dis bravo ! Et bonne chance, j'ai lu, c'est génial ! :slap: o_O
Je suis content que ça te plaise ! Merci !
Dernière modification par Thedahu le sam. 26 juil. 2014 20:01, modifié 2 fois.
Avatar de l’utilisateur
Ketrurroyal
Ouvrière
Ouvrière
Messages : 273
Inscription : lun. 16 juin 2014 15:59
Localisation : Bas-Rhin (France)
Genre :

Re: [En développement] Simulateur de fourmilière: SimuAnt

Message non lu par Ketrurroyal »

C'est tout simplement .... EXCELLENT. 8-O
Bravo ! :slap:
Les fourmis, une passion depuis tout petit grâce à leur intelligence et leur organisation surprenante !
Avatar de l’utilisateur
dadadou
Gyne Vierge
Gyne Vierge
Messages : 621
Inscription : jeu. 11 juin 2009 19:46
Localisation : Val-d'Oise (France)
Genre :

Re: [En développement] Simulateur de fourmilière: SimuAnt

Message non lu par dadadou »

Je trouve l'idée super intéressante mais elle me semble être un travail de titan.
Il faudra que tu récoltes des informations précises pour chaque espèce, et savoir comment elles évoluent selon telle ou telle situation.
Et plein d'autres choses à prendre en compte.
Mais sinon ça donne vraiment envie ! :slap:
Avatar de l'utilisateur
Coffee
Gyne Vierge
Gyne Vierge
Messages : 645
Inscription : lun. 23 juin 2014 14:35

Re: [En développement] Simulateur de fourmilière: SimuAnt

Message non lu par Coffee »

Thedahu a écrit :
Coffee a écrit : Hey hey! Merci de ta réponse.
Le code source du moteur sera sur un Git quand il sera bien avancé.
Pour ce qui est de la simu naturelle, ce sera juste deux trois paramètres à changer, alors pourquoi ne pas faire les deux ? (vive la programmation objet!) XD
La vecto ... cette horrible chose à traiter D: A voir, je regarderai ce qui est disponible dans le domaine de l'opensource, mais c'est pas la priorité. Pour le développement, je vais me contenter de jolies rectangles noirs, et par la suite, des bitmaps. :-p

(Le moteur est indépendant, 2D/3D, c'est juste l'histoire de quelques lignes à changer. Pour ce projet, la vue sera en 2D en vue de face, et pour l'ADF, en vue de dessus. Dwarf fortress, ce jeu

Et sinon tu veux que je fasse les Bitmap ou pas ?
Avatar de l’utilisateur
Thedahu
Larve 1
Larve 1
Messages : 19
Inscription : dim. 6 juil. 2014 14:16
Genre :

Re: [En développement] Simulateur de fourmilière: SimuAnt

Message non lu par Thedahu »

Ketrurroyal a écrit :C'est tout simplement .... EXCELLENT. 8-O
Bravo ! :slap:
Merci beaucoup !
dadadou a écrit :Je trouve l'idée super intéressante mais elle me semble être un travail de titan.
Il faudra que tu récoltes des informations précises pour chaque espèce, et savoir comment elles évoluent selon telle ou telle situation.
Et plein d'autres choses à prendre en compte.
Mais sinon ça donne vraiment envie ! :slap:
Merci!
En effet, obtenir des résultats réalistes sur différentes espèces va être un sacré challenge, mais c'est l'objectif ! XD
Pour le début de l'application, je ferai tourner des algorithmes simples, histoire de voir ce que ça peut donner, ce qu'il faut améliorer, et ce qu'il faut corriger.
De plus, quand le moteur sera disponible pour tous, on pourra travailler à plusieurs dessus, ça peut être fun aussi ! ;-)
Coffee a écrit :Et sinon tu veux que je fasse les Bitmap ou pas ?
Quand le moment sera venu, pourquoi pas !
Avant d'alourdir le programme avec du graphisme, je veux d'abords compléter le moteur.
Comme ça, si j'ai des fuites de mémoire et autres bugs, je trouverai plus facilement la faille.
Avatar de l'utilisateur
Coffee
Gyne Vierge
Gyne Vierge
Messages : 645
Inscription : lun. 23 juin 2014 14:35

Re: [En développement] Simulateur de fourmilière: SimuAnt

Message non lu par Coffee »

D'ailleurs il y a quoi comme outil pour tout ce qui est travail sur le code, genre trouver les goulots d'étranglements et autres saloperies ? Pour ce langage j'entends ?
Dernière modification par Coffee le sam. 26 juil. 2014 20:33, modifié 1 fois.
Avatar de l’utilisateur
Jarode
Administrateur
Messages : 5832
Inscription : dim. 27 janv. 2008 17:17
Localisation : Ain (France)
Genre :

Re: [En développement] Simulateur de fourmilière: SimuAnt

Message non lu par Jarode »

*amen*
Répondre Nouveau sujet

Revenir à « Expériences / Projets avec les Fourmis (TIPE, TPE, Pédagogie…) »