physics-based-pedestrian-modeling
Python package to create physics-based pedestrian models from crowd measurements
Science Score: 67.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 9 DOI reference(s) in README -
✓Academic publication links
Links to: researchgate.net, scholar.google, aps.org -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (10.3%) to scientific vocabulary
Repository
Python package to create physics-based pedestrian models from crowd measurements
Basic Info
- Host: GitHub
- Owner: c-pouw
- License: bsd-3-clause
- Language: Python
- Default Branch: master
- Homepage: https://c-pouw.github.io/physics-based-pedestrian-modeling/
- Size: 8.03 MB
Statistics
- Stars: 3
- Watchers: 2
- Forks: 0
- Open Issues: 0
- Releases: 2
Metadata Files
README.md
Data-driven physics-based modeling of pedestrian dynamics
Python package to create physics-based pedestrian models from pedestrian trajectory measurements. This package is an implementation of the data-driven generalized pedestrian model presented in:
Pouw, C. A. S., van der Vleuten, G., Corbetta, A., & Toschi, F. (2024). Data-driven physics-based modeling of pedestrian dynamics. Phys. Rev. E 110 (6 Dec. 2024), p. 064102. DOI: 10.1103/PhysRevE.110.064102.
Abstract. We introduce a data-driven physics-based generalized Langevin model that allows robust and generic modeling of pedestrian behavior across any environment where extensive pedestrian trajectory data is available. Our model effectively captures the complex interplay between the deterministic movements and stochastic fluctuations associated with walking.
Documentation
- Documentation: https://c-pouw.github.io/physics-based-pedestrian-modeling.
Usage Notebook
This Goolge Colab notebook can be used to create pedestrians models without the need to install the package or download any data. The notebook can be used with all the environments discussed below, or can be easily adapted for any other data set.
- Notebook: https://colab.research.google.com/github/c-pouw/physics-based-pedestrian-modeling/blob/master/usagenotebooks/physpedquick_start.ipynb
Installation
You can install the package from PyPI
bash
pip install physics-based-pedestrian-modeling
Using the CLI
Run the main processing script for one of the available environments by overwriting the params variable with the configuration filename of the environment. The configuration filenames associated to every environment are specified below. These parameter configurations are handled by Hydra, see their documentation for more details .
bash
physped_cli params=CONFIGURATION_FILE_NAME
Similarly, we can overwrite all the other parameter directly from the command line. For instance, if we want to process the narrow corridor trajectories with a different noice intensity, e.g. sigma=0.7, we can simply run
bash
physped_cli params=narrow_corridor params.model.sigma=0.7
Creating the model for multiple parameter values can be achieved by adding -m and listing the variables. For example
bash
physped_cli -m params=narrow_corridor params.model.sigma=0.5,0.7,0.9
Available environments
Every environment discussed in the paper that relies a on public data set can be modeled using the cli by overwriting the 'params' variable with one of the following configuration filenames:
Narrow corridor
The dynamics of a single pedestrian walking undisturbed through a narrow corridor is possibly one of the simplest conceivable dynamics; an almost one-dimensional movement solely confined by two parallel corridor walls.
To model this environment we use the public pedestrian trajectory dataset: Crowdflow – diluted pedestrian dynamics in the Metaforum building of Eindhoven University of Technology.
Configuration filename: narrow_corridor
Intersecting walking paths
Trajectories of intersecting walking paths. We synthesize these from the narrow corridor trajectory data set for which half of the trajectories are rotated by 90 degrees. Note that these trajectories were measured in the dilute limit, consequently there is no interaction between them.
Configuration filename: intersecting_paths
Train station platforms
Complex dynamics of pedestrians walking across real-life train platforms.
Eindhoven train station track 3-4.
Configuration filename: eindhoven_pf34.
To model this environment we use the public pedestrian trajectory dataset: Data-driven physics-based modeling of pedestrian dynamics - dataset: Pedestrian trajectories at Eindhoven train station
Amsterdam Zuid train station track 1-2.
Configuration filename: asdz_pf12.
To model this environment we use the public pedestrian trajectory dataset: Trajectory data Amsterdam Zuid (track 1-2) underlying the PhD-thesis: Mind your passenger! The passenger capacity of platforms at railway stations in the Netherlands
License
- Free software: 3-clause BSD license
Contact
Owner
- Login: c-pouw
- Kind: user
- Repositories: 1
- Profile: https://github.com/c-pouw
Citation (CITATION.cff)
cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
- family-names: Pouw
given-names: Caspar Anton Simon
orcid: https://orcid.org/0000-0002-3041-4533
- family-names: van der Vleuten
given-names: Geert
- family-names: Corbetta
given-names: Alessandro
orcid: https://orcid.org/0000-0001-6979-3414
- family-names: Toschi
given-names: Federico
orcid: https://orcid.org/0000-0001-5935-2332
title: "Data-driven physics-based modeling of pedestrian dynamics"
version: 0.3.2
date-released: 2024-08-23
identifiers:
- doi
- 10.5281/zenodo.13362270
license: BSD-3-Clause
repository-code: "https://github.com/c-pouw/physics-based-pedestrian-modeling"
GitHub Events
Total
- Watch event: 4
- Delete event: 3
- Push event: 112
- Pull request event: 1
- Create event: 3
Last Year
- Watch event: 4
- Delete event: 3
- Push event: 112
- Pull request event: 1
- Create event: 3
Packages
- Total packages: 1
-
Total downloads:
- pypi 52 last-month
- Total dependent packages: 0
- Total dependent repositories: 0
- Total versions: 20
- Total maintainers: 1
pypi.org: physics-based-pedestrian-modeling
Python package to create physics-based pedestrian models from crowd measurements
- Documentation: https://physics-based-pedestrian-modeling.readthedocs.io/
- License: BSD-3-Clause
-
Latest release: 0.3.8
published 8 months ago
Rankings
Maintainers (1)
Dependencies
- actions/checkout v4 composite
- actions/setup-python v5 composite
- ad-m/github-push-action v0.8.0 composite
- actions/checkout v4 composite
- actions/setup-python v5 composite
- actions/upload-artifact v4 composite
- actions/checkout v4 composite
- actions/setup-python v5 composite
- pre-commit/action v3.0.0 composite
- actions/checkout v3 composite
- actions/setup-python v4 composite
- actions/checkout v4 composite
- actions/setup-python v5 composite
- 149 dependencies
- black ^24.3.0 develop
- codecov ^2.1.13 develop
- coverage ^7.4.4 develop
- fastparquet ^2024.2.0 develop
- flake8 ^7.0.0 develop
- isort ^5.13.2 develop
- nbstripout ^0.7.1 develop
- numpydoc ^1.7.0 develop
- polars ^0.20.19 develop
- pre-commit ^3.7.0 develop
- pre-commit-hooks ^4.6.0 develop
- pytest ^8.1.1 develop
- sphinx ^7.2.6 develop
- sphinx-copybutton ^0.5.2 develop
- sphinx-rtd-theme ^2.0.0 develop
- twine ^5.0.0 develop
- bokeh ^3.4.1
- hydra-colorlog ^1.2.0
- hydra-core ^1.3.2
- ipython ^8.23.0
- matplotlib ^3.8.4
- numpy ^1.26.4
- pandas ^2.2.2
- poetry-plugin-export ^1.7.1
- python ^3.10
- scipy ^1.13.0
- sdeint ^0.3.0
- tables ^3.9.2
- tqdm ^4.66.2
- alabaster ==0.7.16 development
- antlr4-python3-runtime ==4.9.3 development
- asttokens ==2.4.1 development
- attrs ==23.2.0 development
- babel ==2.15.0 development
- black ==24.4.2 development
- blosc2 ==2.6.2 development
- bokeh ==3.4.1 development
- build ==1.2.1 development
- cachecontrol ==0.14.0 development
- certifi ==2024.6.2 development
- cffi ==1.16.0 development
- cfgv ==3.4.0 development
- charset-normalizer ==3.3.2 development
- cleo ==2.1.0 development
- click ==8.1.7 development
- codecov ==2.1.13 development
- colorama ==0.4.6 development
- colorlog ==6.8.2 development
- contourpy ==1.2.1 development
- coverage ==7.5.3 development
- cramjam ==2.8.3 development
- crashtest ==0.4.1 development
- cryptography ==42.0.8 development
- cycler ==0.12.1 development
- decorator ==5.1.1 development
- distlib ==0.3.8 development
- docutils ==0.20.1 development
- dulwich ==0.21.7 development
- exceptiongroup ==1.2.1 development
- executing ==2.0.1 development
- fastjsonschema ==2.19.1 development
- fastparquet ==2024.5.0 development
- filelock ==3.14.0 development
- flake8 ==7.0.0 development
- fonttools ==4.53.0 development
- fsspec ==2024.6.0 development
- hydra-colorlog ==1.2.0 development
- hydra-core ==1.3.2 development
- identify ==2.5.36 development
- idna ==3.7 development
- imagesize ==1.4.1 development
- importlib-metadata ==7.1.0 development
- iniconfig ==2.0.0 development
- installer ==0.7.0 development
- ipython ==8.25.0 development
- isort ==5.13.2 development
- jaraco-classes ==3.4.0 development
- jedi ==0.19.1 development
- jeepney ==0.8.0 development
- jinja2 ==3.1.4 development
- jsonschema ==4.22.0 development
- jsonschema-specifications ==2023.12.1 development
- jupyter-core ==5.7.2 development
- keyring ==24.3.1 development
- kiwisolver ==1.4.5 development
- markdown-it-py ==3.0.0 development
- markupsafe ==2.1.5 development
- matplotlib ==3.9.0 development
- matplotlib-inline ==0.1.7 development
- mccabe ==0.7.0 development
- mdurl ==0.1.2 development
- more-itertools ==10.2.0 development
- msgpack ==1.0.8 development
- mypy-extensions ==1.0.0 development
- nbformat ==5.10.4 development
- nbstripout ==0.7.1 development
- ndindex ==1.8 development
- nh3 ==0.2.17 development
- nodeenv ==1.9.1 development
- numexpr ==2.10.0 development
- numpy ==1.26.4 development
- numpydoc ==1.7.0 development
- omegaconf ==2.3.0 development
- packaging ==24.1 development
- pandas ==2.2.2 development
- parso ==0.8.4 development
- pathspec ==0.12.1 development
- pexpect ==4.9.0 development
- pillow ==10.3.0 development
- pkginfo ==1.11.1 development
- platformdirs ==4.2.2 development
- pluggy ==1.5.0 development
- poetry ==1.8.3 development
- poetry-core ==1.9.0 development
- poetry-plugin-export ==1.8.0 development
- polars ==0.20.31 development
- pre-commit ==3.7.1 development
- pre-commit-hooks ==4.6.0 development
- prompt-toolkit ==3.0.46 development
- ptyprocess ==0.7.0 development
- pure-eval ==0.2.2 development
- py-cpuinfo ==9.0.0 development
- pycodestyle ==2.11.1 development
- pycparser ==2.22 development
- pyflakes ==3.2.0 development
- pygments ==2.18.0 development
- pyparsing ==3.1.2 development
- pyproject-hooks ==1.1.0 development
- pytest ==8.2.2 development
- python-dateutil ==2.9.0.post0 development
- pytz ==2024.1 development
- pywin32 ==306 development
- pywin32-ctypes ==0.2.2 development
- pyyaml ==6.0.1 development
- rapidfuzz ==3.9.3 development
- readme-renderer ==43.0 development
- referencing ==0.35.1 development
- requests ==2.32.3 development
- requests-toolbelt ==1.0.0 development
- rfc3986 ==2.0.0 development
- rich ==13.7.1 development
- rpds-py ==0.18.1 development
- ruamel-yaml ==0.18.6 development
- ruamel-yaml-clib ==0.2.8 development
- scipy ==1.13.1 development
- sdeint ==0.3.0 development
- secretstorage ==3.3.3 development
- shellingham ==1.5.4 development
- six ==1.16.0 development
- snowballstemmer ==2.2.0 development
- sphinx ==7.3.7 development
- sphinx-copybutton ==0.5.2 development
- sphinx-rtd-theme ==2.0.0 development
- sphinxcontrib-applehelp ==1.0.8 development
- sphinxcontrib-devhelp ==1.0.6 development
- sphinxcontrib-htmlhelp ==2.0.5 development
- sphinxcontrib-jquery ==4.1 development
- sphinxcontrib-jsmath ==1.0.1 development
- sphinxcontrib-qthelp ==1.0.7 development
- sphinxcontrib-serializinghtml ==1.1.10 development
- stack-data ==0.6.3 development
- tables ==3.9.2 development
- tabulate ==0.9.0 development
- tomli ==2.0.1 development
- tomlkit ==0.12.5 development
- tornado ==6.4.1 development
- tqdm ==4.66.4 development
- traitlets ==5.14.3 development
- trove-classifiers ==2024.5.22 development
- twine ==5.1.0 development
- typing-extensions ==4.12.2 development
- tzdata ==2024.1 development
- urllib3 ==2.2.1 development
- virtualenv ==20.26.2 development
- wcwidth ==0.2.13 development
- xattr ==1.1.0 development
- xyzservices ==2024.6.0 development
- zipp ==3.19.2 development
- antlr4-python3-runtime ==4.9.3
- asttokens ==2.4.1
- blosc2 ==2.6.2
- bokeh ==3.4.1
- build ==1.2.1
- cachecontrol ==0.14.0
- certifi ==2024.6.2
- cffi ==1.16.0
- charset-normalizer ==3.3.2
- cleo ==2.1.0
- colorama ==0.4.6
- colorlog ==6.8.2
- contourpy ==1.2.1
- crashtest ==0.4.1
- cryptography ==42.0.8
- cycler ==0.12.1
- decorator ==5.1.1
- distlib ==0.3.8
- dulwich ==0.21.7
- exceptiongroup ==1.2.1
- executing ==2.0.1
- fastjsonschema ==2.19.1
- filelock ==3.14.0
- fonttools ==4.53.0
- hydra-colorlog ==1.2.0
- hydra-core ==1.3.2
- idna ==3.7
- importlib-metadata ==7.1.0
- installer ==0.7.0
- ipython ==8.25.0
- jaraco-classes ==3.4.0
- jedi ==0.19.1
- jeepney ==0.8.0
- jinja2 ==3.1.4
- keyring ==24.3.1
- kiwisolver ==1.4.5
- markupsafe ==2.1.5
- matplotlib ==3.9.0
- matplotlib-inline ==0.1.7
- more-itertools ==10.2.0
- msgpack ==1.0.8
- ndindex ==1.8
- numexpr ==2.10.0
- numpy ==1.26.4
- omegaconf ==2.3.0
- packaging ==24.1
- pandas ==2.2.2
- parso ==0.8.4
- pexpect ==4.9.0
- pillow ==10.3.0
- pkginfo ==1.11.1
- platformdirs ==4.2.2
- poetry ==1.8.3
- poetry-core ==1.9.0
- poetry-plugin-export ==1.8.0
- prompt-toolkit ==3.0.46
- ptyprocess ==0.7.0
- pure-eval ==0.2.2
- py-cpuinfo ==9.0.0
- pycparser ==2.22
- pygments ==2.18.0
- pyparsing ==3.1.2
- pyproject-hooks ==1.1.0
- python-dateutil ==2.9.0.post0
- pytz ==2024.1
- pywin32-ctypes ==0.2.2
- pyyaml ==6.0.1
- rapidfuzz ==3.9.3
- requests ==2.32.3
- requests-toolbelt ==1.0.0
- scipy ==1.13.1
- sdeint ==0.3.0
- secretstorage ==3.3.3
- shellingham ==1.5.4
- six ==1.16.0
- stack-data ==0.6.3
- tables ==3.9.2
- tomli ==2.0.1
- tomlkit ==0.12.5
- tornado ==6.4.1
- tqdm ==4.66.4
- traitlets ==5.14.3
- trove-classifiers ==2024.5.22
- typing-extensions ==4.12.2
- tzdata ==2024.1
- urllib3 ==2.2.1
- virtualenv ==20.26.2
- wcwidth ==0.2.13
- xattr ==1.1.0
- xyzservices ==2024.6.0
- zipp ==3.19.2