Goto

Collaborating Authors

 Search


Sarah and Sally: Creating a Likeable and Competent AI Sidekick for a Videogame

AAAI Conferences

Creating reasonable AI for sidekicks in games has proven to be a difficult challenge synthetizing player modelling and cooperative planning, both being problems hard by themselves. In this paper, we experiment with designing around these problems: we propose a cooperative puzzle-platformer game that was designed to look similarly to the mainstream of the genre, but to allow for an easy implementation of a quality sidekick AI, letting us test player reactions to the AI. The game was designed so that it is easy for the AI to find optimal solutions while the problem is relatively hard for a human player. We gathered survey responses from players who played the game online (N=28). While the AI sidekick was reported as likeable and helpful, players still reported greater enjoyment of the game when they were allowed to control the sidekick themselves. These findings indicate that the AI itself is not the only obstacle to truly enjoyable gameplay with an AI sidekick.



Robustness and Flexibility of GHOST

AAAI Conferences

GHOST is a framework to help game developers to model and implement their own optimization problems, or to simply instantiate a problem already encoded in GHOST. Previous works show that GHOST leads to high-quality solutions in some tens of milliseconds for three RTS-related problems: build order, wall-in placementย  and target selection. In this paper, we show the robustness of the framework, having very good results for a problem it is not designed for (pathfinding), as well as its flexibility, where it is easy to propose different models of the same problem (resource allocation problem). The goal of the paper is not to improve the state-of-the-art on these problems, but to use them as benchmarks to test GHOST properties.


Toward Embedding Bayesian Optimization in the Lab: Reasoning about Resource and Actions

AAAI Conferences

A key contribution of this paper is to introduce an extended BO setting, called Bayesian Optimization with Resources We consider optimizing an unknown function f by running (BOR), that explicitly models experimental resources experiments that each take an input x and return a noisy output and activities. In particular, our model specifies f(x). In particular, we focus on the setting where experiments the following: 1) resource requirements for experiments, are expensive, limiting the number of experiments which may vary across different experiments, 2) resourceproduction that can be run. Bayesian Optimization (BO) addresses this actions, which produce the various resources and setting by maintaining a Bayesian posterior over f to capture can require varying amounts of time, and 3) a set of "labs" our uncertainty about f given prior experiments (Jones for running concurrent experiments and a set of "production 2001; Brochu, Cora, and de Freitas 2010). The posterior is lines" for concurrent resource production. The problem is then used to select new experiments that trades-off exploring then to select and schedule the experiments and resourceproduction uncertain areas of the experimental space and exploiting actions in order to optimize the unknown objective promising areas.


MCMCTS PCG 4 SMB: Monte Carlo Tree Search to Guide Platformer Level Generation

AAAI Conferences

Markov chains are an enticing option for machine learned generation of platformer levels, but offer poor control for designers and are likely to produce unplayable levels. In this paper we present a method for guiding Markov chain generation using Monte Carlo Tree Search that we call Markov Chain Monte Carlo Tree Search (MCMCTS). We demonstrate an example use for this technique by creating levels trained on a corpus of levels from Super Mario Bros. We then present a player modeling study that was run with the hopes of using the data to better inform the generation of levels in future work.


StarCraft Unit Motion: Analysis and Search Enhancements

AAAI Conferences

Real-time strategy (RTS) games pose challenges to AI research on many levels, ranging from selecting targets in unit combat situations, over efficient multi-unit pathfinding, to high-level economic decisions. Due to the complexity of RTS games, writing competitive AI systems for these games requires high speed adaptive algorithms and simplified models of the game world. In this paper we focus on motion prediction and motion planning in StarCraft โ€” a popular RTS game for which a C++ API exists that allows us to write AI systems to play the game. We explore our existing unit motion model of StarCraft and find and fix some inconsistencies to improve the model by accounting for systematic command execution delays and unit acceleration. We then investigate ways to improve existing combat motion planning systems that are based on discrete unit motion sets, and show that search-based algorithms and scripts can benefit from using a new direction set that considers moves towards the closest enemy unit, away from it, and perpendicular to both directions.


Puppet Search: Enhancing Scripted Behavior by Look-Ahead Search with Applications to Real-Time Strategy Games

AAAI Conferences

Real-Time Strategy (RTS) games have shown to be very resilient to standardย  adversarial tree search techniques. Recently, a few approaches to tackle their complexity have emerged that use game state or move abstractions, or both. Unfortunately, the supporting experiments were either limited to simpler RTS environments ( u RTS, SparCraft) or lack testing against state-of-the-art game playing agents. Here, we propose Puppet Search , a new adversarial search framework based on scripts that can expose choice points to a look-ahead search procedure. Selecting a combination of a script and decisions for its choice points represents a move to be applied next. Such moves can be executed in the actual game, thus letting the script play, or in an abstract representation of the game state which can be used by an adversarial tree search algorithm. Puppet Search returns a principal variation of scripts and choices to be executed by the agent for a given time span. We implemented the algorithm in a complete StarCraft bot. Experiments show that it matches or outperforms all of the individual scripts that it uses when playing against state-of-the-art bots from the 2014 AIIDE StarCraft competition.


Using Lanchester Attrition Laws for Combat Prediction in StarCraft

AAAI Conferences

Smart decision making at the tactical level is important for Artificial Intelligence (AI) agents to perform well in the domain of real-time strategy (RTS) games. Winning battles is crucial in RTS games, and while humans can decide when and how to attack based on their experience, it is challenging for AI agents to estimate combat outcomes accurately. A few existing models address this problem in the game of StarCraft but present many restrictions, such as not modeling injured units, supporting only a small number of unit types, or being able to predict the winner of a fight but not the remaining army. Prediction using simulations is a popular method, but generally slow and requires extensive coding to model the game engine accurately. This paper introduces a model based on Lanchester's attrition laws which addresses the mentioned limitations while being faster than running simulations. Unit strength values are learned using maximum likelihood estimation from past recorded battles. We present experiments that use a StarCraft simulator for generating battles for both training and testing, and show that the model is capable of making accurate predictions. Furthermore, we implemented our method in a StarCraft bot that uses either this or traditional simulations to decide when to attack or to retreat. We present tournament results (against top bots from 2014 AIIDE competition) comparing the performances of the two versions, and show increased winning percentages for our method.


From "In" to "Over": Behavioral Experiments on Whole-Network Computation

AAAI Conferences

We report on a series of behavioral experiments in human computation on three different tasks over networks: graph coloring, community detection (or graph clustering), and competitive contagion. While these tasks share similar action spaces and interfaces, they capture a diversity of computational challenges: graph coloring is a search problem, clustering is an optimization problem, and competitive contagion is a game-theoretic problem. In contrast with most of the prior literature on human-subject experiments in networks, in which collectives of subjects are embedded "in" the network, and have only local information and interactions, here individual subjects have a global (or "over") view and must solve "whole network" problems alone. Our primary findings are that subject performance is impressive across all three problem types; that subjects find diverse and novel strategies for solving each task; and that collective performance can often be strongly correlated with known algorithms.


Hierarchical Portfolio Search: Prismata's Robust AI Architecture for Games with Large Search Spaces

AAAI Conferences

Online strategy video games offer several unique challenges to the field of AI research. Due to their large state and action spaces, existing search algorithms have difficulties in making strategically strong decisions. Additionally, the nature of competitive on-line video games adds the requirement that game designers be able to tweak game properties regularly when strategic imbalances are found. This means that an AI system for a game like this needs to be robust to such changes and less reliant on expert knowledge. This paper makes two main contributions to advancing the state of the art for AI in modern strategy video games which have large state and action spaces. The first is a novel method for performing hierarchical search using a portfolio of algorithms to reduce the search space while maintaining strong action candidates. The second contribution is an overall AI architecture for strategy video games using this portfolio search method. The proposed methods are used as the AI system for Prismata, an online turn-based strategy game by Lunarch Studios. This system is evaluated using three experiments: on-line play vs.~human players, off-line AI tournaments to test the relative strengths of the AI bots, and a survey to determine user satisfaction of the system so far. Our result show that this system achieves a skill level in the top 25% of human players on the ranked ladder, can be modified quickly to create different difficulty settings, is robust to changes in game unit properties, and creates an overall AI experience which is user rated more enjoyable than those currently found in similar video games.