02 November 2019

Getting started with complexity science

A handful of online courses, books and other resources to start learning about the field of complexity science.

Over the past month I’ve been spending a big chunk of my time learning about complexity science. That term is broad and covers a number of areas, from chaos theory to artificial intelligence. The unifying perspective within the field, roughly speaking, is a focus on the emergence of unexpected system-level behavior due to the operation of simpler agents operating within the system. In essence, systems where the whole is more than the sum of the parts.

Map of the complexity sciences

Members of the complexity science community often place their work in opposition to reductionism. For example, a blog post by the neurogeneticist Kevin Mitchell makes the case for the insufficiency of reductionism within biology:

The reductionist perspective on biology is that it all boils down to physics eventually. That anything that is happening in a living organism can be fully accounted for by an explanation at the level of matter in motion – atoms and molecules moving, exerting forces on each other, bumping into each other, exchanging energy with each other. And, from one vantage point, that is absolutely true – there’s no magic in there, no mystical vital essence – it’s clearly all physical stuff controlled by physical laws.

But that perspective does not provide a sufficient explanation of life. While living things obey the laws of physics, one cannot deduce either their existence or their behaviour from those laws alone. There are some other factors at work – higher-order principles of design and architecture of complex systems, especially ones that are either designed or evolved to produce purposeful behaviour.

As I’ve written about previously, it’s most certainly false to believe that “higher-level explanations cannot be fundamental”.

The field of complexity science is incredibly rich, with more than a hint of subversive energy running through it. Here is a sampling of online courses, books, and other resources to get started learning about this field.

Online Lectures & Courses

  • Introduction to Complexity: This free online course is offered by the Santa Fe Institute, the unofficial home for complexity science research. This course is taught by Melanie Mitchell, who also wrote the very good book Complexity: A Guided Tour, which covers a lot of the same territory. I finished this course a few weeks ago and highly recommend it as a first place to start learning about the field. It has a good mix of history, theory and hands-on practice using math and code.
  • Introduction to Dynamical Systems and Chaos: This free online course, also from the Santa Fe Institute, covers some of the same territory as the Introduction to Complexity course, but is more math focused. There are a number of mathematical ideas and formulas that come up again and again in the field, and this course gives a good introduction to a handful of them.
  • Journey into information theory: Information theory is another field that is heavily referenced within complexity science. This video series from Khan Academy is the most interesting, accessible intro to information theory I’ve found.

Books

  • Chaos: Making a New Science by James Gleick. Published in 1987, this book is often cited as the best place for a high-level overview of chaos theory and other ideas from complexity science.
  • Complexity: A Guided Tour by Melanie Mitchell. As mentioned above, this book covers much of the same territory as the Introduction to Complexity course, but the longer book format allows her to go into more detail on many of the subjects. It’s less journalistic than Gleick’s book and more focused on the actual science.

For more book recommendations, check out the list at the bottom of the blog post from Kevin Mitchell quoted above.

Code

  • The Nature of Code: This free book “focuses on the programming strategies and techniques behind computer simulations of natural systems”, with many ideas pulled from complexity science. The code examples from the book are available in either Processing or p5.js, the JavaScript port of processing.
  • Think Complexity 2: This free book explores some ideas from complexity science through Python code. I haven’t had the chance to go through it yet, but I’ve read other books from Green Tea Press and was impressed with their quality, so I have high hopes.

Interactive tools

  • Complexity Explorables: a collection of interactive explorable explanations of complex systems in biology, physics, mathematics, social sciences, epidemiology, ecology and other fields.
  • Emergent Mind: a project-based blog about emergence, evolution, and artificial life.

Community

Finally, here are some members of the complexity science community with interesting online presences.

  • Kevin Mitchell: neurogeneticist interested in the genetics of brain wiring and its contribution to variation in human faculties.
  • Jessica Flack: Professor at the Santa Fe Institute.
  • Melanie Mitchell: AI researcher, professor and author.
  • Evan Thompson: I am in the midst of reading Evan’s book Mind in Life, where he uses ideas from complexity science to address the “so-called explanatory gap between biological life and consciousness”.

This is just a small sampling from this broad and growing field. As usual, I’m collecting more resources in a dedicated Are.na channel as well.