{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/evolving-mario-levels-in-the-latent-space-of","title":"Evolving Mario Levels in the Latent Space of a Deep Convolutional Generative Adversarial Network","arxiv_id":"1805.00728","date":"2018-05-02","proceeding":null,"authors":["Vanessa Volz","Jacob Schrum","Jialin Liu","Simon M. Lucas","Adam Smith","Sebastian Risi"],"abstract":"Generative Adversarial Networks (GANs) are a machine learning approach\ncapable of generating novel example outputs across a space of provided training\nexamples. Procedural Content Generation (PCG) of levels for video games could\nbenefit from such models, especially for games where there is a pre-existing\ncorpus of levels to emulate. This paper trains a GAN to generate levels for\nSuper Mario Bros using a level from the Video Game Level Corpus. The approach\nsuccessfully generates a variety of levels similar to one in the original\ncorpus, but is further improved by application of the Covariance Matrix\nAdaptation Evolution Strategy (CMA-ES). Specifically, various fitness functions\nare used to discover levels within the latent space of the GAN that maximize\ndesired properties. Simple static properties are optimized, such as a given\ndistribution of tile types. Additionally, the champion A* agent from the 2009\nMario AI competition is used to assess whether a level is playable, and how\nmany jumping actions are required to beat it. These fitness functions allow for\nthe discovery of levels that exist within the space of examples designed by\nexperts, and also guide the search towards levels that fulfill one or more\nspecified objectives.","url_abs":"http://arxiv.org/abs/1805.00728v1","url_pdf":"http://arxiv.org/pdf/1805.00728v1.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"evolving-mario-levels-in-the-latent-space-of","repo_url":"https://github.com/TheHedgeify/DagstuhlGAN","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"evolving-mario-levels-in-the-latent-space-of","repo_url":"https://github.com/amidos2006/Mario-AI-Framework","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"none","reach":{"status":"ok"}},{"paper_slug":"evolving-mario-levels-in-the-latent-space-of","repo_url":"https://github.com/amidos2006/etpkldiv","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"none","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":null,"task_name":"Generative Adversarial Network"},{"task_slug":"snes-games","task_name":"SNES Games"}],"methods":[{"method_slug":"convolution","method_name":"Convolution"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/1805.00728","atlas_url":"https://app.syntology.ai/?focus=1805.00728","mcp":null,"developers":"https://syntology.ai/developers"},"arxiv_metadata":null,"syntology_extracted_results":null}