Archives pour la catégorie SMA

Construire un container pour Cormas

Cormas est une plateforme de modélisation multi-agents développée en SmallTalk. Historiquement le choix de développement s’était porté sur VisualWork mais depuis quelque temps l’équipe regardait en direction de Pharo.

Cormas sous pharo

Le portage se fait petit à petit, et la feuille de route avance assez rapidement. Si le sujet vous intéresse, nous sommes en train de rédiger un manuel d’utilisation de cette nouvelle version de Cormas sous pharo.

Comme c’est le moment des grandes décisions on s’interroge sur les passerelles avec d’autres outils régulièrement utilisés par les communautés de chercheurs utilisant les SMA et plus largement la simulation. Pour le moment l’attention est portée sur les connexions entre cette nouvelle version de cormas et R et cormas/openMole.

Pour cette dernière, openMole intègre un système de conteneur basé sur udocker. Je suis donc en train de fouiller les possibilités de dockerisé cormas/pharo pour dans un futur que j’espère assez proche nous puissions faire l’ensemble de nos explorations en utilisant openMole.

Ecrire un dockerfile

# Set the base image
FROM ubuntu
# Dockerfile author / maintainer
MAINTAINER Etienne  <moi@truc.fr>

# Update software repository
# and install dependencies
run dpkg --add-architecture i386
run apt-get update && apt-get install -y curl unzip libx11-6:i386 libgl1-mesa-glx:i386 libfontconfig1:i386 libssl1.0.0:i386 libcairo2:i386

RUN mkdir cormas && cd cormas
RUN curl https://get.pharo.org | bash
RUN ./pharo Pharo.image config http://ss3.gemstone.com/ss/Cormas --install=development

Construire un conteneur à partir du dockerfile

sudo docker build -t cormas

Lancer un conteneur à partir du build

docker run --name cormas_instance -t cormas

Tester le fonctionnement

Votre conteneur doit être en train de fonctionner. Pour le vérifier, vous pouvez lancer les commandes suivantes.

docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
914f52adbd98 cormas "/bin/bash" About a minute ago Up About a minute cormas_instance
eeba02bea345 mdillon/postgis "docker-entrypoint.s…" 2 weeks ago Exited (0) 2 weeks ago psql-futurSahel

Vous voyez que j’ai deux conteneurs (psql-futurSahel et cormas_instance) et que le conteneur cormas_instance est en cour de fonctionnement.

On peut maintenant essayer d’interagir avec pharo à l’intérieur du conteneur

sudo docker exec -it 914f52adbd98 /pharo Pharo.image eval '1 + 20'

Si tout s’est bien passé, vous constaterez que pharo vous répond de manière aimable 21 !

Note :

Pour pousser un nouveau conteneur

sudo docker tag cormas elcep/cormas
sudo docker push elcep/cormas

 

Références :

ODD song

Dans le monde de la modélisation individu centré, l’un des formalismes attendus pour publier une description de modèles s’appelle ODD pour Overview, Design
concepts, and Details. La description de ce formalisme a été publiée en 2006 dans Ecological Modelling.

Grimm, V., U. Berger, F. Bastiansen, S. Eliassen, V. Ginot, J. Giske, J. Goss-Custard, et al. 2006. « A Standard Protocol for Describing Individual-Based and Agent-Based Models ». Ecological Modelling 198 (1–2): 115‑26. doi:10.1016/j.ecolmodel.2006.04.023.
Et bien voila la chanson de l’ODD !

la suite …

soutenance DELAYUn petit billet pour vous annoncer avec fierté mon passage dans le monde des docteurs en géographie. La soutenance s’est déroulée le 10 juin à 14h à la FLSH de Limoges. La thèse soutenue sous la direction de E. Rouvellac, N. Becu et P. Allée s’intitule : « Réflexions géographiques sur l’usage des systèmes multi-agents dans la compréhension des processus d’évolution des territoires viticoles de fortes pentes : le cas de la Côte Vermeille et de la val di Cembra« 

J’ai poussé sur github tout le matériel… la thèse (pour les curieux),  la présentation de la soutenance, les différents modèles à base d’agents. En avant-gout, en voilà le résumé :

En ce début de XXIe siècle, le vin et la vigne constituent une richesse importante pour bon nombre de pays. Les territoires viticoles, tout en conservant leurs qualités d’espace de production, développent des stratégies d’adaptation à la globalisation du marché et aux attentes des consommateurs toujours plus versatiles.
Or en raison de conditions orographiques particulières, les territoires de montagne et de fortes pentes voient leurs marges de manœuvre réduites. En effet, une grosse partie de leurs coûts de production reste bien souvent incompressible par rapport à la viticulture de plaine. Paradoxalement ces paysages viticoles, image du construit social et des équilibres environnementaux, participent à leur reconnaissance internationale.

Le travail présenté ici est né en réponse à la sensibilité croissante de ces vignobles de forte pente. En nous appuyant sur deux territoires d’étude, en France le vignoble de la Côte Vermeille et en Italie le val di Cembra, nous questionnons les spécificités de la viticulture de fortes pentes. Notre approche met l’accent sur les possibilités offertes par des méthodes empiriques de modélisation à base d’agents pour proposer un regard renouvelé sur le rôle des interactions société-environnement dans le maintien et le développement de ces territoires sous contraintes.

A travers une constellation de modèles multi-agents issus des questionnements récurrents des acteurs de la filière, et selon une démarche exploratoire et incrémentale, nous nous intéresserons ici à trois grands types de questions posées aux territoires viticoles de fortes pentes.
Le premier concerne la place du marché et ses conséquences sur les dynamiques de couvert végétal à petite échelle. Le second type de questionnement explore également les dynamiques spatiales du couvert végétal, mais se place à mezzo-échelle, et propose de s’intéresser à la définition des règles socio-économiques simples qui sous-tendent les dynamiques foncières à l’échelle de quelques communes. Enfin le dernier volet de ce travail se place à grande échelle et s’intéresse à des phénomènes très descriptifs.

L’ensemble de ces réflexions nous amènera ensuite à utiliser la modélisation co-construite avec les acteurs pour proposer une vision prospective globale pour les territoires de montagne et de fortes pentes. Cette approche prospective sera conduite en parallèle avec certains acteurs de la filière ce qui nous permettra de délimiter les variables structurelles propres aux systèmes de fortes pentes telles qu’elles sont ou non vécues par les acteurs. Basés sur la délimitation de ces variables, nous proposons enfin quatre scenarii prospectifs pour la viticulture en forte pente.

Un peut d’espace pour openMole

openmoleSi vous voulez passer un de ces jours à openMole, voilà 2-3 astuces :
openMole va demander beaucoup de ressource à votre ordinateur (d’autant plus s’il tourne en local). Il peut donc s’avérer utilise de de pousser un peut les limites du système. ça se passe dans `/etc/security/limits.conf` vous pouvez coller à la fin du fichier de conf

*               hard    as              110000000
 *               hard    rss             100000000
 *               soft    nproc           20000
 *               hard    nofile          50000
 *               soft    nofile          50000

Les limites soft sont celles qui seront allouées par défaut à votre système et les limites hard sont celles que vous pourrez pousser à la main avec la commande ulimit…

Ensuite vous pourrez si le besoin se fait sentir également déverrouiller certaines limites avec :

ulimit -c unlimited

Voilà on est un peut moins à l’étroit pour jouer avec la mole!