Presentation is loading. Please wait.

Presentation is loading. Please wait.

Approach and Techniques for Building Component-based Simulation Models Bernard P. Zeigler, Ph.D. Hessam S. Sarjoughian, Ph.D. Arizona Center for Integrative.

Similar presentations


Presentation on theme: "Approach and Techniques for Building Component-based Simulation Models Bernard P. Zeigler, Ph.D. Hessam S. Sarjoughian, Ph.D. Arizona Center for Integrative."— Presentation transcript:

1

2 Approach and Techniques for Building Component-based Simulation Models Bernard P. Zeigler, Ph.D. Hessam S. Sarjoughian, Ph.D. Arizona Center for Integrative Modeling and Simulation (ACIMS) Arizona State University University of Arizona www.acims.arizona.edu Google: ACIMS and Joint Interoperability Test Command (JITC) Fort Huachuca, AZ

3 Outline Basic principles of M&S from a system-theoretic worldview Component-based characterization of dynamic systems Unified framework for discrete and continuous models Discrete event system specification (DEVS) formalism Modular, hierarchical model composition Systems theory support of model reusability and composability Experimental Frame and model validation Simulation verification using the concept of abstract simulators DEVSJAVA, a modular, hierarchical simulation environment DEVS component-based M&S over network centric middleware

4 M&S Entities and Relations Real World SimulatorSimulator modeling relation simulation relation Each entity is represented as a dynamic system Each relation is represented by a homomorphism or other equivalence Data: Input/output relation pairs structure for generating behavior claimed to represent real world Device for executing model Model

5 M&S Entities and Relation(cont’d) Real World modeling relation simulation relation Experimental frame specifies conditions under which the system is experimented with and observed captures modeling objectives needed for validity, simplification justifications Simulator Model Experimental Frame

6 DESS: differential equation DEVS: discrete event DTSS: discrete time System Specification: Dynamic Systems Framework for Continuous and Discrete Models System Simulator: Event Processor DEVS model time to next event, state at next event... Simulator: Recursive Algorithm System DTSS model: q(t+1) = a*q(t)+ b*x(t) System Simulator: Numerical Integrator DESS model: dq/dt = a*q +bx

7 Dynamic Systems Framework for Continuous and Discrete Models (cont’d)

8 x 0 x 1 X S Y y0y0 e t0t0 t1t1 t2t2 Discrete Event Time Segments

9 DEVS = Discrete Event System Specification Provides formal M&S framework: specification,simulation Derived from Mathematical dynamical system theory Supports hierarchical, modular composition Object oriented implementation Supports discrete and continuous paradigms Exploits efficient parallel and distributed simulation techniques Theory of Modeling and Simulation, 2nd Edition, Academic Press, 2000, Bernard P. Zeigler, Herbert Praehofer, Tag Gon Kim DEVS Background

10 DEVS Hierarchical Modular Composition Atomic: lowest level model, contains structural dynamics -- model level modularity + coupling Coupled: composed of one or more atomic and/or coupled models Hierarchical construction

11 Atomic Models Ordinary Differential Equation Models Spiking Neuron Models Coupled Models Petri Net Models Cellular Automata n-Dim Cell Space Partial Differential Equations Self Organized Criticality Models Processing/ Queuing/ Coordinating Processing Networks Networks, Collaborations Physical Space DEVS Component-Based Expressability can be components in a coupled model Multi Agent Systems Discrete Time/ StateChart Models Quantized Integrator Models Spiking Neuron Networks Stochasti c Models Reactive Agent Models Fuzzy Logic Models

12 DEVS Theoretical Properties Closure Under Coupling Universality for Discrete Event Systems Representation of Continuous Systems –quantization integrator approximation –pulse representation of wave equations Simulator Correctness, Efficiency

13 DEVS Atomic Model Ports are represented explicitly – there can be any number of input and output ports on which values can be received and sent The time advance function determines the maximum lifetime in a state A bag can contain many elements with possibly multiple occurrences of its elements. Atomic DEVS models can handle bags of inputs and outputs. The external transition function handles inputs of bags by causing an immediate state change, which also may modify the time advance. The output function can generate a bag of outputs when the time advance has expired. The internal transition function is activated immediately after the output function causing an immediate state change, which also may modify the time advance. The confluent transition function decides the next state in cases of collision between external and internal events.

14 receptive refract Input fire Firing delay >0 Output Fire-once Neuron Atomic Model Examples Pulse Generator out pulse time passive active start interPulseTime >0 Output Pulse Generator start external event Internal eventoutput event ta = ∞

15 Internal Transition /Output Generation s Generate output output Make a transition s’s’ Time advance using the internal transition function using the output function

16 Time advance input Make a transition Response to External Input elapsed time using the external transition function

17 Time advance input Make a transition Response to Simultaneous External Input and Internal Event elapsed time Generate output output using the confluent transition function

18 DEVS Coupled Model Components Interconnections –Internal Couplings –External Input Couplings –External Output Couplings Elements of coupled model:

19 A B AB Coupling in Action Coupling (internal) Output port Input port State output external internal time advance State output external internal time advance

20 FireOnce Neuron 1 FireOnce Neuron 3 FireOnce Neuron 2 pulseInpulseOut pulseIn FireOnce Neuron 4 pulseOut pulseIn Pulse Generator Coupled Model Example – Neuron net FireOnce Neuron Network can compute the shortest path in a directed graph by mapping distances of edges to equivalent time values.

21 We separated models and simulators – now we bring them together Simulator Single processor Distributed Simulator Real-Time Simulator C++ Non DEVS Java Other Representation DEVS Simulation Protocol The DEVS simulation protocol is the agreement between the DEVS modeler and the implemented simulator

22 DEVS Simulation Protocol Classes Atomic Simulator coordinator coupledSimulator 1:n coupledCoordinator 1:n Stand alone atomic models are assigned to AtomicSimulators Coupled models are assigned to coordinators Atomic models as components within coupled models are assigned to coupledSimulators Coupled models as components within coupled models are assigned to coupledCoordinators genDevs. simulation. coordinator genDevs. simulation. coupledSimul ator

23 Atomic Model Simulator Every atomic model has a simulator assigned to it which keeps track of the time of the last event, tL and the time of the next event, tN. Initially, the state of the model is initialized as specified by the modeler to a desired initial state, s init. The event times, tL and tN are set to 0 and ta(s init ), respectively. If there are no external events, the clock time, t is advanced to tN, the output is generated and the internal transition function of the model is executed. The simulator then updates the event times as shown, and processing continues to the next cycle. If an external event is injected to the model at some time, t ext (no earlier than the current clock and no later than tN), the clock is advanced to t ext. If t ext == tN the output is generated. Then the input is processed by the confluent or external event transition function, depending on whether t ext coincides with tN or not. tL =: t tN =: t + ta(s) When receive m if m!= null and t < tN, s :=  ext (s,t-tN,m) if m!= null and t == tN, s :=  con (s,t-tN,m) if m= null and t == tN, s =:  int (s) s =: s init tL =: 0 tN =: ta(s init ) m timeline (abstract or logica) inject at time t tN tL Legend: m = message s = state t = clock time tL = time of last event tN = time of next event If t == tN generate output (s)

24 coordinator simulator Component tN tN. tL After each transition tN = t + ta(), tL = t simulator Component tN tN. tL simulator Component tN tN. tL Coupled Model 1 nextTN 2. outTN 3 getOut 4 sendOut 5 applyDelt Basic DEVS Simulation Protocol Each simulator reacts to the incoming message as follows: If it is imminent and its input message is empty, then it invokes its model’s internal transition function If it is imminent and its input message is not empty, it invokes its model’s confluence transition function If is not imminent and its input message is not empty, it invokes its model’s external transition function If is not imminent and its input message is empty then nothing happens. Coupled Model Coordinator: 1. Coordinator sends nextTN to request tN from each of the simulators. 2.All the simulators reply with their tNs in the outTN message to the coordinator 3.Coordinator sends to each simulator a getOut message containing the global tN (the minimum of the tNs) 4. Each simulator checks if it is imminent (its tN = global tN) and if so, returns the output of its model in a message to the coordinator in a sendOut message. 5. Coordinator uses the coupling specification to distribute the outputs as accumulated messages back to the simulators in an applyDelt message to the simulators – for those simulators not receiving any input, the messages sent are empty. For a coupled model with atomic model components, a coordinator is assigned to it and coupledSimulators are assigned to its components. In the basic DEVS Simulation Protocol, the coordinator is responsible for stepping simulators through the cycle of activities shown.

25 DEVS as the basis for Network Centric M&S Network Centric Middleware – NCES message DEVS Model Translator DEVS Model Translator message DEVS Model Translator Diff Eqn. Systems Diff Eqn. Systems Discrete Time Systems Discrete Event Formalisms Simulator


Download ppt "Approach and Techniques for Building Component-based Simulation Models Bernard P. Zeigler, Ph.D. Hessam S. Sarjoughian, Ph.D. Arizona Center for Integrative."

Similar presentations


Ads by Google