|
Sc is infinite more complex then chess, even if the fog of war would be removed. A computer wich plays sc the way deep blue played chess (brute force, calculating every possible move) would perform miserable in sc because the options at every game tick are to numerous.
Computers will never be able to play sc close to perfection ,we dont even know what a perfect game might look like. i asume it will be only t1 units,dancing around the map without ever making contact !(going far from your base will put you at a disadvantage) it will be a draw. Every tech up will probably get you killed or put to far behind economically, if there is perfect micro and positioning,
|
of course its possible to create a perfect AI. but first we have to define the term "perfect".
does "perfect" mean "winning most of the times"? i think that should be the definition. of course this depends on the playstyle of your opponents. if your opponents only play zerg 10pool then an AI would be "more perfect" that deals with this better.
the perfect AI wont give you a "perfect build order". it will adjust its build with every new information it gets from the game.
and even the perfect AI will make many mistakes that it could've done better, when it had forseen or even known every move of its opponent. perfection in sc2 will always be the best compromise.
On November 13 2012 09:24 Rassy wrote: Sc is infinite more complex then chess, even if the fog of war would be removed. A computer wich plays sc the way deep blue played chess (brute force, calculating every possible move) would perform miserable in sc because the options at every game tick are to numerous.
Computers will never be able to play sc close to perfection ,we dont even know what a perfect game might look like. i asume it will be only t1 units,dancing around the map without ever making contact !(going far from your base will put you at a disadvantage) it will be a draw. Every tech up will probably get you killed or put to far behind economically, if there is perfect micro and positioning,
sry i can just laugh reading statements like that. do you even know whats possible with todays computers? a computer could easily play 100 sc2 games on gm level at once with a well designed AI. "Why is there no such AI?", you ask? because nobody pays for it.
hire 1000 really good people, give them 100mio a year, and you will have the perfect AI. but dont say its not possible.
|
only way to have a good AI, able to beat pros would be to program a real, human like AI because there are too many factors. what starcraft call "AI" rather, "computer" as in "comp stomp", i dont think there is a way. current computer barely gets by with cheating. without cheating, no vision no money, no AI can beat a human pro unless its a highly developed actual AI.
|
On November 13 2012 09:24 Rassy wrote: Sc is infinite more complex then chess, even if the fog of war would be removed. A computer wich plays sc the way deep blue played chess (brute force, calculating every possible move) would perform miserable in sc because the options at every game tick are to numerous.
Computers will never be able to play sc close to perfection ,we dont even know what a perfect game might look like. i asume it will be only t1 units,dancing around the map without ever making contact !(going far from your base will put you at a disadvantage) it will be a draw. Every tech up will probably get you killed or put to far behind economically, if there is perfect micro and positioning, Lol!? Believe me, today's world's programming isn't that primitive. You can program a very good ai with perfect micro (like automaton which is humanly impossible) and that perfect micro with some sort of programmed timing push it will be impossible to hold because the game is not designed with that kind of perfection considered. That kind of play would be imba and make the game feel broken that is all.
|
On November 13 2012 09:32 cari-kira wrote:of course its possible to create a perfect AI. but first we have to define the term "perfect". does "perfect" mean "winning most of the times"? i think that should be the definition. of course this depends on the playstyle of your opponents. if your opponents only play zerg 10pool then an AI would be "more perfect" that deals with this better. the perfect AI wont give you a "perfect build order". it will adjust its build with every new information it gets from the game. and even the perfect AI will make many mistakes that it could've done better, when it had forseen or even known every move of its opponent. perfection in sc2 will always be the best compromise. Show nested quote +On November 13 2012 09:24 Rassy wrote: Sc is infinite more complex then chess, even if the fog of war would be removed. A computer wich plays sc the way deep blue played chess (brute force, calculating every possible move) would perform miserable in sc because the options at every game tick are to numerous.
Computers will never be able to play sc close to perfection ,we dont even know what a perfect game might look like. i asume it will be only t1 units,dancing around the map without ever making contact !(going far from your base will put you at a disadvantage) it will be a draw. Every tech up will probably get you killed or put to far behind economically, if there is perfect micro and positioning, sry i can just laugh reading statements like that. do you even know whats possible with todays computers? a computer could easily play 100 sc2 games on gm level at once with a well designed AI. "Why is there no such AI?", you ask? because nobody pays for it. hire 1000 really good people, give them 100mio a year, and you will have the perfect AI. but dont say its not possible.
Yes i know verry well what computers are capable off. I think you dont realy understand the complexity of sc when computers have to calculate it "brute force" Off course computers can play sc decently, and huge progress can be made, but it will never ever be annywhere near close to perfection. Just think about the game, how big is the board? how manny squares (different positions a piece can occupy) has the board? It realy is incredibly complex, way more then a relativly verry simple game like chess.
Ok 100m year, i didnt see that part and in 100m year it might be possible if we could devellop computers that operate on a quantum level, the posibilitys wich have to be calculated realy are enormous though. Am not talking about good play btw, off course computers can play good. This is about perfect play. Moving a marine 1 pixel north can change everything, this all has to be calculated.
|
On November 13 2012 09:24 Rassy wrote: Sc is infinite more complex then chess, even if the fog of war would be removed. A computer wich plays sc the way deep blue played chess (brute force, calculating every possible move) would perform miserable in sc because the options at every game tick are to numerous.
Computers will never be able to play sc close to perfection ,we dont even know what a perfect game might look like. i asume it will be only t1 units,dancing around the map without ever making contact !(going far from your base will put you at a disadvantage) it will be a draw. Every tech up will probably get you killed or put to far behind economically, if there is perfect micro and positioning, How I get to GM in PvZ on the maps I didnt thumb down.
Do not give a flying fuck about scouting. Go FFE. Check for 3rd at 5:02. Yes/no - Yes = on with 2 base all in (immortal sentry or stargate gateway) no = add another cannon or two and chrono out sentries, and usually going for a stargate gateway all in behind it.
Scouting on 9 if and only if the guy is known to have a tendency of cheesing or has cheesed me frequently in the past to warrant my giving a damn.
Then its just pushing across the map in a safe way (which I'm sure the AI can do, as you could model different regions with a varying magnitude of perceived +/- charge based on the known disposition and likely unseen disposition/movement of units, and then add in a factor pointing towards the enemy base to modify the charge distribution as well in order to create a perceived optimal path of travel. And then if the enemy engages simply to micro like hell.
Obviously you have to take into account other things like trying to not walk out in the open where you will be 360 degree flanked and etc, but I'm sure the computer can learn to do that.
So PvZ at least is extremely algorithmic the way I play it.
What happens in longer games? Obviously the state space gets a lot larger, and a brute force style for everything in the traditional search way probably won't be so good - but why restrict ourself to such a method? We seem to be Turing-complete, popular computing languages are Turing-complete, and they don't seem to do things slower than us once we figure out how to best train them to do what we do. So why limit a computer to one particular type of search algorithm? Or even just to search algorithms?
By that I mean for example to not view unit movement with the same algorithm for making chess moves, in that it's not necessarily best to view it purely as a search n steps ahead to the best move - because really it's fairly continuous and not discrete, so it's probably better to use something that is more like natural computing (i.e. with something like charges as using in one of the BW AIs in the competition - but not necessarily restricted to charge), as this breaks down part of the "intractability" associated with the not necessarily finite state space which happens if you look at a continuous problem (this is hypothetical, I am no expert or even well educated about how chess search works, but treating movement as a flow is certainly not an intractable problem).
The build one uses is different in that you can make things a lot simpler by framing the question of what to build in terms of time-restricted goals, which you can then optimize, and guesstimate a goal based on scouting, which might more resemble a "traditional" search, or maybe not - obviously if time is a factor, you can't look in a series of 1 second intervals for something long term - so we perhaps need something new here, but we needed something new in go anyways and perhaps that will inspire people - there is no immediate limit to imagination. Perhaps the goal is checked very often, and the feasibility of switching goals based on new information has to be weighted with the degree of committal of the current goal and some other factors. Whatever, this type of weighting is always determined by the engine itself after millions of games and done by itself without being human-determined.
Idk why you have no faith in unusual solutions to seemingly intractable problems. I'm sure there are vastly better solutions than the off the top of the head stuff I just typed that would make a problem that looks absolutely intractable via brute forcing much more tractable. Then again people used to think computers were too "dumb" to parse cryptically phrased natural language problems and then answer them. + Show Spoiler +Yea, I used Jeopardy as a random example even though the computer had an advantage by having a superfast button actioning.
|
Oh, and guesstimating a path of least resistance based on supposed dispositions of opfor is how I'm pretty sure I judge how to move my units subconsciously, as it's a fairly automatic task unless it's a really unprepared for situation. So modeling it as a natural "flow" across a 3d map where you imagine a 2d plane corresponding plane and the vertical component perhaps being a factor of influence of opfor, local map design, and perhaps with long/short term goals factored in, and maybe with other factors or whatnot.
Much less intractable than doing a probably infinite search by considering every possible map coordinate as a possible move - well, not infinite since the granularity is usually 0.2, but pretty effectively so if you did brute force like that.
|
people say "timing attack" but realistically, there is no "timing attack". AI can go for this timing attack all it wants but it'll be interrupted in unknown way when a player decides to do something about it. no question AI can be programmed for the most perfect timing attack ever but the question is, how does the computer adapt to changing circumstances while trying to go for that timing attack. it just reminds me of how players complain about cheese because they cant do the build they want to do and is introduced to something 1) new 2) unwanted 3) unknown 4) having to use fundamental skills which they lack (crisis management) if a person can program an AI that adapts to all the situations of sc2, mad props to him/her. unless we're talking about no rush 10 minutes or something, but i dont think we are.
|
On November 13 2012 02:40 EtherealDeath wrote:Show nested quote +On November 13 2012 02:36 Cheerio wrote:On November 13 2012 01:35 Poopi wrote:On November 12 2012 22:19 See.Blue wrote: You can. What you're going to be using instead is going to be machine learning rather than some sort of pre-scripted set of responses to an information set like people seem to be assuming. It's absolutely possible to program an AI that can beat any top pro. Super smash bros melee use such a system but AI are still easily beatable, despite them learning from your plays. Computers won't be able to beat pros without cheating. ) so naive. Are you assuming that the creators of Super smash bros melee AI put as much effort in it as, for example, the creators of Deep Blue? Duh of course + Show Spoiler +No I'm not that retarded hahaha It was a rhetorical question, you either assume that or your statement doesn't make sense as one poorly written AI doesn't prove anything.
|
Most of the discussion seems to be based on the idea that a SC2 AI should think and play like a human, and approach the game like a Korean GM. That's probably not a good starting point. The AI shouldn't try to follow flawed human play, it should improve on it. A SC2 AI should play its own style, develop its own BOs, map dominance strategies, attack timings. There could be an artificial limit of APM (e.g. 500 or 1000) to avoid that the AI abuses micro. I don't think it would take years and many people to create a good AI, but its development would probably require access to an accelerated Battlenet server so that the AI could play complete SC2 games in a matter of seconds, not minutes.
|
On November 13 2012 09:45 Rassy wrote:Show nested quote +On November 13 2012 09:32 cari-kira wrote:of course its possible to create a perfect AI. but first we have to define the term "perfect". does "perfect" mean "winning most of the times"? i think that should be the definition. of course this depends on the playstyle of your opponents. if your opponents only play zerg 10pool then an AI would be "more perfect" that deals with this better. the perfect AI wont give you a "perfect build order". it will adjust its build with every new information it gets from the game. and even the perfect AI will make many mistakes that it could've done better, when it had forseen or even known every move of its opponent. perfection in sc2 will always be the best compromise. On November 13 2012 09:24 Rassy wrote: Sc is infinite more complex then chess, even if the fog of war would be removed. A computer wich plays sc the way deep blue played chess (brute force, calculating every possible move) would perform miserable in sc because the options at every game tick are to numerous.
Computers will never be able to play sc close to perfection ,we dont even know what a perfect game might look like. i asume it will be only t1 units,dancing around the map without ever making contact !(going far from your base will put you at a disadvantage) it will be a draw. Every tech up will probably get you killed or put to far behind economically, if there is perfect micro and positioning, sry i can just laugh reading statements like that. do you even know whats possible with todays computers? a computer could easily play 100 sc2 games on gm level at once with a well designed AI. "Why is there no such AI?", you ask? because nobody pays for it. hire 1000 really good people, give them 100mio a year, and you will have the perfect AI. but dont say its not possible. Yes i know verry well what computers are capable off. I think you dont realy understand the complexity of sc when computers have to calculate it "brute force" Off course computers can play sc decently, and huge progress can be made, but it will never ever be annywhere near close to perfection. Just think about the game, how big is the board? how manny squares (different positions a piece can occupy) has the board? It realy is incredibly complex, way more then a relativly verry simple game like chess. Ok 100m year, i didnt see that part and in 100m year it might be possible if we could devellop computers that operate on a quantum level, the posibilitys wich have to be calculated realy are enormous though. Am not talking about good play btw, off course computers can play good. This is about perfect play. Moving a marine 1 pixel north can change everything, this all has to be calculated.
sorry, i wasnt saying "in 100 mio years", i said "give them 100 mio €€€ per year";-) btw: i know very well how to program an AI and i play chess, too^^
of course its much easier to program a chess AI, thats because modern computers can calculate every outcome for every move in realtime after the opening and have databases of millions of moves for the opening. when playing a human player a chess AI mostly only plays moves from its database. its actual not an AI anymore.
An AI for sc2 has to be designed differently. not like the cheating automaton2000 AI, that knows which zergling a siege tank is aiming at. just look at the ingame AI. its not too shabby considering that it is done by just a few people, had a really low development priority and got no patches since release. imagine 100 or 1000 skilled people had worked every day fulltime for the last 2 years on the AI. but they didnt, because nobody needs a "perfect" AI. and please get rid of the term "perfect", its rather confusing.
|
|
These sorts of things are sick as fuck, but for me the beauty of SC and competitive RTS comes from pushing the limits of what the PLAYER can do, not what can be done in sum.
|
Rassy is right that the search tree for a game of sc2 would be completely unmanageable unlike chess . Well even in chess AI a lot of pruning methods are applied so that you are not really performing a full spectrum search of the tree. And chess is far from solved despite the processing power of chess Ais. There are more potential games in chess than known atoms in the universe, after all.
Nevertheless I have no doubt that a dedicated team of skilled AI programmers could come up with an AI of GSL calibre, and perhaps even able to consistently beat all the top humans. Remember that unlike Chess, Starcraft is a game heavily dependent on execution-- a category in which comp can greatly exceed humans. Computer only has to have strategical skill comparable to top players to beat them hands down thanks to this executional advantage.
|
On November 12 2012 21:09 Canas wrote:Show nested quote +On November 12 2012 08:01 Fluid wrote: The brood war AIs are somewhere around master level (C- to C+), so they beat 95% of players already. Not even close, the BW AI is a joke and any D- player wouldn't need more than 2 games to beat it (first game to see what it does since it does pretty much the same thing every time, second game to beat it). On topic, I think it's very possible since perfect micro is already something that is doable by AI's, but it'd be a lot harder to make an AI that isn't too predictable, is very thorough with everything it does, scouting, building placement etc, and that doesn't just die to some random cheese. Hard, but possible.
Indeed, I am sc2 silver Protoss and can beat any sc1 ai so long as I am Zerg.
|
On November 11 2012 14:34 Figgy wrote:Show nested quote +On November 11 2012 13:07 Ettick wrote: I mean it would probably take a while, but couldn't you program the AI to scout and build the correct units and buildings based on what they see, in addition to program it to have perfect macro and micro? Absolutely, 100% never. There is an impossible amount of variables to ever, ever take into account that an A.I. will simply never be able to handle This is just very false. Since the fortunate rise of statistical approaches to AI, many hard problems that could be easily ascribed to the categories that you describe have been attacked quite successfully. And, if I may say, several of your statement seems to betray a very hand-wavy, uninformed dismissal of the subject at hand. A game-specific AI is not exceptionally challenging, theoretically speaking: it was done for chess and it is being done for Go (Monte Carlo based systems have been doing very well). There are other successful but less famous examples, e.g. the ML-trained AI for "Race for the Galaxy". The only reason for which there is not a good SC2 AI is that there is a near-zero interest in developing one.
|
It's difficult to make something human-like, and rather easy to refine every little predefined action and couple that with threat management, hot spots identification and pre-defined events. Since most of the game mechanics are defined, there's actually very little calculation requirement involved for every change that happen, except maps variables. And since the map don't change throughout the course of the game, it's pre-calculated.
The question is what can be defined as humanly impossible? And even if that answer is impossible, how can the AI improve to so that the "humanly impossible scenario" cannot completely fool the AI. Take for example the current AI doesn't take information of where you're gonna hit, so they can defend that location with perfect unit composition to shut down that attack.
|
This reminds me of all those Automaton 2000 videos of perfect stutter-step, drop micro, and individual zergling splits against siege tanks.
|
What is a perfect game?
Limited information works both ways, conversely the opponent of the AI wouldn't necessarily have ever experienced a perfectly optimized and executed build that could be formulated instantly in-game if the programming were sufficiently evolved.
|
On November 11 2012 14:34 Figgy wrote:Show nested quote +On November 11 2012 13:07 Ettick wrote: I mean it would probably take a while, but couldn't you program the AI to scout and build the correct units and buildings based on what they see, in addition to program it to have perfect macro and micro? Absolutely, 100% never. There is an impossible amount of variables to ever, ever take into account that an A.I. will simply never be able to handle. For example, protoss does a standard FFE and Zerg can't punish it. Zerg is either programmed to All In or get a 3rd hatch. Easy enough. What happens if the 3rd base is cannon rushed and the A.I. didn't scout it until it may or may not be too late to save. How does the A.I know what to do? Do you know how hard it is to program a response to something so simple that a human will be able to decide instantly just through practice? Do I let the hatch die? Do I build lings to save it? How many lings? Does it depend on the amount of cannons? What if my Zerglings get walled off AFTER they are already on the way or in production in a way that a computer cannot possibly forsee that makes it impossible to stop? Do they send the lings anyways? If I don't save it and I have no scouting information, how does the build proceed? What if I have zero scouting, when as a programmer do I set my A.I to rebuild that 3rd base with zero information? When do I build enough units to clear out the cannons? When is it plausable to take your 4th instead of the 3rd base location? Is it possible to make this move on every map? There are THOUSANDS of scenarios from the first 5 minutes of a game that can throw an A.I. off it's set pattern. Even the best of the best Chess computers don't determine their openings, they have a vast opening book with variations made by top GMs because the options early game are simply too vast for the computer to realistically figure it out. People can make these "Easy" decisions because of common sense. Computers can't.
And that's why human brain is still the best computer ever. And will be for very long time
|
|
|
|