In Computational Creativity research, we study how to get computers to be creative, how this can be applied to practical projects, and what this means for society. There are huge benefits in building software which can take on creative responsibilities in arts, science and business projects. We believe there is a bright future where computer programs become our creative collab-orators. In exploring the possibilities for software to create alongside us, we can also add a great deal to the understanding of creativity in people, and raise interesting philosophical questions about what the nature of creativity is.
Our research can be roughly separated into three areas:
We build generative software which produces artefacts such as mathematical theories, video and board games, paintings, poems and designs. We aim to successively hand over creative responsibility to the software so that human input and control is minimised, and it becomes possible to project the word creative onto the behaviours the software exhibits. In addition, we aim to enable our software to be accountable for its actions, by providing commentaries on what it’s done and why, and by describing what it has achieved and how this fits into the creative context it’s working in.
Formalising our Understanding of Creative Software
We have undertaken a number of formalism efforts, with the aim of designing a more systematic approach to answering questions such as “is software version B more creative than software version A?” As part of the EPSRC Fellowship project entitled: “Computational Creativity Theory”, we are building a formalism around the FACE descriptive model for the creative acts that software undertakes and the IDEA model, which describes the impact that these creative acts may have on an ideal audience. We are currently working on the next stage of this formalism, which uses a diagramattic approach to describe software processes, with particular emphasis on highlighting which creative acts should be attributed to the software and which to the programmer/user.
Raising and Addressing Philosophical Issues
We have often led the way in highlighting difficult issues which arise when considering the notion that software can be independently creative. In particular, we have argued that comparison test such as Turing-style tests promote the building of naive programs which engage in pastiche. We have also brought to the fore the idea that software should be accountable for its creative acts, i.e., explain how and why it has produced a particular artefact, and generally frame its behaviour in such a way to add value to its creations. We’ve also studied serendipity from a computational viewpoint, and introduced the creativity tripod, arguing that software has to exhibit skill, appreciation and imagination in order to avoid being seen as uncreative.
ANGELINA – Creative Code Generation for Automated Game Design
Written by Michael Cook, ANGELINA is software we are using to investigate aspects of automated game design. We have been awarded an EPSRC grant entitled: Creative Code Generation for Interactive Media, and we will be investigating the possibility for creative software to generate and modify its own program code, by extending ANGELINA to generate code for videogames.
Computational Creativity Theory
Funded by an EPSRC Fellowship, we aim to bring more formality to the assessment of creativity (and our perception of it) in software, and progress in general in Computational Creativity research. We have challenged foundational notions such as the usage of Turing-style tests, proposed new formalisms and raised various philosophical issues. The Fellowship also acts as an umbrella for all the projects in the group, in particular the FloWr and HR projects.
COINVENT – Concept Invention Theory
In the EC-funded COINVENT project, working with teams in Barcelona, Bremen, Dundee, Edinburgh, Osnabrück and Thessaloniki, we aim to develop a computationally feasible, cognitively-inspired formal model of concept creation, drawing on Fauconnier and Turner’s theory of conceptual blending, and grounding it on a sound mathematical theory of concepts (based on Goguen’s proposal of a Unified Concept Theory). To validate our model, we will implement a proof of concept of an autonomous computational creative system that will be evaluated by people in two testbed scenarios: mathematical reasoning and melodic harmonization.
Pushing the Creative Boundaries of Evolutionary Approaches
We have undertaken many projects to stretch the complexity of artefacts that can be produced by evolutionary means. Amongst other things, we have looked at evolving abstract art pieces, building designs for games, behaviour trees for AI-bots, artistic scenes, simple interactive games, image filters and pixel shaders. We have used these projects to investigate evolutionary approaches as a suitable AI technique for Computational Creativity projects.
FloWr – Studying Automated Process Invention for Creative Purposes
Under development by John Charnley, Simon Colton and Teresa Llano, the FloWr system is a general-purpose framework for building creative software. More than being a mere tool to enable people to develop generative software, the FloWr system itself will produce, test and improve upon new Flowcharts, ane we will use this as a platform for investigating automated process invention. We released the software to the Computational Creativity community in early 2014.
HR – Automated Theory Formation
We have always been fascinated by the processes at work in mathematical discovery, and in the potential for mathematical reasoning to solve Artificial Intelligence problems. We have developed a novel hybrid learning/reasoning approach called Automated Theory Formation, implemented it in the HR System, and applied this to many mathematical discovery and creative problem solving projects.
The Painting Fool – An Automated Artist
We aim to build a software system called The Painting Fool, which is one day taken seriously as a creative artist in its own right. To achieve this, we are implementing AI, Vision, NLP and Graphics techniques to slowly hand over creative responsibility to the software. In addition, we regularly hold exhibitions of The Painting Fool’s artwork in galleries, conferences and other events. We also engage with the public and researchers on philosophical issues raised by the project. There is much more information on The Painting Fool’s own website.
WHIM – Automating Fictional Ideation
Concept formation has been simulated in many areas of Artificial Intelligence research, such as machine learning. However, with only a few exceptions, this has always been done in order to find out more about reality. Working with partners from Cambridge, Dublin, JSI and Madrid on an EC-funded project, we are researching how to build software which can invent, assess and present fictional ideas which can become the basis of cultural artefacts such as poems, stories, advertisements and paintings.
MCTS – For Games and Beyond
Monte Carlo Tree Search (MCTS) is a method for making optimal decisions in Artificial Intelligence problems, typically move planning in combinatorial games. Cameron Browne and Simon Colton are investigating MCTS as part of the EPSRC project “UCT for Games and Beyond” in collaboration with the universities of Essex and York. Our particular interest in MCTS lies in its potential use as a creative search algorithm for game design and other creative tasks.
CADGame: Computer-Aided Game Design
The CADGame project investigated new approaches to automatically modelling player behaviour and experience from gameplay data, to support human game designers and improved player-adaption in video games. We worked with partners at Rebellion Developments Ltd., a well known game design studio based in Oxford, on exploiting data capture in their design tools.
DEFCON – AI-Bots for Automated Play
Robin Baumgarten developed an AI-Bot programming API for Introversion’s strategy game DEFCON, which is a minimalist RTS game about nuclear war. The project page contains information about the API, an FAQ and tutorial, and example implementations. There was a IEEE Competition , and we also experimented in building AI-bots which competed successfully against Introversion’s own automated opponent, as described in these papers: