GMTE: A Tool for Graph Transformation and Exact/Inexact Graph Matching

  • Mohamed Amine Hannachi
  • Ismael Bouassida Rodriguez
  • Khalil Drira
  • Saul Eduardo Pomares Hernandez
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7877)


Multi-labelled graphs are a powerful and versatile tool for modelling real applications in diverse domains such as communication networks, social networks, and autonomic systems, among others. Due to dynamic nature of such kind of systems the structure of entities is continuously changing along the time, this because, it is possible that new entities join the system, some of them leave it or simply because the entities’ relations change. Here is where graph transformation takes an important role in order to model systems with dynamic and/or evolutive configurations. Graph transformation consists of two main tasks: graph matching and graph rewriting. At present, few graph transformation tools support multi-labelled graphs. To our knowledge, there is no tool that support inexact graph matching for the purpose of graph transformation. Also, the main problem of these tools lies on the limited expressiveness of rewriting rules used, that negatively reduces the range of application scenarios to be modelling and/or negatively increase the number of rewriting rules to be used. In this paper, we present the tool GMTE - Graph Matching and Transformation Engine. GMTE handles directed and multi-labelled graphs. In addition, to the exact graph matching, GMTE handles the inexact graph matching. The approach of rewriting rules used by GMTE combines Single PushOut rewriting rules with edNCE grammar. This combination enriches and extends the expressiveness of the graph rewriting rules. In addition, for the graph matching, GMTE uses a conditional rule schemata that supports complex comparison functions over labels. To our knowledge, GMTE is the first graph transformation tool that offers such capabilities.


Graph Transformation Graph Match Cost Matrix Rule Application Graph Grammar 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Schürr, A., Winter, A., Zündorf, A.: The PROGRES approach: Language and environment. In: Ehrig, H., Engels, G., Kreowski, H.J., Rozenberg, G. (eds.) Handbook of Graph Grammars and Computing by Graph Transformation: Applications, Languages, and Tools, vol. 3, pp. 487–550. World Scientific (1999)Google Scholar
  2. 2.
    Taentzer, G.: AGG: A tool environment for algebraic graph transformation. In: Münch, M., Nagl, M. (eds.) AGTIVE 1999. LNCS, vol. 1779, pp. 481–488. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  3. 3.
    Ghamarian, A.H., de Mol, M., Rensink, A., Zambon, E., Zimakova, M.: Modelling and analysis using groove. STTT 14(1), 15–40 (2012)CrossRefGoogle Scholar
  4. 4.
    Lengyel, L., Levendovszky, T., Charaf, H.: Constraint validation support in visual model transformation systems. Acta Cybern. 17(2), 339–357 (2005)zbMATHGoogle Scholar
  5. 5.
    Balasubramanian, D., Narayanan, A., van Buskirk, C.P., Karsai, G.: The graph rewriting and transformation language: Great. ECEASST 1 (2006)Google Scholar
  6. 6.
    de Lara, J., Vangheluwe, H.: AToM3: A tool for multi-formalism and meta-modelling. In: Kutsche, R.-D., Weber, H. (eds.) FASE 2002. LNCS, vol. 2306, pp. 174–188. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  7. 7.
    Guennoun, K., Drira, K., Diaz, M.: A proved component-oriented approach for managins dynamic software architectures. In: Proc. 7th IASTED International Conference on Software Engineering and Application, Marina Del Rey, CA, USA (2004)Google Scholar
  8. 8.
    Messmer, B.T., Bunke, H.: Efficient subgraph isomorphism detection: A decomposition approach. IEEE Trans. Knowl. Data Eng. 12(2), 307–323 (2000)CrossRefGoogle Scholar
  9. 9.
    Ehrig, H., Korff, M., Löwe, M.: Tutorial introduction to the algebraic approach of graph grammars based on double and single pushouts. In: Ehrig, H., Kreowski, H.-J., Rozenberg, G. (eds.) Graph Grammars 1990. LNCS, vol. 532, pp. 24–37. Springer, Heidelberg (1991)CrossRefGoogle Scholar
  10. 10.
    Rozenberg, G. (ed.): Handbook of graph grammars and computing by graph transformation: volume I. foundations. World Scientific Publishing Co., Inc., River Edge (1997)Google Scholar
  11. 11.
    Habel, A., Heckel, R., Taentzer, G.: Graph grammars with negative application conditions. Fundamenta Informaticae 26, 287–313 (1995)MathSciNetGoogle Scholar
  12. 12.
    Plump, D., Steinert, S.: Towards graph programs for graph algorithms. In: Ehrig, H., Engels, G., Parisi-Presicce, F., Rozenberg, G. (eds.) ICGT 2004. LNCS, vol. 3256, pp. 128–143. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  13. 13.
    Fankhauser, S., Riesen, K., Bunke, H.: Speeding up graph edit distance computation through fast bipartite matching. In: Jiang, X., Ferrer, M., Torsello, A. (eds.) GbRPR 2011. LNCS, vol. 6658, pp. 102–111. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  14. 14.
    Wilson, D.R., Martinez, T.R.: Improved heterogeneous distance functions. J. Artif. Int. Res. 6(1), 1–34 (1997)MathSciNetzbMATHGoogle Scholar
  15. 15.
    Riesen, K., Bunke, H.: Approximate graph edit distance computation by means of bipartite graph matching. Image Vision Comput. 27(7), 950–959 (2009)CrossRefGoogle Scholar
  16. 16.
    Riesen, K., Neuhaus, M., Bunke, H.: Bipartite Graph Matching for Computing the Edit Distance of Graphs, pp. 1–12 (2007)Google Scholar
  17. 17.
    Dell’Amico, M., Toth, P.: Algorithms and codes for dense assignment problems: the state of the art. Discrete Appl. Math. 100(1-2), 17–48 (2000)MathSciNetzbMATHCrossRefGoogle Scholar
  18. 18.
    Volgenant, A.: Linear and semi-assignment problems: A core oriented approach. Computers & OR 23(10), 917–932 (1996)zbMATHCrossRefGoogle Scholar
  19. 19.
    Fuss, C., Mosler, C., Ranger, U., Schultchen, E.: The jury is still out: A comparison of agg, fujaba, and progres. ECEASST 6 (2007)Google Scholar
  20. 20.
    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
  21. 21.
    Brandes, U., Eiglsperger, M., Herman, I., Himsolt, M., Marshall, M.S.: GraphML progress report. In: Mutzel, P., Jünger, M., Leipert, S. (eds.) GD 2001. LNCS, vol. 2265, p. 501. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  22. 22.
    Ben-Halima, R., Jmaiel, M., Drira, K.: A QoS-oriented reconfigurable middleware for self-healing Web services. In: Proceedings of the IEEE International Conference on Web Services (ICWS 2008), Beijing, China. IEEE Computer Society Press (2008)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  • Mohamed Amine Hannachi
    • 1
    • 2
  • Ismael Bouassida Rodriguez
    • 1
    • 2
    • 3
  • Khalil Drira
    • 1
    • 2
  • Saul Eduardo Pomares Hernandez
    • 1
    • 4
  1. 1.CNRS, LAASToulouseFrance
  2. 2.Univ de Toulouse, LAASToulouseFrance
  3. 3.ReDCADUniversity of SfaxSfaxTunisia
  4. 4.Computer Science DepartmentInstituto Nacional de Astrofísica, Óptica y ElectrónicaTonantzintlaMexico

Personalised recommendations