Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
How to Incorporate Stupidity Into Your AI Code (gamasutra.com)
109 points by arem on March 18, 2009 | hide | past | favorite | 18 comments


Very clever, and it's probably true that "intelligent mistakes" are the keys to believable and (more importantly) to enjoyable gamer experience, especially in the domain of games where everything is known and completely predictable (such as in his example with billiards).

Fascinating stuff indeed.


Artificial stupidity? Isn't there already enough of the real McCoy?


It is worthwhile taking this joke as serious, because the perspective on why we need AI at all is enlightening.

Take WoW, for example. Right now there are several million players logged in, busy beating the tar out of several million bad guys who are programmed to lose. They are playing, and paying good money, to have the illusion of challenge while winning the overwhelming majority of all encounters. (Why can't PVP replace this for most players? Because PVP implies someone is losing and the overwhelming majority of players want to decisively win the overwhelming majority of encounters. There is no way to accomplish those things without instructing a non-player to throw their matches.)

Let's say we replaced the AI with hired actors who played the monsters, and played poorly. Heck, we'll say the actors can even multitask 4 monsters at a time, all played to a similar level of poorly. At 60 monster-hours (15 man hours) per month per player, Blizzard would be in the red on accounts just from the actors salary unless their fully-loaded cost was under $1 a man-hour. Even if they got away with 40 cent wages for urban China and had minimal overhead this would slash their margins to bits.

So that's why we have AI: to do jobs humans won't do willingly (losing) at a price which is cheaper than the cheapest possible human implementation.


We need calculators because it's cheaper than keeping a human with you at all times to calculate sums for you. That sounds pretty silly, right?


To correct your analogy: imagine a world in which humans needed to be constantly told their math skills were awesome (I don't know, maybe as confidence building for middle-school girls). In this world, we might have calculators which were designed to provide the wrong answer, so that people would type in 36 x 50, get -7 as the answer, and say "Hah, I'm much better at this than you are."

In this world, which parallels the MMORPG use case, yes, its cheaper to keep a calculator to be the whipping boy than to keep around a human who has been instructed to perform math poorly.


I was trying to demonstrate that while the conclusion (use AI because they lose cheaper than it costs to get humans to lose) is not false, it is far too broad to be of any use. I can draw that same conclusion for any tool that humans have used to automate a task.

The idea that the tool's purpose is to lose is tangential.

And I dispute that. AFAIK, the AI in WoW is not designed to lose. A monster will kill you (win) if it gets the chance. The monster is trying to win (the AI is designed to win), it just isn't very good (the game is designed so you win the majority of individual battles).

And I don't think you can make the jump from "the game is designed so that you win the majority of individual battles" to "the game is not challenging". Doing so infers that "only games designed so that you do not win the majority of individual battles are challenging".

And since the basis for the PVP argument is undermined, it is a waste of time to consider it (regardless of whether it may be true or not).

The reasoning followed from flawed beginnings to a uselessly broad conclusion.

PS. I did intend to post something more thorough the first time, but I ran out of time and pressure posted only a snippet of my incomplete ramblings.


The point isn't to make it lose (that would be easy), the point is to barely lose. Human psychology thrives on tasks that are challenging but conquerable. Losing sucks, trivial challenges suck, so game AI has to be somewhere in between.


Yes. But it's also true.


Interesting ideas. I wonder if the perfect AI would study its opponent's moves and learn to move just as they would, then it would be like the human is playing against themselves.


It would be really hard ... because it involves studying your intentions rather than your moves.

In chess this is doable (the intent is clearer after the fact, and the possible moves are more limited), but think about CStrike for example ... how is your algorithm going to realize that you're protecting a gate because you don't want your opponents to sneak behind your teammates? Even simple questions become hard ... say you're attacking X1 just as a distraction, while your teammates are attacking X2 ... a team uses slight variations of some tactic, it's mostly never the same (different men in charge, different hotspots, switching between X1 and X2, etc ...). Gathering useful statistics about it requires lots of played games and lots of resources, and I don't think it's doable on your average gamer's hardware.

I know, stupid example :) but you get the point.


This is the reason it's difficult to come up with fun AI for head-to-head fighting games: once you get past the thin veneer of mastering the moves, they're entirely about mindgames. A FSM-based CPU opponent does not have a thought process a human player can predict and exploit, nor the ability to avoid repeated mistakes.

I believe this applies to many other types of games as well, but games with many split-second paper-scissors-rock decisions suffer the most. A computer can be programmed to scout out and react to a carrier buildup in Starcraft, but cannot easily be programmed to outguess a jab/throw mixup in Street Fighter.


Don't game theories mixed strategies solve this problem?

After all nobody can beat random selectian at paper-scissors-rock.


My vague recollection is that RPS is the subject of AI competitions. You can't "beat" random selection, but you can't lose to it either. So if you want to win a tournament, you have to try to guess what your opponents will do, assuming that they too want to win, and are guessing your actions.


Yes. But most programs fall back on pure randomness in those contests when they have a losing streak.


Great article from Mick!

This also reminds how the folks from New World Computing (Heroes Of Might of Magic) were forced to dumb down the AI, so it's more interresting, challenging...


Your off-world investments in artificial dumbness have paid $150 in dividends.


Incorporating intelligence is the hard part.


Unless you're using 'intelligence' to mean something other than what the article means by it, incorporating intelligence is not the hard part.




Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: