Live data from Hacker News

The Game AI Programmer's Bookshelf

alumni.media.mit.edu

21–23 of 23 posts

Re: The Game AI Programmer's Bookshelf

#21
post #20
post #6

A few days ago I read an article about Overmind (Starcraft: BW AI), and it got me interested in how AI is built, but I can't learn from books. Are there any blogs or such that teach this kind of stuff? http://arstechnica.com/gaming/2011/01/skynet-meets-the-swarm...

(I'm one of the authors of Overmind.) First, it's important to know that AI is a very broad term. Roughly, there's "modern" AI (machine learning and statistical modeling) and "classical" AI (mostly logic and search). Game AI (as I understand it) falls more into the "classical" AI camp, and classes these days are focusing more and more on modern non-game techniques. kaybe's link is a good starter class for modern AI.…

Thank you very much! I'm mainly interested in Game AI, though I would not be surprised to find "modern" AI used in games at some point, either.

If it's not too much trouble, the slides sound extremely interesting.

Re: The Game AI Programmer's Bookshelf

#22
post #13
post #10

Earlier quoted context omitted.

"Artificial Intelligence: A Modern Approach" by Russel&Norvig is one of the most used course books in AI. It covers basics of formal logic, search, making decisions, handling uncertainty etc. All at an introduction level, though, so for someone with many years of programming experience many of these things may be known already. As my adviser says: Once AI discovers something interesting, it becomes labeled something…

EDIT: I just looked through the table of contents again, and it does actually have useful topics in it. I was so scarred by my godawful, incredibly academic, college AI course that I only remembered the bullshit that we actually covered in that course. Literally nothing in the course was worth wasting my time on, and it looks like we went purposefully around anything that might have been relevant or interesting. It's…

I had a very similar experience as you wrt AI and algorithms courses. Oddly enough, when I then (later) started exploring these more on my own I found them much more interesting.

Re: The Game AI Programmer's Bookshelf

#23
Hi there thread. I teach game AI and have spent the last couple of years researching it heavily. Here is my infodump.

The most important resources for game AI, in my opinion, are:

-----

1. The AI Game Programming Wisdom series, which really ought to include Game AI Pro (it's basically AI Game Programming Wisdom 5). The AI Game Programming Wisdom books are the best resource on practical game AI out there. It's surely not perfect, for several reasons:

  -- Some of the information, especially early on, is a bit dated now, as someone above said
  -- Some of the articles are not great, especially those written by academics (although they are occasionally good)
  -- Some of the articles by actual game programmers are a bit too much of "here's what I did" rather than trying to extract general principles that may be of use to other programmers
  
All that said, I think it's still the best resource on game AI out there. I thanked Steve Rabin once at GDC for the books, and he replied with something to the effect of "I do it because otherwise a lot of this information would never get out there". I think he's absolutely right.

2. GDC Vault talks. I've watched/listened to almost all the game AI talks at this point. They're often very good, and again much of this information doesn't appear anywhere else. It's an expensive proposition, but if you truly care about game AI, at some point you ought to get access and go through them. Sometimes you can find the information/videos in them outside of the Vault on the devs' homepages and elsewhere, but I can tell you from experience that sometimes you can't.

3. aigamedev.com . Alex Champandard has been writing about game AI for a long time -- note that one of the books Jeff Orkin recommends on his page is written by Champandard and is over 10 years old at this point. More than anyone else in game AI, I trust Champandard's analysis and articles, because he's written game AI in big games himself, has given many GDC talks, continues to explore AI with his collaborators in the AI Sandbox, and has interviewed hundreds of game devs personally. Yes, some of his good articles and videos cost money to view, but I really do believe it's worth it.

-----

I realize that my picks above for game AI may not be popular, because all of them cost a decent chunk of money to access in full. But I've seen most of the free stuff out there, and if you want the best resources, written by people who actually have made AI in real games, a lot of times you're going to have to pay for it. You can piece together a lot of the knowledge without it, but it's going to be very time-consuming and you'll still have significant holes when you've finished.

I noticed above that a lot of folks recommended Peter Norvig's AI textbook, often considered the standard textbook in AI. I'm going to say something different and recommend strongly NOT to read it if you're considering making AI for games. I think most of the important knowledge and techniques you'd need to know to make good game AI are not covered anywhere in the book and your time is better spent elsewhere. I don't think it's a bad book in general, just for game AI specifically.

Other books that aren't quite as good as the first three resources I mentioned, but still quite useful:

1. Artificial Intelligence For Games, by Ian Millington and John Funge (on Orkin's page): I think this is the best general game AI textbook out there, in large part because it's one of the few that actually attempts to be comprehensive. There's a lot of good knowledge in it. If you only bought one book I'd recommend this one, but it still has big holes and blind spots. (If you're more of "let me see the source code" kind of person and only buy one book, I'd recommend Programming Game AI By Example by Mat Buckland, also on Orkin's page.)

2. Behavioral Mathematics For Game AI, by Dave Mark (on Orkin's page): Dave Mark is a well-known presence at GDC for running many of the AI panels and talks. His book is not a comprehensive reference, I feel, but covers utility-based AI very well. (If you like utility-based AI I'd also recommend anything written by David "Rez" Graham, currently a lead AI programmer at EA working on The Sims.)

3. AI For Game Developers, by David M. Bourg (on Orkin's page): I like the section on neural networks from this book. It's the best I've seen in the context of games, even though it's a bit old at this point. (I would recommend Andrew Ng's online machine learning course as the best general treatment of neural networks I've seen, but it doesn't talk at all about how you'd apply them to games.)

4. AI Techniques For Game Programming, by Mat Buckland ( http://www.amazon.com/Techniques-Programming-Premier-Press-D... ): I like the parts on genetic algorithms from this book. Like the previous link, it's the best resource I've seen that specifically relates this topic to games, even though again it's actually a bit old these days.

As far as webpages go, here are three that I think are important enough to mention (besides AIGameDev, mentioned earlier):

1. Amit Patel's Introduction To A* ( http://www.redblobgames.com/pathfinding/a-star/introduction.... ). Amit Patel's stuff is great in general, but his A* tutorial in particular is outstanding. It's the only outside resource on A* I recommend to my students.

2. Digesting Duck blog ( http://digestingduck.blogspot.com/ ). Written by Mikko Mononen, a former AI programmer for Crytek, current programmer at Unity, contributor to the Recast open source navigation mesh framework, and programmer on lots of other cool stuff. There's a lot of great info on how to actually work with navigation meshes here, and well worth reading.

3. Steering Behaviors For Autonomous Characters ( http://www.red3d.com/cwr/steer/ ). Written by the guy who got steering behaviors in games started, Craig Reynolds. Still the best place to get started with them.

I hope all this can help someone out there like me when I started researching a couple years ago. :)

Post reply on HN