Research
My research area is Artificial Intelligence, specifically
the automatic discovery of intelligent agent behavior and novel content,
particularly in the domain of games. I'm interested in all sorts of games:
board games, logic puzzles, and video games. Agents in video games and robot
agents in the real world often require multiple modes of behavior
(multimodal behavior) in order to handle multiple tasks. One powerful
technique for discovering intelligent agent behavior is neuroevolution,
which is the simulated evolution of artificial neural network brains.
The complex domains I am interested in often involve multiple objectives,
sometimes because separate tasks have separate objectives, so I am also
interested in multiobjective optimization. Sometimes, focusing on
multiple objectives is not enough, and a diverse range of agents and/or
artefacts are needed, which I address using Quality Diversity algorithms.
Domains requiring larger, more complex brains have sparked an
interest in indirect encodings and deep learning. I also use these methods
for Procedural Content Generation via Machine Learning in video
game domains.
My dissertation advisor was Risto Miikkulainen of the
Neural Networks Research Group (NNRG).
Information about my research activities at the University of Texas is available
on my Personal Page within the larger
NNRG website.
My research has led to the development of several software packages:
-
Modular Multiobjective (Hyper) NEAT (MM-NEAT)
is a software framework I developed in Java for evolving multimodal behavior
in Ms. Pac-Man.
It is an extension of the popular
Neuro-Evolution of Augmenting Topologies algorithm.
Work on MM-NEAT is ongoing, because I have undergraduate research students adding features to it
every summer as part of the SCOPE undergraduate research experience.
In fact, this repository is now much more than a mere extension of NEAT, but a collection of various
tools that can be used for evolution and machine learning in various domains.
You can track the most recent updates on GitHub.
-
A lot of work in MM-NEAT has focused on Procedural Content Generation for Games using Generative Adversarial Networks.
This subset of MM-NEAT code is available in the GameGAN repository.
It showcases work in Mario,
Zelda,
Mega Man, and
Lode Runner,
and is based on contributions by former SCOPE
students Benjaman Capps, Jake Gutierrez, and Kirby Steckel, as well as work by external collaborators from around the world.
-
Another project derived from MM-NEAT is Quantum Zentanglement
by undergraduate students Sarah Friday and Anna Krolikowski. The system evolves images, and then combines them in a way
inspired by Zentangle art. Many examples are available here.
-
The Zentangle repo was actually a spin-off of a more general art platform for
CPPN-based Art Evolution.
This system was made by undergraduate students Lauren Gillespie and Isabel Tweraser.
At its core, it is a reimplementation of the now defunct Picbreeder platform for evolving
images with Compositional Pattern Producing Networks. However, it supports many more
types of interactive evolution: voxel-based 3D shapes (like the now defunct Endless Forms site),
soundwaves (similar to Breedesizer), as well as
2D and 3D animations,
which was an original
contribution by Isabel and Lauren associated with their SCOPE research.
-
The EvoCraft SCOPE repo
allows for interactive evolution of interesting and novel shapes in Minecraft
using the EvoCraft API.
Work in Minecraft has also been conducted in
MM-NEAT
to evolve flying machines using Quality Diversity.
This SCOPE research was conducted by Alejandro Medina, Melanie Richey, and Mark Mueller.
Movies and other information
related to research in Minecraft are available here.
-
UT^2 is a software agent
for Unreal Tournament 2004 that won the 2012 BotPrize
competition, a Turing Test for video game bots. The agent depends on the
Pogamut platform, which is Java middleware
that interfaces with Unreal Tournament 2004 via the included GameBots mod.
Information about my past BotPrize research is compiled on
this page.
Note that this code and other code associated with Unreal Tournament 2004 is now included
in MM-NEAT as well,
and additional research in Unreal Tournament 2004
was conducted by SCOPE student Adina Friedman.
-
The Infinite Art Gallery
is a video game in which players interactively evolve art similar to that of
Picbreeder and Endless Forms,
but by interacting with the art in an immersive 3D world. The code for this project is
available on GitHub. It was developed in
C# and Unity by undergraduate student Bryan Hollingsworth
as part of SCOPE.
-
Multi-Brain HyperNEAT
is an extension of HyperNEAT,
an approach for evolving indirectly encoded neural networks. Multi-Brain HyperNEAT
allows individual agents to have multiple separate brains to use in different circumstances.
The code is an extension of the Multiagent Simulator for HyperSharpNEAT, which is a
C# implementation of HyperNEAT available on this page.
-
BREVE Monsters
is a 3D Artificial Life environment with several domains in which I evolved
multimodal behavior. This code relies on the Breve
simulation environment, which has unfortunately been discontinued.
I have also become increasingly involved in undergraduate research
during my time at Southwestern University, thanks in part to the
SCOPE
program, which is a Summer research program for undergraduates at Southwestern University.
|