170 likes | 364 Views
CoSMoS: A Visual Environment for Component-Based Modeling, Experimental Design, and Simulation. Hessam Sarjoughian sarjoughian@asu.edu ACIMS Dept. of Computer Science and Engineering School of Computing and Informatics Arizona State University, Tempe, AZ, USA. Vignesh Elamvazhuthi
E N D
CoSMoS: A Visual Environment for Component-Based Modeling, Experimental Design, and Simulation Hessam Sarjoughian sarjoughian@asu.edu ACIMS Dept. of Computer Science and Engineering School of Computing and Informatics Arizona State University, Tempe, AZ, USA Vignesh Elamvazhuthi vignesh_elamvazhuthi@emc.com Content Management and Archiving EMC Corporation, CA, USA
Model Specification Software Models Paper/pencil Standalone tools Simulation Protocols Programming Languages Eclipse IDEs simulators Standards Integrated M&S Development Environment Motivation M&S research and practices: various combinations of methods, tools, and processes spanning software engineering and modeling and simulation are commonly used Simulation modeling is complex • Theoretical models are domain-neutral • Visual modeling notations are restrictive • Domain knowledge is unstructured • Automated code generation is incomplete • Design of experiments are unconstrained Modeling & Simulation
Ptolemy II: • pre-built components can be visually synthesized; • domain-specific model libraries reduce efforts in model development tool software-centric High Level Architecture with Federation Development Process are aimed at simplifying and reducing cost/effort M&S activities such as simulation validation Some M&S Frameworks • Many modeling approaches exist • General-purpose and domain-specific, e.g., • DEVS • Opnet • Ptolemy • SimEvents
High-Level Model Design Simulation Model Development Modeling & Simulation Lifecycle • Common steps (a simplified view) • Conceptual or (Semi-)Formal specification • Software design • Code development • Simulation experiments • Evaluating model dynamics public void deltext(double e, msg x){ Continue(e); if (phaseIs("passive")) for (int i=0; i< x.getLength();i++) if (messageOnPort(x,"in",i)){ job = x.getValOnPort("in",i); holdIn("busy",processing_time);} } Experiments
started in 2001 modeling Visual Logical Simulation Modeling Modeling language Markup Persistent Model Language Modeling Translators Component-Based System Modeler (CoSMo) • Specifying a family of models • System-theoretic component models • supports DEVS • supports XML-schema • can support other component-based models • e.g., differential equation models • Model persistence • Full structure, partial behavior, and complexity metrics
started in 1996 simulation DEVS-Suite Simulator • A discrete-event simulator supporting parallel DEVS modeling formalism • DEVSJAVA • Logical and soft real-time execution • Interactions (messages) is animated • Requires compiled simulation code • DEVS Tracking Environment • Design of experiments for any component’s I/O • Data collection and storage (tabular and CSV) • TimeView • Generating I/O time trajectories with select state variables
CoSMoS: Concept and Base Architecture models manufacturing MIPS32 SOA translators connectivity schemes DEVS- Suite simulatable, non-simulatable code DEVS XML CA data sets repositories CoSMo translator translator component-based visualization CDNS CA: Cellular Automata SOA: Service Oriented Architecture CDNS: Collaborative Distributed Network System
Select database Select an existing template model or create new Database model Select instance template Model Development model and create its instance models Partial Transform DEVS-Suite instance models Models Add behavior to simulation models Completed and compiled Select and load DEVS-Suite files simulation models Experimentation Design and Configuration JVM Select visualization modes ( SimView, TimeView and Select Tracking Log) input/output ports of models for tracking Execute model Simulation SimView Tracking Log TimeView Process Lifecycle Models– component-based model specification Repositories – persistent models Visualization – • Modelnotation for defining model specifications • Simulationplots/graphs for simulations Code – Simulation modelgenerates behavior Translators – generating simulation code from model specifications Data – simulated model dynamics
Unique Instance Model Names Specialization family of Instance Template Models are systematically mapped to multiple Instance Models Primitive Models Composite Models 10
Root Mb_models <Name of Database 1> <Name of Database 2> <Name of Database 3> JAVA Models NSM Models GeneratedModelsDEVS_Suite CompiledModelsDEVS_Suite Database1.mdb XML Models Model2.Java Model3.Java Model1.Java Model2.class continuous Model3.class Model1.class SES DTD Models SES XSD Models CoSMo DTD Models discrete-event Model/Data Categories
Consistency: Models and Code 1-to-1 relationship between logical model and generated code holds (uni-directional) 13
Generation/Viewing of Simulation Results animation tabulated results time trajectories
A Comparison: Visual Complexity • Logical components with messages among ports and couplings are animated • Monitoring components represent time-based trajectories (trend charts) in the model layout. • Trajectory viewers refers to the different views that show up on simulation. • * Pops-up dialog boxes to select the trajectory viewers. 15
? Summary Integrated Modeling and Simulation with CoSMoS: First Generation
DEVS-Suite and CoSMoS • DEVS-Suite • http://devs-suitesim.sourceforge.net/ • CoSMo and CoSMoS (soon will be made available at SourceForge)