COIN-OR::LEMON - Graph Library

Opened 16 years ago

Last modified 15 years ago

#319 closed enhancement

Infinite capacities in Preflow — at Version 1

Reported by: Peter Kovacs Owned by: Peter Kovacs
Priority: major Milestone: LEMON 1.2 release
Component: core Version: hg main
Keywords: Cc:
Revision id:

Description (last modified by Peter Kovacs)

If you run Preflow using floating point capacity type on a network in which the source node has some outgoing arcs of infinite capacity (represented by either the infinity() or the max() value of the type), then it will cause problems, since the algorithm saturates these arcs.

To prevent this problem, we could replace the infinite capacities with sufficiently large finite values. However it would require the finding a finite value cut (if one exists).

I suggest to either make the algorithm safer in this manner or add a warning about this problem to the doc of the class and the dimacs solver.

Change History (1)

comment:1 Changed 16 years ago by Peter Kovacs

Description: modified (diff)
Status: newassigned
Summary: Infinite capacities in push-relabel algorithmsInfinite capacities in Preflow

Circulation is safe in this manner, since it uses the excess of the corresponding node as an upper bound for each push operation.

Note: See TracTickets for help on using tickets.