modeling and simulating social systems with matlab
play

Modeling and Simulating Social Systems with MATLAB Lecture 5 - PowerPoint PPT Presentation

Modeling and Simulating Social Systems with MATLAB Lecture 5 Cellular Automata Olivia Woolley, Stefano Balietti, Lloyd Sanders Computational Social Science (D GESS) 2015-10-26 ETH Zrich Strategies for Research Projects Data


  1. Modeling and Simulating Social Systems with MATLAB Lecture 5 – Cellular Automata Olivia Woolley, Stefano Balietti, Lloyd Sanders Computational Social Science (D GESS) 2015-10-26 ETH Zürich

  2. Strategies for Research Projects  “Data project”:  Choose a dataset for which you have an interesting question  Come up with a research question that can be tested with that data  Implement an existing model form the scientific literature  Run simulations that either use the dataset as input or that reproduce certain aspects of the data 2015-10-26 2 Modelling and Simulating Social Systems with Matlab

  3. Strategies for Research Projects  “Paper project”:  Choose a scientific paper (or several papers) on a modeling and simulation approach that looks interesting  Come up with a research question that builds upon the paper but is different from their research questions  Extend, simplify, modify, and/or combine existing models for testing your research question  Run simulations for your model and compare the results to the ones for the original model 2015-10-26 3 Modelling and Simulating Social Systems with Matlab

  4. Repetition  D y n a m i c a l s y s t e m s d e s c r i b e d b y a s e t o f differential equations; numerical solutions can be calculated iteratively using Euler's method ( e x a m p l e s : L o t k a - Volterra and Kermack-McKendrick)  The values and ranges of parameters critically matter for the system dynamics (Example 2, epidemiological threshold)  Time resolution in Euler's method must be sufficiently high to capture “fast” system dynamics (Example 3)  MATLAB provides the commands ode23 and ode45 for solving differential equations (Example 3) 2015-10-26 4 4 Modelling and Simulating Social Systems with Matlab

  5. Simulation Models  W h a t d o w e m e a n w h e n w e s p e a k o f (simulation) models?  Formalized (computational) representation of social (or other kinds of) dynamics  Reduction of complexity, i.e. highly simplifying assumptions  The goal is not to reproduce reality in general (only very specific aspects of it)  Formal framework to test and evaluate causal hypotheses against empirical data 2015-10-26 5 5 Modelling and Simulating Social Systems with Matlab

  6. Simulation Models  Strength of (simulation) models?  Computational laboratory: test how micro dynamics lead to macro patters  Experiments with computer models are particularly useful in the social sciences, where experiments in the real world are typically not possible  Suitable where analytical models fail or where dynamics are too complex for analytical models 2015-10-26 6 6 Modelling and Simulating Social Systems with Matlab

  7. Simulation Models  Weakness of (simulation) models?  The choice of model parameters and implementation details can have a strong influence on the simulation outcome  We can only model aspects of a system, i.e. the models are necessarily incomplete and reductionist  More complex models are generally not better (only when simplification is not possible)  It can be hard to relate simulation results to a realistic and relevant empirical question 2015-10-26 7 7 Modelling and Simulating Social Systems with Matlab

  8. Simulation Models  How to we deal with the known limitations?  Simple models with only few parameters  Test whether simulation results depend on details of the implementation or model  Validate the model mechanism with observations and causal plausibility  Use empirical data to evaluate the predictive power of the simulation model 2015-10-26 8 8 Modelling and Simulating Social Systems with Matlab

  9. Cellular Automaton (plural: Automata) 2015-10-26 9 9 Modelling and Simulating Social Systems with Matlab

  10. Cellular Automaton (plural: Automata)  A cellular automaton is a set of rules, defining how the state of a cell in a grid is updated, depending on the states of its neighboring cells  Cellular-automata simulations are discrete in time and space 2015-10-26 10 10 Modelling and Simulating Social Systems with Matlab

  11. Cellular Automaton  The grid can have an arbitrary number of dimensions: 1-dimensional cellular automaton 2-dimensional cellular automaton 2015-10-26 11 Modelling and Simulating Social Systems with Matlab

  12. Moore Neighborhood  The cells are interacting with each neighbor cells, and the neighborhood can be defined in different ways, e.g. the M o o r e n e i g h b o r h o o d : 1 st order Moore neighborhood 2 nd order Moore neighborhood 2015-10-26 12 Modelling and Simulating Social Systems with Matlab

  13. Von-Neumann Neighborhood  T h e c e l l s a r e i n t e r a c t i n g w i t h e a c h n e i g h b o r c e l l s , and the neighborhood can be defined in different ways, e.g. the V o n - N e u m a n n n e i g h b o r h o o d : 2 nd order Von-Neumann 1 st order Von-Neumann neighborhood neighborhood 2015-10-26 13 Modelling and Simulating Social Systems with Matlab

  14. Game of Life  N i = Number of 1 s t order Moore neighbors to cell i that are activated .  For each cell i : 1. D e a c t i v a t e active cell iff N i < 2 o r N i >3. 2. A c t i v a t e inactive cell iff N i =3 i 2015-10-26 14 Modelling and Simulating Social Systems with Matlab

  15. Game of Life  N i = Number of 1 s t order Moore neighbors to cell i that are activated .  For each cell i : 1. Deactivate active cell if N i <2 or N i >3. 2. Activate inactive cell if N i =3 2015-10-26 15 15 Modelling and Simulating Social Systems with Matlab

  16. Game of Life  Want to see the Game of Life in action? Type: l i f e 2015-10-26 16 16 Modelling and Simulating Social Systems with Matlab

  17. Complex Patterns  “ Gosper Glider Gun”: 2015-10-26 17 17 Modelling and Simulating Social Systems with Matlab

  18. Game of Life: Some Bits of History 1970: Conway presents the Game of Life; discovery of the glider (speed c/4) and the standard spaceships (speed c/2); discovery of the Gosper glider gun (first pattern found with indefinite growth) 1971: First garden of eden (pattern that has no parent pattern and can only occur at generation 0) was discovered; first patter with quadratic growth (breeder) 1989: Discovery of the first spaceships with velocities c/3 and c/4 1996: Game of Life simulated in Game of Life 2000: A Turing machine was built in Game of Life 2004: Construction of the largest interesting pattern so far: caterpillar spaceship with speed 17c/45 consisting of 11,880,063 alive cells 2013: The first complete replicator (a pattern that produces an exact copy of itself) was built 2014: Game of Life wiki contains more than 3000 interesting patterns 2015-10-26 18 Modelling and Simulating Social Systems with Matlab

  19. Surprising discoveries continue  “The loafer” is a very small spaceship  It is the slowest known orthogonal spaceship (speed of c/7)  It was discovered only in 2013 2015-10-26 19 Modelling and Simulating Social Systems with Matlab

  20. Life in Life  The Game of Life can be used to simulate the Game of Life: h t t p : / / w w w . y o u t u b e . c o m / w a t c h ? v = x P 5 - i I e K X E 8 2015-10-26 20 20 Modelling and Simulating Social Systems with Matlab

  21. Life in Life  The Game of Life can be used to calculate everything (if a Turing machine can): http://www.youtube.com/watch?v=My8AsV7bA94 2015-10-26 21 21 Modelling and Simulating Social Systems with Matlab

  22. 1-dimensional Cellular Automata 2015-10-26 22 22 Modelling and Simulating Social Systems with Matlab

  23. Cellular Automaton: Principles 1. S e l f O r g a n i z a t i o n : Patterns appear from random start patterns 2. Emergence: High-level phenomena can appear such as gliders, glider guns, etc. 3. Complexity: Simple rules produce complex phenomena 2015-10-26 23 23 Modelling and Simulating Social Systems with Matlab

  24. Highway Simulation  Simple example of a 1-dimensional cellular automaton  Rules for each car at cell i : S t a y : I f t h e c e l l d i r e c t l y t o t h e r i g h t i s o c c u p i e d . 1. Move : Otherwise, move one step to the right, with 2. probability p Move to the next cell, with the probability p 2015-10-26 24 24 Modelling and Simulating Social Systems with Matlab

  25. Highway Simulation  We have prepared some files for the highway simulations:  d r a w _ c a r . m : Draws a car, with the function draw_car(x0, y0, w, h)  simulate_cars.m : Runs the simulation, with the function simulate_cars(moveProb, inFlow, withGraphics) 2015-10-26 25 25 Modelling and Simulating Social Systems with Matlab

  26. Highway Simulation  Running the simulation is done like this: s i m u l a t e _ c a r s ( 0 . 9 , 0 . 2 , t r u e ) 2015-10-26 26 26 Modelling and Simulating Social Systems with Matlab

  27. Kermack-McKendrick Model  In lecture 4, we introduced the Kermack- McKendrick model, used for simulating disease spreading  We will now implement the model again, but this time instead of using differential equations we use the approach of cellular automata 2015-10-26 27 27 Modelling and Simulating Social Systems with Matlab

  28. Kermack-McKendrick model 2015-10-26 28 Modelling and Simulating Social Systems with Matlab

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend