Skip to content

Releases: toruseo/UXsim

v1.7.0

09 Oct 08:55
280cb71
Compare
Choose a tag to compare

Highlights

  • Optimized memory usage and others
    • In large scale scenarios, memory usage is reduced by about 50%
    • More efficient and accurate demand definition functions: adddemand_nodes2nodes2 and adddemand_area2area2
    • This is mostly based on investigation and contribution by @EwoutH. Thanks!
  • Add several utility functions for shortest path analysis

What's Changed

  • add get_shortest_path_distance_between_all_nodes by @toruseo in #132
  • Complete get_shortest_path_distance_between_all_nodes by @toruseo in #134
  • update shortest path cost funcs and add test by @toruseo in #136
  • relocate 'get_shortest_path_*()' to Utilities submodule by @toruseo in #137
  • add shortest path cost on t by @toruseo in #138
  • RouteChoice: optimize memory usage by in-place updates to route_pref by @EwoutH in #146
  • Add reduce_memory_delele_vehicle_route_pref to World arg by @toruseo in #149
  • fix spell to reduce_memory_delete_vehicle_route_pref by @toruseo in #150
  • Bump codecov/codecov-action from 4.5.0 to 4.6.0 by @dependabot in #151
  • minor update for examples by @toruseo in #152
  • add adddemand_nodes2nodes2 and adddemand_area2area2 by @toruseo in #153

Full Changelog: v1.6.0...v1.7.0

v1.6.0

13 Sep 03:04
112b425
Compare
Choose a tag to compare

Highlights

  • Important bug fix on iterative execution of simulation by World.exec_simulation(duration_t) and World.check_simulation_ongoing()
    • In the previous versions, there is a bug that they fail to terminate the simulation properly under certain conditions. This bug is now fixed by updating the simulation termination procedure. Please note that this fix may slightly change the simulation result from the previous versions around the final timestep
    • This resolves #117
  • Added customizable function that is automatically executed during a simulation run: user_function to World, Node, Link, and Vehicle

Other changes

Full Changelog: v1.5.0...v1.6.0

v1.5.0

20 Aug 04:05
6553f8b
Compare
Choose a tag to compare

Highlights

  • Added "hard deterministic mode"
    • In this mode, the simulation will not use any random variables. At a merging node, a link with higher merge_priority will be always prioritized, and vehicles always choose the shortest path. This may be useful for analysis that need strict predictability. Be aware that the simulation results will be significantly different from ones with the standard mode.
    • This will be enabled by doing World(..., hard_deterministic_mode=True, ...) when initializing World object
  • Added area-based demand setting and analysis
    • Can set travel demand from an area (list of nodes) to another area
    • Can compute traffic statistics between areas and ones inside of an area (e.g., vehicle distance traveled in an area)

What's Changed

New Contributors

Full Changelog: v1.4.0...v1.5.0

v1.4.0 - Speed up

30 Jul 07:02
71f5699
Compare
Choose a tag to compare

Highlights

  • Significant speed up for large-scale scenario
    • In combination with the previous v1.3.1 update, we have optimized the shortest path search and related functions. As a result, the calculation speed for large scenarios (e.g., those with 1000+ links) has increased by 10 to 100 times.
  • Implement new scenario writing/reading functions W.save_scenario and W.load_scenario.
  • As a demonstration of these updates, we have added demo in Chicago-Sketch dataset with 1 million vehicles.

What's Changed

Full Changelog: v1.3.2...v1.4.0

v1.3.2

24 Jul 07:06
b07062b
Compare
Choose a tag to compare

Highlights

  • Fixed a bug that did not guarantee reproducibility with the same random seed. This solves Issue #86

What's Changed

Full Changelog: v1.3.1...v1.3.2

v1.3.1

20 Jul 06:57
694058b
Compare
Choose a tag to compare

Highlights

  • Improve performance of route_search_all function. This addresses Issue #53

What's Changed

  • Make demo_notebook_01en.ipynb more friendly for new users by @toruseo in #72
  • Update docs (including conda instruction) and examples by @toruseo in #74
  • correct typo; replace some Japanese comments by @toruseo in #75
  • minor update by @toruseo in #76
  • Improve route_search_all function by @toruseo in #79

Full Changelog: v1.3.0...v1.3.1

v1.3.0

11 May 08:39
7c584bb
Compare
Choose a tag to compare

Main Changes

  • Add GUI functions
    • Vehicle tracking: You can now track a specific vehicle to see their route
    • Dataframe viewer: Stats can be confirmed
  • Improve vehicle routing functions
  • Change documentation's theme for better indexing
resultGUIviewer_vehicle_tracker.mp4

What's Changed

  • Update tests and docs; Replace deprecated functions in OSMnx by @toruseo in #67
  • Improve routing functions and add examples of routing optimization; Update visualization for multi-lane traffic by @toruseo in #68
  • Minor update by @toruseo in #69
  • Add vehicle tracker and dataframe viewer in GUI by @toruseo in #70
  • Update init.py by @toruseo in #71

Full Changelog: v1.2.0...v1.3.0

v1.2.0 - Taxi (shared mobility) update

25 Apr 08:39
004e5af
Compare
Choose a tag to compare

Main changes

  • Add taxi (aka. shared mobility) functions
    • A standard vehicle in UXsim just travel from A to B and disappear. This is like a private owned vehicle.
    • From this update, a Vehicle with mode="taxi" behave like a taxi. Specifically, they travel through a network by passing through specific nodes that are dynamically updated, simulating passenger pickup and drop-off.
    • New sub-module uxsim.TaxiHandler handles these matters.
    • Built-in vehicle-to-passneger matching methods are also available.
    • This addresses Issue #41
  • From now on, we follow the Semantic Versioning rigorously.

What's Changed

  • [Major update] Add taxi (shared mobility) by @toruseo in #64

Full Changelog: v1.1.1...v1.2.0

v1.1.1

15 Apr 10:56
b964261
Compare
Choose a tag to compare

Main Changes

  • Add setting to adjust vehicle logging time interval via World.vehicle_logging_timestep_interval
    • By lowering the interval (e.g., World.vehicle_logging_timestep_interval=2), the simulation time can be reduced (~20% speed up), and we can obtain vehicle trajectory data with slightly less accuracy.
    • The logging setting does not affect the internal simulation accuracy. Only the outputted trajectories are affected.
    • By setting World.vehicle_logging_timestep_interval=-1, the record_log is turned off, and the simulation time can be significantly reduced (~40% speed up).
    • This addresses Issue #58
  • Correct route choice behavior
    • Vehicle.links_prefer and Vehicle.links_avoid work correctly now.

What's Changed

Full Changelog: v1.1.0...v1.1.1

v1.1.0 - Multilane

01 Apr 12:29
bd2f0e1
Compare
Choose a tag to compare

Main Changes

  • Add support for multilane links. More technically, it is a multilane, single-pipe model where vehicles cannot overtake others. This allows us to set traffic capacity significantly larger while keeping consistency to KW theory.
  • Separate Analyzer class from uxsim.py. This means that uxsim.py now contains only the essential codes for the simulation. It makes it easier for users to understand the simulation logic.

What's Changed

  • minor updates by @toruseo in #51
  • Update README.jp.md by @toruseo in #52
  • [Major update] Add multilane link; Separate Analyzer class from uxsim.py by @toruseo in #56

Full Changelog: v1.0.9...v1.1.0