My research lies at the intersection of game design, computational creativity, and generative software. I'm interested in building software that act creatively on their own, as well as building tools that can help people be creative. This page gives some broad strokes of topics I'm working on right now - for more information about my work, please see my list of publications.
I currently hold a Royal Academy of Engineering Research Fellowship at Queen Mary University of London. The fellowship runs from 2018 until 2023 and is funding my research into automated game design, generative software and creative AI.
I build AI systems that develop games independently, without direction from other people. My work contributes to the state of the art in both Computational Creativity and Game AI research. This involves using a wide variety of techniques, including evolutionary computation, computational linguistics, formal methods, automated reasoning, machine learning, and more. You can read more about the research on my publications page.
My work is concerned not just with the technical challenge of developing games, but also with the creative and social challenges involved too. Game development is not just a matter of crunching numbers - it involves making creative decisions, working with other people, and existing within a community of other developers. I'm interested in building AI capable of taking on all of the responsibility of being a member of a creative community.
Most of my work in automated game design manifests in ANGELINA, a piece of software which designs videogames autonomously. 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 that help people of different expertise levels 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. This includes automated visualisations like expressive range analysis (see Smith and Whitehead, 2010), automatic optimisation and parameter space search techniques, and experimental interfaces for new interaction methods. Danesh is currently written as a plugin to the Unity game development environment, and is undergoing some work to bring it up to date with the platform. You can find more information here.
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, to make it easier for people to create and edit them. Taraaz hasn't had anything published about it yet, but hopefully will do later in 2019. 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 in a software-first way (developing AI systems like ANGELINA so they can perform game design on their own) 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.
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. This experimental work does a good job of bridging game design and artificial intelligence communities.
Other areas of interest include: