1839 views
owned this note
---
slideOptions:
transition: slide
progress: true
---
###### tags: `ESUG` `CORMAS` `Smalltalk`
[//]: # (wget --recursive --convert-links https://hackmd.iscpif.fr/p/By-9IVqfQ)
<span style="font-size:30px">
# [CORMAS](https://github.com/cormas), a participatory and interdisciplinary Agent Based Simulation Platform
<span>
By **P. Bommel**, N. Becu, B. Bonte, **E. Delay**, C. Le Page, H. Morales, N. Papoulias, S. Stinckwich, and the [CORMAS](https://github.com/cormas) team.
<span style="font-size:25px">
[**ESUG 2018**](https://esug.github.io/2018-Conference/conf2018.html) in _[Università degli Studi di Cagliari](https://www.unica.it/unica/)_ -- Sardinia.
</span>
---
## Software consideration
----
### CORMAS by example

----
### CORMAS is always about the real

----
### Multiple points of views

→ Asymmetric information to raise awareness about several viewpoints
----
### Interactive simulation

----
### CORMAS and [ComMod](https://www.commod.org/)

<span style="font-size:22px">
Do not provide "ready to use" solutions, but
**Co-design** with stakeholders to get a **shared** representation.
</span>
<span style="font-size:25px">→ Raising awareness, facilitating communication,
promoting coordination or mitigating conflicts </span>
----
### Convert development of </br>simulation in hack-festival

Model built as a collective learning process
----
### Cormas topics

----
### Types of CORMAS models
From theoretical models to
computer assisted role playing-games

<span style="font-size:18px">
</span>
----
### Modeling is learning
researcher / thematician = simulation dev.

----
### Modeling is learning
With a shared history, intertwined with OO !

---
## Our values
----
### Building a shared vision
<span style="text-align:left;font-size:35px;">
- take care of each indivuality
- share differents points of view
- look for a "big picture" vision
→ Promoting political spaces
</span>

----
### Friendliness
- CORMAS meta-model is not prescriptive </br> → close to stackholders description

----
### Decentring
- Usually focused on stakeholders especially on their own practices.
- Put yourself in the place of the agent (you really think about what the agent does and perceives).
- Sharing and learning-by-modeling process generate empathy and mutual understanding
> Wilensky _et al._, 2006. Thinking like a Wolf, a Sheep or a Firefly
----
### An openWorld : transcendence
<span style="text-align:left;font-size:35px">
A book from an anthropologist: M. Augé, 1982, "_Génie du paganisme_". → The great difference between Monotheism and Polytheism :
</span>
<span style="font-size:25px">
- Monotheism : God is outside is creation and believers needs to ask for world tweaking
- Polytheism : Gods are inside the world and believers can interact directly with them
</span>
----
### Transcendental CORMAS users

<span style="text-align:left;font-size:20px;width:55%;">
CORMAS with Pharo looks like polytheism because, users can interact with the simulation just like a polytheist believer would do with his gods.
**Users** can enter slowly in Smalltalk and become an **oracle**
</span>
---
## Cormas Smalltalk and HPC
### (High Performance Computing)
It's now possible to connect CORMAS/Pharo with [openMole](https://openmole.org/)
----
### How it work?

----
### Example
On "Fireman" model under:
<span style="text-align:left;font-size:30px;width:55%;">
- 100 replications
- Desktop computer → 6 min ☻
- CIRAD cluster → 22 min ☠ ☠
- 1000 replications
- Desktop computer → 60 min ⚉
- CIRAD cluster → 37 min ⚉
- 10000 replications
- Desktop computer → 10h ☠ ☠
- CIRAD cluster → 1h38 ☻
</span>
---
## Courses on ABM
### MISSABMS

3 platforms: Netlogo, Gama, Cormas
----
## Courses on ABM
### MISSABMS
- Diversity of participants,
- Afterwards, preference for UML formalization over implementation,
- UML + Smalltalk:
- Better understanding of OO concepts
- Navigation between classes,
- Live coding into the debugger (model checking)
---
## To conclude

----
### Il Buono

<span style="font-size:30px">
- Made by people for people
- Smalltalk : through thick and thin (1998)
- Object centred vision
- Faster learning than other languages
- Link to real world
- With concrete challenges: biodiversity, social equity, human/wildlife management, conflict resolution...
</span>
----
### Il Brutto

<span style="font-size:30px">
- Dirty distribution for interactive simulation
- One monster class → work in progress
- No unit test → :+1:
- Quick and dirty coded and until recently without versioning → :+1:
</span>
----
### Il Cattivo

<span style="font-size:30px">
- Not (yet) GIS → needs for spatial object manipulation
- No spatial continuity
- Limited (world size, number of agents) → needs for optimisation
</span>
---
### Cormas Soonish :)
- Integrating with wonderful Pharo technologies
- Roassal, Maps, Spec, GT tools, DSLs

----
### Cormas Experiments
<a href="https://drive.google.com/file/d/1KWgQCFM8KgzcQMGpTm60zQ70vfOxK2wB/view">
<img border="0" alt="LorentzExperiment" src="https://parsenet.files.wordpress.com/2018/09/latablerehab.png" width="600" height="420">
</a>
----
### Cormas in 10 years
<span style="font-size:30px">
- Tangible objects: avatar, life-size RPG (but no 3D, no immersion glasses)
- Multi-devices : tablet, smartphone ...
- Software blocks for interactive game design
- News tools for collective design of models
- AI for hybrid simulation (when players are missing)
Focus our efforts on the **meaning** of the model (symbolic)
more than its **aesthetic** (realistic)
</span>

---
## Welcome ...
... to be part of the CORMAS team to play the "infinite game". https://github.com/cormas/cormas/

---
# In addition
Some references
----
## Some papers about CORMAS
<span style="font-size:18px">
* Bommel P., Bécu N., Le Page C., Bousquet F., 2016. Cormas, an Agent-Based simulation platform for coupling human decisions with computerized dynamics. In, T. Kaneda, H. Kanegae, Y. Toyoda, & P. Rizzi (Éd.), Simulation and Gaming in the Network Society. Volume 9 of the series Translational Systems Sciences pp 387-410. Springer Singapore. [DOI:10.1007/978-981-10-0575-6_27](http://cormas.cirad.fr/pdf/CormasforIsaga2015.pdf).
* Bousquet, F., Bakam, I., Proton, H. et Le Page, C. 1998. Cormas: common-pool resources and multi-agent Systems. Lecture Notes in Artificial Intelligence 1416: [826-838](https://www.researchgate.net/profile/Francois_Bousquet/publication/225181720_CORMAS_Common-pool_resources_and_multi-agent_systems/links/54a113dc0cf257a6360222ac/CORMAS-Common-pool-resources-and-multi-agent-systems.pdf).
</span>
----
## Some papers about participative work and CORMAS
<span style="font-size:18px">
* Le Page C., Becu N., Bommel P., Bousquet F., 2012. Participatory Agent-Based Simulation for Renewable Resource Management: The Role of the Cormas Simulation Platform to Nurture a Community of Practice. Journal of Artificial Societies and Social Simulation 15-10 [http://jasss.soc.surrey.ac.uk](http://jasss.soc.surrey.ac.uk/15/1/10.html!)
* M. Etienne, et al. 2014, Companion Modelling. A Participatory Approach to Support Sustainable Development, Springer, [978-94-017-8557-0](https://www.springer.com/us/book/9789401785563).
* Much more [here](http://cormas.cirad.fr/fr/bibliog/article.htm) and [here](https://www.commod.org/en/publications)!
</span>