  Generative Adversarial Networks (GANs) are a machine learning approach
capable of generating novel example outputs across a space of provided training
examples. Procedural Content Generation (PCG) of levels for video games could
benefit from such models, especially for games where there is a pre-existing
corpus of levels to emulate. This paper trains a GAN to generate levels for
Super Mario Bros using a level from the Video Game Level Corpus. The approach
successfully generates a variety of levels similar to one in the original
corpus, but is further improved by application of the Covariance Matrix
Adaptation Evolution Strategy (CMA-ES). Specifically, various fitness functions
are used to discover levels within the latent space of the GAN that maximize
desired properties. Simple static properties are optimized, such as a given
distribution of tile types. Additionally, the champion A* agent from the 2009
Mario AI competition is used to assess whether a level is playable, and how
many jumping actions are required to beat it. These fitness functions allow for
the discovery of levels that exist within the space of examples designed by
experts, and also guide the search towards levels that fulfill one or more
specified objectives.
