Recent Changes - Search:

PmWiki

pmwiki.org

edit SideBar

High-Level Architecture

Ptolemy II 11-0 includes the ability to use the High-Level Architecture (HLA) to realize distributed discrete-event simulation.

What is hlacerti in Ptolemy II?

The Ptolemy-HLA co-simulation framework (called hlacerti in Ptolemy tree) leverages two open source tools: Ptolemy II and HLA/CERTI. It allows to distribute the execution of a Ptolemy model by using the HLA standard (implemented by CERTI), and is a easy way to produce a HLA federate in a Federation using CERTI. For more information about the HLA-PTII co-simulation framework see Cardoso 2018, Lasnier 2013, Li 2015. Ptolemy-HLA demos are in $PTII/org/hlacerti in the development tree.

Check the ptII-hlacerti wiki for more information.

hlacerti: Leveraging Ptolemy and HLA
Key featuresPtolemyHLAhlacerti
Heterogeneity 
Hierarchy 
Distribution 
Interoperability 

Ptolemy-hlacerti allows for:

  • Distribution of a simulation, allowing the scalling up for big models and performance (see Figure 1);
  • Interoperability of tools, allowing reusability and interfacing with other simulators (see Figure 2).

Figure 1: hlacerti allows for distributing a Ptolemy model in one or more computers.

Figure 2: hlacerti allows for interoperability with real devices or other simulators.

It does not work when the url is replaced by the attach


Rock on!

The image is right-aligned, and the text wraps on the left side of the image.

Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et

What is Ptolemy II?

Ptolemy II is an open-source software framework supporting experimentation with actor-oriented design. Actors are software components that execute concurrently and communicate through messages sent via interconnected ports. A model is a hierarchical interconnection of actors. In Ptolemy II, the semantics of a model is not determined by the framework, but rather by a software component in the model called a director, which implements a model of computation.

General instructions for installing Ptolemy II are see here. The minimum set of instructions is in this page.

What is High-level Architecture (HLA)?

The High-Level Architecture (HLA) is a standard for distributed discrete-event simulations, generally used to support analysis, engineering and training. The approach promotes reusability and interoperability. In HLA terminology, the entire system to be simulated is represented by a federation which is a collection of federates, i.e. simulation entities performing a sequence of computations. Federates are connected via the Run-Time Infrastructure (RTI), the underlying middleware functioning as the simulation kernel.

The HLA specification defines:

  1. An interface specification for a set of services required to manage the federates and their interactions. For instance, it describes how a federate can join or create a federation.
  2. An object model template (based on the OMT standard) which provides a common framework for the communication between HLA simulations. For each federation, a Federation Object Model (FOM) describes the shared objects, interaction classes and their attribute. The FOM can be specified in a Federeration Execution Data (FED) file or a XML file.
  3. A set of rules describing the responsibilities of federations and the federates. An example is the rule that all data exchange among federates shall occur via the RTI.

The table below shows some HLA services. The ones with a * are sent from RTI to Federates (callbacks); all other services are from Federates to RTI.


Table 1: Hla Services.

What is CERTI?

http://savannah.nongnu.org/projects/certi says:

"CERTI is an Open Source HLA RTI. HLA (High-Level Architecture) is a general purpose architecture for distributed computer simulation systems. In HLA systems, the RTI (RunTime Infrastructure) manages data exchange between simulations. CERTI supports HLA 1.3 specifications (C++ and Java) and partial IEEE 1516-v2000 and IEEE 1516-v2010 (C++) ."
"CERTI is open source software (GPL, libraries are LGPL)."

For more information, check the CERTI wiki.

What is JCERTI?

JCERTI is the Java API. It is compliant with both standards, HLA 1.3 and IEEE 1516.

For more information, check the CERTI wiki.

Ptolemy/HLA Papers

See Also

Edit - History - Print - Recent Changes - Search
Page last modified on September 24, 2020, at 06:49 AM