At the 2015 GDC AI Summit, Mike Lewis and I did a lecture on some of the work that we did while I was on a consulting contract at ArenaNet to redo their AI architecture for games such as their MMO franchise, Guild Wars 2. The lecture features my Infinite Axis Utility System architecture as well as some work that I have done with tactical influence maps.
Overview: Today’s MMOs often have hundreds of types of agents in their game world – each with potentially dozens of actions they can take. Hand crafting the AI for every agent can be a time-consuming process fraught with brittle, unpredictable results. Often, the only way to achieve the breadth of characters is to sacrifice the depth of behaviors that they can take. This session will show a new architecture that combines a modular, utility-based AI system and a powerful influence map engine. With it, agents are not only far more intelligent than prior iterations, but use significantly less processing time. This allows us to put not only smarter creatures in the world, but more of them as well. We will also show the tools that allow designers to create unique, expressive behaviors for hundreds of character types in a fraction of the time that it previously took – often creating new, unique character behavior packages in minutes rather than hours!
It turns out that both of the GDC AI Summit lectures that I did with Kevin Dill are up on the GDC Vault for free now! Thanks to the folks at GDC for doing this — it’s a great honor to have my lectures selected as being among the free ones!
The links below will take you to the respective videos on the GDC Vault. If you are planning on attending the 2013 AI Summit at GDC, it will be helpful to watch these first. My lecture this year is a new structure for building utility-based systems using the mathematical concepts expressed in these prior lectures.
Overview: The ‘if/then’ statement has been the workhorse of decision modeling longer than digital computing. Unfortunately, the harsh transition from yes to no often expresses itself through behavior in ways that are just as harsh. Utility theory has roots in areas such as psychology, economics, sociology, and classical game theory. By applying the science of utility theory with algorithmic techniques such as response curves, population distributions, and weighted randoms, we can improve the modeling of the underlying brain of our agents, broaden the potential decision space, and even manage edge cases that other decision systems stumble over.
Utility-based AI is a widely-used approach, particularly for games with deeper or more complex behavior. While new users may find utility functions complex and intimidating, experienced users see them as a natural and comfortable way to express behavior. In a follow-up of their 2010 lecture, Kevin Dill and Dave Mark will show how simple problems can be laid out quickly and easily using common design patterns. Additionally, they will show how complex situations can make use of utility functions to express more nuanced behavior. They will then walk through real-world examples, showing how they would be expressed in a utility-based architecture.
Session Description For some time, the industry has been exploring how to effectively manage the complexity of multiple story arcs, contextually appropriate character behavior, and yet still maintain an over-arching ebb and flow of tension and drama. In their quest, writers and designers have started looking to AI for solutions to these problems. Additionally, many techniques that are already being used in interactive drama can be used to augment traditional games. Through three short lectures, this session gives examples of ways that AI can enable the design and implementation of branching narratives, dynamic adaptive dialog, interactive storytelling, and drama management.
Idea Takeaway The attendee will be presented with a number of examples of how AI techniques have addressed the needs of dynamics, interactive storytelling in games.
Session Description We asked designers from all across the industry to answer a questionnaire of probing – and even outright crazy questions. The intent was to get their heads and assemble a sort of wish list. We then present their answers to a panel of top-notch AI designers and programmers and ask them… how would you go about granting this wish? In what promises to be the most forward-looking session of the AI Summit, this panel should give us all a look into not only what the designers would like in their games, but some ideas on how to address the difficult obstacles in AI.
Idea Takeaway An impression of how much AI technology can accomplish, an insight into the technical design process of experienced developers. This session should be kind of fun and wacky!
Session Description In the past 30 years, game graphics have progressed to the point where still shots and cutscenes can often look extremely realistic. However, as soon as characters act in the world, that sense of believability is often broken. The characters no longer seem alive. Much of the impression that something is alive comes from minutia such as what they look at, how they move, and what they do when they aren’t doing anything important. This session examines this phenomenon and gives concrete examples of how to improve the feeling of aliveness in game characters.
Idea Takeaway Attendees will see how including subtle details in the behavior can increase the believability of game characters.
Session Description While there are many versions of post mortem analyses in the game business, sometimes a broad brush approach doesn’t highlight what the truly interesting nuggets are. In this session, we asked three AI programmers for recent games (Killzone 2, BrĂ¼tal Legend, Dawn of War 2) to specifically address some unique challenges they faced in the development of their respective titles. They will describe what the challenges were, how they often arose from design decisions that pushed the boundaries of the typical AI comfort zone, and how these challenges were overcome.
Idea Takeaway The attendee will see examples of creative solutions to AI design problems – and potentially come away with a sense of how stepping outside a comfort zone is not necessarily dangerous.
Session Description AI programmers rarely use a pure architecture such as a State Machine, Planner, or Behavior Tree in isolation. Rather, several symbiotic architectures are mashed together, resulting in an overall architecture that is unique and powerful in its own way. This lecture is designed as a series of three mini-lectures where you will hear about several mashed up AI architectures along with intriguing lessons and insights.
Idea Takeaway Insight into the pros, cons, and subtleties of combining various AI architectures.
Session Description Over the last few years, various forms of behavior trees (BTs) have become the standard in industry. Since flexibility and customization are arguably the main strengths of BTs, they can be implemented in many ways. This set of short presentations will show how other developers are using them in practice. The presenters will show what developers can do to make behavior trees more designer friendly and easier to interact with via script. The session also shows implementation techniques to help keep AI code decoupled from the game logic and improve performance.
Idea Takeaway This session will explain different ways programmers can leverage BTs in their games. The attendee will see how various styles of behavior trees are used in practice to address many different problems.
Session Description Often one of the most important issues an AI programmer needs to address is the decision of which architecture to use. This choice lays the foundation for the rest of the project both enabling and limiting choices down the road. With myriad (and even conflicting) pro and con arguments for all the major AI architectures, it can be difficult to determine which one is right for a given project. This panel approaches this issue from a unique perspective. With one person acting as an advocate for each of the popular AI architectures, the panel will be presented with hypothetical game examples and asked to explain why their method is the right tool for the job and why others are not.
Idea Takeaway While this session is likely to get playfully adversarial, the attendee will be given not only a better understanding of the pros and cons of each of the types, but witness some of the thought processes that must occur when deciding on an AI architecture.
Session Description Typically, the ‘next big thing’ in AI comes from tireless research and experimentation. This session will feature many interesting and experimental working game AI prototypes from both industry and academia, all demoed live on stage. This promises to be a very inspirational and thought-provoking session with many presenters on-hand to show their creations and innovations.
Idea Takeaway Attendees will see a variety of new and different experiments and perhaps the ‘next big thing’ in AI. Prepare to be inspired to push the boundaries of traditional game AI!
Session Description The ‘if/then’ statement has been the workhorse of decision modeling longer than digital computing. Unfortunately, the harsh transition from yes to no often expresses itself through behavior in ways that are just as harsh. Utility theory has roots in areas such as psychology, economics, sociology, and classical game theory. By applying the science of utility theory with algorithmic techniques such as response curves, population distributions, and weighted randoms, we can improve the modeling of the underlying brain of our agents, broaden the potential decision space, and even manage edge cases that other decision systems stumble over.
Idea Takeaway This lecture explains the underpinnings of utility theory, and shows concrete examples of how to leverage it using the power of other algorithmic techniques regardless of the overall structure being used for the agent AI.
Session Description Small games have small budgets and short, iterative release cycles. But they still need great AI, only cut to size. This session presents first-hand experiences with successfully creating AI for a variety of those kinds of games. We will address the limitations faced by small budgets and present some useful tips from the trenches that will allow you to maximize the bang for your AI buck.
Idea Takeaway This session will show you how to deliver a working AI within a tight deadline using minimal manpower. It will also show you examples of simple approaches that actually add value to the game. Finally it will demonstrate that it is possible to start small and improve over time.
Session Description Sometimes things just need to be said. Saying them out loud in a room filled with (hopefully) like-minded people just makes it all the more interesting and cathartic. Seven AI developers from all corners of the industry will deliver quick, to-the-point rants about what’s on their mind. Topics include AI design and programming, working with other portions of the dev team, working with academia, the perception of game AI by the public, scripting languages, and even those scary floating point numbers! Whoever said AI programmers only sit with their heads down over their keyboards?
Idea Takeaway Find out what’s on the minds of AI developers in a fast-paced, fun, yet hopefully not controversy-rife session!
Session Description In recent years, there has been an increase in the number of available AI middleware products designed to streamline common development techniques. Their reception by the industry has been spotty, however. While there are some success stories and some tales of horror, many studios and individual developers still eye AI middleware with a mixture of curiosity and suspicion. This four-person panel, comprised of people whose experiences and opinions are spread across the spectrum from pro to con, will share their rationale for why existing middleware is good or bad and what changes future products could make to become more appealing to developers.
Idea Takeaway The attendee will hear real stories of how the use of AI middleware has hurt or helped development projects.
The GDC folks have put up the main page for the AI Summit at the 2010 GDC. This year, I am listed as a Summit Advisor alongside Steve Rabin. While I helped out a lot last year, I wasn’t listed as an official advisor. That makes for a wonderful honor. I’m so pleased to be working with all the great people in the AI Game Programmers Guild to put this event on.
Well, I’m back and somewhat recovered from GDC. (It always helps to have a day of downtime built into the end of the week.)
From the comments that I and the rest of the participants received, the inaugural AI Summit was well received. I know that all of us were very pleased in not only the presentations that we each delivered but in all of the other ones as well. Apart from a false start at the beginning due to my laptop being under the proverbial weather with a virus, the rest of the two days went off smoothly.
I will post more on my reflections on each of the Summit sessions throughout the week. I did want to touch on a couple of high notes, however. We were very proud (as a group) to be able to deliver such a wide variety of topics. From animation to pathfinding to behavior to knowledge representation to layered goals and multi-threaded architecture, we hit a lot of the key topics. I think this was one of the comments that I heard the most… that there was a little bit of everything. Additionally, many people commented on how we mixed some past techniques with cutting edge stuff and then even some blue sky ponderings (“Human AI” and “Photoshop of AI“. Additionally, people liked the sessions that weren’t specifically technical such as the one on how to get along with designers.
For those that want to take a look at one man’s views on it, Dan Kline did another of his “live blogging” exercises over at his pad, Game of Design. (Day 1 | Day 2)
In other GDC news, After the Summit, much of the week was anti-climactic. There were the 3 normal AI roundtables as well as one run by Alexander Nareyek. I will be posting pictures and audio from the roundtables on this page. You can also check out last year’s stuff here. Eventually, I will have the pictures up from the AI Game Programmers Guild dinner (Sunday) and the regular annual AI Programmers Dinner (Friday) up as well. (Once I saw how dedicated to taking photos Petra Champandard of AIGameDev was, I figured I would let her do most of the shooting. I will link to those pictures as they become available.
Other than that, I only went to three sessions – one of which could actually be co-opted into an AI session. It was on balancing multi-player games. I figure this is an important facet of constructing AI as well for obvious reasons. I went to a roundtable hosted by Ben Sawyer about exploring emerging markets in games.
Peter Molyneux’s lecture on how Lionhead explores experimental stuff was surprisingly lame for a Molyneux talk. I was just really hoping to see more of where they were going right now. I thought it was going to be a sneak peak session. (I should have suspected something when his PR handler was nowhere to be seen.) The only amusing moment was when he almost let out the name of the project… although it is likely no one would have gotten much out of simply a name. Oh well.
I did spend a lot of time on the Expo floor. Much of that time was spent nosing around my publisher’s booth. I guess I sold quite a few books. The GDC store sold out of the 12 that they brought. Additionally, my publisher sold quite a few from their booth. Many of those sales happened while I was there. It took me by surprise to have people ask me to sign their copies. To be honest, it was more of an honor for me to be asked than I figure it was for them to receive a little of my ink. All I asked of them was to post a review out on Amazon when they got done. That would mean a lot to me (and the other people who might be interested in buying it).
Anyway, I plan on writing a bit more after I finally get my laptop cleared up. (Not looking good right now.) If you are coming into this post directly, you may want to check the tags below to see if I have written anything further about the Summit or GDC 2009.
As the week of GDC rolls out, I will be posting observations both here and on this page. Additionally, any files or pictures related to the AI Summit, will appear on this page. It’s going to be a hectic week so I might not get stuff up daily. Be patient with me.
For those of you looking to find the stuff from last year, you can find it here.