Tuesday, April 19, 2016

Conservative Vs Optimistic Distributed Time Management

* Keep all simulations and events synchronized all the time
* Regulate progress of all by the rate of slowest

* Allow independent progression but insist on event Synchronization
* Allow "run forward" and "roll back"
* Run forward and roll back

Wednesday, November 16, 2011

Summary of Distributed Simulation & Standards

Simulation development is time consuming and costly. So, reusability of existing simulation products and interoperability with existing and future products was required. This is possible if standards are being developed and followed.

Advances in distributed computing led to evolution of distributed simulation. Distributed simulation allows networking of existing simulations products rather than porting them into same environment. This further did away the problem of geographical constraints. Participants now need not be co-located. Complex problems are easily simulated in timely manner by distributed load to multiple computing units. Distribution usually involves decomposition to replicate the real world leading to easy development and maintenance of models.

Efforts for simulation standard were carried during same time in High Performance Computing Community, Defense, and Internet Gaming at the same time.

In defense domain, this started with networking of tank simulators as SIMNet Project in 1983. Inspired from SIMNet, Distributed Interactive Simulation (DIS) standard was developed in early 90’s.

DIS was standardized as IEEE 1278. DIS used concept of pre-defined Packet Data Unit (PDU)s. Simulation Interoperability Standard’s Organization (SISO) maintains PDU enumeration and bit-encoding. Earlier, PDUs were defined for Defense domain but now also include for medicine and space domain. NATO cancelled DIS adoption in 2010, however, IEEE revised it as DIS 7 for flexibility and extensibility. DIS 6 has 12 classes of PDUs and total of 67 PDUs.

Advantage of DIS: DIS is truly plug-n-play (being based on well-defined packets) and does not require any middleware.

Disadvantages of DIS: Being broadcast based, it has high latency making it suitable only for LAN environment and not for WAN. It does not support time management and data distribution management. Much of the general simulation functionality was to provided by simulation developer. DIS supports only Real Time and no fast or slow simulation execution.

Aggregate Level Simulation Protocol (ALSP) tried to solve the problem by incorporating concept of Area of Interest and time management.

In 1996, US DoD felt the need to develop a generic simulation framework based on the experience and knowledge gained from previous two standards. US DoD 1.3 HLA became IEEE 1516 standard in 2001. Main components of HLA specification include 10 rules, Object Management Template (OMT) for describing data exchange, and Interface Specification (7 groups of services implemented as RTI).

Federation Development and Execution Process (FEDEP) model was added to standard in 2003 which is a generic 7-step system engineering process model. In 2007, Recommendation for VV&A was added.

In 2010, HLA Evolved came up with benefits of Modular FOM/SOMs to further increase reuse and interoperability, interface with web services providing authentication and security and providing simulation anywhere anytime, smart update rate reduction (to reduce network congestion), Dynamic Link Compatibility (DLC) to switch among RTIs without need to recompile and relink simulations.

FEDEP is going to replaced by DSEEP (Distributed Simulation Engineering & Execution Process, IEEE 1730) which is general system engineering process with focus particularly on distributed simulation. It has 3 separate annexure for DIS, HLA, and TENA. It focuses on documentation and relationship among documents.

Frequent revision to HLA is an indication of its wide acceptance. Tools like RTI, OMT Tools etc. are developed by various vendors. Modelling and Simulation Coordination Office (MSCO), earlier DMSO, is responsible for compliance testing of RTI and their certifications. Interoperability among RTIs, a research need was tried. Benchmarks for RTI performance and capabilities were developed.

Advantages of HLA: A generic simulation standard that supports interoperability and reuse of distributed simulations. Mixing of Live, Virtual, and Constructive Simulations is possible with HLA. It interfaces well with Web Services and legacy DIS applications through Adaptors. Relieves simulation developer from writing common simulation functionality. Support for time management allows to run simulation fast or slow as well. Low latency (because of multicast – publish-subscribe) and data distribution management makes it suitable for WAN environment. Good vendor support.

Military operations nowadays involve multi-nations and therefore requires to be interoperable. Since HLA provides interoperability, it is now also a subject matter of NATO standardization (STANAG 4603).

Disadvantage of HLA: Being tied to FOM, it is not truly plug-n-play.

Current Status: US DoD has issued a mandate to make all simulation to be HLA compliant. Some of the famous projects include Virtual Ship (attempted by NPS, in Italy, In Australia as well), ATLAS (Thai Army Tactical Trainer), NASA VAST RT (Suite of RTI, tools and apps for airspace simulation), OneSAF etc,

Test and Training Enabling Architecture (TENA), another US DoD effort, is an architecture for Ranges, Facilities, and Simulations to Interoperate, to be Reused, to be Composed into greater capabilities. Foundation Initiative 2010 project established TENA.

This is a very capable (low-latency, high performance) architecture, offering much of the same capability as HLA, but based on more modern object-oriented technology. TENA middleware is offered to government users as GOTS, unlike the HLA that must be purchased on a per-seat basis.

Common Training Instrumentation Architecture (CTIA) uses SOA concept to interconnect live assets on Army training ranges as they participated in large-scale exercises. It supports unreliable networks and persistent databases.


DIS à For training needs

HLA à Training + Analysis + Acquisition needs

TENA à For hard-real-time application of integrating live assets in the test-range setting

CTIA à For Interconnecting live assets in training ranges in large-scale exercises

Only HLA can work in fast and slow mode, others work in real time only. Only DIS and HLA are IEEE standards.

Tuesday, August 3, 2010

Pitch RTI 1516 Programming Notes

High Level Architecture (HLA) is a standard for distributed simulations; proposed by US DoD (standard 1.3) and later standardized by IEEE as standard 1516. The main goal of HLA is reusability and interoperability of complex simulations. For data exchanges among distributed simulations, we need supporting software called Run-Time Infrastructure (RTI). RTI is an implementation of six groups of services (may not implement all services) as specified by the HLA framework.

In these notes, first the basic steps in federate (Refer Appendix A) implementation are given, followed by corresponding VC++ syntax for these steps. Sample program, starting the federation execution and general information on HLA is also provided. The federate implementation in VC++ extensively uses Standard Template Library (STL) functions. All the variables declarations are kept in Declarations section for easy reference.

Complete Pitch 1516 Programming Notes along with sample program is being uploaded at scribd and is available at:

Tuesday, July 21, 2009

New Tools for HlA

Pitch and other companies are coming up with many tools to support HLA. Apart from RTI, there are tools to invoke federates (Pitch HLA Commander), visual tools for maintaining FOM, code generators, data loggers, adaptors for DIS and Web APIs like Google Earth and Web Services.

Wednesday, April 15, 2009

Why Simulate?

Simulation is "learning-by-doing". Simulation offers several advantages over real-life experimentation. Most important of these advantages are:

Cost: Experimenting in real life is costly.

In real life its really difficult to repeat the exact circumstances again so you only get one chance to collect the results and you can't test different ideas under the exact same circumstances. With simulation you can test the same system again and again with different inputs.

Time: With simulation you can run 2, 10 or even 100 years into the future in seconds. So you get the answer now instead of when its too late to do anything about it.

Alternatively speaking, with simulation, you get:
  • Higher quality and efficiency from capital assets
  • Better management of inventory
  • Higher return on assets

What Can Be Simulated?

Again stating from Simul8,

There are many scenarios that can be simulated. As a general rule systems that involve a process flow with discrete events can be simulated. So any process you can draw a flowchart of you should be able to simulate.

The processes you'll gain most benefit from simulating are those that involve change over time and randomness. For example a gas station. Nobody can guess at exactly which time the next car will arrive at the station, whether they'll decide to purchase gas only etc. Modeling complex dynamic systems like this effectively in any other way isn't possible.

Simulation of Call Center

From M&S perspective, a call-center involves a queuing system. In a queuing system, arrival (of call or customer or request etc.) is discrete i.e. a customer may come anytime. Also, the service time of arrived request is random.

Essentially, call-center system is a discrete event simulation (DES). So, any tool for DES can be used to study and propose solutions to call center issues.

Some of these key issues are:
  • Bottlenecks
  • Over-utilized resources
  • Under resourced elements of a system.
Simul8 can be used for call-center simulation. Modellica and Simulink can also be used.