HighPasm WP3
"Some highlights about ABM modelling in quantitative geography &
the example of Lascar model"
Romain Reulier
Sébastien Rey Coyrehourcq
Rouen
09/06/2023
from definitions ...
To an observer B, an object A* is a model of an object A to the extent that B can use A* to answer questions that interest him about A
Many definitions ... static or dynamic
En construisant un modèle (model building), on crée une représentation idéalisée de la réalité afin de faire apparaître certaines de ses propriétés
[Minsky 1965]
[Hagget 1965]
"le terme de modélisation désigne à la fois l’activité pour produire un modèle et le résultat de cette activité" .
[Langlois 2005]
Le concept de modélisation est donc « [...] plus large que celui de modèle, car il recouvre l’activité humaine qui aboutit au modèle achevé, alors que le modèle est un objet (concret ou abstrait), volontairement dépouillé de l’activité qui l’a créé »
Modelling ? Simulate ?
=> Modelling is an incremental process that links peoples and tools (Socio-Technical System)
un objet médiateur qui a pour fonction de faciliter une opération cognitive dans le cadre d’un questionnement orienté, opération cognitive qui peut être de cognition pratique (manipulation, savoir-faire, apprentissage de gestes, de techniques, de conduites, etc.) ou théorique (récolte de données, formulation d’hypothèses, hypothèses de mécanismes théoriques, etc.)
"simplifying" or "facilitate" ??
[Varenne 2013]
ce n’est pas tant « le modèle » que ce qu’il y a « dans le modèle » qui nous intéresse
[Sander 2000, Besse 2000]
Puisque l’usage du modèle est relatif (à un observateur et à un questionnement), on ne peut dire que le modèle doit être un objet simple en lui-même ou dans l’absolu. Il convient donc de regarder sous quel aspect exactement il doit apparaître simplificateur, sous quel aspect il devient un outil facilitateur, un outil de facilitation. [...] on comprend déjà qu’un modèle n’est pas ce qui est recherché en tant que tel, mais ce qui facilite la recherche d’information au sujet d’un système réel ou fictif [...] Il est le moyen plus que la fin.
[Varenne 2008]
Modelling ? Simulate ?
un objet médiateur qui a pour fonction de faciliter une opération cognitive dans le cadre d’un questionnement orienté, opération cognitive qui peut être de cognition pratique (manipulation, savoir-faire, apprentissage de gestes, de techniques, de conduites, etc.) ou théorique (récolte de données, formulation d’hypothèses, hypothèses de mécanismes théoriques, etc.)
multiple emergent goals
[Varenne 2013]
~ 20 epistemic functions
=> performance ; parcimony ; compressing information ; understanding ; pedagogy ; co-construction ; etc ...
Lot of french books on this subjects
Modelling ? Simulate ?
... to historical practices
from definitions ...
1950
1980
Hägerstrand, Marble, Pitts, etc.
Pumain, Sanders, etc.
Guermond, Langlois, etc.
Chamussy, Le Berre, Uvietta, etc.
Forrester
pioniers
pivot
1970
Wilson
Batty
Ackerman, Chorley, Hagget, Berry, etc .
Prigogine, Allen,
Sanglier, Haken, etc..
conceptuel
technique
1990
Couclelis,
Tobler,etc.
Epstein, Doran, etc.
Influences répétés du projet systémique (Von Bertallanfy et cie.)
open systems, retro-action, self-organization, equifinality, bifurcation, etc.
[Pouvreau 2013]
~ 1980 en France
Agent Based Modelling
[Rey-Coyrehourcq 2015]
Cellular Automata
non linear Dynamical Systems
Historiques des pratiques
Non linear Systems Dynamics
Cellular Automata
Agent Based Models
game of life
ant foraging
predator-prey
encapsulate
One formalism to bring them all together
More than twenty year of litterature ...
Src : Heppenstal, 20 years of geocomputation 2016
ABM in geography ?
Exchange messages
Think ...
Look and perceive
Evolve into an environnement
Act on environnement
(more or less ...)
[Ferber 1999, Drogoul 2009]
Building and playing with Agents that Interact on Environment at different Scale : "Virtual Laboratory"
Agent-based modelling ?
City
Ants
Mosquito
People
Tree
[Drogoul Treuil 2008]
More a meta-model than a model ...
flexibility of representation & nested scaling !
Agent-based modelling ?
Simple rules can produce complex emergent phenomena with simulation
Complexity Theory and Artificial Intelligence
( auto-organization & emergence)
Complex Systems
KISS
KIDS
Stylised
Particular
[Sanders & Banos 2011, 2013, Banos 2013]
A wide range of practices
few rules
lot of rules
simple space
realistic space
to answer a large variety of questions ...
more examples bottom
Focus on Lascar ABM
Exemples SMA
GAMA (gaml)
Netlogo (logo)
plateformes SMA
ou java/scala
Exemples
KISS
KIDS
Stylisé
Particulier
MicMac
"é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
MicMac
[Banos et al. 2015]
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
SimpopLocal
ATP
5AD
M03
ESCAPE
risques & santé
HUME
SimFeodal
MicMac
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
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 ?
KISS
KIDS
Stylisé
Particulier
SimpopLocal
archéologie
5AD
M03
MicMac
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 ?
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
src :
SimpopLocal
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
SimFeodal
5AD
M03
archéologie
MicMac
SimFeodal
Objectif : Il s’agit de simuler les transformations du système de peuplement Nord-Ouest européen entre 800 et 1100, période de transition d’un système majoritairement dispersé à un système hiérarchisé et polarisé.
interdisciplinarité
src :
SimFeodal
Un pas de temps de simulation (i.e. une itération du modèle) représente une durée de 20 ans, ce qui correspond approximativement à la durée de vie d’une génération à l’époque médiévale.
KISS
KIDS
Stylisé
Particulier
SimpopLocal
ATP
5AD
M03
archéologie
SimFeodal
MicMac
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é
Rin ATP
Modèle incrémental : complexification progressive des axes (espace, carrieres, monuments) pour mesurer le poids de chaque hypothèse sur les sorties du modèles.
Exploration (en cours) :
- distance moyenne parcourue par les archéomatériaux => quel paramètres pour quels patterns de distribution ?
- Calibrer distance moyenne obs. vs. simulé => quel paramètres produisent les meilleurs résultats ?
Rin ATP
interdisciplinarité
distribution "besoins"
distribution qté de batiment prioritaires
distribution qualité craie par carrières
distribution besoins pour les monuments
distribution de la capacité des carrière
population de monuments et de carrières
KISS
KIDS
Stylisé
Particulier
SimpopLocal
ATP
5AD
M03
HUME
SimFeodal
Kites
archéologie
MicMac
Desert Kites (wip)
Objectif : Modèle exploratoire pour mieux comprendre et évaluer les modes de chasses tenant compte de la morphologie des Desert kites.
Axes de complexification :
- Gazelle => algo. spécifique
- Chasseurs
- Espace
src :
KISS
KIDS
Stylisé
Particulier
SimpopLocal
ATP
5AD
M03
HUME
SimFeodal
Kites
Gerhaies
géormophologie
MicMac
GerHaies (revival)
Objectif : Explorer l'impact de différente stratégies de gestion sur l'évolution du linéaire de haies dans le territoire Normand
agents: Haies & Exploitants
2 indicateurs d'évolution
4 modes de gestion
Données réelles raster
Représentation multi-faces de chaque haie
KISS
KIDS
Stylisé
Particulier
Colodyn
Colodyn
Objectif : Explorer les processus qui conduisent un espace initialement vierge de toute présence humaine à se peupler sous l’effet d’un flux migratoire. L’objectif est d’explorer les effets de différents paramètres et de différentes situations initiales sur la configuration spatiale et le rythme du peuplement. Le processus central est celui de la migration.
Un flux de groupes migrants pénètre l’espace (grid of Cell) par le nord-ouest.
Ces groupes exploitent les ressources des cellules sur lesquelles ils sont localisés.
Face à une pénurie de ressources, le groupe se déplace.
ex : " Out of Africa"
Colodyn
moving strategy (II)
min energy
avoid competition
max energy
moving strategy (I)
Colodyn
Continuous
Front
Diffuse
R = 25
H = 30
M = 10
R = 1
H = 150
M = 10
R = 2
H = 90
M = 120
neolithic agriculture propagation
Amazonie pioneer front
Australia colonization at pleistocene
KISS
KIDS
Stylisé
Particulier
Colodyn
HUME
HUME
Objectif : Explorer les processus qui conduisent un espace initialement vierge de toute présence humaine à se peupler sous l’effet d’un flux migratoire, et cela dans un contexte de perturbations environnementales. L’objectif est d’explorer les effets de différents paramètres et de différentes situations initiales sur la configuration spatiale et le rythme du peuplement. Le processus central est celui de la migration
(HUman Migration and Environment)
Un flux de groupes migrants pénètre l’espace (représenté par une grille) par le nord-ouest. Ces groupes exploitent les ressources des cellules sur lesquelles ils sont localisés. Face à une pénurie de ressources, le groupe se déplace mais il a aussi une certaine probabilité d’innover qui lui permet de survivre tout en prélevant moins de ressources.
HUME
(HUman Migration and Environment)
src :
Agent-based approaches are also employed in physical geography !!
Observe the interactions between a phenomenon and space (spatial relations)
Modification of the phenomenon according to geographical objects
Modification of geographical objects according to the phenomenon
Management of spatial and temporal scales
Help in understanding spatial structures
Helping to understand and contextualize the simulation for decision-makers in a prospective approach
Agent-based approaches are also employed in physical geography !!
- Agents are designed to mimic physical components of geographical systems (ie. geomorphology or hydrology)
- In these cases, agents often represent elementary particles in a physical system. Their ‘agency’ may be described in terms of the physical factors that determine their state, as in phase transition (ie: ice, vapor and water)
Not a state of the art, just a few examples
Paul M. Torrens, 2010
Physical processes with CA & ABM
Rules may also be derived to explain how agents interact at small geographies to determine larger systems, such as the interactive behavior of :
- snowflakes in blizzards (Kronholm and Birkeland 2005)
- rock particles in sediment flow (D’Ambrosio et al. 2003; Vandewalle and Galam1999).
Use of agent-based modeling to explore the interactions of ‘humans’ as agents within physical environments and as agents of change – particularly regarding coupled human-natural systems (Balram and Dragic´evic´ 2003) and issues such as
- landscape erosion (Wainwright and Mulligan 2004),
- deforestation (Wainwright and Mulligan 2004), and
- land cover change (Veldkamp and Lambin 2001) – within those environments is growing in popularity.
Physical processes with Netlogo
Physical process model with NetLogo
An Agent-Based Model of Mediterranean Agricultural Land-Use/Cover Change for Examining Wildfire Risk
James Millington et al. 2008
S. Caillault
Local fire spread with 3 constraints:
Functioning and data at initialization :
Fire spread
S. Caillault
real
simulated
Simulation par Automate Cellulaire et Système Multi-Agents des conséquences du changement climatique sur l’aire de distribution de Pinus Cembra dans le Mercantour / Simulation by Cellular Automata and Multi-Agent System of the consequences of climate change on the distribution area of Pinus Cembra in Mercantour
Matthieu Vignal, Julien Andrieu, 2016
Simulation par Automate Cellulaire et Système Multi-Agents des conséquences du changement climatique sur l’aire de distribution de Pinus Cembra dans le Mercantour / Simulation by Cellular Automata and Multi-Agent System of the consequences of climate change on the distribution area of Pinus Cembra in Mercantour
Matthieu Vignal, Julien Andrieu, 2016
Reulier, 2019
- Software agents that follow hydrological rules
- Agents are able to move over a surface
- The agent can uses probability theory to decide its movement
- The life history of each agent is stored and can be analysed using GIS
- Separation of the environment generator and the agent population
- The environment for the agent can be generated by a hydrological model
Lascar
LandscApe StruCture And Runoff
Treuil, Servat, Reaney
Physical processes with CA & ABM
Random structured
Snow avalanche with cellular automata model
Discretization of water flows by ABM
Servat, 1998
Geomorphological process by CA
Chase 1992
Kronholm and Birkeland, 2005
Reulier, 2019
Lascar
Study interaction between landscape organization and hydro-sediment transfers
Lascar
[Reulier, 2015 ; Reulier et al. 2019]
Question : what effects of landscape organization to the hydrological connectivity ?
~ 5/10 minutes d'exécution
Fryirs et al., 2007
Lascar
[Reulier, 2015 ; Reulier et al. 2019]
Complexity
Diachronic
NETLOGO / GIS complementarity
NetLogo can read geographic data in different format
Vectoriel (point, ligne, polygone) de type shapefiles (shp)
Raster (.asc et .grd)
“Geographers’ work with ABMs has helped to strengthen existing ties with related disciplines such as computer science and informatics, ecology, sustainability science, economics, anthropology, political science and the earth sciences.
Primarily because of the value placed on spatial science and behavioral geography in agent-based modeling, work of this kind is helping to infuse geographical perspectives and ‘spatial thinking’ into these fields. »
Paul M. Torrens, 2010
- is old in geography and SHS
- is multi-paradigm (non linear SD, CA, ABM)
- is linked to complex-system theory
- works perfectly with human and physical objects / process
- is an incremental and dynamic process which ...
- ... organise the "facilitation" of reality in order to ...
- ... answer needed researchs questions
How to proceed ?
In Brief ...
create simulation models
in a nutshell
specific, complementary, and/or ambiguous vision of reality
Un contexte inter-disciplinaire
geographes
historiens
Ex : SimFéodal
[Cura et al. 2017]
Conceptual models
Entity
Interaction
SPACE
+ and +
... to build "Systems" answering questionS
... focus on
Sub-Systems to answer one question
Using simple words ...
... in space, time and point of view using a "virtual laboratory"
Discuss
Choosing rules, interaction between rules, observables, stylized facts, etc.
Organizing and discuting hypothesis
integrate
SIMULATEUR
substrat silicium
"reconstruction"
... in space, time and point of view using a "virtual laboratory"
Organizing and discuting hypothesis
?
?
?
!
... in space, time and point of view using a "virtual laboratory"
Organizing and discuting hypothesis
research question
... in space, time and point of view using a "virtual laboratory"
Organizing and discuting hypothesis
"The general idea of POM (Pattern Oriented Modelling) is to use multiple observed patterns as indicators of a system’s internal organization. Trying to reproduce such patterns with our ABMs makes us decode the internal organization of the real system. The point of POM is to consciously think in terms of pattern, regularities or stylized facts right from the beginning and to select model structure accordingly."
Railsback et Al. 2012
internal mechanisms
patterns multiples
... a good way to think ABM building and evaluation
round trip
German School in Ecology
[ see all Volker Grimm works ]
You should always start with
“null theories”
1- START with a null functional model
2 - Test the benefice of each new hypothesis to progress
"null"
"medawar Zone"
SURPRISE !
German School in Ecology
... a good way to think ABM building and evaluation
[ see all Volker Grimm works ]
Choices
generate paths / models ...
which could lead to the same pattern(s)
1
2
( )
( , )
[Grimm2016, Cottineau2016]
Equifinality
simulated patterns
p1 cluster
p2 densités
p3 attribut
Path Dependency ?
a) Organize the confrontation between points of view
c) Organize "surprise" by observing gap between patterns simulated vs patterns observed
d) Find bugs and limit case
b) Explain the path / the choice you take during construction, for you, your team, and all others !
Building models absolutly need a systemic exploration to ...
So What ?
Ok, i see. But how i organize all of this in order to reproduce, to discuss with others ?
[Cottineau2014, Rey2015, Cottineau2015, Cottineau2020, ...]
RBB (Reusable Building Block )
Better thinking modelling process ?
Incremental Modelling
Model familly
versions
Environnement
Thematic
0
3
0
1
2
2
2
2
0
Mise en oeuvre ?
“Building an automated modelling system (AMS) to explore a universe of spatial interaction models”, Openshaw 1988
The strategy of model building in biology, Lewins R., 1966
“From data crunching to model crunching: the dawn of a new era”, Openshaw 1983
HPC (High Performance Computing)
Paradigmes informatiques
Temps ! & Ingénieurs ?
[Rey2015, Cottineau2016, ...]
Applying this methodology to Cyprus ...
... a proposal to discuss :D :D
Different axis of complexification
Climate
Land-use
C0
C1
C2
LU0
LU1
LU2
Different axis of complexification
Places & Networks
Agriculture
A0
A1
A2
P0
P1
P2
Different axis of complexification
Epidemy emergence dynamics
Fighting diseases
F0
F1
F2
E0
E1
E2
Familly of models based on
Epidemics
Fighting
F0
F1
F2
E0
E1
E2
Places & Networks
Agriculture
A0
A1
A2
P0
P1
P2
Climate
Land-use
C0
C1
C2
LU0
LU1
LU2
... a wide range of combinations !
x
x
x
x
x
729 models
possible
impossible
interesting
not interesting
Familly of models
... that imply a complex chain of dependencies
Modules needs to work : Parameter (P), Empirical Data (ED) to activate new Mechanism (M)
F1
F0
>= LU1
>= A2
>= E1
LU1.ED: land-use raster & scale ?
LU1.ED: amenities location
F0.M: draining how-to ?
F1.M: biological fighting how-to ?
E0.ED: density threshold ?
E1.ED: water infection threshold ?
E1.M: epidemics how-to (space, time ) ?
F1.ED: fish number / efficiency ?
F0.ED: draining by land use strategy ?
LU1.ED: amenities water capacity
F1 need F0, because we start fighting with draining and after that we use biological way.
F0 and F1 need management of land-use, starting in our roadmap at LU1 model.
F1 need E1 because we need amenities in the model to fight using fish
F1 need A2 because well are justified by the existance of amenities for agriculture
A2 need LU1 because we need complex land use to justify agriculture with amenities
F1 works with any Climate or Places modules.
LU1.M : land-use location how-to ?
LU1.ED: land-use switching strategy
LU1.M : land-use evolution how-to ?
F1.ED: fighting allocation strategy ?
A2.ED: impacting water quality / quantity by land use ?
A2.M: water consumption (space, time ) ?
E1.ED: number of decease by event ?
Validity of these assumptions over different period of time ?
+amenities
+ water
+ complex land use
need
need
need
need
need
Complexification roadmap
model
observable(s)
empirical data
F0
E0
A0
P0
C0
LU0
climate hom. s / het. t
one landuse
cities
densities
null model
observable
empirical data
Fx
Ex
Ax
Px
Cx
LUx
Ox_sim
EDx
generate
extracted
needed
extracted from
parameters + values
Px
Ox_ed
vs
?
?
Generic Template for each step of complexification ...
STEP 0 : Building the Null Model !!
HighPasm ABM
By sebastien rey coyrehourcq
HighPasm ABM
- 135