Harnessing Complexity
The Scenario
Complexity science has grown increasingly popular in the past few years, with increased tools available for modeling, and increased examples of successful interventins in complex systems. Unfortunately, books on complexity have remained mostly crap, until now. In this slim book is a framework for not only understanding complex systems, but for doing something besides standing at the sideline and watching them unfold.
Axelrod and Cohen are founding members of the BACH group, which has been very influential in complexity research. They have been long standing members at either the Santa Fe Institute, which is the premiere complexity research facility in the world, or the University of Michigan's Study for Complex Systems, which has also had a large effect on the science. In other words, these are two cats who know their bidness. Now here's the good part. Axelrod and Cohen are solidly academic, but this book is not. The weakness of books on complexity is that they have either been written for other complexity theorists, making them inacessible, or for the general population, making them insipid. Even though both researchers have been studying this field for decades, and could have written something brillant yet obtuse, but instead they wrote something brilliant and useful.
The authors describe the characteristics of Complex Adaptive Systems in terms of the three main elements of those systems: variation, interaction and selection. The book is divided into roughly three parts, each dealing with one of these aspects. The systems described have many different components, and one of the contributions of this book is to provide a common vocabulary for these elements. Here's a sample bit of text that the authors claim would give you a rough summation of the book:
"Agents, of a variety of types, use their strategies, in patterned interaction, with each other and with artifacts. Performance measures on the resulting events drive the selection of agents and/or strategies through processes of error-prone copying and recombination, thus changing the frequencies of the types within the system."
There are many examples of complex systems that the authors use to bolster their explanations of complexity theory. How a disease spreads, how the military makes far reaching changes in philosophy, and of course evolution all drive home concisely crafted observations about complex adaptive systems. There's even a little gem that talks about the development of an open source project, specifically Linux. The authors discuss some conditions under which an open source development model might thrive, or at least make sense. As a favor to the authors, we'll make you read the book to find out what those are.
Complexity theory is not the same as chaos. Complex systems are not chaotic, though they do depend on variation in order to adapt, or change the equilibrium point. The important message here is that complex systems are not beyond our understanding, though it may be tough. Also, because complex systems depend on churn, if we can arrange ourselves at that point of churn, and try to direct we can affect systems that have been previously thought unalterable.
What's Good?
The tone of this book is killer. Combining lucid explanations with meaningful descriptions makes this very readable without diminishing the topic at all. The final chapter even outlines the rest of the book for you, boiling it down to the bare bones points that you should really take from the text. It might be helpful to read it first, and then go through and read the rest of the book.
The other strength of the book is how the authors manage to follow a strong academic tradition of supporting points with evidence without succumbing to making the book sound like the usual academic crap. All of the points made are supported not only with the great examples, but with evidence from a large body of research, mostly academic. The bibliography for this book would be a great place to start for any person or group interested in delving deeper into issues surounding complexity theory.
This assertion that we can understand complex systems, and exert influence over them is an important concept for a new paradigm for thinking. The systems being developed, computer or otherwise, are mostly examples of complexity in action. Whether it is an open source project being created or a new design team you are putting together, they are rarely systems that can be boiled down to simple cause and effects. The Newtonian view of a mechanical universe has polluted the very way in which we think about systems, the way in which we understand the universe. The people researching complex adaptive systems are working against that, and this book is a definitely volley in the right direction.
What's Bad?
This question is a matter of audience in the case of this book. It is definitely written for laymen, so if you are into the math of complexity research, or the modeling, then seek on crazy diamond. The intended audience here is the person who has to deal with complex, adaptive systems, but is not an expert in math. This book is intentionally short and brief, designed for those without a lot of leisure reading time. If you're after the uber compendium of complexity theory, this is not your book either.
While it is a minor point, the title of the book is annoying. It is understandable for marketing reasons, but it could turn off some smart people to reading the book, fearing it might be of the "Business Guru" shallow variety. Do not listen to these fear, buy this book.
So What's In It For Me?
If you've been interested in complexity theory, or need to work with complex adaptive systems (which everyone must) then this book has quite a bit to offer to you. Practical advice on how to exert influence in a complex environment could be invaluable to the reader. Besides the practical good it can do the reader, this book also has something to teach you about how you think about the world in general. Being aware of the complex systems around you, and thinking more deeply than black and white, or even gray, about these systems has benefits that far exceed your current job or project.
This book could also become valuable for the open source movement in general. Understanding complex, adaptive systems will also increase the chances for success of a number of possible open source projects as well as how to position them in software markets, which are themselves great examples of complex systems. It would be great if people involved with open source could champion this method of worldview both for its intrinsic and extrinsic benefits.
Purchase this book at ThinkGeek.
A matter of perspective. I personally see my desk as chaos, something I intimately want to avoid but always comes back to haunt me.
- I don't care if they globalize against free speech. All my best free thoughts are done in my head.
When I was first introduced to the idea of fuzzy sets, it was a little bizarre. Then it became clear that it was completely natural to think in terms of fuzzy sets. Discussing it with others, most have come to the same conclusion. And in discussing other aspects of complex systems, even amoung the average joe, it becomes pretty clear, that people are more than well enough equipped to deal with complex systems - both phsyical and mental. I don't know if describing it as some new paradigm of thinking is fair (and borders on sensationalism to sell a book).
Look at children. They learn to master extremely difficult complex systems like locomotion, language and exploration - all by the time they are five years old. How is most of this accomplished? Through imitation and experimentation. Children imitate what they see but they also explore their world. It's how many things are accomplished. Flight was mastered by looking at how birds fly and experimenting. So was medicine, math and every other complex system.
We may develop new terminology or methodology, but it all boils down to the same concepts.
If this is the article author's idea of "accessible" and "lucid," I'd hate to see what he'd consider obtuse.
The author's right about the prose not being either academic or Bizspeak. It's a hybrid of both, as unintelligible as either but without the former's precision or the latter's accessibility.
-- He's fantastic, made of plastic....
...some of it might end up in your brain. Not much chance of that though!
...and business are not common at this point, but there have been several good books about emergent phenomena and complexity-theory attempts to explain them:
Complexity: the Emerging Science at the Edge of Order and Chaos by M. Mitchell Waldrop is my favorite. It's very readable and a good introduction for the layperson.
Complexity: Life at the Edge of Chaos by Roger Lewin takes a more biological perspective, using the Cambrian explosion and subsequent extinctions as a primary theme of inquiry. I haven't finished it yet, but find it almost as interesting as Waldrop's book. (Personally Lewin's style is chatty for my taste with its constant recreation of his conversations with various scientists.)
Lewin and Birute Regine have recently written a book called The Soul at Work, but I haven't read it yet. It may prove interesting since Regine's area of specialty is developmental psychology (which is a natural for complexity studies, but whose practitioners have not yet become interested in studying emergence). This book is perhaps the most direct competition for this book being reviewed. I hope someone who has read it will post something to this discussion.
John Holland has two good books out which may /.ers may relate more directly to, since he is a bit of a renagade in the computer science community (or was until he started turning out to be proven right). His books are very good for the detail (and even some math). But they are almost written from a lab-notebook perspective, recreating the evolution of his thought even to the point of exploring dead ends which he later abandons.
Given all this, I have some difficulty with this reviewer's blanket denunciation of the field. None of these books is long on business-babble or psycho-pspeak, so I'm at a loss to understand his generalization.
I will check this book out, but I would offer the following caveat: Complexity science is an interesting outgrowth of chaos theory which is still controversial within the scientific community. It's on the bleeding edge of current scientific thought and may yet pan out to be a dead end (or a world-changing advance).
I am personally following it with considerable interest and have already come up with a number of applications which helped with both my programming and my business. But anyone who makes blanket evaluations of it (pro or con) is probably exaggerating their actual knowledge.
Eternal vigilance only works if you look in every direction.
Which *bad* ideas are you talking about?
I'd agree that the notion of partial set membership is a Good Idea.
However (I would say) the rules used for doing computations with fuzzy membership numbers -- at least, the ones typically advocated -- are arbitrary, ad-hoc, and fundamentally plain wrong. Sometimes they are useful as a very rough and ready engineering fix when nothing can go too badly adrift, but basically they are Not A Good Thing At All.
A more principled way to deal with fuzzy numbers is to use the machinery of Bayesian calculation, treating fuzzy values as ordinary probabilities, but relating to a wider ontology than just the physical state of reality.
Such extended ontologies arise very naturally from communication theory when we try to summarise data. For example, consider transmitting a set of points on a 2D grid using a mixture of Gaussians model. For each point, one sends the probability that it was generated by Gaussian A rather than B (less than one bit, using BitsBack), followed by the bit string to code its position using one or the other Gaussian.
Gaussians extend to infinity, so we can never definitiely allocate a point to one bump or the other -- it is always a mixture of the two. Thus even a knowledge of the whole of reality is not sufficient to resolve the probability to a definite 0/1 state. "Generation by bump A rather than bump B" is therefore technically a fuzzy proposition, rather than a classical one -- the variable is part of our description of the system (our extended ontology), rather than underlying reality.
In summary:
Endnotes:
1. All of which is entirely irrelevant to the subject of far-from-equilibrium pattern formation (which is what complex systems theory is mostly all about?).
2. For a more extensive discussion of Bayesian inference and fuzzy systems, there are classic papers by Cheeseman.