ShortestPath {rlemon} | R Documentation |
Solver for Shortest Path Between Two Nodes
Description
FINDS the shortest arc disjoint paths between two nodes in a directed graph. This implementation runs a variation of the successive shortest path algorithm.
Usage
ShortestPath(
arcSources,
arcTargets,
arcDistances,
numNodes,
sourceNode,
destNode,
algorithm = "Suurballe"
)
Arguments
arcSources |
Vector corresponding to the source nodes of a graph's edges |
arcTargets |
Vector corresponding to the destination nodes of a graph's edges |
arcDistances |
Vector corresponding to the distances of a graph's edges |
numNodes |
The number of nodes in the graph |
sourceNode |
The start node of the path |
destNode |
The end node of the path |
algorithm |
Choices of algorithm include "Suurballe". "Suurballe" is the default. |
Details
For details on LEMON's implementation, including differences between the algorithms, see https://lemon.cs.elte.hu/pub/doc/1.3.1/a00609.html.
Value
A named list containing two entries: 1) "num_paths": the number of paths from the start node to the end node and 2) "list_paths": a list of paths found. If there are multiple paths, then the second entry will have multiple paths.