1 AI and Game Programming CIS 487/587 Bruce R. Maxim UM-Dearborn.

Slides:



Advertisements
Similar presentations
1 Interactive Fiction CIS 487/587 Bruce R. Maxim UM-Dearborn.
Advertisements

Artificial Intelligence in Game Design Intelligent Decision Making and Decision Trees.
Artificial Intelligence in Game Design Introduction to Learning.
Artificial Intelligence in Game Design Hierarchical Finite State Machines.
CS 4730 Game AI CS 4730 – Computer Game Design Some slides courtesy Tiffany Barnes, NCSU.
Games Programming III (TGP2281) – T1, 2010/2011 Game AI Fundamentals John See 15 November 2010.
Game Design and Programming. Objectives Classify the games How games are design How games are implemented What are the main components of a game engine.
And Just Games etc.. EVOLUTION OF COMPUTER GAMES PongOdyssey Beginning of the use of microprocessors ATARI VCS system bit.
Artificial Intelligence CSE 191A: Seminar on Video Game Programming Lecture 7: Artificial Intelligence UCSD, Spring, 2003 Instructor: Steve Rotenberg.
CORE MECHANICS. WHAT ARE CORE MECHANICS? Core mechanics are the heart of a game; they generate the gameplay and implement the rules. Formal definition:
제 5 주. Art and Design Computer Animation: from Avatars to Unrestricted Autonomous Actors A. Pina, E. Cerezo and F. Seron, Computers & Graphics, vol. 24,
Games 1.Have a reason to design a game. 2.Brainstorm 3.Sift, strain, and find the “good” ideas 4.Prototype 5.Playtest 6.Experience Doc.
Central Processing Unit Main Memory Monitor Disk Keyboard mouse What's a Computer? Network CPU: (stupid) brain of the computer can do very simple tasks.
Chapter 11: Artificial Intelligence
Chapter 10 Artificial Intelligence. © 2005 Pearson Addison-Wesley. All rights reserved 10-2 Chapter 10: Artificial Intelligence 10.1 Intelligence and.
Genetic Regulatory Network Inference Russell Schwartz Department of Biological Sciences Carnegie Mellon University.
CS 101: Arrays Abhiram Ranade. Computers manipulate many objects Given the position, masses, and velocities of all stars, where will they be after the.
ZOMBIE MADNESS! Jack Smith Steve Mander-Jones OUTLINE > GAME OVERVIEW > IMPLEMENTATION > AI FEATURES > CONCLUSION.
Artificial Intelligence in Gaming Riley Turben. Game AI  Differ from a “traditional” AI  Scope of knowledge  Varying complexity  A substitute for.
Governor’s School for the Sciences Mathematics Day 13.
5. Alternative Approaches. Strategic Bahavior in Business and Econ 1. Introduction 2. Individual Decision Making 3. Basic Topics in Game Theory 4. The.
Introduction to AI Engine & Common Used AI Techniques Created by: Abdelrahman Al-Ogail Under Supervision of: Dr. Ibrahim Fathy.
Art 315 Lecture 6 Dr. J. Parker. Variables Variables are one of a few key concepts in programming that must be understood. Many engineering/cs students.
Object-Oriented Modeling Using UML CS 3331 Section 2.3 of Jia 2003.
CSE 380 – Computer Game Programming Artificial Intelligence Murloc, Blizzard Entertainment.
StarCraft Learning Algorithms By Logan Yarnell, Steven Raines, and Dean Antel.
The joy of lex Or: How I learned to stop worrying and love the deterministic, finite-state automaton...
CHAPTER 10: CORE MECHANICS Definitions and Mechanisms.
Machine Learning for an Artificial Intelligence Playing Tic-Tac-Toe Computer Systems Lab 2005 By Rachel Miller.
Why program retro machines? Aren't they obsolete? Why not do something more constructive?
Jennifer Campbell November 30,  Problem Statement and Motivation  Analysis of previous work  Simple - competitive strategy  Near optimal deterministic.
Artificial Intelligence for Games Finite State Machines
DEEP RED An Intelligent Approach to Chinese Checkers.
Intelligent Database Systems Lab 國立雲林科技大學 National Yunlin University of Science and Technology 1 Evolving Reactive NPCs for the Real-Time Simulation Game.
-Turn to page 523 in your literature book. -Copy the 5 elements of plot and their definitions in your reading notes.
5.3 Sorting Techniques. Sorting Techniques Sorting is the process of putting the data in alphabetical or numerical order using a key field primary key.
Game tree search Thanks to Andrew Moore and Faheim Bacchus for slides!
Dr Nick Mitchell (Room CM 224)
Reinforcement Learning AI – Week 22 Sub-symbolic AI Two: An Introduction to Reinforcement Learning Lee McCluskey, room 3/10
CS382 Introduction to Artificial Intelligence Lecture 1: The Foundations of AI and Intelligent Agents 24 January 2012 Instructor: Kostas Bekris Computer.
AI Overview Logical and Artificial Intelligence in Games Lecture 1.
(More) Event handling. Input and Windowed-OS’s Windowed OS’s (Windows, OSX, GUI-linux’s) send messages (events) when the user does something “on” the.
World of Wokcraft The very best in Single pan cooking themed fantasy gaming!
The Game Development Process: Artificial Intelligence.
Bbm421 – Computer Games Technology
CS 134 Video Game “AI”.
Introduction to Artificial Intelligence
Chapter 11: Artificial Intelligence
Chapter 11: Artificial Intelligence
Artificial Intelligence and Computer Games
AV Autonomous Vehicles.
Motivation Computers are good at some things… Calculating 
CIS 488/588 Bruce R. Maxim UM-Dearborn
CIS 488/588 Bruce R. Maxim UM-Dearborn
CIS 488/588 Bruce R. Maxim UM-Dearborn
Metaheuristic methods and their applications. Optimization Problems Strategies for Solving NP-hard Optimization Problems What is a Metaheuristic Method?
Interaction with artificial intelligence in games
network of simple neuron-like computing elements
Dr. Unnikrishnan P.C. Professor, EEE
Lecture 17 Logistics Last lecture Today HW5 due on Wednesday
Solving Problems with Artificial Neural Networks (ANNs)
Guest Lecture by David Johnston
Future of Artificial Intelligence
Artificial Intelligence 12. Two Layer ANNs
Lecture 17 Logistics Last lecture Today HW5 due on Wednesday
Artificial Intelligence and Searching
Artificial Intelligence Machine Learning
Part One : Deterministic Finite Automata
Presentation transcript:

1 AI and Game Programming CIS 487/587 Bruce R. Maxim UM-Dearborn

2 Selected AI Techniques Deterministic algorithms Heuristic programming Patterns and scripts Finite state machines Production systems Genetic algorithms Neural networks

3 Deterministic Algorithms Each clock tick asteroid_x += asteroid_x_velocity asteroid_y += asteroid_y_velocity Asteroids follow their course until –off screen –collision occurs –blown up

4 Random Motion fly_x = rand() % 80 fly_y= rand() % 80 while(~done()) { fly_count = 0 fly_x_velocity = -8 + rand() % 16 fly_y_velocity = -8 + rand() % 16 while (++fly_count < 10) { fly_x += fly_x_velocity fly_y += fly_y_velocity }

5 Tracking and Pursuit if (player_x > monster_x) monster_x++ if (player_x < monster_x) monster_x-- if (player_y > monster_y) monster_y++ if (player_y < monster_y) monster_y--

6 Tracking and Evasion if (player_x < monster_x) monster_x++ if (player_x > monster_x) monster_x-- if (player_y < monster_y) monster_y++ if (player_y > monster_y) monster_y--

7 Patterns and Scripts Get keys out of pocket Put key in door Open door Get in car Close door Put key in ignition Turn key to start car

8 Behavioral State Systems Finite state machines –give them enough states to be interesting (each represents different goals or motives) –lots of inputs (environment attributes and other object states) Some states may need substates or multi-part actions (e.g. move toward opponent and attack 20% of the time) Personality of characters and spheres of influence may also be factored in as probabilistic input values to state entry or transitions

9 Memory and Learning Memory is really just a decision to record a few details –record changes to frames –recording the last few moves Learning is self-improvement –neural networks –genetic algorithms –numerical approaches (e.g. Samuels & checkers) –structural approaches

10 Deciding Between AI Techniques Use deterministic techniques for simple behavior (e.g. rocks or missiles) Add randomness and patterns for smart elements (e.g. birds or spaceships) Use finite state machines for important game characters For computer controlled opponents use everything (including memory and learning)