Content deleted Content added
Bluelinking 1 books for verifiability.) #IABot (v2.1alpha3 |
Tom.Reding (talk | contribs) m WP:GenFixes on, typo(s) fixed: doesn’t → doesn't, ’s → 's (11) |
||
Line 10:
In 1990, the '''[[Defense Advanced Research Projects Agency]] (DARPA)''' employed '''The [[MITRE]] Corporation''' to study the application of distributed interactive simulation principles employed in '''[[SIMNET]]''' to aggregate-level constructive training simulations. Based on prototype efforts, a community-based experiment was conducted in 1991 to extend SIMNET to link the US Army's [https://archive.is/20130822204558/http://www.peostri.army.mil/PRODUCTS/CBS/home.jsp '''Corps Battle Simulation (CBS)'''] and the US Air Force's [https://web.archive.org/web/20041019105713/http://afmsrr.afams.af.mil/index.cfm?RID=SMN_AF_1000000 '''Air Warfare Simulation (AWSIM)''']. The success of the prototype and users' recognition of the value of this technology to the training community led to development of production software. The first ALSP confederation, providing air-ground interactions between CBS and AWSIM, supported three major exercises in 1992.
By 1995, ALSP had transitioned to a multi-Service program with simulations representing the US Army (CBS), the US Air Force (AWSIM), the US Navy ('''RESA'''), the US Marine Corps ([https://web.archive.org/web/20070826203844/http://www.29palms.usmc.mil/dirs/ont/mands/mwts.asp '''MTWS''']), electronic warfare ('''JECEWSI'''), logistics ('''CSSTSS'''), and intelligence ([https://web.archive.org/web/20070825010050/http://www.peostri.army.mil/PRODUCTS/TACSIM/ '''TACSIM''']). The program had also transitioned from
==Contributions==
Line 52:
The first strategy requires few perturbations to existing simulations; interaction is facilitated entirely through the interconnection infrastructure. However, this solution does not scale well. Because of an underlying requirement for scalability, the ALSP design adopted the second strategy. ALSP prescribes that each simulation maps between the representational scheme of the confederation and its own representational scheme. This mapping represents one of the three ways in which a simulation must be altered to participate in an ALSP confederation. The remaining modifications are:
* Recognizing that the simulation
* Modifying the
In stand-alone simulations, objects come into (and go out of) existence with the passage of simulation time and the disposition of these objects is solely the purview of the simulation. When acting within a confederation, the simulation-object relationship is more complicated.
The simulation-object ownership property is dynamic, i.e. during its lifetime an object may be owned by more than one simulation. In fact, for any value of simulation time, several simulations may own different attributes of a given object. By convention, a simulation owns an object if it owns the "identifying" attribute of the object. Owning an
When a simulation creates an object, it reports this fact to the confederation to let other simulations create ghosts. Likewise, when a simulation deletes an object, it reports this fact to enable ghost deletion. Whenever a simulation takes an action between one of its objects and a ghost, the simulation must report this to the confederation. In the parlance of ALSP, this is an interaction.
Line 139:
===ALSP Protocol===
The ALSP protocol is based on a set of orthogonal issues that comprise
====Simulation Protocol====
Line 146:
* ''Update.'' Objects in ALSP are defined by a unique id number, a class, and a set of attributes associated with a c1ass. As a simulation changes the state its objects, it sends update messages to the ACM that provide initial or changed attribute values. The ACM then distributes the information via AIS to other simulations in that have indicated interest.
* ''Interaction.'' Interactions between objects are identified by kind. Interaction kinds are described by parameters, just as objects are described by attributes. When a
* ''Refresh request.'' A simulation can request an update of a set of attribute values for any object or class of objects by sending a refresh request message to the confederation.
* ''Delete.'' When a simulation causes one of its objects to cease to exist, the simulation sends a delete message to inform other simulations.
Line 162:
Distributed object ownership presumes that no single simulation must own all objects in a confederation, but many simulations require knowledge of some objects. A simulation uses simulation protocol update messages to discover objects owned by other simulations. If this simulation is interested in the objects, it can ghost them (track their locations and state) and model interactions to them from owned objects.
Locks implement attribute ownership. A primary function of the object management protocol is to ensure that a simulation only updates attributes for which it has acquired a lock. The [[object manager]] in the ACM manages the objects and object attributes of the owned and ghosted objects known to the ACM. Services provided by the simulation/ACM protocol are used by the simulations to interact with the
Each attribute of each object known to a given ACM has a status that assumes one of three values:
Line 169:
* ''Gone.'' The state of control is held elsewhere in the confederation.
From the
* ''Object Registration'' places each object-attribute pair in the locked state. The simulation may optionally specify attributes to be in the unlocked state.
Line 176:
====Time Management Protocol====
The time management protocol is also a peer-level protocol that sits below the simulation protocol. It provides time management services for synchronizing simulation time among ACMs. The protocol provides services for the distributed coordination of a
The join/resign services and time synchronization mechanisms are described in Section earlier. The save mechanism provides fault tolerance. Coordination is required to produce a consistent snapshot of all ACMs, translators and simulations for a particular value of simulation time.
Line 184:
The ACM uses simulation message filtering to evaluates the content of a message received from the confederation. The ACM delivers messages to its simulation that are of interest, and pass filtering criteria and discards those that are not of interest. The ACM filters two types of messages: update messages and interaction messages.
''Update messages.'' The ACM evaluates update messages based on the
''Interaction messages.'' An ACM may discard interaction messages because of the kind parameter. The kind parameter has a hierarchical structure similar to the object class structure. The simulation informs its ACM of the interaction kinds that should pass or fail the interaction filter.
|