Releases: PedestrianDynamics/jupedsim
v1.2.1
v1.2.0
This release contains two new features
New Model - Social Force Model
JuPedSim now implements another microscopic model, the Social Force Model
as described by Helbing, D., Farkas, I., Vicsek, T. (2000). Simulating dynamical features of escape panic.
New route planning method - Direct Steering
Direct Steering allows the user to set each agents target individually and at any time. Agents will then use normal way findig to navigate to the set position. This should allow for rapid prototyping of high level agent behaviour such as waiting or queueing. The intention here is that user will be able to use their own logic written in python to do route planning. While this needs extra coding and might be runtime intensive it allows full flexibility.
v1.1.1
v1.1.0
What's Changed
- Add possibility to switch geometry at runtime.
- Add new iteration of the Collision Free Speed Model (CollisionFreeSpeedModelV2), in this update formerly global repulsion parameters have become agent specific parameters. Thus allowing to model individual agents to react with different strength to geometry / neighbouring agents.
v1.0.6
v1.0.5
Changes
- Update dependencies
- Add support for Python 3.12
v1.0.4
Changes
- Check if added stages are inside walkable area by
- Allow v0 to be zero
- Explicitly mark supported Python versions
Documentation fixes
- Add missing queues notebook
- Improve online documentation
- Some editing of routing page
v1.0.3
v1.0.0
JuPedSim
JuPedSim has come a long way since its inception in 2010. Originally designed
to simulate and analyze pedestrian dynamics across different scenarios, it
stood as a testament to the evolving needs and challenges of the field. As it
grew with every project, every Master's, and PhD thesis, the software began to
show its age - becoming cumbersome for prototyping. In response to these
complex challenges, an extensive remodeling effort was undertaken to completely
reconstruct JuPedSim. The outcome of this endeavor is a redesigned and improved
version of the software that is more efficient and user-friendly. This article
provides a brief glimpse into the process of transformation.
Balancing performance and Complexity with C++
Central to the new JuPedSim is its architecture. Revising the architectural
choices, we've transitioned from a singular focus on performance to a more
balanced perspective. Instead of multithreading, JuPedSim now operates
single-threaded, relegating only performanc-critical segments to C++. This
decision stems from recognizing that excessive complexity can deter users.
While we acklowdege there's room for further enhancements, especially regarding
the integration of new models, the primary aim of this release was not solely
performance but to strike a harmony between speed and user-friendliness.
Core functionalities of JuPedSim have been implemented as essential components
in C++. This includes operative models describing pedestrian movement, as well
as routing and navigation algorithms. While individually fundamental, when
assembled, these components, much like Lego pieces, can be orchestrated to
construct comprehensive, intricate systems, fostering the creation of
meaningful and large-scale simulations and analyses in pedestrian dynamics.
Empowering with Python-API
The previous version of JuPedSim operated primarily through the command-line
interface and required navigating complex XML configurations, which could be
quite intricate for users. However, as time passed and users adapted to the
tool, a trend emerged towards automatic configuration generation using Python.
Bridging the gap between core functionality and user interaction, JuPedSim
introduces a lightweight and expressive Python API. This interface allows users
to easily craft simulation scenarios, prototype complex behaviors, and harness
the power of the core "primitive" components. The enhanced version of JuPedSim
adopts a novel approach by operating as a library based on Python. This new
architecture greatly enhances the versatility in configuring simulations. For
instance, one can easily define dynamically chanching behaviors such as
arranging pedestrians in spiral formations and having individuals depart from
the formation every 3 seconds. This Python API provides users with a familiar
and intuitive programming language, enabling them to efficiently manipulate and
analyze data, customize simulation parameters, and visualize results.
This transition not only aligns with changing user practices but also takes
advantage of the widespread familiarity with Python, making JuPedSim more
accessible and engaging for users. These scenarios can now be effortlessly
communicated using Python scripting while allowing JuPedSim to focus on agent
positioning and actions. Unlike its previous iteration, which constrained users
to predefined configurations, this updated version offers substantial creative
freedom in simulation design. Moreover, with this API, the JuPedSIm offers
other software, like SUMO, the possibility to integrate and communicate
seamlessly, expanding the software's capabilities and versatility.
Driving Research Forward
The significant advantage of the new JuPedSim lies in its potential for
academic research. Previously, researchers had to deal with the complexities of
implementing low-level details. However, now they can easily conceptualize,
prototype, and evaluate new theories in pedestrian dynamics. The capability to
adjust agent behaviors, direct their movements, or alter their states in
real-time allows for rapid iterations and thorough experimentation. This level
of flexibility is unparalleled and offers numerous opportunities for
comprehending pedestrian dynamics in complex environments.
To give an example, in this study,
motivation among agents is represented by the parameter
like in jostling situations, correlates with a smaller
pedestrians to quickly close gaps. For example, highly motivated agents might
have
motivation of people varies with time and space? Consider an exit scenario:
those closer to an exit in a crowd are more motivated than those far behind,
indicating a need for
This is where the new JuPedSim shines — it can adjust this "motivation
behavior" in real-time during a simulation, providing a nuanced, adaptive, and
accurate depiction of pedestrian behaviors as they shift and evolve.