There's been a lot of complaining about AI in turn based strategy games. For good reason, I think--a TBS game doesn't have the ability to tell a good story like an RPG or flash some showy graphics like an FPS or become an e-sport like an RTS, so unless you're patient enough to play with other people, the quality of the AI is really the limiting factor on the enjoyment one can get out of a TBS. (Excepting the possibility of a very well done player vs environment kind of setup, which is possible with well-crafted maps and such, but I won't get into it here.)
I don't think anyone can dispute that it's essentially impossible to make an AI that can play a TBS as well as a human. Chess, of course, is the notable exception, but that's only after years of work--more to the point--in a system that is far, far simpler than a computer TBS. Nonetheless, people tend to get bent way out of shape when an AI cheats, or when an AI makes obvious mistakes (though I'll put the excess rage down to the strange transformation undergone as soon as one starts to post on the internet). All kinds of games that are otherwise great are cited--even by their fans--as having a poor AI. (Including that great fantasy TBS, Master of Magic, by none other than myself.)
The question is simple: what's the best TBS AI you've seen? Do you forgive it for "cheating" (if it does)? What makes it good or bad? Is the feel of the AI better than its ability to win (i.e. behaves "realistically" instead of playing to win)? Comparison across games is hard, of course, because some games are inherently easier to write an AI for.
GalCivII was supposed to have really good AI, but I never got good enough to test it. Civ4 had good enough AI for me to enjoy, as does Civ5, I think. (The hardcore players here will recognize that I'm not actually very good.) I think FE is pretty good (possibly better than others), but I do feel that the AI should be better in the later stage than it is.
Solitaire Settlers of Catan
One real issue with AI is that you improve but the AI doesn't, and the AI often isn't allowed to adapt to your tendencies game-to-game.
Also, the more complex the game, the harder it is to do AI right. FE is a harder game to do AI for than GalCiv. The Drengin aren't going to have their dreadnoughts cast Diamondskin.
The problem with AI is that the same AI has to compete against up to 10s of millions of players. IMO humans suck at chess too.
I mean really, are humans truly good at TBS games? I don't think so.
You could design an AI to stomp humans, although it may be hard to update all those games whenever it learns something. Actually the real challenge would be to make the AI capable of sucking on purpose so it won't just roll over every person on earth once it figures out the mechanics of the game.
The AI in tablet risk. It actually makes good decisions and doesn't make pathetic mistakes like sending armies after a lost cause.
I think the original F.E.A.R. has the best AI I've ever encountered. That's not to say its amazing, but its pretty damn close tot he best I've encountered.
The AI in DayZ. Every single time I get something, an AI kills me with a bomb or something.
Oh wait...
You must distinguish between reactive and deliberative AI.
Reactive AI just responds to tactical situations in some hopefully meaningful way. The mentioned FEAR is an example, but if you examine it more closely, it just pretends to execute elaborate plans. In reality, the soldiers just shout a lot (flank him, cover me, etc), and try to stay in cover, but often blow themselves with grenades anyway. Quake bots knew how to create waypoint maps and were supposedly adaptive, but all in all, it was pretty basic.
Deliberative AI, on the other hand, is much, much harder to create, and is usually implemented by scripted sequences of actions (build orders, research path) that jam on the first grain of sand you throw into its cogs - examples are seen everywhere in games, idle cities and units standing indefinitely, units roaming senselessly the continents, war declarations without actual military operations to follow.
The balance between the deliberative and reactive comonents of the AI is very hard to achieve - often, pursuing short term goals contradicts long term development (resources spent on static defenses are missing for research, etc).
What is next to non-existent in games is a truly adaptive AI. We have yet to see that.
And best AIs I have seen? Without a doubt in games that are built around the AI limitations, and not the other way around. "AI wars" comes to mind, dwarf fortress, for all the bugs and glitches it has, can simulate pretty complicated behaviors.
Please note that "best AI" does not always mean competetively strongest opponent. Bots that see you through walls may be tough to defeat, but are not actually an example of a good AI, because they ignore the limitations actual players has to face.
(There's also a Race for the Galaxy (card game) AI that's quite good.) I think board/card game AI's are a heck of a lot easier to design, because the game rules are limited by what's feasible (and enjoyable!) to do on pen and paper. This also includes chess, I think.
Well, what do you mean "truly good"? If you had an enormous, worldwide, yearly tournament of Game X and gave the winner a million dollars each time, after ten years I think you'd have to say that the winner was "truly good". Can you say that the person who, right now, is the best at Fallen Enchantress (however you want to determine that) is not "truly good" at the game? I think you have to say he (or she) is. I think you probably could design an AI to be better than humans at any given game, but it would probably take as long to write that AI as it has to write the best chess AIs. The more funny rules the easier it is for a human to see some little trick that just lays an AI flat. I think anyone who's ever had to write an AI for an actual game that needs to be released at some actual point in time would strongly disagree with the statement that "the real challenge would be to make the AI capable of sucking".
I think you're very right, Kamamura_CZ about all of your points. I think the state of the field AI is far below what is needed to be good at any non-specific task you can throw at it. All the cool tricks--genetic algorithms, neural nets, etc--are still only good under limited circumstances. (Actually, I think the Race for the Galaxy AI was a neural net, but there are pretty limited inputs in that game when you think about it.) So that's why games designed around AIs have the best AIs, but that's almost cheating, isn't it?
Partially this post was born out of frustration with all the forum posters who complain non-stop about how terrible the AI is (on many different forums), and I was curious if anyone had an example of a *good* AI.
Depends on the game.
In Galactic Civilizations II, I had the AI "play" a few virtual turns into the future where it had the human player controlled by the AI. Then, based on what it predicted, it "reacted" to that and effectively pre-planned. It was a ton of effort though, not something I really want to do again given that I'm not sure most users even noticed the quality difference (except maybe the really good players).
As a Computer Science Phd-track, I've gotten into similar conversations with fellow students, professors, and postgrads a fair number of times, and we've actually come up with a few tentative answers.
The first item to note is that, while they are called the same thing, game AIs and actual artificial intelligence are really only loosely related to each other. Game AIs are a lot more deterministic, and are usually supplied with all of the instructions they are expected to need well ahead of time. This, predictably, results in horrible misbehavior when a player comes up with something the programmer did not expect (one of my professors calls these types of program "reflex agents", and the consensus seems to be that they are not truly artificially intelligent).
Actual AI is very hard to define, and has only recently become commercially viable (or for that matter, existed at all). Generally, this sort of AI can learn from past experiences and develop strategy on multiple levels if put into a game setting, but that area of research is still very tentative even after decades of study. I do, however, think we will be seeing it put into games sometime soon- the GCII AI is already a limited version of something we literally just started talking about on Friday's lecture.
On a side note, we do actually use a basic turn-based strategy game to test AIs in one of my courses, although it's not anything playable by humans.
My understanding is that this is similar to how chess AI's work--they have a method for rating the strength of various board positions and then go down the decision tree and figure out which move will benefit them the most. As far as doing it again goes, well, it seems to me that FE is not as amenable to such an approach because it's much more complicated (I think). And as I said before, I personally never got good enough at GCII to appreciate the AI, which brings up another point: the game has to be fun enough that people will keep playing it and get good enough to need a stellar AI. Plus, I imagine it's a bit more difficult to have an AI avoid all the "dumb mistakes" that stand out to the player than it is to have an AI that is, in some sense, just "good".
Yeah, this is sort of what I meant before by "cool tricks". What good is a general purpose AI, anyway, other than to play games?
Incidentally, here's a pretty good article on a Starcraft AI: http://arstechnica.com/gaming/2011/01/skynet-meets-the-swarm-how-the-berkeley-overmind-won-the-2010-starcraft-ai-competition/ I really like their "potential field" method, and it's a lot of fun to read and think about, but it still strikes me as somewhat "gamey" in that there's only one tactic the AI pursues. (At least, that was what I thought when I read the article a while ago.)
Hm, do you have any links as to what kind of AI you're talking about? What I meant was that it seems to me that all of the tasks you mentioned would be better served by a purpose-written AI rather than a general one. But I don't really know what you're talking about, so I'm curious!
Well, I'm not quite sure what you mean by purpose-written versus general, mainly. All AIs are purpose-written in the sense that they are created to solve a problem with certain parameters (usually, we describe an AI problem in the form of what the goal is, what actions the computer can take, what information is available to it, and a few special features of the environment), but game AIs as a general rule cannot learn, and do not conduct exhaustive searches of state spaces to find their goals.Back on topic: the Wikipedia page on machine learning is a good place to start, and since a LOT of recent AI research has been on creating computers that can hold a conversation, the Loebner Prize and assorted chatbots provide a good sample of what a true AI can now do.
According to this thread you know nothing about AI, and you are "impressed" with the Overmind. Have you ever had to write an AI for a game that was released? No? Please tell me more about how you can read the minds of people who have.
The best FE player is not good at FE. Did you want me to deny that? Sorry. TBS games are the strategy game most optimized for humans. You can use various tools, including paper and pencil and spread sheets and you have effectively infinite time to plan your moves. But we are still bad at them. Humans just are good at keeping track of so many things, that's why you have to use tools. Are there a few people with non-neurotypical brains who are exceptional at TBS games? Maybe. But that doesn't mean humans as a species are.
Computers are super amazing at all the parts of TBS games that people aren't. Keeping perfect records of dozens of statistics about hundreds or thousands of unit types and buildings and spells for instance. Never ever forgetting part of their plan. After all that's how programming works. Computers follow perfectly, every time for millions and billions and trillions of times, the instructions that a human gave them. They never forget one, or mess it up.
Now imagine if humans had to do all this stuff in real time like an RTS. The Overmind does something that most computer AI doesn't although people are finally starting to do it, it calculates optimal targets based on how hard they hit and need to be hit and how fast they do so. Humans can't do that. Have you seen the mental math skills of the average human? Its embarrassing to be the same species as them. Sure you can memorize the stats of star crafts few dozen units and its 3 lousy tech levels but anything more complex than that isn't gonna be too great. Imagine trying to run a Dom3 battle in real time. Its practically impossible for most people. Dozens of buffs each modified by the magic level of the caster which can be further modified by other buffs and then dozens of resists and shit.
And although Starcraft games are specifically designed to be balanced for humans and simple enough for humans to understand, they still aren't balanced because computers don't play by the same rules. The Overmind massively abuses mutalisks which are balanced because they are so hard to control. As they note in the article you posted humans simply can't micro mutalisks that hard. Also if you read the article you would know that the Overmind had its own pathfinding as well.
There are a lot of other barriers to computer AI. For one thing the AI has to run on the same machine, until recently on a single core, with the graphics and simulation state and other crap. The human player has its own million year tested computer whose eccentricities computer games are designed around that has no other tasks in play. What if you had an entire computer that was set up to run the AI and send only its command to the computer managing the simulation state? This would also preclude other processes eating up system resources.
In fact contrary to popular belief it is the humans who cheat the most at human vs AI games and not the AI.
Now even if we don't give the AI its own computer, since financially its not possible, there are still hundreds of things we can do that can make the computer more effective. The Overmind made only a few major changes to the way the AI works.
The reason that the real problem is making the AI dumb is because it has to be believable. The AI needs to vary its mistakes as humans do, making different ones each time. The AI needs to know the proper progression of skills for humans to learn the game so that as the AI raises in difficulty it prepares the human for multiplayer. Remember that poor human players are just as easily exploitable by a single trick that knocks them flat as poor AI players. A Zerg rush will crush a new human player quite easily over and over.
I'm confused what makes a "good" player, then. Is there some Platonic form of "good FE player" that we haven't realized? How can we tell when someone is "good" except by comparing them to everyone else? If the best FE player isn't "good", then what possible use is the word?
Also, I'm not debating that computers are better than humans at many tasks (especially repetitive ones), or that AIs are playing a different game--the Overmind was using API hooks that Blizzard made available, for example. I also didn't mean to give the impression that writing a dumb AI is easy. But my question is this: given all the advantages that a computer has, what games have AIs that are better than the best human players? I'm not aware of any TBS computer games, but that's why I started the thread. I'd also be interested to hear of other cases too, of course (excluding games that have been solved, of course).
Finally, chill out. I'm sorry if I offended you, I didn't mean to. And give more credit to your fellow humans; we are far smarter than computers for any reasonable definition of "smart". Our achievements include, you know, inventing computers.
You're right, I didn't think this through. For "general" I meant "able to solve an arbitrary problem" which was rather silly of me since that's what computer science is all about (in some sense). Of course AIs are purpose-written, it would be silly to do it any other way (at least if your goal is to have one play a game).
Mostly I was curious about what technology you meant by "the technology is very new" and is being used in ad recommenders, etc. Have there been recent strides in machine learning? New techniques? I guess I just need to read up. (No surprise there.)
Also, what a wonderful society we live in where the first thing you do with a fancy new AI is get it to recommend ads to people. Someone's gotta pay the bills, I guess.
A lot of the fundamental algorithms we use in AI (such as Dijkstra's algorithm, gradient descent, and neural networks) have been known to computer scientists for decades, and some have been known to mathematicians hundreds of years before that, However, it's only recently that we've developed both the processing power and massively interconnected information systems to actually build them. I suppose it would be more accurate to say that the technology is old, but has never been used in a scenario like this before, and after putting it in a new application, tweaking it to fit that application, tweaking the application to fit the technology, and killing dozens of bugs ("I am not a robot. I am a UNICORN!!!!")* you've got something that might as well be new.
*The textbook the second TV screen is sitting on is the same one I've been using in one of my classes.
there is no reason an AI shouldn't win a civ-like game with 25% cheaper everything. I don't think it's realistically possible to play on a level playing field atm, but 5% advantage should be enough.
Anything below 25% is just bad AI imo, with varying degrees of badness, and that's where every 4X game is at right now
I was impressed with Gal Civ II's AI, but it was still bad - just less bad than the rest
AI in games is something along those lines:
1) calculate somehow a value that indicates how good is our current situation.
2) try to find a "movement" that improves our situation value.
The problem is that 1 is a very very very hard problem. There has been a ton of research on chess just to be able to give accurate values to board states, and they are ridden with exceptions (starts are played mostly automatically by the book based on statistics for example, and several chess endings are just played automatically also).
Humans are incredibly good at analyzing situations and trying to work their way to get to a better position. Computers aren't, what AI does is brute-force that process by throwing more CPU power at the problem. So, if it has taken us years of research and tricks to get good at chess, imagine what happens on a game where you have a very limited time to implement the AI: bad AI. Check AIs for Go for example, they are terrible...
OK, I like that you gave a definition! I'm curious why you say that AI's *should* be able to win with a 25% handicap (let's call it that). Do you have some examples of AI's that can do that? Has there ever been a "good" AI (able to win with 25% or smaller handicap)? If you're just picking 25% because it seems right to you, why 25%? Does that seem a realistic goal based on other AIs you've seen?
I really don't mean to pick on you, I'm honestly curious.
Yes, this is exactly what I meant. Obviously you can design your games to be easier or harder to make a guess at #1. Chess is pretty simple, I think, compared to all the wacky variables that you have in a computer game, but still incredibly deep (and difficult!). And like you said, it's taken a ton of work. Do you hold out hope for the future?
I've only played some missions in the GalCiv II campaign so I can't evaluate its AI but of the TBS games I've played so far:
Basically since all the others are worse. Heroes V fails since (I've read) it bullrushes you on week 3. Heroes II is too simple. Heroes IV is a new record in crap.
Age of Wonders trilogy can't play the game properly. Disciples II doesn't use the most effective strategy of nuking your main stack then killing it.
I read a bit on the wikipedia pages for the 'Dijkstras algorithm', 'gradient descent' and 'neural networks' and that level of math made my head hurt. I thought you were in junior high a few years back when you said you were 14 but it seems you're in university. True?
In any case, you seem to know what you're talking about. Got any more good AI info?
There are many great features available to you once you register, including:
Sign in or Create Account