"Hey! Over here! I'M OVER HEEERE!"
June 24, 2011 6:35 AM   Subscribe

"I can tell you right now there is no I in A.I., and nor should there be." Veteran game programmer Mike Diskett (Syndicate, Magic Carpet, GTA IV) offers his thoughts on response mechanics, and how fuzzy logic can fail to account for the fog of war.
posted by Smart Dalek (38 comments total) 25 users marked this as a favorite

 
via
posted by Smart Dalek at 6:37 AM on June 24, 2011


I don't think there's much danger of this person putting too much I in their AI.
posted by swift at 6:59 AM on June 24, 2011 [3 favorites]


This seems like more of a matter of inputs to the AI routines, rather than the AI routines being too intelligent. It's kind of like coding a poker playing AI that knows the values of the face down cards, it's not any smarter than AI that follows the rules, it just makes better decisions by cheating.

In Syndicate Wars we actually experimented with worst path, instead of taking the best path to the target, take the worst, I had AI’s do this about half the time. This resulted in most excellent flanking maneuvers on behalf of the AI as some took the long way round to get to you and came in the back way while other agents came in the front.

Congratulations, you've invented Pac-Man!
posted by burnmp3s at 7:10 AM on June 24, 2011 [8 favorites]


I've been thinking about the "under the hood" of video games for a long time now, and this article puts its finger on a thread of those thoughts -- thanks for posting it!
posted by dylanjames at 7:34 AM on June 24, 2011


Where's all this negativity coming from? Have you played a videogame lately? AI is ubiquitously over-powered and always knows where you are, unless it's specifically programmed to be a "sneaking game" and then the AI is dumb as dirt unless you shoot a gun and then, hey, they are over powered again (for X seconds).
posted by rebent at 7:41 AM on June 24, 2011 [2 favorites]


I've totally done artificially stupid enemies in one of my video games. I gave them:

1. limited range of sight
2. a fuzzy way of finding their way around the level. They didn't "know" the level; they only could see a limited radius around themselves.
3. finite reaction time (by only updating their current decision of what to do every few frames, with random jitter)
4. the same control scheme as the player (essentially). The enemies couldn't just say "I'm going to make my velocity V"; they had to say "I PLAN to make my velocity V, and to do that given my current orientation and direction, I have to send the 'turn left' command and the 'accelerate forward' command to my virtual controller, which will respond exactly as if it were a human player using that controller".

The enemies turned out great! Playtesters have commented on how lifelike the enemies seem (they even feel sympathy for the eels that flee from enemy fire... until a pack of them sneaks up from behind, and that sympathy vanishes in a rage that I find delicious).

No, I'm not linking the game. The level generation is broken, and the framework I originally coded it for is no longer supported. But one of these days I'm going to rewrite it.
posted by Jpfed at 7:44 AM on June 24, 2011 [10 favorites]


Where's all this negativity coming from? Have you played a videogame lately? AI is ubiquitously over-powered and always knows where you are, unless it's specifically programmed to be a "sneaking game" and then the AI is dumb as dirt unless you shoot a gun and then, hey, they are over powered again (for X seconds).

Man, I miss the 'Thief' games. Pretty much invented the first-person-sneaking genre, and to date no one has been able to do it better than them (and most do it much much worse).

Oh. Oh my. Come out, you taffer!
posted by FatherDagon at 7:52 AM on June 24, 2011 [2 favorites]


Every time I've tried to play Thief it's been too old for my computers :( I really want to tho!
posted by rebent at 8:02 AM on June 24, 2011


I totally get what he's saying, but I wish he wouldn't conflate knowledge with intelligence. Game AI really is too stupid and making it more intelligent is a worthy goal (within the context of the video game industry, obviously; we're not curing herpes here). Game AI is too strong and need to be hamstrung in so many games not because it is too intelligent, but because it has been given too many advantages that have nothing to do with intelligence, like perfect aim, millisecond response times, and perfect knowledge of the state of the world.
posted by 256 at 8:05 AM on June 24, 2011 [4 favorites]


Where's all this negativity coming from?

I assume this is directed at me? I actually agree with all of the points in the post, I just disagree with it being called too "intelligent". The AI routines themselves are not very intelligent, they just have access to a lot of game information in a situation where a normal player would have limited information. It's part of an overall problem with game enemies being given advantages over normal players to help compensate for the fact that computers aren't as smart as human players. So in the same category would be catch-up abilities in racing games where a computer controlled car will go faster if the human player has the lead, or just the fact that a single-player FPS will mainly involve one human player surviving against a huge number of enemies. Some of the best AI I have seen has been in turn-based tactical strategy games. Those games would take into account things like line-of-sight, fog of war, probabilistic locations of unseen enemies based on direction of travel and sound, etc. Part of the reason they could do that was that in a turned based game you could do a lot of complicated AI processing without having to worry about slowing down real-time graphics.
posted by burnmp3s at 8:06 AM on June 24, 2011 [3 favorites]


(Psst. Thief 1 can be made to run on modern-ish Windows. It just requires a lot of fiddling, a few extra programs, and about two hours of screaming at your monitor. I just installed Thief 1 Gold with a few fan-made graphical upgrades on a Vista box. The extras made it more complicated than it needed to be but the whole thing was stable once done. It's worth it. The internet can tell you more.)
posted by cheap paper at 8:24 AM on June 24, 2011


The trick to getting the Dark Engine to run on modern machines is (beyond the usual "Run as Windows XP app" stuff), is that as soon as you hit the main menu, to CTRL-ALT-ESCAPE, go to the process and set the processor affinity to just one CPU.
posted by Ryvar at 8:58 AM on June 24, 2011


The problem is not that game AI is overpowered. The problem is that game AI isn't AI.

The writer of this post clearly can't distinguish between stupidity and ignorance. And, in fact, game AI designers are not capable either.

Every AI must begin by specifying a knowledge model for that construct, which, significantly, includes the constraints on what it does, or can, know about its world at any given moment.

In video games, apparently, that knowledge model is coextensive with the total world-representation of the system itself.

It is far worse than the system just knowing your exact location in world space.

For instance, even the player's viewport is a data structure that is leveraged, by so-called AI.

As an example, in Halo 2, get into a position where you can see an enemy from far away using normal circumstances. Watch that enemy's movement path. In many cases, you will note the enemy stays completely still. Now draw a bead with your sniper rifle on that enemy's head. You will note that the enemy moves its head in under 2.5 seconds, moving out of frame of your scope.

In this case, you fired no bullets, and it's not a matter of your position in world space. This "AI" knows exactly where your target reticle is at all times.

Here's another example from Halo 2. Pick up a plasma rifle. Walk about twenty yards from a wall. Fire at the wall. You notice a wide spread of hits. It's a highly inaccurate weapon, even at medium range. That is, it is when you're firing it.

Now start up the game on Legendary difficulty and find a room where you can alert the enemy AIs to your presence but they cannot come close to you, and you are in cover (there are a number of levels where this is possible). Now watch as the AI trains his plasma rifle on the wall behind you, as close to your head as possible. He fires a continuous stream of plasma bursts from across the level (far beyond medium range, even) that unerringly hit the wall in precisely the same spot every time.

So not only is the enemy "aware" of your exact position, not only does it know where your target reticle is pointed - even the weapons you supposedly share with him change their characteristics depending on whether the AI is using them or you are.

This is not intelligence. And it's not "artificial stupidity" either. It's just programmer laziness.
posted by macross city flaneur at 9:04 AM on June 24, 2011 [9 favorites]


Ugh, this has nothing to do with 'Intelligence' and everything to do with input. Most programmers just hook their bots up to the main game model and let it know everything. Well, if you had that information, you'd be really good too.

Pretty much like what Jpfed did, any good programmer tries to imitate the players limited field of view for the bots as well.

Now, you'll probably dumb them down a bit so that the player can actually kill hundreds and not get killed, but saying this has anything to with AI, is well... dumb.
posted by lumpenprole at 9:07 AM on June 24, 2011


Intelligent behavior only emerges when computing force in whatever form is employed for the goal of survival and reproduction of the system/organism in a certain environment.

Implementing such a drive in man-made systems is probably impossible and in any case undesirable: self-preservation requires complete autonomy, and computers/software are just tools - our tools, for our goals.

Too bad though. Creating such a system would be a deed worthy of a god.
posted by Bas at 9:09 AM on June 24, 2011


It sounds like part of the problem is the focus the intense focus on graphics eating up all the processing power. Instead of making the bots smart but with realistic access to information, they have give them access to all the information and make the dumb enough that the player doesn't feel like the computer has an unfair advantage. At least they're pretty.
posted by VTX at 9:15 AM on June 24, 2011


Oh so AI stood for Artifical Ignorance all along, this explains a lot
posted by yoHighness at 9:17 AM on June 24, 2011


DEATH FROM ABOVE!
posted by Lipstick Thespian at 9:22 AM on June 24, 2011


This is not intelligence. And it's not "artificial stupidity" either. It's just programmer laziness.

I wouldn't necessarily say that. You could implement give your enemies the same limitations as the player and make them as intelligent as you like, but there's no guarantee that would be fun. Certainly some games with emergent behavior from independent agents can be fun, but Halo always struck me as more of a carefully planned series of scripted fights. The goal isn't necessarily emergence as much as it is control for the level designers.

I think this just comes down to an issue of game design. The goal in writing a game engine isn't always to make the most realistic simulation possible - it's to make the most fun simulation.
posted by heathkit at 9:40 AM on June 24, 2011


You could implement give your enemies the same limitations as the player and make them as intelligent as you like, but there's no guarantee that would be fun

And depending on the game, your upper bound for intelligence can be better than the best possible player (i.e. state of the art chess AI), better than most players (state of the art Starcraft AI), or worse than most players (state of the art no limit poker AI). In a lot of cases, it would be very difficult for game developers to make a computer opponent challenging without some form of "cheating".
posted by burnmp3s at 9:55 AM on June 24, 2011


heathkit, I think game AI designers give their constructs an artificially rich information set about the world first and foremost because their algorithms are not nearly sophisticated enough to defeat a human opponent using the same information he has.

Now, you can argue that the game designer cheats to close this intelligence gap only to make the game more challenging, but what kind of challenge is it?

I would argue that, in fact, the number and quality of these cheats is actually one good metric for the game's failure to be genuinely fun and challenging.

Maybe that's not the result of laziness per se (though it can be, and often is), but we should admit that it's a concession to the limits on what programmers know, how skilled they are, what they can do on time, on budget, etc.

It is passive aggressive at best for game programmers to call it artificial stupidity (it inverts the intelligence gap between human and machine to make it seem like the human is the less intelligent entity), and to argue that they are making the game more fun through brute force and cheats is just as passive aggressive (and flattering to the ego of the programmer/machine).

When people say game graphics could be better, our response is not to tell them there is something wrong with their eyes. Or to pretend that, say, shorter fog distances are "more fun". That's a lie developers tell themselves to feel less bad about the inadequacy of their work.
posted by macross city flaneur at 9:57 AM on June 24, 2011 [1 favorite]


the AI's not broken/cheating when you play on Legendary, it's tweaked to become superhuman/impossibly good... because you're playing on Legendary.
posted by radiosilents at 10:21 AM on June 24, 2011 [1 favorite]


And depending on the game, your upper bound for intelligence can be better than the best possible player (i.e. state of the art chess AI)

It is highly debatable whether this is "cheating" or not. All chess programs are capable of looking forward to exponentially more future scenarios than human beings, with far greater precision. Now, you can argue this is not cheating because each of these states of the game are fully extrapolatable from the current state of the game. The AI and the human player are starting from the same information.

Or you could argue that Chess is inherently limited by being a extremely well-defined closed system with low combinatorial complexity, which makes it not a game susceptible to "intelligent" problem solving at all.

The real world is not well-defined, not closed, or, at the very least, of such magnitudes of order more combinatorial complexity that it is not at all comparable to chess.

This is the world in which the only "intelligence" we know developed - human intelligence - and it is the world in which Chess is still not a very interesting test of intelligence.
posted by macross city flaneur at 10:21 AM on June 24, 2011


the AI's not broken/cheating when you play on Legendary, it's tweaked to become superhuman/impossibly good... because you're playing on Legendary.

Can we get a difficulty level called "pointless", in which you die as soon as you spawn? The game "AI" is capable of that too, right?

The issue isn't "how" difficult the game is, the issue is "in what way" is it difficult? You can't justify the quality of the difficulty by appeal to the degree of difficulty.
posted by macross city flaneur at 10:24 AM on June 24, 2011


Now watch as the AI trains his plasma rifle on the wall behind you, as close to your head as possible. He fires a continuous stream of plasma bursts from across the level (far beyond medium range, even) that unerringly hit the wall in precisely the same spot every time.

This recurs in Halo: Reach, where if you're playing on Legendary difficulty and you allow an Elite to hijack your Gauss 'hog on the level "ONI Sword Base", he will not only kill all players with one shot each (barring odd cover mechanics), but will hit them in the head every time.
posted by Inspector.Gadget at 10:36 AM on June 24, 2011 [1 favorite]


heathkit: You could implement give your enemies the same limitations as the player and make them as intelligent as you like, but there's no guarantee that would be fun. Certainly some games with emergent behavior from independent agents can be fun, but Halo always struck me as more of a carefully planned series of scripted fights. The goal isn't necessarily emergence as much as it is control for the level designers.

This is it exactly. Sometimes you want to play Spacewar against an enemy with the same powers and limitations as you, sometimes you want to play Asteroids against stupid enemies whose individually predictable behaviour gives rise to unpredictable, interesting situations.

Years ago I had a great time playing Scarab, a strange but awesome game where you were a giant robot in the form of an Egyptian god and you fought other similar robots over territory in a series of cities full of pyramids, monoliths and exploding mechanical vultures. The designer, who I think also worked on Planetside, wrote a bit in the manual about how the enemy AI only had access to the same information and controls as the player, which must have sounded good at the time but unfortunately the complexity of the 3D environments, the range of options available to the player (especially a number of weapons with arcing paths) and the limitations of processors at the time meant that the enemies were almost always confused and harmless. I remember thinking how much more fun the game would have been if the enemies had been able to cheat in a few simple ways, finely tuned just to make them a little bit challenging. Oh well. The game was great in multiplayer, anyway.
posted by A Thousand Baited Hooks at 11:35 AM on June 24, 2011 [2 favorites]


This recurs in Halo: Reach, where if you're playing on Legendary difficulty and you allow an Elite to hijack your Gauss 'hog on the level "ONI Sword Base", he will not only kill all players with one shot each (barring odd cover mechanics), but will hit them in the head every time.

But that's how powerful the Gauss hog actually is. In Halo multiplayer, a shot from the Gauss turret is a one-shot kill, and it's actually accurate enough to make headshots with all the time. When a good player is driving and a great player is shooting, it's nearly unstoppable - I've seen 100-15 Slayer matches because one team got the Gauss hog and ran over the map with it. It doesn't seem unfair at all that on the hardest difficulty setting, the AI enemies are as good as high-skill humans.

The comment about Plasma Rifle inaccuracy is similarly off. Plasma Rifles come from Covenant troops who are typically about 1.5 times taller than the MC, and are presumably trained in its use. You wouldn't expect a US soldier who is trained on an M4 to be able to pick up an AK47 and fire it as accurately as someone who trained extensively with it, especially if the AK47 was designed for someone nine feet tall. It's the same weapon, but it's not in the same hands.
posted by 0xFCAF at 11:41 AM on June 24, 2011 [1 favorite]


All chess programs are capable of looking forward to exponentially more future scenarios than human beings, with far greater precision.

Right I was talking about not "cheating" in terms of giving the computer and the player different sets of inputs and outputs, and "intelligence" as analogous to being able to perform in the game better given those same inputs and outputs. And chess AI is perhaps a bad example because the methods used at high levels are very brute-force in ways that differ substantially from the thought process of actual players. Something like a Scrabble AI would probably be closer to what players actually do (memorize words, recognize words that can be made out of certain letters, decide tile placement strategically, etc.) although a computer would still have advantages in terms of ability to remember things and think of many possible plays.
posted by burnmp3s at 11:51 AM on June 24, 2011


All shooters are a carefully planned series of scripted fights. I thought the virtue of video games was supposed to be all that freedom they give us, the way they don't predetermine a "narrative", but here we find that even the most seemingly "open" games actually have a scripted sequence imposed on them.

The argument from "fun" here is entirely dubious.

In the real world, no group of soldiers runs willy nilly into a hostile battlefield with no front, no coordination, and no foreknowledge of where their enemies are, or are likely, to be.

In shooters we do this all the time. With enemies spawned behind us, on top of us, everywhere around us.

But the reason this isn't "fun" isn't because it isn't "realistic". It isn't "fun" because it doesn't require the use of higher intellectual functions that the use of basic military tactics and strategy requires.

And we should question WHY shooters are designed this way in an era when Marine recruiters show up to Game Stop at every major shooter release.

"Shooters" train mindless cannon fodder to do what they're told, hopefully develop some weapon accuracy, and not think too hard about what they're doing. Most people who enter the military will be most beneficial to the military hierarchy if they have this very same orientation toward what they do.

(Or so it used to be. The American military is actually having a tough time developing a force that is equipped to think for themselves in an era where house to house searches, requiring cultural sensitivity, are more the norm than trench warfare, but cannon fodder culture dies hard.)

But even at the squadron level, a military commander must exercise MUCH more tactical intelligence than this.

Still, it's not a question of "realism". It is PRECISELY a question of fun and challenge. At the end of the day, "twitch" adrenaline rushes are only so fun.

Some of us like to use the best cognitive tools we were given, to the best of our abilities. That is, in fact, the definition of fun.

The rest of us, apparently, like being cannon fodder.
posted by macross city flaneur at 11:55 AM on June 24, 2011


It's the same weapon, but it's not in the same hands.

It's a nice fantasy, 0xFCAF, that the difference in spread is due to Master Chief's lack of training. But it's YOUR fantasy.

I have a fantasy too - where, because Master Chief is such a superhuman badass of a soldier, and because he's been fighting the convenant for so long, he actually uses their weapons better than they do.

But let's admit that these are both fantasies, and that you're a fan trying to find SOME justification for your favorite developer's questionable choices.

Weapon spread is weapon spread.
posted by macross city flaneur at 11:58 AM on June 24, 2011 [2 favorites]


I would also note, 0xFCAF, that when you play an Elite in multiplayer, your performance with covenant vs human weapons does not change, further underscoring that this is a game design decision that has nothing to do with the story you invented.
posted by macross city flaneur at 12:13 PM on June 24, 2011 [2 favorites]


Of course it's a game design decision.

In order to up the difficulty, there are only so many things they can adjust. Increase shields, increase health, increase accuracy, increase maneuverability, increase damage dealt, increase total number of enemies. In Reach (in the Firefight section) Bungie put a bunch of these traits out for the player to mess with -- "shootiness", "vision", "hearing", etc... I'm pretty sure these are broad tweaks on some of the behind-the-scenes attributes that drive how their "AI" function.

I think it works pretty well for the most part -- especially given that I can't think of a better way to ramp up the difficulty and keep the game fun.
posted by Pantengliopoli at 1:53 PM on June 24, 2011


I'd like to pop in and clarify that, unless it's a very small game, AI is designed in a joint operation between designers (who aren't typically programmers) and the programmers (who aren't typically as clued in to all the situations players and enemies will find themselves in). How the AI gets implemented in a logic structure is up to the programmer. How the AI needs to react in X situation is up to the designer.

I don't necessarily agree with the article that enemies should be limited the way he described, although it's interesting (ignoring the CPU issues). It might work well in a tight environment, but even more omniscient AI systems have issues where in a large environment the enemies can't find the player, and the player can't find the enemy, so you end up wandering around trying to happen upon each other. Very anticlimactic. It's an instance where enemies cheating is a very good thing.

Still, it's not a question of "realism". It is PRECISELY a question of fun and challenge. At the end of the day, "twitch" adrenaline rushes are only so fun.

Some of us like to use the best cognitive tools we were given, to the best of our abilities. That is, in fact, the definition of fun.

The rest of us, apparently, like being cannon fodder.


That is totally not the definition of fun, just one brand of fun, and it's not nice to casually dismiss people with different tastes. There are whole genres that don't fit your definition.
posted by subject_verb_remainder at 3:33 PM on June 24, 2011


That is totally not the definition of fun, just one brand of fun, and it's not nice to casually dismiss people with different tastes. There are whole genres that don't fit your definition.

Yes - for instance, there are slot machines. They too are designed on the behaviorist notion of using reward patterns to encourage our most lizard-like responses to provide a sort of entertainment.

I am personally as susceptible to these kinds of "fun" as anyone else. I'm not looking down on anyone for being susceptible.

I am looking down on anyone who doesn't have the higher intellectual capacity to realize that these lizard-like responses do not a) define "fun" b) circumscribe the limits of what we should look for in "fun" experiences or c) constitute the majority of what we should look for in our entertainment.

Some kinds of fun are stupid, and stupid addictive, and they are thus easy to exploit (Hi Zynga). We should be wary of them, and no, it's not a matter of taste.
posted by macross city flaneur at 3:58 PM on June 24, 2011


It is a matter of taste. I recently played Vanquish, and though I could run in guns blazing I died quickly if I didn't plan out my tactics and approach. However, right now I'm thinking of downloading Serious Sam HD because I want to shoot massives of enemies and exercise my twitch skills.
Gaming is a form of relaxation, and at its best it approaches meditation. Not every game needs to be Civillization. I loved the moment in Half-Life when I realized the Black Ops teams were using intelligent tactics. I also love the non-existant AI of Space Invaders Extreme.
posted by Lovecraft In Brooklyn at 3:27 AM on June 25, 2011


It is a matter of taste.
Not every game needs to be Civillization.

The point we should be concerned about is that there are NO games that are Civilization - except, well, sequels of Civilization - and there are increasingly many many many more games that look like Farmville.

The part of the game industry that once gave a damn about higher cognitive challenges has withered away into a burnt nub.

That is bad for everyone, and it is bad for the health of the industry. Within certain parameters, yes, there's plenty of room for more and less twitchy games.

But that's like saying that, within certain parameters, there's room for cocaine use in a healthy lifestyle. Yyyyyeah maybe.... but that won't help you get off the street and put your life back together. The game industry is a cracked out, gibbering, burnt-faced psycho right now, and it's only gonna get worse.
posted by macross city flaneur at 9:26 AM on June 25, 2011 [1 favorite]


It's not as dualistic as "games that challenge the limits of your skill" and "slot machines and Farmville". Katamari Damacy, for example, fits neither of these categories, but it would be my personal pick as the most fun game I've played in the last ten years. From what I gather, it would not be your pick, which is cool because... fun really is a matter of taste.

For some people, climbing Mt. Everest is a form of fun, or playing bastketball, or reading comic books, or gardening, or playing Nintendogs. There are many models to use to understand fun - such of skill, achievement, social elements, competition, collecting, exploration and discovery, growing and/or nurturing, conquest and/or defeat. It really does people who play games a complete a disservice to hand wave their experiences as too gullible to their lizard brain, in favor of such a narrow definition.
posted by subject_verb_remainder at 3:26 PM on June 25, 2011


But that's like saying that, within certain parameters, there's room for cocaine use in a healthy lifestyle. Yyyyyeah maybe.... but that won't help you get off the street and put your life back together.

Wait, what?
Besides the insane hyperbole it seems games are getting less twitchy, not more. Look at the tactical discussion over on the Team Fortress 2 thread. I played Gears of War last night and trying to play it like a twitch shooter got me killed. I'm actively looking for games that present LESS of a mental challenge because most things these days are moving in the opposite direction.
posted by Lovecraft In Brooklyn at 5:42 PM on June 25, 2011


« Older Crowd-sourced radiation data being collected in...   |   Can extreme low-calorie diet cure diabetes? Newer »


This thread has been archived and is closed to new comments