Article

Game AI Links Week #36 2007

Alex J. Champandard on September 8, 2007

Here are some recent links from around the web, relating to artificial intelligence in computer games. If you have any other tips, feel free to post them in the comments or submit them here!

PS3 Is Worse for AI

Don Dini picked up on an interview with Ubisoft developers who claim that the XBox360 is just better at AI. In practice, many developers have noticed how Microsoft’s console is better suited to game logic and pretty much anything with indirection (e.g. conditional jumps, virtual function calls, etc.).

Assuming they using a large switch statement, Don points developers towards modern planning techniques. It should certainly help performance on Sony’s console, but planners also take advantage of the Xenon processor’s branch prediction, so the original point is still open for debate.

Python API for AI Scripts

Tom Hoffman discusses Wesnoth, and it’s AI abilities. The developers have exposed an API for artificial intelligence, and the whole logic is implemented using a Python script. This approach seems to summarize what the average game does for AI these days…

An Approach to AI in Games

The Digital Pensieve has a post with some thoughts on how to approach game AI, thinking about it in terms of gauges, inputs and outputs.

Still a Long Way to Go…

kranix discusses how game AI is improving in terms of intelligence, and the developers are certainly putting in more time, but still has a lot of progress to make. It seems that, in most of these examples of games, the AI is lacking polish the most. Is this a sign of a bad workflow for developing AI?

Discussion 6 Comments

Andrew on September 9th, 2007

Neat links, glad to see you posting again Alex. :)

alexjc on September 9th, 2007

Yes, I just got back from Rome! Managed to crank out a few posts this week despite being so exhausted from all this tourism... :-)

gware on September 12th, 2007

The first point may be a bit harsh. I agree with Don Dini when he says that AI is nothing more than algorithms (and data flow) and saying that ps3 can't handle this is just plain wrong. I believe what the developer wanted to say is that it wasn't possible to run their AI engine as is on ps3. Here is a little presentation on A optimisation research on ps3 : http://www.insomniacgames.com/tech/articles/0807/files/a_gameplay_architecture_for_performance_clean.pdf

alexjc on September 12th, 2007

Gabriel, The original interview implies that the PS3 is not as good, but it still can do AI. Each SPU is just the same as a small computer... Reversing the argument, wouldn't you say that the XBox360 is easier, and hence better to write AI for? In my experience it certainly is the case, primarily because with the MS console you can develop algorithms without worrying (too much) about heterogenous processors and limited memory access. Sure, Don is right, it does require developer skills to get right on the PS3, but isn't that agreeing that the XBox360 is better by default? :-) Maybe I was a bit harsh though! Alex

gware on September 12th, 2007

Of course I agree with anyone saying that the XBox, being easier (and having a very good compiler), is better to write AI for. I think games are easier to make on XBox, meaning you'll get them faster, get more time to polish, and optimize where you can. Programming on XBox is a very well known field. It's a very very very good platform. But, from my experience, it can be very ineffective to try to port code from the Xbox to PS3. That said, I believe (AI) programmers should design parallelism upfront on PS3. Writting code for PS3 it's (a bit) different than for XBox, but the hardware can do as much. It's just , IMO, harder to get it (working) right on the first :) So maybe the Xbox is better by default :)

leghan on September 12th, 2007

Hi, wellcome back!! Well, in my experience with nextgen consoles, I have to say that PS3 is certainly more difficult to program, but this is due to the bad habits in todays game developers industry. PS3 offers much more potential power than XBOX, but you are forced to change your main, and refine your thinking when trying to desing your algorithms and architecture. And in my opinion, the problem with AI in PS3 is that you should be able to organise your code as to be able move costly tasks (graphics, sound, physics) to the SPU, so you have all the time you may want in the main PPU for your logic and IA tasks. And if you plan your taks carefully you can also take advantage of some SPU to manage some AI processing-intense task, such as RBS or Neural Networks. So its only a matter on developers reticence to improve their programming habbits (and also, I must admit, a matter of gamestudios reticence to invest time in I+D and improve code quality) I personally think that the higly scalable multicore approach of PS3 is what can make the difference in game computing in the future. The only doubt is if the developer community is really ready to face the change... Angel.

If you'd like to add a comment or question on this page, simply log-in to the site. You can create an account from the sign-up page if necessary... It takes less than a minute!