Editorial
running-dummy

Sold in 54 Seconds: Doing Game AI Research… with Style!

Alex J. Champandard on November 22, 2008

As a conservative estimate, Game AI research is over 10 years behind its Animation counterpart, in terms of funding, respect from industry, and applications in modern games. Graphics research is probably further ahead by a few more years. You might be tempted to argue about the substance of modern AI research applied to games, but it’s becoming more of a presentation and perception problem than anything else.

If you’re currently involved in research, you can help improve the situation. Assuming you have a solid motivation for your project that’s not based on strawman arguments of what industry is doing, here’s some practical advice on how you can boost the benefits of your research with little work. I’ll be using examples from work in animation, since they seem to have this part nailed down much better than AI researchers.

#1
Make a Simple Project Page

Having a large list of publications on your homepage is a start, but you ideally want to create a separate page for your work. It shows that if you’ve gone through the trouble of creating a separate page, you’re proud of the work itself — which is a great start. Some examples to use as reference:

You’ll note that these pages are clean and elegant. That kind of simplicity is exactly what you should be aiming for, providing the necessary information without the clutter.

#2
Make a Video of Your Work

These days, there’s no excuse for not making a video of your work. This is an example of my own implementation of motion graphs (after 1.5 weeks). The video was recently released in the AiGameDev.com Member’s area, as an example of this kind of technology at work:


Video: 6 running motion-capture animations assembled automatically together into a motion graph, and played back randomly.

You can do so with off the shelf screencasting tools for both Windows and Linux, but if you build your own testbed, you’re far better off making minor changes to your project to write out each frame as JPG or PNG files. This will give you a nice smooth video as above with few artefacts. To make a video out of the frames, load up Ubuntu (without installation, from the DVD), and type the following:

mencoder mf://*.png -mf fps=30 -o DEMO.avi -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=4096

That simple command line tool will create a video that you can upload to the popular video services, and they’ll figure out how to better compress it for the web.

#3
Release a PDF Paper!

Despite a solid number of attendees, this year’s AIIDE is failing to have as big an impact on the community as last year (see coverage of 2007’s papers and posters) because practically none of the papers are available online (to date). As such, the dissemination of the research presented at the conference will be roughly thousands of times less, sadly.

This is a sad state of affairs, particularly since reputable journals also try to proclaim strict copyright practices. However, as the nature of copyright evolves along with the internet, none of these journals or conferences will risk alienating the research community they depend on — so you’re pretty much safe to release a version of your white paper with minor adjustments.

Make a pre-print PDF before the conference / journal is released, and keep it online afterwards. (As a reference, all animation papers from Siggraph were online months before the conference, and still are now.)

#4
Release an Audio Description

While you can record your voice easily when doing a screencast, for a short demo you’re better off doing it as follows:

  1. Prepare the rough outlines of what you’d like to say that corresponds to the video you created.

  2. Record yourself in Audacity, do minor edits to the text so it fits with the video, and export as MP3.

  3. Merge the images you captured above with the audio using a command line tool in Linux.

This is the following command line you need for this:

mencoder mf://*.png -mf fps=30 -audiofile DEMO.mp3 -oac copy -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=1024 -o DEMO.avi

As an example, here’s a project that runevision posted in the AiGameDev.com forums. (This was presumably done as a screencast.)

#5
Present & Discuss Your Work Online

Research is not a push model, nor is it a pull model. It’s a discussion! Luckily, it’s becoming much easier to talk about your research. If you’re solving useful problems (like Rune’s inverse kinematics project) then you’ll have no trouble getting feedback and attention from developers. Why not start a blog? Or, if you have an article describing your game AI research ready, just send it in for publication here on the Game AI for Developers blog (RSS).

On top of that, the game AI community is getting more organized too, so it’s not much more straightforward to get direct feedback from developers online (before you even go to the conferences). As an example, the AiGameDev.com forums now have over 2,200 members with a mix of programmers from industry and independent developers. It’s become a great nexus and incubator for some promising ideas in the field. (Registration and introduction required.)

Summary

If you’re not thinking about explaining your research to other academics, or convincing professional developers that you’re doing useful work, you’re missing out on many opportunities. By occasionally taking few days to execute the ideas in this article, you’ll not only benefit from your research personally, but you’ll also help drive AI research forward.

There’s no reason why the game AI community can’t be as successful as the animation or graphics research being done out there!

Discussion 1 Comments

Andrew on November 22nd, 2008

Awesome stuff, I especially agree with point #3! Even slides from talks are becoming rare for big and small conferences, since most of them simply don't care enough to put many up. I'm trying to get an Internet Archive collection to hopefully host what I can get slide/paper wise, a more permanent location is always nice.

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!