DEVS-Based Simulation Interoperability

DEVS-Based Simulation Interoperability

Thomas Wutzler (Max Planck Institute for Biogeochemistry, Germany) and Hessam Sarjoughian (Arizona Center for Integrative Modeling and Simulation, USA)
DOI: 10.4018/978-1-60566-774-4.ch005
OnDemand PDF Download:
No Current Special Offers


This chapter introduces the usage of DEVS for the purpose of implementing interoperability across heterogeneous simulation models. It shows that the DEVS framework provides a simple, yet effective conceptual basis for handling simulation interoperability. It discusses the various useful properties of the DEVS framework, describes the Shared Abstract Model (SAM) approach for interoperating simulation models, and compares it to other approaches. The DEVS approach enables formal model specification with component models implemented in multiple programming languages. The simplicity of the integration of component models designed in the DEVS, DTSS, and DESS simulation formalisms and implemented in the programming languages Java and C++ is demonstrated by a basic educational example and by a real world forest carbon accounting model. The authors hope, that readers will appreciate the combination of generalness and simplicity and that readers will consider using the DEVS approach for simulation interoperability in their own projects.
Chapter Preview


Interoperability among simulators continues to be of key interest within the simulation community. A chief reason for this interest is the existence of heterogeneous legacy simulations which are developed using a variety of programming practices and software engineering approaches. For many studied problems there exist already simulations models. Much work has been dedicated to develop the models, estimate parameters, verify the simulations and validate the model assumptions by comparing model results to observations. Hence, it is desirable to reuse such existing models for additional tasks and to integrate parts of several existing models into a common framework. However, this integration is hampered by the fact that the existing models have been developed in different programming languages, with different software and different software engineering approaches. There exist already several approaches to implement a joint execution and some of them are summarized in the background section. In this book chapter we suggest an additional approach to realize interoperability among disparate simulators that utilizes the Discrete Event System Specification (DEVS). We argue that this approach yields several benefits. One of the most important benefits is the reduced complexity for adapting heterogeneous legacy models.

The interoperability issue will be exemplified with a typical problem which we encountered in our work. The task was to construct a forest ecosystem carbon tracking model. With such a model the exchange of carbon between the forest ecosystem and the atmosphere can be studied. One can then implement and test several scenarios of forest management and simulate how these influence the exchange of carbon dioxide with the atmosphere to explore how these management strategies influence atmosphere carbon concentrations and global warming. There already existed a model for the stand growth, i.e. the growth of trees within a plot, which was based on extensive measurement of tree properties within the study region (Appendix A). It accounted for competition among different trees and incorporated knowledge of many species. Hence, the source code was quite extensive. There already existed also a model for the soil carbon balance that have been used and validated by many research groups (Appendix B). Only the management strategies had to be implemented as a new component model.

However, the stand growth model was specified as discrete-time model (DTSS) and implemented in JAVA and the soil carbon balance model was specified as continuous (differential equations) model (DESS) and implemented in C++ (see Figure 1). So how could we couple the heterogeneous models and perform a joint and integrated simulation?

Figure 1.

Motivation example: Simulating a coupled forest ecosystem carbon budget model which is composed of component models that have been specified in simulation formalisms and programming languages


The purpose of this chapter is to discuss the benefits of DEVS concept compared to several commonly applied alternatives of tackling the problem of simulation interoperability. To this end we introduce the Shared Abstract Model (SAM) interoperability approach (Wutzler & Sarjoughian, 2007). We will exemplify its application first by a simple educational example model. This simple example provides the basis to compare the SAM approach to other DEVS-based approaches. Finally we present a setup using SAM that we used to solve the problem posed in Figure 1. Next, we start with a discussion of several commonly used alternatives of tackling the problem of simulation interoperability.



There exist several alternative approaches to construct a model from the component models such as the one described in the Introduction section (refer to Figure 1). One solution to the interoperability task is to develop all models using a single programming language. We could have reimplemented the soil model in JAVA as a time-stepped model. The reimplementation alternative, however, impedes independent development of the component models by different research groups. This disadvantage combined with weak support for simulation model verification and validation results makes reimplementation unattractive and generally impractical. In particular, there is a growing need for alternative simulation interoperability approaches in the domain of environmental modeling and simulation (Papajorgji et al., 2004; Filippi & Bisgambiglia, 2004; Roxburgh & Davies, 2006).

Key Terms in this Chapter

Model Adapter: software component of a DEVS simulation engine that maps the DEVS abstract atomic model interface to the implementation specific atomic model interface and the direction and execution of a coordinator of a coupled model.

Simulation Interoperability: ability to build a heterogeneous simulator from two or more different simulators. Models can belong to distinct formalisms and simulation engines can be implemented in multiple programming languages.

SAM Approach: approach for implementing simulation interoperability based on the DEVS model specification and the DEVS atomic model interface.

Model Proxy: software component of a DEVS simulation engine that maps the implementation specific atomic model interface to the DEVS abstract atomic model interface.

DEVS Model Specification: the specification of atomic and coupled models as mathematical structures.

Simulator and Coordinator: realizations of the DEVS atomic and coupled simulation protocols to execute atomic and coupled models, respectively.

DEVS Abstract Atomic Model Interface: specification of the operations of the atomic DEVS model in a meta programming language.

Complete Chapter List

Search this Book: