Looking to the Future of A New Kind of Science
[This is the third in a series of posts about A New Kind of Science. Previous posts have covered the original reaction to the book and what’s happened since it was published. This post first appeared on Wolfram’s blog—Eds.]
Today ten years have passed since A New Kind of Science (”the NKS book”) was published. But in many ways the development that started with the book is still only just beginning. And over the next several decades I think its effects will inexorably become ever more obvious and important.
Indeed, even at an everyday level I expect that in time there will be all sorts of visible reminders of NKS all around us. Today we are continually exposed to technology and engineering that is directly descended from the development of the mathematical approach to science that began in earnest three centuries ago. Sometime hence I believe a large portion of our technology will instead come from NKS ideas. It will not be created incrementally from components whose behavior we can analyze with traditional mathematics and related methods. Rather it will in effect be “mined” by searching the abstract computational universe of possible simple programs.
And even at a visual level this will have obvious consequences. For today’s technological systems tend to be full of simple geometrical shapes (like beams and boxes) and simple patterns of behavior that we can readily understand and analyze. But when our technology comes from NKS and from mining the computational universe there will not be such obvious simplicity. Instead, even though the underlying rules will often be quite simple, the overall behavior that we see will often be in a sense irreducibly complex.
So as one small indication of what is to come—and as part of celebrating the first decade of A New Kind of Science—starting today, when Wolfram|Alpha is computing, it will no longer display a simple rotating geometric shape, but will instead run a simple program (currently, a 2D cellular automaton) from the computational universe found by searching for a system with the right kind of visually engaging behavior.
This doesn’t look like the typical output of an engineering design process. There’s something much more “organic” and “natural” about it. And in a sense this is a direct example of what launched my work on A New Kind of Science three decades ago. The traditional mathematical approach to science has had great success in letting us understand systems in nature and elsewhere whose behavior shows a certain regularity and simplicity. But I was interested in finding ways to model the many kinds of systems that we see throughout the natural world whose behavior is much more complex.
And my key realization was that the computational universe of simple programs (such as cellular automata) provides an immensely rich source for such modeling. Traditional intuition would have led us to think that simple programs would always somehow have simple behavior. But my first crucial discovery was that this is not the case, and that in fact even remarkably simple programs can produce extremely complex behavior—that reproduces all sorts of phenomena we see in nature.
And it was from this beginning—over the course of nearly 20 years—that I developed the ideas and results in A New Kind of Science. The book focused on studying the abstract science of the computational universe—its phenomena and principles—and showing how this helps us make progress on a whole variety of problems in science. But from the foundations laid down in the book much else can be built—not least a new kind of technology.
This is already off to a good start, and over the next decade or two I expect dramatic progress in the application of NKS to all sorts of technology. In a typical case, one will start from some objective one wants to achieve. Then, either through knowledge of the basic science of the computational universe, or by some kind of explicit search, one will find a system that achieves this objective—often in ways no human would ever imagine or come up with. We have done this countless times over the years for algorithms used in Mathematica and Wolfram|Alpha. But the same approach applies not just to programs implemented in software, but also to all kinds of other structures and processes.
Today our technological world is full of periodic patterns and other simple forms. But rarely will these ultimately be the best ways to achieve the objectives for which they are intended. And with NKS, by mining the computational universe, we have access to a much broader set of possibilities—which to us will typically look much more complex and perhaps random.
How does this relate to the kinds of patterns and forms that we see in nature? One of the discoveries of NKS is that nature samples a broader swath of the computational universe than we reach with typical methods of mathematics or engineering. But it too is limited, whether because natural selection tends to favor incremental change, or because some physical process just follows one particular rule. But when we create technology, we are free to sample the whole computational universe—so in a sense we can greatly generalize the mechanisms that nature uses.
Some of the consequences of this will be readily visible in the actual forms of technological objects we use. But many more will involve internal structures and processes. And here we will often see the consequences of a central discovery of NKS: the Principle of Computational Equivalence—which implies that even when the underlying rules or components of a system are simple, the behavior of the system can correspond to a computation that is essentially as sophisticated as anything. And one thing this means is that a huge range of systems are capable in effect not just of acting in one particular way, but of being programmed to act in almost arbitrary ways.
Today most mechanical systems we have are built for quite specific purposes. But in the future I have no doubt that with NKS approaches, it will for instance become common to see arbitrarily “programmable” mechanical systems. One example I expect will be modular robots consisting of large numbers of fairly simple and probably identical elements, in which almost any mechanical action can be achieved by an appropriate sequence of small-scale motions, typically combined in ways that were found by mining the computational universe.
Similar things will happen at a molecular level too. For example, today we tend to have bulk materials that are either perfect periodic crystals, or have atoms arranged in a random amorphous way. NKS implies that there can also be “computational materials” that are grown by simple underlying rules, but which end up with much more elaborate patterns of atoms—with all sorts of bizarre and potentially extremely useful properties.
When it comes to computing, we might think that to have a system at a molecular scale act as a computer we would need to find microscopic analogs of all the usual elements that exist in today’s electronic computers. But what NKS shows us is that in fact there can be much simpler elements—more readily achievable with molecules—that nevertheless support computation, and for which the effort of compiling from current traditional forms of computation is not even too great.
An important application of these kinds of ideas is in medicine. Biology is essentially the only existing example where something akin to molecular-scale computation already occurs. But existing drugs tend to operate only in very simple ways, for example just binding to a fixed molecular target. But with NKS methods one can expect instead to create “algorithmic drugs”, that in effect do a computation to determine how they should act—and can also be programmable for different cases.
NKS will also no doubt be important in figuring out how to set up synthetic biological organisms. Many processes in existing organisms are probably best understood in terms of simple programs and NKS ideas. And when it comes to creating new biological mechanisms, NKS methods are the obvious way to take underlying molecular biology and find schemes for building sophisticated functionality on the basis of it.
Biology gives us ways to create particular kinds of molecular structures, like proteins. But I suspect that with NKS methods it will finally be possible to build an essentially universal constructor, that can in effect be programmed to make an almost arbitrary structure out of atoms. The form of this universal constructor will no doubt be found by searching the computational universe—and its operation will likely be nothing close to anything one would recognize from traditional engineering practice.
An important feature of NKS methods is that they dramatically change the economics of invention and creativity. In the past, to create or invent something new and original has always required explicit human effort. But now the computational universe in effect gives us … Next Page »