Skip to main content

PyTorch implementation of DeepSocialForce.

Project description

Tests
Executable Book documentation.
Deep Social Force (arXiv:2109.12081).

Deep Social Force

Deep Social Force
Sven Kreiss, 2021.

The Social Force model introduced by Helbing and Molnar in 1995 is a cornerstone of pedestrian simulation. This paper introduces a differentiable simulation of the Social Force model where the assumptions on the shapes of interaction potentials are relaxed with the use of universal function approximators in the form of neural networks. Classical force-based pedestrian simulations suffer from unnatural locking behavior on head-on collision paths. In addition, they cannot model the bias of pedestrians to avoid each other on the right or left depending on the geographic region. My experiments with more general interaction potentials show that potentials with a sharp tip in the front avoid locking. In addition, asymmetric interaction potentials lead to a left or right bias when pedestrians avoid each other.

Install and Run

# install from PyPI
pip install 'socialforce[dev,plot]'

# or install from source
pip install -e '.[dev,plot]'

# run linting and tests
pylint socialforce
pycodestyle socialforce
pytest tests/*.py

Ped-Ped-Space Scenarios

Emergent lane forming behavior with 30 and 60 pedestrians:

Download TrajNet++ Data

The Executable Book requires some real-world data for the TrajNet++ section. This is how to download and unzip it to the right folder:

wget -q https://github.com/vita-epfl/trajnetplusplusdata/releases/download/v4.0/train.zip
mkdir data-trajnet
unzip train.zip -d data-trajnet

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

socialforce-0.2.3.tar.gz (15.8 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page