My column this week talks about the final game between pro Starcraft II player MaNa and the AlphaStar AI. As you’ve probably figured out from the subtle hints in the title, the human won this time around. My article talks about how MaNa won and gives some historical contextIn this case, me talking about games I was playing 20 years ago counts as “historical context”. to the matchup.
How AlphaStar was developed:
They seeded the system with some of the basics of the game: Building a base, creating units, attacking the opponent. From there:
- Make many copies of the AI. Each of these copies is an agent.
- Randomly alter the behavior of each agent by slightly scrambling its parameters. Build units slightly sooner. Build different units. Send units to random spots on the map. Attack at different times.
- Most of these changes will be nonsense garbage, but a few will be slight improvements. To figure out which ones are best, have the agents fight each other. Part of the reason the team chose StarCraft II for this project is that Blizzard opened up its API to make it easy to connect an AI to the engine that runs the in-game rules. It’s possible to have two agents play an entire 20 minute match in just a few seconds, because you can run the game as fast as you like. The system is deterministic, so you get the exact same result at 100x speed as you do at normal speed. This means the agents can play an entire tournament worth of games in seconds. (Assuming you’ve got a beefy supercomputer to run everything on.)
- Out of the myriad of goofball malformed agents, a few will rise to the top. Keep these, and discard the rest.
- GOTO 1
Because of this, every AlphaStar agent has experienced about 200 years worth of StarCraft games. Assuming the average game would run for 10 minutes if experienced in real time, that comes to just over 10 million games of StarCraft.
Ten million games of practice, just to be able to play one race against the same race on one particular map using one particular strategy. This is obviously a very brute-force way of developing AI and it doesn’t really reflect how meat-based thinking machines operate. It’s obviously much more like evolution than cognition.
When Humans want to master a task, they don’t try random things. Instead they visualize a goal like “I want to win the game” and then try to imagine what steps they need to take to make that happen. Their guesses might be terrible or wrong, but they obviously don’t need to daydream 10 million games in their head before they come up with an idea like, “Maybe I should build more siege tanks and fewer turrets”.
But that’s the trick, isn’t it? We don’t really know how humans do their thing, even though we’re all humans and we’re doing it right now. AI is an amazing field and we’ve made fantastic strides. Brilliant people have worked very hard and gotten amazing results. But we’ve barely put a dent in the problem.
Ah well. At least we got some fun StarCraft games out of it.
 In this case, me talking about games I was playing 20 years ago counts as “historical context”.
The Witch Watch
My first REAL published book, about a guy who comes back from the dead due to a misunderstanding.
Silent Hill Turbo HD II
I was trying to make fun of how Silent Hill had lost its way but I ended up making fun of fighting games. Whatever.
Joker's Last Laugh
Did you anticipate the big plot twist of Batman: Arkham City? Here's all the ways the game hid that secret from you while also rubbing your nose in it.
A Star is Born
Remember the superhero MMO from 2009? Neither does anyone else. It was dumb. So dumb I was compelled to write this.
The Strange Evolution of OpenGL
Sometimes software is engineered. Sometimes it grows organically. And sometimes it's thrown together seemingly at random over two decades.