DeepMind's StarCraft 2 project is drawing a lot of attention worldwide as the major AI project following AlphaGo. At the core of such a collaboration, there is Oriol Vinyals and Chris Sigaty, Google's research scientist and StarCraft 2's lead producer respectively. They shared their thoughts with us about what they wish to achieve and how far they have come.
What are your detailed plans to use the StarCraft 2 API for your AI research? How can this be helpful for progamers?
Vinyals: DeepMind was developed with a lot of interest in video games. We are looking forward to finding out how artificial agents perceive game screens and how they react. We will start by letting the agents copy the way we humans play games. That will be their first step. We are trying to bring DeepMind to a human level by establishing a common ground.
Sigaty: We are expecting DeepMind to be useful in eSports through AI coaching. AI can process multiple layers of information at once and is aware of possible outcomes. We are expecting AI to help us analyze information more thoroughly in a shorter amount of time. Also, if AI is capable of playing the game at a human level, it gives gamers more chances to train by giving them the opponent they need.
Playing Go gives you time to think before you place the stone on board, but multiple things happen at once in StarCraft 2. How will AI be able to deal with such a challenge?
Vinyals: The biggest difference between StarCraft 2 and Go is the amount of information that is being processed. You can always see the entire board at once in Go, but StarCraft 2 does not show the entire map in real-time. You can light the map temporarily, but that soon darkens and your information is limited to your last glimpse. This forces you to rely on your memory and imagination to try and predict what your opponent's next move will be, which is still hard for a computer to do—but something we should definitely work on.
We have to train AI agents to choose the best strategy based on their memories of past results. For example, if the agent sees an SCV at a random location on the map, it should be aware of the possibility that the player may be trying to expand.
Sigaty: We should start by letting the AI watch a lot of StarCraft 2 matches so that it can learn how the game flows and what kinds of decisions it has to make, which will ultimately allow it to see through what it was not able to see and climb a step up.
The ability to control each unit is another factor that distinguishes StarCraft 2 from Go. How are you planning to set AI and humans on equal footing in terms of unit control??
Sigaty: Such a thing may sound far away because we are at the beginning stage still, but this is something we should definitely keep in mind to make AI competitive against humans in StarCraft 2. What we are thinking right now is that we should limit the amount of information for the agent. The StarCraft 2 AI’s we have right now are well aware of what we are doing, even without obtaining map vision. When there is a cloaked unit, the AI still knows that it is there—it just cannot attack it. However, we should not allow DeepMind to obtain such information because its information must come solely from the screen view, just like a human.
We are also planning to make DeepMind control its units by dragging the cursor to group them and give commands just like we do with a mouse. Our goal is to set DeepMind and humans under the same conditions.
Vinyals: Imitating the way humans play the game was the key element also when we were developing AlphaGo. We will do the same with StarCraft 2, so there is no way the agent can do what humans cannot; there is simply no way for it to learn such a thing in the first place. This prevents DeepMind from doing things that far exceed human ability. This makes things more stable because the agent cannot cheat.
How did you benefit from the experimental results you obtained through AlphaGo? What do you want to achieve through DeepMind research, and how would we be able to benefit from it?
Vinyals: For example, when we take care of Google's servers, we adjust the environmental conditions at a certain temperature to allow servers to work in optimal conditions. After the AI took over this job, we saved a lot in financial costs—around 40 percent. This is just one example. There are numerous other things that can benefit from AI, and we will find more uses for AI as we go further with our research..
Are you confident that DeepMind will be able to defeat a human player someday? Do you have any particular player in mind that you want to match your agent up against?
Vinyals: Of course humans will win for now because the project is still in its beginning steps. Even I can still beat DeepMind. However, we are doing this research to develop our project further and obtain more information, so it is hard for us to guarantee which side would win. It is the same as predicting who would win in a human vs human matchup. You never know who will win, and it goes the same for AI.
Sigaty: Personally, I think it would be fun if we could match the DeepMind agent against Ryungwoo "Dark" Park. He was nailing it yesterday. His gameplay yesterday made me think that AI would never find a chance to beat him.
Are you going to use the same GPU calculation method as AlphaGo?
Vinyals: Time is a crucial resource both in StarCraft 2 and Go because things happen in real-time in StarCraft and you have a time limit to make a decision in Go. However, there are so many variables we have to consider that it is hard for us to clarify what our plans are. I think we will able to come up with a decision once we make more progress and see how things turn out.
Why did you choose RTS and why did you choose StarCraft 2? There are many other games.
Vinyals: We chose RTS because we wanted to make an AI that can react properly in different situations and, for example, tell which side has an advantage in a certain situation. We were looking for games that involve such decision-making processes, and RTS fit what we were looking for. We chose StarCraft 2 because the game environment itself is very exciting. There are other games DeepMind can play and learn: Atari games and mazes are among them.
Compared to other games our agent can play, StarCraft 2 gives a unique experience to its players. Needless to say how kind and passionate they are, developers at Blizzard also give us a lot of help.
Sigaty: Ever since AlphaGo played Go against human professionals, the media began talking about AlphaGo playing StarCraft, even before we came up with this plan. I think it was largely because StarCraft 2 had already established its position as the world's best RTS and competitive scene.
Vinyals: I am a long-time fan of Brood War, and when I first joined the DeepMind project, the AlphaGo matchup was already around. I didn't know how to play Go, but the game itself became very interesting to me. Go is about perceiving incoming information and coming up with solutions to cope with that situation, and I think this is something that also happens in StarCraft.
Any words to your fans waiting for DeepMind's StarCraft 2 matchup?
Sigaty: We are very positive about this opportunity, and it is so much fun just to try something like this. For now, I think this is a huge opportunity to bring positive changes to players, eSports, and ultimately game development itself. I think this was possible all because StarCraft has a large fanbase, and I would like you thank you all for playing your part in that.
Vinyals: Personally, I feel like I have made my dream come true because I have always loved playing StarCraft, ever since I was a teenager. I was studying games, which led me to studying artificial intelligence, and then I came back to the video game that I loved and always dreamed of for a long time. This is truly amazing, and I am so happy about it.
Reported by Inven Sawual