State Machine

There are currently two approaches used in computing, the sequential machine and the state machine.

The Sequential Machine

This is typified by the Turing machine - a machine capable of carrying out a sequence of instructions. No real computer is built purely like this, instead having an interrupt structure which can override the sequence. But without an interrupt, most computers operate as a sequential machine.

What's Wrong with a Sequential Machine

Plenty. The moving from one instruction to the next assumes there has been no change in the state of the world that would invalidate the assumption that states are stable. People find powerful arguments against a GOTO in programming, but with a sequence of instructions, there is a GOTO on every line. Taking a typical fragment of program

IF...THEN...

Instruction 1

Instruction 2

How can we be certain that instruction 1 has not invalidated the conditions tested for by the IF...THEN..., either at this level or at any level further back that led us down this path. If Instruction 1 did not change the relevant states, perhaps some outside influence did so.

We rely on speed of execution, but the machine can be interrupted, so the time between Instruction 1 and Instruction 2 is potentially unknown, or the time difference can be comparable with the time at which changes occur in the system the program is attempting to simulate or control. While the time between execution of Instructions 1 and 2 may be microseconds, the time required to change the sequence of instructions in the program may be months or years.

The sequence of instructions crystallises a path taken through a structure that is itself changing. If we look at the genesis of the sequential machine, we can see that the sequence of instructions mirrors a mathematical proof, where steps are made to reach some conclusion. The same sequencing occurs almost nowhere else in human affairs, because humans (and every other animal) operate as state machines.

The State Machine

The original state machine is the nervous system of an animal, a way of providing an internal representation of the animal's capabilities and the world. An animal has a nervous system split into three layers - a sensory layer (its senses), a cognitive layer - its brain or state machine - and a motor layer (its muscles). A change in the world causes a change to a state in its internal state machine, which may induce a change in its motor states. To be effective in modelling the world, the structure of the state machine has to be sufficiently dynamic to track the changing structure of the world it seeks to model. Much of the world is stable over millennia, but the world is populated with animals who constantly change their behaviour, so a structure capable of change within seconds is required for survival.

What's Good about a State Machine

The state machine does not act in a stereotyped (programmed) way - the states being signalled in the structure determine what will happen next, and in a human or an Active Structure, the structure can change rapidly as a result of that signalling.

But We Only Have Sequential Machines

We can mask their sequential nature by creating a dynamic structure within their memories, and then restricting sequential operation to atomic packets of activity, such as adding two numbers. The result of each packet of activity is then broadcast on the structure, allowing signalling within the structure to control sequence. We call the resulting state machine a Knowledge Network or Active Structure.

Artificial Neural Networks

People have been working with Neural Networks for twenty years -aren't these state machines? No, they are resistor networks with static values, and can only simulate other resistor networks with static values. Ignoring the speed of operation, could they simulate radar, a television set, a computer - No, they can only simulate a static function. Almost every aspect of the state machines found in animals has been eliminated - switching, self modification of structure (ANNs have back-prop, but it is outside the paradigm), self - excitation, ensemble messaging. They were an obvious dead end from their instigation - a simple comparison of the properties of real and artificial neural networks reveals their severe limitations.

Is Active Structure Any Better

It relies on a single sequential processor to emulate the operation of a massively parallel state machine, with its millions or billions of active simultaneous processors. The result is a machine with perhaps a thousandth of the capacity of a human at full speed, but such a machine does have its uses - reading boring text is one such use.

realnet1.gif (24234 bytes)

Technical Discussion

Home