Heavy Metal music roars as tanks, mechanized units and Marine infantry move across barren wastelands, reminiscent of 1970s science fiction novel covers.
“Give me somethin’ to shoot.”
The famous line as spoken by the Terran Marines right before they are sent to destroy the enemy perfectly sums up what is about to happen. They march like ants, each following the last one’s path almost exactly, as they invade enemy territory.
The black fog of war begins a couple dozen meters in front of the first Marine, preventing him from seeing the enemy until it’s too late. Humans, aliens, and parasite life forms clash as screams of death and pools of blood stain the ground of distant colony planets.
This is StarCraft.
The game has contributed to more than just science fiction imagery, though. Originally released in 1998, StarCraft is a highly competitive real-time strategy computer game with incredible depth and complexity to each match. Researchers at the University of Alberta hope that the game offers new insight to Artificial Intelligence.
StarCraft’s complex gameplay and wide array of strategic variables lends itself well to Artificial Intelligence or A.I. programmers, who write their own bots to play the game according to a particular set of strategies decided on by the programmer.
That possibility fascinates Dave Churchill, a PhD Computing Science student at the University of Alberta. He has been programming the StarCraft-playing Artificial Intelligence, UAlbertaBot. Churchill has used this piece of software for various StarCraft A.I. competitions since 2010, and has been involved with the StarCraft A.I. scene for just as long.
“[Real-time] game strategy A.I. was super new at the time and not many people were doing it. I’m a video gamer at heart and so I thought ‘hey this is a really cool topic’,” Churchill says.
StarCraft: Brood War has been known throughout gaming circles and the Internet as one of the most competitive multiplayer strategy games that exists. In South Korea, the game is celebrated with as much enthusiasm as some North American sports. Churchill says, “StarCraft is like baseball.”
Despite its age, StarCraft still attracts new players and A.I. programmers alike, and there are numerous tools and resources available freely on the Internet. According to Churchill, StarCraft A.I. programming and competitions became popular around 2010 when StarCraft 2 was released.
“We had to make it from scratch in only a few months, we got some undergrads together and divided the workload.” Churchill says, describing how UAlbertaBot came together. “It had almost no defense and essentially the bot tried to get Mutalisks [A StarCraft air unit of the Zerg race] as fast as possible and then micro [Strategy of micromanaging units] those Mutalisks to try and win fights.”
Churchill says that he wanted UAlbertaBot to be architecture for others to use in order to create their own bots for the competition. “These tournaments have been created to motivate the research,” he says.
Churchill’s UAlbertaBot has been the starting point for several other bots due to its well rounded nature and ability to randomly play as any of the three races in StarCraft: Terran (humans), Protoss (advanced aliens), or Zerg (insect-like aliens).
“The downside,” Churchill notes, “Is that you have to be equally good with all the races.”
He hopes that this issue will subside once the A.I. has progressed enough.
Churchill says this feature gives UAlbertaBot a distinct tactical advantage, as the opposing A.I. doesn’t know what they are up against until the first battle, but UAlbertaBot does.
As well as researching A.I. and improving UAlbertaBot, Churchill also organizes the AIIDE StarCraft A.I. Competition – one of the premiere events for A.I. programmers and StarCraft fans to play competitively against their peers’ creations.
Watching matches between Churchill’s UAlbertaBot and other StarCraft bots offer a world of information and reveals the intricacy of how the bot thinks.
In StarCraft, back on distant planets like Mar Sara or Char, two opposing forces begin their campaign to destroy the other. This time, the commanders of each faction are A.I.s, and the fighting is swift and calculated, but also hectic. The A.I. controlled armies are incredibly skilled at resource management as well, doing the important math behind the scenes in order to maximize the output of units without sacrificing time or resources.
Bots like UAlbertaBot think and act orders of magnitude more quickly than human players, and aren’t distracted by the images and sound effects made to entice regular gamers. They run simulations of the next engagement in their heads before it happens, finding out prematurely if they have enough firepower to win. Light and heavy units move back and forth, attacking simultaneously and independently of one another in ways that only a computer-controlled commander could organize.
The bots don’t seem to panic when the odds are stacked against them either, they keep their cool even in the face of defeat, knowing that victory is the only action they can willingly accomplish. A human player may surrender when they believe there is no way of winning, but the bot will persist until it has run out of units or materials.
Churchill says that the end goal of StarCraft A.I. is to write a bot capable of winning against the best human players. “As a whole, the biggest challenge is trying to beat humans, which we’re nowhere close to yet,” he says.
Though the bots are good at fighting each other and amateur StarCraft players, Churchill says they are still “at least a few years off” from defeating professional human StarCraft players.
This statement comes after Google’s Go playing A.I., AlterGo defeated the world Go champion last year.
In StarCraft, the human players still have the edge, at least for now. Churchill notes a particular example where a human player was able to sidestep his units out of the effective range of the A.I. controlled defenses, and infiltrate the enemy base unopposed.
“I think we learn a lot of things [about A.I.] by tackling StarCraft,” Churchill says. “We reason with uncertainty. In chess, you know where all the pieces are, but in StarCraft, you don’t know where your opponent’s pieces are. Also in StarCraft, you have this real-time aspect of a video game; you and your opponent are taking simultaneous moves.”
Churchill explains how variables in StarCraft are exponentially more complex than other strategy games. “In a chess game you might only have 50 moves you can do at any one time, but in StarCraft you can have millions,” Churchill says, explaining the complexity of StarCraft movements.
Editor: Amber McLinden | firstname.lastname@example.org