AI : A Design Perspective -Put a red pyramid on a green block. >OK -Pick up a blue block >OK SHRDLU - Winograd -Men are all alike. >IN WHAT WAY? -They're always bugging us about something or other. >CAN YOU THINK OF A SPECIFIC EXAMPLE? -Well, my boyfriend made me come here. >YOUR BOYFRIEND MADE YOU COME HERE -He says I'm depressed much of the time. >I AM SORRY TO HEAR YOU ARE DEPRESSED -It's true. I am unhappy >DO YOU THINK COMING HERE WILL HELP YOU NOT TO BE UNHAPPY Eliza - Weizenbaum SHRDLU -Men are all alike. >IN WHAT WAY? -They're always bugging us about something or other. >CAN YOU THINK OF A SPECIFIC EXAMPLE? -Well, my boyfriend made me come here. >YOUR BOYFRIEND MADE YOU COME HERE -He says I'm depressed much of the time. >I AM SORRY TO HEAR YOU ARE DEPRESSED -It's true. I am unhappy >DO YOU THINK COMING HERE WILL HELP YOU NOT TO BE UNHAPPY Eliza Observation #1 Maximize the ratio of internal complexity to perceived intelligence. 5 1 Perceived Complexity Actual Complexity 5 -Men are all alike. >IN WHAT WAY? -They're always bugging us about something or other. >CAN YOU THINK OF A SPECIFIC EXAMPLE? 1 -Well, my boyfriend made me come here. >YOUR BOYFRIEND MADE YOU COME HERE -He says I'm depressed much of the time. >I AM SORRY TO HEAR YOU ARE DEPRESSED -It's true. I am unhappy >DO YOU THINK COMING HERE WILL HELP YOU NOT TO BE UNHAPPY SHRDLU Eliza Crime = Pop. Density^2 - Land Value - Police Effect Land Value = Distance[Zonetype] + Terrain + Transport ratio ? Ramping the model Es/N0 = Eb/N0 + 10log10(2/3) = Eb/N0 - 1.76 dB Es/N0 = Eb/N0 + 10log10(1/2) = Eb/N0 - 3.01 Psychology Technology Do Do Ask Browse Browse Do Do Ask Ask Fast Slow ? Browse Do Point Point Point Point Next Last Ask Point Next Last illusion AI model Observation #2 The player will build an internal model of your system. If you don’t help them build it, they’ll probably build the wrong one. Information flow Observation #3 The flow of information about a system has a huge impact on the players perception of it’s intelligence. Chatterbot Technology Conversational action figures • On-the-fly speech • Learn everything about each other • Form relationships • Likes, Hates, Health, Happiness, Money… • Unique personality and appearance 15 ROM Personality Phrases Speaker RAM Speech Buffer Code Stack CPU 30Mhz NVRAM Relationships IR Transmit Receive Buttons Player interface Text-to-Speech overview Select Phrase CPU Phrase Database (~500K ROM) Assemble Wavefile Di-Phone Table (~500K ROM) Apply pitch, volume and rate RAM Speech Buffer (32-64K) Output Speaker “Hi, My name is SuperBear. What’s your name?” Text-to-Speech Infrared ID42 == “SuperBear” Query (name) “Good to meet you SuperBear. My name is Redgirl.” ReplyGreet (“SuperBear”) ReplyQuery (MyName) BackChannel Apperence = “Red Jacket, Fire Extinguisher, Brown Hair, Blue Shoes” Relationship Table ID - 42 Name – “SuperBear” Visible – Yes Last Interaction – 47 ticks Apperence – “Eyepatch, Yellow stripes” Relationship - +3 Likes – Dislikes – Health – Money – Possesions – - Spodes Greet Joke Query Story Compliment Insult Declaration 0 +5 +15 -5 +7 -20 +12 Mood Happiness +45 Health - +20 Money - $400 Personality Playful +7 Curious +3 Assertive -4 Relationship Table ID - 42 Name – “SuperBear” Visible – Yes Last Interaction – 47 ticks Conversation Buffer “Hi my name is SuperBear” What’s your name?” “Good to meet you SuperBear” Spodes Greet Joke Query Story Compliment Insult Declaration 0 +5 +15 -5 +7 -20 +12 Mood Happiness +45 Health - +20 Money - $400 Personality Playful +7 Curious +3 Assertive -4 Relationship Table ID - 42 Name – “SuperBear” Visible – Yes Last Interaction – 47 ticks Conversation Buffer “Hi my name is SuperBear” What’s your name?” “Good to meet you SuperBear” “Do you like tofu?” Joke Query +9 +15 ChatterBots random behavior Observation #4 From the players point of view there is a fine line between complex behavior and random behavior. Visibility of causal chains usually makes the difference. State Machines Environmental Situation ? Fight Flee Eat Forage Nest Behavioral Response Find Best Action Toilet Mood +26 -Urinate (+40 Bladder) -Clean (+30 Room) -Unclog (+40 Room) Hunger Comfort Hygiene Bladder Energy Fun Social Room +20 -12 -30 -75 +80 +40 +10 -60 Mood +18 Bathtub Mood +20 -Take Bath(+40 Hygiene) (+30 Comfort) -Clean (+20 Room) The Food Chain Fridge Hunger +30 Hungry Fix Dinner Fridge food Fix Dinner Fridge food cook counter stove Fix Dinner Fridge Placement surface food chair counter stove table Fix Dinner Fridge Disposal (neat) food chair counter stove table dishwasher Observation #5 Mimicking human intelligence and maximizing the intelligence of an artificial system are 2 very different tasks. 30 Dude, you SUCK!!!!! w00t!!! Fucking n00bs “I’m sorry Dave, I can’t do that” ratio alien training Observation #6 There are many applications of AI in games that don’t involve Opponents, Avatars or even human-like intelligence. Meta AI Peer AI Sub AI Meta AI Experience Peer AI Agents - Information Flow - Pacing - Simple Player Model - Behavior - Opponents/Avatars - Complex Player Model Sub AI Simulation - Physics - Tactile - Intuitive Player Model Failure Meta AI Game - Designer Peer AI Agents - Intelligence Sub AI World - Simulation Meta Peer Sub SimCity Meta Peer Sub Meta Meta Peer Peer Sub Sub SimCity Meta Peer Sub The Sims Meta Peer Sub Meta AI Peer AI Sub AI Diminishing returns Meta AI Peer AI Sub AI Meta Meta Meta Peer Peer Peer Sub Sub SimCity Meta Peer Sub The Sims Meta Peer Sub Sub Spore Meta Peer Sub Observation #7 Building a system that collects and reflects natural intelligence is far easier than replicating that intelligence. 45 servers servers Content Pollination Server Player Computer Ecosystem Player creature Pollination #2 Server Player Computer Buy Mode ++ Pollination #3 PollenContent Observation #8 Building a robust, internal model of the player can have huge potential value. From the player’s model of the computer…to…the computer’s model of the player Computer Understanding Player Story Adaptive Mapping Comedy Romance Horror Mystery Action Story Parsing Kids/play Classify/Parse Presentation Manager Camera Angles Lighting Music Ambient SFX Parsing Presentation Influence/Assist Parsing Presentation Influence/Assist Replay (Movie) servers Horror Romance Comedy SocialWeb Observation #9 Static data in games represents lost opportunity. We should be attempting to automate the intelligence that created that data when feasible. Player AI Developer AI SporeAnim SporeTexture Stop Now