Autonomous Characters for Games and Animation Craig W. Reynolds Sony Computer Entertainment America May 1, 2000.

Slides:



Advertisements
Similar presentations
METAGAMER: An Agent for Learning and Planning in General Games Barney Pell NASA Ames Research Center.
Advertisements

7.2. AI E NGINE AND S TEERING B EHAVIOUR I Design of an AI Engine and introduction to steering in game AI.
7.1. O SCARS & A RTIFICIAL I NTELLIGENCE Interim awards and introduction to game AI.
Beyond the Centralized Mindset
Evolving Flocking Simulation and Robotics Dan Sayers iotic.com.
Flocking Behaviors Presented by Jyh-Ming Lien. Flocking System What is flocking system? – A system that simulates behaviors of accumulative objects (e.g.
Better Group Behaviors in Complex Environments using Global Roadmaps O. Burchan Bayazit, Jyh-Ming Lien and Nancy M. Amato Presented by Mohammad Irfan Rafiq.
Flocks, Herds, and Schools: A Distributed Behavioral Model By: Craig Reynolds Presented by: Stephanie Grosvenor.
1 CO Games Development 2 Week 22 Flocking Gareth Bellaby.
OBJECT-ORIENTED THINKING CHAPTER Topics  The Object-Oriented Metaphor  Object-Oriented Flocks of Birds –Boids by Craig W. Reynolds  Modularity.
Optimizing Flocking Controllers using Gradient Descent
Florian Klein Flocking Cooperation with Limited Communication in Mobile Networks.
Kristen Gardner. Outline Swarm Intelligence Flocking Basic Steering Swarms Applications Animals Vehicles People.
University of Texas at Austin CS 378 – Game Technology Don Fussell CS 378: Computer Game Technology Dynamic Path Planning, Flocking Spring 2012.
Hockey Terminology & Strategy Basics for Parents.
CS / BEHAVIORAL ANIMATION PAGE 113 FLOCKING BEHAVIOR NEIGHBORHOOD SEPARATION COHESION ALIGNMENTLEADER FOLLOWING.
1 Reactive Pedestrian Path Following from Examples Ronald A. Metoyer Jessica K. Hodgins Presented by Stephen Allen.
1Notes  Assignment 2 is out  Flocking references  Reynolds, “Flocks, Herds, and Schools…”, SIGGRAPH’87  Tu and Terzopoulos, “Artificial Fishes…”, SIGGRAPH’94.
Better Group Behaviors in Complex Environments using Global Roadmaps O. Burchan Bayazit, Jyh-Ming Lien and Nancy M. Amato Andreas Edlund.
Artificial Intelligence CSE 191A: Seminar on Video Game Programming Lecture 7: Artificial Intelligence UCSD, Spring, 2003 Instructor: Steve Rotenberg.
Continuum Crowds Adrien Treuille, Siggraph 王上文.
CS274 Spring 01 Lecture 5 Copyright © Mark Meyer Lecture V Higher Level Motion Control CS274: Computer Animation and Simulation.
1cs426-winter-2008 Notes  Please read: C. Reynolds “Flocks, Herds, and Schools…” SIGGRAPH ‘87
Crowd Simulation Seminar ”Steering Behaviors For Autonomous Characters” By Craig W. Reynolds Rudi Bonfiglioli ( )
Steering Behaviors For Autonomous Characters
RoboCup: The Robot World Cup Initiative Based on Wikipedia and presentations by Mariya Miteva, Kevin Lam, Paul Marlow.
AI and GAMES CSC 8520, Villanova University Spring, 2004 Paula Matuszek & Robin McEntire.
Agent Based Modeling and Simulation
Yingcai Xiao Artificial Intelligence in Game Development Yingcai Xiao.
Chapter 10 Artificial Intelligence. © 2005 Pearson Addison-Wesley. All rights reserved 10-2 Chapter 10: Artificial Intelligence 10.1 Intelligence and.
Distributed, Physics- based Control of Swarms of Vehicles W. M. Spears, D.F. Spears, J. C. Hamann and R. Heil (2000) Presentation by Herke van Hoof.
Biology: flocking, herding & schooling Day 5 COLQ 201 Multiagent modeling Harry Howard Tulane University.
Behavior. Autonomous Characters Acknowledgement Much of this material is taken from the work of Craig Reynolds. He maintains a web pages including a rich.
Flow Fields Hao Li and Howard Hamilton. Motivation for Flow Fields Multiple AI algorithms in a computer game can produce conflicting results. The AI must.
CS 484 – Artificial Intelligence1 Announcements Lab 4 due today, November 8 Homework 8 due Tuesday, November 13 ½ to 1 page description of final project.
More on coevolution and learning Jing Xiao April, 2008.
PSY105 Neural Networks 1/5 1. “Patterns emerge”. π.
Steering Autonomous Characters Spring 2005 Ref: Craig Reynolds.
Liang, Introduction to Java Programming, Eighth Edition, (c) 2011 Pearson Education, Inc. All rights reserved Event Driven Programming, The.
Artificial Intelligence for Games Lecture 1 1 Minor Games Programming.
AI in games Roger Crawfis/Eric Fosler-Lussier CSE 786 Game Design.
Behavior. Autonomous Characters Self-Directed characters "puppets that pull their own strings" -Ann Marion.
제 6 주. 응용 -2: Graphics Artificial Life for Computer Graphics D. Terzopoulos, Communications of the ACM, vol. 42, no. 8, pp. 33~42, 1999 학습목표 Understanding.
Evolving Virtual Creatures & Evolving 3D Morphology and Behavior by Competition Papers by Karl Sims Presented by Sarah Waziruddin.
I Robot.
1 Game AI Steering Behavior & Group Movement ( 轉向行為 及 群體運動 )
CLASS 10 SCENE GRAPHS BASIC ANIMATION CS770/870. A scene Graph A data structure to hold components of a scene Usually a Tree of a Directed Acyclic Graph.
Controlling the Behavior of Swarm Systems Zachary Kurtz CMSC 601, 5/4/
Crowds (and research in animation and games) CSE 3541 Matt Boggus.
Autonomous Virtual Humans Tyler Streeter. Contents Introduction Introduction Implementation Implementation –3D Graphics –Simulated Physics –Neural Networks.
Introduction of Intelligent Agents
Pac-Man AI using GA. Why Machine Learning in Video Games? Better player experience Agents can adapt to player Increased variety of agent behaviors Ever-changing.
REFERENCES: FLOCKING.
B OIDS, D ROIDS, & N OIDS : D ESCRIPTION AND I MPLICATIONS OF AN I NTEGRATIVE R ESEARCH P ARADIGM ON M ACROCOGNITION Steve W.J. Kozlowski Georgia T. Chao.
Constraint-Based Motion Planning for Multiple Agents Luv Kohli COMP259 March 5, 2003.
Robot Intelligence Technology Lab. 10. Complex Hardware Morphologies: Walking Machines Presented by In-Won Park
Fundamentals of Computer Animation Controlling Groups of Objects (2)
CAP6938 Neuroevolution and Artificial Embryogeny Real-time NEAT Dr. Kenneth Stanley February 22, 2006.
An application of the genetic programming technique to strategy development Presented By PREMKUMAR.B M.Tech(CSE) PONDICHERRY UNIVERSITY.
11/13/03CS679 - Fall Copyright Univ. of Wisconsin Last Time A* Improvements Hierarchical planning Pre-Planning.
RoboCup: The Robot World Cup Initiative
Crowds (and research in computer animation and games)
Computer Animation Algorithms and Techniques
Flocking Geometric objects Many objects
Chapter 11: Artificial Intelligence
Crowds (and research in computer animation and games)
CIS 488/588 Bruce R. Maxim UM-Dearborn
Interaction with artificial intelligence in games
CHAPTER I. of EVOLUTIONARY ROBOTICS Stefano Nolfi and Dario Floreano
Computer Graphics Lecture 15.
Presentation transcript:

Autonomous Characters for Games and Animation Craig W. Reynolds Sony Computer Entertainment America May 1, 2000

Autonomous Characters for Games and Animation •Self-directing characters which operate autonomously ("puppets that pull their own strings" -Ann Marion) •Applications in: – games and other interactive venues – animation for television and feature films •History: – first used experimentally in 1987 – in wide commercial use today

Autonomous Characters •Autonomous agents for simulated 3D worlds –situated –embodied •Intersection of several fields –ethology –artificial life –autonomous robotics –dramatic characters •Adjunct to physically-based modeling –dynamics versus volition –bouncing ball versus pursuing puppy

Reactive Behavior •Behavior driven by reaction to environment –both passive scenery and active characters •Simplifies complex animation –many characters can be animated by a single behavior •Allows user interaction –improvisational style permits unscripted action

Creating Character Behaviors •By design –programming –authoring (example: Motion Factory) •Through self-organization –evolution –and other forms of machine learning: neural nets decision trees classifier systems simulated annealing

Ad hoc Behavioral Hierarchy •Action selection – goals and strategies •Path selection / steering – global motion •Pose selection / locomotion – local motion (animation)

Behavioral Blending •Discrete selection –One behavior at a time •Behavioral blending –Summation / averaging –Per "frame" selection (blend via inertia) - First active - Stochastic (dithered) decision tree

Behavioral Animation

•Background action •Autonomous characters –behavioral model –graphical model •Improvised action

Behavioral Animation: Group Motion •Individual –simple local behavior –interaction with: - nearby individuals - local environment •Group: –complex global behavior

Behavioral Animation: Examples of Group Motion •People –crowds, mobs, passersby •Animal –flocks, schools, herds •Vehicle –traffic

Applications of Behavioral Animations • 1987: Stanley and Stella in: Breaking the Ice, (short) Director: Larry Malone, Producer: Symbolics, Inc. • 1988: Behave, (short) Produced and directed by Rebecca Allen • 1989: The Little Death, (short) Director: Matt Elson, Producer: Symbolics, Inc. • 1992: Batman Returns, (feature) Director: Tim Burton, Producer: Warner Brothers • 1993: Cliffhanger, (feature) Director: Renny Harlin, Producer: Carolco. • 1994: The Lion King, (feature) Director: Allers / Minkoff, Producer: Disney.

Applications of Behavioral Animations • 1996: From Dusk Till Dawn, (feature) Director: Robert Rodriguez, Producer: Miramax • 1996: The Hunchback of Notre Dame, (feature) Director: Trousdale / Wise, Producer: Disney. • 1997: Hercules, (feature) Director: Clements / Musker, Producer: Disney. • 1997: Spawn, (feature) Director: Dipp₫, Producer: Disney. • 1997: Starship Troopers, (feature) Director: Verhoeven, Producer: Tristar Pictures. • 1998: Mulan, (feature) Director: Bancroft/Cook, Producer: Disney.

Applications of Behavioral Animations • 1998: Antz, (feature) Director: Darnell/Guterman/Johnson, Producer: DreamWorks/PDI. • 1998: A Bugs Life, (feature) Director: Lasseter/Stanton, Producer: Disney/Pixar. • 1998: The Prince of Egypt, (feature) Director: Chapman/Hickner/Wells, Producer: DreamWorks. • 1999: Star Wars: Episode I-- The Phantom Menace, (feature) Director: Lucas, Producer: Lucasfilm. • 2000: Lord of the Rings: the Fellowship of the Ring (feature) Director: Jackson, Producer: New Line Cinema.

Steering Behaviors

•seek or flee from a location •pursuit and evasion •arrival (position / velocity / time constraints) •obstacle avoidance / containment •path / wall / flow field following •group behaviors –unaligned collision avoidance –Leader following –flocking (three components)

Steering Behaviors ?steering behavior demos? ?steering behavior demos?

Boids

Boid Flocking (three component steering behaviors) •Separation –steer to move away from nearby flockmates •Alignment –steer toward average heading of nearby flockmates (accelerate to match average velocity of nearby flockmates) •Cohesion –steer towards average position of nearby flockmates

Boids: Separation

Boids: Alignment

Boids: Aggregation

Boids (full behavioral model) •Obstacle avoidance •Flocking –separation –alignment –cohesion •Migratory (attraction / repulsion)

Boids Web Page

Boids Video ?boids video... ?boids video...

Boids (real time (60Hz) and interactive)

Evolution of Behavior

•Agent in simulated world •Evolution of –behavioral controller –agent morphology (see Sims SIGGRAPH 94)  Fitness based on agent ’ s performance –objective fitness metric –competitive fitness

Corridor Following

Evolution of Corridor Following Behavior in a Noisy World •Evolve controller for abstract vehicle •Task: corridor following –noisy range sensors –noisy steering mechanism •Evolution of sensor morphology

Corridor Following: goal

Corridor following: fitness

Corridor Following: Results •Works well •Difficulty strongly related to the representation used •"Competent" controllers easy to find •Reliability of controllers is difficult to measure

Coevolution of Tag Players

•The game of tag –symmetrical pursuit and evasion –role reversal •Goal: discover steering behavior for tag •Method: emergence of behavior –coevolution –competitive fitness •Self-organization: no expert knowledge required

Competition, Coevolution and the Game of Tag (ALife IV, 1994)

Coevolution of Taggers Revisited •December 1999 to present •Similar to 1994 work, but:  longer games (25  150) –steering angle limits –obstacles and sensors –demes and species –improved performance (faster computers, compilation of evolved programs)

Evolved Taggers: Obstacles and Sensors

Evolved Taggers Demes and Species Species Deme migration competition

Evolved Taggers: Quality of play over time

Evolved Taggers: Handmade program in the open

Evolved Taggers: Handmade among obstacles

Evolved Taggers: Typical competitive fitness test

Coevolution of Tag Players: Results •It works! (after a lot of tweaking) •An ecology of competing behaviors did arise •Originally, evolved behaviors had been sub-optimal (perhaps do to collusion: "live and let live") •Finally (after demes, species, and harsh penalties) the evolved tag players have exceeded the quality of play of my hand-crafted player.

Conclusion •Autonomous characters: – add richness and complexity to virtual worlds – automate creation of groups and crowd scenes – allow life-like improvisational action – can react to unanticipated situations, like user input •Games and animation provide many applications of, testbeds for, and problems to be solved by research in: – artificial life – artificial intelligence – evolutionary computation – and other biologically-inspired methods

Slides temporarily removed •Slides temporarily removed

Applications of Autonomous Characters •Behavioral animation (film and television) – coordinated group motion – extras / background action •Interactive multimedia (games / virtual reality) – opponents and allies – background characters •Autonomous robotics – search / exploration / mapping – prototyping for evolutionary robotics •Theoretical biology – testing theories of emergent natural behavior

Combining Simultaneous Behaviors • Combination –discrete selection –behavioral blending •Low priority behavior should not be: –completely locked out –allowed to contradict (and perhaps cancel out) a higher priority behavior

Autonomous Character Case Studies •Hand programmed –steering behavior library –boids –hockey players •Evolution –corridor following –tag players

Steering-Based Hockey Simulation

Basic Hockey Player •Physical model – point mass – limited force and velocity – collision modeling (as cylinder) •Awareness of – position and velocity of players and puck – position of rink and markings •Behaviors: –avoid rink walls and goal nets  chase loose puck, skate towards location? •Assigned role (f orward, wing, defenseman, goalie)

Hockey Role Model •Defenseman  if you have the puck? –if your teammate has the puck... –if puck is within your zone: - discourage shot on goal - discourage pass to opponent - don't crowd goalie –do basic hockey play stuff

Hockey Demo ?hockey demo? ?hockey demo?

Corridor Following: Experimental Design •Vehicle model –constant speed –limited steering angle –noisy sensors (arbitrary number & direction) –noisy steering mechanism •Genetic Programming –hybrid steady-state model –worst of four noisy trials –population: 2000 –size limit for evolved programs: 50