retour aux mémos     retour au modèle     back to SimMasto home page   retour à la page d'accueil

Les outils utilisés dans le projet SimMasto

Le projet tente autant que possible d'utiliser des logiciels issus du domaine public.
Ci-dessous, une description succincte des outils utilisés jusqu'à présent.




 
REPAST SIMPHONY est une plate-forme intégrée et interactive de modélisation en Java. Elle supporte le développement de modèles d'agents en interaction.
Ce logiciel est libre et le code source est disponible.
Repast Simphony est le successeur de Repast (REcursive Porous Agent Simulation Toolkit). Le projet a été créé à l'université de Chicago, puis à été repris par des organisations comme « Argonne National Laboratory ». Actuellement Repast est développé par une équipe de volontaires : ROAD : Repast Organization for Architecture and Development).
Plutôt qu'un logiciel prêt à utiliser, Repast s'apparente plus à une bibliothèque Java mettant à disposition une structure de classes et une interface permettant de représenter la simulation que le programmeur a défini grâce aux outils de Repast et d'autres bibliothèques.
Pour créer une simulation, il faut définir tous les éléments (contexte, projection, agent, interactions...) à l'intérieur de classes Java, mais la structure générale est très adaptable et permet de programmer des simulations très différentes en adaptant le simulateur au besoin. En revanche puisqu'il est en développement permanent et que ses fonctions sont très ciblées, il est difficile de trouver de la documentation et il est parfois nécessaire de connaître certaines classes du simulateur pour pouvoir programmer certains éléments (par exemple l'affichage )

 

ECLIPSE est un environnement de développement libre, extensible, universel et polyvalent. Il fonctionne comme une plateforme acceptant de très nombreux plugins permettant une grande flexibilité dans la conception et dans la programmation. Il dispose d'un outil de mises à jour capable de reconnaître des sites comme sources de mise à jour possibles. Le grand nombre de plugin disponible fait d'éclipse un environnement de programmation très adaptable.



 

GEOTOOLS : Bibliothèques Java permettant la gestions de données géoréférencées, on l'utilise principalement pour lire les shapefile et pour la gestion SIG.


 

JFREECHART est une librairie libre de composants graphiques (courbes, compteurs, etc.) écrits en java et pouvant être intégrés dans le projet/

JTS : Java Topology Suite, librairies java développée par Vivid Solution permettant une gestion des formes géométriques. Utilisé pour les traitement sur les objets en mode de représentation GIS dans Repast

BOUML est une suite d'outils UML 2 libres et gratuits dont un modeleur, vous permettant de spécifier et générer du code C++, Java, Idl, Php et Python

SUBVERSION (en abrégé SVN) est un système de gestion de versions, distribué sous licence Apache et BSD


QGIS est un logiciel de gestion de SIG, il permet d'importer des fichiers de différents formats, (en particulier les shapefiles). Ses fonctions de base permettent ensuite de visualiser les données en superposant les couches et en les coloriant selon la valeur d'un attribut particulier. La gestion des SIG inclut également un certain nombre d'actions possibles pour la manipulation des données (opération sur les tables d'attributs) et permet de modifier le modèle (récupération de zones grâce au des opérations géométriques), et de changer le système de référencement, ou de modifier les coordonnées.
 

ArcGis: c'est un logiciel semblable à Qgis à ceci près que Arcgis est une version professionnelle et propose davantage de fonctions

 

Google Earth: bien qu'il soit souvent utilisé pour la cartographie, Google Earth possède les fonctions permettant de lire et de créer des SIG simples.

Grass : C'est un logiciel de traitement de SIG de conception modulaire, il propose un grand nombre de traitement et l'appel aux différents modules peut se faire en console, ce qui permet de créer des scripts permettant d'automatiser certains traitements répétitifs.

Bien que Grass soit une application indépendante, elle peut être intégré à Qgis en tant que Plugin et dispose alors d'une interface un peu plus accessible. Cependant tous les traitements ne sont pas toujours possibles depuis l'interface graphique et il est parfois nécessaire d'utiliser la console.
 

PostgreSQL / Postgis : PostgreSQL est un SGBD (système de gestion de base de données), qui permet de créer des tables et d'effectuer des requêtes SQL. A l'aide d'un utilitaire, on peut convertir les données d'un fichier shapefile en une table de données contenant tous les éléments géométriques du shapefile avec les attributs associés. PostGis quant à lui est un greffon à ajouter sur des tables de données Postgres, il permet de faire appel à l'intérieur des requêtes SQL à des fonctions de requêtes spatiales. PostGis permet donc d'effectuer rapidement des modifications sur un fichier shapefile.

 Bien que la combinaison de fonctions géométriques avec le langage SQL soit déroutante, il s'avère être un outil très puissant pour la gestion SIG.

Pour pouvoir utiliser ces outils, il faut toutefois installer un serveur Postgres, créer au moins une base de donnée puis configurer les droits des utilisateurs. Il faut ensuite ajouter les fonctions des PostGis à cette base. Pour finir les utilisateurs doivent pouvoir se connecter, ( il faut connaître l'hôte du serveur, les identifiants, les mots de passes et les ports...

Une fois la connexion avec la base configurée, Qgis permet d'accéder directement aux tables et au vues crées et les interpréter comme des shapefile (à condition qu'il existe une clé primaire explicite, c'est à dire le GID). Pour finir on peut enregistrer les tables importées dans Qgis en tant que shapefile.

 

The Gimp : (GNU Image Manipulation Program ) il s'agit d'un logiciel libre de traitement d'image. Il permet de nombreuses opérations et propose une large gamme d'outils.

Dans le cadre de la chaîne de traitement, on l'utilise pour ses outils de sélection, ses opérations sur les contrastes et sa capacité à fonctionner en utilisant différentes couches de calques – des équivalents tels que CorelPaint peuvent être aussi utilisés.

GenePop est un package logiciel pour effectuer des calculs de génétique de population (test Hardy-Weinberg, déséquilibre de liaison, calcul des F-statistiques, etc. Dans SimMasto, des fichiers de sortie au format GenePop sont créés à intervalles de temps définis par l'utilisateur.


Mémo 3 - design 08.06.09 by QB & JLF, MAJ  12.03.13 par jlefur

retour aux mémos     retour au modèle     back to SimMasto home page   retour à la page d'accueil