DotA is substantially different compared to Go in the following main senses:
1) In Go, you are allowed to see the entire board and pieces at all times -- it is a complete information game. On the other hand, games like DotA have partial information because you are not able to see where your opponents are and what they are doing at all times.
2) Go, Chess and many of the Atari games are single player games. OpenAI wanted to see if machine learning can be applied in a multiplayer setting where the problem needs to be solved at a global / team level.
3) DotA has so many mechanics and strategies where you have a lot of choices to be made. One of the challenges is whether one can look at the overall outcome of the game and reason about what particular choices went into the winning or losing of the game. This (long event horizon) makes it extremely difficult to learn such models.
OpenAI interfaced with a complicated game like DotA through an API provided by Valve which made it lot easier. Instead of seeing the game screen, they got snapshots of data of around 35KB per observation (co-ordinates of heroes, creeps etc). In the absence of this API, they would have had to use substantially more computational resources to render the in game graphics and this would also make the training process extremely slow.
This benchmark was an experiment that demonstrated that tackling such a class of problems is indeed possible (given a lot of computational resources and an environment to train in). During the interviews in between and after the games, they mentioned that the algorithms that they have used can have many applications in all fields a̶l̶t̶h̶o̶u̶g̶h̶ ̶s̶p̶e̶c̶i̶f̶i̶c̶ ̶e̶x̶a̶m̶p̶l̶e̶s̶ ̶w̶e̶r̶e̶ ̶n̶o̶t̶ ̶p̶r̶o̶v̶i̶d̶e̶d̶ @crsv's comment describes the example they talked about.
In short, it's significant progress in the OpenAI team's quest to build really effective self trained artificial intelligence. Conquest in a problem space like this has real world applications that could translate to things like extremely effective artificial limb dexterity (according to the talking points from the event).
Dota 2 was chosen because it's a nice combination of pre-determined rules (to an extent) and an extremely complex problem set of possible moves and actions. Dota's development team also was really supportive to this effort and they have an API that suits the Open AI team's purposes of interacting with the game really well. Great fit all around.
Dota 2, especially when played 5v5, is orders of magnitude more complex than in terms of possible decisions and moves than Go.
The first being that Dota is a team game which requires teamwork to win. This presents a new challenge of having actors work towards both personal and team goals in a balance (much like real players) to be able to win, which is very difficult to train.
The next is that Dota and Go are two very different kinds of games. Go is an "information complete" game, where all players have access to the entire game state at any given time. Dota, on the other hand, is an "information incomplete" game, as teams are vision restricted: there's no guarantee on the state of anything out of vision, meaning that the AI has to develop what most players call "game sense" in order to be effective.
On a tangental note, it's also an interesting problem from a state space perspective. Go is technically "solvable" to a point where you could (with a currently unobtainable amount of computing power) find an optimal move, but Dota is almost unfathomably more complex: 10 heroes picked from 115, each with the ability to hold any combination of 9 items from about 150, with abitrary health and mana values, at abitrary positions on a large map, not even mentioning the non player units (creeps and neutrals). If Go's state space is our solar system, already a difficult scale to comprehend, Dota's is the whole galaxy.
> The first being that Dota is a team game which requires teamwork to win. This presents a new challenge of having actors work towards both personal and team goals in a balance (much like real players) to be able to win, which is very difficult to train.
I don't think this is actually a significant problem for an AI, because each AI 'player' will be the same copy of code, thinking the same way. They don't need to explicitly communicate if they have the same thoughts and expectations.
For AI, yes. It's real-time and there's a fog of war (no perfect information). The former means that the possible action/choice space is vastly larger at any given moment in time, and you have to draw a line between small/meaningless differences in actions (e.g. a one-pixel difference in movement target generally won't be significant) and meaningful differences. The latter means that the AI needs some kind of mental predictive model where it guesses at what the opponent has likely done in the time that their actions have not been visible.
One interesting thing about Dota is that it is a slower-paced game which isn't heavily reliant on twitch reflexes. To win the bot needed to show good teamwork.
Dota2 also has a developer-friendly "bot API" and replay system. I'm certain these affected their choice of game as well :)
Why was Dota chosen as the game for an AI to get good at?
Is Dota more difficult than Go? Why or why not?