A local and global tour on MOMoT

  • Robert Bill
  • Martin Fleck
  • Javier Troya
  • Tanja Mayerhofer
  • Manuel Wimmer
Special Section Paper

Abstract

Many model transformation scenarios require flexible execution strategies as they should produce models with the highest possible quality. At the same time, transformation problems often span a very large search space with respect to possible transformation results. Recently, different proposals for finding good transformation results without enumerating the complete search space have been proposed by using meta-heuristic search algorithms. However, determining the impact of the different kinds of search algorithms, such as local search or global search, on the transformation results is still an open research topic. In this paper, we present an extension to MOMoT, which is a search-based model transformation tool, for supporting not only global searchers for model transformation orchestrations, but also local ones. This leads to a model transformation framework that allows as the first of its kind multi-objective local and global search. By this, the advantages and disadvantages of global and local search for model transformation orchestration can be evaluated. This is done in a case-study-based evaluation, which compares different performance aspects of the local- and global-search algorithms available in MOMoT. Several interesting conclusions have been drawn from the evaluation: (1) local-search algorithms perform reasonable well with respect to both the search exploration and the execution time for small input models, (2) for bigger input models, their execution time can be similar to those of global-search algorithms, but global-search algorithms tend to outperform local-search algorithms in terms of search exploration, (3) evolutionary algorithms show limitations in situations where single changes of the solution can have a significant impact on the solution’s fitness.

Keywords

Model-driven engineering Model transformation Search-based software engineering Local search Global search 

Notes

Acknowledgements

The work of Javier Troya is funded by the European Commission (FEDER) and the Spanish and the Andalusian R&D&I programmes under grants and projects BELI (TIN2015-70560-R) and COPAS (P12-TIC-1867). Finally, the work of Manuel Wimmer is funded by the Austrian Federal Ministry of Science, Research and Economy and the National Foundation for Research, Technology and Development as well as by the Austrian Science Fund (FWF): P 28519-N31.

References

  1. 1.
    Abdeen, H., Varró, D., Sahraoui, H., Nagy, A.S., Debreceni, C., Hegedüs, A., Horváth, A.: Multi-objective optimization in rule-based design space exploration. In: Proceedings of the 29th ACM/IEEE International Conference on Automated Software Engineering (ASE), pp. 289–300 (2014)Google Scholar
  2. 2.
    Agrawal, A.: Graph rewriting and transformation (GReAT): a solution for the model integrated computing (MIC) Bottleneck. In: Proceedings of the 18th International Conference on Automated Software Engineering (ASE’03), pp. 364–368 (2003)Google Scholar
  3. 3.
    Arcuri, A., Briand, L.: A practical guide for using statistical tests to assess randomized algorithms in software engineering. In: Proceedings of the 33rd International Conference on Software Engineering (ICSE), pp. 1–10 (2011)Google Scholar
  4. 4.
    Arendt, T., Biermann, E., Jurack, S., Krause, C., Taentzer, G.: Henshin: Advanced concepts and tools for in-place EMF model transformations. In: Proceedings of the 13th International Conference on Model Driven Engineering Languages and Systems (MODELS), pp. 121–135 (2010)Google Scholar
  5. 5.
    Baki, I., Sahraoui, H.A., Cobbaert, Q., Masson, P., Faunes, M.: Learning implicit and explicit control in model transformations by example. In: Proceedings of 17th International Conference on Model-Driven Engineering Languages and Systems (MODELS), pp. 636–652 (2014)Google Scholar
  6. 6.
    ben Fadhel, A., Kessentini, M., Langer, P., Wimmer, M.: Search-based detection of high-level model changes. In: Proceedings of the 28th IEEE International Conference on Software Maintenance (ICSM), pp. 212–221 (2012)Google Scholar
  7. 7.
    Biermann, E., Ermel, C., Taentzer, G.: Lifting parallel graph transformation concepts of model transformation based on the eclipse modeling framework. Electron. Commun. EASST 26, 1–19 (2010)Google Scholar
  8. 8.
    Bowman, M., Briand, L., Labiche, Y.: Solving the class responsibility assignment problem in object-oriented analysis with multi-objective genetic algorithms. IEEE TSE 36(6), 817–837 (2010)Google Scholar
  9. 9.
    Brambilla, M., Cabot, J., Wimmer, M.: Model-Driven Software Engineering in Practice. Morgan & Claypool, San Rafael (2012)Google Scholar
  10. 10.
    Bruneliere, H., Cabot, J., Jouault, F., Madiot, F.: MoDisco: A generic and extensible framework for model driven reverse engineering. In: Proceedings of the 25th International Conference on Automated Software Engineering (ASE), pp. 173–174 (2010)Google Scholar
  11. 11.
    Cohen, W.: Machine learning proceedings 1994: Proceedings of the Eighth International Conference. Elsevier Science (2014)Google Scholar
  12. 12.
    Cuadrado, J.S., Molina, J.G., Tortosa, M.M.: RubyTL: A practical, extensible transformation language. In: Proceedings of the 2nd European Conference on Model Driven Architecture—Foundations and Applications (ECMDA-FA), pp. 158–172 (2006)Google Scholar
  13. 13.
    Darwin, C.: On the origin of species by means of natural selection. John Murray, London (1859)Google Scholar
  14. 14.
    Deb, K., Jain, H.: Handling many-objective problems using an improved NSGA-II procedure. In: Proceedings of the 7th World Congress on Evolutionary Computation (CEC), pp. 1–8 (2012)Google Scholar
  15. 15.
    Deb, K., Jain, H.: An evolutionary many-objective optimization algorithm using reference-point-based nondominated sorting approach, part I: solving problems with box constraints. IEEE Trans. Evol. Comput. 18(4), 577–601 (2014)CrossRefGoogle Scholar
  16. 16.
    Deb, K., Pratap, A., Agarwal, S., Meyarivan, T.: A fast and elitist multiobjective genetic algorithm: NSGA-II. IEEE Trans. Evol. Comput. 6(2), 182–197 (2002)CrossRefGoogle Scholar
  17. 17.
    Denil, J., Jukss, M., Verbrugge, C., Vangheluwe, H.: Search-based model optimization using model transformations. In: Amyot, D., Fonseca i Casas, P., Mussbacher, G. (eds.) Proceedings of the 8th International Conference on System Analysis and Modeling (SAM), pp. 80–95 (2014)Google Scholar
  18. 18.
    Drago, M.L., Ghezzi, C., Mirandola, R.: Towards quality driven exploration of model transformation spaces. In: Proceedings of the 14th International Conference on Model Driven Engineering Languages and Systems (MoDELS’11), pp. 2–16 (2011)Google Scholar
  19. 19.
    Drago, M.L., Ghezzi, C., Mirandola, R.: A quality driven extension to the QVT-relations transformation language. Comput. Sci. R&D 30(1), 1–20 (2015)Google Scholar
  20. 20.
    Efstathiou, D., Williams, J.R., Zschaler, S.: Crepe complete: multi-objective optimisation for your models. In: Proceedings of the First International Workshop on Combining Modelling with Search- and Example-Based Approaches (CMSEBA’14) @ MODELS, vol. 1340, pp. 25–34. CEUR-WS.org (2014)Google Scholar
  21. 21.
    Eiben, A.E., Smit, S.K.: Parameter tuning for configuring and analyzing evolutionary algorithms. Swarm Evol. Comput. 1(1), 19–31 (2011)CrossRefGoogle Scholar
  22. 22.
    Fatiregun, D., Harman, M., Hierons, R.M.: Search based transformations. In: Proceedings of the Genetic and Evolutionary Computation Conference (GECCO’03), LNCS, vol. 2724, pp. 2511–2512. Springer (2003). https://doi.org/10.1007/3-540-45110-2_154
  23. 23.
    Fatiregun, D., Harman, M., Hierons, R.M.: Evolving transformation sequences using genetic algorithms. In: Proceedings of the 4th IEEE International Workshop on Source Code Analysis and Manipulation (SCAM), pp. 66–75 (2004)Google Scholar
  24. 24.
    Faunes, M., Sahraoui, H.A., Boukadoum, M.: Genetic-programming approach to learn model transformation rules from examples. In: Proceedings of the 6th International Conference on Theory and Practice of Model Transformations (ICMT), pp. 17–32 (2013)Google Scholar
  25. 25.
    Fleck, M., Troya, J., Wimmer, M.: Marrying search-based optimization and model transformation technology. In: Proceedings of the 1st North American Search Based Software Engineering Symposium (NasBASE) (2015)Google Scholar
  26. 26.
    Fleck, M., Troya, J., Wimmer, M.: Search-based model transformations with MOMoT. In: Proceedings of the 9th International Conference on Theory and Practice of Model Transformations (ICMT), pp. 79–87 (2016)Google Scholar
  27. 27.
    Fleck, M., Troya, J., Wimmer, M.: The class responsibility assignment case. In: Proceedings of the 9th Transformation Tool Contest (TTC 2016), pp. 1–10 (2016)Google Scholar
  28. 28.
    Fleck, M., Troya, J., Wimmer, M.: Search-based model transformations. J. Softw. Evol. Process 28(12), 1081–1117 (2016)CrossRefGoogle Scholar
  29. 29.
    Fleck, M., Troya, J., Kessentini, M., Wimmer, M., Alkhazi, B.: Model transformation modularization as a many-objective optimization problem. IEEE Trans. Softw. Eng (2017). https://doi.org/10.1109/TSE.2017.2654255
  30. 30.
    Fogel, L.J.: Toward inductive inference automata. In: Proceedings of the 2nd International Federation for Information Processing (IFIP), pp. 395–399 (1962)Google Scholar
  31. 31.
    Fogel, L.J.: Intelligence Through Simulated Evolution. Wiley, New York (1966)MATHGoogle Scholar
  32. 32.
    Glover, F.: Future paths for integer programming and links to artificial intelligence. Comput. Operat. Res 13(5), 533–549 (1986)MathSciNetCrossRefMATHGoogle Scholar
  33. 33.
    Gogolla, M., Hamann, L., Hilken, F.: On static and dynamic analysis of UML and OCL transformation models. In: Proceedings of the Workshop on Analysis of Model Transformations (AMT) @ MODELS, CEUR Workshop Proceedings, vol. 1277, pp. 24–33. CEUR-WS.org (2014)Google Scholar
  34. 34.
    Goldberg, D.E., Lingle Jr., R.: Alleles, loci, and the traveling salesman problem. In: Proceedings of the 1st International Conference on Genetic Algorithms (ICGA), pp. 154–159 (1985)Google Scholar
  35. 35.
    Harman, M.: The current state and future of search based software engineering. In: Proceedings of the International Conference on Software Engineering (ICSE), pp. 342–357 (2007)Google Scholar
  36. 36.
    Herrmannsdoerfer, M.: COPE—a workbench for the coupled evolution of metamodels and models. In: Proceedings of the 3rd International Conference on Software Language Engineering (SLE), pp. 286–295 (2010)Google Scholar
  37. 37.
    Holland, J.H.: Outline for a logical theory of adaptive systems. J. ACM 9(3), 297–314 (1962)CrossRefMATHGoogle Scholar
  38. 38.
    Holland, J.H.: Adaptation in Natural and Artificial Systems. MIT Press, Cambridge (1975)Google Scholar
  39. 39.
    Holland, J.H.: Adaptation in Natural and Artificial Systems. MIT Press, Cambridge (1992)Google Scholar
  40. 40.
    Ishibuchi, H., Kaige, S.: Implementation of simple multiobjective memetic algorithms and its applications to knapsack problems. Int. J. Hybrid Intell. Syst. 1(1), 22–35 (2004)CrossRefGoogle Scholar
  41. 41.
    Kappel, G., Langer, P., Retschitzegger, W., Schwinger, W., Wimmer, M.: Model transformation by-example: a survey of the first wave. In: Conceptual Modelling and Its Theoretical Foundations. LNCS, vol. 7260, pp. 197–215. Springer, Heidelberg (2012)Google Scholar
  42. 42.
    Kessentini, M., Sahraoui, H.A., Boukadoum, M.: Model transformation as an optimization problem. In: Proceedings of the 11th International Conference on Model Driven Engineering Languages and Systems (MoDELS’08), LNCS, vol. 5301, pp. 159–173. Springer, Berlin (2008). https://doi.org/10.1007/978-3-540-87875-9_12
  43. 43.
    Kessentini, M., Bouchoucha, A., Sahraoui, H.A., Boukadoum, M.: Example-based sequence diagrams to colored petri nets transformation using heuristic search. In: Proceedings of the 6th European Conference on Modelling Foundations and Applications (ECMFA), pp. 156–172 (2010)Google Scholar
  44. 44.
    Kessentini, M., Sahraoui, H.A., Boukadoum, M., Benomar, O.: Search-based model transformation by example. Softw. Syst. Model. 11(2), 209–226 (2012)CrossRefGoogle Scholar
  45. 45.
    Kessentini, M., Langer, P., Wimmer, M.: Searching models, modeling search: on the synergies of SBSE and MDE. In: Proceedings of the 1st International Workshop on Combining Modelling and Search-Based Software Engineering (CMSBSE) @ ICSE, pp. 51–54 (2013)Google Scholar
  46. 46.
    Kirkpatrick, S., Gelatt, C.D., Vecchi, M.P.: Optimization by simulated annealing. Science 220(4598), 671–680 (1983)MathSciNetCrossRefMATHGoogle Scholar
  47. 47.
    Kleiner, M., Didonet Del Fabro, M., Queiroz Santos, D.: Transformation as search. In: Proceedings of the 9th European Conference on Modelling Foundations and Applications (ECMFA), pp. 54–69 (2013)Google Scholar
  48. 48.
    Kolovos, D.S., Paige, R.F., Polack, F.: The epsilon transformation language. In: Proceedings of the 1st International Conference on Theory and Practice of Model Transformations (ICMT), pp. 46–60 (2008)Google Scholar
  49. 49.
    Koza, J.R.: Genetic Programming. MIT Press, Cambridge (1992)MATHGoogle Scholar
  50. 50.
    Mann, H.B., Whitney, D.R.: On a test of whether one of two random variables is stochastically larger than the other. Ann. Math. Stat. 18(1), 50–60 (1947)MathSciNetCrossRefMATHGoogle Scholar
  51. 51.
    Masoud, H., Jalili, S.: A clustering-based model for class responsibility assignment problem in object-oriented analysis. JSS 93, 110–131 (2014)Google Scholar
  52. 52.
    Mkaouer, W., Kessentini, M., Shaout, A., Koligheu, P., Bechikh, S., Deb, K., Ouni, A.: Many-objective software remodularization using NSGA-III. ACM Trans. Softw. Eng. Methodol. 24(3), 17:1–17:45 (2015)Google Scholar
  53. 53.
    Nickel, U., Niere, J., Zündorf, A.: The FUJABA environment. In: Proceedings of the 22nd International Conference on Software Engineering (ICSE), pp. 742–745 (2000)Google Scholar
  54. 54.
    OMG: Meta Object Facility (MOF) 2.0 Query/View/Transformation Specification, Version 1.1 (2011). http://www.omg.org/spec/QVT/1.1/
  55. 55.
    Rechenberg, I.: Cybernetic solution path of an experimental problem. Library Translation 1112, Royal Aircraft Establishment (1965)Google Scholar
  56. 56.
    Rechenberg, I.: Evolutionsstrategie: Optimierung Technischer Systeme Nach Prinzipien der Biologischen Evolution. Frommann-Holzboog, Stuttgart (1973)Google Scholar
  57. 57.
    Rose, L.M., Kolovos, D.S., Paige, R.F., Polack, F.A.C.: Model migration with epsilon flock. In: Proceedings of the 3rd International Conference on Theory and Practice of Model Transformations (ICMT), pp. 184–198 (2010)Google Scholar
  58. 58.
    Runeson, P., Höst, M.: Guidelines for conducting and reporting case study research in software engineering. Empir. Softw. Eng. 14(2), 131–164 (2009)CrossRefGoogle Scholar
  59. 59.
    Ruscio, D.D., Etzlstorfer, J., Iovino, L., Pierantonio, A., Schwinger, W.: Supporting variability exploration and resolution during model migration. In: Proceedings of the 12th European Conference on Modelling Foundations and Applications (ECMFA), pp. 231–246 (2016)Google Scholar
  60. 60.
    Russell, S., Norvig, P.: Artificial Intelligence: A Modern Approach, 3rd edn. Prentice-Hall, Upper Saddle (2009)MATHGoogle Scholar
  61. 61.
    Saada, H., Huchard, M., Nebut, C., Sahraoui, H.A.: Recovering model transformation traces using multi-objective optimization. In: Proceedings of the 28th International Conference on Automated Software Engineering (ASE), pp. 688–693 (2013)Google Scholar
  62. 62.
    Schürr, A.: Specification of graph translators with triple graph grammars. In: Graph-Theoretic Concepts in Computer Science, 20th International Workshop, WG ’94, Herrsching, Germany, June 16–18, 1994, Proceedings, pp. 151–163 (1994)Google Scholar
  63. 63.
    Shelburg, J., Kessentini, M., Tauritz, D.: Regression testing for model transformations: a multi-objective approach. In: Proceedings of the 5th International Symposium on Search Based Software Engineering (SSBSE), pp. 209–223 (2013)Google Scholar
  64. 64.
    Steinberg, D., Budinsky, F., Paternostro, M., Merks, E.: EMF: Eclipse Modeling Framework, 2nd edn. Addison-Wesley Professional, Reading (2008)Google Scholar
  65. 65.
    Talbi, E.G.: Metaheuristics: From Design to Implementation. Wiley Publishing, New York (2009)CrossRefMATHGoogle Scholar
  66. 66.
    Troya, J., Wimmer, M., Burgueño, L., Vallecillo, A.: Towards approximate model transformations. In: Proceedings of the Workshop on Analysis of Model Transformations (AMT) @ MODELS, pp. 44–53 (2014)Google Scholar
  67. 67.
    Van Laarhoven, P.J., Aarts, E.H.: Simulated annealing. In: Simulated Annealing: Theory and Applications. Springer, Berlin (1987)CrossRefMATHGoogle Scholar
  68. 68.
    Varró, D.: Model transformation by example. In: Proceedings of 9th International Conference on Model-Driven Engineering Languages and Systems (MODELS), pp. 410–424 (2006)Google Scholar
  69. 69.
    Varró, D., Bergmann, G., Hegedüs, Á., Horváth, Á., Ráth, I., Ujhelyi, Z.: Road to a reactive and incremental model transformation platform: three generations of the VIATRA framework. Softw. Syst. Model. 15(3), 609–629 (2016)CrossRefGoogle Scholar
  70. 70.
    Visser, E.: A survey of rewriting strategies in program transformation systems. Electron. Note. Theor. Comput. Sci. 57(2), 109–143 (2001)CrossRefMATHGoogle Scholar
  71. 71.
    Wimmer, M., Strommer, M., Kargl, H., Kramler, G.: Towards model transformation generation by-example. In: Proceedings of the 40th Hawaii International Conference on Systems Science (HICSS), p. 285b (2007)Google Scholar
  72. 72.
    Wohlin, C., Runeson, P., Höst, M., Ohlsson, M.C., Regnell, B.: Experimentation in Software Engineering. Springer, Berlin (2012)CrossRefMATHGoogle Scholar
  73. 73.
    Zitzler, E., Laumanns, M., Thiele, L.: SPEA2: Improving the strength pareto evolutionary algorithm. TIK-Report 103, Computer Engineering and Networks Laboratory (TIK) and Swiss Federal Institute of Technology (ETH) Zurich (2001)Google Scholar
  74. 74.
    Zitzler, E., Thiele, L., Laumanns, M., Fonseca, C.M., da Fonseca, V.G.: Performance assessment of multiobjective optimizers: an analysis and review. IEEE Trans. Evol. Comput. 7(2), 117–132 (2003)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag GmbH Germany, part of Springer Nature 2017

Authors and Affiliations

  • Robert Bill
    • 1
  • Martin Fleck
    • 2
  • Javier Troya
    • 3
  • Tanja Mayerhofer
    • 1
  • Manuel Wimmer
    • 4
  1. 1.Business Informatics GroupTU WienViennaAustria
  2. 2.EclipseSource Services GmbHViennaAustria
  3. 3.Department of Computing Languages and SystemsUniversidad de SevillaSevillaSpain
  4. 4.CDL-MINTTU WienViennaAustria

Personalised recommendations