Tanks, soldiers, snipers, mortars and bombers fanned out rapidly over unfamiliar undulating terrain, searching for their enemy counterparts and trying to seize control of battle towers. Some armies swarmed frenetically over the land, searching and fighting as they went, while others moved cautiously while staying huddled in a tight group, building their strength slowly and methodically.
Hundreds of spectators watched and cheered Feb. 1 as the rival armies battled it out on giant screens in Kresge Auditorium. Out of 150 teams that signed up to write the programs controlling those battle swarms during IAP, the best eight, chosen after a full day of one-to-one matches earlier in the week, slogged it out for the final victory in a double-elimination tournament.
The BattleCode software competition has become an annual tradition at MIT, and this year's battle was the fastest, most complex and most detailed yet. As second-year computer sciences student Joel Stein, one of the event's organizers, explained before the final tournament, the 300 students who participated ended up writing a total of 350,000 lines of computer code.
The BattleCode contest has become an even bigger event than MIT's fabled 6.270 annual autonomous robot competition, Stein said.
Although the teams who wrote the code stood on the stage and narrated the action while the battles unfolded, they had no control over the action at that point--everything was determined by the strategies built into the software ahead of time, and by the vagaries of the undulating terrain, filled with obstacles, whose contours were different in each round of the contest.
In the end, adaptability and responsiveness won the day. A team called "in memory of James Albrecht," whose program was especially adept at discerning its opponents' strategies and modifying its own accordingly, swept to victory in a record about as strong as that of the New England Patriots. The team, named in honor of an MIT senior who died last summer and had been a former teammate, lost only a single game out of the 16 played through to the finals.
The four-member winning team walked away with the $5,000 first prize, as well as several additional prizes, but overall more than 20 teams ended up with cash prizes, certificates and trophies by the evening's end, and even the hundreds of spectators got a free T-shirt just for watching the action. In addition to cash awards totaling $40,000 for the top 16 teams (donated by a long list of corporate sponsors), prizes were awarded for everything from cleverest strategy and most-unusual formation (one team had its soldiers dash out onto the field to form the letters "LOL" before actually beginning to fight) to the best team name.
BattleCode is also known as course 6.370, and contestants whose code was good enough to overcome a basic reference program and who wrote up descriptions of the strategy they used earned six credits for participating.
Following last week's final tournament, there is also an open version of the contest that can be entered by anyone outside the MIT community. That final competition will be held in March.
A version of this article appeared in MIT Tech Talk on February 6, 2008 (download PDF).