Crowd Simulation INFOMCRWS Introduction to Crowd Simulation Wouter
- Slides: 33
Crowd Simulation (INFOMCRWS) Introduction to Crowd Simulation Wouter van Toll November 15, 2017
Contents • Recap – Path planning and navigation meshes • Overview of crowd simulation research – Multi-level crowd simulation – Other topics – Open problems May 25, 2021 INFOMCRWS: Introduction to Crowd Simulation 2
RECAP Path planning and navigation meshes May 25, 2021 INFOMCRWS: Introduction to Crowd Simulation 3
Crowd simulation Virtual environment (3 D) Crowd simulation (often 2 D) Fancy visualization (3 D) May 25, 2021 INFOMCRWS: Introduction to Crowd Simulation 4
Crowd simulation • Many applications (entertainment + serious) Planet Coaster (Frontier) Grand Depart 2015 (Movares), using our software • Large crowds Many queries – We want real-time performance May 25, 2021 INFOMCRWS: Introduction to Crowd Simulation 5
Region-based path planning • Navigation mesh = Regions + (Dual) Graph – Many spatial subdivisions exist – Grids are easiest, but imperfect • Coverage, connectivity, storage Trapezoidal map May 25, 2021 Triangulation INFOMCRWS: Introduction to Crowd Simulation Grid 6
Region-based path planning Query Shortest path in the graph Sequence of regions Indicative route (via funnel algorithm ) Simulation loop Q: Shortest path? May 25, 2021 INFOMCRWS: Introduction to Crowd Simulation 7
Path planning in games • Trend – – Graphs, grids Navigation meshes Manual Automatic Static Dynamic Increasingly large crowds • Typical errors – – Incorrect graphs Unnatural paths Poor response to dynamic updates Insufficient local methods / collision avoidance May 25, 2021 INFOMCRWS: Introduction to Crowd Simulation 8
TOWARDS AN OVERVIEW OF CROWD SIMULATION METHODS A Generic Categorization of Research Areas May 25, 2021 INFOMCRWS: Introduction to Crowd Simulation 9
Overview (1/6) Path planning Algorithms: A*, Dijkstra, . . . May 25, 2021 Data structures: Navigation meshes, grids, . . . INFOMCRWS: Introduction to Crowd Simulation 10
Path planning – Examples • Shortest path • Other criteria Funnel algorithm: Shortest path from a corridor Density-based (van Toll et al. , 2012) May 25, 2021 Stealth-based (Schager & Geraerts, 2010) INFOMCRWS: Introduction to Crowd Simulation 11
Overview (2/6) Path planning Algorithms: A*, Dijkstra, . . . Data structures: Navigation meshes, grids, . . . Local movement (“steering”) Collision avoidance May 25, 2021 Groups, coherence, social rules, . . . INFOMCRWS: Introduction to Crowd Simulation 12
Local movement: Examples Social forces (Helbing & Molnár, 1995) Flocking (Reynolds, 1987) Vision-based collision avoidance (Moussaïd et al, 2010) Velocity obstacles (van den Berg et al. , 2009+) May 25, 2021 INFOMCRWS: Introduction to Crowd Simulation 13
Local movement: More examples Streams (van Goethem et al. , 2015) Social groups (Kremyzas et al. , 2016) Coherent groups (Kamphuis & Overmars, 2004) May 25, 2021 INFOMCRWS: Introduction to Crowd Simulation 14
Overview (3/6) Path planning Algorithms: A*, Dijkstra, . . . Data structures: Indicative route Navigation meshes, grids, . . . Path following Local movement Collision avoidance May 25, 2021 Groups, coherence, social rules, . . . INFOMCRWS: Introduction to Crowd Simulation 15
Intermezzo: Weighted regions • What if the environment is more complex than “walkable + obstacles”? – Polygonal areas with (personal) costs • Find minimum-cost path? – Unsolvable in the Algebraic Computation Model over the Rational Numbers – Approximation algorithms • Path following May 25, 2021 MIRAN (Jaklin et al. , 2013) INFOMCRWS: Introduction to Crowd Simulation 16
Overview (4/6) Path planning Visualization Animation Rendering Path following Local movement Simulation loop May 25, 2021 INFOMCRWS: Introduction to Crowd Simulation 17
Overview (5/6) High-level planning Path planning Modelling Logic: BDI, rules, memory, . . . Path following Local movement Fixed steps of 0. 1 s Simulation loop As fast as possible Animation loop Visualization May 25, 2021 INFOMCRWS: Introduction to Crowd Simulation 18
Overview (6/6) High-level planning Path following Local movement Visualization May 25, 2021 INFOMCRWS: Introduction to Crowd Simulation 19
Multi-level planning • Advantages? Path planning Path following Local movement – Split a big problem into simpler components – Mix and match various algorithms – Different behaviour per character • Disadvantages? – Choices in one level affect behavior in lower levels • When to reconsider these choices? (e. g. re-planning) May 25, 2021 INFOMCRWS: Introduction to Crowd Simulation 20
Alternative: Potential field • Continuous field of forces – – Goal attracts, obstacles repel Follow the direction of steepest descent Common implementation: Grid In case of moving characters (obstacles): update potential field each frame Robot motion planning (Latombe, 1991) May 25, 2021 INFOMCRWS: Introduction to Crowd Simulation 21
Alternative: Potential field • Advantages – Unifies global and local movement – Re-usable for similar characters Good for high-density crowds Treuille et al. , 2006 • Disadvantages – Grid implementation – Different potential field for each goal / each character type – Local minima Narain et al. , 2009 • Can be avoided, but (even) more expensive May 25, 2021 INFOMCRWS: Introduction to Crowd Simulation 22
OTHER TOPICS A mixed bag May 25, 2021 INFOMCRWS: Introduction to Crowd Simulation 23
Coordination and re-planning Linear programming (Karamouzas et al. , 2013) Dynamic updates + visibility-based re-planning (van Toll et al. , 2015) May 25, 2021 INFOMCRWS: Introduction to Crowd Simulation 24
Moving through a dense crowd • Find a path that uses gaps between characters – Global becomes local? Torso crowds (Stüvel et al. , 2015) May 25, 2021 INFOMCRWS: Introduction to Crowd Simulation 25
Multi-threading • In a simulation step, many characters do “the same thing” at the same time – Allows parallel programming – GPU: thousands of tasks at the same time • Advantage: performance • Disadvantage (GPU): – What about rendering? May 25, 2021 INFOMCRWS: Introduction to Crowd Simulation 26
Evaluation • How to compare different methods? 1. Generic definitions 2. Objective quality metrics 3. Scenarios that cover the problem space 4. Conclusions(? ) Steer. Bench (Singh et al. , 2009) A comparative study of navigation meshes (van Toll et al. , 2016) May 25, 2021 INFOMCRWS: Introduction to Crowd Simulation 27
Evaluation • How to prove that a simulation is close to reality? • Compare to reality!. . . but how? – Individual trajectories – Global trends – Density/speed relation Lerner et al. , 2009 • When is a conclusion general enough? May 25, 2021 INFOMCRWS: Introduction to Crowd Simulation 28
CLOSING COMMENTS */ May 25, 2021 INFOMCRWS: Introduction to Crowd Simulation 29
Summary High-level planning Coordination, re-planning Path planning or: Potential fields Path following Local movement Visualization May 25, 2021 Multi-threading / GPU Evaluation INFOMCRWS: Introduction to Crowd Simulation 30
Remaining challenges • Navigation: see previous lecture • Problems within this paradigm – Reconsider global paths due to local hazards – High-level coordination • Long-term goals – Reliable validation • Human-like simulation for any scenario? – Huge crowds (≥ 1 M) in real-time – Crowd prediction during a real-time event May 25, 2021 INFOMCRWS: Introduction to Crowd Simulation 31
Next time • Explanation of our crowd simulation software • Tutorial to get started with Assignment 2 May 25, 2021 INFOMCRWS: Introduction to Crowd Simulation 32
Preparation for next time • If you haven’t done so yet. . . – Choose a non-taken paper (1 -20) to present – Form teams for Assignments 1 and 2 • Prepare for the tutorial – Bring a (Windows) laptop! – Install Unity – Read up on basic Unity usage May 25, 2021 See website INFOMCRWS: Introduction to Crowd Simulation 33
- Wouter slegers
- Langrangian
- Wouter verkerke
- Wouter van ooijen
- Wouter bouwman relatie
- Maarten driessen
- Wouter van ooijen
- Wouter hulsbergen
- Wouter bosmans
- Wouter verkerke
- Bestuurskunde en publiek management
- Wouter devloo
- Wouter arrazola de oñate
- Wouter deseyn
- Wouter van ooijen
- Wouter van heusden
- Wouter akema
- Wouter de cock
- Wouter stegeman
- Wouter van der zwan
- Introduction to modeling and simulation
- Pengertian pemodelan dan simulasi
- Introduction to business analytics using simulation
- Glittering generalities propaganda technique
- The chief determinant of popularity in high school is:
- Bias through selection and omission examples
- Bias through statistics and crowd counts examples
- Examples of conventional crowds
- Conventional crowd
- Many crowd the savior's kingdom
- Crip gangs
- Bias through statistics and crowd counts examples
- Machine platform crowd summary
- Strategy crowd