If it's possible, I think only by machine learning (i.e. the softare getting trained by playing millions of games vs. real players and learning from experience/feedback), not by the brute force approach that chess computers use, because computers don't have the brute force that would be required and the software would take forever to develop.
This is an interesting NOVA episode about IBM developing a computer that can answer jeopardy-questions:
Informative stuff for laypeople who are interested in AI.
Edit: Now that I think about it, it should also be possible to use pro replays for machine learning, so that there's no need to play millions of games against an initially dumb AI. This would mean the software would analyze a crapton of replays for patterns and then emulate those. That's how they made speech recognition and translation work after the rule based approach (teaching the software all necessary rules one by one) failed. An SC2 AI could learn to react to unexpected stuff based on similar stuff and reactions that happened in replays it has seen. Yes, I think that would be possible.
That Zergling control of Automaton 2000 is cheating. It anticipates the hit on zergling before it hits it, a.k.a. he knows when the tank will hit and which zergling it will hit. Although the marine control is best example of most optimized/perfect control without cheating.
On November 12 2012 07:14 NightOfTheDead wrote: That Zergling control of Automaton 2000 is cheating. It anticipates the hit on zergling before it hits it, a.k.a. he knows when the tank will hit and which zergling it will hit. Although the marine control is best example of most optimized/perfect control without cheating.
It figures it out in realtime, due to the retarded firing delay almost all SC2 units have. The same superhuman organism that could do the godlike marine micro could also deduce where the tank was going to fire, before it fired, and then dodge. Said organism would only need to know how the SC2 tank AI works and look at where his zerglings are, where the tank is facing, etc. It isn't cheating, so much as demonstrating what you could do at that superhuman level of skill.
The R&D needed would be immense and a waste of time and money, but possible. Wish they wouldn't have cheated with their first try with Deep Blue. Could have admitted it still needed human help so it doesn't run out of time. Later on when the hardware was there it worked out though. But round bases is a few levels easier then real time.
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.
Not because of common sense but because of the human mind being the most amazing, and spectacular miracle ever.
You could definitely beat a progamer in a best of 1 with a perfect timing attack with perfect micro for a certain map. But to semi-consistently(I'd rate 10%+ when not allining as a success) do it while actively adapting to the map would be supremely difficult. Not going to say impossible because on some more open maps, with APM not being a limit, you could very feasibly engage a terran bioball into a protoss deathball and win simply through absolutely unrealistic spreading(dodging colossus shots, ridiculous splits, mindblowing snipe/EMP stuff), and a bot definitely keep up in macro with the top koreans.
Meh AI couldn't even beat a WCG 2001 amateur gamer, even with impossible muta micro, just died to a dumb timing attack. I don't think its anywhere near possible, its been tried for a long time.
im not so sure, it might be harder than chess for a computer to beat a human. ofc chess in easier in that regard that it is highly mathematical and that a computer is in an advantageous position. Sc2 is more dependent on analysing the gameplay of your opponent which a computer cant even attempt to do tih reasonable ressources. But things in advantage are: A Compueter can have perfect macro, not like flash macro, really spot in every instant. Even in the lategame getting 100% or every possible larvae, perfect saturation on every base etc. No human player does this. Period. Secondly he can have perfect battle micro as he isnt limited by handspeed/apm and it should be possible to write an algorithm how to engage certain fights.
Under certain premises, it would be fairly straightforward. Under others, such as building a "fair" AI (with human limitations), it can be quite difficult.
It also needs to be said that building an AI for a game like Starcraft uses a different approach and different techniques to building an AI for a discrete game such as Chess. Starcraft is inherently more convenient for the machine due to the mechanical side of the game that can be abused.
The AI wouldn't need to consider in-depth strategies and search for the perfect response when it can simply overwhelm the player who will be 3 seconds late here, 2 seconds late there, and have terrible control in comparison.
On November 12 2012 07:50 sluggaslamoo wrote: Meh AI couldn't even beat a WCG 2001 amateur gamer, even with impossible muta micro, just died to a dumb timing attack. I don't think its anywhere near possible, its been tried for a long time.
As far as I'm aware, the BW AIs that are fairly limited in the sense that they are done outside of the game code itself, which creates a lot of added difficulty for the programmers. They're really more like robots playing the game, definitely not very representative of what AI could do.
On November 12 2012 07:54 Talin wrote: Under certain premises, it would be fairly straightforward. Under others, such as building a "fair" AI (with human limitations), it can be quite difficult.
It also needs to be said that building an AI for a game like Starcraft uses a different approach and different techniques to building an AI for a discrete game such as Chess. Starcraft is inherently more convenient for the machine due to the mechanical side of the game that can be abused.
The AI wouldn't need to consider in-depth strategies and search for the perfect response when it can simply overwhelm the player who will be 3 seconds late here, 2 seconds late there, and have terrible control in comparison.
On November 12 2012 07:50 sluggaslamoo wrote: Meh AI couldn't even beat a WCG 2001 amateur gamer, even with impossible muta micro, just died to a dumb timing attack. I don't think its anywhere near possible, its been tried for a long time.
As far as I'm aware, the BW AIs that are fairly limited in the sense that they are done outside of the game code itself, which creates a lot of added difficulty for the programmers. They're really more like robots playing the game, definitely not very representative of what AI could do.
The coding was never the problem. It was the decision making. BWAI has more potential than what SC2 triggers or galaxy can do atm, many more abstractions, such as knowing where the ramps are and walling.
On November 12 2012 07:52 Cele wrote: im not so sure, it might be harder than chess for a computer to beat a human. ofc chess in easier in that regard that it is highly mathematical and that a computer is in an advantageous position. Sc2 is more dependent on analysing the gameplay of your opponent which a computer cant even attempt to do tih reasonable ressources. But things in advantage are: A Compueter can have perfect macro, not like flash macro, really spot in every instant. Even in the lategame getting 100% or every possible larvae, perfect saturation on every base etc. No human player does this. Period. Secondly he can have perfect battle micro as he isnt limited by handspeed/apm and it should be possible to write an algorithm how to engage certain fights.
It's more complicated than that. There's limited resources, so you would have to find a way for the computer to prioritize when to expand, when to make workers, how many workers to make, when to make production, when to tech, etc. and also have it be able to modify those plans on the fly in response to what the human opponent would do, all the while having imperfect information and no knowledge of the other guy's playstyle, and also not leaving the AI open to obvious patterns that can be abused easily
On November 11 2012 12:56 shindigs wrote: There was an AI released that had perfect unit control that basically made marines super imbalanced. It could split near perfectly and avoid banelings like no one's business. Zerglings spread out to reduce splash damage from tanks and basically overran everything.
I think it'd be interesting if we could set a cap on what the AI can do with mechanics, and make it somewhat equatable to human play. Maybe a 300-400 APM limit? Someone in AI please let me know if this is possible.
I think there's a realm for super AI's to battle it out there. Does perfect zergling control or perfect marine control win out at the end of the day?
If you cap the APM you have to somehow choose what actions to not do any longer for the AI, which is another issue altogether. Or rather, probably, simply put in enough features of the AI that you know will keep it under that cap.