aequilibrae.paths.results.path_results#
Classes
Path computation result holder |
- class aequilibrae.paths.results.path_results.PathResults[source]#
Path computation result holder
>>> from aequilibrae.paths.results import PathResults >>> project = create_example(project_path) >>> project.network.build_graphs() # Mode c is car in this project >>> car_graph = project.network.graphs['c'] # minimize distance >>> car_graph.set_graph('distance') # If you want to compute skims # It does increase path computation time substantially >>> car_graph.set_skimming(['distance', 'free_flow_time']) >>> res = PathResults() >>> res.prepare(car_graph) >>> res.compute_path(1, 17) # Update all the outputs mentioned above for destination 9. Same origin: 1 >>> res.update_trace(9) # clears all computation results >>> res.reset() >>> project.close()
- compute_path(origin: int, destination: int, early_exit: bool = False, a_star: bool = False, heuristic: str | None = None) None [source]#
Computes the path between two nodes in the network.
A* heuristics are currently only valid distance cost fields.
- Arguments:
origin (
int
): Origin for the pathdestination (
int
): Destination for the pathearly_exit (
bool
): Stop constructing the shortest path tree once the destination is found. Doing so may cause subsequent calls toupdate_trace
to recompute the tree. Default isFalse
.a_star (
bool
): Whether or not to use A* over Dijkstra’s algorithm. WhenTrue
,early_exit
is alwaysTrue
. Default isFalse
.heuristic (
str
): Heuristic to use ifa_star
is enabled. Default isNone
.
- prepare(graph: Graph) None [source]#
Prepares the object with dimensions corresponding to the graph object
- Arguments:
graph (
Graph
): Needs to have been set with number of centroids and list of skims (if any)
- set_heuristic(heuristic: str) None [source]#
Set the heuristics to be used in A*. Must be one of get_heuristics().
- Arguments:
heuristic (
str
): Heuristic to use in A*.
- update_trace(destination: int) None [source]#
Updates the path’s nodes, links, skims and mileposts
If the previously computed path had early_exit enabled, update_trace will check if the destination has already been found, if not the shortest path tree will be recomputed with the early_exit argument passed on.
If the previously computed path had a_star enabled, update_trace always recompute the path.
- Arguments:
destination (
int
): ID of the node we are computing the path too