Skip to content

A Python-based course on Complexity Economics developed for the Santa Fe Institute (SFI).

License

Notifications You must be signed in to change notification settings

luziusmeisser/sfi-complexity-mooc

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

47 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Binder

SFI Complexity Economics MOOC

Instructors: Prof. J. Doyne Farmer and Dr. David R. Pugh (and co-conspirators!)

From one of Gabby’s previous emails…

On average an SFI MOOC is 10 weeks long, with 1 unit per week. Each unit is made up of roughly six-ten subunits. Most of the subunits consists of 1 to 3 video segments (ideally less than 10 minutes long), exercises (if appropriate) a quiz, and quiz solutions (in text or video form). The last subunits may not have video, instead having a homework assignment and homework solution, and an end of unit test. As an example of how a course is structured see the outline for the Introduction to Complexity MOOC.

Course Outline

Lecture 1: Introduction to Complexity Economics

We want to highlight the frontier research (hopefully in a way the will make it digestible to second year undergraduates).

Might make sense to have the following sub-units: Introductory video providing clear explanation of what complexity economics is (and what it isn’t). We will want to define key themes that will run throughout the course as well as terms and definitions (i.e., what is equilibrium, etc). A constructive critique of the mainstream approach to economics.

  • Video on the scientific method and how it differs in physics and economics.
  • Primer on power laws.
  • Basics of non-linear dynamics: should summarize relevant bits of the dynamical systems literature and point interested students at the SFI MOOC on non-linear dynamics and chaos for more details.
  • Primer on basic network theory.
  • Primer on use of Jupyter notebooks in the cloud (include pointers to instructions for installing software including on where to go to learn more about best-practices for scientific computing; no support for software install will be given!).

Also we will need to leave time to cover usual course logistics.

Lecture 2: Cobweb Models, Expectations, and Learning

Key ideas: Illustrate the important role of expectations in economic models. Distinguish between extreme forms of expectations (i.e., naive vs rational) and stress that real expectations formation rules fall somewhere in between. Explain the "Lucas Critique" and discuss how various learning mechanisms can be used to address the critique.

Our 10 youtube length segments...

  1. Discuss the basic idea behind the cobweb model. Explain the basic building blocks of the classic Brock and Hommes' Rational Route to Randomness. This model provides a nice framework that can be easily extended to incorporate some of the ingredients of Car's more recent work.
  2. Describe different rules for forming expectations in the cobweb model. Expectation formations rules are predictor functions that take a time series of prices and return a predicted value for a future price. Contrast various expectations formation rules with rational expectations.
  3. Simulate the Brock and Hommes model with homogenous beliefs (i.e., all agents use the same expectation formation rule)! Under what conditions does one get limit cycles? Chaotic dynamics? Equilibria? Brock and Hommes model with homogenous beliefs is very close to the earlier Hommes model in Dynamics of the cobweb model with adaptive expectations and non-linear supply and demand.
  4. Simulate the Brock and Hommes model with heterogenous beliefs (i.e., agents use different expectation formation rules!). Under what conditions does one get limit cycles? Chaotic dynamics? Equilibria?
  5. Short quiz.
  6. Cars Hommes contribution: Lecture on experimental evidence on how real market participants form expectations. Need to discuss this with Cars ASAP!
  7. Explicitly make the link between simulation and computation and experimental work by use simulations to replicate some of the experimental evidence that Cars discusses in his lecture.
  8. Describe the Lucas Critique.
  9. Discuss (debate) how (whether) various learning mechanisms discussed in this lecture address the Lucas Critique.
  10. Short quiz.

Lecture 3: Networks

Key ideas: Networks are pervasive in real world economies. Depending on underlying network topology, networks can either amplify or dampen idiosyncratic shocks. This has important policy implications. Traditional economics approach focuses on "equilibrium" and (mostly ignores) dynamics, complexity economics approach explicitly models dynamics and "equilibrium", if it exists, is a secondary consideration.

Start with branch of complexity economics that has been the most successful at impacting mainstream economics. Focus on Input-Output networks. Acemoglu et al's Network Origins of Aggregate Fluctuations and Networks, Shocks, and Systemic Risk which focus on equilibrium analysis, and the Bouchaud et al paper which focuses on underlying dynamics would be natural points of departure but are perhaps too advanced. Do simpler alternatives exist? Can make use of pyBEA to grab data on U.S. input-output networks directly from the BEA data API. Another source of IO network data is the WIOD database.

Can we tie in what we are doing in this lecture to the other Complexity Explorer MOOC on Dynamics of Complex Networks?

Our 10 youtube length segments...

  1. Basics of networks: should summarize relevant bits of the network literature and point interested students at the SFI MOOC on networks for more details.
  2. What are input-output networks, and why are they important. Where do we find data on input output networks? How do we find the data we will use for this lecture.
  3. Traditional economics approach to IO networks focuses on equilibrium networks and is exemplified by recent Acemoglu et al papers. Focus on Acemoglu et al handbook chapter rather than their Econometrica and AER papers.
  4. Solve for the equilibrium of the Acemgolu et al model using real world IO network data. Informally compare model predictions to data.
  5. Short quiz.
  6. Acemoglu et al model has no dynamics at all. Quick discussion of the literature on dynamics on networks.
  7. Use the Bouchaud et al paper papers which extend the Acemoglu framework and explicitly model dynamics.
  8. Simulate the Bouchaud et al model(s) and informally compare to data.
  9. Compare contrast Acemoglu et al (equilibrium) with Bouchaud et al (dynamics).
  10. Short quiz.

Additional applications of networks in complexity economics can be found on Prof. Leigh Tesfatsion's website.

Lecture 3: Business Cycles

Key idea: business cycles are fundamentally endogenous phenomena and are not driven by exogenous shocks as is typically (but not always!) assumed in mainstream approaches. Models of "Predator-prey" dynamics.

Lectures 4 and 5: Growth and Innovation

Will use the Solow growth model as point of departure for lecture 4 Will need to explain the basic idea behind the model to non-economics audience. Solow model can be used to motivate the importance of explicitly modeling the process of technological innovation.

Evolutionary view of technological progress. See W. Brian Arthur’s Nature of Technology. We should ask Brian if he would be interested in giving some parts of lectures 4 and 5.

Lecture 6: Financial Markets

This lecture will motivate the use of ABMs by covering two different ABMs of financial markets: SFI stock market (old) and Farmer, et al Leverage Causes Fat Tails and Clustered Volatility model (new).

Lecture 8: Game Theory

Obvious ties with the mainstream literature. Motivated by recent (and ongoing) work of Farmer & Galla. Key idea: learning and convergence to “equilibrium”. When and under what circumstances do learning rules lead to a convergence to Nash-like equilibrium in games.

Iterated Prisoner's dilemma tournament using code from Alan Isaac's [Simulating Evolutionary Games: A Python-Based Introduction(http://jasss.soc.surrey.ac.uk/11/3/8.html). Perhaps could make use of Luzius's code to run the tournament. Each student would submit a simple Python agent with a particular strategy and then we would run face them off against one another.

Lectures 9: Inequality

Sugarscape-esque simulations to demonstrate conditions for skewed distributions of wealth. Can be tied to Edgeworth Box diagrams. Contrast the robustness of the first welfare theorem, with the fragility of the second welfare theorem.

10: Overflow!

I expect that this lecturers will fill out once we start filling in lecturers 1-8…

Topics that don’t seem to fit anywhere yet:

Rob’s model of firms… Brian’s work on increasing returns to scale and path dependence. Need to figure out a way to incorporate ScalABM to some extent. Possibly have some web application running interesting model on AWS that students can interact. Fabulous opportunity to build user community… However, ScalABM is cutting edge research tool. Pedagogically better to teach simulation and computation using Python a la Software Carpentry.

Lecture: DSGE vs. Complexity Economics A Beginner’s Guide to the DSGE Model Material for this lecture is heavily influenced by David Colander’s Macroeconomics (pg. 293).

Additional teaching resources

Leigh Tesfatsion’s excellent website. We need to find a way to include more of her work into the course!!!!

About

A Python-based course on Complexity Economics developed for the Santa Fe Institute (SFI).

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Jupyter Notebook 99.5%
  • Python 0.5%