Scalable Behaviors for Crowd Simulation Mankyu Sung Michael Gleicher Stephen Chenney University of Wisconsin- Madison www.cs.wisc.edu/graphics.

Slides:



Advertisements
Similar presentations
Object Persistence for Synthetic Characters Damian Isla Bungie Studios Microsoft Corp. Bruce Blumberg Synthetic Characters MIT Media Lab.
Advertisements

Bus Safety ! Everything YOU need to know, in alphabetical order!
Blending & State Machines CSE169: Computer Animation Instructor: Steve Rotenberg UCSD, Winter 2005.
New Mexico Computer Science For All Designing and Running Simulations Maureen Psaila-Dombrowski.
Software Engineering 2003 Jyrki Nummenmaa 1 OBJECT ARCHITECTURE DESIGN These slides continue with our example application, based on the simplified.
Michael Zyda Finite State Machines Michael Zyda
 Mankyu Sung Scalable, Controllable, Efficient and convincing crowd simulation (2005)  Michael Gleicher “I have a bad case of Academic Attention Deficit.
Artificial Intelligence in Game Design Intelligent Decision Making and Decision Trees.
Artificial Intelligence in Game Design Hierarchical Finite State Machines.
Some important pedestrian considerations 4-1. Skew increases crosswalk length, decreases visibility 4-2.
John S Gero Agents – Agent Simulations AGENT-BASED SIMULATIONS.
A Summary of the Article “Intelligence Without Representation” by Rodney A. Brooks (1987) Presented by Dain Finn.
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Crowd Simulation Ilknur Kaynar – Kabul COMP 259 – Spring 2006.
Second Grade English High Frequency Words
AfL – A pupil perspective Presented by Sean, Lucy, Najeeb and Nayaab PORTSWOOD PRIMARY SCHOOL PRIDE PASSION SUCCESS.
05/09/02(c) 2002 University of Wisconsin Last Time Global illumination algorithms Grades so far.
Every week: Sign in at the door If you are new: Fill in Registration Form Ask a Mentor how to get started Make sure you are on the Athenry Parents/Kids.
Concurrency Recitation – 2/24 Nisarg Raval Slides by Prof. Landon Cox.
INTRODUCTION TO THE SCRATCH PROGRAMMING ENVIRONMENT.
1 DNSSEC at ESnet ESCC/Internet2 Joint Techs Workshop July 19, 2006 R. Kevin Oberman Network Engineer Lawrence Berkeley National Laboratory.
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.
Computer Graphics 2 In the name of God. Outline Introduction Animation The most important senior groups Animation techniques Summary Walking, running,…examples.
Sight words.
Situation Based Approach for Virtual Crowd Simulation Ph.D Preliminary talk Mankyu Sung.
Special Topics in Educational Data Mining HUDK5199 Spring term, 2013 March 4, 2013.
UrbanSim: Informing Public Deliberation about Land Use and Transportation Decisions using Urban Simulations Alan Borning Dept of Computer Science & Engineering.
Fast and Accurate Goal- Directed Motion Synthesis For Crowds Mankyu Sung Lucas Kovar Michael Gleicher University of Wisconsin- Madison
Intelligent Agents RMIT Prof. Lin Padgham (leader) Ass. Prof. Michael Winikoff Ass. Prof James Harland Dr Lawrence Cavedon Dr Sebastian Sardina.
Maths & Technologies for Games Animation: Practicalities CO3303 Week 3.
Adrian Treuille, Seth Cooper, Zoran Popović 2006 Walter Kerrebijn
Jumping, Climbing, and Tactical Reasoning Section 2.5 Tom Schaible CSE 497 – AI & Game Programming.
University of Windsor School of Computer Science Topics in Artificial Intelligence Fall 2008 Sept 11, 2008.
Project “Smoke” N-core engine experiment Threading for Performance AND Features.
Artificial Intelligence in Game Design Complex Steering Behaviors and Combining Behaviors.
RIGHT TURNS A step by step guide intended to support the practical training. Select Slide Show from the top Toolbar then From Beginning. Let it run until.
Controlling Individual Agents in High-Density Crowd Simulation
Be Safe ! Follow School Bus Safety Rules Prepared by: Pupil Transportation Unit Manitoba Education & Advanced Learning.
Driving in City Traffic.  This chapter discusses the skills necessary to navigate driving situations in city traffic.
Game Programming Patterns Game Loop From the book by Robert Nystrom
Animating Idle Gaze Humanoid Agents in Social Game Environments Angelo Cafaro Raffaele Gaito
SCHOOL BUS & ROAD SAFETY. Hi friends, I am Buddy. I travel by the school bus everyday. I understand the importance of school-bus safety in our lives.
Local Distributed Agent Matchmaking Elth Ogston and Stamatis Vassiliadis Computer Engineering Laboratory TU Delft.
Review of Parnas’ Criteria for Decomposing Systems into Modules Zheng Wang, Yuan Zhang Michigan State University 04/19/2002.
Rational Agency CSMC Introduction to Artificial Intelligence January 8, 2004.
(c) University of Washington02-1 CSC 143 Java Object and Class Relationships: Interfaces Reading: Ch. 9 (on Java interfaces)
Circulation Simulation Andrew Moeding. Simulation Types Traffic flow pattern simulation Building/pedestrian circulation simulation.
Scalable, Controllable, Efficient and Convincing Crowd Simulation Mankyu Sung University of Wisconsin-Madison.
Making PowerPoint Work
Introduction to Computer Programming - Project 2 Intro to Digital Technology.
LESSON: SAFETY AND INJURY PREVENTION UNIT: HEALTHY FOR LIFE.
Animation Animation is about bringing things to life Technically: –Generate a sequence of images that, when played one after the other, make things move.
Obeying traffic rules. Heavy traffic Traffic jam.
Intro CS – Probability and Random Numbers Lesson Plan 6a.
CONDITIONALS CITS1001. Scope of this lecture if statements switch statements Source ppts: Objects First with Java - A Practical Introduction using BlueJ,
Today… Functions, Cont.: –Designing functions. –Functional Decomposition –Importing our own module –A demo: Functional solution to assignment 2. Winter.
GroupMap Starter’s Guide Think Better Together Plan, brainstorm, discuss and prioritise for action. © GroupMap Pty Ltd |
( ) 1 Chapter # 8 How Data is stored DATABASE.
Graphics Lab Open House! 1347 CS&S 1:30-4:00 The UW Graphics Group.
Students’ typical confusions and some teaching implications
Essentials of UrbanCode Deploy v6.1 QQ147
Intro CS – Probability and Random Numbers
Driving in City Traffic
Professor Arne Thesen, University of Wisconsin-Madison
Harm van Seijen Bram Bakker Leon Kester TNO / UvA UvA
An Introduction to VEX IQ Programming with Modkit
CIS 488/588 Bruce R. Maxim UM-Dearborn
Given Circumstances.
Subsuption Architecture
OBJECT ARCHITECTURE DESIGN
Games Development 2 Entity / Architecture Review
Presentation transcript:

Scalable Behaviors for Crowd Simulation Mankyu Sung Michael Gleicher Stephen Chenney University of Wisconsin- Madison

The Goal: Scalable Crowd Simulation Large Crowds Scalable performance Large Complex Environments Scalable Authoring Rich, Complex Behaviors Scalable Behaviors We are not considering rendering!

The Issues: Conflicting Goals Must decouple AGENT complexity from WORLD complexity! Large, Complex World Rich Behaviors But… Fast performance (simple agents) Reasonable authoring

An Environment Example: Model of Street Simulation: Real time, Reactive Rendering: Unreal Game Engine for playback

Scalability: Complex Environments Store Window In front of Store Window Friends Together Doorway In front of Doorway In a hurry In Crosswalk Use crosswalk Sidewalk Street Bench

Observation: Behavior Depends on Situation Store Window In front of Store Window Possibly: stop to window shop Friends Together: Possibly: Stop to talk Probably: Have same goal Doorway In front of Doorway Possibly: open door, enter Unlikely: stand blocking door In a hurry: Check for traffic Run across street In Crosswalk: Walk across street once you’ve started Use crosswalk: Wait for green light Start crossing Sidewalk: Walk here Street: Generally, Don’t walk here

Managing Environmental Complexity: Situation-Based Approach Many different situations Each has a different set of local behaviors An agent only needs a few at a time Blend situations/behaviors together Store Window In front of Store Window Possibly: stop to window shop Friends Together: Possibly: Stop to talk Probably: Have same goal Doorway In front of Doorway Possibly: open door, enter Unlikely: stand blocking door Use crosswalk: Wait for green light Start crossing Sidewalk: Walk here

Observation: Crowds are Crowds Individuals are anonymous Doesn’t matter what any one does At any given time, do something reasonable Aggregate behavior  Stochastic Control  Short term view of agent An Individual

Key Ideas Situation-Based Approach Breaks behavior into small pieces Extensible agents kept simple Situation Composition Probabalistic scheme to compose behaviors Painting Interface Place behaviors in world, not agents Use Motion-Graph-based runtime Based on Gleicher et al 2003

Related Work: Inspirations from Research Crowd Modeling (e.g. Reynolds 1987, Musse 2001, Blue 1998, Henderson, 1974, Bouvier et al. 1997, Helbing et al 2000, …) Simple agents, simple rules Fast, scalable, emergent patterns but…difficult to generalize to complex behaviors Smart Environments (e.g. Kallman et al 1998, Farenc et al. 1999, Thomas et all 2000, Michael et al 2003, …) Objects tell agents what to do Scalable authoring, complex actions but… difficult to compose or get variability

Related Work Inspirations from Systems The SIMS (Maxis/EA Games) Smart Environments/Objects Massive (Regeleous) Author Scenes, not Environments Similar Means, Different Ends Agent-centric, composable behaviors Other competitors seem similar Softimage Behavior, Character Studio, AI-Implant, …

Situation-Based Approach: Agent Architecture Agents: Discrete set of actions (from mograph) Randomly choose from distribution Behavior functions provide distributions All aspects of agents can be updated dynamically

Situation-Based Approach: Simple Default Agents Default agents very simple Wander, don’t bump into things, … Extend agents as necessary to achieve complex behaviors

Situation-Based Approach: Extensible Agent Situations extend agents Add Actions Add Behavior Functions Add Sensors and Rules that inform Behavior Functions

Example Default agent can’t cross the street. How an agent crosses the street… Enters a Crosswalk Situation Crosswalk situation extends agent Sensor to see traffic light Behavior Functions to cross street Behavior Functions to stop Rules to wait for light to change Remove extensions when done

Composing Behaviors: Action Selection Agent Left Right Straight ?

Composing Behaviors: Probability Scheme Behavior Function A Agent Left Right Straight.5.3.2

Composing Behaviors: Probability Scheme Behavior Function A Agent Left Right Straight Behavior Function B

Composing Behaviors: Extending Agents Agent Left Right Straight Behav Func A Jump Behav Func B.1.2 Behav Func J

Composing Behaviors: Probability Scheme Simple example Three rooms with different set of composing behaviors.

Situations Compose Agent can be in multiple situations Agent has union of all the things that different situations put in Details in paper

Authoring: Painting interface Author environments (not characters) Set of situation types Paint into environments Mix situations to make complex/compound ones Ulicny et al (SCA 2004) Painting on people, not environment

Advantages Scalability / Efficiency Agent complexity is independent of overall world complexity Agent only carries information for current situations Authorability Re-use situations Compose / combine / paint Stochastic control variability

Demos : Street scene

Demos : Gallery scene

Limitations/Future work Behavior depends on available actions All behaviors are concatenation of actions Time scale issues / long term behaviors Hierarchical / Ordered Situation Discrete Choices Parameterized actions? Aggregate Control (e.g. Density) Probability Tuning?

Summary: Scalable Crowd Simulation Situation-Based Approach Simple Extensible Agents Localized behaviors Behavior decomposed in situations Situation Composition Probability distributions

Acknowledgements Game Engine Integration: Aaron San Filippo Financial support : NSF CCR and CCR , MIC of Korea Motion donations : House of Moves, Demian Gordon, Ohio State University UW Graphics Group, especially Hyun Joon Shin and Lucas Kovar

Back up slides

Performance evaluation