Live data from Hacker News

How to Incorporate Stupidity Into Your AI Code

gamasutra.com

11–19 of 19 posts

Re: How to Incorporate Stupidity Into Your AI Code

#11
post #10
post #9

Earlier quoted context omitted.

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…

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.

Re: How to Incorporate Stupidity Into Your AI Code

#12
post #10
post #9

Earlier quoted context omitted.

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…

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?

Yes. But it's also true.

Re: How to Incorporate Stupidity Into Your AI Code

#13
post #11
post #10

Earlier quoted context omitted.

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…

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.

Re: How to Incorporate Stupidity Into Your AI Code

#14
post #5

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 ... s…

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.

Re: How to Incorporate Stupidity Into Your AI Code

#15
post #13
post #11

Earlier quoted context omitted.

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…

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) i…

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.

Re: How to Incorporate Stupidity Into Your AI Code

#16
post #5

Earlier quoted context omitted.

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 ... s…

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 pap…

Don't game theories mixed strategies solve this problem?

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

Re: How to Incorporate Stupidity Into Your AI Code

#18
post #16

Earlier quoted context omitted.

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 pap…

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.

Re: How to Incorporate Stupidity Into Your AI Code

#19
post #18
post #16

Earlier quoted context omitted.

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.
Post reply on HN