Crowd Simulations Guest Instructor - Stephen J. Guy.

Slides:



Advertisements
Similar presentations
Controlling Individual Agents in High Density Crowd Simulation N. Pelechano, J.M. Allbeck and N.I. Badler (2007)
Advertisements

Flocking and more.  NPC groups can move in cohesive groups not just independently ◦ Meadow of sheep grazing? ◦ Hunting flock of birds? ◦ Ants? Bees?
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.
Animation. 12 Principles Of Animation (1)Squash and Stretch (2)Anticipation (3)Staging (4)Straight Ahead Action and Pose to Pose (5)Follow Through and.
3D Graphics for Game Programming (J. Han) Chapter XI Character Animation.
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Reciprocal Velocity Obstacles for Real-Time Multi-Agent Navigation Jur van den Berg Ming Lin Dinesh Manocha.
Crowd Simulation Sai-Keung Wong. Crowd Simulation A process of simulating the movement of a large number of entities or characters. While simulating these.
Jur van den Berg, Stephen J. Guy, Ming Lin, Dinesh Manocha University of North Carolina at Chapel Hill Optimal Reciprocal Collision Avoidance (ORCA)
1 Reactive Pedestrian Path Following from Examples Ronald A. Metoyer Jessica K. Hodgins Presented by Stephen Allen.
1cs533d-winter-2005 Computer Animation Robert Bridson (preview of CPSC 426)
1Notes  Textbook: matchmove 6.7.2, B.9. 2 Match Move  For combining CG effects with real footage, need to match synthetic camera to real camera: “matchmove”
John S Gero Agents – Agent Simulations AGENT-BASED SIMULATIONS.
Computer Graphics Lab Electrical Engineering, Technion, Israel June 2009 [1] [1] Xuemiao Xu, Animating Animal Motion From Still, Siggraph 2008.
Presenter: Robin van Olst. Avneesh SudRussell Gayle Erik Andersen Stephen GuyMing Lin Dinesh Manocha.
UNC Chapel Hill M. C. Lin Reading Assignments Principles of Traditional Animation Applied to 3D Computer Animation, by J. Lasseter, Proc. of ACM SIGGRAPH.
CS 4731: Computer Graphics Lecture 19: Shadows Emmanuel Agu.
Crowds Andrew Kaufman Michael Welsman-Dinelle. What is a crowd? A group of agents performing actions. Agents can affect each other. Agent actions may.
1cs426-winter-2008 Notes  Example final exam up in Work section of website Take with a grain of salt  Collision notes part 1 (primitive operations) up.
1cs426-winter-2008 Notes  Text: End of 7.8 discusses flocking 7.13 discusses skinning 7.10 discusses motion capture  Remember online course evaluations.
Chapter 5: Path Planning Hadi Moradi. Motivation Need to choose a path for the end effector that avoids collisions and singularities Collisions are easy.
Real-time Crowd Movement On Large Scale Terrains Speaker: Alvin Date:4/26/2004From:TPCG03.
Steering Behaviors For Autonomous Characters
Ioannis Karamouzas, Roland Geraerts, Mark Overmars Indicative Routes for Path Planning and Crowd Simulation.
A Navigation Mesh for Dynamic Environments Wouter G. van Toll, Atlas F. Cook IV, Roland Geraerts CASA 2012.
Collision and Animation Systems in Games Jani Kajala Lead Programmer / Chief Technology Officer, Pixelgene Ltd (0)
Yingcai Xiao Artificial Intelligence in Game Development Yingcai Xiao.
Computer Animation Rick Parent Computer Animation Algorithms and Techniques Kinematic Linkages.
Lab 3 How’d it go?.
Introduction Tracking the corners Camera model and collision detection Keyframes Path Correction Controlling the entire path of a virtual camera In computer.
Invitation to Computer Science 5th Edition
CSC418 Computer Graphics n Animation Principles n Keyframe Animation.
Computer Graphics 2 In the name of God. Outline Introduction Animation The most important senior groups Animation techniques Summary Walking, running,…examples.
EXIT = Way Out Julian Dymacek April 29. Escape Panic Paper Dr. Dirk Helbing, Illes J. Farkas, Dr. Tamas Vicsek Point mass simulation Uses psychological.
Jinxiang Chai Composite Transformations and Forward Kinematics 0.
Motion Planning in Games Mark Overmars Utrecht University.
Simulating Dynamical Features of Escape Panic Dirk Helbing, Illes Farkas, and Tamas Vicsek Presentation by Andrew Goodman.
Kinematics Jehee Lee Seoul National University. Kinematics How to animate skeletons (articulated figures) Kinematics is the study of motion without regard.
Adrian Treuille, Seth Cooper, Zoran Popović 2006 Walter Kerrebijn
Reactive Pedestrian Path Following from Examples Computer Animation and Social Agents 2003 Ronald A. Metoyer Jessica K. Hodgins Computer Animation and.
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 Individual Agents in High-Density Crowd Simulation
Crowds (and research in animation and games) CSE 3541 Matt Boggus.
Learning to Navigate Through Crowded Environments Peter Henry 1, Christian Vollmer 2, Brian Ferris 1, Dieter Fox 1 Tuesday, May 4, University of.
1cs426-winter-2008 Notes  Will add references to splines on web page.
Wouter G. van Toll Atlas F. Cook IV Roland Geraerts Realistic Crowd Simulation with Density-Based Path Planning ICT.OPEN / ASCI October 22nd, 2012.
Animation.
Applications of Synthetic Vision in Agent-Based Simulation COMP 768 Final Project Glenn Elliott.
Simulating Crowds Simulating Dynamical Features of Escape Panic & Self-Organization Phenomena in Pedestrian Crowds Papers by Helbing.
Planning Tracking Motions for an Intelligent Virtual Camera Tsai-Yen Li & Tzong-Hann Yu Presented by Chris Varma May 22, 2002.
Unity 3D Rolfe Bozier 24-Apr-2017
Animating Human Locomotion
Crowds (and research in computer animation and games)
Computer Animation Algorithms and Techniques
Character Animation Forward and Inverse Kinematics
Computer Animation cgvr.korea.ac.kr.
An Introduction to Spritesheet Animation
Schedule for next 2 weeks
CIS 488/588 Bruce R. Maxim UM-Dearborn
Reading Assignments Principles of Traditional Animation Applied to 3D Computer Animation, by J. Lasseter, Proc. of ACM SIGGRAPH 1987 Computer Animation:
Crowd Simulation (INFOMCRWS) - Introduction to Crowd Simulation
Crowds (and research in computer animation and games)
Roland Geraerts and Mark Overmars CASA’08
Navigation In Dynamic Environment
Robot Motion Planning Project
Application to Animating a Digital Actor on Flat Terrain
UMBC Graphics for Games
Computer Graphics Lecture 15.
Hiroki Sayama NECSI Summer School 2008 Week 2: Complex Systems Modeling and Networks Agent-Based Models Hiroki Sayama
Presentation transcript:

Crowd Simulations Guest Instructor - Stephen J. Guy

Outline  Animation basics  Key framing  Simulation Loop  How to move one man  Walk Cycle  IK  How to move one thousand  Crowd Models  Collision Avoidance  Data Structures  Rendering

Outline  Animation basics  Key framing  Simulation Loop  How to move one man  Walk Cycle  IK  How to move one thousand  Crowd Models  Collision Avoidance  Rendering

Animation - Basics  Comp 768 Preview …  Goal: Illusion of continuous motion  Divide into several small time-steps (length  T)  Show new image at each time-step  Needs to happened at least ~12/second (more is better) Advance  T Update StateDraw Picture

Outline  Animation basics  Key framing  Simulation Loop  How to move one man  Walk Cycle  IK  How to move one thousand  Crowd Models  Collision Avoidance  Data Structures  Rendering

Walk Cycle  Simply Translating a character to its goal is unrealistic  Walk Cycle: A looping series of positions which represent a character walking (or running or galloping)  Shifting the animation provides the illusion of walking InplaceShifted w/ Time

Digression - Eadweard Muybridge  19 th Century English Photograyher  Used multiple cameras to capture motion  Invented Zoopraxiscope (spinning wheel of still images) to animate images

Walk Cycle - Analysis  Pros:  Simple to implement  Captures the basics of human movement  Cons:  Walks must cycle  Can’t handle changes in stride length  Can’t handle jumps  Must be animated by hand

Walk Cycle - Alternatives  Inverse Kinematics  Using math to figure out where to place the rest of the body to get the feet moving forward  Motion Capture  Record data of real humans walking  Motion Clips  FSM of different motions 

Outline  Animation basics  Key framing  Simulation Loop  How to move one man  Walk Cycle  IK  How to move one thousand  Crowd Models  Collision Avoidance  Data Structures  Rendering

Crowd Simulation Models  Simplest model – Agent Based:  Capture Global Behavior w/ many interacting autonomous agents  Each person is represented by one agent  Chooses next state based on goal and neighbors  Pioneered by Craig Reynolds  Won 1998 (Technical) Academy Award Advance  T Gather Neighbors Draw Agent Update State s For Each Agent

Agent Based Simulations  Flocking  Craig Reylonds  SIGGRAPH1987  Social Forces Model  Dirk Helbing  Physics Review B 1995  Nature 2000  Reciprocal Velocity Obstacles  Van den Berg  I3D 2008

Agent Based Simulations  Flocking  Craig Reylonds  SIGGRAPH1987  Social Forces Model  Dirk Helbing  Physics Review B 1995  Nature 2000  Reciprocal Velocity Obstacles  Van den Berg  I3D 2008

Flocking  Seminal work in multi-agent movement  Assign simple force to each agent  Used in  Lion King  Batman Returns SeparationAlignmentCohesion

Boids - Continued  New forces can be added to incorporate more behaviors  Avoiding Obstacles  Collision Avoidance  Be Creative!

Boids Online  Visit:  And:

Agent Based Simulations  Flocking  Craig Reylonds  SIGGRAPH1987  Social Forces Model  Dirk Helbing  Physics Review B 1995  Nature 2000  Reciprocal Velocity Obstacles  Van den Berg  I3D 2008

Helbing’s Social Force Model  Very similar to boid model  Treats all agents as physical obstacles  Solves a = F/m where F is “social force”:  F ij – Pedestrian Avoidance  F iW – Obstacle (Wall) Avoidance Desired Velocity Current Velocity Avoiding Other Pedestrians Avoiding Walls

Social Force Model – Pedestrian Avoidance  r ij – d ij  Edge-to-edge distance  n ij – Vector pointing away from agent  A i *e [(r ij -d ij )/B i ]  Re pulsive force which is exponential increasing with distance  g(x)  x if agents are colliding, 0 otherwise  t ij – Vector pointing tangential to agent   V t ji – Tangential velocity difference  F iW is very similar Collision AvoidanceNon-penetrationSliding Force

Helbing - Continued  Noticed arching  Also observed in real crowds  Killed or injured people who experienced too much force (1,600 N/m) – became unresponsive obstacles  Noticed Faster-is-slower effect

Agent Based Simulations  Flocking  Craig Reylonds  SIGGRAPH1987  Social Forces Model  Dirk Helbing  Physics Review B 1995  Nature 2000  Reciprocal Velocity Obstacles  Van den Berg  I3D 2008

Reciprocal Velocity Obstacles  Applied ideas from robotics to crowd simulations  Basic idea:  Given n agents with velocities, find velocities will cause collisions  Avoid them!  Planning is performed in velocity space  RVO A B (v B, v A ) = {v’ A | 2v’ A – v A  VO A B (v B )}

23 RVO: Planning In Velocity Space

24 RVO: Planning In Velocity Space

R A + R B 25 RVO: Planning In Velocity Space

(V A + V B )/2 RVO: Planning In Velocity Space 26

27 RVO: Planning In Velocity Space

28 RVO: Planning In Velocity Space

29

30 RVO: Planning In Velocity Space

31

RVO: Planning In Velocity Space 32

Videos  12 Agents in a Circle

Videos  1,000 agent’s in a circle

Related data-structures  KD-trees  Allowing efficient gathering of nearby neighbors O(log n)  Roadmaps & A*  Allows global navigation around obstacles

Roadmaps 1. Create roadmap in free space 2. Find visible source nodes 3. Graph Search to find path to Destination  A* is very popular graph search algorithm 36

Video  1,000 people leaving Sitterson Hall  Uses RVO, Roadmaps, A* and Kd-Trees

Outline  Animation basics  Key framing  Simulation Loop  How to move one man  Walk Cycle  IK  How to move one thousand  Crowd Models  Collision Avoidance  Data Structures  Rendering

Rendering Crowds  Traditional OpenGL pipeline can be too slow for 1000s of agents  View Culling helps, but often not enough  Need Level-of-Detail techniques  Use models with more polygons up close, less when far away

Imposters 40  Replace Far off agents with an oriented texture  Several Issues  “Popping”  Uniformity  Lighting  Shadows  Many issues addressed in recent works

Questions ?