SCAIL: An integrated Starcraft AI System Jay Young, Fran Smith, Christopher Atkinson, Ken Poyner and Tom Chothia Abstract—We present the work on our integrated AI system SCAIL, which is capable of playing a full round of the Real-Time Strategy game Starcraft. Our system makes use of modern AI techniques such as particle filtering, on-line machine learning, drive-based motivation systems and artificial emotions, used to find novel structure in the dynamic playing environment, which is exploited by both high and low-level control systems. We employ a principled architecture, capable of expressing high level goal-directed behaviour. We provide an overview of our system, and a comparative evaluation against the in- game AIs of Starcraft, as well as thirteen third party systems. We go on to detail how the techniques and tools we introduce provide advantages to our system over the current state-of-the- art, resulting in improved performance when competing against those systems. I. I NTRODUCTION We are interested in building AI systems capable of acting in dynamic, complex domains. Such domains may exhibit the feature of being oversubscribed, by which we mean that there may many ways for an agent to accomplish mission- level goals, necessitating the management of various trade- offs in deciding which course of action to commit to. As the complexity of a domain grows, it becomes increasingly difficult to envision how a good solution might look, however we do know that any such solution will be an integrated system, gathering together a mixture of various AI techniques to address individual sub-problems. Such an integrated system will be composed of a broad set of information processing systems and mechanisms for managing internal state and control, as well as affectors for altering the environment and executing plans. Our view is that we would prefer these systems to be general mechanisms for accomplishing tasks in the operating domain. That is, we would like to bestow tools upon AI systems, as opposed to full solutions encoded at design-time. An autonomous system should ideally then learn how its tools can be best utilised in order to produce novel solutions for problems it might encounter that can not be anticipated at design- time. In Starcraft the need for such capabilities is clear, as we, as designers, cannot pre-emptively anticipate every situation an AI system might find itself in. An ideal system should be able to creatively adapt, as expert human players do. However, much work still needs to be done before we can reach this point, as questions exist as to how we might process, structure and present information about Starcraft to an AI system, and how this might be exploited. Crucial to the furthering of AI research in this area is the nurturing of a research community to maintain a body of work on integrated solutions and techniques. It is this body of work that we contribute to. II. STARCRAFT Starcraft is a Real-Time Strategy game released by Bliz- zard Entertainment in 1998 1 . The game requires a human player to engage in high-level goal-directed planning, reason- ing under uncertainty, creative adaptation, and the manage- ment of limited attentional resources. This must be accom- plished in real-time, which exasperates many of the already difficult AI challenges present. In recent years the game has become the focus of interest from the AI community, supported by the release of the Brood-War API (BWAPI 2 ), a software API which allows for the injection of code into the Starcraft game engine, and facilitates the production of third-party AI players. This has led to several high-profile tournaments, such as those run by IEEE CIG and AIIDE, which pit these AIs against each other. III. RELATED WORK Starcraft is currently the focus of a small, growing, re- search community, which seeks to construct systems to tackle the AI problems presented by the domain. This comprises a body of work employing techniques such as Bayesian pro- gramming [1], Neural Networks [2], Swarm Intelligence [3], [4], and work on systems that seek to learn from analysing replays of expert human players [5], [6]. There also exist tournaments, with major events run by IEEE and AIIDE, in which large, integrated systems compete against each other. Specifically in our own work, we are interested in the kind of integrated architectures and information processing mechanisms that support goal-directed behaviour [7], and allow systems to play a full round of the game for entry into such tournaments. IV. OVERVIEW Our primary contribution is a description of the architec- ture and techniques used in a system capable of playing a full game of the real-time strategy game Starcraft as the Protoss faction. We introduce a range of techniques that extend the current state-of-the-art in this domain by exposing information and interfaces that allow our system to make intelligent decisions at both high and low levels. Starcraft is as yet a young domain and test-bed for AI work, and so part of our contribution is to disseminate our ideas as a basis for future work, and as a furthering of existing knowledge. Due to space constraints our description will however remain relatively high-level. Several elements of our work are informed or inspired by our pre-existing experience with mobile robotics, with 1 http://us.blizzard.com/en-us/games/sc/ 2 http://code.google.com/p/bwapi/