1114 views
--- 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 <img src="https://github.com/cormas/Booklet-CORMAS/raw/master/Chapters/CORMAS/chap_modelling_guide/figures/varzeaVivaFRB.gif" alt="Websocket" width="80%"> ---- ### CORMAS is always about the real <img src="https://github.com/cormas/Booklet-CORMAS/raw/master/Chapters/CORMAS/chap_modelling_guide/figures/montage2.png" style="background:none; border:none; box-shadow:none" width="80%"> ---- ### Multiple points of views ![POV](https://github.com/cormas/Booklet-CORMAS/raw/master/Chapters/CORMAS/chap_modelling_guide/figures/multiPOVs.png) &#x2192; Asymmetric information to raise awareness about several viewpoints ---- ### Interactive simulation ![POV](https://github.com/cormas/Booklet-CORMAS/raw/master/Chapters/CORMAS/chap_modelling_guide/figures/Kula.jpg =550x) ---- ### CORMAS and [ComMod](https://www.commod.org/) ![Simplification](https://github.com/cormas/Booklet-CORMAS/raw/master/Chapters/CORMAS/chap_modelling_guide/figures/amenajeu-rsa.JPG =500x) <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">&#x2192; Raising awareness, facilitating communication, promoting coordination or mitigating conflicts </span> ---- ### Convert development of </br>simulation in hack-festival ![Simplification](https://github.com/cormas/Booklet-CORMAS/raw/master/Chapters/CORMAS/chap_modelling_guide/figures/NewDistrict.jpg =550x) Model built as a collective learning process ---- ### Cormas topics ![topics in 2012](https://github.com/cormas/Booklet-CORMAS/raw/master/Chapters/CORMAS/chap_modelling_guide/figures/jasssFig8.png =450x) ---- ### Types of CORMAS models From theoretical models to computer assisted role playing-games ![topics in 2012](https://github.com/cormas/Booklet-CORMAS/raw/master/Chapters/CORMAS/chap_modelling_guide/figures/jasssFig7.png =530x) <span style="font-size:18px"> </span> ---- ### Modeling is learning researcher / thematician = simulation dev. ![topics in 2012](https://github.com/cormas/Booklet-CORMAS/raw/master/Chapters/CORMAS/chap_modelling_guide/figures/Photo0284_arrow.png =550x) ---- ### Modeling is learning With a shared history, intertwined with OO ! ![Simula and Smalltalk](https://parsenet.files.wordpress.com/2018/09/ooandmodelling1.png =4000x) --- ## 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 &rarr; Promoting political spaces </span> ![political space](https://raw.githubusercontent.com/cormas/Booklet-CORMAS/master/Chapters/CORMAS/chap_modelling_guide/figures/political_space.JPG =450x) ---- ### Friendliness - CORMAS meta-model is not prescriptive </br> &#x2192; close to stackholders description ![dear friends](https://raw.githubusercontent.com/cormas/Booklet-CORMAS/master/Chapters/CORMAS/chap_modelling_guide/figures/friendliness.JPG =450x) ---- ### 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_". &#x2192; 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 <img src="https://github.com/cormas/Booklet-CORMAS/raw/master/Chapters/CORMAS/chap_modelling_guide/figures/transandence.JPG" alt="Websocket" width="50%" style="float:right"> <span style="text-align:left;font-size:40px;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? ![](https://github.com/cormas/Booklet-CORMAS/raw/master/Chapters/CORMAS/chap_Analysis_experiments/figures/Cormas_openMole.png) ---- ### Example On "Fireman" model under: <img src="https://raw.githubusercontent.com/cormas/Booklet-CORMAS/master/Chapters/CORMAS/chap_modelling_guide/figures/trans_amazon.JPG" alt="Websocket" width="30%" style="float:right"> <span style="text-align:left;font-size:30px;width:55%;"> - 100 replications - Desktop computer &#x2192; 6 min &#x263B; - CIRAD cluster &#x2192; 22 min &#x2620; &#x2620; - 1000 replications - Desktop computer &#x2192; 60 min &#x2689; - CIRAD cluster &#x2192; 37 min &#x2689; - 10000 replications - Desktop computer &#x2192; 10h &#x2620; &#x2620; - CIRAD cluster &#x2192; 1h38 &#x263B; </span> --- ## Courses on ABM ### MISSABMS ![MissAbms 17](https://i.imgur.com/gXCA55i.png) 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 il brutto il cattivo](https://upload.wikimedia.org/wikipedia/en/4/45/Good_the_bad_and_the_ugly_poster.jpg =400x) ---- ### Il Buono ![Il buono](https://upload.wikimedia.org/wikipedia/it/thumb/5/50/Il_biondo.png/310px-Il_biondo.png =500x) <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 ![Il brutto](https://i.ytimg.com/vi/QCShax2Mhp0/maxresdefault.jpg =500x) <span style="font-size:30px"> - Dirty distribution for interactive simulation - One monster class &#x2192; work in progress - No unit test &#x2192; :+1: - Quick and dirty coded and until recently without versioning &#x2192; :+1: </span> ---- ### Il Cattivo ![il cattivo](https://upload.wikimedia.org/wikipedia/it/thumb/6/68/Il_cattivo.png/310px-Il_cattivo.png =500x) <span style="font-size:30px"> - Not (yet) GIS &#x2192; needs for spatial object manipulation - No spatial continuity - Limited (world size, number of agents) &#x2192; needs for optimisation </span> --- ### Cormas Soonish :) - Integrating with wonderful Pharo technologies - Roassal, Maps, Spec, GT tools, DSLs ![Geranium Example](https://sharedocs.huma-num.fr/wl/?id=A8Yj5XN1e8ZlrIdTu9qj8PfBFNL38Whp =700x) ---- ### 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> ![back to the future](https://raw.githubusercontent.com/cormas/Booklet-CORMAS/master/Chapters/CORMAS/chap_modelling_guide/figures/borad_game.JPG =650x) --- ## Welcome ... ... to be part of the CORMAS team to play the "infinite game". https://github.com/cormas/cormas/ ![back to the future](https://github.com/cormas/Booklet-CORMAS/raw/master/Chapters/CORMAS/chap_modelling_guide/figures/XXprogramming.png =600x) --- # 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>