A distributable and serializable finite state machine and methods for
using the distributable and serializable finite state machine are
provided wherein finite state machine instance can be location-shifted,
time-shifted or location-shift and time-shifted, for example by
serializing and deserializing each instance. Each instance can be
located-shifted between agents, and a persistent memory storage location
is provided to facilitate both location-shifting and time-shifting.
Finite state machine instances and the actions that make up each instance
can be run in a distributed fashion among a plurality of agents.