References
Papers, standards, compared simulators, and libraries the model names. Checked against the publisher or project page on 11 October 2026. Where an older note in this repo had a wrong author, this list is the published one.
Method
| # | Work | What Piper takes from it |
|---|---|---|
| [1] | D. Helbing and P. Molnár, “Social force model for pedestrian dynamics,” Physical Review E 51, 4282–4286 (1995). doi:10.1103/PhysRevE.51.4282. PubMed 9963139. arXiv cond-mat/9805244. | Driving, wall, and person terms. Its anisotropy is a step weight (c = 0.5 outside a 200° field of view), not the lambda form used here. |
| [2] | A. Johansson, D. Helbing and P. K. Shukla, “Specification of the social force pedestrian model by evolutionary adjustment to video tracking data,” Advances in Complex Systems 10 (supp. 02), 271–288 (2007). doi:10.1142/S0219525907001355. arXiv 0810.4587. | The circular / acceleration form PTV Viswalk uses. tau, ReactToN, ASocIso, ASocMean. Anisotropy lambda + (1 − lambda)(1 + cos φ)/2; their video fits give lambda 0.06–0.16 (0.12 ± 0.07 for the circular form). The default here, 0.25, weighs people behind more than those fits. |
| [3] | A. Tordeux, M. Chraibi and A. Seyfried, “Collision-free speed model for pedestrian dynamics,” in V. Knoop and W. Daamen (eds.), Traffic and Granular Flow ’15, Springer (2016), ch. 29. doi:10.1007/978-3-319-33482-0_29. Preprint 17 Dec 2015, arXiv 1512.05597. JuPedSim documents this as its collision-free speed model. | Same-lane headway: v_des = min(v_des, max(0, (gap − 0.08) / headway_t)). A person off to the side does not stop the stream. Not Schadschneider: an earlier line in this repo named him; he is not an author of [3]. |
| [4] | J. J. Fruin, Pedestrian Planning and Design, Metropolitan Association of Urban Designers and Environmental Planners, New York (1971). HathiTrust, Open Library OL5706190M, TRID 00223691. | Walkway LOS A–F. Original table is ft²/ped. Stairs and queue tables are not implemented. |
| [5] | Land Transport Authority, Architectural Design Criteria, Revision A4 (June 2015), §2.2.3. Section 2 PDF. Index: LTA transport infrastructure criteria. | Metre bands for Fruin’s walkway column (> 3.3, 2.3–3.3, …). LTA will withdraw ADC in March 2027 in favour of the Infrastructure Design Criteria; the walkway numbers are the same in IDC Vol. B1. |
| [6] | G. K. Still, Introduction to Crowd Science, CRC Press (2014). doi:10.1201/b17097. ISBN 978-1-4665-7964-4. Publisher: Routledge. Author: gkstill.com. | LOS G at 4 ped/m². The UK Green Guide, which Still cites, sets 40 people per 10 m² as the safety limit for a moving crowd; Still notes that above 4 ped/m² the risk of crushing, falls and surges rises sharply (PhD ch. 2, ch. 3). Fruin’s F has no upper bound. |
| [7] | M. Treiber, A. Hennecke and D. Helbing, “Congested traffic states in empirical observations and microscopic simulations,” Physical Review E 62, 1805–1824 (2000). doi:10.1103/PhysRevE.62.1805. arXiv cond-mat/0002177. | Intelligent Driver Model. Vehicle acceleration. |
| [8] | A. Kesting, M. Treiber and D. Helbing, “General lane-changing model MOBIL for car-following models,” Transportation Research Record 1999, 86–94 (2007). doi:10.3141/1999-10. Author PDF: akesting.de. | MOBIL lane changes. |
Compared software
These are not dependencies. The force defaults and the headway law are read against them.
| Software | Page | Role here |
|---|---|---|
| PTV Viswalk (PTV Planung Transport Verkehr GmbH) | Product. Parameter names in the 2025 help and walking-behaviour pages. | Acceleration-form social force. Shared: tau 0.4 s, ReactToN 8. Defaults we do not copy: ASocIso 2.72 (ours ped_a 1.15); side preference 0, no preference (ours keep left); tau 0.8 s only while waiting at a red signal (ours stretches whenever the same-lane gap is short). Help confirms ASocIso default 2.72 and ReactToN default 8. |
| JuPedSim (Forschungszentrum Jülich, IAS-7) | jupedsim.org. Source: github.com/PedestrianDynamics/jupedsim. PyPI: jupedsim. | Collision-free speed / headway of [3]. |
Programming libraries
Direct dependencies only. Versions are the ones in the workspace manifests.
Rust (Cargo.toml)
| Crate | Manifest | Page |
|---|---|---|
serde 1, serde_json 1 | workspace | serde.rs, crates.io/serde, crates.io/serde_json |
rayon 1 | piper-core (feature), piper-batch | crates.io/rayon |
wasm-bindgen 0.2 | piper-wasm | github.com/wasm-bindgen/wasm-bindgen (moved off the archived rustwasm org). Guide: wasm-bindgen.github.io |
wasm-bindgen-rayon 1.3 | piper-wasm feature threads | crates.io/wasm-bindgen-rayon |
console_error_panic_hook 0.1 | piper-wasm | crates.io/console_error_panic_hook |
png 0.17 | piper-batch | crates.io/png |
tiff 0.9 | piper-batch | crates.io/tiff |
Scenario geometry is GeoJSON. The format is IETF RFC 7946 (August 2016). Project files may also be OGC GeoPackage 1.4 (an SQLite database).
Apps and packages (apps/*/package.json, packages/*/package.json)
| Package | Manifest | Page |
|---|---|---|
next ^15.5 | runtime | nextjs.org |
react, react-dom ^19.1 | runtime | react.dev |
three ^0.186 | runtime | threejs.org |
@react-three/fiber ^9.8 | runtime | r3f.docs.pmnd.rs |
@react-three/drei ^10.7 | runtime | github.com/pmndrs/drei |
sql.js ^1.13 | runtime, @piper/io | sql.js.org |
proj4 ^2.15 | @piper/io | proj4js.org |
react-markdown ^10.1, remark-gfm ^4.0, remark-math ^6.0, rehype-slug ^6.0, rehype-katex ^7.0 | runtime, /method page | remarkjs/react-markdown, unified |
katex ^0.19 | runtime, /method page | katex.org |
mermaid ^11.17 | runtime, /method page | mermaid.js.org |
typescript ^5.6 | dev | typescriptlang.org |
Licenses for all of these are in THIRD_PARTY.md at the repo root.
packages/viewer/src/treegen/ is a vendored copy of a pantograf-tools tree mesh generator, used only to draw street trees. It is not a walker-model reference and has no public paper.
Fixture sources
Queenstown-style station geometry in fixtures/ is traced from public sources, not a CAD copy. Listed in fixtures/README.md:
- OpenStreetMap station node 208527368
- Wikipedia, Queenstown MRT station
- Land Transport Guru, Queenstown station
- Fare-gate and escalator capacities in that fixture follow LTA ADC Rev A4 §2.2 ([5])