Information Technology Reference
In-Depth Information
Initiated by these shortcomings, a question that can be imposed is: How can we redefine
XMs to support spatial agent modelling natively? The motivation behind this question
can be further broadened into the following aspects:
- The subset of MAS that deals with movement in space is quite numerous, starting
with bio-MAS, up to MAS used in many industrial applications like robotics, etc.
- Different modellers might represent a spatial agent's basic characteristics, like po-
sition and direction, in different ways.
- The current XM representation for a spatial agent model does not directly map to
an animation/simulation.
- The current XM representation for a spatial agent model is rather cumbersome/
difficult to code, and in many situations it is also difficult to be understood.
- When it comes to verifying a spatial model with XM, this will result into space
explosion due to the spatial information.
3
Introduction to Spatial X-Machines
sp XMs represent an extension of stream XMs, which define three new components
and modify some existing ones in order to facilitate unification with the newly defined
components. The input and the output set, the memory, the set of states and the next
state remain intact, because these structures do not deal with the spatial attributes that
we intend to support. On the other hand, the following three components have been
introduced:
- A tuple containing the current position of the agent, which determines the agent's
location in its environment.
- An integer that represents the agent's current direction (such as south, north, etc.)
that represents its heading.
- A set containing elementary operations. These operations allow manipulation of
the current position and the current direction.
An sp XM is a 13-tuple sp XM = ( Σ , Γ ,Q, q 0 , π , π 0 , θ , θ 0 ,M, m 0 ,E, Φ , F) that can be
formally defined as:
- Σ is the set of input symbols;
- Γ is the set of output symbols;
- Q is a finite set of states;
- q 0 is the initial state;
- M is an n-tuple called memory;
- m 0 is the initial memory;
- π is a tuple of the current position, i.e. ( x , y ) when a 2D representation is considered;
- π 0 is the initial position;
- θ is an integer in the range 0 to 360, that represents a direction (integer values are
used as a design choice);
- θ 0 is the initial direction;
- E is a set which contains elementary positioning operations: e i : Π
×
Θ
−→
Π
×
Θ ,
such as direction change, moving forward and moving to a specific position;
Search WWH ::




Custom Search