Thursday, July 13, 2006

entitygenesis

You can't get new concepts out of an algorithm at the depth of the algorithm.

For example, this article suggests that video games can perpetually "self-upgrade" if they are designed around procedural rather than fixed data. To some extent we've already seen this: when you upgrade your computer, you can turn up the graphical options in many games and get a better rendering. This principle could be extended a long ways, by adding more "scaling parameters". Designers could be creative and make these parameters govern abstract elements of the game.

But the problem they will always be faced with is that you won't get anything fundamentally new. There won't be any new depth of realism. Suppose "number of polygons tessellating a sphere" is one of the scaling parameters. That sphere will get really smooth. But if the game uses monochrome lighting, the sphere will never be lit in color.

Next -- ways to get new things.

Take a program that generates a string of 64 random bits. Once in a while, this program will produce something "meaningful", like digits of pi, or my name. However, these outputs don't reflect a stable organization of the system. The algorithm, by itself, never generates a new attractor basin, a new focusing of probabilities: a new entity.

Now imagine coupling the random program with a "filter" program that squelches all but a few meaningful outputs. The conjunction of these two systems is now a generator for meaningful outputs.

In general, by compositing two systems with their own concepts, you get a third system with its own concepts.

It's true that you can build a Universal Turing Machine inside of Conway's Game of Life. Then again, you can build a UTM from a pile of tubing and valves. The concept of the UTM doesn't exist in the cellular automaton, just like it doesn't exist in the tubing, before you put it there. And even the UTM doesn't have the concepts for any of the programs that it's capable of running.

The critical counter to all of this is evolution. If all concepts have to be transferred from somewhere else, then where did they originally come from? The answer is: whatever was stable. We can witness one step of evolution in the Game of Life, when gliders and blinkers and blocks are born.

Something else I've been thinking about -- all entities are non-linearities (and vice versa). Here's an example of building a new entity by compositing two systems:

The local maximum at x=0 in the product function is a new stable point for the state of the system.

No comments: