Complex Systems Summer School 2018-Tutorials
From Santa Fe Institute Events Wiki
Complex Systems Summer School 2018
|
Please use this space to organize any tutorial you would like to offer your peers. Thanks.
Python Agent Based Modelling- Mesa and Mesa Packages
Mesa is a relatively new ABM library based in the Python programming language. This tutorial will run through two quick ABMs using Mesa as well as a quick orientation of MESA API and GitHub page.
Mesa Packages is a new way to conceptualize ABM libraries with the idea of developing a repository of algorithms which can be integrated into ABMs. The goal is for the development of more complex models by having a rich repository of optimized algorithms which researchers can apply to different data or recombine in novel ways to explore a complex phenomenon. At the very least, it will hopefully make models easier to assemble and reduce the threshold so more people can build ABMs to support their research.
If you have any questions or thoughts please talk to me in person (Tom Pike) or send me an email tpike3@gmu.edu
Mesa API: https://mesa.readthedocs.io/en/master/overview.html
Mesa GitHub: https://github.com/projectmesa
Mesa Packages: https://github.com/projectmesa/mesa/wiki/Mesa-Packages
Interested Participants
1. Xiaoyu Wang
2. Yuki
3. Sanna
4. R Maria
5. Amy Schweikert
6. Kevin Comer
Agent-Based Model Analysis by Controlling NetLogo from Python with NL4Py
If you're interested in using Python libraries to analyze output from your NetLogo models you can do so with NL4Py.
You can get started with a simple: pip install nl4py
GitHub: https://github.com/chathika/NL4Py
Pypi: https://pypi.org/project/NL4Py/
Also, there are some Jupyter Notebook examples of using DEAP for calibration on multiple processors and SALib for sensitivity analysis via NL4Py here: https://github.com/chathika/NL4Py/blob/master/examples/ParameterCalibrationWithDEAP.ipynb
https://github.com/chathika/NL4Py/blob/master/examples/SensitivityAnalysis.ipynb
It uses a different architecture from PyNetLogo, pushing the parallelization of headless workspaces to the JVM instead of leaving it to the Python application developer. NL4Py can help you to run thousands of NetLogo models under varying parameter configurations in parallel.
Please feel free to post any issues on the GitHub repository any arise!
Chathika (chathika@knights.ucf.edu)
Interested Participants:
- JP (strictly novice Python skills but decent w/ NetLogo)
- Javier (strictly novice NetLogo skills but decent w/ Python)
- Xiaoyu Wang
- Ariadna (ok python/ no NL)
- Sanna
- Maria (ok python/ no NL)
- Amy (ok python, good with pandas library / little NL)
Structural robustness in networks
(organised by Alice)
The field of robustness and resilience in networks is wide and spans across many applications of complex systems: robustness in biological networks, cooperation and social networks, supply and trade networks, infrastructure, computing systems, etc. Speaking from experience, it is hard to navigate the literature on this topic and consolidate the many different jargons and the different notions of robustness and resilience. In this tutorial, I will
- share some ideas on how to navigate the field of network robustness and make sense of seemingly conflicting paradigms in the field,
- give an overview of some ideas on robustness in network theory
- have a discussion with you about the concepts of network robustness that exist in your field of study and how those may relate to notions of robustness in other fields.
For many questions concerning network robustness, there are no definitive answers. But I hope that this introduction can help you think critical about network robustness and navigate the litature quickly and with confidence.
Suggested date and time
Monday June 18, 7pm (Let me know if that time does not work for you!)
Interested Participants
- R Maria
Code Slam!
(organised by Alice)
Do you have an nice bit of code/ an app/ a jupyter noteboook that might be useful to other complex systems scientists? Pitch it in the code slam! Every volunteer gets five minutes to introduce their code or app to the group. The best presentation is going to win the invaluable CSSS Code Slam! trophy!!! ... which I will build from whatever materials that I find lying around at IAIA. :-)
Suggested date and time
Tuesday June 19, 7pm (Let me know if that time does not work for you!)
Interested Participants
(please indicate whether you would like to join as a presenter or audience)
Alice (presenter)
Introduction to Deep Learning
Suggested date and time
tbd
Interested Participants
(please indicate whether you would like to join as a presenter or audience) Yuki (presenter)
Introduction to Recurrent Neural Networks
Suggested date and time
tbd
Interested Participants
(please indicate whether you would like to join as a presenter or audience) Yuki (presenter)