AI in Computer Games. why, where and how. Olle Gällmo

Similar documents
Research Directions in Computer Game AI. Rafael Cabredo

Game Design From Concepts To Implementation

BSc in Artificial Intelligence and Computer Science ABDAL MOHAMED

Game Artificial Intelligence Literature Survey on Game AI

IMGD The Game Development Process: Fun and Games

Digital games history and genres

Artificial Intelligence (AI)

Introduction Computer stuff Pixels Line Drawing. Video Game World 2D 3D Puzzle Characters Camera Time steps

City University of Hong Kong

GAME:IT. Designing Good Games

Game Genres. Video Game Technologies 10531: MSc in Computer Science and Engineering 11156: MSc in Game Design and Development. Chap.

Improving the Performance of a Computer-Controlled Player in a Maze Chase Game using Evolutionary Programming on a Finite-State Machine

Computer & Video Game Genres. CSCI 130 Computer Game Design Prof. Jason Fritts

What is Artificial Intelligence?

2IOE0 Interactive Intelligent Systems

Teaching Introductory Artificial Intelligence with Pac-Man

INTERNSHIP REPORT CSC410. Shantanu Chaudhary 2010CS50295

Learning Object-Oriented Design by Creating Games 1

Board Games They are adaptations of classic board games. Examples of board games include Chess, Checkers, Backgammon, Scrabble and Monopoly.

Course Outline Department of Computing Science Faculty of Science. COMP Applied Artificial Intelligence (3,1,0) Fall 2015

Using Emergent Behavior to Improve AI in Video Games

Artificial Intelligence in The Sims series. Yoann Bourse

Artificial intelligence (AI) specialists in Games design and programming

Game playing. Chapter 6. Chapter 6 1

playing smart artificial intelligence in computer games

1. Scope of Games and Game Systems. 2. Evolution of Current Game Designs. 3. New Game Forms Utilising New and Emerging Technical Media

Pacman 3D. Suggestions Multiple levels Powerups that let Pacman chase and eat Ghosts; ghosts need to respawn

Overview. Swarms in nature. Fish, birds, ants, termites, Introduction to swarm intelligence principles Particle Swarm Optimization (PSO)

Computer Game Programming Intelligence I: Basic Decision-Making Mechanisms

Optimization in Strategy Games: Using Genetic Algorithms to Optimize City Development in FreeCiv

Machine Learning: Overview

Why is the design of a computer game important?

Projects - Neural and Evolutionary Computing

CSE 517A MACHINE LEARNING INTRODUCTION

Game Development Fundamentals

Ludology. Ludology: Psychology of fun. Remembering from last time. Thinking like a gamer

Developing an Artificial Intelligence Engine

Professional Organization Checklist for the Computer Science Curriculum Updates. Association of Computing Machinery Computing Curricula 2008

COMP 590: Artificial Intelligence

Digital 3D Animation

School of Computer Science

Age of Wonders I Quick Start Guide

How To Get A Computer Engineering Degree

Computer Science Introduction

About the Author. The Role of Artificial Intelligence in Software Engineering. Brief History of AI. Introduction 2/27/2013

Evolution of Video Games

Homeschool Programming, Inc.

Artificial Intelligence and Politecnico di Milano. Presented by Matteo Matteucci

DM810 Computer Game Programming II: AI. Lecture 11. Decision Making. Marco Chiarandini

Learning Agents: Introduction

Course 395: Machine Learning

KS3 Computing Group 1 Programme of Study hours per week

Learning is a very general term denoting the way in which agents:

Computing Unit Planner: Year 5 Unit 1 Quiz and Game

Fundamentals of Real-Time Camera Design. Mark Haigh-Hutchinson Senior Software Engineer Retro Studios, Inc.

OCR LEVEL 3 CAMBRIDGE TECHNICAL

10. Machine Learning in Games

CSC384 Intro to Artificial Intelligence

GAME MASTERS: THE GAME Resource Kit

Artificial Intelligence

Model based testing tools. Olli Pekka Puolitaival

An Emergent Approach to Game Design Development and Play. Penelope Sweetser

Artificial Intelligence and Asymmetric Information Theory. Tshilidzi Marwala and Evan Hurwitz.

CS MidTerm Exam 4/1/2004 Name: KEY. Page Max Score Total 139

The 3D rendering pipeline (our version for this class)

Evolutionary Algorithms Software

CS440/ECE448: Artificial Intelligence. Course website:

LONG BEACH CITY COLLEGE MEMORANDUM

Content. Massively Multiplayer Online Games Previous Work. Cluster-based Approach. Evaluation Conclusions. P2P-based Infrastructure

Georgia Institute of Technology ASE 6003: Modeling & Simulation for Systems Engineering

Beyond video games: New artificial intelligence beats tactical experts in combat simulation 27 June 2016, by M.b. Reilly

Index. 2D arrays, 210

Current California Math Standards Balanced Equations

M.S. Computer Science Program

ARTIFICIAL INTELLIGENCE: DEFINITION, TRENDS, TECHNIQUES, AND CASES

Hardware Limited Artificial Intelligence: Desirability Assessment for Board Games. By Andy Matange & Michael Daly

Computer Science Information Sheet for entry in What is Computer Science?

STS Review of Lemmings

Facts and figures XS SOFTWARE : WE ARE PROUD OF : Is a leading international company - specializing in browser games for over 9 years now

Chess Algorithms Theory and Practice. Rune Djurhuus Chess Grandmaster / October 3, 2012

Draft dpt for MEng Electronics and Computer Science

Game Engine Review. Mr. Stuart Armstrong Research Parkway, Suite 350 Orlando FL, USA

Article final draft. Final version appeared in Game Programming Gems 8.

Games Development Education to Industry. Dr. Catherine French Academic Group Leader Games Programming, Software Engineering and Mobile Systems

Acting humanly: The Turing test. Artificial Intelligence. Thinking humanly: Cognitive Science. Outline. What is AI?

Software Engineering. Introduc)on

Predictive Act-R (PACT-R)

Brain-in-a-bag: creating an artificial brain

[Name of the game] Game Design Document. Created by [Name of the team]:

Transcription:

AI in Computer Games why, where and how Olle Gällmo

Who am I? Lecturer at Uppsala University, Dept. of information technology AI, machine learning and natural computation Gamer since 1980

AI in Computer Games Goals History Common issues and methods Issues in various game categories

Goals Games are entertainment! Important that things behave naturally not necessarily perfect "things" are not always creatures Follow (the game's) natural laws and avoid cheating Characters should be aware

Game A(I?) Academic AI is usually concerned with making rational decisions Searching for the optimal solution Game AI is more often about Artificial Life Believable behaviour including stupidity! realistic physics Game balancing challenging, but not unbeatable opponents

History -1980 1960's First computer games SpaceWar! (PDP-1, for two human players) (1962) Board games (e.g. chess) against the machine PDP-1 Chess

History -1980 1960's First computer games SpaceWar! (PDP-1, for two human players) (1962) Board games (e.g. chess) against the machine 1970's Pong (early arcade game) (1972) Computer controlled opponents Space Invaders (1978) Predefined patterns, no awareness "AI" takes 1-2% of CPU Pong Space Invaders

Pac Man 1980's Pac-Man (1980) aware opponents with personality A computer beats a master chess player (1983) First fighting games Adventure games Dungeon, Zork,... First MORPG (MUD) The way of the exploding fist (1985)

1990's FPS and RTS games Games about/with evolution and learning (Creatures, and (in 2001) Black&White) Deep Blue beats Kasparov (1997) Graphic cards take the load off the CPU AI takes 10-35% of CPU Dune 2 Doom Black & White

2000- Focus shift from single- to multiplayer Focus shift from graphics to AI and physics... Large part of the code is AI code often made from scratch for each game Less cheating Characters are more aware thanks to better physics engines Characters collaborate better

2000- BIG industry In Sweden +39%/year on average (2006-2014) 9 bilj SEK turnover in 2014 Most of the (213) companies make + Internationally 81 bilj USD revenue in 2014 Tough competition (10 most sold games cover 80% of the market) Typical game project: 2 years, 70 people, 20 milj USD (+ marketing)

Typical Game AI topics Strategical/tactical decisions Against or with you Search for best counter action adaptivity Director level AI Simulation of natural behaviour for animation (e.g. bird flocks) Shortest path problems

Why is Game AI hard? (what makes it interesting to CompSci) Huge state space Huge action space Multiple tasks on different levels of abstraction of different types Non-deterministic post-conditions difficult to set makes planning difficult Often real time

Some common methods Minimax logic games, search for best counter action Finite State Machines (FSM) A* Behaviour For shortest path problems Particle methods Simulation of flocks, smoke, water, grass,... Smart terrain

Minimax (counter actions) MAX MIN 7 MAX 5 1 3 17 42 7 Variants: α-β-pruning and expectimax

Finite State Machines Pacman ghost (red)

A* Distance from S + estimated distance to G 3+8=11 2+7=9 3+6=9 4+5=9 2+7=9 1+6=7 2+5=7 3+4=7 S 1+6=7 1+4=5 2+3=5 2+5=7 G 3+6=9 4+5=9 5+4=9 6+3=9 7+2=9 8+1=9

Reinforcement Learning

Best shortest Civilization III

Smart terrain Store knowledge in objects instead of in the characters drink me! not thirsty, warm Easier to know what is relevant Easier to add new objects later Attributed to Will Wright (Sims)

Machine Learning? Game characters are short lived Learning requires many attempts Keep it simple! Probabilistic methods (a la MENACE) Director level AI Evolutionary methods genetic algorithms and PSO Neural networks in game development, but not often in game

MENACE

AI in various game types Board games Role playing games Strategy games Platform and sports games Racing games

Board games Discrete time / turn based Often deterministic AI is in the opponent Chess AI goal is non-typical (for games) usually strives for optimality Tree search Library Reinforcement learning

Role Playing and Adventure The Elder Scrolls IV: Oblivion AI in enemies, bosses, party members and other NPCs,... Scripting, FSMs, Messaging Role Playing Combat combat oriented games are simpler to make Conversations (grammar machines) Quest generators Towns

Town behaviour Balmora, in The Elder Scrolls III: Morrowind

Town behaviour Need-based system Needs (e.g. hunger, business,...) Actions (e.g. eating, trading,...) "Need pathfinding" Problems Finding people Unwanted interaction between NPCs

Strategy games AI heavy (on both sides) Shortest path problems Strategical decisions Tactical decisions Civilization III Town building and resource management planning Indigenous life Reconnaissance (fog-of-war) Diplomacy Know thy enemy (observe and adapt)

Strategy games Civilization III

Action games (FPS, TPS) Enemies Cooperative agents Weapons Attention requires perception requires a good physics engine Pathfinding Spatial reasoning Anticipation Half Life 2

Action games (FPS, TPS) Thief 3: Deadly Shadows

Platforms and sports Platform games In 3D, since 1996 (Mario 64) Camera problems Sports games Camera problems (harder) Cooperation Game balance can be difficult Learning

Platforms and sports Prince of Persia Prince of Persia: The Two Thrones

Racing games Forza Motorsport (2005)

Racing games Track AI Neural networks (CMR2) Traffic (including pedestrians) Physics Tuning NPCs and vehicle parameters Genetic algorithms Particle swarm optimization

Conclusion Making realistic games requires more than good graphics Computer controlled characters must behave Naturally Reasonably intelligent, without cheating Graphics has dedicated hardware More processing power avilable to AI In the future Dedicated AI cards? Combined AI/Physics/Graphics cards? Dedicated cores? From simulated to real worlds (robotics)

Robocup (Aibo league)

Recommended reading http://aigamedev.com