We're making a distinction between a computer explicitly programmed to replicate a set of moves in specific conditions and a computer that has learned through trial and error what a proper response might be.
DeepMind sets AlphaGo's sights on SCII - Page 8
Forum Index > SC2 General |
kingjames01
Canada1603 Posts
We're making a distinction between a computer explicitly programmed to replicate a set of moves in specific conditions and a computer that has learned through trial and error what a proper response might be. | ||
Jonoman92
United States9101 Posts
| ||
![]()
lichter
1001 YEARS KESPAJAIL22272 Posts
On March 29 2016 06:03 Fecalfeast wrote: It's like everyone is just willfully ignoring lichter it's because i'm always right and no one wants to argue with me | ||
m4ini
4215 Posts
On March 29 2016 11:15 lichter wrote: it's because i'm always right and no one wants to argue with me I feel like that would be disingenuous to the purpose of this project. The amazing thing about Go is it's 100% a battle of the mind because input/output is the same regardless of computer or human. Unless they do that for SC2 as well, it won't be as meaningful as the breakthrough with Go. The problem is that Starcraft 2, other than Go, is not purely a game of mind. In fact, you can reach GM on mechanics alone. I do see the problem with "unlimited APM", so don't get me wrong, you got a point there: but to call something disingenuous to then go ahead and make another disingenuous statement is rather.. weird. Some cornerpoints: no API. If the AI has all information all the time, it's dumb. I agree. However: apart from mouse/keyboard, how do you want to fiddle with the rest of the stuff that people consider "unfair"? Like "limitless awareness of minimap while macroing"? It will never be a match on even terms. It's technically neither possible nor feasible. The reasoning, or rather, goal behind DeepMind playing Starcraft is that it's a game that, other than chess and Go, is based on "not having perfect information". The only thing they need to do really is limit "micro". That's it. Not even APM: just the ability (btw, no idea how) to micro the shit out of units to the point of abuse. You're not playing another player. You're playing an AI. It will be mechanically stronger. It's pretty much literally a player who controls the game with his mind. I don't think that projecting human shortcomings on the AI somehow makes for an interesting match for anyone to watch. If the AI is limited to mimic(!) a human, might as well just train another human to play it. So, all in all: limit not APM, but somehow the ability to micro. Nothing else needed. If the (non-cheating, like full vision) AI can beat a player without "infinite micro", it's simply stronger. It's nothing to frown upon, or to be concerned about. It will happen sooner or later anyway. | ||
![]()
lichter
1001 YEARS KESPAJAIL22272 Posts
On March 29 2016 12:36 m4ini wrote: The problem is that Starcraft 2, other than Go, is not purely a game of mind. In fact, you can reach GM on mechanics alone. I do see the problem with "unlimited APM", so don't get me wrong, you got a point there: but to call something disingenuous to then go ahead and make another disingenuous statement is rather.. weird. The thing about a person's mechanical skill using a certain output is that it has to be spread around a thousand different decisions. Prioritizing what to do over what not to do is part of strategy. Attention and time are also limited resources that have to be accounted for. In Go, the computer and the human have the same amount of time to decide on a move and do the command. They can both do one move per turn. It's exactly the same. It's a resource, just like minerals, gas, supply, and it has to be dictated by strategy, not by output. A faster player is not necessarily better than a slower player if that faster player uses his APM incorrectly. You are right that mechanics play a huge part in StarCraft, and there's no easy to way to ensure the AI "plays the same game", but that doesn't change the fact that it should be one of the early goals of the project. I'm sure the DeepMind guys will surprise us with something ingenious and unexpected. | ||
Mendelfist
Sweden356 Posts
On March 29 2016 07:56 The Bottle wrote: A hybrid of scripting at the small scale and deep learning at the large scale may be the best way to go, but there's still a huge problem, one that doesn't exist in simply defined discrete board games like Go. As you can probably predict I'm going to say, that problem is the coarse graining of the data itself.I think you're really underestimating the scale of this problem because it is a huge problem. And I say you are overestimating it. Again, the bots that exist today are already doing this. They can scout, they can count and estimate enemy forces etc. Yes, it's on an coarse level, but I'm not buying that just because you are throwing away information it suddenly doesn't work. These bots are programmed by amateurs with no resources. This problem is only hard if you make it hard, and you can make it as hard as you want, but you are arguing that you can't do it just because you can make it hard, and that seems to have been your line all along. No, feeding an AI nothing but basic unit positions or pixel values probably won't work, but I didn't suggest that. No using the AlphaGo techniques unchanged with Monte Carlo search probably won't work, but I didn't suggest that either. Yes, the theoretical limits of an AI with simplified inuts is probably lower than an AI with access to raw data, but that doesn't necessarily make it bad. An assumption I'm making is that this is done with direct access to an SC2 engine. Maybe you think it's cheating, but this (and the above) is why I think this isn't an interesting problem at all. You can make it easy or you can make it hard. All the argumentation is about where you draw the line. Limit the APM or not? There is no question in my mind that you can make an AI that can beat a world champion, if you choose to. That wasn't the case with Go. It was exceptionally hard. Monte Carlo wasn't new. Even Monte Carlo with neural nets wasn't new. Others had tried and failed. In this case people argue that a scripted bot with unlimited APM can do it. That makes it a non-problem to me. | ||
Charoisaur
Germany15867 Posts
On March 29 2016 12:36 m4ini wrote: The problem is that Starcraft 2, other than Go, is not purely a game of mind. In fact, you can reach GM on mechanics alone. no you can't. if you have no game knowledge you don't know any builds or what composition you should use, you don't know what builds your opponents race has and so you can't scout and prepare for them, hell you don't even know what are the most efficient ways to micro your units. many of those things are basic knowledge for us because we have spend a lot of time into this game but perfect mechanics with zero game knowledge doesn't take you far. | ||
MyLovelyLurker
France756 Posts
On March 29 2016 12:59 lichter wrote: The thing about a person's mechanical skill using a certain output is that it has to be spread around a thousand different decisions. Prioritizing what to do over what not to do is part of strategy. Attention and time are also limited resources that have to be accounted for. In Go, the computer and the human have the same amount of time to decide on a move and do the command. They can both do one move per turn. It's exactly the same. It's a resource, just like minerals, gas, supply, and it has to be dictated by strategy, not by output. A faster player is not necessarily better than a slower player if that faster player uses his APM incorrectly. You are right that mechanics play a huge part in StarCraft, and there's no easy to way to ensure the AI "plays the same game", but that doesn't change the fact that it should be one of the early goals of the project. I'm sure the DeepMind guys will surprise us with something ingenious and unexpected. The current Deepmind Atari games approach cannot have more than 2/3 actions per frame with a keyboard and mouse ( so max 120 APM / 180 APM at 60Hz rendering ), unless you deliberately do something silly to the final layer of your neural networks. As such most of the APM debate is moot. | ||
Swisslink
2949 Posts
On March 29 2016 14:50 Charoisaur wrote: no you can't. if you have no game knowledge you don't know any builds or what composition you should use, you don't know what builds your opponents race has and so you can't scout and prepare for them, hell you don't even know what are the most efficient ways to micro your units. many of those things are basic knowledge for us because we have spend a lot of time into this game but perfect mechanics with zero game knowledge doesn't take you far. Well, it depends on what you want to achieve in the game: Laddering up? I think this should be possible purely through perfect mechanics. There are quite a few examples of players who reached GM with just a couple of builds and an A.I. could do these builds better, most likely. The problem arises if the A.I. is supposed to beat a progamer who's able to prepare for the vs. A.I. match. I don't think the A.I. is gonna win such a match in the near future, simply because if preparation is allowed, perfect mechanics aren't really the deciding factor anymore. | ||
Charoisaur
Germany15867 Posts
On March 29 2016 18:43 Swisslink wrote: Well, it depends on what you want to achieve in the game: Laddering up? I think this should be possible purely through perfect mechanics. There are quite a few examples of players who reached GM with just a couple of builds and an A.I. could do these builds better, most likely. The problem arises if the A.I. is supposed to beat a progamer who's able to prepare for the vs. A.I. match. I don't think the A.I. is gonna win such a match in the near future, simply because if preparation is allowed, perfect mechanics aren't really the deciding factor anymore. even when executing a simple build there are many different ways you have to react to the way your opponent is playing. if you go for an immortal allin for example but your opponent turtles on 2 bases with spines while teching to mutas. what do you do then? there isn't a build that you can just blindly execute every game without reacting to your opponent. | ||
Railgan
Switzerland1507 Posts
| ||
hugman
Sweden4644 Posts
On March 29 2016 18:58 Railgan wrote: Will Deepmind have to use mechanical hands to use a keyboard / mouse? Unlikely, for the same reason they didn't use a camera to read the Go board in the game against LSD. It is just a technical complication that doesn't have much to do with the challenge they're trying to tackle. | ||
Salteador Neo
Andorra5591 Posts
On March 29 2016 23:54 hugman wrote: Unlikely, for the same reason they didn't use a camera to read the Go board in the game against LSD. It is just a technical complication that doesn't have much to do with the challenge they're trying to tackle. Well a lot of people have already stated that the difficulty of selecting the units and ordering them around is like "half the challenge" of games like Broodwar or SC2. If an AI doesn't need to "visually identify and select" his stuff, then progamers would need to be able to play with just their minds to make it a fair game. | ||
Tuczniak
1561 Posts
| ||
Souljah
United States423 Posts
| ||
The Bottle
242 Posts
On March 29 2016 14:21 Mendelfist wrote: And I say you are overestimating it. Again, the bots that exist today are already doing this. They can scout, they can count and estimate enemy forces etc. Yes, it's on an coarse level, but I'm not buying that just because you are throwing away information it suddenly doesn't work. These bots are programmed by amateurs with no resources. This problem is only hard if you make it hard, and you can make it as hard as you want, but you are arguing that you can't do it just because you can make it hard, and that seems to have been your line all along. No, feeding an AI nothing but basic unit positions or pixel values probably won't work, but I didn't suggest that. No using the AlphaGo techniques unchanged with Monte Carlo search probably won't work, but I didn't suggest that either. Yes, the theoretical limits of an AI with simplified inuts is probably lower than an AI with access to raw data, but that doesn't necessarily make it bad. An assumption I'm making is that this is done with direct access to an SC2 engine. Maybe you think it's cheating, but this (and the above) is why I think this isn't an interesting problem at all. You can make it easy or you can make it hard. All the argumentation is about where you draw the line. Limit the APM or not? There is no question in my mind that you can make an AI that can beat a world champion, if you choose to. That wasn't the case with Go. It was exceptionally hard. Monte Carlo wasn't new. Even Monte Carlo with neural nets wasn't new. Others had tried and failed. In this case people argue that a scripted bot with unlimited APM can do it. That makes it a non-problem to me. No bot today in Starcraft is doing a strategy that it gained from supervised or reinforced learning. It's all scripted. If you argue that a bot with unlimited APM and much more sophisticated scripting can beat an pro then, well that's another discussion entirely, but one that's completely useless in the context of Deepmind. If that's the method they end up using, then they will just abandon the project. Deepmind will only do this as long as it advances them in the problem of machine learning for a game without perfect information. Their end goal is not to beat a pro SC player, it's to advance the field of machine learning in an interesting way. They're not going to use the hiring time of their really highly paid research scientists to figure out how to script Starcraft AI well and give it good micro from the game strategy. This is why I have been assuming, the whole time, that some sort of learning is going to take place, and that that learning has to play an essential factor in the game being able to beat a pro player. And no, nothing like this has ever been done in any Starcraft game, or really any strategy video game (that I heard of). So you can't just dismiss the idea of a Starcraft AI learning a coarse grained strategy as "simple" because "it's been done". Nothing remotely like that has been done. I never assumed it can't be done. Only that it's substantially more difficult than for Go, for all the reasons I explained. And I never assumed that they have to use the same methods as they did for Go. In fact I know that they can't. But as long as they program it to learn unscripted essential strategies for beating a pro (again, if that's not the case then this discussion is absolutely pointless, because it won't do anything for Deepmind so they just won't do it) then they have to use some sort of deep learning algorithm (be it a neural net, SVM, or some innovative combination of algorithms like they did for Go) then they need a data set that objectively defines the actions of the computer, and can be read from the metadata of all the games that can be played. In that case, all the problems I described exist, which are major problems that don't exist for Go. | ||
Mendelfist
Sweden356 Posts
On March 30 2016 00:58 The Bottle wrote: No bot today in Starcraft is doing a strategy that it gained from supervised or reinforced learning. It's all scripted. If you argue that a bot with unlimited APM and much more sophisticated scripting can beat an pro. That is not what I meant at all. I said that todays bots are already using input from "coarse grained data", and there is no reason this data can't be used as input to a real self learning AI instead. Re-read what I said with that in mind. The data already exist. No-one have even tried to use it for self-learning. | ||
Dumbledore
Sweden725 Posts
On March 30 2016 01:10 Mendelfist wrote: That is not what I meant at all. I said that todays bots are already using input from "coarse grained data", and there is no reason this data can't be used as input to a real self learning AI instead. Re-read what I said with that in mind. The data already exist. No-one have even tried to use it for self-learning. No they're not, please give me an example of a single bot for a StarCraft game that uses input that's not given from an API to the game. | ||
Mendelfist
Sweden356 Posts
On March 30 2016 01:15 Dumbledore wrote: No they're not, please give me an example of a single bot for a StarCraft game that uses input that's not given from an API to the game. Why do you think I mean "not given from an API to the game"? | ||
The Bottle
242 Posts
On March 30 2016 01:10 Mendelfist wrote: That is not what I meant at all. I said that todays bots are already using input from "coarse grained data", and there is no reason this data can't be used as input to a real self learning AI instead. Re-read what I said with that in mind. The data already exist. No-one have even tried to use it for self-learning. I know that "some data exists". There is the entire build order of a player and the time each thing was built, which you see at the end game summary. If I were to guess, this is most likely the kind of data the AI uses, since it gets its data from an API. (But I don't claim to know how the current AI works, so if you have a better notion of what it's doing, tell me.) That kind of data is trivial to generate, and an AI that responds to this data from the API is easy to script. But it's useless for Deepmind's purpose. They want to construct a limited information AI algorithm. If, instead, we assumed that Deepmind decided to use an API and essentially map hack, then maybe they can train an algorithm on that "build order" data, and use scripting for the rest. But I think build order is just such a tiny and most uninteresting portion of the strategy involved in SC2. The resulting "learned strategies" we'd see from that are extremely uninteresting. Is the "existing data" that you're thinking of anything besides the build order data? If so, what? | ||
| ||