搜档网
当前位置:搜档网 › An Introduction to Computer Automated Multi-Paradigm Modeling

An Introduction to Computer Automated Multi-Paradigm Modeling

An Introduction to Computer Automated Multi-Paradigm Modeling
An Introduction to Computer Automated Multi-Paradigm Modeling

An Introduction to Computer Automated Multi-Paradigm

Modeling

Pieter J.Mosterman and Hans Vangheluwe

May26,2004

Abstract

Modeling and simulation are quickly becoming the primary enablers for complex system design.They allow the representation of intricate knowledge at various levels of abstraction and allow automated analysis

as well as synthesis.The heterogeneity of the design process as much as of the system itself,however,

requires a manifold of formalisms tailored to the speci?c task at hand.Ef?cient design approaches aim to

combine different models of a system under study and maximally utilize the knowledge captured in them.

Computer Automated Multi-Paradigm Modeling(CAMPaM)is the emerging?eld that addresses the issues

involved and tries to formulate a domain independent framework along three dimensions:(i)multiple levels

of abstraction,(ii)multi-formalism modeling,and(iii)meta-modeling.This article presents an overview of

the CAMPaM?eld and shows how transformations assume a central place.It is show how graph grammars

allow for explicit modelling of transformations.

1Introduction

Modern engineered systems have reached a complexity that requires systematic design methodologies and model based approaches to ensure correct and competitive realization.In particular,the use of digital con-trollers has proven to be dif?cult to manage as small errors in their design may lead to catastrophic failures.In addition,the interdependencies in the software that implements the control algorithms are dif?cult to oversee, which only exacerbates with the increasing size of embedded software.Similarly,the interdependencies be-tween controllers scattered about the control system are dif?cult to manage.Their effects as well as the subtle interaction between information processing components on the one hand and the physical environment on the other hand are dif?cult to analyze.

In this article,we us a power window system as typically found in modern automobiles[42]as a running example.Figure1illustrates how a worm gear is used to rotate the main lever of a scissor type lift mechanism which contains a supporting rod in addition to the lever.This mechanism moves the window up and down between the bottom and top of the frame.A DC motor connects to the worm gear to power the rotation as commanded by the controller.An important consideration in the design of this system is the potential presence of an obstacle(such as a passenger’s arm)between the window and the frame.

The design of such a system progresses through a number of stages that may or may not use different models of the components and subsystems.For example,in the initial design stages,discrete-event models may be used to design the hierarchical control structure of the main behavior(i.e.,the driver can command the win-dow to move;moving decomposes into up and down).In more advanced design stages,the models become increasingly detailed(e.g.,adding data acquisition effects)and may include continuous-time and power effects (e.g.,to simulate the current drawn by the DC motor).In addition to this,system integration requires increas-ingly comprehensive analyses that involve different models used in designing different aspects of the system’s

Figure1:A power window system.

functionality.For example,the model of the lift mechanism may be designed using bond graphs[30]while the main controller may be modeled using Statecharts[25]and the pulse-width modulation of the DC motor may be modeled using time-based block diagrams[48].

Comprehensive design and analysis is the main topic of new holistic design paradigms such as mechatron-ics[52]and System-on-Chip[45]).These appoaches aim to avoid overspeci?cation and to attain optimal performance.These design paradigms require many different levels of explanation,different theories,and modeling languages.In general,complex systems are becoming increasingly heterogeneous because of the integration of different implementation technologies in the modern design process.In addition,the many engi-neering disciplines that are involved in system design all have developed domain and problem speci?c(often proprietary)formalisms to match their needs optimally.

To solve address these complex systems issues,designers turn to modeling and simulation technologies. Whereas in the early history of the?eld of control engineering,differential equation models could still be directly derived from the system,the complexity of systems has increased far beyond that.For example,the need to defer expensive prototyping while obtaining maximum con?dence in the design requires models with extreme detail that incorporate many implementation effects.Sophisticated modeling languages facilitate these requirements as model design can be at a high conceptual level.This trend is very manifest in software design where there is a shift from programming software to modeling it.In particular,the Model Driven Architecture (MDA)[58]focuses on the explicit modelling of software design speci?cations as well as their tranformation from a platform-independent abstraction level,via a platform-speci?c abstraction level,to the?nal code level. Multi-paradigm techniques have been successfully applied in the?eld of software architectures[21],control system design[57],model integrated computing[50],and tool interoperability[16].To advance the state of the art and to accumulate knowledge scattered across domains,a domain independent framework for com-plex systems development is needed.The emerging?eld of Computer Automated Multi-Paradigm Modeling (CAMPaM)[43,55,37]aims to achieve this by adressing and integrating three orthogonal directions of re-search:

1.model abstraction deals with the different levels of detail of models and the relationship between these

models;

2.multi-formalism modeling deals with coupling of and transforming between the manifold of formalisms

used;

Figure2:Low order model of power window behavior.

3.meta-modeling deals with the description of modeling formalisms and their domain speci?c aspects. CAMPaM explores the possible combinations of these notions to provide an application and domain inde-pendent framework,(i)to combine,transform and relate formalisms,(ii)to generate maximally constrained domain-and problem-speci?c formalisms,methods,and tools,and(iii)to verify consistency between multiple views.This is a powerful approach that allows the generation(instantiation)of domain and problem speci?c methods,formalisms,and tools.Thanks to a common meta language,these different instances can be integrated by combination,layering,heterogeneous re?nement,and multiple views[19,28,33,57].When extended with model transformation,multi-paradigm modeling facilitates a suite of technologies and applications that manip-ulate a model into a different representation,possibly changing the abstraction,partitioning,and hierarchical structure.

This article gives an overview of CAMPaM.It?rst presents the separate dimensions of CAMPaM in Section2. This will repeatedly highlight the importance of transformations.In Section3,the different dimensions are then explicitly related to the ubiquitous transformation concept.Next,Section4concentrates on the execution of heterogeneous models.Section5then presents the conclusions of this contribution.

2CAMPaM:The Three Dimensions

A conceptual(as opposed to physical)model is the cross-product of the system under scrutiny,the level of abstraction,and the formalism.In the proceeding,when a model is referred to,a conceptual model is meant.

2.1Abstraction

A model is designed to solve a problem.How well it suits this purpose determines its quality.As such,a system has in?nitely many models that each can be best for a given task.This task notion is captured by the level of abstraction determined by the perspective one has on a system,the problem to be solved and the background of the model designer.

For example,to investigate the requirement of the power window in Fig.1that the window be rolled down10 [cm]in case of an object between the window and the frame,a continuous-time model is needed.This can be a model of low order as shown in Fig.2where a Simulink[48]continuous-time based block diagram is shown that is of second order.It consists of an actuator part that converts the control signals up and down before they enter the window part that consists of a gain,force integrator,and then angular velocity integrator.Viscous friction determines the force from the velocity and feeds back negatively.

In order to evaluate the requirement that the force on the object shall not exceed100[N],a more detailed model

Figure3:Higher order model of power window behavior.

is required.A possible model is shown in Fig.3.The actuator takes the two control signals and integrates their voltage into an angular velocity.This angular velocity drives the worm gear which rotates with a different velocity.The difference between the two,through some gain is the torque acting on the gear.This torque passes through two gains,the?rst one is because of the gear ratio and the next one is because of the effect of the main lever.The result is a force moving the window.The friction force that also acts on the window is computed as a nonlinear function of the window velocity and position.Note that this model is at a different level of abstraction(more detailed),yet it is still formulated using the same formalism:a continuous-time based block diagram.

Systematically and automatically deriving models of different complexity signi?cantly increases productivity as well as quality of models.It also cross-correlates different modeling efforts.Note that changes between levels of abstraction may involve using different formalimsm,but not necessarily so,as illustrated by the power window example.

In general,the abstraction process can be considered a type of transformation invariant to some properties (usually behavioural)of the system.The challenge is to model these transformations,and use such models to automate model abstraction and abstraction level selection.This facilitates many applications.For example,in optimization,increasingly complex models may be more likely to?nd a global optimum[23].Another example is the use of one base model that embodies as much detail as possible for any given task.This model can be implemented as less detailed models automatically derived from it for the different design and operation tasks (e.g.,control design,performance assessment,and model-based diagnosis)[36].Another possible application is in numerical solvers that adapt the complexity of the model to the ef?ciency requirements(e.g.,real-time simulation constraints)[29].In reactive learning environments(microworlds),increasingly adding detail to the world model allows the use of a challenging environment for students at different levels of pro?ciency[39]. Note that in general it may be possible to automatically add model detail as well as to automatically reduce complexity of a base model[6].

2.2Formalism

Independent from the changes in abstraction level,changes in the modeling formalism can be made.A change in formalism may induce a change in abstraction level,but this is not necessary.What formalism to use depends on the desired level of abstraction,but also on the data available to calibrate the model,on available numerical solvers(or more general,what tools facilitate the desired analyses),and,as indicated earlier,what problem needs to be solved.

For example,the design of the power window controller is most naturally expressed in the Statechart formalism [26,27].A possible implementation using State?ow[49]is shown in Fig.4.The controller is either in its neutral,moveUp or moveDown state.Hierarchy is used,e.g.,to transition from either moveUp or moveDown to neutral when the cmdStop event occurs.Upon transition,the up event is generated.

Figure4:Statechart of the power window control.

Figure5:State transition diagram of the power window control.

Because the hierarchical nature of Statecharts may hamper analysis,it may be desirable to transform the hierar-chical state transition diagram into a?at state transition diagram[31].1The equivalent state transition diagram is shown in Fig.5.Since state transition diagrams are a proper subset of Statecharts,a more illustrative formal-ism transformation is given by the transformation to the equivalent Petri net[44]shown in Fig.6.Similar to the ?attening of a hierarchical state machine to facilitate analysis,the transformation into a Petri net representation may allow for different types of analysis(such as static deadlock checks)otherwise not possible.

A formalism consists of a syntactic and a semantic part.The syntactic part is the form and structure of valid models and can be textual or graphical.It is typically separated into a concrete and an abstract part,where the former pertains to the actual appearance while the latter is about how the language elements may be connected (e.g.,that an assignment has a left-hand side and a right-hand side).

The semantic part concerns the meaning of the formalism constructs.It can be speci?ed in an operational manner which captures explicitly how a model can be executed.Alternately,a denotational or transformational speci?cation can be given by providing rules to map a model in a given formalism onto an equivalent model in a different formalism for which a semantics is available.For example,the Statechart model in Fig.4can be mapped onto the behaviourally equivalent Petri net in Fig.6.Note that,in a sense,the operational approach is

Figure6:Petri net model of the power window control.

also one of transformation as it transforms an executable speci?cation into a simulation trace.

Formalism transformations allow one to:

Generate a functional model from software or even execution trace(e.g.,a solver procedure can be synthesized from the concepts that are part of the domain speci?c ontology,i.e.,function calls,and their respective execution ordering);

Automate the generation of different views on a system(e.g.,scenario diagrams from a functional model) or even an implementation model when translating to a domain speci?c formalism;

Automate design by generating speci?cations from requirements,ultimately leading to automated code synthesis(or at least stub generation),which,in turn,can be integrated in an automated optimization and run-time architecture recon?guration scheme for hardware and software,or software only(e.g.,for System-on-Chip applications[45]);

Automatically derive a recon?guration model for guiding run-time system changes from functional and architectural models[3,32];

Use best-of-class methods and tools by generating the required data and model representation format to prevent inconsistencies at the boundaries between engineering teams,engineering software,and multi-ple modeling paradigms,and to enable the sharing and coordinating of information?ow with minimal overhead[18].

In addition to facilitating usage of multiple formalisms in isolation,it should be possible to combine and even integrate models that use different multiple formalisms by means of coupling and transformation.This multi-formalism modeling is often facilitated on the semantic level by providing a suf?ciently general execu-tion mechanism for many different formalisms to map their semantics onto.Examples of this are the DEVS formalism[59,54,56],Ptolemy[8],and S-functions[48].

2.3Meta-modeling

The third CAMPaM dimension concentrates on the modeling of modeling formalisms,i.e.,meta-modeling[2, 22].To quickly generate domain speci?c and tailored formalisms and their editors,modeling them is the most

Figure7:Statecharts meta-model.

ef?cient approach provided that a meta-modeling tool automatically generates the formalism-speci?c tools. Because a meta-model is a model in its own right,it requires a formalism to be expressed in.This meta-formalism can again be modeled by a meta-meta-model.

To illustrate,consider the meta-model of the Statechart formalism as used in Fig.4to model part of the power window control.The basis of the formalism is the state transition diagram,which consists of States,T ransitions, Conditions,Actions,and an Initial state transition.These entities are marked by rectangles in the meta model. Transitions connect states,indicated by the directed relations.Each state may have0or more transitions exiting it as marked by the0:N cardinality.Similarly,each state may have0:N transitions entering it.On the other hand,a transition can exit from one and only one state and enter one and only one other,indicated by the1:1 cardinalities.Also,a state may have one initial transition connected to it and the initial transition can only connect to one and only one state.Each transition may contain a condition and an action,indicated by the diamond connection.

To extend this state transition diagram meta model to include Statecharts2the State,Initial,and T ransition entities are all derived from one Element entity.Now,by allowing states to contain elements,hierarchy is facilitated.Furthermore,each state is specialized into an AND State or an OR State.All states in an AND state are active when the containing state is active whereas in an OR state only one of the contained states is active (the traditional state transition diagram notion).These constraints are not explicitly modeled here for clarity. In many research endeavors,meta-modeling is applied to capture the syntax of a class of models.Models of transformation allow a generalization of this to include the semantics as well.This then becomes the enabling technology for(i)the design of tailored formalisms and tools by constituting an in?nitely?ne grained spec-trum of formalisms,(ii)the use of domain speci?c formalisms and tools to facilitate high level model-based programming,(iii)including domain constraints within formalisms,and(iv)?nding analogies,similarities, and differences between models of different system views and aspects.

An illustrative example of meta-modeling is its use to facilitate exchange of models and data between tools for Computer Aided Software/Systems Engineering(CASE).The corresponding CDIF(CASE Data Interchange Format)project[20]proved meta-modeling to be an industrial strength technology.A crucial aspect of CDIF was its extensibility.New formalisms could be developed and used in exchange transactions by?rst making the model of the formalism available using the meta formalism of CDIF,an entity-attribute-relationship(EAR) type formalism(a proven powerful formalism for modeling the syntax of many types of formalisms).The CASE tool?rst processes the meta-model so it‘understands’the data that follows.The only formalism that needs to be shared between tools is the EAR one that speci?es the meta models.

Figure8:Window force vs.position when the top(at45[cm])is reached.

Figure9:Discrete event model of plant behavior.

2.4Relating the Dimensions

Sofar,the independent dimensions of CAMPaM have been presented.In general,these interact,though,and full bene?ts are reaped when the different dimensions are cross correlated.

An example of this is the translation of a continuous time model into a?nite state representation to validate the control structure designed in Fig.4.This approach is common in analysis and veri?cation approaches that require a?nite state space.For example,Fig.8shows a trajectory in the force-position phase space where the window is commanded from its bottom most position to the top.This trajectory is generated from the model in Fig.3.Based on this,a?nite state discrete model can be derived using a grid as shown by the dashed horizontal and vertical lines in Fig.8.The corresponding?nite state machine is shown in Fig.9.Note that during a normal closing operation the system moves through the sequence of states bot low,top med,top med,top

med that is traversed is an emergency state and should not be reachable by the events in normal operation.It is entered when the object event occurs.The state mid

hi cannot be reached).

Figure10:Window force vs.position when an object(at30[cm])is detected.

3Transformation

In section2,the notion of transformation of models has been a recurring concept.It is a crucial element in model-based endeavours.It forms the glue between the three orthogonal directions of CAMPaM:formalisms, abstraction,and meta-modeling.

As models,meta-models and meta-meta-models are all in essence attributed,typed graphs,we can transform them by means of graph rewriting.The rewriting is speci?ed in the form of models in the graph grammar[14] formalism.These are a generalization,for graphs,of Chomsky grammars.They are composed of rules.Each rule consists of left hand side(LHS)and right hand side(RHS)graphs.Rules are evaluated against an input graph,called the host graph.If a matching is found between the LHS of a rule and a sub-graph of the host graph,then the rule can be applied.When a rule is applied,the matching subgraph of the host graph is replaced by the RHS of the rule.Rules can have applicability conditions,as well as actions to be performed when the rule is applied.Some graph rewriting systems have control mechanisms to determine the order in which rules are checked.When multiple matches are found,non-determinism occurs.This non-determinism may be resolved in three ways.Evaluation can be sequentialised,a random matching rule may be chosen,or,if no con?icts exist,rules may be evaluated in parallel.Having these three possibilities gives one the power to model a variety of operational semantics of formalisms.

We are typically interested in three kinds of transformations of models.The?rst is model execution(de?ning the operational semantics of the formalism).The second is model transformation into another formalism(ex-pressing the semantics of models in one formalism by mapping onto a known formalism).A special case of this is when the target formalism is textual.In this case it is possible to describe by means of meta-modelling, the Abstract Syntax Graph of the textual formalism(that is,the intermediary representation used be compilers once they parse a program in text form),in such a way that models in textual formalisms can then be processed as graphs.The third one is model optimization,for example reducing its complexity(maintaining pertinent invariants however).

On the one hand,graph grammars have some advantages over specifying the computation to be done in the graph using a traditional programming language.Graph grammars are a natural,formal,visual,declarative and high-level representation of the https://www.sodocs.net/doc/c918748566.html,putations are thus speci?ed by means of high-level models, expressed in the graph grammar formalism.The theoretical foundations of graph rewriting systems may assist in proving correctness and convergence properties of the transformation tool.On the other hand,the use of graph grammars is constrained by ef?ciency.In the most general case,subgraph isomorphism testing is NP-complete.However,the use of small subgraphs on the LHS of graph grammar rules,as well as using node and edge types and attributes can greatly reduce the search space.This is the case with the vast majority of

formalisms we are interested in.It is noted that a possible performance penalty is a small price to pay for explicit,re-usable,easy to maintain models of transformation.In cases where performance is a real bottleneck, graph grammars can still be used as an executable speci?cation to be used as the starting point for a manual implementation.

We have implemented the above CAMPaM concepts in AToM3,A Tool for Multi-formalism and Meta-Modelling.in which multi-abstraction,multi-formalism,and meta-modelling are combined.AToM3’s design has been described in[9,13].The power of AToM3has been demonstrated by modelling the DEVS formalism [34],Petri Nets and Statecharts[10],GPSS[12],Causal Block Diagrams[46],and?ow diagrams[11].

4Hybrid Dynamic Systems

The best models are elegant models and CAMPaM supports this maxim by facilitating the construction of tai-lored domain-speci?c modeling languages.To execute models designed using these sophisticated formalisms, interpreters are required that translate the high level constructs into low level speci?cations,e.g.,in terms of differential equations,discrete event behavior or a combination of the two.

4.1Combining Executable Formalisms

At the execution level,there are again many different formalisms,especially in the discrete event domain.For example,Petri nets(and their variants such as timed,colored,and stochastic nets)have operational seman-tics that allow simulation.VHDL[24]allows for simulation,where the event driven nature of the simulator is of critical importance because of the typically large set of possible events of which only a minor subset is active.DEVS is another language with operational semantics for which simulators exist.In the continuous do-main,differential equations can be executed using numerical solvers.Continuous behavior generation is often based on discretization in time and in the control engineering domain,typically straightforward simulation of continuous behavior is applied by implementing some form of a forward integration algorithm.

The continuous and discrete event formalisms are fundamentally different,though.Dedicated continuous-time numerical solvers for differential and algebraic equations such as used in plant modeling apply numerical algo-rithms that are based on continuity assumptions to increase accuracy and ef?ciency.In addition,such numerical solvers may support implicit modeling,which leads to conceptually simpler and more elegant models in cer-tain cases.Though the model itself may be simpler,its transformation into a trajectory is more complex,which shows how the complexity of the model-solver combination is invariant under behavior-preserving formalism transformations.

In its most general form,execution can be achieved by producing computer code that may even be optimized by weaving the numerical solver code and model execution code together.The CAMPaM technologies can be applied to have model interpretation automatically produce highly optimized code that integrates solver and model characteristics.

Dedicated solvers have their advantage,though.They also allow independent selection of an appropriate nu-merical integration method depending on the characteristics of the simulation trajectories(for example,partic-ular types of stiffness).This is not possible when the solver is built into the model of computation.

The combination of continuous behavior with discrete state changes leads to so-called hybrid dynamic systems3 which have been investigated extensively,driven by the increasing need for comprehensive controller/plant be-havior analysis[5,35,51].As such,hybrid dynamic systems are a key technology in the?eld of CAMPaM. Advances are immediately re?ected in the usefulness of higher level CAMPaM notions.Therefore,it is mean-ingful to give a brief overview of the two basic perspectives.The combined behavior of hybrid dynamic systems

Figure11:Hybrid automata of window behavior.

introduces issues in many aspects such as modeling,simulation,sensitivity analysis and optimization[4].In particular,issues speci?c to simulation include(i)event detection and location,(ii)sequences of discrete tran-sitions,(iii)consistent semantics of hybrid dynamic systems formalisms,(iv)sensitivity to initial conditions, (v)sliding mode behavior[38].

4.2State Centered Execution Model

A canonical representation of hybrid dynamic systems is in terms of hybrid automata[1].These models com-bine continuous behavior in certain discrete states with transitions between them.Behavior in each state is then captured by a set of differential equations while an invariant speci?es the allowed values of continuous variables in this state.Transitions between states can be enabled based on continuous variables crossing thresh-olds.When enabled,they are not enforced to be taken immediately but they do have to be executed before the invariant would be violated(note that the complexity of the differential equations in each state and the invariant may differ between states).A state transition may discontinuously change the values of the variables used in the differential equations and even the set of continuous state variables itself.

To illustrate,consider the state where the window in the power window example reaches the top of the frame. Four states can be identi?ed:

free,the window moves with only actuation and friction forces acting on it;

bottom,the window is at the bottom of the frame with a large reaction force acting on it;

top,the window is at the top of the frame with a large reaction force acting;

obstruct,the window moves between the top of the frame and the bottom with an object stuck between the window and the frame.

This can be modeled by switching the system of ordinary differential equations(ODE)that govern the contin-uous behavior of the system,illustrated by the hybrid automaton in Fig.11.Here,the transition conditions are given along the transition(e.g.,x top),the invariants in a state are labeled‘inv:’,and the active ODE is la-beled‘du:’(based on the action during the state’s active period).When an event occurs,the system moves into a different mode of operation.After the mode change,the state variables in the new mode have to be initialized appropriately based on the values in the previous mode when no explicit function is given in the transition action part,the identity mapping is assumed.Note that transitions between states may cause the complexity of the ODE to change the number of continuous states.For example,when the window reaches the top of the frame,a stiff dampened spring effect becomes active that adds a continuous state to the ODE.

The hybrid automata perspective is discrete event centered and provides an explicit representation.This is

bene?cial to analysis and synthesis activities.However,it suffers from a combinatorial explosion of discrete states when there are many interacting local discrete state changes.

4.3Equation Centered Execution Models

An alternative approach relies on a system of guarded differential and algebraic equations.This approach is centered around differential equations(e.g.,Modelica[17],MA SIM[41],VHDL-AMS[7],χ[53]).Events are generated by continuous variables crossing thresholds which may enable and disable equations.The different discrete states with continuous behavior are implicit and invariants that capture the domain of continuous be-havior in each state are typically not used.Instead,events have‘must-?re’semantics,i.e.,an enabled transition is immediately executed.

Using guarded equations,the power window system can be modeled as

0αtop v window v de f orm1αtop F ob ject

0C ob ject˙F de f orm v de f orm

(1)

0F ob ject F de f orm R ob ject v de f orm

where the mode selection variableαtop is determined by the window being at the top of the frame or not;

x window x topαtop(2) Here,the dampened spring parameters are C ob ject to model the spring and R ob ject to model the damping.The rate of deformation of the object is represented by v de f orm and the corresponding force by F de f orm.This force is the difference of the toal force acting on the object,F ob ject and the force required to compensate the dissipation (R ob ject v de f orm).

Discontinuous changes in continuous variables are modeled implicitly by activating algebraic constraints that reduce the state space dimension and thus require an instantaneous projection into the new space[40].For example,if the frame top is not modeled by a dampened spring,the window velocity is instantly forced to zero when x window x top by replacing Eq.1with

0αtop v window1αtop F ob ject(3)

The implicit modeling approach(both in terms of the discrete states as well as the continuous equations)allows a succinct speci?cation of a large number of discrete state changes but simulation is about the only analysis tool that can handle it.Besides,to perform simulation,the numerical solver has to be extended with additional operations to make the implicit jumps in continuous states explicit.

5Conclusions

This paper has introduced the emerging?eld of Computer Automated Multi-Paradigm Modeling(CAMPaM), which tries to develop a domain-independent framework for multi-paradigm modeling that consists of three dimensions:(i)multi-abstraction,(ii)multiple formalisms,and(iii)meta-modeling.Transformations are pre-sented as an operator within and between the different dimensions.Hybrid dynamic systems have been pre-sented as the underlying execution mechanisms of multi-paradigm models.

CAMPaM is of great use in the?eld of complex systems design,analysis,and synthesis.For example,its use in control system technology is presented in a forthcoming special issue of IEEE T RANSACTIONS ON C ONTROL S YSTEM T ECHNOLOGY on CAMPaM[15].To learn more about the theory and methodology of CAMPaM, the interested reader is referred to a special issue of ACM T RANSACTIONS ON M ODELING AND C OMPUTER S IMULATION[43]on the same topic.

6Acknowledgements

The authors wish to acknowledge extensive discussions on the topic of CAMPaM with Juan de Lara. Finally,Adelinde Uhrmacher and Ernie Page are thanked for their efforts in organizing the Dagstuhl seminar on Grand Challenges.

References

[1]Rajeev Alur,Costas Courcoubetis,Thomas A.Henzinger,and Pei-Hsin Ho.Hybrid automata:An algo-

rithmic approach to the speci?cation and veri?cation of hybrid systems.In R.L.Grossman,A.Nerode,

A.P.Ravn,and H.Rischel,editors,Lecture Notes in Computer Science,volume736,pages209–229.

Springer-Verlag,1993.

[2]Colin Atkinson.Metamodeling for Distributed Object Environments.In First International Enterprise

Distributed Object Computing Workshop(EDOC’97),pages90–101,Brisbane,Australia,1997.

[3]Ted Bapty,Sandeep Neema,Jason Scott,Janos Sztipanovits,and Sameh Asaad.Model-Integrated Tools

for the Design of Dynamically Recon?gurable Systems.Technical Report ISIS-99-01,Vanderbilt Uni-versity,Nashville,TN,2000.

[4]Paul I.Barton and Cha Kun Lee.Modeling,simulation,sensitivity analysis and optimization of hybrid

systems.ACM Transactions on Modeling and Computer Simulation,12(4),2002.

[5]Maria Domenica Di Benedetto and Alberto L.Sangiovanni-Vincentelli,editors.Hybrid Systems:Com-

putation and Control,volume2034of Lecture Notes in Computer Science.Springer-Verlag,March2001.

[6]Arno P.J.Breunese,Theo J.A.de Vries,Job van Amerongen,and Peter C.Breedveld.Maximizing

Impact of Automation on Modeling and Design.In ASME Dynamic Systems&Control Div.’95,pages 421–430,San Francisco,CA,1995.

[7]Ernst Christen.The VHDL1076.1language for mixed-signal design.EE Times,June1997.

[8]John Davis,II,Ron Galicia,Mudit Goel,Christopher Hylands,Edward A.Lee,Jie Liu,Xiaojun Liu,

Lukito Muliadi,Steve Neuendorffer,John Reekie,Neil Smyth,Jeff Tsay,and Yuhong Xiong.Ptolemy II –heterogeneous concurrent modeling and design in java.https://www.sodocs.net/doc/c918748566.html,,Department of Electrical Engineering and Computer Sciences,University of Califoria at Berkeley,1999.version

0.1.1.

[9]Juan de Lara and Hans Vangheluwe.AToM3:A tool for multi-formalism and meta-modelling.In Eu-

ropean Joint Conference on Theory And Practice of Software(ETAPS),Fundamental Approaches to Software Engineering(FASE),LNCS2306,pages174–188.Springer-Verlag,April2002.Grenoble, France.

[10]Juan de Lara and Hans https://www.sodocs.net/doc/c918748566.html,puter aided multi-paradigm modelling to process petri-nets

and statecharts.In International Conference on Graph Transformations(ICGT),volume2505of Lecture Notes in Computer Science,pages239–253.Springer-Verlag,October2002.Barcelona,Spain. [11]Juan de Lara and Hans https://www.sodocs.net/doc/c918748566.html,ing AToM3as a Meta-CASE tool.In4th International Conference

on Enterprise Information Systems(ICEIS),pages642–649,April2002.Ciudad Real,Spain.

[12]Juan de Lara and Hans https://www.sodocs.net/doc/c918748566.html,ing meta-modelling and graph grammars to process GPSS models.

In Hermann Meuth,editor,16th European Simulation Multi-conference(ESM),pages100–107.Society for Computer Simulation International(SCS),June2002.Darmstadt,Germany.

[13]Juan de Lara Jaramillo,Hans Vangheluwe,and Manuel Alfonseca https://www.sodocs.net/doc/c918748566.html,ing meta-modelling

and graph grammars to create modelling environments.In Paolo Bottoni and Mark Minas,editors, Electronic Notes in Theoretical Computer Science,volume72.Elsevier,February2003.15pages.

http://www.elsevier.nl/locate/entcs/volume72.html.

[14]H.Ehrig,G.Engels,H.-J.Kreowski,and G.Rozenberg.Handbook of Graph Grammars and Computing

by Graph Transformation.Vol.2:Applications,Languages,and Tools.World Scienti?c,1999. [15]Sebastian Engell and Pieter J.Mosterman.Special issue on computer automated multi-paradigm model-

ing.IEEE Transactions on Control System Technology,12(2),March2004.

[16]Johannes Ernst.Data interoperability between CACSD and CASE tools using the CDIF family of stan-

dards.In Proceedings of the1996International Symposium on Computer Aided Control System Design, pages346–351,Dearborn,MI,September1996.

[17]Hilding Elmqvist et al.Modelica tm–a uni?ed object-oriented langauge for physical systems modeling:

Language speci?cation,December1999.version1.3,https://www.sodocs.net/doc/c918748566.html,/.

[18]Michael Fisher.Zero-latency engineering tm.Aviatis Corp.,White Paper,1999.

[19]Paul A.Fishwick.Heterogeneous decomposition and inter-level coupling for combined modeling.In

1991Winter Simulation Conference,pages1120–1128,Phoenix,AZ,1991.

[20]Rony G.Flatscher.Metamodeling in EIA/CDIF meta-metamodel and metamodels.ACM Transactions

on Modeling and Computer Simulation,12(4),2002.

[21]David Garlan,Robert T.Monroe,and David Wile.Acme:An Architecture Description Interchange

Language.In Proceedings of CASCON’97,pages169–183,Toronto,Ontario,November1997. [22]R.Geisler,M.Klar,and C.Pons.Dimensions and Dichotomy in Metamodeling.Technical Report98-5,

TU Berlin,Berlin,Germany,1998.

[23]Andrew Gelsey,Mark Schwabacher,and Don https://www.sodocs.net/doc/c918748566.html,ing modeling knowledge to guide design space

search.Arti?cial Intelligence,101:35–62,1998.

[24]IEEE1076.1Working Group.IEEE standard1076.1-1999,March1999.https://www.sodocs.net/doc/c918748566.html,.

[25]David Harel.Statecharts:A visual formalism for complex systems.Science of Computer Programming,

8:231–274,1987.

[26]David Harel.On visual https://www.sodocs.net/doc/c918748566.html,munications of the ACM,31(5):514–530,May1988.

[27]David Harel and Amnon Naamad.The statemate semantics of statecharts.ACM Transactions on Software

Engineering and Methodology,5(4):293–333,October1996.

[28]M.Jourdan,https://www.sodocs.net/doc/c918748566.html,gnier,F.Maraninchi,and P.Raymond.A multiparadigm language for reactive systems.

In IEEE International Conference on Computer Languages(ICCL),Toulouse,France,1994.

[29]M.S.Kamel,K.S.Ma,and W.H.Enright.ODEXPERT-an expert system to select numerical solvers

for initial value ODE systems.ACM Transactions on Mathematical Software,19(1):44–62,1993.

[30]D.C.Karnopp,D.L.Margolis,and R.C.Rosenberg.Systems Dynamics:A Uni?ed Approach.John Wiley

and Sons,New York,2edition,1990.

[31]Zvi Kohavi.Switching and Finite Automata Theory.McGraw-Hill,Inc.,New York,1978.

[32]Sanjaya Kumar,Devesh Bhatt,Steve Vestal,Bill Wren,John Shackleton,Hazel Shirley,Rashmi Bhatt,

John Golusky,Mark V ojta,John Fischer,Steve Crago,Brian Schott,Robert Parker,and Gary Gardner.

ADAPTERS.In2nd annual Military and Aerospace Applications of Programmable Devices and Tech-nologies Conference,Laurel,MD,September1999.

[33]Akos Ledeczi,Greg Nordstrom,Gabor Karsai,Peter V olgyesi,and Miklos Maroti.On Metamodel Com-

position.In Proceedings of the IEEE International Conference on Control Applications,Mexico City, Mexico,September2001.

[34]Andriy Levytskyy,Eug`e ne J.H.Kerckhoffs,Ernesto Posse,and Hans Vangheluwe.Creating DEVS com-

ponents with the meta-modelling tool AToM3.In Alexander Verbraeck and Vlatka Hlupic,editors,15th European Simulation Symposium(ESS),pages97–103.Society for Modeling and Simulation Interna-tional(SCS),October2003.Delft,The Netherlands.

[35]Nancy Lynch and Bruce Krogh,editors.Hybrid Systems:Computation and Control,volume1790of

Lecture Notes in Computer Science.Springer-Verlag,March2000.

[36]Heˇr man Mann.A versatile modeling and simulation tool for mechatronics control system development.

In1996IEEE Symposium on Computer Aided Control System Design,pages524–529,Dearborn,1996.

[37]Pieter Mosterman and Hans https://www.sodocs.net/doc/c918748566.html,puter automated multi paradigm modeling in control

system design.In Andras Varga,editor,IEEE International Symposium on Computer-Aided Control System Design,pages65–70.IEEE Computer Society Press,September2000.Anchorage,Alaska. [38]Pieter J.Mosterman.An Overview of Hybrid Simulation Phenomena and Their Support by Simulation

Packages.In Frits W.Vaandrager and Jan H.van Schuppen,editors,Hybrid Systems:Computation and Control,volume1569,pages164–177.Lecture Notes in Computer Science;Springer-Verlag,March 1999.

[39]Pieter J.Mosterman.Towards Model Manipulation for Ef?cient and Effective Simulation and Instruc-

tional Methods.In Distributed Modelling and Simulation of Complex Systems for Education,Training and Knowledge Capitalisation,Eze,France,May1999.

[40]Pieter J.Mosterman.Implicit Modeling and Simulation of Discontinuities in Physical System Models.

In S.Engell,S.Kowalewski,and J.Zaytoon,editors,The4th International Conference on Automation of Mixed Processes:Hybrid Dynamic Systems,pages35–40,2000.invited paper.

[41]Pieter J.Mosterman.MA SIM–a hybrid dynamic systems simulator.Technical Report DLR-IB-

515-01/07,Institute of Robotics and Mechatronics,DLR Oberpfaffenhofen,P.O.Box1116,D-82230 Wessling,Germany,2001.

[42]Pieter J.Mosterman,Janos Sztipanovits,and Sebastian https://www.sodocs.net/doc/c918748566.html,puter automated multi-paradigm

modeling in control systems technology.IEEE Transactions on Control System Technology,2003. [43]Pieter J.Mosterman and Hans https://www.sodocs.net/doc/c918748566.html,puter automated multi-paradigm modeling.ACM Trans-

actions on Modeling and Computer Simulation,12(4):1–7,2002.Special Issue Guest Editorial.

[44]Tadao Murata.Petri nets:Properties,analysis and applications.Proceedings of the IEEE,77(4):541–580,

April1989.

[45]Kenneth H.Peters.Migrating to single-chip systems.Embedded Systems Programming,12(4):30–45,

April1999.

[46]Ernesto Posse,Juan de Lara,and Hans Vangheluwe.Processing causal block diagrams with graph-

grammars in AToM3.In European Joint Conference on Theory and Practice of Software(ETAPS),Work-shop on Applied Graph Transformation(AGT),pages23–34,April2002.Grenoble,France.

[47]Manuel A.Pereira Remelhe,Sebastian Engell,Martin Otter,Andr′e Deparade,and Pieter J.Mosterman.

An environment for the integrated modelling of systems with complex continuous and discrete dynamics.

In S.Engell,G.Frehse,and E.Schnieder,editors,Modelling,Analysis,and Design of Hybrid Systems.

Springer-Verlag,Berlin,2002.

[48]S IMULINK.Dynamic System Simulation for Matlab.The MathWorks,Natick,MA,January1997.

[49]State?ow.State?ow User’s Guide.The MathWorks,Natick,MA,2002.

[50]Janos Sztipanovits,Gabor Karsai,and Hubertus Franke.Model-integrated program synthesis environ-

ment.In IEEE Symposium on Engineering of Computer Based Systems,Friedrichshafen,Germany,March 1996.

[51]Frits W.Vaandrager and Jan H.van Schuppen,editors.Hybrid Systems:Computation and Control,

volume1569of Lecture Notes in Computer Science.Springer-Verlag,March1999.

[52]Job van Amerongen.Mechatronic Design.In The7th Mechatronics Forum International Conference,

Atlanta,GA,August2000.plenary paper.

[53]D.A.van Beek,V.Bos,and J.E.Rooda.Declaration of unknowns in hybrid system speci?cation.ACM

Transactions on Modeling and Computer Simulation,12(4),2002.

[54]Hans Vangheluwe.DEVS as a common denominator for multi-formalism hybrid systems modelling.In

Andras Varga,editor,IEEE International Symposium on Computer-Aided Control System Design,pages 129–134.IEEE Computer Society Press,September2000.Anchorage,Alaska.

[55]Hans Vangheluwe and Juan de https://www.sodocs.net/doc/c918748566.html,puter automated multi-paradigm modelling:Meta-modelling

and graph transformation.In S.Chick,P.J.S′a nchez,D Ferrin,and D.J.Morrice,editors,Winter Sim-ulation Conference,pages595–603.IEEE Computer Society Press,December2003.New Orleans, Louisiana.Invited paper.

[56]Hans Vangheluwe and Ghislain C.Vansteenkiste.The cellular automata formalism and its relationship

to DEVS.In Rik Van Landeghem,editor,14th European Simulation Multi-conference(ESM),pages 800–810.Society for Computer Simulation International(SCS),May2000.Ghent,Belgium.

[57]Steve Vestal.Software Architecture Workshop,July1994.

[58]Jos Warmer and Anneke Kleppe.The Object Constraint Language:Getting Your Models Ready for MDA.

Addison-Wesley,2nd edition,2003.

[59]Bernard P.Zeigler.Object-oriented simulation with hierarchical,modular models:intelligent agents and

endomorphic systems.Academic Press,Inc.,San Diego,CA,1990.

相关主题