What is Creature Labs' CyberLife?Bottom-upThe tools which have made science so powerful over the last three thousand years are largely analytical and reductionist: if you want to study something very complex, take it to pieces first, then study the pieces; if the behaviour is too messy, develop a simplified model, without the messy bits, then study that; if the proper equations cannot be solved, invent some simpler ones that can. Nobody would doubt that this reductionist approach has been very successful. However, many people are equally aware that there are fundamental flaws in this kind of reasoning: everyone knows that sometimes "the whole is greater than the sum of its parts". If you study only the parts, then you are missing something crucial about the whole. This 'something' is known as 'emergent behaviour.'As a trivial example, 'soccer' is an emergent property, which is vested in no single soccer player. Only when a whole team is together can soccer exist. Similarly, the mind exists because of the interaction of the billions of neurones in its brain, yet no single neurone could be said to contain the mind, nor even any part of it. Only when the assembly is acting as a co-ordinated whole does the mind exist. Moreover, the existence of the mind would come as a complete surprise to anyone who was only given one of its neurones to study in isolation. Not only is the whole more than the sum of its parts, but in general the whole cannot even be predicted by a study of the parts alone. Therefore, science has been missing a great deal by its reductionist approach. What is more, it has missed out on much of what we (as more than the sum of our parts) actually find interesting in the world. One of those things is the secret of life itself. Many hands make light workOnce you accept the idea of a computer as a container of virtual objects, you have available a plurality that isn't there when you think of a computer as a processing machine: a computer is one machine, yet it can contain many virtual machines. There are some very important things that many machines can do together that one machine can't do alone.Think of an ant, for example. A marvel of complexity and sophistication it may be, but no ant is smart enough to design, memorise or communicate the plan for an ant nest. There is no master architect ant, who stands there in a hard hat and red braces instructing the other ants on where to build, yet an ant nest is a very complex and organised structure. Think of a raindrop. Examine it. Construct differential equations to describe its behaviour. Do you see Niagara in that raindrop? Would you predict such a thing from it? Yet Niagara is only a bunch of raindrops acting in concert. Think of your childhood. You remember it clearly, don't you? Yet you weren't there! Not a single atom that's in your body now was present when you were a child. You're not even the same shape as you were then. No thing has remained constant, yet you are still the same person. Whatever you are, you are not the stuff of which you are made; yet without that stuff, you would not be anything at all. Material flows from place to place, and momentarily comes together to be you. If that doesn't make the hair stand up on the back of your neck, read it again. These examples all have one thing in common, and the implications that can be drawn from that are varied and deep. The common feature is that each example shows a unified structure or process that exists only because many small things, with relatively simple properties, come together in one place and interact with each other. The principle that Niagara cannot be inferred by looking at a raindrop is known as emergence, and the school of thought that attempts to capitalise on emergence by building large edifices from many small building-blocks is known as bottom-up. Exploding ComplexityOne very practical consequence of bottom-up thinking to a programmer is how it helps with the management of complexity. Imagine trying to define an adventure game in terms of a decision tree - this is the top-down approach. Suppose you progress through the game by taking decisions, always from a choice of two. The structure to describe this would be a binary tree: the first decision could be taken in two ways; each of those choices leads to another decision, giving you four different routes through the tree. Add a few more levels of decision-making and you have a tree with 2n leaves (32 decision steps = 4,294,967,296 possible routes). This in itself is not an especially intractable problem, even if routes can double-back, or many choices are available. However, imagine that we add a computer player, and that every decision he takes affects the choices you have available. How many nodes do we need on our tree now? Well, it depends on how the interactions are implemented, but the decision tree is not twice as big as before, it is many billions of times as big. Now add ten more computer players and stir?Biological modelsThe great thing about living creatures is that they are general solutions to problems. A squid may solve a dramatically different set of problems than a mole does, but the methods of solution are only variants, not fundamentally different from each other. Throw a mole into an ocean and it will not swim like a squid, but both types of creature share a common ancestor, and thus each is an example of how that ancestor solved a different problem. The adaptable, building-block nature of living things and the fact that they rarely need to reinvent the wheel (because they inherit their solutions from their parents) makes organisms capable of solving a huge range of environmental tasks.Living creatures generally solve only problems that are of interest to themselves: evolution adapts them to new ecological niches where they can thrive unmolested; brains help them to solve the problems associated with getting food, finding a mate and so on. This is fine for them, but not a lot of use to us. However, if we were able to create life-forms to our own design, we would be able to select the problems that we wanted them to solve. This has been the failed goal of Artificial Intelligence research. Unfortunately, AI has devoted decades to looking at the task from the wrong end - from the top-down. The real answer lies in emulating Nature's way and creating life from the bottom-up. Every human being starts out life as a single cell. That cell divides into two almost, but not quite, similar cells. Each cell switches on slightly different genes before dividing again. Eventually you have one hundred billion cells, performing many thousands of distinct tasks, each doing its own little job without being overseen by any 'master cell.' Each contributing blindly to the working of the whole, to the emergence of us. Therein lies a very powerful idea: general-purpose building blocks, whose behaviour is controlled by data (genes and the local environment), and which interact locally to produce behaviour from the whole system that could not be predicted from, is not resident in and is not controlled by any single one of those parts. SummaryCreature Labs' "CyberLife" is founded on a set of philosophical principles and assertions, as follows:
|
||||||||||||
| Copyright | Privacy Policy | Contact us | RSS | ||||||||||||