HOME

TheInfoList



OR:

The High Level Architecture (HLA) is a standard for distributed simulation, used when building a simulation for a larger purpose by combining (federating) several simulations. The standard was developed in the 1990s under the leadership of the
US Department of Defense The United States Department of Defense (DoD, USDOD or DOD) is an executive branch department of the federal government charged with coordinating and supervising all agencies and functions of the government directly related to national secu ...
and was later transitioned to become an open international IEEE standard. It is a recommended standard within
NATO The North Atlantic Treaty Organization (NATO, ; french: Organisation du traité de l'Atlantique nord, ), also called the North Atlantic Alliance, is an intergovernmental military alliance between 30 member states – 28 European and two No ...
through STANAG 4603. Today the HLA is used in a number of domains including defense and security and civilian applications. The purpose of HLA is to enable interoperability and reuse. Key properties of HLA are: * The ability to connect simulations running on different computers, locally or widely distributed, independent of their operating system and implementation language, into one Federation. * Ability to specify and use information exchange data models, Federation Object Models (FOMs), for different application domains. * Services for exchanging information using a publish-subscribe mechanism, based on the FOM, and with additional filtering options. * Services for coordinating logical (simulation) time and time-stamped data exchange. * Management services for inspecting and adjusting the state of a Federation. HLA forms the basis for developing standardized and extendable FOMs in different communities, for example in aerospace and defense. The architecture specifies the following components. * A Run-time Infrastructure (RTI) that provides a standardized set of services through different programming languages. These services include information exchange, synchronization and federation management * Federates that are individual simulation systems using RTI services. * A Federation Object Model (FOM) that specifies the Object Classes and Interaction Classes used to exchange data. The FOM can describe information for any domain. Together the above components form a Federation. The HLA standard consists of three parts: # IEEE Std 1516-2010 Framework and Rules, which specifies ten architectural rules that the components or the entire federation shall adhere to. # IEEE Std 1516.1-2010 Federate Interface Specification, which specifies the services that shall be provided by the RTI. The services are provided as C++ and Java APIs as well as Web Services. # IEEE Std 1516.2-2010 Object Model Template Specification, which specifies the format that HLA object models, such as the FOM, shall use.


History and versions

HLA was initiated in the early 1990s when Dr. Anita K. Jones, the Director of Defense Research and Engineering within the US Department of Defense, gave the Defense Modeling and Simulation Office (DMSO) the task of “assuring interoperability and reusability of defense models and simulations”. In 1995 DMSO formulated a vision for modeling and simulation and established a modeling and simulation masterplan, which included the High Level Architecture. Two protocols for M&S interoperability already existed:
Distributed Interactive Simulation Distributed Interactive Simulation (DIS) is an IEEE standard for conducting real-time platform-level wargaming across multiple host computers and is used worldwide, especially by military organizations but also by other agencies such as those invol ...
(DIS), focusing on real-time platform level simulation with a fixed object model, and Aggregate Level Simulation Protocol (ALSP) focusing on simulation of aggregate with time management, ownership management and flexible object models, called confederation models. The purpose of HLA was to provide one unified standard that would meet the simulation interoperability requirements of all US DoD components. The development of HLA was based on four prototypical federations: the Platform Prototype Federation, the Joint Training Protofederation, the Analysis Protofederation and the Engineering Prototype Federation. The HLA specification was prototyped and refined, until HLA 1.3 was finally released. To facilitate usage outside of the defense community, HLA was then transitioned into an IEEE standard, maintained by
Simulation Interoperability Standards Organization The Simulation Interoperability Standards Organization (SISO) is an organization dedicated to the promotion of modeling and simulation interoperability and reuse for the benefit of diverse modeling and simulation communities, including developers, ...
(SISO). To facilitate the migration for DIS users, a Federation Object Model corresponding to the fixed object model of DIS was also developed as the Real-time Platform Reference FOM ( RPR FOM). The following HLA versions exist:


HLA 1.3

HLA 1.3 was published in March 1998 by DMSO. It consists of: * U.S. Department of Defense, Rules Version 1.3 * U.S. Department of Defense, High Level Architecture Interface Specification Version 1.3 * U.S. Department of Defense, High Level Architecture Object Model Template Version 1.3 The US DoD also published interpretations for HLA 1.3: * U.S. Department of Defense, Interpretations of the High Level Architecture Interface Specification Version 1.3, Release 3


HLA 1516-2000

HLA IEEE 1516-2000 was published in 2000 by IEEE. It consists of: * IEEE Std 1516–2000 – Standard for Modeling and Simulation High Level Architecture – Framework and Rules * IEEE Std 1516.1–2000 – Standard for Modeling and Simulation High Level Architecture – Federate Interface Specification * IEEE 1516.1–2000 Errata (2003-oct-16) * IEEE 1516.2-2000 – Standard for Modeling and Simulation High Level Architecture – Object Model Template (OMT) Specification Major improvements in IEEE 1516-2000 included an XML-based FOM with detailed data type specifications, as well as an improved DDM design. The IEEE 1516-2000 standard was also complemented by a recommended development process as well as a recommended VV&A process: * IEEE 1516.3-2003 – Recommended Practice for High Level Architecture Federation Development and Execution Process (FEDEP). This standard would later become IEEE Std 1730-2010 Distributed Simulation Engineering and Execution Process ( DSEEP) * IEEE 1516.4-2007 – Recommended Practice for Verification, Validation, and Accreditation of a Federation an Overlay to the High Level Architecture Federation Development and Execution Process It was soon found that the 1516-2000 standard had APIs that were slightly different for each RTI implementation. SISO produced a standard with alternate, dynamic link compatible (DLC) C++ and Java APIs: * SISO-STD-004.1-2004: Standard for Dynamic Link Compatible HLA API Standard for the HLA Interface Specification (IEEE 1516.1 Version) * SISO-STD-004-2004: Standard for Dynamic Link Compatible HLA API Standard for the HLA Interface Specification (v1.3) The DLC APIs were later merged into the main standard.


HLA 1516-2010 (HLA Evolved)

The IEEE 1516-2010 standard was published in August 2010 by IEEE and is commonly known as HLA Evolved. It consists of: * IEEE 1516–2010 – Standard for Modeling and Simulation High Level Architecture – Framework and Rules * IEEE 1516.1–2010 – Standard for Modeling and Simulation High Level Architecture – Federate Interface Specification * IEEE 1516.2-2010 – Standard for Modeling and Simulation High Level Architecture – Object Model Template (OMT) Specification Major improvements in IEEE 1516-2010 include Modular FOMs, incorporation of the DLC APIs in C++ and Java, a Web Services API and Fault Tolerance. Machine-readable parts of this version of HLA, such as XML Schemas, C++, Java and
WSDL The Web Services Description Language (WSDL ) is an XML-based interface description language that is used for describing the functionality offered by a web service. The acronym is also used for any specific WSDL description of a web service (also ...
APIs as well as FOM/SOM samples can be downloaded fro
the IEEE 1516 download area of the IEEE web site
The full standards texts are available at no cost to SISO members or can be purchased fro
the IEEE shop


HLA 1516-20XX (HLA 4)

The development of a new version of HLA started in January 2016 by SISO and is currently ongoing.


Technical overview

The HLA standard consists of three parts: * Framework and Rules, which specifies ten architectural rules that federates or the entire federation shall adhere to. * Federate Interface Specification, which specifies the services that shall be provided by the RTI. The services are provided as C++ and Java APIs as well as Web Services. * Object Model Template Specification which specifies the format that HLA object models, such as the FOM, shall use.


Common HLA terminology

* Run-time Infrastructure (RTI): Software that provides a standardized set of services, as specified in the HLA Federate Interface Specification. There are seven service groups. * Federate: A system, such as a simulation, a tool or an interface to live systems, that connects to the RTI. Examples of tools are data loggers and management tools. A federate uses the RTI services to exchange data and synchronize with other federates. * Federation: A set of federates that connect to the same RTI together with a common FOM. * Federation Execution: A session, where a set of federates execute together in a federation with a specific objective, using the same RTI and FOM. * Federation Object Model (FOM): A document that specifies object classes, interaction classes, data types and additional data that is used for the information exchange in a federation. A FOM is an XML file that follows the format of the HLA Object Model Template and the associated XML Schema. Different FOMs are used for exchanging data for different application domains. There are standardized FOMs, called reference FOMs, that are commonly used as a starting point for FOM development. A FOM can be developed and extended in a modular way using FOM modules. * Simulation Object Model (SOM): A document that specifies object classes, interaction classes, data types and additional data that a particular simulation publishes and/or subscribes to in a federation. A SOM is also an XML file that follows the format of the HLA Object Model Template and the associated XML Schema. SOMs can also be developed and extended in a modular way using SOM modules. * Object: Objects are used to represent data that is persistent over some period of time and that have attributes that can be updated. They are defined in the FOM/SOM using an Object Class. * Interaction: Interaction are used to represent instantaneous events with parameters. An interaction that has been sent cannot be updated (as opposed to object classes). They are defined in the FOM/SOM using an Interaction Class. * Datatypes: The representation and interpretation of attribute and parameter data is specified in the FOM/SOM using HLA Datatypes. * Publish: A federate that publishes an object class with a set of attributes can register and delete instances of that object class and update its attribute values. A federate that publishes an interaction class can send interactions of that interaction class, together with associated parameter values. * Subscribe: A federate that subscribes to an object class with a set of attributes will discover registrations and deletions of instances of that object class and receive updates of subscribed attributes. A federate that subscribes to an interaction class will receive interactions of that interaction class, together with associated parameter values.


Interface specification

The RTI services are defined in the HLA Interface Specification. They are grouped into seven service groups. In addition to these services, the Management Object Model (MOM) provides services that makes it possible to inspect and adjust the state of the federation programmatically. Most RTIs consist of a Central RTI Component (CRC), which is an executable and Local RTI Components (LRCs), which are libraries that are used by the federates. Services are provided through a C++ or
Java Java (; id, Jawa, ; jv, ꦗꦮ; su, ) is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea to the north. With a population of 151.6 million people, Java is the world's List ...
API and also using Web services. In the C++ and Java APIs, services are invoked using calls to an instance of the RTI Ambassador class. The RTI delivers information to a federate using callbacks, which are delivered using calls to an instance of the Federate Ambassador class. In the Web Services API, defined using
WSDL The Web Services Description Language (WSDL ) is an XML-based interface description language that is used for describing the functionality offered by a web service. The acronym is also used for any specific WSDL description of a web service (also ...
, calls are made, and callbacks are fetched, by the federate using Web Services requests and responses. The service group descriptions below focus on key services. Exceptions and advisories are not included.


Federation Management Services

The purpose of Federation Management services, described in chapter 4 of the HLA Interface Specification, is to manage Federation Executions as well as federation-wide operations such as Synchronization Points and Save/Restore. One set of Federation Management services manages the connection to the RTI, the federation execution and the set of joined federates. Key services are: * Connect and Disconnect from the RTI * CreateFederationExecution and DestroyFederationExecution that are used to create and destroy a federation execution * JoinFederationExecution and ResignFederationExecution that are used by a federate to join and resign a federation execution. * ConnectionLost, that is used by the RTI to inform a federate that it has lost its connection to the federation execution due to a fault * ListFederationExecutions that is used to retrieve a list of available federation executions for an RTI Another set of services relates to synchronization points. These are federation-wide events where all, or selected federates are required to complete an operation, such as initializing a scenario, before the execution can continue. Key services are: * RegisterFederationSynchronizationPoint that is used to register a synchronization point * AnnounceSynchronizationPoint that is used by the RTI to inform federates that a synchronization point has been registered * SynchronizationPointAchieved that is used by a federate to indicate that it has achieved a synchronization point * FederationSynchronized that is used by the RTI to Inform federates that the federation is synchronized, i.e. all federates have achieved the synchronization point. Yet another set of service relates to saving and restoring a federation execution. A save operation requires both the RTI and each federate to perform a save of their internal state. A restore operation requires both the RTI and each federate to perform a restore of their internal state. Key services are: Save: * RequestFederationSave that is used to initiate a save of a federation * InitiateFederateSave that is used by the RTI to notify federates to start saving its state * FederateSaveComplete that shall be called by a federate when it has completed saving its state. * FederationSaved that is used by the RTI to notify federates that the federation is saved Restore: * RequestFederationRestore that is used to initiate a restore of a federation * InitiateFederateRestore that is used by the RTI to notify federates to start restoring its state * FederateRestoreComplete that shall be called by a federate when it has completed restoring its state. * FederationRestored that is used by the RTI to notify federates that the federation is restored


Declaration Management Services

The purpose of Declaration Management services, described in chapter 5 of the HLA Interface Specification, is to enable federates to declare what information they wish to publish (send) and subscribe to (receive) based on object and interaction classes in the FOM. The RTI uses this information to route updates and interactions to subscribing federates. For an object class, publishing and subscribing are performed for a specific set of attributes. For interaction classes, the entire interaction, including all parameters, is published and subscribed. Key services are: * PublishObjectClassAttributes that is used to publish a set of attributes for a given object class. * SubscribeObjectClassAttributes that is used to subscribe to a set of attributes for a given object class. * PublishInteractionClass that is used to publish an interaction class including all paramete