Planning Self-adaption with Graph Transformations

  • Matthias Tichy
  • Benjamin Klöpper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7233)


Self-adaptive systems autonomously adjust their behavior in order to achieve their goals despite changes in the environment and the system itself. Self-adaption is typically implemented in software and often expressed in terms of architectural reconfiguration. The graph transformation formalism is a natural way to model the architectural reconfiguration in self-adaptive systems. In this paper, we present (1) how we employ graph transformations for the specification of architectural reconfiguration and (2) how we transform graph transformations into actions of the Planning Domain Definition Language (PDDL) in order to use off-the-shelf tools for the computation of self-adaptation plans. We illustrate our approach by a self-healing process and show the results of a simulation case study.


Self-adaptive systems graph transformations planning PDDL 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Alur, R., Courcoubetis, C., Halbwachs, N., Henzinger, T.A., Ho, P.H., Nicollin, X., Olivero, A., Sifakis, J., Yovine, S.: The algorithmic analysis of hybrid systems. Theoretical Computer Science 138(1), 3–34 (1995)MathSciNetzbMATHCrossRefGoogle Scholar
  2. 2.
    Arshad, N., Heimbigner, D., Wolf, A.: Deployment and dynamic reconfiguration planning for distributed software systems. Software Quality Journal 15(3), 265–281 (2007)CrossRefGoogle Scholar
  3. 3.
    Becker, B., Beyer, D., Giese, H., Klein, F., Schilling, D.: Symbolic invariant verification for systems with dynamic structural adaptation. In: Proc. of the 28th International Conference on Software Engineering, pp. 72–81. ACM Press (2006)Google Scholar
  4. 4.
    Becker, B., Giese, H.: Modeling of correct self-adaptive systems: A graph transformation system based approach. In: Proc. of the 5th International Conference on Soft Computing as Transdisciplinary Science and Technology, pp. 508–516. ACM, New York (2008)Google Scholar
  5. 5.
    Chen, Y., Wah, B.W., Hsu, C.W.: Temporal planning using subgoal partitioning and resolution in SGPlan. J. Artif. Intell. Research 26, 323–369 (2006)Google Scholar
  6. 6.
    Edelkamp, S., Rensink, A.: Graph transformation and AI planning. In: Edelkamp, S., Frank, J. (eds.) Knowledge Engineering Competition. Australian National University, Canberra (2007)Google Scholar
  7. 7.
    Ehrig, H., Engels, G., Kreowski, H.-J., Rozenberg, G. (eds.): TAGT 1998. LNCS, vol. 1764. Springer, Heidelberg (2000)zbMATHGoogle Scholar
  8. 8.
    Estler, H.C., Wehrheim, H.: Heuristic search-based planning for graph transformation systems. In: Proc. of the Workshop on Knowledge Engineering for Planning and Scheduling (KEPS 2011), pp. 54–61 (2011)Google Scholar
  9. 9.
    Fischer, T., Niere, J., Torunski, L., Zündorf, A.: Story diagrams: A new graph rewrite language based on the Unified Modeling Language and Java. In: Ehrig et al. [7], pp. 296–309Google Scholar
  10. 10.
    Fox, M., Long, D.: PDDL2.1: An extension to PDDL for expressing temporal planning domains. J. Artif. Intell. Research 20, 61–124 (2003)zbMATHGoogle Scholar
  11. 11.
    Fürst, S., Mössinger, J., Bunzel, S., Weber, T., Kirschke-Biller, F., Heitkämper, P., Kinkelin, G., Nishikawa, K., Lange, K.: AUTOSAR – A worldwide standard is on the road. In: Proc. of the 14th International VDI Congress Electronic Systems for Vehicles 2009. VDI (2009)Google Scholar
  12. 12.
    Ghallab, M., Nau, D., Traverso, P.: Automated Planning – Theory and Practice. Morgan Kaufmann Publishers (2004)Google Scholar
  13. 13.
    Heaven, W., Sykes, D., Magee, J., Kramer, J.: A Case Study in Goal-Driven Architectural Adaptation. In: Cheng, B.H.C., de Lemos, R., Giese, H., Inverardi, P., Magee, J. (eds.) Self-Adaptive Systems. LNCS, vol. 5525, pp. 109–127. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  14. 14.
    Heinzemann, C., Suck, J., Eckardt, T.: Reachability analysis on timed graph transformation systems. ECEASST 32 (2010)Google Scholar
  15. 15.
    Howey, R., Long, D., Fox, M.: VAL: Automatic plan validation, continuous effects and mixed initiative planning using PDDL. In: Proc. of the Int. Conference on Tools with Artificial Intelligence, pp. 294–301. IEEE Computer Society (2004)Google Scholar
  16. 16.
    Klöpper, B., Honiden, S., Meyer, J., Tichy, M.: Planning with utilities and state trajectories constraints for self-healing in automotive systems. In: Proc. of the 4th IEEE International Conference on Self-Adaptive and Self-Organizing Systems, pp. 74–83. IEEE Computer Society (2010)Google Scholar
  17. 17.
    Kramer, J., Magee, J.: Self-managed systems: An architectural challenge. In: Future of Software Engineering 2007, pp. 259–268. IEEE Computer Society (2007)Google Scholar
  18. 18.
    Le Métayer, D.: Describing software architecture styles using graph grammars. IEEE Transactions on Software Engineering 24(7), 521–533 (1998)CrossRefGoogle Scholar
  19. 19.
    Oreizy, P., Medvidovic, N., Taylor, R.N.: Architecture-based runtime software evolution. In: Proc. of the 20th International Conference on Software Engineering, pp. 177–186. IEEE Computer Society (1998)Google Scholar
  20. 20.
    Raimondi, F., Pecheur, C., Brat, G.: PDVer, a tool to verify PDDL planning domains. In: Proc. of ICAPS 2009 Workshop on Verification and Validation of Planning and Scheduling Systems (2009)Google Scholar
  21. 21.
    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
  22. 22.
    Rozenberg, G.: Handbook of Graph Grammars and Computing by Grah Transformation, vol. 1: Foundations. World Scientific (1997)Google Scholar
  23. 23.
    Satzger, B., Pietzowski, A., Trumler, W., Ungerer, T.: Using Automated Planning for Trusted Self-organising Organic Computing Systems. In: Rong, C., Jaatun, M.G., Sandnes, F.E., Yang, L.T., Ma, J. (eds.) ATC 2008. LNCS, vol. 5060, pp. 60–72. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  24. 24.
    Stallmann, F.: A Model-Driven Approach to Multi-Agent System Design. Ph.D. thesis, University of Paderborn (2009)Google Scholar
  25. 25.
    Taentzer, G., Goedicke, M., Meyer, T.: Dynamic change management by distributed graph transformation: Towards configurable distributed systems. In: Ehrig et al. [7], pp. 179–193Google Scholar
  26. 26.
    Tichy, M., Henkler, S., Holtmann, J., Oberthür, S.: Component story diagrams: A transformation language for component structures in mechatronic systems. In: Postproc. of the 4th Workshop on Object-oriented Modeling of Embedded Real-Time Systems. HNI Verlagsschriftenreihe (2008)Google Scholar
  27. 27.
    Vaquero, T.S., Silva, J.R., Ferreira, M., Tonidandel, F., Beck, J.C.: From requirements and analysis to PDDL in itSIMPLE3.0. In: Proc. of the International Competition on Knowledge Engineering for Planning and Scheduling (2009)Google Scholar
  28. 28.
    Wermelinger, M., Fiadeiro, J.L.: A graph transformation approach to software architecture reconfiguration. Sci. Computer Programming 44(2), 133–155 (2002)zbMATHCrossRefGoogle Scholar
  29. 29.
    Zündorf, A.: Rigorous Object Oriented Software Development. University of Paderborn (2002)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Matthias Tichy
    • 1
  • Benjamin Klöpper
    • 2
  1. 1.Software Engineering DivisionChalmers University of Technology and University of GothenburgSweden
  2. 2.National Institute of Informatics (NII)TokyoJapan

Personalised recommendations