X
Business

It's youth vs. experience in the Google AI challenge, and the kids are winning

The 2010 Google AI challenge is a programming contest designed to help push the limits of artificial intelligence and game theory. Seasoned computer industry professionals are competing but the leader board is currently dominated by university students.
Written by Ed Burnette, Contributor
planetwars.png
The 2010 Google AI challenge is a programming contest designed to help push the limits of artificial intelligence and game theory. Contestants write a "bot" that plays a game called PlanetWars against another contestant's bot on a randomly generated map. The two players start with 1 planet and 100 ships, and the goal is to have the most ships remaining after 200 turns. The catch is that you only have 1 second to complete your turn in a single thread. Here are some links to sample games you can watch in your browser to get a flavor for the competition: game1, game2, game3, game4, game5, game6, game7, game8.

This contest is really a deceptively complicated resource allocation and strategic planning problem disguised as a game. People have been using all kinds of algorithms such as neural networks, minimax, payoff matrices, dynamic programming, and more to try to win. Pure heuristics, pure mathematical, and hybrid bots are striving against each other for dominance. Competition is fierce. There is no prize for the winner except bragging rights, but that hasn't stopped more than 3,000 people from entering so far.

Most of the entries are from universities and independent researchers, but professional programmers in the computer industry are represented as well. For example, Microsoft has 11 entries, and Yahoo has 3 entries. Employees from Amazon, Google, IBM, and others are also competing, but the leader board is currently dominated by university students (Note a backlog in the registration system has left many people marked as unaffiliated but I hope they'll fix that soon).

Bots can be written in any number of languages including Java, C, C++, Python, Scala, and even Go. The current leader used SBCL Lisp.

On the official server you upload your source code and it gets compiled and run there. They use Amazon EC2 cloud instances to handle the load. But there's also an unofficial server that works over TCP - you run the bot on your computer and connect to the matchmaker service. No registration is required for that one, and I use it a lot for testing my own bots. The guy that set up that server is 18 years old.

There are also forums and an IRC channel, and a very nice viewer for running bots locally against each other, against an opponent on the TCP server, or against a human player in real time. Though I should warn you, even if you give yourself unlimited time to think about each move, it's practically impossible for a human to beat a halfway decent bot.

The submission deadline is November 27th so there is still time to participate. I've seen several great new entries appear just in the past few days. After the submission deadline, the rankings will be wiped clean and all bots will compete on the official servers until a clear winner emerges. The results are expected to be announced on December 1st.

Editorial standards