Explaining AI Gaming

I’ve spent a lot of my academic time working around AI games. I know what you are thinking, and no, that does not mean I try to recreate WarGames.

WarGames, a classic movie with silly tech

This also doesn’t mean I develop hyper complex and abstract games that only the likes of Skynet could compete in. Instead, I focus on many of the same game design principles you would expect from any good game, just with the added caveat that a computer program is playing it.

So what are “AI games” then?

“AI games” are, in many ways, just like any game you’ve played. Multiple players compete to achieve a mutually exclusive goal. This often means two or more players, controlled exclusively by a computer, play a game ‘till there is only one remaining as the winner.

Traditional AI games

Let’s first dissect an extremely popular game for AIs to play: chess.

Chess, not just for your grandparents

Computers and chess have a long history, and rightly so. Chess has a few things that you will see are generally preferred in AI games:

  • Turn based
  • No fog of war (fully observable and deterministic)
  • Discrete grid (8x8 board)
  • “Simple” rules

All of these mean a computer can “understand” a game like chess easily. However, as any good chess player will tell you, the game has a lot of unassuming depth. Deep Blue is probably the most famous chess playing AI (and perhaps the most famous non-fictional AI in general). In fact, there’s an entire chess programming wiki revolving around educating and discussing chess in more depth than most people probably care about.

What about other games?

Chess is a very classical example, but what about modern games? Modern games are increasingly becoming larger and more complex as computers can do more and more.

Grand Theft Auto 5

GTA V is a prime example of this, and rightly so being one of the most popular games of all time. that being said, in many ways it is completely opposite as compared to chess for game mechanics.

  • Real time
  • Hidden information (what isn’t on screen)
  • Open world
  • Multiple complex systems
  • Dexterous gameplay
  • Randomness (weapon spread, car spawning, etc)

That’s not to say these are not “fun” things in games; they are just more of a challenge to an AI, while some are trivial.

To start out, some of the information in a GTA V game is “hidden” from the player. This is normally done via what they can/cannot see on screen based on their current camera angle. There’s also a huge world with a ton of data. All of these would be huge challenges if an AI tried to do traditional AI techniques such as looking forward in time by applying different actions to different game states to find the “best” action at any given point in time. With such a huge glut of known and unknown data in GTA V it just gets too unmanageable fast to be a viable model for current computers.

Likewise, some mechanics in GTA V are trivial for AIs. Much of the multiplayer revolves around shooting at each other. However, an AI will have perfect aim (except for randomness in weapon spread), because it’s just some simple math. I’m sure many gamers have experienced a hacker using an aimbot that perfects their aim. That is not fun, and too easy for an AI to master. It is fun for humans as they try to get better at aiming and moving, but an AI would not have this problem.

This is also the reason many AIs in modern games versus humans seem dumb. The “easy” systems like aiming are purposely dumbed down with the AI essentially rolling dice to decide if they want to hit you or not. Meanwhile the harder things like modeling human activity in large open worlds are more difficult because the AI either has to cheat and have perfect world knowledge, or the AI designers will need to create guessing systems.

Are there any clear “AI games” then?

Not really. Any game that a computer can compete in is really an “AI game”. And that line is becoming increasingly more fuzzy.

MarI/O, an AI that plays Mario

Some people are hooking up AIs using techniques like machine learning to conquer older games, like Mario. With these system in place AIs can learn to play many different types of games. often times scarily well.

StarCraft II being played by an AI

Recently, Blizzard and Google’s DeepMind have opened up the popular game Starcraft II to formal AI challenges. This is very exciting because it’s two big names bringing light to such a formerly niche community of AI competitions.

But in general, strategy games will probably continue to be the most popular genre for AI games. At SIG-Game I’ve outlined a set of guidelines for making games for AIs, which I’ll cover in a future story. But for now I hope this gives you a brief overview of the AI gaming both currently and how it is evolving.

It has never been a better time to be a gamer and a programmer. If you’re interested in getting your feet wet feel free to look into the numerous examples I just listed. Or you can look into my own and others’ contributions to ACM SIG-Game’s various AI gaming repos on GitHub.