C++ Reference
C++ Reference: Graph
min_cost_flow.h
Graph::OutgoingArcIterator OutgoingArcIterator
Definition: min_cost_flow.h:330
FlowQuantity Flow(ArcIndex arc) const
FlowQuantity InitialSupply(NodeIndex node) const
ArcIndex NumArcs() const
NodeIndex Head(ArcIndex arc) const
NodeIndex NumNodes() const
SimpleMinCostFlow(NodeIndex reserve_num_nodes=0, ArcIndex reserve_num_arcs=0)
FlowQuantity MaximumFlow() const
bool MakeFeasible()
CostValue UnitCost(ArcIndex arc) const
Definition: christofides.h:33
Graph::ArcIndex ArcIndex
Definition: min_cost_flow.h:329
void SetArcCapacity(ArcIndex arc, ArcFlowType new_capacity)
ZVector< FlowQuantity > QuantityArray
Definition: ebert_graph.h:209
Graph::NodeIndex NodeIndex
Definition: min_cost_flow.h:328
CostValue UnitCost(ArcIndex arc) const
GenericMinCostFlow(const Graph *graph)
Graph::OutgoingOrOppositeIncomingArcIterator OutgoingOrOppositeIncomingArcIterator
Definition: min_cost_flow.h:332
void SetArcUnitCost(ArcIndex arc, ArcScaledCostType unit_cost)
CostValue GetOptimalCost() const
Definition: min_cost_flow.h:384
Definition: ebert_graph.h:188
FlowQuantity FeasibleSupply(NodeIndex node) const
Status SolveMaxFlowWithMinCost()
Definition: min_cost_flow.h:252
bool Solve()
FlowQuantity Flow(ArcIndex arc) const
FlowQuantity Capacity(ArcIndex arc) const
ZVector< ArcIndex > ArcIndexArray
Definition: min_cost_flow.h:333
void SetArcFlow(ArcIndex arc, ArcFlowType new_flow)
void SetCheckFeasibility(bool value)
Definition: min_cost_flow.h:418
NodeIndex Tail(ArcIndex arc) const
Definition: graph.h:548
ArcIndex AddArcWithCapacityAndUnitCost(NodeIndex tail, NodeIndex head, FlowQuantity capacity, CostValue unit_cost)
MinCostFlow(const StarGraph *graph)
Definition: min_cost_flow.h:615
const Graph * graph() const
Definition: min_cost_flow.h:341
CostValue OptimalCost() const
void SetUseUpdatePrices(bool value)
Definition: min_cost_flow.h:410
FlowQuantity Capacity(ArcIndex arc) const
FlowQuantity Supply(NodeIndex node) const
void SetNodeSupply(NodeIndex node, FlowQuantity supply)
FlowQuantity Supply(NodeIndex node) const
void SetNodeSupply(NodeIndex node, FlowQuantity supply)
bool CheckFeasibility(std::vector< NodeIndex > *const infeasible_supply_node, std::vector< NodeIndex > *const infeasible_demand_node)