Interval excess as bounded circulation #
Adjoin one fresh vertex to a directed network and one arrow from each original vertex to the fresh vertex. Giving that arrow the original vertex's excess turns an interval-excess assignment into a circulation; its bounds are precisely the bounds on vertex excess. Restriction to the original arrows is the inverse. Negative bounds, parallel arrows and loops are allowed.
ExcessIntervalFlow.circulationEquiv preserves every original arrow value. Conservation at the
fresh vertex follows from sum_excessAt, including when the original vertex type is empty.
Hoffman's theorem on the enlarged network gives the feasibility criterion: for ordered bounds,
an assignment with excess between a and b exists exactly when every vertex set S satisfies
a(S) ≤ cutBound lo hi Sᶜ and -cutBound lo hi S ≤ b(S). A vertex set violating one of these
inequalities certifies infeasibility, and bounds in an additive subgroup give a solution in that
subgroup. The totals a(V) ≤ 0 ≤ b(V), and the same inequalities on every weakly connected
component, are necessary but not sufficient. Equal endpoints recover prescribed excess.
References #
- D. P. Bertsekas, Linear Network Optimization, Section 1.1.3 and Exercises 2.4–2.6.
- D. Gale, A theorem on flows in networks, Pacific J. Math. 7 (1957), 1073–1082.
The original arrows between vertices some v, with one arrow from each some v to the
fresh vertex none and no arrows leaving none. The family is exposed to identify its indexed
arrow carriers with the original carriers.
Instances For
An original arrow in the enlarged network.
Instances For
The auxiliary arrow from some v to none.
Instances For
No arrow leaves the fresh vertex.
A property of all enlarged arrows is a property of the original and auxiliary arrows.
Extend an original assignment by giving the auxiliary arrow at v the value c v.
This also extends lower and upper bounds.
Instances For
Restrict an enlarged assignment to the original arrows.
Instances For
Restriction together with the values on auxiliary arrows determines the full assignment.
The enlarged bounds impose the original arrow bounds and the auxiliary vertex bounds.
Enlarge a bounded network by one fresh vertex and auxiliary arrows with bounds [a v, b v].
The dependent arrow family is reducible so callers can use the same original and auxiliary
arrows in the bundled and unbundled presentations.
Instances For
Arrow sums in the enlarged network: the original arrows contribute their original arrow sum,
and when T contains the fresh vertex, the auxiliary arrow at each original vertex of S
contributes its value.
At an original vertex, enlarged excess is original excess minus the auxiliary value.
Excess at the fresh vertex is the total value of the auxiliary arrows.
Conservation at the original vertices forces each auxiliary value to equal original excess.
Sending original excess along each auxiliary arrow gives a circulation.
An interval-excess assignment is equivalently a bounded circulation on the network with one fresh vertex. The auxiliary arrow at each vertex carries that vertex's original excess.
Instances For
Feasibility of interval excess #
In a feasible interval-excess problem, the lower vertex bounds on any vertex set are at most the cut bound of its complement.
In a feasible interval-excess problem, the upper vertex bounds on any vertex set are at least minus its cut bound.
Integrality of interval-excess feasibility. If the arrow and vertex bounds lie in an additive subgroup and every vertex set satisfies both cut inequalities, then some assignment with values in that subgroup has excess within the vertex bounds.
Interval-excess feasibility. For ordered arrow and vertex bounds, an assignment with
excess between a and b exists exactly when, for every vertex set S, the lower vertex bounds
on S are at most the cut bound of Sᶜ and the upper vertex bounds on S are at least minus
the cut bound of S.
Subgroup-valued interval-excess feasibility has the same cut criterion as unrestricted feasibility when the arrow and vertex bounds take values in the subgroup.
An infeasible interval-excess problem has a vertex set strictly violating one of the two cut inequalities. Conversely, either violation rules out every feasible assignment.
Either an interval-excess assignment exists, or a vertex set strictly violates one of the two cut inequalities.
The interval criterion at equal endpoints characterizes prescribed excess. Taking S = univ
in both families recovers the balance condition of ExcessFlow.nonempty_iff.