Artificial Intelligence for Games. Santa Clara University, 2012

Similar documents
Artificial Intelligence

INTRODUCTION TO GAME AI

Lecture 1. CMPS 146, Fall Josh McCoy

CS 354R: Computer Game Technology

CS 387/680: GAME AI DECISION MAKING. 4/19/2016 Instructor: Santiago Ontañón

2IOE0 Interactive Intelligent Systems

Chapter 1:Object Interaction with Blueprints. Creating a project and the first level

Strategic and Tactical Reasoning with Waypoints Lars Lidén Valve Software

Design task: Pacman. Software engineering Szoftvertechnológia. Dr. Balázs Simon BME, IIT

All theory, no practice

CS 480: GAME AI TACTIC AND STRATEGY. 5/15/2012 Santiago Ontañón

IMGD 1001: Fun and Games

Today s Topics. Video Game AI: Lecture 2 History of Game AI. Pong (1972) A selective history of video game AI

CS 387/680: GAME AI AI FOR FIRST-PERSON SHOOTERS

Principles of Computer Game Design and Implementation. Lecture 29

Who Am I? Lecturer in Computer Science Programme Leader for the BSc in Computer Games Programming

Individual Test Item Specifications

Game Artificial Intelligence ( CS 4731/7632 )

"!" - Game Modding and Development Kit (A Work Nearly Done) '08-'10. Asset Browser

A Study of Optimal Spatial Partition Size and Field of View in Massively Multiplayer Online Game Server

Creating Computer Games

CS 680: GAME AI INTRODUCTION TO GAME AI. 1/9/2012 Santiago Ontañón

Adjustable Group Behavior of Agents in Action-based Games

Program a Game Engine from Scratch. Chapter 1 - Introduction

Individual Test Item Specifications

Z-Town Design Document

Experiments with Learning for NPCs in 2D shooter

Artificial Intelligence. Cameron Jett, William Kentris, Arthur Mo, Juan Roman

Game Architecture. 4/8/16: Multiprocessor Game Loops

Artificial Intelligence (AI) Artificial Intelligence Part I. Intelligence (wikipedia) AI (wikipedia) ! What is intelligence?

BMOSLFGEMW: A Spectrum of Game Engine Architectures

Console Games Are Just Like Mobile Games* (* well, not really. But they are more alike than you

CS Game Programming, Fall 2014

Tutorial: Creating maze games

FPS Assignment Call of Duty 4

CS 480: GAME AI DECISION MAKING AND SCRIPTING

AI in Computer Games. AI in Computer Games. Goals. Game A(I?) History Game categories


Inaction breeds doubt and fear. Action breeds confidence and courage. If you want to conquer fear, do not sit home and think about it.

Who am I? AI in Computer Games. Goals. AI in Computer Games. History Game A(I?)

Project 2: Searching and Learning in Pac-Man

Pangolin: A Look at the Conceptual Architecture of SuperTuxKart. Caleb Aikens Russell Dawes Mohammed Gasmallah Leonard Ha Vincent Hung Joseph Landy

IMGD 1001: Fun and Games

Embedding Artificial Intelligence into Our Lives

the gamedesigninitiative at cornell university Lecture 4 Game Components

Propietary Engine VS Commercial engine. by Zalo

Introduction to Game Design. Truong Tuan Anh CSE-HCMUT

Game Designers. Understanding Design Computing and Cognition (DECO1006)

Artificial Intelligence Paper Presentation

USING A FUZZY LOGIC CONTROL SYSTEM FOR AN XPILOT COMBAT AGENT ANDREW HUBLEY AND GARY PARKER

CS Computer Game Design. Introduction. Ken Forbus Spring 2002

Like Mobile Games* Currently a Distinguished i Engineer at Zynga, and CTO of FarmVille 2: Country Escape (for ios/android/kindle)

Enhancing Shipboard Maintenance with Augmented Reality

Raven: An Overview 12/2/14. Raven Game. New Techniques in Raven. Familiar Techniques in Raven

the gamedesigninitiative at cornell university Lecture 23 Strategic AI

Game Maker Tutorial Creating Maze Games Written by Mark Overmars

SGD Simulation & Game Development Course Information

Building a Better Battle The Halo 3 AI Objectives System

3D Top Down Shooter By Jonay Rosales González AKA Don Barks Gheist

Game demo First project with UE Tom Guillermin

CS 480: GAME AI INTRODUCTION TO GAME AI. 4/3/2012 Santiago Ontañón

Less is More: Designing Awesome AI. Dr. Kimberly Voll Game designer, software engineer & cognitive scientist

Volume 4, Number 2 Government and Defense September 2011

INTELLIGENT GUIDANCE IN A VIRTUAL UNIVERSITY

Add in a new ghost sprite, and a suitable stage backdrop.

Multi-Robot Coordination. Chapter 11

Research Article Games and Agents: Designing Intelligent Gameplay

CS221 Project: Final Report Raiden AI Agent

Level 3 Extended Diploma Unit 22 Developing Computer Games

John E. Laird. Abstract

CS 387/680: GAME AI TACTIC AND STRATEGY

Welcome to the Early Beta and Thank You for Your Continued Support!

Level 3 Extended Diploma Unit 22 Developing Computer Games

IMGD 1001: Programming Practices; Artificial Intelligence

26 Developing. computer games. Learning outcomes. Credit value: 10

1.4. Artificial Stupidity: The Art of Intentional Mistakes. Lars Lidén.

DEVELOP-FPS: a First Person Shooter Development Tool for Rule-based Scripts

The Implementation of Artificial Intelligence and Machine Learning in a Computerized Chess Program

Gillian Smith.

Global Artificial Intelligence (AI) Semiconductor Market: Size, Trends & Forecasts ( ) August 2018

IMGD 1001: Programming Practices; Artificial Intelligence

Level 3 Extended Diploma Unit 22 Developing Computer Games

The Double Helix: AI for Simulation & Gaming

An Overview of the Mimesis Architecture: Integrating Intelligent Narrative Control into an Existing Gaming Environment

Stress Testing the OpenSimulator Virtual World Server

Design Document for: Name of Game. One Liner, i.e. The Ultimate Racing Game. Something funny here! All work Copyright 1999 by Your Company Name

Automatically Adjusting Player Models for Given Stories in Role- Playing Games

Creating an Agent of Doom: A Visual Reinforcement Learning Approach

G54GAM Coursework 2 & 3

Lecture 1: Introduction and Preliminaries

A FRAMEWORK FOR GAME TUNING

The purpose of this document is to help users create their own TimeSplitters Future Perfect maps. It is designed as a brief overview for beginners.

The Level is designed to be reminiscent of an old roman coliseum. It has an oval shape that

LEARNABLE BUDDY: LEARNABLE SUPPORTIVE AI IN COMMERCIAL MMORPG

WHAT IS MINECRAFT? source:

Mission and Campaign Generator

RoboCup. Presented by Shane Murphy April 24, 2003

Project Documentation for Zombie Trail

SPACEYARD SCRAPPERS 2-D GAME DESIGN DOCUMENT

Globulation 2. Free software RTS game with a new take on micro-management

Transcription:

Artificial Intelligence for Games Santa Clara University, 2012

Introduction Class 1

Artificial Intelligence for Games What is different Gaming stresses computing resources Graphics Engine Physics Engine Updates at fixed frame rates Need to keep AI simple or use a complicated time allocation scheme AI needs to look good, but not be good Human beings are likely to attribute intelligent behavior to inanimate objects whose functioning they do not understand

Attribution of Intelligence Simple things can look good Pac-Man 1979 Uses a simple state machine for the behavior of ghosts Each of the four ghosts moves in a straight line At a junction, they choose a route With a ghost-dependent likelihood: Go in the direction of the player Based on coordinates, no path finding Take a random route Users attribute intelligence to the ghosts

Attribution of Intelligence The four of them are programmed to set a trap, with Blinky leading the player into an ambush where the other three lie in wait. To give the game some tension, some clever AI was programmed into the game. The ghosts would group up, attack the player, then disperse. Each ghost has its own AI.

Attribution of Intelligence Complex things can look bad Herdy Gerdy 2002 for PS2 "Herdy Gerdy aims high and delivers little, easily placing it on the list of the PS2's worst games. Herdy Gerdy had herding as its concept Movement AI has problems Characters get caught in scenary Collision detection leads animals into areas where they get stuck

Attribution of Intelligence Complex things can look bad Black and White (2001) Successful game where players have to teach pets Possible to teach bad habits that cannot be unlearned Pets are incapable of performing simple tasks

Attribution of Intelligence Simple things can look good Shooter game: Enemy avatars home in on player Randomly make a side step Tester feed-back Appear to be anticipating shoots and save themselves

Attribution of Intelligence Perception Window Most interaction with avatars is for very short time Simple AI can be better Complex AI can be interpreted as stupid Example: Modeling a guard that has to be taken out Guard hears noise, turns away and goes to a corner Appears stupid Guard wants to turn on light Seems a good idea Guard will be shot dead before the player can see that his behavior is reasonably intelligent

Attribution of Intelligence Perception Window Changes in behavior are more obvious to players than behavior itself WoW: Monsters do not change behavior when players start killing them

Restrictions Speed and Memory

Restrictions Speed Limited by processor SIMD architecture MMX by Intel 1996 SSE by Intel (8 128b registers) with SSE extension by AMD (additional 8 128b registers) matched by SSE2 by Intel Uses parallel processing of data stored in large registers Multi-core architectures allow threading Problems of synchronization between cores Graphical Processing Units offload to graphics card

Restrictions Speed Need to manage carefully processing budget between various components during an update cycle Not all AI calculations need to be done in a single cycle

Restrictions Speed Has influence on programming style Virtual functions / polymorphism Indirection

Restrictions Memory Fetching from memory can take more time than recalculating Memory hierarchy Multi-level cache OO needs additional information with interacts with efficient cache OO needs additional information with interacts with efficient cache use Data coherency

Restrictions PC Inconsistent architectures Programming needs to detect feature support and speed and adjust Programming helped by API (e.g. DirectX) Introduction of scalable AI

Restrictions Consoles Seemingly simpler Much development for future (not yet completely defined) versions of the console Technical Requirement Checklist Console manufacturer places minimum standards Fixes frame rates, Allows AI budgets in millisecond precision Tend to over-emphasize graphics Difficult to translate AI to main processing unit

AI Engine

AI Engine Game engines Reusable platform for game types AI engine Example: Lucasarts SCUMM Script Creation Utility for Maniac Mansion 1987 abandoned in 1998 for GrimE

AI Engine World In nterface Execution Management Group AI Strategy Character AI Decision Making Movement Content Creation Scripting Animation Physics

Toolchains Gaming companies use tool chains for easy content creation Steering behavior Is easily parameterized and does not change between characters Use parameterization of characters instead of regenerating code Rule based systems Complicated systems Interface can use a programming like structure to define rules, input, and behavior