As a book of recreational mathematics it's pretty fun. As a "New Kind Of Science" it's atrocious.
As a book of recreational mathematics it's pretty fun. As a "New Kind Of Science" it's atrocious.
Investigating nature starting with the premise that the "laws" may be imperative procedures instead of pure functions doesn't seem orthodox (for 2002), so isn't that "new"?
Langton's Ant (1986) https://en.wikipedia.org/wiki/Langton%27s_ant
Avida (1993) https://en.wikipedia.org/wiki/Avida
Tierra (early 1990s) https://en.wikipedia.org/wiki/Tierra_(computer_simulation)
Fractal Geometry of Nature (1982) https://en.wikipedia.org/wiki/The_Fractal_Geometry_of_Nature
I dunno, some of these seem to be doing it much earlier than 2002.
And especially from a retrospective perspective, the importance of that can't be understated.
I'm not enough of a mathematician to be able to do this myself, but intuitively I expect that there must be some way to measure the chaoticness of a program-type mathematical system, the degree to which small perturbations in the input produce large changes in the output. We are familiar with this in practice in the programming world in the difference between languages like J or a fluffier language like Java. Within the domain of legal programs, perturbations in the original symbol stream are more likely to have larger effects on programs in J than in Java. My personal feeling, after watching people sort of screw around with CAs for the last many years (only recently unsubscribed from /r/cellular_automata) is that CA are simply too chaotic to be useful for any non-trivial purpose; the task of establishing correlation between a real physical outcome and a CA is too difficult, and then even if you do, the task of understanding the CA itself is still itself quite large! It just isn't a useful way of modeling the world. Or, if you prefer, the problem isn't that CAs are too simple to model things with, the problem is that in general they are too complex. Either a CA is degenerately simple or impossibly chaotic and there just isn't enough in between. The same characteristics that makes it fun to watch a CA explode from a very small seed into a complex diagram that is still somehow obviously structured in strangely complex ways makes it impossible to actually make them do anything you want to do.
Go look at the Turing machine implemented in Life. Look at the sheer size of the thing. It's a bit of a cheat because it is simulating something else that we already have models for, but... could you imagine trying to understand the behavior of Turing Machines through the lens of that Life model?
Another interesting thing to look at is the way people sometimes try to incorporate CAs into video games. It turns out they are very, very hard to tame into anything useful, without a lot of work spent constraining them down to something tractable. Or, in other words, by stripping out all their power just so they might do something slightly predictable.
Turing machines are a much better model of computation than CAs are of very many other real processes, and in practice, Turing machines are still virtually useless, useful only for the theoretical pleasingness of the UTM and the resulting mathematical theorems, but not something we use on a day-to-day basis. Lambda calculus is way more useful, and even more useful than that is just the adhoc models we tend to use day-by-day that may lack nice mathematical properties but actually resemble the machines we work with. CAs have an even larger gap between their sheer mathematical perversity on the one hand, and any useful application on the other.
In 2003 I analysed the statistical output of his ”minimal version of the efficient market hypothesis” and compared it to data in real financial markets and contrasted it with the output of other models for my thesis.
His was crap.
I'm the only sucker I know that bothered to do this.
(Incidentally it was really difficult to get in contact with a representative of his to get code for the actual model he'd only provided a sample output graph for in the book.)
The fact that many CAs are Turing-complete and given the meaning of that, it is theoretically possible to model anything with a CA. Yet CA models have never proven useful.
One possible explanation may be the timeless nature of mathematical explanations and the power of math to make predictions.
If I say F=ma (Newtonian mechanics), I can evaluate 'a' for any 'm' and 'F' trivially. I could also construct a CA -- maybe even one that modeled physics very well -- in which F=ma arose as a consequence of that CA's operation, but to make any prediction with this system I would have to actually compute the CA across all iterations until I reached my result. It wouldn't be useful because it would be too slow.
In other words predictive mathematical descriptions of nature are more useful because they find ways to factor out time.
This as well is a good argument against the book. The fact that there doesn't appear to be anything brought forth in other fields, or in the same field of work as the book doesn't bode well for it.
Then again, there have been many time in history where something was written or put down, which wasn't known or seen to be relevant, workable, or whatnot, until many decades or centuries had passed. I'm not saying this book is a case of that, only that it might be. We don't really know, and can't if or until it happens, of course.
https://terrytao.wordpress.com/2014/02/04/finite-time-blowup...
...(skip down to the last paragraph).