Seminar crowd simulation
1 / 35

Seminar Crowd Simulation - PowerPoint PPT Presentation

  • Uploaded on

Seminar Crowd Simulation. Introduction. Who am I?. Roland Geraerts Assistant professor Robotics background Research on path planning and crowd simulation. Who are you?. Master GMTE? Course Game Design? Course Motion and Manipulation? Interest in Games? Why do you follow the seminar?

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

PowerPoint Slideshow about ' Seminar Crowd Simulation' - margo

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

Who am i
Who am I?

  • Roland Geraerts

    • Assistant professor

    • Robotics background

    • Research on path planning andcrowd simulation

Who are you
Who are you?

  • Master GMTE?

  • Course Game Design?

  • Course Motion and Manipulation?

  • Interest in Games?

  • Why do you follow the seminar?

  • Interest in thesis projects?

  • Who has exciting hobbies?

Goal of the seminar
Goal of the seminar

  • To obtain knowledge of current research in path planning and crowd simulation

    • Study and discuss papers

  • To understand the limitations of the current techniques

    • Determine the limitations and open problems in the papers

  • To become a very critical reader

    • Hand in many assessments of papers

  • To understand the state-of-the-art in current games and how this could be improved

    • Study path planning in existing games

    • Write paper about the applicability of new techniques

Why this seminar
Why this seminar

  • Path planning and crowd simulation are important research topics in Utrecht

    • Mark Overmars, Roland Geraerts, Frank van der Stappen, PhD students (Ioannis Karamouzas, Saskia Groenewegen)

    • Relation to animation research

  • Gate project

    • 19 million Euro Dutch project on game technology and applications

  • Thesis projects

  • Future PhD positions

Practical aspects
Practical aspects

  • Meetings

    • Tuesday 13.15-15.00 BBL-069

    • Friday 15.15-17.00 BBL-071

  • Presence is mandatory

    • If you cannot come for a good reason

      • Let me know beforehand

      • Hand in abstracts before meeting

  • Website


    • Check regularly for announcements and changes

    • Download papers

    • Find the secret page


  • Present two papers

    • Each 30 minutes plus 15 minutes discussion

  • Write paper abstracts/assessments

    • Read papers before the presentation

    • One page per paper

      • Abstract in your own words

      • Critical assessment

        • Main limitations and open problems

        • Surprising and innovative elements

        • Do the authors claim too much, make many assumptions, draw conclusions that are too general, not correctly setup their experiments?

      • Two-three questions or points for discussion

    • Hand in the two pages (on paper) on the day of the presentation

      • Use headings: Summary, Assessment, Questions


  • Study path planning in a modern game

    • Investigate what goes wrong (path planning, crowds)

    • Make a video (.wmv to make sure it works)

    • Make 3 slides

    • Bring them with you next Tuesday (May 3) for discussion

  • Paper on path planning/crowd simulation in games

    • At the end of the seminar (July 1)

    • Write a paper (10 pages) on how the new techniques can be used in games

    • Based on the problems in two example videos


  • Game study 5%

  • Presentations 15% + 25%

  • Abstracts 20%

  • Paper 25%

  • Active participation 10%

  • To qualify for second change exam

    • The original mark should at least be a 4;

    • Actively participate in at least 75% of the meetings;

    • Give both presentations satisfactory.

Path planning
Path planning

  • Goal: bring characters (or a camera) from A to B

    • Also vehicles, animals, camera, …

  • Requirement: fast and flexible

    • Real-time planning for thousands of characters

    • Individuals and groups

    • Dealing with local hazards

    • Different types of environments

  • Requirement: visually convincing paths

    • The way humans move

    • Smooth

    • Short

    • Keep some distance (clearance) to obstacles

    • Avoid other characters

Do we need a new path planning algorithm
Do we need a new path planning algorithm?

typical differences

Nr. entities a few robots many characters

Nr. DOFs many DOFs a few DOFs

CPU time much time available little time available

Interaction anti-social social

Type pathnice path visually convincing path

Environment 2D (or terrain), 3D 2D, 2.5D (e.g. bridges)

Algorithms can be simple must be simple

Correctness fool-proof may be incorrect

Path planning algorithms in games
Path planning algorithms in games

  • Networks of waypoints

  • Scripting

  • Grid-based A* Algorithms

  • Navigation meshes

  • Local approaches

  • Flocking

  • Cheating

Errors in path planning1
Errors in path planning

  • Networks of waypoints are incorrect

    • Hand designed

    • Do not adapt to changes in the environment

    • Do not adapt to the type of character

  • Local methods fail to find a route

    • Keep stuck behind objects

    • Lead to repeated motion

  • Groups split up

    • Not planned as a coherent entity

  • Paths are unnatural

    • Not smooth

    • Stay too close to network/obstacles

  • Methodology is not general enough to handle all problems

What we study in the seminar
What we study in the seminar

  • Methodology/framework that solved these problems

    • Developed in Utrecht (still in development)

    • Applications (characters, cameras, groups, crowds, …)

  • Local character behavior

    • How do people walk toward locations

    • How do they avoid each other

    • Social force models

  • Crowd behavior

    • Flow models

    • Planning approaches

    • Crowd evaluation

    • Massive crowds

    • Crowd rendering

The explicit corridor map full generic representation free space
The Explicit Corridor Map: Full/generic representation free space

  • The Explicit Corridor Map

    • Navigation mesh, or: a system of collision-free corridors

    • Data structure: Medial axis + closest points

    • Computed efficiently by using the GPU

Explicit Corridor Map (2D)

Explicit Corridor Map (multi-layered)

The explicit corridor map experiments
The Explicit Corridor Map:Experiments

Footprint and Explicit Corridor Map: 0.3s

City environment

Corridors macro scale
Corridors (macro scale)

  • Computing a corridor: provides a global route Connect the start and goal to the Medial axis

    • Find corresponding shortest path in graph

    • Corridor: concatenation of cells of the ECM


A corridor with small obstacles

The indicative route method meso scale introducing flexibility
The Indicative Route Method (meso scale):Introducing flexibility

  • A path planning algorithm should NOT compute a path

    • A one-dimensional path limits the character’s freedom

    • Humans don’t do that either

  • It should produce

    • An Indicative/Preferred Route

      • Guides character to goal

    • A corridor

      • Provides a global (homotopic) route

      • Allows for flexibility

The Indicative Route Method (meso scale):Introducing flexibility

  • “Algorithm”

    • Compute a collision free indicative route from A to B

    • Compute a corridor containing the route

    • Move an attraction point along the indicative route

      • The attraction point attracts the character

      • The boundary of the corridor pushes it away

      • Other characters and local hazards push the character away

Local method micro scale
Local method (micro scale)

  • Boundary force

    • Find closest point on corridor boundary

    • Perpendicular to boundary

    • Increases to infinity when closer to boundary

    • Force is 0 when clearance is large enough (or when on the MA)

      • Depends on the maximal speed of the character

      • Should be chosen such as to avoid oscillations

  • Steering force

    • Towards attraction point

    • Can be constant

  • Obtain path

    • Force leads to an acceleration term

    • Integration over time, update velocity/position/attraction point

    • Yields a smooth (C1-continuous) path

Irm method
IRM method

  • Resulting vector field

    • Indicative Route is short path

Irm method experiments
IRM method:Experiments

City environment

Corridor and path: 2.8ms

Crowd simulation
Crowd simulation

  • Method can plan paths for a large number of characters

    • Force model is used for local avoidance

    • Path variation models are integrated, adding more realism

    • Additional models can be incorporated easily

  • Goal oriented behavior

    • Each character has its own long term goal

    • When a character reaches its goal, a new goal is chosen

  • Wandering behavior

    • Attraction points do a random walk on the underlying graph

Collision avoidance model
Collision-avoidance model

  • Particle-based approaches

    • E.g. Helbing model

    • When characters get close to each other they push each other away

    • Force depends on the distance between their personal spaces and whether they can see each other

  • Disadvantages

    • Reaction is late

    • Also reaction when no collision

    • Artifacts

Goal force

Avoidance force

Resulting force

Improved collision avoidance model
Improved collision-avoidance model

  • Collision-predication approach

    • When characters are on collision course we compute the positions at impact (of personal spaces)

    • Direction depends on their relative position at impact

    • Force depends on the distance to impact

    • Care must be taken when combining forces

Goal force

Avoidance force

Resulting force

Improved collision avoidance model1
Improved collision-avoidance model

  • Advantages

    • Characters react earlier (like in real life)

    • Characters choose routes that deviate only marginally from original route (energy efficient)

    • Emergent behavior, e.g. lane formation and characters grouping

    • Fast (thousands of characters in real time)


Collision prediction

Current work
Current work

  • Also allow speed changes

  • Deal with small groups

Further work
Further work

  • Get different types of high-level crowd behavior

    • Wandering

    • Shopping

    • Hanging around

  • Combine different types of moving entities

    • People

    • Bikes

    • Cars

    • Animals

  • Path planning in 3D

First assignment
First assignment

  • Study path planning/crowd simulation in a modern game

    • Pick a game in which there is a lot of motion

      • Dynamic changes in the environment

      • Computer controlled characters (enemies, buddies, …)

      • Groups of characters (e.g. in RTS games)

      • Crowds (e.g. GTA, Assassin’s Creed, Sim games)

    • Investigate what goes wrong

      • Deliberately try to create problems

        • Destroy objects/buildings

        • Stand in the way of moving characters

        • Park a car on the sidewalks

      • Look at

        • Quality of motion

        • Occurrence of collisions

        • Repeated motions (lack of variation), …

    • Bonus points for spotting errors in 2.5D/3D games, dynamic situations

First assignment1
First assignment

  • Study path planning/crowd simulation in a modern game

    • Make a video (preferably a .wmv file)

      • Fraps

      • Use a camera or webcam

      • Sometimes in-game possible

    • Make (at least) three slides in PowerPoint

      • Name of the game, your name, picture, type of game

      • Video(s)

      • Description of the main things that go wrong and why (according to you)

    • Take with you on USB stick next Tuesday!

      • Explain and discuss (5 - 7.5 minutes)