Home > Uncategorized > Five resources for learning complex adaptive systems

Five resources for learning complex adaptive systems

As I get started contributing more regularly to this blog, I wanted to give everyone a baseline for understanding what I mean when I talk about complex adaptive systems (or CAS). It’s not an easy subject to master—not because the core concepts are difficult, but because the effects of those concepts on the world around as are so rich, varied and profound.

So, I quickly wanted to make everyone aware of a few resources that I consider great ways to get in touch with the core of CAS. Some of them are relatively passive—you can just read or watch them at your leisure. Others are quite interactive, and you can use them to get “hands-on” experience. All of them are the most engaging that I’ve found to date.

  1. Complexity: The Emerging Science At The Edge Of Order And Chaos, by M. Mitchell Waldrop  At this point, this book might be called a classic, given the fact that it was originally published in 1992, but it is still the most engaging introduction to the multi-disciplinary beginnings of complexity theory that I am aware of. By telling the story of the famed Santa Fe Institute, and how key members got interested in both the beginnings of complexity theory and the institute itself, Waldrop manages to bring newcomers to the subject in both an intelligent and entertaining fashion. A must read if you don’t know much of anything about complexity theory and CAS.
  2. Complex Adaptive Systems: An Introduction to Computational Models of Social Life, by John H Miller and Scott E Page – This is an excellent guide to the computational models that scientists are using to understand and experiment with complex adaptive systems. Chapter after chapter introduce you to models both simple and complex, with enough information about how the models were formed that you can create them yourself in the programming environment of your choice. However, even if you don’t choose to recreate the models, it is an eye-opening read.
  3. TUDelft SPM 4530 and SPM 9555 – “Agent Based Modeling of complex energy and industrial networks” and “Agent Based Modeling of Complex Adaptive Systems – Advanced” – I originally found this course material via iTunes, but this Wiki page is the official page of a freely available course delivered by Igor Nikolic, Assistant Professor at the Energy and Industry group, Faculty of Technology, Policy and Management faculty, Delft University of Technology. You can step through each of his lectures, as well as see the practical assignments. The only thing you can’t get access to is the actual output of the students actually taking the class, which makes a ton of sense to me. The cool thing is, the practicals use the next tool extensively. There is hours of material here, so be prepared to spend a few nights and weekends on it.
  4. NetLogo  – This is just about the coolest tool I’ve found to date for modeling complex adaptive systems. Described as a “multi-agent programmable modeling environment”, NetLogo provides a basic engine and a simple modelling language that allows you to create all kinds of amazing CAS models. It also has a big list of sample models, including classics such as flocking birds, forest fires and even a model of PageRank from Larry Page and Sergey Brin’s Stanford days. This one is really fun for understanding a large cross section of CAS modeling. One of these days, I’m hoping to create an original “from scratch” model of some aspect of cloud computing in this tool.
  5. Drift into Failure, by Sidney Dekker – I am currently reading this one, so it may be a bit premature to recommend it as a starting place. It certainly is a dense work, but what makes it important to me is it’s clear statement of situations where complexity takes many apparently good, honest decisions and aggregates them into less than desirable outcomes. This is a must read for those who get CAS to a certain extent, but need to better understand why CAS means we have to think differently about software and systems design and operations in the cloud. This is the very meat of what I think most programmers and operators don’t understand about cloud today.

There will be other resources that I will share with you as time goes by. (For example, Adrian Cockcroft of Netflix pointed me to this post which I haven’t digested yet, but which title intrigues me to no end.) In the meantime, please enjoy these, and please post comments with your own recommendations for key sources of complex adaptive systems knowledge. Or cloud knowledge, for that matter. I look forward to learning from you as much as sharing my own learning with you.

Categories: Uncategorized
  1. February 21, 2012 at 5:16 pm

    I think I’ve sent you both of these on Twitter, but I really liked Melanie Mitchell’s book: Complexity: A Guided Tour (http://www.amazon.com/Complexity-Guided-Tour-Melanie-Mitchell/dp/0199798109) as a good overview of the field of complexity science.

    I’m currently reading Scott Page’s Diversity and Complexity (http://www.amazon.com/gp/product/B0058E3K6E) which mostly focused on the causes and effects of diversity in complex systems.

    Looking forward to checking out both the Waldrop and Dekker books soon.

  2. John Allspaw
    February 21, 2012 at 5:32 pm

    One day, calling someone a “reductionist” will be an insult. Decartes and Newton can suck it.

  3. June 11, 2012 at 3:43 am

    it might be worth mentioning that Scott E Page is teaching an excellent course on Model Thinking at Coursera

  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: