Path4gmns

Latest version: v0.9.9.post1

Safety actively analyzes 683530 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 4 of 6

0.8.3

v0.8.3 adds transportation equity evaluation besides enhancement in evaluating accessibility.

1. evaluate equity given a time budget and a segmentation of zones.
2. add use_link_ffs for each agent in settings.yml, which enables the following choice in computing accessibility.
3. choose either the free speed of an agent specified in settings.yml or the link free flow speed defined in link.csv in accessibility evaluation (and equity evaluation as well).

0.8.2

v0.8.2 deeply optimizes the column generation module with significant performance boost.

A 20% reduction in running time is observed for the Chicago Sketch Network with 20 iterations of column generation and 20 iterations of column update. Detailed optimization information can be found under commits 18c8c7d and b5a204b.

0.8.1

v0.8.1 mainly optimizes class ColumnVec, setup_agents() in class Network, and column generation module (i.e., colgen.py) to boost the performance in setup_agents() and path-base UE.

1. replace the data container in ColumnVec to store columns from dict to list and change implementations involving loops through stored columns in colgen.py and utils.py;
2. loop through column pool directly in class Network setup_agents();
3. remove check on cv.get_od_volume() <= 0 which is useless as a ColumnVec instance would not be created if its volume is zero;
4. remove col.set_toll() which is wrong and useless.

Other updates include,

1. make link generalized cost consistent in get_generalized_cost() in class Link and _update_generalized_link_cost(), and apply get_generalized_cost() in _update_generalized_link_cost();
2. use inheritance for some interfaces in classes;
3. add define GUARD_PATH_ENGINE_H to path_engine.h;
4. remove implementations related to DLSim but keep read_zones() and read_demand_matrix();
5. introduce badges to README to better show the status.

0.8.0

v0.8.0 deprecates node sum as the unique key (or hash index) to differentiate columns in the column generation module as different columns may share the same node sum. The new implementation features a side-by-side comparison on column itself with a slight improvement in both running time and convergency gap. Details can be found at [here](https://github.com/jdlph/Path4GMNS#more-on-the-column-generation-module).

1. Deprecate node sum in _backtrace_shortest_path_tree() and _update_column_gradient_cost_and_flow() in colgen.py;
2. Deprecate node sum in load_columns() in utils.py and adopt the same implementation from the updated _backtrace_shortest_path_tree();
3. Rename _assignment() to _generate_column_pool() and _assignment_core() to _generate() to be consistent with their true functionalities;
4. Optimize read_links() and output_agent_paths() in utils.py;
5. Cosmetic changes in path_engine.cpp and DTALite source files with the critical change to include fstream in utils.h;
6. Add a section How to Cite;
7. Fix typos over multiple files.

0.7.5

v0.7.5 fixes one crucial bug in accessibility evaluation along with some other updates.

1. The time interval calculation in _get_interval_id() was wrong, which should have follown (MIN_TIME_BUDGET + (i-1) * BUDGET_TIME_INTVL, MIN_TIME_BUDGET + i * BUDGET_TIME_INTVL], where, i is integer and i >= 1;
2. Set up argtypes for shortest_path_n() rather than shortest_path(). The latter is kept for legacy support only;
3. Fix the wrong printout message in perform_network_assignment_DTALite() in terms of the file name.

0.7.4

v0.7.4 comes with bug and issue fixes.

1. fix bug on zero divisor in update_generalized_link_cost();
2. fix wrong exception message in read_links();
3. remove the legacy utf-8 encoding requirement on instances of open(), which was inherited from DTALite in Python (i.e., the code base leading to Path4GMNS).

Other updates include,

4. add a concise guideline on how to contribute to Path4GMNS in README;
5. provide references in README on the Path-based UE;
6. use single quotes consistently across the project.

Page 4 of 6

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.