MinCostFlow {rlemon} | R Documentation |
Solver for MinCostFlow
Description
Finds the minimum cost flow of a directed graph.
Usage
MinCostFlow(
arcSources,
arcTargets,
arcCapacities,
arcCosts,
nodeSupplies,
numNodes,
algorithm = "NetworkSimplex"
)
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 |
arcCapacities |
Vector corresponding to the capacities of nodes of a graph's edges |
arcCosts |
Vector corresponding to the capacities of nodes of a graph's edges |
nodeSupplies |
Vector corresponding to the supplies of each node |
numNodes |
The number of nodes in the graph |
algorithm |
Choices of algorithm include "NetworkSimplex", "CostScaling", "CapacityScaling", and "CycleCancelling". NetworkSimplex 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/a00612.html.
Value
A named list containing four entries: 1) "flows": A vector corresponding to the flows of arcs in the graph, 2) "potentials": A vector of potentials of the graph's nodes, 3) "cost": the total cost of the flows in the graph, i.e. the mincostflow value, and 4) "feasibility": LEMON's feasibility type, demonstrating how feasible the graph problem is, one of "INFEASIBLE", "OPTIMAL", and "UNBOUNDED"