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

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

Message non lupar Thedahu » Sam 26 Juil 2014 18:47

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
Avatar de l’utilisateur
Thedahu

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

Message non lupar Coffee » Sam 26 Juil 2014 19:34

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 ?)
Avatar de l’utilisateur
Coffee

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

Message non lupar formicaaa » Sam 26 Juil 2014 20:02

Moi je dis bravo ! Et bonne chance, j'ai lu, c'est génial ! :slap: o_O
Avatar de l’utilisateur
formicaaa

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

Message non lupar Thedahu » Sam 26 Juil 2014 20:32

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 !
Avatar de l’utilisateur
Thedahu

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

Message non lupar Ketrurroyal » Sam 26 Juil 2014 20:51

C'est tout simplement .... EXCELLENT. 8-O
Bravo ! :slap:
Avatar de l’utilisateur
Ketrurroyal

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

Message non lupar dadadou » Sam 26 Juil 2014 21:04

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
dadadou

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

Message non lupar Coffee » Sam 26 Juil 2014 21:15

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
Coffee

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

Message non lupar Thedahu » Sam 26 Juil 2014 21:18

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
Thedahu

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

Message non lupar Coffee » Sam 26 Juil 2014 21:32

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 ?
Avatar de l’utilisateur
Coffee

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

Message non lupar Jarode » Dim 27 Juil 2014 09:25

*amen*
Avatar de l’utilisateur
Jarode

Suivante


Retourner vers Expériences / Projets avec les Fourmis (TIPE, TPE, Pédagogie…)


  • Sujets en relation
    Réponses
    Vus
    Dernier message





Forum