Flip Tick Architecture

Introduction to FTA

The ITSimBw simulation environment is based on the Flip-Tick-Architecture (FTA) (Richter 1999), which has its roots in the JANUS project developed at the Gesellschaft für Mathematik und Datenverarbeitung (GMD)  (Beyer and Smieja 1994). At its core, FTA is a design paradigm for scalable distributed systems that exhibit a priorily unknown dynamic characteristics as well as disturbances and inaccuracies which are difficult, if not impossible, to model in a closed-form mathematical approach. As every multi-agent system, FTA is based on the concept of a society of agents (Weiss 1999). It comprises four classes of entities: actors (i.e. agents), assemblies, tags, and tag-boards.  

 

Agents and Autonomy

The aforementioned society of agents A is formed by a set of individual agents aj, which are called actors in FTA terminology A = {ai, ..., aj, ... ak}

Each actor aj is composed of a set of typed attributes Uj, whose value assignment determines the agent’s state, together with an action function, which entails all operations that can be performed by the actor: aj = (Uj=(u1,j, ...,um,j),fj).  

Structural information concerning agents, i.e. names and types of attributes, is described via agent types. Formally, we have type(aj) = t, if and only if agent aj is of type t.  The system supports agent templates that can be used to store prototypical value assignments. Thus, an individual agent can be created either by instantiation of its type, or by copying from a pre-defined template.

The principle of autonomy of agents forbids the direct manipulation of internal data structures and behaviors of other agents. Consequently, all interactions between agents are handled via messages. Formally, a message Nν is comprised of a number of attributes: Nv = (u1,v, ...ul,v).

As agents, messages are typed entities. The set of all message types is given by N = { N1, ... Nh}.

Upon receiving a request, the agent is able to analyze its content and to decide whether it wants to comply. The basic unit of execution is called a cycle. During one cycle, the agent reads its messages and triggers the appropriate actions, which might consist of writing messages to other actors.

An assembly is a set of agents sharing a common pace, i.e. all elements of an assembly have the same time resolution dt. This in turn implies that their cycles are synchronized and that the assembly switches from cycle to cycle as regularly as the tick of a clock. Hence the term Tick in FTA. It is important to note, that different agents do not necessarily share the same time resolution. Instead, the architecture supports individual running speeds for every actor. Moreover, time steps can vary from cycle to cycle. Thus, adaptive control of time increments can be realized (see below). This is particularly valuable for increasing the time resolution in the computation of dynamics equations for fast moving objects.

 

Communication

The messages used for inter-agent communication are called tags in FTA. We distinguish between three different categories of tags:

 

  • Message tags are the carriers of communication between agents. Orders are embedded in message tags using XML syntax.
  • Position tags contain the current position of agents. They are sent when actors change their position.
  • Effect tags are used to mediate effects like weather influences, weapon impact, and the like.

 
Instead of setting up a direct communication with other actors, agents register with one ore more tag-boards, to which they send their messages. Thus, tag-boards serve as the functional units for handling messages in the FTA system. In formal terms, a tag-board forms a medium Mn for message exchange, while a FTA system is capable of supporting multiple media: M = { M1, ... Mm}.

A tag-board consists of two sides. One is write-only and contains all tags sent to the board in time step t, whereas the other side is read-only and encompasses all tags written in time-step t-1.  Analogously to agents, each tag-board has its own time resolution and thus its own cycle time. During a board cycle, the write-only side is flipped over. Thereby, the read-only part mirrors the tag content of the write part from the previous time-step. The write-only side is deleted after flipping. In this way, the lifetime of tags is effectively controlled by the time-scale of the pertaining board. 

With this approach, fully synchronized (all agents and tag-boards share the same time resolution) as well as completely asynchronous systems (every agent and every board has its own time-scale) can be modeled in terms of the FTA.

The mathematical model of this agent architecture is a system of flexibly coupled inhomogeneous difference equations D = { D1, ... Dk}, where each agent computes an equation from D. In this setting, the attribute list of an actor corresponds to the variable vector of the pertaining difference equation. Thus, equation Di of  agent ai computes Ui^t+dt = fi(Ui^t), where dti denotes the time step size of agent ai. During the iteration of  D, the society of agents runs through a set of states Z = {Zt}, where each of these system states is the union of attribute sets from all participating agents.

 
Since the Di are computed using potentially different dti , the involved agent  attribute sets Uti  might be undefined for certain t. In this case, either the Ui from the last time step of Di  is used, or Ui is explicitly recomputed.  

A graphical visualization of FTA (omitting the discrimination of different tag-board sides) is shown in the figure below.

 

Related publications:

  • Real-time prediction in a stochastic domain via similarity-based data mining, Timo Steffens, Philipp Hügelmeyer, Proceedings of the Winter Simulation Conference, pp.1430—1435, 2007
  • Visibility Detection in Multi-Agent Simulation Environments with Radial-Sort-Occlusion-Culling, Martin Schido. Proceedings of the SimVis, 2007
  • Application of BML to Inter-Agent Communication in the ITSimBw Simulation Environment, Ulrich Schade, Philipp Hügelmeyer, Thomas Zöller. In B. Biller, M.-H. Hsieh, J. Shortle, J. D. Tew, and R. R. Barton (Eds.) Proceedings of the 2007 Winter Simulation Conference
  • Specifying and Simulating Modern Warfare Scenarios with ITSIMBW, Philipp Huegelmeyer, Timo Steffens, Thomas Zoeller. To appear in L. F. Perrone, F. P. Wieland, J. Liu, B. G. Lawson, D. M. Nicol, and R. M. Fujimoto (Eds.) Proceedings of the 2006 Winter Simulation Conference, 2006.
  • Agent-based Modelling of Processes and Scenarios with high-level Petri Nets, Philipp Hügelmeyer, Timo Steffens, Thomas Zöller. Proceedings of ESM 2006
News & Events

 

 

 

 

Links