Actions

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.

Contents

Google Calendar

Follow this link

{{#iDisplay:https://calendar.google.com/calendar/embed?height=600&wkst=1&bgcolor=%23FFFFFF&src=5ukeqirhq8f847l3venbkecjb4%40group.calendar.google.com&color=%238D6F47&ctz=America%2FDenver}}

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. We'll take a vote on the best presentation. The winner is going to get 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 26, 8pm (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)
Ben (presenter)
Kofi (no code or app but let me know if you need help judging?)
yuki
Vandana
Chathika (presenter) https://github.com/chathika/NL4Py https://pypi.org/project/NL4Py/#description

Introduction to Machine Learning

Suggested date and time

Thu 21st 4:30-5:30 pm

Location

Lecture hall CLE

Interested Participants

(please indicate whether you would like to join as a presenter or audience)

  • Yuki (presenter)
  • Gianrocco (co-presenter)
  • Kofi K. (audience)
  • Alice (audience)
  • Eleonora (audience)
  • Louisa (audience)
  • Ada (audience)
  • Andrea (audience)
  • Konstantinos (audience)
  • Subash (audience)
  • Xiaoyu (audience)
  • Jared (audience)
  • Ricky (audience)
  • Vandana (audience)t
  • Anastasiya (audience)
  • Sanna (audience)

Simon (audience)

Introduction to Deep Learning

Suggested date and time

Tue 21st 7-8pm

Introduction to Recurrent Neural Networks

Suggested date and time

Thu 28th starting from like 5pm

Interested Participants

(please indicate whether you would like to join as a presenter or audience)

  • Yuki (presenter)
  • Kofi K (audience)
  • Thushara (audience)
  • Eleonora (audience)
  • Ada (audience)
  • Andrea (audience)
  • Konstantinos (audience)
  • Ariadna (audience)
  • Xiaoyu (audience)
  • Ricky (audience)
  • Jared (audience)
  • Anastasiya (audience)
  • Sanna (audience)
  • Xindi (audience)


Physical theater

Let's use our body and not just our brain! If you are interested in physical theater or simply just curious but with no previous experience, please sign up. I will go through some exercises involving body expression, movement and physical interactions.

https://en.wikipedia.org/wiki/Physical_theatre

Location

Dance studio - in the fitness center CONFIRMED!

date and time

Tuesday 3rd July, 4:00 - 5:30PM

Interested participants

  • Niccolo (presenter)
  • Yuki
  • Gianrocco
  • Jordan
  • Jonas
  • Eleonora
  • Ada
  • Evgenia
  • Ariadna
  • Subash
  • Vandana
  • maria
  • Sanna

Intro Improv Theatre

We will begin with some exercises to get out of our heads and to be aware of our fellow players. Then we build up towards the golden rule of improv (Yes, and ...) and finish with some short scenes! No prior experience needed!

https://en.wikipedia.org/wiki/Improvisational_theatre

I think 90min would be a good time.

Location

Dance studio - in the fitness center (to be confirmed)

Suggested date and time

TBA

Interested participants

  • Jonas (presenter)
  • R Maria
  • Eleonora
  • Ada
  • Evgenia
  • Ariadna
  • Subash
  • Vandana

Introduction to ecological economics

The idea would be for me to give a 30 min overview more or less of the principles behind eco-eco: what it means, what makes it different from mainstream economics and environmental economics, how it is conceptualised and operationalised, etc. Then we can have a discussion/debate (can be more or less structured depending on how it goes, I'll prepare for something more structured if no natural debate arises) for 30 mins or however long people want.

Location

TBC

Suggested date and time

Sometime in week 3

Interested participants

1. Louisa (presenter)
2. Shantal
3. Jared
4. Tom
5. Cedric
6. Kofi
7. Cesar

Multi-scale integrated analysis of societal and ecosystem metabolism (MuSIASEM)

For those interested in an approach that describes the relations between funds and flows in societies and ecosystems (labour, water, land, energy, etc.) across different scales and hierarchical levels (https://en.wikipedia.org/wiki/MuSIASEM)

Location

TBC

Suggested date and time

TBC

Interested participants

  • Louisa (presenter)
  • Ana
  • Thushara
  • Shantal
  • Tom
  • Alan
  • Xiaoyu

Simple VC overview

Location

Main Room of the Dorms

Suggested date and time

9:00PM Wed, June 20th

Interested participants

Introduction to Statistical Physics of moving agents

I'll introduce stochastic differential equations which are a statistical physics tool that can be used to explore processes which we assume to be made up of some deterministic behaviour, and some stochastic (random) behaviour, which we call noise. Noise can be interpreted in different ways depending on the application we wish to model (e.g. search strategies of foraging animals, stock market behaviour, gene regulatory networks).

This approach to stochastic processes will be different to the one presented by Srividya, although it can ultimately lead to the same 'distribution based' description. A nice thing about this approach is that it shows a strong link between the micro (fine scale) and macro (coarse scale) behaviour of systems. I'll keep mathematics to a minimum and am happy to discuss finer details with anyone that cares.

Location

CLE auditorium

Suggested date and time

Tuesday 26th 7pm?

Interested participants

  • Zohar (presenter)
  • Chathika (ignorant disciple)
  • Andrea
  • R Maria
  • Ariadna
  • Kofi

Managing Scientific Computing

This tutorial will be split in two parts.

  • Part 1) Managing large-scale computations using compute clusters and queueing systems (in particular SGE and PBS)
  • Part 2) Plugging your custom C++-code to Python using pybind11 (and to Matlab using Matlab's C-wrapper)

github.com/benmaier/qsuite

https://github.com/pybind

Part 1

Often times you find yourself writing some simulation code and end up with several free parameters. Now the problem is you wanna scan the parameter space and also sample a decent amount of times per parameter configuration. It is possible to scp your files to the server, write a job.sh script, submit that one, download the outputs, load the outputs and rewrap 'em to find the solutions you then want to analyze. Huge overhead.

I wrote a package/command-line tool (qsuite)[1] that deals with this typical problem.

Part 2

What I've seen often is that people write custom C++-code only to compile it, feed data to it using the command line, then loading the output data to Python for analysis. This is an unneccesary overhead, as there exists a fairly simple framework to plug your C++-functions to a Python module that you can easily load and use in Python, called `pybind11`. I would give a short tutorial on how to use that one

Ben (benjaminfrankmaier@gmail.com)

Interested Participants:

  • Ben (presenter)
  • Steph
  • Alice
  • Zohar
  • Guillaume
  • Kofi

Suggested date and time

Wednesday, 27th, 5pm

COMPLETED EVENTS

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

Mesa CSSS Tutorial: https://github.com/tpike3/CSSS_Mesa_tutorial

Date, Time, Location (final)

Date: Sunday June 17th

TIME CHANGE
Time: 7:30 Location: 1st floor Conference Room (right across from cafeteria)

If you want to discuss some basic python, set up jupyter notebook etc I will be there by 6:30

Based on a conversation it was requested to move the tutorial to Sunday evening, if you have issues please let me know

Interested Participants

1. Xiaoyu Wang
2. Yuki
3. Sanna
4. R Maria
5. Amy Schweikert
6. Kevin Comer
7. Thushara Gunda
8. Kofi K
9. Laura Mann
10. Ariadna
11. Eleonora
12. Caroline Alves
13. Jared Edgerton
14. Allie
15.

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)
  • Kevin (little python knowledge, decent knowledge with NetLogo)

-Kofi K. (limited Python experience, no NL)

  • Eleonora (little Python, no NL)
  • Ariadna (ok python/ no NL)

Time

By the poll results, 18th Monday 7:30 pm, works best.

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 literature quickly and with confidence.

Suggested date and time

Monday June 18, 7pm (Let me know if that time does not work for you!)

Slides are available online!

https://github.com/acuschwarze/CSSS18_robustness_tutorial

Interested Participants

  • R Maria
  • Luca
  • Kofi K.
  • Thushara
  • Ariadna
  • Sanna
  • Cedric
  • Jared Edgerton
  • Andrea
  • Eleonora
  • Ada
  • Evgenia
  • Allie
  • Subash

Digital Trace Data (Web Scraping/API)

Practical demonstration on how to automatically scrape data from the web using several methods.

Suggested date and time

Tuesday 8PM

Participants

1. Jonas
2. Andrea
3. Louisa
4. Inga
5. Zohar
6. Ana
7. Thushara
8. Evgenia
9. Xiaoyu
10. Alice
11. Ariadna
12. Subash
13. Shantal
14. Carlos
15. Jared
16. Chris

Introduction to Longitudinal Social Network Dynamics

(organised by Evgenia)

Are you curious about social network dynamics? This workshop gives an introduction to the statistical modelling of longitudinal social network data. We first explore why dynamic social network analysis is useful, and then look into a range of questions that could be answered within the model family of stochastic actor-based models (implemented in the RSiena package within R).

When this is useful: - you want to focus on SOCIAL network dynamics - the actors in the network have agency (they could decide over the course of action), - there are multiple measurements (at least two) of the relationships within the same actor set.

Analytical possibilities are endless, e.g. you would like to explore - how actor level characteristics affect evolution of relationships (creation and dissolution of new ties) - how particular behaviour spreads in the network - how what's going on within one type of network influences processes in another type of network (multiplex networks) etc.

I will cover general considerations and point out useful resources. In short: cool stuff.

Suggested date and time

UPDATE: The tutorial is shifted to 4 pm to avoid time conflict with experiment. Wednesday June 27

MAIN LECTURE ROOM (where all of our classes take place)

Interested Participants

  • Sanna
  • Sandra
  • Ariadna
  • Thushara

Further information

Presentation posted on slack.

Movement (Dance) Improvisation Tutorial/Workshop

(organized by Sarah H.)

About the Tutorial

Thank you all for such a great improv dance tutorial yesterday! Had a wonderful time sharing the world of creative exploration and improvisation with you!

This tutorial is an individual movement workshop that focuses on sensory (touch, sight, sound) exploration in the studio environment. No experience necessary! No contact with others… or if you are feeling ambitious - contact with others. More than likely, this will be an excellent opportunity to relax and "think" with your body… and let your mind rest.

What does contact improvisational dance look like? Check out some of these youtube...
Historical example of contact improvisation (we won't be doing this): https://www.youtube.com/watch?v=9FeSDsmIeHA
And a more contemporary example: https://www.youtube.com/watch?v=nWfoGnT_etA

According to Wikipedia....: "Dance improvisation is the process of spontaneously creating movement. Development of improvised movement material is facilitated through a variety of creative explorations including body mapping through levels, shape and dynamics schema." https://en.wikipedia.org/wiki/Dance_improvisation

Dance scholar Cynthia Novack suggests that movement improvisation informs us about the body's creative and physical response to social and political environments. With this in mind, I'll talk a little bit about the history of dance improvisation… and then will get you sensing and exploring through a series of movement "tasks" to deepen your sensory experience.

Novack, C. (1988). Looking at Movement as Culture: Contact Improvisation to Disco. TDR/The Drama Review. Vol. 32. No. 4. Pp 102-119. https://ais.ku.edu.tr/course/19352/C.J.C.Bull%20-%20Contact%20Improvisation.pdf

What to bring/What to Wear

Comfortable clothes good for movement. (Workout clothes). You will be laying on the floor…

Suggested date and time

Monday, July 2nd, IAIA, Fitness Center
Group Fitness/Dance Studio
4:00-5:30pm

Interested Participants?

1. Sarah H. (organizer)

Dual tutorial on evolutionary dynamics /evolutionary computing

(presented by Vandana, Chathika, Nam, Cedric)

Two tutorials:
- evolutionary dynamics: model why and how things evolve (e.g. research of Paul Hooper)
- evolutionary computing: model evolution to optimise things (e.g. research of Wendy Cho)

Suggested date and time

Monday 2th July, 6h45pm (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)





Vandana
Chathika (presenter) https://github.com/chathika/NL4Py https://pypi.org/project/NL4Py/#description

Data Analysis Exercise with Ground Truth

(Pete K leads)

Either Tom Pike or I will be generating data for us from an unknown agent-based model. Our collective goal will be to analyze this data and discover as much as we can about this synthetic world in one warm Tuesday evening!

Suggested date and time

Tuesday 3rd July, 7pm

Spatial ecology (Introduction to partial differential equations)

by Nikunj Goel

Earth is home to millions of organisms that occur in wide range of habitats ranging from humid tropics to icy poles. Understanding the drivers of distribution patterns of organisms is one of the fundamental goals of biogeography. Traditionally, biogeographers have sought to explain these patterns using niche models that relate the occurrence of an organism in a location to the prevailing climatic conditions (such as rainfall, temperature, PH, etc.). However, these models ignore the underlying spatial structure of the population and the interactions across various sub-populations, that might be equally important in predicting distribution patterns organisms.

In this tutorial, I aim to introduce a basic spatial model of population growth/spread using reaction-diffusion/partial-differential equations. We will derive Skellam's/Fisher's model of population spread from first principles and then analytically solve it. Next, I will present empirical examples from epidemiology, invasion ecology, and biome patterns [this is what I do!].

Due to time constraints, I won't be discussing the mathematics in too much detail. My goal is to make people aware of partial differential equations and get them started. I am happy to explain more OFFLINE!

Interested Participants


Resources

1. Partial Differential Equations in Ecology: Spatial Interactions and Population Dynamics (You should probably read this first. Its relatively simple paper)
2. Biological Invasions: Theory and Practice (This is a nice and short book on invasion biology)
3. Mathematical Biology, Part II: Spatial Models and Biomedical Applications (This is the definitive book of spatial biology; it's a bit heavy and jargony, though.)

Suggested date and time

Tuesday 3rd July, 5 pm Main lecture hall


Find your hook: how to make media and the public interested in your research

by Ranya Alkadamani (uploaded by Simon Jankowski)

Hey all, Ranya my partner is here on Thursday, she’s a communications strategist (PR) working with scientific and tech organizations in Australia and has an awesome spiel on ‘finding your hook’ to attract interest in your work. She is going to run a tutorial with a short exercise to help us develop succinct messages about our individual research projects. It could be a good book-end for our project work or help define the focus of your larger research in the public sphere.

For anyone interested, it will run in the auditorium halfway through lunch. I believe that is 1.30 pm (TBD)

Interested Participants

1. Jonas
2. Simon
3. Javier
4. Saska
5. Conor
6. ...

Resources

https://www.huffingtonpost.com/author/ranya-alkadamani

Suggested date and time

Thursday 5th July, 1.30 pm Main lecture hall (TBD)

Information Decompotion

by Conor Finn

I am going to hold a small tutorial/discussion on multivariate information decomposition before the barbecue. Anyone who is interested in quantifying how source variables provide unique, redundant and synergistic information about a target variable should come along.

Resources

1. The slides from the tutorial can be found here [2]
2. The original paper on partial information decomposition is available from [3]
3. My paper on this problem is available from [4]

Date and time

Thursday 5th July, 7.00pm, Board Room 1