Procedural Content Generation via Machine Learning (PCGML)

This survey explores procedural content generation via machine learning (PCGML), defined as the generation of game content using machine learning models trained on existing content. As the importance of PCG for game development increases, researchers explore new avenues for generating high-quality content with or without human involvement; this paper addresses the relatively new paradigm of using machine learning (in contrast with search-based, solver-based, and constructive methods). We focus on what is most often considered functional game content, such as platformer levels, game maps, interactive fiction stories, and cards in collectible card games, as opposed to cosmetic content, such as sprites and sound effects. In addition to using PCG for autonomous generation, cocreativity, mixed-initiative design, and compression, PCGML is suited for repair, critique, and content analysis because of its focus on modeling existing content. We discuss various data sources and representations that affect the generated content. Multiple PCGML methods are covered, including neural networks: long short-term memory networks, autoencoders, and deep convolutional networks; Markov models: $n$-grams and multi-dimensional Markov chains; clustering; and matrix factorization. Finally, we discuss open problems in PCGML, including learning from small data sets, lack of training data, multilayered learning, style-transfer, parameter tuning, and PCG as a game mechanic.

[1]  Andrew Schartmann Super Mario Bros. , 2015 .

[2]  Julian Togelius,et al.  General Video Game Level Generation , 2016, GECCO.

[3]  Julian Togelius,et al.  The Mario AI Championship 2009-2012 , 2013, AI Mag..

[4]  Michael Mateas,et al.  MCMCTS PCG 4 SMB: Monte Carlo Tree Search to Guide Platformer Level Generation , 2021, Proceedings of the AAAI Conference on Artificial Intelligence and Interactive Digital Entertainment.

[5]  Julian Togelius,et al.  Patterns as Objectives for Level Generation , 2013 .

[6]  Risto Miikkulainen,et al.  Evolving Neural Networks through Augmenting Topologies , 2002, Evolutionary Computation.

[7]  Yoshua Bengio,et al.  Modeling Temporal Dependencies in High-Dimensional Sequences: Application to Polyphonic Music Generation and Transcription , 2012, ICML.

[8]  V. Kshirsagar,et al.  Face recognition using Eigenfaces , 2011, 2011 3rd International Conference on Computer Research and Development.

[9]  J. Togelius,et al.  Discovering Unique Game Variants , 2015 .

[10]  Santiago Ontañón,et al.  The VGLC: The Video Game Level Corpus , 2016, ArXiv.

[11]  Brian Magerko,et al.  A Conceptual Blending Approach to the Generation of Cognitive Scripts for Interactive Narrative , 2013, Intelligent Narrative Technologies.

[12]  Guigang Zhang,et al.  Deep Learning , 2016, Int. J. Semantic Comput..

[13]  Jürgen Schmidhuber,et al.  Long Short-Term Memory , 1997, Neural Computation.

[14]  Santiago Ontañón,et al.  Understanding mario: an evaluation of design metrics for platformers , 2017, FDG.

[15]  Siddhartha Chaudhuri,et al.  A probabilistic model for component-based shape synthesis , 2012, ACM Trans. Graph..

[16]  Max Welling,et al.  Semi-Supervised Classification with Graph Convolutional Networks , 2016, ICLR.

[17]  Amy K. Hoover Composing Video Game Levels with Music Metaphors through Functional Scaffolding , 2015 .

[18]  Ming C. Lin,et al.  Example-guided physically based modal sound synthesis , 2013, ACM Trans. Graph..

[19]  Demis Hassabis,et al.  Mastering the game of Go with deep neural networks and tree search , 2016, Nature.

[20]  Li Fei-Fei,et al.  ImageNet: A large-scale hierarchical image database , 2009, CVPR.

[21]  Jonathan Ralph Roberts,et al.  Learning-Based Procedural Content Generation , 2013, IEEE Transactions on Computational Intelligence and AI in Games.

[22]  Isabelle Augenstein,et al.  emoji2vec: Learning Emoji Representations from their Description , 2016, SocialNLP@EMNLP.

[23]  Quoc V. Le,et al.  Sequence to Sequence Learning with Neural Networks , 2014, NIPS.

[24]  Simon M. Lucas,et al.  Neuroevolution for General Video Game Playing , 2015, 2015 IEEE Conference on Computational Intelligence and Games (CIG).

[25]  Julian Togelius,et al.  Ropossum: An Authoring Tool for Designing, Optimizing and Solving Cut the Rope Levels , 2013, AIIDE.

[26]  Noor Shaker,et al.  Alone We Can Do So Little, Together We Can Do So Much: A Combinatorial Approach for Generating Game Content , 2014, AIIDE.

[27]  Santiago Ontañón,et al.  Learning to Generate Video Game Maps Using Markov Models , 2017, IEEE Transactions on Computational Intelligence and AI in Games.

[28]  Yoram Singer,et al.  The Hierarchical Hidden Markov Model: Analysis and Applications , 1998, Machine Learning.

[29]  Alexander Mordvintsev,et al.  Inceptionism: Going Deeper into Neural Networks , 2015 .

[30]  Kevin Schut,et al.  Hello Game’s No Man’s Sky , 2017 .

[31]  Tom White,et al.  Sampling Generative Networks: Notes on a Few Effective Techniques , 2016, ArXiv.

[32]  Julian Togelius,et al.  Predicting Resource Locations in Game Maps Using Deep Convolutional Neural Networks , 2021, Proceedings of the AAAI Conference on Artificial Intelligence and Interactive Digital Entertainment.

[33]  Yoshua Bengio,et al.  Extracting and composing robust features with denoising autoencoders , 2008, ICML '08.

[34]  Shane Legg,et al.  Human-level control through deep reinforcement learning , 2015, Nature.

[35]  Julian Togelius,et al.  Sentient Sketchbook: Computer-aided game level authoring , 2013, FDG.

[36]  Kari Pulli,et al.  Real-time computer vision with OpenCV , 2012, Commun. ACM.

[37]  D. A. Kenny,et al.  Correlation and Causation , 1937, Wilmott.

[38]  Wai-Ki Ching,et al.  On Multi-dimensional Markov Chain Models , 2007 .

[39]  Yann LeCun,et al.  The mnist database of handwritten digits , 2005 .

[40]  David Salesin,et al.  Image Analogies , 2001, SIGGRAPH.

[41]  Jeffrey Pennington,et al.  GloVe: Global Vectors for Word Representation , 2014, EMNLP.

[42]  Matthew Guzdial,et al.  Learning to Blend Computer Game Levels , 2016, ICCC.

[43]  Jürgen Schmidhuber,et al.  Deep learning in neural networks: An overview , 2014, Neural Networks.

[44]  Santiago Ontañón,et al.  Experiments in map generation using Markov chains , 2014, FDG.

[45]  Michael Mateas,et al.  Answer Set Programming for Procedural Content Generation: A Design Space Approach , 2011, IEEE Transactions on Computational Intelligence and AI in Games.

[46]  Morteza Behrooz,et al.  The Learning of Zelda: Data-Driven Learning of Level Topology , 2015 .

[47]  Espen Aarseth Cybertext: Perspectives on Ergodic Literature , 1997 .

[48]  Boyang Li,et al.  Learning knowledge to support domain-independent narrative intelligence , 2015 .

[49]  Matthew Guzdial,et al.  Game Level Generation from Gameplay Videos , 2021, AIIDE.

[50]  Christine Guillemot,et al.  Image Inpainting : Overview and Recent Advances , 2014, IEEE Signal Processing Magazine.

[51]  Julian Togelius,et al.  Search-Based Procedural Content Generation: A Taxonomy and Survey , 2011, IEEE Transactions on Computational Intelligence and AI in Games.

[52]  Peter Norvig,et al.  The Unreasonable Effectiveness of Data , 2009, IEEE Intelligent Systems.

[53]  Michael Mateas,et al.  Super Mario as a String: Platformer Level Generation Via LSTMs , 2016, DiGRA/FDG.

[54]  Joseph Corneli,et al.  Towards Generating Novel Games Using Conceptual Blending , 2021, Proceedings of the AAAI Conference on Artificial Intelligence and Interactive Digital Entertainment.

[55]  Julian Togelius,et al.  A comparative evaluation of procedural level generators in the Mario AI framework , 2014, FDG.

[56]  Boyang Li,et al.  Crowdsourcing Open Interactive Narrative , 2015, FDG.

[57]  Robert Zubek,et al.  MDA : A Formal Approach to Game Design and Game Research , 2004 .

[58]  Amílcar Cardoso,et al.  A Model for Creativity in Creature Generation , 2003, GAME-ON.

[59]  Julian Togelius,et al.  Linear levels through n-grams , 2014, MindTrek.

[60]  D. A. Kenny,et al.  Correlation and Causation. , 1982 .

[61]  L. Baum,et al.  Statistical Inference for Probabilistic Functions of Finite State Markov Chains , 1966 .

[62]  Santiago Ontañón,et al.  An Approach to Domain Transfer in Procedural Content Generation of Two-Dimensional Videogame Levels , 2021, AIIDE.

[63]  Michael Mateas,et al.  Tanagra: Reactive Planning and Constraint Solving for Mixed-Initiative Level Design , 2011, IEEE Transactions on Computational Intelligence and AI in Games.

[64]  Andrew McCallum,et al.  Conditional Random Fields: Probabilistic Models for Segmenting and Labeling Sequence Data , 2001, ICML.

[65]  Julian Togelius,et al.  Experience-Driven Procedural Content Generation , 2011, IEEE Transactions on Affective Computing.

[66]  Santiago Ontañón,et al.  Controllable Procedural Content Generation via Constrained Multi-Dimensional Markov Chain Sampling , 2016, IJCAI.

[67]  Michael Mateas,et al.  Sampling Hyrule: Sampling Probabilistic Machine Learning for Level Generation , 2015 .

[68]  Julian Togelius,et al.  AI-based Game Design Patterns , 2015, FDG.

[69]  Julian Togelius,et al.  Search-Based Procedural Content Generation , 2010, EvoApplications.

[70]  Stefan Bruckner,et al.  Style Transfer Functions for Illustrative Volume Rendering , 2007, Comput. Graph. Forum.

[71]  Kenneth O. Stanley,et al.  Functional Scaffolding for Composing Additional Musical Voices , 2014, Computer Music Journal.

[72]  Julian Togelius,et al.  Transforming Exploratory Creativity with DeLeNoX, , 2021, ICCC.

[73]  H. Sebastian Seung,et al.  Learning the parts of objects by non-negative matrix factorization , 1999, Nature.

[74]  田村 隆太,et al.  Magic : The Gathering にみる言語価値 , 2015 .

[75]  Corbeil-Essonnes The Legend of Zelda , 2011 .

[76]  Daniele Loiacono,et al.  Player Modeling , 2013, Artificial and Computational Intelligence in Games.

[77]  Tom White,et al.  Sampling Generative Networks: Notes on a Few Effective Techniques , 2016, ArXiv.

[78]  Peijie Li,et al.  CNN based texture synthesize with Semantic segment , 2016, ArXiv.

[79]  Sylvain Lefebvre,et al.  State of the Art in Example-based Texture Synthesis , 2009, Eurographics.

[80]  Pietro Perona,et al.  One-shot learning of object categories , 2006, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[81]  Hans-Peter Kriegel,et al.  OPTICS: ordering points to identify the clustering structure , 1999, SIGMOD '99.

[82]  Leon A. Gatys,et al.  A Neural Algorithm of Artistic Style , 2015, ArXiv.

[83]  Thomas Brox,et al.  Learning to generate chairs with convolutional neural networks , 2014, 2015 IEEE Conference on Computer Vision and Pattern Recognition (CVPR).

[84]  Alexei A. Efros,et al.  Image-to-Image Translation with Conditional Adversarial Networks , 2016, 2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR).

[85]  Alex Graves,et al.  DRAW: A Recurrent Neural Network For Image Generation , 2015, ICML.

[86]  Santiago Ontañón,et al.  A Hierarchical MdMC Approach to 2D Video Game Map Generation , 2015, AIIDE.

[87]  Michael Mateas,et al.  Mystical Tutor: A Magic: The Gathering Design Assistant via Denoising Sequence-to-Sequence Learning , 2021, AIIDE.

[88]  Yoshua Bengio,et al.  Generative Adversarial Nets , 2014, NIPS.

[89]  Alessandro Canossa,et al.  Towards a Procedural Evaluation Technique: Metrics for Level Design , 2015, FDG.

[90]  Julian Togelius,et al.  The Mario AI Championship , 2010, Proceedings of the 2010 IEEE Conference on Computational Intelligence and Games.

[91]  Nathan R Sturtevant,et al.  Deep Static and Dynamic Level Analysis: A Study on Infinite Mario , 2016 .