Tencent's AI plays StarCraft II, and wins over 90 percent of the time
eyerys.com
eyerys.com
The SC2 AI on higher difficulties does cheat though (extra resources) so it does make it slightly impressive, but still a far cry from human opponents as SC2's AI is pretty easy to beat (it would be around Gold in ladder I think)
For example, I don't know if they've fixed this, but you used to be able to beat the AIs 1v4 on the highest difficulty. There was a bug where the AIs would surrender individually even though they were on a team. So with an all-out rush you could get two of them to surrender almost immediately by running 2-3 zealots through their mineral lines. Getting the third one to surrender required a bit more fighting, and then the fourth was more of a normal game.
The AIs also used to keep their entire army in one big death ball, and if there were 3-4 fighting units in their base they would send the army home to defend. Even if their army was 10x bigger than yours and they'd win the base race. So you could hop reapers into and out of their bases to prevent them from attacking your base indefinitely (because they kept running home). Also you were doing pretty serious damage with the reapers while they ran back.
Another exploit was to start building a cheap building in their base area at the start, somewhat far away from the mining line. They would send a ridiculous number of workers to attack your building. So they'd lose significantly more money to lack-of-mining than you did for building and cancelling a pylon or whatever.
Similar to this none of the inbuilt AI's can deal with a slow cannon rush. They will hesitate for ages then rush 5 finished cannons.
The later Ai's do a little scv tanking and kiting but nothing near enough, they don't even focus down the probes.
Absolutely. Unless the win-loss ratio includes all games while the AI "learns" to play the game. It might have lost most of its early games, but now wins 100% of the time.
I suspect it wouldn't take DeepMind long to master starcraft II and beat starcraft's AI 100% of the time.
In the article, they say it plays around Platinium / low Diamond, when they had it play on the ladder.
Though also: "It is worth noting that although TStarBot1 can successfully learn and acquire strategies to defeat all the builtin AIs and TStarBot2, it lacks strategy diversity in order to consistently beat human players. In the aforementioned test with human players, TStarBot1 will be unable to win once the human player starts to know TStarBot1’s preference for Zergling Rush."
This video demonstrates why: https://m.youtube.com/watch?v=IKVFZ28ybQs
AI has crushed humans in Go, the most complicated (widely played) board game. I'll be impressed again by AI when it beats us in physical sport.
Until then, yes as you put it, the AI would crush humans and unfairly so.
> AI has crushed humans in Go, the most complicated (widely played) board game.
In terms of ruleset, Starcraft is at least a few orders of magnitude more complicated than Go. It doesn't feel more complicated to humans, really, but the sheer number of variables at play is vastly higher.
Starcraft II runs at a higher frame rate and uses higher resolution maps, so these numbers are even more ridiculous there.
Messed up your conversion there, fps is seconds and you had game length in minutes, so need to multiply by 60. So that's 28,800 "turns".
Could you explain how you figure that in more detail?
I mean, to my untrained eye, it sounds like it wouldn't be so, since in every time slice of the game (equiv. of a turn in Go?) you can have hundreds of points of control - hundreds of levers to choose to pull - and of course that's in every frame (or whatever interval the UI actually allows you input).
Go's game state, for example, is very small. You can pretty much represent it with a 19x19 array of 2-bit variables, because each space only has three possible states. That's only 722 bits. Maybe a few more to track whose turn it is and how many pieces each player has remaining.
In contrast, Starcraft can have hundreds of units in play from dozens of types, each of which usually has at least a position value (x and y) and a health value, and commonly has other things like energy value and cooldown values. And each of these you'd need at least a 16-bit int. And that doesn't even get into the enormously larger possible action space for each "turn".
Dota2 is not the same way - some of the best players perform micro-control on par with AI. This makes AI in DoTA much more impressive
Dota II focuses more on compounded micro decisions throughout the entire game for sometimes 60 mins+. Dota II revolves around using your one hero (with the exception of meepo), and teamwork much more heavily. The amount of different scenarios in DoTA II is significantly higher because of all the different heros, skills, levels, and combinations thereof.
Starcraft has very predictable scenarios though. There is usually less than 10 meta builds at any given competitive nerf/post patch balance. Dota II is hundreds if not thousands, per hero, per team composition, etc. So AI is way more impressive in Dota II
There are hundreds if not thousands of builds for each hero?
And the micro advantage is not all that relevant since APM and latency restrictions can be imposed on the AI to force them to play under conditions comparable to human players.
When a Starcraft AI is ready, it will be incredibly obvious if it's using brand new builds, strategies, and tactics (which pros will immediately copy for the next $500,000 tournament) or if it's "just" using 10,000 APM to perfectly dodge attacks in a way that a human never could.
I'm guessing Google and Tencent are going for the former instead of the latter.
If players could do that reliably we would start seeing major unit changes. It already happened to the original void rays who would do things like attack themselves to maintain charge to keep massed annihilation capability.
However, a bot could use just the same information a player could theoretically have access to but humans can’t pay attention to it all at once- that would be a real advantage. This one is basically cheating extra information though.
In any case, this can be solved by capping the actions per minute near Pro human levels, somewhere in the 300-500 range.
There are still incredible strategy problems to be solved that cannot be overcome with perfect micro. Figuring out a build alone using RL (which is what I think this paper is doing) is still a huge step.
Also you have to consider whether voidrays have speed upgrades, same with repears. Terran can play with fog of war too and lift off, usually terran has an advantage here
> we propose to model the action structure by hand-tuned rules. By doing so, the available actions are reduced to a tractable number, which turns out to be easier for designing our decision-making system.
It seems they are not using the hard-core Blizzard/Deep-Mind interface (pixel-based), but instead using an actions-based one, similar to Starcraft I bots and Open AI's Dota bot. Still pretty interesting though.
https://www.youtube.com/playlist?list=PLQVvvaa0QuDcT3tPehHdi...
Part of me wonders if the techniques applied can be easily used on non-visual data. AI that "sees" what we cannot. (I realize we aren't talking any kind of actual AI here, but sometimes it is nice to just wonder... )
Seems like a such a trivially better decision
> In February 2011, Tencent paid $400 million for a 93 percent stake in Riot Games.[2][8] Tencent bought the remaining 7 percent in December 16, 2015; the price was not disclosed.
I don't know about you, but having 100% of the shares seems like a quite a bit more than "significant interest" in the company. Some would say that this "significant interest" qualifies as ownership :)
From the article:
> Two years later, after watching the game take off in the U.S., Tencent raised its stake to 94% at a price valuing Riot at about $400 million. The remainder was held by the founders and employees, who wanted to keep at least some equity.
> That deal would prove pivotal in what was to come. To persuade Messrs. Beck and Merrill to sell most of the equity, Tencent’s international chief David Wallerstein negotiated an agreement that ensured Riot could operate almost like a separate company. Tencent took two seats on Riot’s five-member board, while Riot’s founders took two others. The fifth seat was empty, a structure which remains in place.
So yes, technically Tencent owns Riot, but they don't control Riot. I guess from a semantic viewpoint I was incorrect in that they "own" League of Legends, but as far as Riot is concerned Tencent doesn't have any control over its development, including building an API to support AI/ML research.
Tencent just owns a majority stake in Riot they didnt develop LoL and have very little to do with the actual game more likely they went with SC2 because it’s easier to integrate with as it has a bot API and it looks less like they are copying OpenAI and making another MOBA AI.
SC2 and DOTA/LoL are also fundamentally different games with SC2 not being cooperative and presenting a different set of problems and solutions than MOBAs.
In fact, it was always a bit suspicious that Open AI chose to work on a different game, which may or may not be as hard. Having multiple groups working on the same problem makes it easier to understand the progress made.
Dota 2 is tactical, so having perfect micro is enough to win at least simple matches. Starcraft 2 is a different story.
Also because Starcraft has three races, i. e. 9 matchups. But if you pick one race for your AI, you only have three matchups to worry about. LoL on the other hand has about 500 champions (give or take), whose strengths and weaknesses are vastly dependent on the current patch. LoL is less about skill or strategy, and more about picking the champion of the week.
Starcraft works because they have such a small number of matchups that balancing them is possible. Certainly not easy, and players keep figuring out ways to evolve the meta game. Maybe an AI could even find interesting new strategies. But LoL has so many matchups that their balancing team has an absolutely impossible task of trying to catch up. It's so complex that they can't just think about in theory, but they have to look at win-rate statistics, over different skill ranges. At this point it's more a problem of data science. And the number of champions keeps growing, because that's how they make money.
LoL has 141 champions. Still significantly higher than Dota's 116.
A common note I hear when people discuss open AI playing dota is that it uses pre-made matchups, which reduces the number of matchups considerably.
Would it be that difficult to have the AI play the picking stage? Compared to the complexity of the decisions you have to make during the game, the picks are straightforward - especially if you have performance data on matchups.
The number of practice games the AI would have to play to learn to handle all the heroes goes up drastically, but that's only a matter of time.
Also, it only played mirror matches. If it had to play any hero against any hero, that's 3.393109e+190 possible matchups.
(Plus two shorter / more recent status updates)
One theory I heard was that the pre-made matchups at TI were designed to prevent the human players from getting out-drafted. (The hero pool was pretty limited, which could result in a different meta from what the human players were used to.) They wanted to make the matches purely a test of in-game skill, not about the metagame. As far as I know though, the OpenAI team hasn't explicitly confirmed that.
> Because Starcraft is 1v1 and LoL is 5v5
Starcraft can also be played 5v5
> Also because Starcraft has three races, i. e. 9 matchups
But each race has 20 different units. The units are more
similar to LOL champions than the races. There are also a
tonne of different buildings and upgrades to choose from.
LOL is very similar to DOTA and given that OpenAI already
beat *human* players in DOTA, LOL is not that farfetched. The
current work, although impressive, still cannot beat *human*
players in SC2. The complexity of designing AI for a game
depends heavily on the branching factor of decision in the
game. SC2 has a much higher branching factor than LOL or any
other games played by n00bs.At some point AI will be sufficiently advanced to understand what a grunt on a map looks like in any context, so we'll be able to swap out the Space Marines with real ones. Whoever can autonomously dominate a battery of RTSes has the potential to autonomously conduct conventional warfare.
I know bots inhabit that game, but they're not very goo.d