Dynamic Scope Discovery for Model Transformations

  • Māris Jukšs
  • Clark Verbrugge
  • Dániel Varró
  • Hans Vangheluwe
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8706)


Optimizations to local-search based model transformations typically aim at effectively ordering the traversal of pattern edges to reduce the search space. In this paper we propose a dynamic approach to on-line discovery of rule application areas. Our approach incorporates tracking transformation progress in the input model using temperature-based coloring of model elements. The resulting heat map is used to discover possible rule application scopes ahead of rule execution. Further refinement of scopes is achieved by applying a Naive Bayes (NB) classifier to predict a set of possible match candidates. NB is well suited for the computationally intensive environment of model transformations due to its incremental training phase and low classification overhead. Our design is intended to take a runtime, black-box approach to observing and learning from the transformations as they are executed. Finally, we demonstrate a prototype evaluation of the approach in our transformation tool AToMPM [24] and address the benefits, limitations as well as future applications.


model transformations learning from transformations model transformation optimization supervised learning scope 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    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)Google Scholar
  2. 2.
    Arendt, T., Biermann, E., Jurack, S., Krause, C., Taentzer, G.: Henshin: Advanced concepts and tools for in-place EMF model transformations. In: Petriu, D.C., Rouquette, N., Haugen, Ø. (eds.) MODELS 2010, Part I. LNCS, vol. 6394, pp. 121–135. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  3. 3.
    Balogh, A., Varró, G., Varró, D., Pataricza, A.: Compiling model transformations to ejb3-specific transformer plugins. In: Haddad, H. (ed.) Proceedings of the 2006 ACM Symposium on Applied Computing (SAC), Dijon, France, April 23-27, pp. 1288–1295. ACM (2006)Google Scholar
  4. 4.
    Bravenboer, M., van Dam, A., Olmos, K., Visser, E.: Program transformation with scoped dynamic rewrite rules. Fundam. Inf. 69(1-2), 123–178 (2005)Google Scholar
  5. 5.
    Cordella, L.P., Foggia, P., Sansone, C., Vento, M.: A (sub)graph isomorphism algorithm for matching large graphs. IEEE Transactions on Pattern Analysis and Machine Intelligence 26(10), 1367–1372 (2004)CrossRefGoogle Scholar
  6. 6.
    Fischer, T., Niere, J., Torunski, L., Zündorf, A.: Story diagrams: A new graph transformation language based on UML and Java. In: Ehrig, H., Engels, G., Kreowski, H.-J., Rozenberg, G. (eds.) Graph Transformations 1998. LNCS, vol. 1764, pp. 296–309. Springer, Heidelberg (2000)Google Scholar
  7. 7.
    Geiß, R., Batz, G.V., Grund, D., Hack, S., Szalkowski, A.: GrGen: A fast SPO-based graph rewriting tool. In: Corradini, A., Ehrig, H., Montanari, U., Ribeiro, L., Rozenberg, G. (eds.) ICGT 2006. LNCS, vol. 4178, pp. 383–397. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  8. 8.
    Giavitto, J.L., Godin, C., Michel, O., Prusinkiewicz, P.: Computational models for integrative and developmental biology (2002)Google Scholar
  9. 9.
    Giese, H., Hildebrandt, S., Seibel, A.: Improved flexibility and scalability by interpreting story diagrams. ECEASST 18 (2009)Google Scholar
  10. 10.
    Heckel, R.: Compositional verification of reactive systems specified by graph transformation. In: Astesiano, E. (ed.) ETAPS/FASE 1998. LNCS, vol. 1382, pp. 138–153. Springer, Heidelberg (1998)Google Scholar
  11. 11.
    Horváth, Á., Bergmann, G., Ráth, I., Varró, D.: Experimental assessment of combining pattern matching strategies with viatra2. STTT 12(3-4), 211–230 (2010)CrossRefGoogle Scholar
  12. 12.
    Horváth, Á., Varró, D., Varró, G.: Generic search plans for matching advanced graph patterns. Electronic Communications of the EASST 6 (2007), selected papers of GT-VMT 2007: Graph Transformation and Visual Modelling Techniques (2007)Google Scholar
  13. 13.
    Jouault, F., Allilaire, F., Bézivin, J., Kurtev, I.: ATL: A model transformation tool. Sci. Comput. Program. 72(1-2), 31–39 (2008)CrossRefzbMATHGoogle Scholar
  14. 14.
    Jukšs, M., Verbrugge, C., Elaasar, M., Vangheluwe, H.: Scope in model transformations. Tech. Rep. SOCS-TR-2013.4, McGill University (January 2013)Google Scholar
  15. 15.
    Kolovos, D.S., Paige, R.F., Polack, F.A.C.: The Epsilon Transformation Language. In: Vallecillo, A., Gray, J., Pierantonio, A. (eds.) ICMT 2008. LNCS, vol. 5063, pp. 46–60. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  16. 16.
    Maron, M.E., Kuhns, J.L.: On relevance, probabilistic indexing and information retrieval. J. ACM 7(3), 216–244 (1960)CrossRefGoogle Scholar
  17. 17.
    Mészáros, T., Mezei, G., Levendovszky, T., Asztalos, M.: Manual and automated performance optimization of model transformation systems. STTT 12(3-4), 231–243 (2010)CrossRefGoogle Scholar
  18. 18.
    Muzy, A., Touraille, L., Vangheluwe, H., Michel, O., Hill, D.R., Traoré, M.K.: Activity regions in discrete-event systems. In: Symposium on Theory of Modeling and Simulation - DEVS Integrative M&S Symposium (DEVS 2010), Spring Simulation Conference, Orlando, FL, pp. 176–182. Society for Computer Simulation International, SCS ( April 2010)Google Scholar
  19. 19.
    Potier, M., Spicher, A., Michel, O.: Topological computation of activity regions. In: Proc. of the 2013 ACM SIGSIM Conference on Principles of Advanced Discrete Simulation, SIGSIM-PADS 2013, pp. 337–342. ACM, New York (2013)CrossRefGoogle Scholar
  20. 20.
    Rensink, A.: The GROOVE simulator: A tool for state space generation. In: Pfaltz, J.L., Nagl, M., Böhlen, B. (eds.) AGTIVE 2003. LNCS, vol. 3062, pp. 479–485. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  21. 21.
    Sarkar, M.S., Blostein, D., Cordy, J.R.: GXL - a graph transformation language with scoping and graph parameters (1998)Google Scholar
  22. 22.
    Schürr, A., Winter, A.J., Zndorf, A.: Graph grammar engineering with PROGRES. In: Botella, P., Schäfer, W. (eds.) ESEC 1995. LNCS, vol. 989, pp. 219–234. Springer, Heidelberg (1995)CrossRefGoogle Scholar
  23. 23.
    Syriani, E., Vangheluwe, H.: A modular timed graph transformation language for simulation-based design. Software and Systems Modeling (SoSyM) 12(2), 387–414 (2013)CrossRefGoogle Scholar
  24. 24.
    Syriani, E., Vangheluwe, H., Mannadiar, R., Hansen, C., Mierlo, S.V., Ergin, H.: AToMPM: A web-based modeling environment. In: Demos/Posters/StudentResearch@MoDELS. pp. 21–25. CEUR (2013)Google Scholar
  25. 25.
    Varró, D., Balogh, A.: The model transformation language of the VIATRA2 framework. Science of Computer Programming 68(3), 214–234 (2007)CrossRefzbMATHMathSciNetGoogle Scholar
  26. 26.
    Varró, G., Anjorin, A., Schürr, A.: Unification of compiled and interpreter-based pattern matching techniques. In: Vallecillo, A., Tolvanen, J.-P., Kindler, E., Störrle, H., Kolovos, D. (eds.) ECMFA 2012. LNCS, vol. 7349, pp. 368–383. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  27. 27.
    Varró, G., Deckwerth, F., Wieber, M., Schürr, A.: An algorithm for generating model-sensitive search plans for emf models. In: Hu, Z., de Lara, J. (eds.) ICMT 2012. LNCS, vol. 7307, pp. 224–239. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  28. 28.
    Varró, G., Friedl, K., Varró, D.: Adaptive graph pattern matching for model transformations using model-sensitive search plans. Electr. Notes Theor. Comput. Sci. 152, 191–205 (2006)CrossRefGoogle Scholar
  29. 29.
    Varró, G., Schürr, A., Varró, D.: Benchmarking for graph transformation. In: VL/HCC, pp. 79–88 (2005)Google Scholar
  30. 30.
    Vizhanyo, A., Agrawal, A., Shi, F.: Towards generation of efficient transformations. In: Karsai, G., Visser, E. (eds.) GPCE 2004. LNCS, vol. 3286, pp. 298–316. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  31. 31.
    Yang, Y., Webb, G.I.: Discretization for naive-Bayes learning: Managing discretization bias and variance. Mach. Learn. 74(1), 39–74 (2009)CrossRefGoogle Scholar
  32. 32.
    Zündorf, A.: Graph pattern-matching in PROGRES. In: Cuny, J., Engels, G., Ehrig, H., Rozenberg, G. (eds.) Graph Grammars 1994. LNCS, vol. 1073, pp. 454–468. Springer, Heidelberg (1996)CrossRefGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2014

Authors and Affiliations

  • Māris Jukšs
    • 1
  • Clark Verbrugge
    • 1
  • Dániel Varró
    • 3
  • Hans Vangheluwe
    • 2
    • 1
  1. 1.School of Computer ScienceMcGill UniversityMontréalCanada
  2. 2.Department of Mathematics and Computer ScienceUniversity of AntwerpBelgium
  3. 3.Department of Measurement and Information SystemsBudapest University of Technology and EconomicsHungary

Personalised recommendations