Annexe 4. Logiciels et plates-formes

Il existe des plates-formes pour la programmation de SMA qui varient en termes de difficulté d'utilisation et de quantité d'outils et ressources disponibles. Nous indiquons deux plates-formes : StarLogo® et NetLogo®. Le StarLogo est développé par le laboratoire MIT et il a été destiné à l'éducation et à la recherche. Il est ergonomique et abordable, il possède une bibliothèque qui présente des programmes avancés et des primitives de haut niveau. StarLogo compte avec des interfaces pour l’élaboration de graphiques et l’insertion/exportation de données et figures. NetLogo a été destiné pour la communauté scientifique, avec des ressources et des codes de programmation très proches du StarLogo. La plate-forme NetLogo possède une vaste bibliothèque dans le domaine scientifique et aussi quelques fonctions statistiques.

Dans la bibliothèque du StarLogo on retrouve des simulations inspirées des comportement des insectes sociaux (résolution collective de problèmes, comment trouver le moindre passage entre le nid et la nourriture malgré des facteurs externes qui peuvent rendre le système instable) ; simulations inspirées dans le comportement des lapins (un équilibre émerge entre (i.) la quantité de « gramme » et le temps que celle-ci prend « pour grandir » et (ii.) les « lapins » qui se reproduisent quand bien nourris et qui meurent quand leur manque de nourriture. « Cooperation », « Altruism » et « Divise the Cake », dans le NetLogo sont des simulations qui font partie du projet EACH (Evolution of Altruistic and Cooperative Habits : Learning About Complexity in Evolution), déjà « PopGen Fishbowl 1,0 » simule la génétique populationnelle en explorant les effets de la sélection, la mutation et la migration. Merndonça et al. (2008) constatent que le StarLogo et le NetLogo sont des plates-formes innovatrices, accessibles et utilisées dans la mise en œuvre de SMA, des systèmes dynamiques et non réductionnistes, appliquées dans la modélisation de systèmes complexes naturels tels que les systèmes sociaux et systèmes cognitifs retrouvés dans le domaine de la psychologie.

MatLab® est un outil de programmation et possède un environnement interactif permettant l’implémentation de modèles pouvant exiger une grande puissance de calcul. Par rapport à d’autres outils de programmation traditionnels tels que le C, le C++, le Java ou le Fortran, la mise en œuvre sera plus rapide. Simulink®, boite à outils MatLab, peut être étendue avec des paquets complémentaires. Abdi & Valentin (2006) ont publié un ouvrage concernant la modélisation et les mathématiques appliquées en sciences cognitives appliqué à l’environnement MatLab®.

Dans le cadre de la résolution des problèmes d’optimisation, le Simple ToolBox®, développé par Chegury et al. (2008) pour l’environnement MatLab, consiste en une boîte à onglets pour la résolution de problèmes d’optimisation où il est inclut les techniques à base de systèmes multi-agents, Optimisation par Essaim de Particules (PSO) et Optimisation par Colonie de Fourmies (ACO).

L’intérêt sur le Simple Tool Box est qu’il est dans l’environnement MatLab et permet des transferts de donnés faciles avec EXCEL® et Visual BASIC ® pour les traitements statistiques. Donc on peut se retrouver sur un environnement connu. La programmation en MatLab est relativement simple et beaucoup de fonctionnalités sont disponibles clairement sur des interfaces amiables (pas nécessaire de coder à chaque fois, très ergonomique, etc.). Pourtant il reste un outil puissant et de très large applicabilité. L’environnement MatLab permet l’élaboration, des annexions et partage de librairies et outils spécialisés pour certains domaines ou pour certains groupes de recherche.