IA on AI

Posts Tagged ‘GDC 2008’

AIGameDev Column: Good AI vs. Fun AI

Tuesday, March 11th, 2008

Well, I’m settling into my role as a staff writer at AIGameDev.com. I just posted my 2nd column in the weekly Discussion series over there.

This installment, “Good AI vs. Fun AI“, is spun off of a concept that Soren Johnson presented in his GDC lecture, “Playing to Lose: Civilization and AI“. In my column, I ask the question…

Is it possible for an AI to be both “good” and “fun”?

Take the time to jump on over and read it… and then comment either here or in the excellent AI forums there. (Forum registration may be required to comment… but then if you are an AI programmer, you need to be involved over there anyway!)

2008 AI Programmers’ Dinner – Neil Kirby’s Monologue

Friday, March 7th, 2008

Not really all that tasty as an AI bit, but relevant nonetheless. I just uploaded Neil Kirby’s opening of the 2008 AI Programmers’ Dinner at the GDC. There are a couple of notes from it… he talks about the Eric Dybsand Scholorship Fund, thanks the corporate sponsors of the dinner and a few other things.

Sorry it’s so dark, but this was on the still camera and I didn’t have a light on it. Thankfully, as always, he was wearing his “I really am a rocket scientist” lab coat so we can at least see him as some ghostly apparation.

You can also see still shots of the 2008 dinner as well.

A bit later on in the evening, he called for a toast to the memory of Eric Dybsand. I didn’t know it was coming and I had very little space left for video so I didn’t tape it. I sure wish I had. We all miss you bud.

GDC 2008: Halo 3 – Building a Better Battle

Wednesday, March 5th, 2008

Damian Isla of Bungie has uploaded his slides from his GDC presentation (which I haven’t written up my commentary on yet). He also discusses the history of the “Objectives” system that they used in Halo 3 on this blog post at Game/AI.

I will be breaking down his presentation in a few days (I’m still trying to get caught up).

Other coverage of GDC sessions

Friday, February 29th, 2008

I have kinda entered a vortex of browsing through other people’s GDC coverage – especially on the sessions that I could not attend. Note that I don’t necessarily agree with everything that people have posted here – I’m just including them so people can have a broader picture. Here’s a partial list of (loosely) AI-related stuff that I have found so far:

GDC: Storytelling in Bioshock (Not really AI, but interesting)
GDC: Rules of Engagement
GDC: Rules of Engagement Part 2
GDC: A Q&A With Sid Meier (Not really AI… but it’s Sid!)
GDC: Creating a Character in Uncharted (animation AI)
GDC: Creating believable crowds in Assassin’s Creed (group behavior and many units)
GDC08 Notes – Streaming Open World Pathfinding (Obviously pathfinding)

A thread at Game/AI where Jeff Orkin (F.E.A.R. AI mastermind) asked what we all saw at GDC it made for an interesting AI discussion.

GDC 2008: Ray Kurzweil’s vision of the future

Thursday, February 28th, 2008

On Thursday, I attended Ray Kurzweil‘s keynote entitled “The Next 20 Years of Gaming“. For reference, here’s the GDC description of the session:

The paradigm shift rate is now doubling every decade, so the 21st century will see 20,000 years of progress at today’s rate. Computation, communication, biological technologies (for example, DNA sequencing), brain scanning, knowledge of the human brain, and human knowledge in general are all accelerating at an even faster pace, generally doubting price-performance, capacity, and bandwidth every year. By 2020, full-immersion virtual reality will be a vast playground of compelling environments and experiences. Initially VR will have benefits in terms of enabling communications with others in engaging ways over long distances and featuring a great variety of environments from which to choose. By the late 2020s virtual environments will be indistinguishable from real reality and will involve all of the senses, as well as neurological correlation of emotions. As we enter the 2030s there won’t be a clear distinction between human and machine, between real and virtual reality, or between work and play. Intelligent nanorobots will be deeply integrated in the environment, our bodies and our brains, providing full-immersion virtual reality incorporating all of the senses, experiences “beaming,” and enhanced human intelligence.

The session, while inspiring and informational, seemed to be one that he has given numerous times before – and managed to insert a few token comments here or there that loosely linked it to the game industry. That was rather distracting at times.

His main theme, as usual, was the expansion of no only the processing power (a la Moore’s Law) but the “processing power” of the human mind and society as a whole. From a mathematical standpoint, I loved his use of logarithmic graphs and even double logarithmic graphs to show what amounts to constant rates of change as straight lines. He applied this to so many different things, e.g. the growth of life and intelligence, the power of supercomputing, the power over cost of computing, etc.

The crux of this issue is that people have a tendency to think linearly rather than exponentially and especially logarithmically. That means that we tend to mis-project future trends. One way that this hurts us in the technology arena is that, given production times that are getting to 3 or 4 years (Duke Nukem Forever is an outlier), we tend to undershoot the capabilities of the systems that are available by the time that we release our products.

The endpoint, of course, is his much publicized “countdown to singularity” wherein our computing power will match our mental capabilities. A couple of key predictions in this arena (which are kinda creepy in a way):

2010: Computers disappear

  • Images written directly to our retinas
  • Ubiquitous high bandwidth connection to the Internet at all times
  • Electronics so tiny it’s embedded in the environment, our clothing, our eyeglasses
  • Full immersion visual-auditory virtual reality
  • Augmented real reality
  • Interaction with virtual personalities as a primary interface

(A great quote: “Real reality will continue to be irksome for a few years.”)

  • 2029: An intimate merger
    $1,000 of computation = 1,000 times the human brain
  • Reverse engineering of the human brain completed
  • Computers pass the Turing test
  • Nonbiological intelligence combines
  • the subtlety and pattern recognition strength of human intelligence, with
    the speed, memory, and knowledge sharing of machine intelligence
  • Nonbiological will continue to grow exponentially whereas biological intelligence is effectively fixed

One entire section of his talk was dedicated to the advances and future of nanobiology. While this seemed to be a lull in the relevancy to the game industry, there was a connection there. He actually said that, due to nanotechnology and nanobiology, we would eventually be able to reprogram our bodies the way we reprogram our games. After spending Monday and Tuesday at the Serious Games Summit where the theme was taking game and game programming technology beyond the entertainment world, I couldn’t help but think that some of the techniques, especially those related to AI, would map over into some of the genetic and biological applications that he was talking about. Interestingly, this is somewhat related to things I have been reading in the book “A Beautiful Math: John Nash, Game Theory, and the Modern Quest for a Code of Nature“.

One of the main interests for me and the people that I attended with was that he was often speaking largely to the AI programmers. One of his comments was that “AI is the next frontier in passing the “uncanny valley” such as it is in games. While hardly a news flash to the game world, I hope that made our stock as AI designers and programmers go up somewhat.

All in all, it was an inspiring speech if not directly relevant to today’s game world… but there I go thinking linearly again. I can tell you, however, that his keynote kept coming up in roundtables, conversations, and at the AI Programmers dinner that week – every time a technique of handling prohibitively large numbers of calculations came up, his name was invoked as giving us hope that we could soon be able to handle it.

For more on Kurzweil and all of the above, check out the web site KurzeilAI.net. You can also get his slides from the keynote (9 MB .ppt file) which is where the above shots and images come from.

GDC 2008: Soren Johnson’s lecture on the Civ 4 AI

Monday, February 25th, 2008

One of the more intruiging lectures of the 2008 GDC was given by Soren Johnson (MobyGames info) ex- of Firaxis and now with Maxis on the “Spore” team. He was talking about how Civ 4 fit in the spectrum of game AI between two extremes… “Good AI” and “Fun AI”. Here’s some selections from my notes on the lecture. (Forgive the seeming lack of lucidity – I was typing like a madman!)

Also, this is a direct link to Soren’s Slides (.zip) on his blog – which is where the images in this post came from (click to enlarge).

“Good” AI (Play to win)
Beat player at their own game
Essentially a human substitute

“Fun” AI (Play to lose)
Algorithms are the content
Focus on the Player’s Experience

For example, Aggro in an MMO is fun AI.

With tanks, healers, DPS (damage per second) there is a formula for handling it… Trivial AI problem to “solve” by the players.
Aggro determines who AI attacks, let enemy attack the tank, you heal the tank… DPS the mob…
Everyone knows how it works… very predictable. Almost become commoditized with agro tools. Blizzard isn’t trying to be clever – they like that it is simple.

The question with AI design is, where are you trying to fit? Across the spectrum.

  • Chess is “good”
  • Starcraft is more towards “good” (no real diplomacy – assumption is that they want to kill you.)
  • Civ IV split the gap. Deep diplomacy but very symmetrical game design.
  • Heroes of Might and Magic is more towards “fun”. Not as focused on the excellence.
  • Desktop tower defense if pure “fun” AI.

Rule sets?
Good side tends towards fixed rule sets. (e.g. Chess)
Fun side tends towards evolving rule sets.

What are the best environments?
Good AI tends towards Multi-player
Fun AI tends towards Single-player

Tactics available to AI?
Good AI will do everything available.
Fun AI will do limited tactics.

Measuring performance?
Good AI has objective measurements
Fun is subjective – e.g. difficulty over performance

Turing test?
Good AI passes
Fun AI… this question is irrelevant.

The question is: “Play to win or Play to lose?”

With Civ IV, the AI does have limited options. There are a lot of options that they do not put on the table for the AI. Esp. with diplomacy. E.g. fighting a war… as a player, you can ask them for stuff if you promsie to quit war, then attack them over again. AI doesn’t do that.

Civ has:

  • Both fixed and evolving design
  • Symmetrical
  • Single Player
  • Limited Options
  • Objective Testing
  • Fails Turing test but it isn’t irrelevant.

Every player is different… some want things like challenge, sandbox, narrative.

For narrative, you want to aim for personality, for the AIs to maintain memory about you. It’s OK for them to fall for traps. They built that into the leaders in Civ 4.

With regard to the challenge, you “want player to win or at least understand WHY they lost.

Need for difficulty levels:
Lets sandbox players off easy
Gives Challenge players a goal
Increases available tactics.

Where does cheating fit?
Completely Good AI does not.
Completely Fun AI n/a There is no concept of cheating (e.g. desktop tower defense)
In the middle… yes?

The Noble level in Civ 4 is the “even level” with regard to production modifiers, etc.

But Noble has other cheats… e.g.

  • Animal/Barbarian combat bonuses
  • No Unit support
  • Better Unit upgrades
  • No Inflation
  • No War Weariness

The AI needs more help in these areas.

For example, AI does not leave cities empty like a human would… so unit support costs. Human army and AI army will never be the same size because they have to keep units in their cities… therefore cut the support costs for the AI since they need to have a larger army.

Cheats should NOT be linear… certain you want to help more or less as you progress your diff. levels.

Cheats should never feel unfair! Examples from past Civs that players hated…

Civ 1, 2
Free wonders
Gang up on human (In Civ 1: If year > 1900 and human in lead, declare war on human)

Civ 3, 4
Human-blind diplomacy (Never checks “is human?”)
Information cheats (they DO have info cheats – most of them come down to limited dev. Resources… e.g. fog of war is very expensive)

Information cheats can really backfire on you. E.g. Amphibious Assault Judo using empty port cities in Civ 3. (solved by determining random time for updating the assault target, ignore temporary data such as nearby units.)

Cheating is relative:
The Tech Trading Problem…

  • AI must trade techs
  • AI must trade fairly
  • Human can sell techs cheaply

Only two of these can be true… So… should AI sell techs cheaply? Solution? Can AI pursue altruism?

When the AIs were trading often, it made for very even technology levels between all players rather than some groups ahead and others lagging. Everyone had everything.

Solution in Civ IV

AI can undersell by 33% but…
Tries to make up difference in gold
Only trades on random turn intervals
Uses same “Refuses Trade With” logic as with human.

Arbitrary rules e.g. “I will never trade Iron Working with you.”

What is the point of cheating?
Are we trying to…

  • Write the “best” AI?
  • Beat the human?
  • Be fair?

Designing for the AI?
Can AI handle the options in the gameplay?
OTOH, make sure not designing just for AI. Legitimate reason for design decision. (e.g. closed borders, enforceable peace treaties)

Traditional testing fails
Automated testing helps greatly
Need hard-core fans to analyze
1.5 year closed beta, peaked at 100 users, bi-weekly patches.

They used soft-coded AI:
No AI scripts
No enums (No “Temple”)
Less brittle code
Less predictable AI is not always a good thing.

Probabilistic Reasoning – Weights to factors, values to situation

Data-driven Mods – AI was stand-alone so that it was compiled into dll. CvGameCoreDLL.dll was 100% independent of engine.

GDC 2008 – AI Stuff

Monday, February 25th, 2008

I’m in the process of uploading all my GDC-related things to this page. You can actually listen to my audio of the 3 AI roundtables and read my (barely comprehensible) notes that I furiously took during each. Also, it has links to the pictures that I took during the roundtables and the AI Programmers Dinner on Friday night.

On that page, I will also be posting other AI-related tidbits such as my notes from lectures such as those by Soren Johnson’s (Civ 4), Damian Isla (Halo 3), and Peter Molyneux (Fable 2). Give me a few days to get it all straightened out, though.

Also, I sat down with John Abercrombie of 2k-Boston on Sunday morning and spoke with him about the AI that he did for Bioshock. That should be posted on Wednesday. Look for it over on Post-Play’em.

(Remember to tap the RSS feed to keep up with these additions and all other AI-related things.)

One final note about GDC… it’s always an exhilarating week… but it sure does make my head hurt!