Le calcul intensif en géographie : une tradition bien ancrée
Sébastien Rey-Coyrehourcq (UMR IDEES)
Arnaud Banos (UMR IDEES)
Le cas de la simulation
16 avril 2019 - Paris
@reyman64
Aperçu des pratiques historiques ...
chapitre de thèse [Rey-Coyrehourcq 2015]
simulation & centre de calculs
stage 4 mois 2019 : "Pérénisation & valorisation code sources des pionniers de la quantitative en géographie"
Simulation en géographie
Les pionniers Américains et Suédois
1956 / SMIL at Lund
Univ. Washington
(Marble, Pitts, Tobler, etc.)
T. Hagerstrand
1950's - 1960's
A monte carlo simulation of diffusion
Washington University IBM 650
& Northwestern's Vogelback computing center CDC 3400/ 6400
[ex Hager III and Hager IV Fortran program]
Simulation en géographie
H. Couclelis
M. Batty
A. Wilson
...
Equipe de Leeds
Les pionniers au Royaume-Uni
1970's & 1980's
S. Openshaw
R. Abrahart
I. Turton
...
pratiques peu documentées
M. Batty 1976
Urban Modelling
HPC & Geocomputation - 2000
GeoComputation is [...] meant to imply the adoption of a large-scale computationally intensive scientific paradigm as a tool for doing all manner of geographical research."
Simulation en géographie
[Rey-Coyrehourcq 2015]
P880 / 1970
Sorbonne
CIRCE CNRS 1969
CCSC 1968
CNSUC 1981
Maison de la géo.
ex. RA CNRS 1972
- 15% SHS
- 3.25% de 2500H
Unité LISH - Paris / 1975
Les pionniers en France
1970's - 1990's
CURRI 1994
Montpellier
Paris
Strasbourg
IGA
Grenoble
CICG 1972
Calculateurs
Géographes
Jussieu
Connections
Déplacements
(calculs & simulation)
Simulation en géographie
1950
1980
Hägerstrand, Marble, Pitts, etc.
Pumain, Sanders, etc.
Guermond, Langlois, etc.
Chamussy, Le Berre, Uvietta, etc.
Forrester
pioneers
turning point
1970
Wilson
Batty
Ackerman, Chorley, Hagget, Berry, etc .
Prigogine, Allen,
Sanglier, Haken, etc..
conceptual
technical
1990
Couclelis,
Tobler,etc.
Epstein, Doran, etc.
Influences répétées du projet systémique (Von Bertallanfy et cie.)
open systems, retro-action, self-organization, equifinality, bifurcation, etc.
[Pouvreau 2013]
~ 1980 in France
Agent Based Modelling
[Rey-Coyrehourcq 2015]
Cellular
Automata
Non Linear Dynamical
Systems
Modèles dynamiques
Systèmes dynamiques
Automates
Cellulaires
Modèles multi-agent
jeu de la vie
fourmis
proie prédateur
Couplage possible de ces trois approches
Modèle multi-agents
Echangent des messages
Réflechissent ...
Bougent et perçoivent
Evoluent dans un environnement
Agissent sur l'environnement
(plus ou moins ...)
[Ferber 1999, Drogoul 2009]
ville
fourmis
moustique
individu
arbre
[Drogoul Treuil 2008]
Modèle multi-agents
Un méta-modèle plus qu'un modèle
flexibilité de représentation & emboitement d'échelle !
KISS
KIDS
Stylisé
Particulier
[Sanders & Banos 2011, 2013, Banos 2013]
Une variété de pratiques
Une diversité d'acteurs ...
Gama
Miss-ABMS
Systèmes
Complexes
IGN
Idees
Théma
CNRS
CIRAD
INRA
Espace
Géographie-cités
LabEx
... pour la simulation en géographie
UMR / UPS
Instituts
Réseaux et outils
IRIT
IRD
IP-Erasmus
Isc-Pif
Besoins en "calcul" ?
Quelles solutions pour la simulation
Espace des paramètres
dimensions
couverture à nb points égal
... curse dimensionality ...
Accès aux ressources
( dès juin 2010 )
workflow
distribue
rapatrie
plan
d'expérience
... de nombreux aller retours entre modèles et résultats ...
discussions hyp.
OpenMOLE
val i = Val[Double]
val res = Val[Double]
val exploration =
ExplorationTask(i in (0.0 to 100.0 by 1.0))
val model =
ScalaTask("val res = i * 2") set (
inputs += i,
outputs += (i, res)
)
val env = LocalEnvironment(4)
exploration -< (model on env hook ToStringHook())
Plusieurs types de plan d'expériences : optimisation & exploration.
Ecosystème riche: simulation, etc.
Support de multiples technologies HPC & Grilles
Créer des "chaînes de traitements"
parallélisables, reproductibles, simples (ou complexes) sans aucune connaissance des technologies HPC
Langage de scripts (DSL) simple et flexible pour composer les workflow
Une plateforme et une communauté en expansion
Exemples
4 exemples
KISS
KIDS
Stylisé
Particulier
SimpopLocal
H24
MicMac
M03
& une grande diversité de besoins en calculs : Grille & HPC !
épidémiologie
archéologie
santé
épidémiologie
SimpopLocal
[Schmitt 2014, Schmitt et al. 2015]
Question : La production et la diffusion de l'innovation est il un mécanisme nécessaire pour produire une hiérarchisation crédible du système de peuplement en 4000 ans au néolithique ?
agents: villes & innovations
7 paramètres libres
4 mécanismes
très peu de données en entrée/sorties
1 loi empirique à reproduire
Espace
système de peuplements
SimpopLocal
Question : La production et la diffusion de l'innovation est il un mécanisme nécessaire pour produire une hiérarchisation crédible du système de peuplement en 4000 ans au néolithique ?
+ interactions
+ innovations
+ ressources
Mécanismes du modèles
SimpopLocal
1 simulation = 1 coeur
1 Go Ram
~ 5/10 minutes d'exécution
500 millions de simulation
eq. 20 ans de calculs
4000 cpu EGI Biomed
Calibration
Analyse de sensibilité
NSGA 2 - Ilôts
CP-Profile
1 simulation = 1 coeur
1 Go Ram
~ 1/2 minutes d'exécution
eq. 12 ans calcul par profil
15 jours de calculs (profil x 6)
4000 cpu EGI Biomed
[Schmitt et al. 2015]
[Reuillon et al. 2015]
réécriture modèle
1 objectif : f = max(01,02,03)
3 objectifs : (temps, forme, taille)
obj. f est impossible si 0 innovations
MicMac
[Banos et al. 2015]
~ 5/10 minutes d'exécution
1 simulation par CPU
agents = personnes & avion & villes ; couplage avec ODE
stochastique
4 stratégies à explorer
2 objectifs à minimiser
pas de données
Question : Quel est la combinaison de stratégies (quarantaine, évitement, responsabilisation ind., protection ind.) qui permet de limiter à la fois les pertes économiques, et la diffusion de l'épidémie dans un tel système ?
MicMac
[Banos et al. 2015]
h24
[Cottineau et al. 2017]
~ 25 minutes d'exécution
3 Go ram par simulation
1 core, mais multithreading possible
test : 100000 execution
calibrage: 200000 execution
% personnes en bonne santé
2002
2008
steps
years
3 déplacements / jour (breakfast, lunch, diner)
1996
simulated
data
agents: personnes / 8.16 M agents mobiles, en interaction
résolution: IDF à 1km x 1km
données: nombreuses, et à différentes dates (NPPS, CSP 18 catégories, OD, baromètre santé, etc.)
mesure d'inégalité entre les extrême des groupe d'éducation à sexe et âge égal
1 modèle changement d'opinion
5 paramètres
3 objectifs à minimiser
Etudier l'effet de la segregation sociale dans l'évolution des comportements de santé sur une journée type de 24h.
via 3 objectifs à minimiser :
Obj 1. : MSE sum Scenario 1
Obj. 3 : Le delta sur la mesure d'inégalité (SI) entre S1 et S4
Obj. 2 : MSE sum Scenario 4
Question : Arrive-t-on à reproduire de façon cohérente les données et l'inégalité de comportement de santé fonction des groupes sociaux avec un scénario qui ne tient pas compte de la mobilité ?!
=> progression par falsification
h24
Attribution résidence aléatoire | Attribution résidence & mobilité via les données | |
pas de mobilité (résidence) | Scenario 1 | Scenario 2 |
mobilité journalière (nuit,matin,soir) | Scenario 3 | Scenario 4 |
2 scénarii à comparer :
Mo
[Maneerat et al. 2017]
3
agents = moustiques & nids
résolution inf. 1m
exécution : + 12 heures
+ 50 paramètres
1 simulation = 1 cpu
16 Go Ram
DOE : LHS sur grille EGI
500000 sim, ~20 ans calculs
Objectif : Comprendre et lutter contre l'émergence et la diffusion de la Dengue dans les milieux urbains
Couplage de 3 modèles en 1; travail en cours
Moma
Mode
Momos
Micro
Macro
[Misslin 2017]
résolution 30m,
ville entière
[Daudé et al. 2017]
[Cebeillac et al. 2017]
résolution inf. 1m, quartier 10km²
paysage synthétique
agent: individu mobile avec agenda
résolution 30m,
ville entière
données: twitter
modèle
surrogate
exploration
exploration
indice env.
Questions ?
OpenMOLE
- passage à uDocker
- Amélioration de la documentation
- 2 session coding-camp en 2019 : dev & utilisateurs
- cap des 10.000 commits
- création d'une SCIC "Trampoline" adossée à l'isc-pif
Coding Camp OpenMOLE
27/05/2018 - 01/06/2018
- Ouverture à de nouvelles méthodes :
- méthodes d'exploration OSE
- générateur de grilles spatiales
- 2 nvx cas d'utilisation (santé, éco)
- x 2 participants en 2018
- gestion et déploiement multi-utilisateurs !!
- etc.
- attraction de nouvelles communautées scientifique
Journée Calcul Scientifique et SHS BIS
By sebastien rey coyrehourcq
Journée Calcul Scientifique et SHS BIS
- 1,269