Genetic-Programming Approach to Learn Model Transformation Rules from Examples

  • Martin Faunes
  • Houari Sahraoui
  • Mounir Boukadoum
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7909)


We propose a genetic programming-based approach to automatically learn model transformation rules from prior transformation pairs of source-target models used as examples. Unlike current approaches, ours does not need fine-grained transformation traces to produce many-to-many rules. This makes it applicable to a wider spectrum of transformation problems. Since the learned rules are produced directly in an actual transformation language, they can be easily tested, improved and reused. The proposed approach was successfully evaluated on well-known transformation problems that highlight three modeling aspects: structure, time constraints, and nesting.


Genetic Programming Source Model Model Transformation Transformation Rule Target Model 
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.
    Balogh, Z., Varrò, D.: Model transformation by example using inductive logic programming. Soft. and Syst. Modeling 8 (2009)Google Scholar
  2. 2.
    Banzhaf, W.: Genetic Programming: An Introduction on the Automatic Evolution of Computer Programs and Its Applications. Morgan Kaufmann Publishers (1998)Google Scholar
  3. 3.
    Czarnecki, K., Helsen, S.: Feature-based survey of model transformation approaches. IBM Systems Journal 45(3) (2006)Google Scholar
  4. 4.
    Dolques, X., Huchard, M., Nebut, C., Reitz, P.: Learning transformation rules from transformation examples: An approach based on relational concept analysis. In: Int. Enterprise Distributed Object Computing Workshops (2010)Google Scholar
  5. 5.
    Faunes, M., Sahraoui, H., Boukadoum, M.: Generating model transformation rules from examples using an evolutionary algorithm. In: Aut. Soft. Engineering (ASE) (2012)Google Scholar
  6. 6.
    García-Magariño, I., Gómez-Sanz, J.J., Fuentes-Fernández, R.: Model transformation by-example: An algorithm for generating many-to-many transformation rules in several model transformation languages. In: Paige, R.F. (ed.) ICMT 2009. LNCS, vol. 5563, pp. 52–66. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  7. 7.
    Grønmo, R., Møller-Pedersen, B.: From UML 2 sequence diagrams to state machines by graph transformation. Journal of Object Technology 10 (2011)Google Scholar
  8. 8.
    Hill, E.F.: Jess in Action: Java Rule-Based Systems (2003)Google Scholar
  9. 9.
    Jouault, F., Kurtev, I.: Transforming models with ATL. In: Bruel, J.-M. (ed.) MoDELS 2005. LNCS, vol. 3844, pp. 128–138. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  10. 10.
    Kessentini, M., Sahraoui, H.A., Boukadoum, M.: Model transformation as an optimization problem. In: Czarnecki, K., Ober, I., Bruel, J.-M., Uhl, A., Völter, M. (eds.) MODELS 2008. LNCS, vol. 5301, pp. 159–173. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  11. 11.
    Kessentini, M., Sahraoui, H.A., Boukadoum, M., Omar, O.B.: Search-based model transformation by example. Soft. and Syst. Modeling 11(2) (2012)Google Scholar
  12. 12.
    Kessentini, M., Wimmer, M., Sahraoui, H., Boukadoum, M.: Generating transformation rules from examples for behavioral models. In: Proc. of the 2nd Int. WS on Behaviour Modelling: Foundation and Applications (2010)Google Scholar
  13. 13.
    Koza, J., Poli, R.: Genetic programming. In: Search Methodologies (2005)Google Scholar
  14. 14.
    Langer, P., Wimmer, M., Kappel, G.: Model-to-model transformations by demonstration. In: Tratt, L., Gogolla, M. (eds.) ICMT 2010. LNCS, vol. 6142, pp. 153–167. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  15. 15.
    Mohagheghi, P., Gilani, W., Stefanescu, A., Fernandez, M.: An empirical study of the state of the practice and acceptance of model-driven engineering in four industrial cases. In: Empirical Software EngineeringGoogle Scholar
  16. 16.
    Moore, G.: Crossing the Chasm: Marketing and Selling Disruptive Products to Mainstream Customers. HarperCollins (2002)Google Scholar
  17. 17.
    Pachet, F., Perrot, J.: Rule firing with metarules. In: SEKE (1994)Google Scholar
  18. 18.
    Ratcliff, S., White, D.R., Clark, J.A.: Searching for invariants using genetic programming and mutation testing. In: GECCO (2011)Google Scholar
  19. 19.
    Repenning, A., Perrone, C.: Programming by example: programming by analogous examples. Commun. ACM 43(3) (2000)Google Scholar
  20. 20.
    Saada, H., Dolques, X., Huchard, M., Nebut, C., Sahraoui, H.: Generation of operational transformation rules from examples of model transformations. In: France, R.B., Kazmeier, J., Breu, R., Atkinson, C. (eds.) MODELS 2012. LNCS, vol. 7590, pp. 546–561. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  21. 21.
    Schmidt, D.C.: Model-driven engineering. IEEE Computer 39(2) (2006)Google Scholar
  22. 22.
    Strommer, M., Wimmer, M.: A framework for model transformation by-example: Concepts and tool support. In: Paige, R.F., Meyer, B. (eds.) TOOLS EUROPE 2008. LNBIP, vol. 11, pp. 372–391. Springer, Heidelberg (2008)Google Scholar
  23. 23.
    Sun, Y., White, J., Gray, J.: Model transformation by demonstration. In: Schürr, A., Selic, B. (eds.) MODELS 2009. LNCS, vol. 5795, pp. 712–726. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  24. 24.
    Varró, D.: Model transformation by example. In: Wang, J., Whittle, J., Harel, D., Reggio, G. (eds.) MoDELS 2006. LNCS, vol. 4199, pp. 410–424. Springer, Heidelberg (2006)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  • Martin Faunes
    • 1
  • Houari Sahraoui
    • 1
  • Mounir Boukadoum
    • 2
  1. 1.DIROUniversité de MontréalCanada
  2. 2.Université du Québec à MontréalCanada

Personalised recommendations