My main research areas are automated game design, procedural content generation, and game AI. I'm interested in developing new technology that help people make games and be creative in digital spaces, whether it's a tool to do deep analysis for an expert developer at a big studio, or an autonomous AI to teach and guide someone making their very first videogame. For more information about my work, please see my list of publications.
I currently hold a Royal Academy of Engineering Research Fellowship at King's College London, the title of which is Automated Game Design: Next-Generation Creative AI for Games. The fellowship runs until 2023, and funds my research into automated game design and assistive tools for digital creativity in the games industry.
I build AI systems that design novel videogames independently, without direction from other people. This requires solving a variety of difficult problems in game design, level design, software engineering, and human-computer interaction, as well as a host of thorny subjective issues like understanding meaning or emotion. I apply a broad range of AI techniques to these problems, including computational evolution, automated theory formation, Monte Carlo search methods, code synthesis, answer set programming and more.
My work is concerned not just with the technical challenge of developing games, but also with the creative and social challenges involved too. Most games carry lots of real-world meaning, and they are made, played and discussed by people. Building an AI that can design games means having it engage with all of these considerations too, and is vitally important if we want AI to work with or for people in the future.
Most of my work in automated game design manifests in ANGELINA, an automated game designer. You can play some of its games on the Games page. ANGELINA was the first AI to enter a game jam, designed a Top 500 Android game, has been commissioned by Wired and the New Scientist, and had its work exhibited at the babycastles gallery in New York. If you'd like to exhibit ANGELINA's work or commission it to design a game, please get in touch!
Increasingly, generative software is finding its way into our lives - how we communicate with each other, how we express ourselves, our creative pasttimes and our favourite media. I build tools and develop theory that help people work, play and create with generative software. This involves experimenting with ways to present and interact with generative software, and new techniques for analysing and understanding them.
One of these tools is Danesh (دانش) which lets users interact with and change generative software they've written in a number of different ways. Danesh implements existing analysis techniques expressive range analysis (see Smith and Whitehead, 2010), and also introduces many new ones, including automatic optimisation and parameter space search techniques, and experimental interfaces for new interaction methods. You can see me talk about Danesh at GDC or read my latest paper about experimental analysis of generative systems.
I'm currently working on another tool, Taraaz, in the same vein as Danesh, which aims to provide new ways to represent data about generative systems while people edit them, which is an exciting new AI and HCI problem. I'm also working on new analytical methods for generative software, which will support more theoretical research in the area.
I'm interested in applying AI to understand and model game design. A lot of my research involves doing this by building models of game design within systems like ANGELINA, but I'm also interested in ways that AI can help game designers work better, provide insight into popular designs or techniques, and help create new kinds of game.
Part of my practice involves making games, usually with experimental systems in them. Recently I've been making games about what I am calling generative forensics, in which the player must explore and understand a generative system simply by experiencing its output. You can find more information, and some writing about the idea, on my itch.io page.
I'm always keen to hear about new applications for generative techniques to games. This includes finding new content that can be generated, and finding new techniques to apply to familiar domains. I organise the annual Procedural Generation Jam (PROCJAM) which is a great source of inspirational ideas and new work in this area, along with its companion zine, Seeds. This experimental work does a good job of bridging game design and artificial intelligence communities.
Other areas of interest include: