Abstract
We introduce the MoTif (Modular Timed graph transformation) language, which allows one to elegantly model complex control structures for programmed graph transformation. These include modular construction, parallel composition, and a temporal dimension in addition to the usual transformation control structures. The first part of this contribution formally introduces MoTif and its semantics is based on the Discrete EVent system Specification (DEVS) formalism which allows for highly modular, hierarchical modelling of timed, reactive systems. In MoTif, graphs are embedded in events and individual transformation rules are embedded in atomic DEVS models. A side effect of the use of DEVS is the introduction of an explicit notion of time. This allows one to model a time-advance for every rule as well as to interrupt (pre-empt) rule execution. In the second part, we design a case study to show how the explicit notion of time allows for the simulation-based design of reactive systems such as modern computer games. We use the well-known game of PacMan as an example and model its dynamics in MoTif. This also allows the modelling of player behaviour, incorporating data about human players’ behaviour, and reaction times. Thus, a model of both player and game is obtained which can be used to evaluate, through simulation, the playability of a game design. We propose a playability performance measure and change the value of some parameters of the PacMan game. For each variant of the game thus obtained, simulation yields a value for the quality of the game. This allows us to choose an “optimal” (from a playability point of view) game configuration. The user model is subsequently replaced by a visual interface to a real player, and the game model is executed using a real-time DEVS simulator.
Similar content being viewed by others
References
Blostein, D., Fahmy, H., Grbavec, A.: Issues in the practical use of graph rewriting. In: Cuny, J.E., Ehrig, H., Engels, G., Rozenberg, G. (eds.) Selected Papers from the 5th International Workshop on Graph Grammars and Their Application to Computer Science. LNCS, vol. 1073, pp. 38–55. Springer, Williamsburg, November 1996
Nickel, U., Niere, J., Zündorf, A.: The FUJABA environment. In: ICSE’00, pp. 742–745. ACM Press, Limerick, June 2000
Lengyel, L., Levendovszky, T., Mezei, G., Charaf, H.: Control flow support in metamodel-based model transformation frameworks. In: EUROCON’05, pp. 595–598. IEEE, Belgrade, November 2005
Agrawal A., Karsai G., Kalmar Z., Neema S., Shi F., Vizhanyo A.: The design of a language for model transformations. SoSym 5(3), 261–288 (2006)
Lengyel L., Levendovszky T., Mezei G., Charaf H.: Model transformation with a visual control flow language. IJCS 1(1), 45–53 (2006)
Schürr, A., Winter, A.J., Zündorf, A.: Graph grammar engineering with PROGRES. In: Schäfer, W., Botella, P. (eds.) 5th European Software Engineering Conference. LNCS, vol. 989, pp. 219–234. Springer, Sitges, September 1995
Amelunxen C., Königs A., Rötschke T., Schürr A.: MOFLON: a standard-compliant metamodeling framework with graph transformations. In: Rensink, A., Warmer, J. (eds) Model Driven Architecture—Foundations and Applications: Second European Conference. LNCS, vol. 4066, pp. 361–375. Springer, Berlin (2006)
Heckel, R.: Graph transformation in a nutshell. In: Proceedings of the School on Foundations of Visual Modelling Techniques (FoVMT 2004) of the SegraVis Research Training Network. ENTCS, vol. 148, no. 1, pp. 187–198. Elsevier (2006)
de Lara, J., Vangheluwe, H.: AToM3: a tool for multi-formalism and meta-modelling. In: Kutsche, R.-D., Weber, H. (eds.) FASE’02. LNCS, vol. 2306, pp. 174–188. Springer, Grenoble, April 2002
Ehrig, H., Engels, G., Kreowski, H.-J., Rozenberg, G.: Handbook of graph grammars and computing by graph transformation. In: Rozenberg, G. (ed.) Foundations, vol. 1. World Scientific Publishing Co. (1997)
Zeigler B.P.: Multifacetted Modelling and Discrete Event Simulation. Academic Press, New York (1984)
Xie, H., Boukerche, A., Zhang, M., Zeigler, B.P.: Design of a QoS-aware service composition and management system in peer-to-peer network aided by DEVS. In: DS-RT, pp. 285–291 (2008)
Lee J.-K., Lim Y.-H., Chi S.-D.: Hierarchical modeling and simulation environment for intelligent transportation systems. Simulation 80(2), 61–76 (2004)
Filippi J.-B., Bisgambiglia P.: JDEVS: an implementation of a DEVS based formal framework for environmental modelling. Environ. Model. Softw. 19(3), 261–274 (2004)
Bolduc J.-S., Vangheluwe, H.: The modelling and simulation package pythonDEVS for classical hierarchical DEVS. McGill University. MSDL Technical Report MSDL-TR-2001-01, June 2001
Mens, T., Van Gorp, P.: A taxonomy of model transformation. In: GraMoT’05. ENTCS, vol. 152, pp. 125–142, Tallinn (Estonia), March 2006
Syriani E., Vangheluwe H.: Programmed graph rewriting with DEVS. In: Nagl, M., Schürr, A. (eds) AGTIVE’07. LNCS, vol. 5088, pp. 136–152. Springer, Kassel (2007)
Guerra E., de Lara J.: Event-driven grammars: relating abstract and concrete levels of visual languages. SoSym 6(6), 317–347 (2007)
Guerra E., de Lara J.: Event-driven grammars: towards the integration of meta-modelling and graph transformation. In: Ehrig, H., Engels, G., Parisi-Presicce, F., Rozenberg, G. (eds) ICGT’04. LNCS, vol. 3256, pp. 54–69. Springer, New York (2004)
Hart P.E., Nilsson N.J., Raphael B.: A formal basis for the heuristic determination of minimum cost paths. IEEE Trans. Syst. Sci. Cybern. 4(3), 100–107 (1968)
Zaitsev A.V., Skorik Y.A.: Mathematical description of sensorimotor reaction time distribution. Human Physiol. 28(4), 494–497 (2002)
Devroye L.: Non-Uniform Random Variate Generation. Springer, New York (1986)
Gyapay, S., Heckel, R., Varró, D.: Graph transformation with time: causality and logical clocks. In: ICGT’02. LNCS, vol. 2505, pp. 120–134. Springer, Barcelona, October 2002
Heckel R., Lajios G., Menge S.: Stochastic graph transformation systems. In: Ehrig, H., Engels, G., Parisi-Presicce, F., Rozenberg, G. (eds) ICGT’04. LNCS, vol. 3256, pp. 243–246. Springer, New York (2004)
Agrawal, A.: Metamodel based model transformation language. In: OOPSLA’03, pp. 386–387. ACM Press, Anaheim (2003)
Vizhanyo A., Agrawal A., Shi F.: Towards generation of efficient transformations. In: Karsai, G., Visser, E. (eds) GPCE’04. LNCS, vol. 3286, pp. 298–316. Springer, New York (2004)
http://www.isis.vanderbilt.edu/projects/gme/. 6 Dec 2008
Blostein D., Schürr A.: Computing with graphs and graph rewriting. SPE 9(3), 1–21 (1999)
Zündorf, A.: Graph pattern matching in PROGRES. In: Ehrig, H., Engels, G., Rozenberg, G. (eds.) Graph Grammars and Their Application to Computer Science. LNCS, vol. 1073, pp. 454–468. Springer, Williamsburg, November 1994
Zündorf, A.: Implementation of the imperative/rule based language PROGRES. Department of Computer Science III, Aachen University of Technology, Germany, Aachener Informatik-Berichte 92-38 (1992)
Fischer, T., Niere, J., Turunski, L., Zündorf, A.: Story diagrams: a new graph rewrite language based on the Unified Modelling Language and Java. In: Ehrig, H., Engels, G., Kreowski, H.-J., Rozenberg, G. (eds.) Theory and Application of Graph Transformations. LNCS, vol. 1764, pp. 296–309. Springer, Paderborn, November 2000
Burmester, S., Giese, H., Hirsch, M., Schilling, D., Tichy, M.: The fujaba real-time tool suite: model-driven development of safety-critical, real-time systems. In: Proceedings of the 27th International Conference on Software Engineering ICSE ’05, pp. 670–671. ACM, New York (2005)
Henkler, S., Greenyer, J., Hirsch, M., Schäfer, W., Alhawash, K., Eckardt, T., Heinzemann, C., Loffler, R., Seibel, A., Giese, H.: Synthesis of timed behavior from scenarios in the Fujaba Real-Time Tool Suite. In: ICSE ’09, pp. 615–618. IEEE Computer Society (2009)
Schürr, A.: Specification of graph translators with triple graph grammars. In: Tinhofer, G. (ed.) Graph-Theoretic Concepts in Computer Science. LNCS, vol. 903, pp. 151–163. Springer, Heidelberg, June 1994
4th International Workshop on Graph-Based Tools: The Contest. September 2008/07/21. [Online]. http://www.fots.ua.ac.be/events/grabats2008/
Taentzer, G.: AGG: a graph transformation environment for modeling and validation of software. In: AGTIVE’03. LNCS, vol. 3062, pp. 446–453. Springer, New York (2004)
Muliawan, O., Schippers, H., Van Gorp, P.: Model driven, Template based, Model Transformer (MoTMoT). http://motmot.sourceforge.net (2005)
Varró D., Balogh A.: The model transformation language of the VIATRA2 framework. Sci. Comput. Program. 68(3), 214–234 (2007)
Syriani, E., Vangheluwe, H.: Programmed graph rewriting with time for simulation-based design. In: Pierantonio, A., Vallecillo, A., Bézivin, J., Gray, J. (eds.) ICMT’08. LNCS, vol. 5063, pp. 91–106. Springer, Zürich, July 2008
Syriani, E.: A multi-paradigm foundation for model transformation language engineering. Ph.D. Thesis, McGill University, February 2011
Ráth I., Bergmann G., Ökrös A., Varró D.: Live model transformations driven by incremental pattern matching. In: Vallecillo, A., Gray, J., Pierantonio, A. (eds) ICMT’08. LNCS, vol. 5063, pp. 107–121. Springer, New York (2008)
Hearnden, D., Lawley, M., Raymond, K.: Incremental model transformation for the evolution of model-driven systems. In: MoDELS’06. LNCS, pp. 321–335 (2006)
Feng, T.H.: Model transformation with hierarchical discrete-event control. Ph.D. Thesis, EECS Department, University of California, Berkeley, USA, May 2009
Simulink User’s Guide. MathWorks, Natick, USA. March 2010
Dormoy, F.X.: SCADE 6: A Model Based Solution for Safety Critical Software Development. Esterel Technologies, Toulouse (2007)
Chow A.C.-H., Zeigler B.P.: Parallel DEVS: a parallel, hierarchical, modular modeling formalism. TSCS 13, 55–67 (1996)
Hunicke, R.: The case for dynamic difficulty adjustment in games. In: Proccedings of the ACM SIGCHI International Conference on Advances in Computer Entertainment Technology, pp. 429–433. ACM, Valencia (2005)
Author information
Authors and Affiliations
Corresponding author
Additional information
Communicated by Prof. Robert France.
Rights and permissions
About this article
Cite this article
Syriani, E., Vangheluwe, H. A modular timed graph transformation language for simulation-based design. Softw Syst Model 12, 387–414 (2013). https://doi.org/10.1007/s10270-011-0205-0
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10270-011-0205-0