implicit crowds: optimization integrator for robust crowd ... implicit power-law crowds problem:...

Download Implicit Crowds: Optimization Integrator for Robust Crowd ... IMPLICIT POWER-LAW CROWDS Problem: Apply

Post on 13-Jul-2020

0 views

Category:

Documents

0 download

Embed Size (px)

TRANSCRIPT

  • Ioannis Karamouzas1, Nick Sohre2, Rahul Narain2, Stephen J. Guy2

    1Clemson University

    2University of Minnesota

    IMPLICIT CROWDS:

    OPTIMIZATION INTEGRATOR FOR ROBUST CROWD SIMULATION

  • COLLISION AVOIDANCE IN CROWDS

    Given desired velocities, how should agents navigate around each other?

    2

  • COLLISION AVOIDANCE IN CROWDS

    Given desired velocities, how should agents navigate around each other?

    3

  • LOCAL COLLISION AVOIDANCE

    Adding Realism

    • Vision-based approaches [Ondřej et al. 2010, Kapadia et al. 2012, Hughes et al. 2015, Dutra et al. 2017]

    • Probabilistic approaches [Wolinski et al. 2016]

    • …..

    4 [Wolinski et al. 2016] [Kapadia et al. 2012]

    [Yu et al. 2012]

  • LOCAL COLLISION AVOIDANCE

    Force-based methods [Reynolds 1987, 1999; Helbing et al. 2000; Pelechano et al.

    2007, …]

    • Require very small time steps for

    stability

    Velocity-based methods [van den Berg et al. 2008, 2011; Pettré et al 2011, …]

    • Overly conservative behavior

    5

    [8agent/ttc_0.25] ORCA

    Δt = 0.1s

  • DESIDERATA

    We seek a generic technique for multi-agent navigation that

    • guarantees collision-free motion

    • is robust to variations in scenario, density, time step

    • exhibits high-fidelity behavior

    • can update at footstep rates (0.3-0.5 s)

    6

  • OUR CONTRIBUTIONS

    1. General form of collision avoidance behaviors d𝐯

    d𝑡 = −

    𝜕𝑅 𝐱, 𝐯

    𝜕𝐯 supporting optimization-based implicit integration

    2. Application to state-of-the-art power law model

    𝑅 𝐱, 𝐯 ∝ 𝜏(𝐱, 𝐯)−𝑝

    for practical crowd simulations

    7

  • I. OPTIMIZATION INTEGRATOR FOR CROWDS

    8

  • IMPLICIT INTEGRATION

    𝐱𝑛+1 − 𝐱𝑛 = 𝐯𝑛+1∆𝑡, 𝐌 𝐯𝑛+1 − 𝐯𝑛 = 𝐟𝑛+1∆𝑡

    • Unconditionally stable, but

    9

    • 𝑑

    𝑑𝑡

    𝐱 𝐯

    = 𝐯

    𝐌−1𝐟(𝐱, 𝐯) ⟺

    [Baraff and Witkin, 1998]

  • IMPLICIT INTEGRATION

    𝐱𝑛+1−𝐱𝑛 = 𝐯𝑛+1∆𝑡, 𝐌 𝐯𝑛+1 − 𝐯𝑛 = 𝐟𝑛+1∆𝑡

    • Unconditionally stable, but

    • Need to solve a non linear system

    • Slow (but we can use large time steps)

    10

    • 𝑑

    𝑑𝑡

    𝐱 𝐯

    = 𝐯

    𝐌−1𝐟(𝐱, 𝐯) ⟺

    [Kaufman et al. 2014]

  • OPTIMIZATION INTEGRATORS

    As long as forces are conservative:

    𝐟 𝐱 = − d𝑈 𝐱

    d𝐱 ,

    we can express backward Euler in optimization

    form [Martin et al. 2011; Gast et al. 2015]:

    𝐱𝑛+1 = arg min 𝐱

    1

    2∆𝑡2 𝐱 − ෤𝐱 𝐌

    2 + 𝑈(𝐱)

    Interpretation: tradeoff between conserving

    momentum and reducing potential energy

    11

    [Martin et al. 2011]

    [Bouaziz et al. 2014]

  • OPTIMIZATION INTEGRATORS

    As long as forces are conservative:

    𝐟 𝐱 = − d𝑈 𝐱

    d𝐱 ,

    we can express backward Euler in optimization

    form [Martin et al. 2011; Gast et al. 2015]:

    𝐱𝑛+1 = arg min 𝐱

    1

    2∆𝑡2 𝐱 − ෤𝐱 𝐌

    2 + 𝑈(𝐱)

    Interpretation: tradeoff between maintaining

    velocity and reducing potential energy

    12

    [Bouaziz et al. 2014]

    [Martin et al. 2011]

  • OPTIMIZATION INTEGRATORS

    𝐱𝑛+1 = arg min 𝐱

    1

    2∆𝑡2 𝐱 − ෤𝐱 𝐌

    2 + 𝑈(𝐱)

    Why this is good:

    • Simple and fast algorithms (e.g. gradient descent, Gauss-

    Seidel) can be given guarantees

    • Highly nonlinear forces can be used without linearization

    • Lots of recent advances in optimization for data mining,

    machine learning, image processing, …

    13

    [Fratarcangeli et al. 2016]

  • NON-CONSERVATIVE FORCES

    14

    Conservative potentials 𝑈(𝐱) can only model position-dependent forces

  • NON-CONSERVATIVE FORCES

    15

    Crowd forces depend both on positions and velocities!

    Conservative potentials 𝑈(𝐱) can only model position-dependent forces

    • Humans anticipate

    • People anticipate future trajectories of others [Cutting et al. 2005, Olivier et al. 2012; Karamouzas et al. 2014]

    • Brains have special neurons for estimating collisions [Gabbiani 2002]

  • ANTICIPATORY FORCES

    16

    Hypothesis: Multi-agent interactions can be expressed as

    𝐟 𝐱, 𝐯 = − 𝜕𝑅 𝐱, 𝐯

    𝜕𝐯 where 𝑅 is an anticipatory potential that drives agents away from high-cost velocities

    (This is analogous to dissipation potentials [Goldstein 1980] in classical mechanics)

  • OPTIMIZATION INTEGRATOR FOR

    NON-CONSERVATIVE FORCES

    17

    Anticipatory forces

    𝐯𝑛+1 = arg min 𝐯

    1

    2 𝐯 − ෤𝐯 𝐌

    2 + 𝑅(𝐱 + 𝐯∆𝑡, 𝐯)∆𝑡

    • First-order accurate, equivalent to previous formula if 𝑅 = 0

    • 𝑈(∙) + 𝑅(∙)∆𝑡 is analogous to the “effective interaction potential” in symplectic integrators [Kane et al. 2000; Kharevych et al. 2006]

    • Simple interpretation: tradeoff between conserving momentum, reducing 𝑈, and reducing 𝑅

  • OPTIMIZATION INTEGRATOR FOR

    NON-CONSERVATIVE FORCES

    Anticipatory + conservative forces

    𝐯𝑛+1 = arg min 𝐯

    1

    2 𝐯 − ෤𝐯 𝐌

    2 + 𝑈(𝐱 + 𝐯∆𝑡) + 𝑅(𝐱 + 𝐯∆𝑡, 𝐯)∆𝑡

    • First-order accurate

    • 𝑈(∙) + 𝑅(∙)∆𝑡 is analogous to the “effective interaction potential” in symplectic integrators [Kane et al. 2000; Kharevych et al. 2006]

    • Simple interpretation: tradeoff between maintaining velocity, reducing 𝑈, and reducing 𝑅

    18

  • SOME EXISTING MODELS

    Alignment behavior in boids [Reynolds 1987]:

    𝐟𝑖𝑗 = −𝑤 𝐱𝑖𝑗 𝐯𝑖𝑗 ⟺ 𝑅𝑖𝑗 = 𝑤 𝐱𝑖𝑗 𝐯𝑖𝑗 2

    Velocity obstacles [van den Berg et al 2011]:

    𝐯𝑖𝑗 ∈ VO 𝐱𝑖𝑗 ⟺ 𝑅𝑖𝑗 = ቊ ∞ if 𝐯𝑖𝑗 ∈ VO 𝐱𝑖𝑗

    0 otherwise

    Power law model [Karamouzas et al 2014]:

    𝑅𝑖𝑗 ∝ 𝜏(𝐱𝑖𝑗 , 𝐯𝑖𝑗) −𝑝

    19

  • SOME EXISTING MODELS

    Alignment behavior in boids [Reynolds 1987]:

    𝐟𝑖𝑗 = −𝑤 𝐱𝑖𝑗 𝐯𝑖𝑗 ⟺ 𝑅𝑖𝑗 = 𝑤 𝐱𝑖𝑗 𝐯𝑖𝑗 2

    Velocity obstacles [Fiorini and Shiller 1998]:

    𝐯𝑖𝑗 ∈ VO 𝐱𝑖𝑗 ⟺ 𝑅𝑖𝑗 = ቊ ∞ if 𝐯𝑖𝑗 ∈ VO 𝐱𝑖𝑗

    0 otherwise

    Power law model [Karamouzas et al 2014]:

    𝑅𝑖𝑗 ∝ 𝜏(𝐱𝑖𝑗 , 𝐯𝑖𝑗) −𝑝

    20

    𝐱𝑖

    𝐱𝑗

    𝑣𝑥

    𝑣 𝑦

    VO

  • SOME EXISTING MODELS

    Alignment behavior in boids [Reynolds 1987]:

    𝐟𝑖𝑗 = −𝑤 𝐱𝑖𝑗 𝐯𝑖𝑗 ⟺ 𝑅𝑖𝑗 = 𝑤 𝐱𝑖𝑗 𝐯𝑖𝑗 2

    Velocity obstacles [Fiorini and Shiller 1998]:

    𝐯𝑖𝑗 ∈ VO 𝐱𝑖𝑗 ⟺ 𝑅𝑖𝑗 = ቊ ∞ if 𝐯𝑖𝑗 ∈ VO 𝐱𝑖𝑗

    0 otherwise

    What is 𝑅𝑖𝑗 for humans?

    Power law model [Karamouzas et al 2014]

  • SOME EXISTING MODELS

    Alignment behavior in boids [Reynolds 1987]:

    𝐟𝑖𝑗 = −𝑤 𝐱𝑖𝑗 𝐯𝑖𝑗 ⟺ 𝑅𝑖𝑗 = 𝑤 𝐱𝑖𝑗 𝐯𝑖𝑗 2

    Velocity obstacles [Fiorini and Shiller 1998]:

    𝐯𝑖𝑗 ∈ VO 𝐱𝑖𝑗 ⟺ 𝑅𝑖𝑗 = ቊ ∞ if 𝐯𝑖𝑗 ∈ VO 𝐱𝑖𝑗

    0 otherwise

    What is 𝑅𝑖𝑗 for humans?

    Power law model [Karamouzas et al 2014]

  • II. IMPLICIT CROWDS USING

    THE POWER-LAW MODEL

    23

  • POWER-LAW MODEL

    For each pair of agents:

    • Compute time to collision 𝜏 𝐱, 𝐯

    • Compute potential 𝑅(𝐱, 𝐯) ∝ 𝜏 𝐱, 𝐯 −𝑝

    24

    Collisions occurs when

    𝐱𝑖𝑗 + 𝐯𝑖𝑗𝜏 = r𝑖 + r𝑗

    𝐱𝑖 𝐱𝑗

    𝐯𝑖 𝐯𝑗

    [Karamouzas et al. 2014]

  • POWER-LAW MODEL

    25

    𝐱𝑖 𝐱𝑗

    𝐯𝑖 𝐯𝑗

    For each pair of agents:

    • Compute time to collision 𝜏 𝐱, 𝐯

    • Compute potential 𝑅(𝐱, 𝐯) ∝ 𝜏 𝐱, 𝐯 −𝑝

    Collisions occurs when

    𝐱𝑖𝑗 + 𝐯𝑖𝑗𝜏 = r𝑖 + r𝑗

    [Karamouzas et al. 2014]

  • POWER-LAW MODEL

    26

    𝐱𝑖 𝐱𝑗

    𝐯𝑖 𝐯𝑗

    For each pair of agents:

    • Compute time to collision 𝜏 𝐱, 𝐯

    • Compute potential 𝑅(𝐱, 𝐯) ∝ 𝜏 𝐱, 𝐯 −𝑝

    Collisions occurs when

    𝐱𝑖𝑗 + 𝐯𝑖𝑗𝜏 = r𝑖 + r𝑗

    [Karamouzas et al. 2014]

  • POWER-LAW MODEL

    27

    𝐱𝑖 𝐱𝑗