May 15, 2003

Some thoughts on Determinism

At one time I spent a fair amount of time investigating the behavior of a certain kind of computer model. These models consisted of simple grids of squares. Each square had a value associated with it that would increase slowly. If at some time the value of two adjacent cells differed by more than some threshold, the values of all the cells would be redistributed until the entire system was once again below the threshold. It turns out that such a model can produce very sophisticated patterns of behavior (at the time, I was thinking about the sizes of earthquakes) if there is also a certain amount of randomness in the system (for example, error in how the system re-equilbrates when the threshold is crossed).

In the models that I was working with all of the values were integers (whole numbers like 1,2,3...). In doing the re-equilibrating values from a cell are distributed between the neighbors and thus there is a division. I would round off all of my division back to integers and it turns out that this rounding was enough randomness to drive the model into the region of interesting behavior.

So what does this have to do with determinism? The behavior that was interesting is commonly associated with complex systems, sometimes called the edge of chaos. This behavior is very difficult or impossible to predict; it has sensitive dependence on initial conditions. In my models (and many others) it was also completely deterministic. That is, from the moment I started the program running, the entire path of its evolution was determined (using integers made this transparent (well to me anyway)) even though the next step cannot be predicted.

This is interesting in the context of the machine / organism debate. Clearly the models I was working with were machine-like, while they were interesting, they were completely deterministic. On the other-hand, looking at them from the outside, you would not necessarily know that. Furthermore, computer models can be constructed that modify their internal workings and the relationships amoung their pieces as they attempt to achieve certain (externally set) goals. One class of these codes is called genetic algorithms.

It is also interesting in the context of the "what do we do now" question. Consider humans as part of the system. We can change how we interact with each other and with the natural systems. But given the difficulty in predicting or understanding the impact of any given change, how should we decide what to do? In many ways answering this question is the task that I have set myself. I have the following thoughts as a place to start:
  • Incrementalism is probably a good default approach.
  • Plans should include monitoring impacts and contingencies for when things go wrong.
  • We must recognize that Earth systems are dynamic. To the extent that there is any balance in nature, that balance is likely due to tension rather than stasis.