




|
By
Neil Kirby
Gamasutra
CGDC Roundtable Report, April
1997
|
|

CGDC '97
Roundtable Reports

Artificial
Intelligence in Computer Games
Report #2
In
each session I asked how much CPU the AI in games were allotted. I also
asked how many full time staff were writing AI code.
Sunday,
27 April, 1987
This session was characterized by having far more newbies than experienced
AI people.
Percent CPU: CPU numbers listed were 2% and 10-20%.
Autonomous Agents: The thrust here was opponents that felt "analog"
and not "digital." Notably that having a smooth range of behaviors felt
more realistic.
"Real AI": Artificial opponents that could play by themselves.
Scripts & Synthetic AI: The discussion was about granularity
of controls. And about how fragile a script could be.
Thinking and Emoting computers: Learning so as to improve decisions
by modifying the knowledge base. This is not an easy thing and no one
offered examples of its use in commercial games.
Natural Language Processing: Both input and output NLP were discussed.
Nearly all of the group had extremely little experience with this topic.
Those that had quickly disabused the rest any notion that this is an
easy thing to do.
AI Planning: no notes
Cheating: This annual topic generated good discussion. A new
twist on it was that sometimes the entertainment experience is better
if the AI "cheats" by making realistic looking artificial mistakes.
This is especially true in sports games where the program knows a priori
what the player plans and intends. A good player should be able to fake
out the computer AI, even if the computer AI does have faster "reflexes"
than the player. The current take on cheating in general is that the
state of the art is good enough that it usually can be avoided, but
it is held in reserve for careful use. One such careful use is stopping
bug-exploitation. When a user finds an offense that the AI has only
a 1:20 chance of defending, the user may use this offense over and over.
To stop the player from racking up massive scores, the AI cheats and
pulls the correct defense whenever it sees exploitive behavior. This
is realistic behavior, thus providing a better entertainment experience,
but the AI had to cheat to do it.
Genetic Algorithms and Genetic Programming: Some work is being
done here. The areas of use were planning decisions and creating music
solos. Music solos in a jazz context proved quite amenable to GA/GP.
Items below
were not covered
Long Term
Goal AI
Reactionary Conversation
Abstracting AI and User Interfaces to AI tools
Statistical Wargames
Monday, 28 April, 1997
Percent CPU: CPU numbers listed included 20% for a console sports
game. Console games benefit from having good graphics throughput. The
other figure mentioned was 1/n. This was a multiplayer (and multi-AI)
game. Each player or AI got an equal share of CPU.
Natural Language Processing: We were strong on people with NLP
experience. Speech processing is among my own areas of expertise so I
was among the speakers. The consensus was "model it the same as anything
else." NLP requires substantial semantic as well as syntactic processing
for both input and output. We also talked about Text-To-Speech. I mentioned
the TTS "slit-your-wrist-test." The measurement is to time how long users
can stand to hear TTS before they slit their wrists to put themselves
out of their misery. (Larger numbers are better). I moved us to the next
topic before discussion was over to allow other topics that might be thought
of as closer to AI to have some time.
Synthetic Characters: The two points that came out of this were
thought trees and semantic processing.
AI for Story Control: Reacting to player input. While everyone
would like a Holy Grail, for this, currently none exists. Chris Crawford's
Erasmatron got mentioned, but the jury is still out.
AI for Cinematics: This area showed great potential for markedly
increasing the entertainment value of games using existing technology.
People with Hollywood experience had useful input that was probably new
to game developers. Notably was the idea of "where's the focus?" Tomb
Raider and others showed that there is some gold to be mined here. The
other notable idea was the use of one-shot triggers and cut scenes. For
example, the first time the player turns a corner, the camera cuts to
a long shot showing the player entering a long corridor from the far end
of that corridor. Or upon climbing a ladder, the view changes to a 360
degree pan around the character showing them and the stunning view from
up here. These cut scenes only happen one time (to avoid boredom), and
only if the game is not about to threaten the player (to keep them from
being unfair).
Real-Time Collision Avoidance: This one boiled down to anticipation
and allowing realistic effects. The AI in a sports game should allow a
skilled player to "fake it out." It should also have collisions when some
entity deviates from predictable behavior.Non-Human AI: This lively discussion
was best described as, "What does the cat want?" Conclusions came down
to, "New goals, same algorithms."
Individual vs. Society: Or group behavior modeling. The first point
was that "invisible means not needed." Schroedinger's cat came up. If
no one sees it, why do it? The enemy crawling along a trench pops up and
fires. If all the user sees is the pop up and fire, why model the crawl?
The instant response was that at any time the box is opened, we have to
know what the cat did. And so if artillery is rained down upon that trench,
the crawl must be modeled. Sports games with multi-angle instant replay
require that everything be modeled at all times because the box is never
closed. The final point was that, "close enough is good enough." If a
group can be accurately modeled, there might not need to be a need to
model all of its aggregate elements.
Items below
were not covered
World Modeling and knowledge representation
Character development
What do game writer's want?
Items below were
generated as we went
Avoiding Artificial Stupidity: This has been the thrust of a lot
of effort. Much work goes into setting a lower limit on how stupid the
AI will be in any given place. Players will exploit holes in the AI far
more rapidly than they will resort to superior ability. The consensus
was that it is never a mistake to plug holes while it may be difficult
to make the AI play better than it does in areas that it does well.
Tuesday, 29 April,
1997
Percent CPU: CPU numbers listed blew earlier amounts off the chart.
There was a strong showing of 25-30%. These numbers could be inflated
and they sounded like shots in the dark. The 30% number comes from a turn
based game. The real curve breaker was a game server with 45%. Having
no user interface code, the server has far more cycles free for AI. The
number of dedicated AI staff numbers were 0.5, 1.5, and 2.5 staff normalized
over the life of the project.
Strategy Games: This was the context for most of the discussion
in other topics.
Learning & Adapting AI: This takes tracking the success or
failure of tactics (in other words, tons of data to go through). It also
takes recognizing success or failure when it happens. People are trying
Neural Nets to help with the recognition task. War being chaotic, these
nets are trying to deal with a chaotic situation full of noise and it's
no wonder that it is a hard problem. Even if all of that were solved,
closing the feedback loop is inherently dangerous. An AI that learns the
wrong things will act as many a nation has that takes the wrong lesson
from history. A perfectly decent-but-not-brilliant rules based system
can easily be made less effective this way.
Laboratory and Industry Stuff: The only useful thing mentioned
was a hybrid system. It used three parts. The first was programmed heuristics
similar to classical game AI. Second was a rules based expert system.
And third was a neural net. The systems were polled, in order. If the
heuristic felt it had a good answer, it was always preferred. If it came
up unsure, the expert system was consulted. If both other systems were
stymied, the neural net usually gave a decent response to an ambiguous
situation.
Player aid AI: It was the case for a good AI to relieve the tedium
of micro-management. This was to provide ease of use in the game. It needs
to have good player control so that the player is confident that things
will go well. Also mentioned were the idea of being able to provide stim->response
scripts and settings.
Multi-agent Planning and Communication: Blackboarding came up as
a way of dealing with this. The fragility of planning amidst chaos and
the ability to react were mentioned as well. The ability to fix broken
plans was a clear need.
Mapping Personality onto Good AI: Given a good AI, how do you give
it personality? The user is looking for a social experience. One way is
to modify a rules based system. Everything depends on game design, but
the idea is to avoid a total rebuild.
Group vs. Individual: Multilevel AI came up as a way to deal with
the problems here. Grouping units was the minimalistic way of dealing
with the problem.
Items below
were not covered
Realistic
Human Replacement
Creatures and Emergent Behavior
Items below were
generated as we went
Avoiding Artificial
Stupidity: The goal was to place a minimum floor that has no holes.
Serial Execution of Parallel Unit Actions: There is a problem when
planning one unit in isolation when many units need to be planned as a
group. There is difficulty in avoiding N squared explosion of complexity.
SHIP IT NOW! SYNDROME: Is AI ever the critical path? When was the
last time playtest and AI refinement stopped shipment of an otherwise
finished game? Will we ever get time to do it right?
Good Abstractions Are Hard To Find: But everybody is looking hard
for them.
|