Identifying Desirable Game Character Behaviours through the Application of Evolutionary Algorithms to Model-Driven Engineering Metamodels

  • James R. Williams
  • Simon Poulding
  • Louis M. Rose
  • Richard F. Paige
  • Fiona A. C. Polack
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6956)


This paper describes a novel approach to the derivation of model-driven engineering (MDE) models using metaheuristic search, and illustrates it using a specific engineering problem: that of deriving computer game characters with desirable properties. The character behaviour is defined using a human-readable domain-specific language (DSL) that is interpreted using MDE techniques. We apply the search to the underlying MDE metamodels, rather than the DSL directly, and as a result our approach is applicable to a wide range of MDE models. An implementation developed using the Eclipse Modeling Framework, the most widely-used toolset for MDE, is evaluated. The results demonstrate not only the derivation of characters with the desired properties, but also the identification of unexpected features of the behavioural description language and the game itself.


Genetic Algorithm Model Transformation Mapping Process Game Play Random Search 
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.
    Brabazon, A., O’Neill, M.: Evolving technical trading rules for spot foreign-exchange markets using grammatical evolution. Computational Management Science 1, 311–327 (2004)CrossRefzbMATHGoogle Scholar
  2. 2.
    Czarnecki, K., Helsen, S.: Feature-based survey of model transformation approaches. IBM Systems Journal 45(3), 621–645 (2006)CrossRefGoogle Scholar
  3. 3.
    Efftinge, S., Voelter, M.: oAW xText: A framework for textual DSLs. In: Proc. Workshop on Modelling, Eclipse Con. (2006)Google Scholar
  4. 4.
    Goldsby, H.J., Cheng, B.H.C.: Avida-MDE: a digital evolution approach to generating models of adaptive software behavior. In: Proc. Genetic and Evolutionary Computation Conf., GECCO 2008, pp. 1751–1758 (2008)Google Scholar
  5. 5.
    Heidenreich, F., Johannes, J., Karol, S., Seifert, M., Wende, C.: Derivation and Refinement of Textual Syntax for Models. In: Paige, R.F., Hartman, A., Rensink, A. (eds.) ECMDA-FA 2009. LNCS, vol. 5562, pp. 114–129. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  6. 6.
    Hugosson, J., Hemberg, E., Brabazon, A., O’Neill, M.: Genotype representations in grammatical evolution. Applied Soft. Computing 10, 36–43 (2010)CrossRefGoogle Scholar
  7. 7.
    Kessentini, M., Sahraoui, H., Boukadoum, M.: Model Transformation as an Optimization Problem. In: Busch, C., Ober, I., Bruel, J.-M., Uhl, A., Völter, M. (eds.) MODELS 2008. LNCS, vol. 5301, pp. 159–173. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  8. 8.
    Kleppe, A.: A language description is more than a metamodel. In: Fourth Int’l Workshop on Software Language Eng. (October 2007)Google Scholar
  9. 9.
    Kolovos, D.S., Rose, L.M., Paige, R.F.: The Epsilon book (2010) (unpublished)Google Scholar
  10. 10.
    Kolovos, D.S., Paige, R.F., Polack, F.A.C.: The Epsilon Object Language (EOL). In: Rensink, A., Warmer, J. (eds.) ECMDA-FA 2006. LNCS, vol. 4066, pp. 128–142. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  11. 11.
    Li, R., Chaudron, M.R.V., Ladan, R.C.: Towards automated software architectures design using model transformations and evolutionary algorithms. In: Proc. Genetic and Evolutionary Computation Conf (GECCO 2010), pp. 1333–1340 (2010)Google Scholar
  12. 12.
    O’Neill, M., Brabazon, A.: Grammatical differential evolution. In: Proc. 2006 Int’l Conf. Artificial Intelligence (ICAI 2006), pp. 231–236 (2006)Google Scholar
  13. 13.
    O’Neill, M., Brabazon, A.: Grammatical swarm: The generation of programs by social programming. Natural Computing 5, 443–462 (2006)MathSciNetCrossRefzbMATHGoogle Scholar
  14. 14.
    O’Neill, M., Ryan, C.: Grammatical evolution. IEEE Trans. Evol. Comput. 5(4), 349–358 (2001)MathSciNetCrossRefGoogle Scholar
  15. 15.
    Ryan, C., Collins, J.J., Neill, M.O.: Grammatical Evolution: Evolving Programs for an Arbitrary Language. In: Banzhaf, W., Poli, R., Schoenauer, M., Fogarty, T.C. (eds.) EuroGP 1998. LNCS, vol. 1391, pp. 83–96. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  16. 16.
    Selic, B.: The pragmatics of model-driven development. IEEE Software 20(5), 19–25 (2003)CrossRefGoogle Scholar
  17. 17.
    Shao, J., McDermott, J., O’Neill, M., Brabazon, A.: Jive: A Generative, Interactive, Virtual, Evolutionary Music System. In: Di Chio, C., Brabazon, A., Di Caro, G.A., Ebner, M., Farooq, M., Fink, A., Grahl, J., Greenfield, G., Machado, P., O’Neill, M., Tarantino, E., Urquhart, N. (eds.) EvoApplications 2010. LNCS, vol. 6025, pp. 341–350. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  18. 18.
    Steinberg, D., Budinsky, F., Paternostro, M., Merks, E.: EMF Eclipse Modeling Framework. The Eclipse Series, 2nd edn., Addison-Wesley, Reading (2009)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • James R. Williams
    • 1
  • Simon Poulding
    • 1
  • Louis M. Rose
    • 1
  • Richard F. Paige
    • 1
  • Fiona A. C. Polack
    • 1
  1. 1.Department of Computer ScienceUniversity of YorkUK

Personalised recommendations