Le calcul intensif en géographie : une tradition bien ancrée
Sébastien Rey-Coyrehourcq (IGR UMR IDEES) *
Arnaud Banos (DR UMR IDEES)
Juste Raimbault (Post Doc CASA)
Le cas de la simulation
9 oct. 2019 - Toulouse
https://slides.com/sebastienreycoyrehourcq/jcad2019
@reyman64
JCAD 2019
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
Simulation de diffusion par Monte-Carlo
Washington University IBM 650
& Northwestern's
Vogelback CDC 3400/ 6400
[ex Hager III and Hager IV Fortran program / 1967]
transfert (1957)
[Varenne2017, Rey-Coyrehourcq 2015]
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."
HPC and the Art of Parallel Programming - 1999
[Rey-Coyrehourcq 2015]
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)
MTG
Rouen
Simulation en géographie
1950
1980
Hägerstrand, Marble, Pitts, etc.
Pumain, Sanders, etc.
Guermond, Langlois, etc.
Chamussy, Le Berre, Uvietta, etc.
Forrester
pionniers
charnière
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]
Agent Based Modelling
[Rey-Coyrehourcq 2015]
Cellular
Automata
Non Linear Dynamical
Systems
France
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
peu de règles
beaucoup de règles
espace simplifié
espace réaliste
Une diversité d'acteurs ...
MAPS
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
LaSTIG
Pactes
Besoins en "calcul" ?
Quelles solutions pour la simulation
Les racines du mal
... curse dimensionality ...
... non linéarité ...
... stochasticité ...
Les quatre cavaliers de l'apocalypse
... équifinalité ...
Une exploration directe est impossible
diversité de formes et d'évolutions
un résultat n'est jamais sûr
un état final est atteignable de
1000 façon différentes
par 1000 personnes différentes
[chapron, exmodelo 2019 ]
Important en shs,
"cumulativité des connaissances"
[pumain 2005 ]
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 SMA
GAMA (gaml)
Netlogo (logo)
plateformes SMA
ou java/scala
6 exemples
KISS
KIDS
Stylisé
Particulier
MicMac
& une grande diversité de besoins en calculs : Grille & HPC !
"épidémiologie"
MicMac
[Banos et al. 2015]
agents = personnes & avion & villes ; couplage avec ODE
4 stratégies à explorer
2 objectifs à minimiser (écon. vs épi.)
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 ?
~ 5/10 minutes d'exécution
1 simulation par CPU
KISS
KIDS
Stylisé
Particulier
M03
épidémiologie
MicMac
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
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.
2011 & 2019
ou ?
comment ?
quand ?
KISS
KIDS
Stylisé
Particulier
5AD
géo. santé
MicMac
M03
5Ad
[Cottineau et al. 2020, à paraitre]
~ 25 minutes d'exécution
~ 3 Go ram par simulation
1 core, mais multithreading possible
test : 100.000 execution
calibrage: 200.000 executions
% personnes en bonne santé
agents: personnes / 8.16 M agents mobiles, en interaction
espace: 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
4 scénarii de mobilité (random, données, etc.)
Etudier l'effet de la segregation sociale dans l'évolution des comportements de santé sur une journée type de 24h.
Question : Arrive-t-on à reproduire de façon cohérente les données et l'inégalité de comportement de santé en fonction des groupes sociaux ?
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
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 :
KISS
KIDS
Stylisé
Particulier
SimpopLocal
MicMac
archéologie
5AD
M03
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
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
KISS
KIDS
Stylisé
Particulier
SimpopLocal
MicMac
ATP
5AD
M03
archéologie
Rin ATP
1 simulation = 1 coeur
1 Go Ram
~ 20 minutes d'exécution
... campagne en cours ...
Objectif : Simuler pour mieux comprendre les règles de circulation des archéomatériaux (craies) depuis les carrières jusqu'aux sites de construction, en Normandie, entre le 11ème - 15ème siècle
agents: carrières et sites
espace :
données : très peu, fait stylisés & ordre de grandeurs
observable : volume par type de matériaux par type de batiments
processus
ordre de grandeurs
acteurs / objets
modèle(s)
simulation(s)
interdisciplinarité
KISS
KIDS
Stylisé
Particulier
SimpopLocal
MicMac
ATP
5AD
M03
ESCAPE
risques & santé
Escape
Objectif : Le projet ESCAPE a pour objectif de développer un système d’aide à la modélisation et à la simulation d’évacuation de villes afin d’évaluer des scénarios de gestion de crise.
[Daudé et al. 2019]
2016
Trois démonstrateurs :
Rouen (risque tech),
Hanoï et val d’Authion (risque nat)
agents: automobiles, bus, piétons, organisations, etc.
mécanismes: pop synthétique, agenda, multimodalité, arbres décisions, etc.
données : traffic (voiture, transports en communs), Insee, EMD, etc.
1 simulation = 1 coeur
~ 8/16 Go Ram
+30 minutes
Questions ?
https://slides.com/sebastienreycoyrehourcq/jcad2019
Table ronde
Quelques chiffres pour les autres laboratoires de géographie quanti. (hors GPU)
UMR LaSTIG : Laboratoire en Sciences et technologies de l'information géographique
4 laboratoires de quantitatives (avec simulation) en géographie
discussions avec Julien Perret / DR LaSTIG STRUDEL
UMR Géographie-cités / Equipe P.a.r.i.s
discussions avec Romain Reuillon / CR Géographie-cités
UMR IDEES : Identité & Différenciation des Territoires
Sébastien Rey-Coyrehourcq / IGR Université
UMR Théma : Théoriser et modéliser pour aménager
Gilles Vuidel / IGR CNRS
Table ronde
Cluster | Grid | Cloud | Autres | Outil | |
---|---|---|---|---|---|
Simurbapy | via cloud | EGI VO ISCPIF | LAL SLURM | OpenMole | |
ArtiScales | via cloud | EGI VO ISCPIF | LAL SLURM | OpenMole | |
SoDuCo | HUMANUM (vm) | (OpenMole) | |||
HIATUS | Zebulon (SSH) | MicMac IGN | |||
IQmulus | via cloud | LAL SPARK | OpenMole | ||
Alegoria | LAC DC/OS | LAL (vm) | spark/mesos | ||
Anatole G. | CNES | ||||
5ad | EGI VO ISCPIF | LAL (vm) | OpenMole | ||
... |
ex des projets aux LaSTIG
Table ronde
Référents / Interface moyen de calculs
GRID | Cluster | Cloud | Openmole | |
---|---|---|---|---|
Quoc-Dinh NGUYEN | X | |||
Laurent Caraffa & Mathieu Brédif | via cloud | X (SPARK) | ||
Paul Chapron & Julien Perret | X (EGI VO ISCPIF) | via cloud | X (SLURM LAL) | X |
Didier Richard* | X | X |
* gestion et/ou achats des machines
Table ronde
Cluster | Grid | Cloud | Autres | Outil | |
---|---|---|---|---|---|
5Ad | EGI VO ISCPIF | LAL (vm) | OpenMole | ||
World3 | EGI VO ISCPIF | LAL (vm) | OpenMole | ||
Escape | SLURM méso CRIANN | EGI VO ISCPIF | DSI UR (vm) | OpenMole | |
SimFéodal | WS (12cpu) | BASH / SSH | |||
Mo3 | SLURM méso CRIANN | EGI VO ISCPIF | DSI UR (vm) | OpenMole | |
... |
ex des projets HPC à Géographie-cités ( via ISCPIF )
Référents / Interface moyen de calculs
GRID | Cluster | Cloud | Autre | Openmole | |
---|---|---|---|---|---|
Mathieu Leclaire* | X ( EGI / VO ISCPIF) | X | X | ||
Romain Reuillon* | X (EGI / VO ISCPIF) | X (LAL) | X (Zebulon) | X | |
Maziyar PANAHI* | X (LAL) | X (Zebulon) | X | ||
Robin Cura | X |
* gestion et/ou achats des machines
Table ronde
Cluster | Grid | Cloud | Autres | Outil | |
---|---|---|---|---|---|
Mo3 | SLURM CRIANN | EGI VO ISCPIF | DSI UR (vm) | WS (12 cpu) | OpenMole |
Escape | SLURM CRIANN | DSI UR (vm) | WS (12 cpu) | OpenMole | |
ATP | SLURM CRIANN | EGI VO ISCPIF | DSI UR (vm) | OpenMole | |
5Ad | EGI VO ISCPIF | LAL (vm) | OpenMole | ||
... |
ex des projets HPC à IDEES
Référents / Interface moyen de calculs
GRID | Cluster | Cloud | Autre | Openmole | |
---|---|---|---|---|---|
Sébastien R.C. * | X ( EGI / VO ISCPIF) | X (SLURM CRIANN) | X (DSI) | X (WS) | X |
* gestion et/ou achats des machines
Table ronde
Cluster | Grid | Cloud | Autres | Outil | |
---|---|---|---|---|---|
Pixscape | (48 cpu en MSH) | MPI / Cuda | |||
MobiSim | méso UFC | (48 cpu en MSH) | MPI | ||
Graphab | méso UFC | MPI | |||
ArtiScales | via cloud | EGI VO ISCPIF | LAL SLURM | OpenMOLE | |
... |
ex des projets HPC à Théma
Référents / Interface moyen de calculs
GRID | Cluster | Cloud | Autre | Openmole | |
---|---|---|---|---|---|
Gilles Vuidel | ? | méso UFC | ? | ? |
* gestion et/ou achats des machines
Table ronde
IDEES | THEMA | Géographie-Cité | LASTIG | |
---|---|---|---|---|
Référents | 1 | 1 | 3 | 6 |
Projets* | 4 (3) | 4 (1) | 5 (3) | 8 (2) |
* non exhaustif
( ) communs entre les laboratoires
- OpenMOLE vs MPI ...
- Grille ( EGI ) & Clusters ( UFC, CRIANN )
- Cloud VM ou instancié cluster ( LAL, DSI UR )
- Référents +/- nombreux & spécialisés !
- Diversité des approches, mais sources similaires
- Projet redondants => petite communauté (ou biais ?)
- WS locale => prototypage ?
Table ronde
Complémentarité des approches / IMHO géographe
Grille | Cluster | |
---|---|---|
Accès | certificats | comptes |
Attribution | accès au fil de l'eau | dépôt de projet via campagne : évaluation shs ? quantification ? |
Tarification | gratuit | ?? variable selon méso ?? |
Quota | pas de limite nb/h | plafond nb/h |
Performance | +/++/+++ variable | +++ |
Résilience | ++ (sauf webdav...) | ++ |
Stockage | + | +++ |
Environnement | open bar | assez stricte |
Accompagnement | ?? | utilisateurs & équipe régionale (formation, support) |
Participation financière ? | Noeuds via DIRAC | ?? variable selon méso ?? |
Diversité CPU/GPU | ?? | CPU/GPU |
Mémoire | 3Go | presque open bar |
Table ronde
Réflexions sur le HPC en Géo (et en SHS?)
a) Enjeux multiples autour des données, nbx acteurs en jeu
Volumétrie, Vitesse, Variété
- techniques d'acquisition évoluent
et se banalise (capteurs, imagerie air/sol, gps, etc.)
- multiplications des producteurs de données spatiales étatiques (ETALab, etc.), +/- commerciales (API) , individuelles (Scrapping), citoyennes (OpenStreetMap), etc.
Ethique
Juridique
Infra.
Théorie
Méthodologie
Scientifique
Géographes & Géomatique
Outils
(Acq./Prod. Trait. Visu.) données spatiales
Table ronde
Réflexions sur le HPC en Géo (et en SHS?)
b) Enjeux formations & valorisations (géo / shs ?)
Géographie
T. Q.
Simulation
HPC
Intégrer le HPC et l'accès aux HPC dans les formations & écoles d'été => dédramatiser
Formations internes SHS adaptés pour favoriser autonomie (outils, méthodes)
Inventaire des projets/formations HPC SHS
Groupe de travail ?
Issue d'une discussion par mail avec Stéphane Pouyllau / IGR Directeur Technique TGIR HumaNum
S'appuyer sur les réflexions existantes : TGIR Humanum, RMSH, GDR Magis
"demande marginale"
"accompagnement encore limité"
"chercheurs pas assez solide (méthodes, calcul)
mais progression ... "
JCAD 2019
By sebastien rey coyrehourcq
JCAD 2019
- 908