220 likes | 472 Views
„Component-Based“ Modeling and Simulation. An Exploration based on James II. A.M. Uhrmacher University of Rostock. Computer science department Modeling & Simulation group. Definitions – Model and Simulation.
E N D
„Component-Based“ Modeling and Simulation An Exploration based on James II A.M. Uhrmacher University of Rostock Computer science department Modeling & Simulation group
Definitions – Model and Simulation • „A model (M) for a system (S) and an experiment (E) is anything to which the experiment (E) can be applied to answer questions about the system (S). (Minsky 1965) • „A simulation is an experiment performed on a model“ (Korn/Wait 1991)
Component-Based Approach • Component – A physical, replaceable part of a system that packages implementation and provides the realization of a set of interfaces. (OMG 99) • A component-based model design facilitates the development of individual models on demand • A component-based design of a simulation system supports the development of individual simulation systems on demand
Based on DEVS • A modelling formalism based on DEVS • hierarchical composition, • atomic and coupled models, • closed under composition • extended • by means of reflection which supports the creation, deletion and migration of models • by peripheral ports via which external software and simulation interact • by time models to relate resource consumption and simulation time • by variable ports to support plasticity • by semantically enriched couplings • Basis of the simulation system James (Java-Based Agent Modelling Environment for Simulation)
Discrete Event Systems Specification DEVS = < X, Y, S, sinit, dint, dext, ta, l > Zeigler, 1984
DEVS & Dynamic Structures • DEVS models support a modular, hierarchical construction of discrete event models • Reflective models support “modularity” with respect to the temporal dimension. c s1 ta = c s31 x = b x = c s4 x = b ta = a s7 s3 x = b s5 x = b s2 ta = f s6 s51 ta = f x = c b d b
regulator gene operator region genes coding for the 5 enzymes needed to synthesize tryptophan promoter region binding site for RNA polymerase RNA polymerase Application: The Tryptophan Operon A Repressible Operon in the Presence of a Corepressor RNA polymerase is unable to transcribe the genes needed to synthesize tryptophan inactive repressor protein active repressor protein corepressor (tryptophan)
after expRandom(unbindingT) free repressing removeCouplingTo(Operon) after deacTime [deacTime < reprTime] Trp accept / / reject / removeCouplingTo(Operon) active deacTime = expRandom(deactT) reprTime = expRandom(reprT) trying to dock after reprTime [reprTime deacTime] / addCouplingTo(Operon) Trp dock Repressor Trp Trp undock / Repressor – StateChart
Model component profile – Meta Model <profile> <name>Enzyme.AAA.Trp.Ecoli.DEVS.Model_1</name> <application_domain>Enzymology;Systems Biology</application_domain> <domain_dependent_classification> GO:0004834 ; EC:4.2.1.20 </domain_dependent_classification> <text_description> Tryptophan Synthase is an enzyme classified by the E.C. number: EC 4.2.1.20. The described enzyme stems from the organism E.coli. It produces Tryptophan and Glycerole-3-phosphate and consumes Serine, Indole-glycerole-3-phosphate The model component is developed using the DEVS formalism. </text_description> <input Serine; Indole-Glycerole-3-phosphate /input> <output Tryptophan; Glycerole-3-phosphate /output> <objective> Analysing the static channeling effect; Analysing the behavior of single enzymes. </objective> ... </profile> EC:4.2.1.20 Serine; Indole-Glycerole-3-phosphate Tryptophan; Glycerole-3-phosphate
Application: Simulation-based Testing of Software • Test cases not predefined but evolve dynamically • Well-suited for testing the interaction of agents (correctness / timeliness) with a virtual environment • Rather Black Box than White Box testing tsim 7:01 tsim 7:04 tsim 7:05 tsim 7:00 Simulation apartment elderly care giver robot zo zo zi zo zo zi 8:00 take medicine ... Autominder
SQL Transparencies 1 - 2 - 4 Summary of 2PC Exercise SQL Exercise: UML Solution SQL-Exercise Description Diane More about SQL? Anna Project: Services in Adhoc Networks, Prof. Koenig Ries, University of Jena & University of Karlsruhe
Requirements Service propagation Focus: • Modular design of the test environment • Specification of protocols as state charts • Easy plug and play • User models at different levels of detail and realism (HBR) Questions: • How much does the dynamic of the network influence the performance of lanes in comparison to flooding? • What criteria decide which length of lanes is optimal? • What is the effect of users moving in groups ? 1 5 9 2 6 10 any cast any cast 3 7 11 4 8 12 Service search
Diane Test environment Node Environment User movement transport protocol Lanes
Need for different types of simulators • Tryptophan synthase / operon • A sequential processor, unpaced • Parallel conservative, unpaced • Parallel optimistic, unpaced • Autominder • sequential processor, paced with an EPI • Diane • All of them • …. How can we support such diverse simulation engines for one model?
Which implements • A sequential processor, unpaced • A sequential processor, paced • A sequential processor, paced with an external process interface for the SUT (Software under Test) • A sequential processor, unpaced with an EPI • A conservative, unpaced processor • A conservative, paced processor • A conservative, unpaced processor with an EPI • A conservative, paced processor with an EPI • A sequential processor, unpaced for integration • ….
RC C RC Seq Seq S Seq Seq C … Seq C C S Seq Seq … S S S S Model and Dynamic Simulation Tree Structure cell bulk Enzyme 1 Enzyme n … alpha beta alpha beta
Evaluation of Performance by Meta Simulation • Meta-Simulation can be used to select appropriate simulation algorithms, depending on model and hardware properties • Facilitates evaluation of simulation approaches Application Model Simulator Model Infrastructure Model Simulation Simulator
Conclusion Applications • Cell biology, e.g. Tryptophan Synthase, just at the beginning wnt signalling pathway • Software testing, Diane (services in ad-hoc networks) Methods • Focus on Devs models and variants, • Different parallel, distributed, paced, unpaced (discrete-event) simulator components • A set of partitioning and load-balancing components • Meta simulation to help a performance-oriented exploitation of simulator components Future Work • Integration of • Additional modelling formalisms, e.g. Beta Binders • Additional simulator components, e.g. for continuous simulation • Interaction with verification tools • To support parameter selection and model composition • Exploration of models • Support for a better exploitation of model components