Download presentation
1
DEVS Namespace for Interoperable DEVS/SOA
Chungman Seo Bernard P. Zeigler Arizona Center for Integrative Modeling and Simulation The University of Arizona
2
Outline Motivation of the study Objectives Background
Design of interoperable DEVS simulation environment Implementation of interoperable DEVS simulation environment Track Display Application HLA vs. SOA support for DEVS interoperability Conclusions Future work
3
The Problem DEVS simulators implement the DEVS modeling formalism in diverse programming environments, e.g. DEVSJAVA, ADEVS, CD++, DEVSim++, PythonDEVS The DEVS formalism specifies the same abstract simulator algorithm for any simulator Different simulators implement the same abstract simulator using different codes This situation inhibits interoperating DEVS simulators prevents simulation of heterogeneous models Each simulator can not provide platform-neutral message passing
4
The Need for Interoperability
Different platforms specialize in different capabilities, e.g., C++ supports fast execution, but JAVA provides a better platform for web service development In our applications at JITC, ADEVS based on C++ is employed for radar track generation while DEVSJAVA is used for track display Reusability of Models increases through interoperability System of Systems (SoS) requires interoperability to compose new systems from existing systems Interoperability requires well-defined interfaces to use systems in different platforms or languages Web services, HLA, and CORBA provide communication channels between software systems with different platforms
5
DEVS Standardization Supports Higher Level Web-Centric Interoperability
6
Prior Work Mittal and Rico developed DEVS/SOA
it employs JAVA serialization to code messages into byte array this restricts interoperation to simulators based on JAVA, e.g. DEVSJAVA, and XDEVS It does not use DEVS namespace Taekyu Kim extended DEVS/SOA to run in real time but did not address interoperability Moath Jarrah developed a Negotiation Model and simulated it on DEVS/SOA but did not implement it in web services
7
Objectives To design and implement interoperable DEVS Simulation environment using SOA and DEVS namespace To manage DEVS namespace for interoperable DEVS Simulation environment To implement neutral message passing between different DEVS simulation environments To show implementation of layered interoperability concept Platforms and languages neutral DEVS simulation environment using SOA
8
Background - DEVS Modeling and Simulation Framework
Set theory based system specification formalism Atomic model : lowest level model, contains structural dynamics Coupled model : composed of one or more atomic and / or coupled -> hierarchical construction Basic Parallel DEVS Model: M = <X, Y, S, δint, δext, δcon, λ ta> X : set of input events Y : set of output events S : set of states δint : internal transition function δext :external transition function δcon : confluent function λ : output function ta : time advance function Time base is logical time
9
Background - SOA (Service-Oriented Architecture)
Language and platform independent => separation of specification and implementation Loosely coupled => message based, synchronous and asynchronous interactions. Over the Internet => No centralized control, use of established protocols, security considerations. Inter-operable => Standards based. Transport protocol HTTP/HTTPS Data Encoding SOAP (Simple Object Access Protocol), XML Schema Interface Description WSDL (Web Services Description Language) Service Description and Discovery UDDI (Universal Description, Discovery and Integration) Security WS-Security, XML-Signature, XML-Encryption, ... An architectural approach to build software application that use services available in a network Web Service
10
Overall System of Interoperable DEVS Simulator Services with DEVS namespace
11
Web-enabled interoperability of DEVS components
12
DEVS namespace Network accessible schema document
Storage for types of messages which are used in DEVS models A unique element name in the DEVS namespace Register and extract domain specific schema through a web service Supports re-use, composability, and interoperability
13
The Structure of DEVS Simulator Service
Web Service displayed to clients Link between DEVS M&S and WS operations Convert DEVS message to XML message Implement DEVS M&S with various Languages ( Java, C++, Python, Matlab) Manage Networking and SOAP
14
The operations of DEVS simulator service
15
DEVS message to XML message
DEVS message consists of a port/value pairs Implementation of DEVS message is different in different DEVS implementations DEVSJAVA : employs a message class for DEVS message ADEVS : PortValue class is used for ADEVS message XML message
16
Track Display Application
Shows interoperability between DEVS models in different implementation languages Consists of a TrackDisplay model and TrackGenerator models The TrackGenerators generate time indexed TrackData behavior The TrackDisplay has a capability of displaying track data in GUI Uses a message type called TrackData consisting of four variables id : int xposition : double yposition : double heading : double Coordinator DEVSJAVA TrackGenerator 1 Model ADEVS TrackGenerator 2 Model Virtual Time Simulation AXIS2 environment Apache web server .Net environment Microsoft web server TrackDisplay for web service using AXIS2 SOAP messages SOAP messages SOAP messages IP Network
17
HLA vs. SOA support for DEVS interoperability
DEVSsimHLA Interoperable DEVS/SOA Platform/Language interoperability Support Neutral Message passing No Middleware interoperability Possible using a HLA bridge Linguistic levels of interoperability Support 2 levels (syntactic and semantic) Support all levels (syntactic, semantic, and pragmatic)
18
Conclusions Designed and Implemented an interoperable DEVS Simulator services with DEVS namespace Applied to DEVSJAVA and ADEVS Developed the web service for handling DEVS namespace to provide semantic level interoperability between DEVS simulator services Implemented the platform-neutral message passing on the interoperable DEVS Simulation environment
19
Future Work Design/Implement pragmatic level interoperability
Apply interoperable DEVS simulator service to the other DEVS implementations (DEVS python, DEVS Matlab, and so on) Add more functions to the web service for handling the DEVS namespace Extend the platform-neutral message passing to support complex message types
20
Thank you
21
Implement the DEVS namespace
21
22
Example of Registration /Extraction of DEVS message
Web Service Operation Web Service Operation Web Service Operation Web Service Operation Registration Extraction 22
23
DEVS simulator service for DEVSJAVA
DEVSJAVA Modeling & Simulation DEVSJAVA interface between operations and DEVSJAVA simulator DEVSJAVA message to XML message AXIS2 to generate a DEVS simulator service Java based web service on Apache tomcat server Simulator classes for virtual time and real time simulations A Atomic class contains DEVS atomic or coupled model using a Digraph2Atomic class A Digraph2Atomic class which pretends to be an atomic model to follow DEVS protocol during simulation of interoperable DEVS simulator services A XMLObjectMessageHandler class to convert DEVSJAVA message to XML message vice versa DEVS Interface 23
24
DEVS simulator service for ADEVS
ADEVS modeling and simulation ADEVS interface between operations and ADEVS simulator ADEVS message converter .Net to generate a DEVS simulator service C++ based web service on Microsoft web server ADEVS Library ADEVS Interface simulator string converter of C++ to VC++ vice versa ADEVS message converter ADEVS Interface 24
Similar presentations
© 2024 SlidePlayer.com Inc.
All rights reserved.