© 1978 The Operations Research Society of Japan
Journal of the Operations Research
Society of Japan
Vol.21, No.2,June, 1978
ALGORITHMS FOR SOLVING THE INDEPENDENT. FLOW PROBLEMS
Satoru Fujishige
University of Tokyo
(Received January 27, 1977; Revised October 20, 1977)
Abstract
Given a capacitated network with the entrance· vertex set VI and the exit-vertex set V2 on which
polymatroids are defmed, an independent flow is a flow in the network such that a vector corresponding to the supplies
in VI and a vector corresponding to the demands in V2 are, respectively, independent vectors of the polymatroids
on VI and V2 • The independent-flow problems considered in the present paper are the following two: (1) to find
a maximum independent flow; and (2) to find an optimal independent flow, i.e., a maximum independent flow of the
minimum cost when a cost is given to each arc. We present several theorems which algorithmically characterize optimal
independent flows and we propose algorithms for solving the independent-flow problems based on the theorems.
1,
I ntroduct ion
Given a capacitated network with the entrance-vertex set
exit-vertex set
V
z
VI
and the
on which polymatroids are, respectively, defined, an
independent flow is a flow in the network such that a vector corresponding to
the supplies in
VI
and a vector corresponding to the demands in
respectively, independent vectors of the polymatroids on
VI and
V
2
Vz'
are,
We
shall consider the independent-flow problems: (1) to find a maximum independent
flow; and (Z) to find an optimal independent flow, i,e., a maximum independent
flow of the minimum cost when a cost is given to each arc.
We first examine some fundamental properties, of a polymatroid, concerning the transformation of independent vectors of a polymatroid.
Next, we
define an auxiliary network associated with an independent flow and then, by
using auxiliary networks, we provide several theorems which algorithmically
characterize optimal independent flows (cf. a non-algorithmic characterization
of maximum independent flows made by C. J. H. McDiarmid [10]).
189
Based on these
S. Fujishige
190
theorems, we propose algorithms for finding a maximum independent flow and an
optimal independent flow.
The independent-flow problems include as special cases those recently
treated in [4]
~
[7], [9] and [11].
As the ordinary network-flow algorithms
have played a significant role in solving many combinatorial problems (cf. [3]
and [8]), the present paper will contribute toward solving combinatorial
problems related to matroids and/or po1ymatroids from the point of view of
flows in networks.
2.
Definition of Polymatroid
E be a nonempty finite set and
Let
additive group with a total order relation
(H,~
~.
be a totally ordered
We can take as
(H,~,
for
example, the additive group of real numbers, rational numbers or integers with
the ordinary order relation.
b
~
a (a,b e: H).
Also, we define a relation
a < b
i f and only i f
and, similarly, a relation
H+
Define
(2.1)
aE
H+).
Elements of
e
and each
(e:
E)
aE
n!)
<
if and only if
as
and
a; b
the set of all functions from
are expressed by
we denote by
x (e: aE)
:r:(A)
b
b
H, i.e.,
O~e}.
(resp.
with coordinates indexed by
(2.2)
~
~
>.
We shall regard functions in
For
a
a
as the set of all nonnegative elements of
= {elee:H,
H+
We denote by
We occasionally write
and
aE
:r:(e)
X, y, Z
etc., and for each
the image of
(resp.
n!)
as
E into H (resp.
X(e:aE)
e with respect to
X.
H-(resp. H+-)va1ued vectors
~.
A ( ' E) ,
let us define
= L :r:(e)
ee:A
and
Ixl = :r:(E).
(2.3)
A function
f
from
~, the set of all subsets of E, into H+ is called a
a-function [2] from 2E into H+ if it satisfies
(2.4)
f(0) = 0,
(2.5)
f(A) ~ f(B)
(2.6)
f(A VB) + f(A"B) ~ f(A) + f(B)
The (2 • 6) means t ha t f is a su.brtodu ZaP function.
We define a po~ymatroid P as a pair (E,p) , where p is as-function
from 2E into H+, and we also denote the po1ymatroid by P(E,p). E is
called the ground set and p the ground-set rank function of the po1ymatroid
Copyright © by ORSJ. Unauthorized reproduction of this article is prohibited.
The Independent-Flow Problems
P(E,p).
A vector
X in
n!
191
is called an independent vector of
P(E,p)
if
X satisfies
!: E).
(For polymatroids, also see [Z], [10], [lZ] and [13].)
x(A) ~ p(A)
(Z.7)
3.
(A
Fundamental Properties of a Polymatroid
P be the set of all independent vectors of a polymatroid
Let
Define the 8aturation function
sat, from
Pinto
P(E,p).
ZE, with respect to P(E,p)
as follows.
"For each
X (£ P)
for any
y(u)
(3.1)
and
= x(u) +
y(v) = x(v)
Informally,,, sat(X)
P.
X in
(3.Z)
y (£
l:~)
sat (X)
if and only if
defined by
"
P, Le.,
y
is not an independent vector."
is the "saturated" subset of ground set
E with respect
Note that the saturation function is a generalization of the
(£ E),
U
U £
E - {u})
(v £
closure function of a matroid.
P) and
E),
d,
does not belong to
to
U (£
d (> 0) the vector
We can eastly see from (Z.7) that, for
belongs to
U
sat (x)
X (£
i f and only if
x(A) = p(A)
for some
A ( ' E) such that
"
X (£ P) and
£
U
A.
E - sat(X», denote by c+ (x,u) the maximu~
value of d (> 0) for which the vector y defined by (3.1) belongs to P.
c+ (x,u) is given in terms of the ground-sE,t rank function P by
(3.3)
c+(X,U),,= min{p(A) - x(A)IA'E,UEA} (> 0).
For X (£ P) and U (£ E) such that U £ sat(x), let us define
For
dep(x,u) (' E)
" v
£
as follows.
dep(x,u)
(i)
U (£
v
=
i f and only if
U
or
(ii)
(3.4)
v £ sat (x) - {u}
the vector
y
y(u) .. x(u)
+
y(w)
ZE
dep(X,u)
=0
if
U
d (> 0)
such that
defined by
d,
= x(w)
(w
y(v) = x(v) - d,
£
E - {u,v})
P."
belongs to
Define
and thE,re exists
t sat(X).
The function
is called the dependence jUnction with respect to
dep(x,u) - {u}, we denote by
'"
c(x,u,v)
dep
from
P(E,P).
the, maximum value of
P x E into
When
d (> 0)
v £
for
Copyright © by ORSJ. Unauthorized reproduction of this article is prohibited.
192
S. FUjishige
which the vector
'\,
y
defined by (3.4) belongs to
c(X,u,v}
is given in terms of
p
(3.5)
~(X,u,v) = min{p(A} -
x(A}
P.
We can easily show that
by
IA~ E,ue:A.,v~} ~
x(V».
Now, we show several lemmas which are fundamental in the theory of
po1ymatroid and will be used in the subsequent sections.
Lemma 1.
(3.6)
X (E P) and
If, for
A, B (' E),
x(B) = p(B),
x(A) = p(A),
then we also have
x (A U B) = p (A U B) ,
(3.7)
Proof:
(3.8)
p(Af"\B).
The lemma follows from the submodu1arity of
+
p(A) - x(A)
~
=
x(AnB)
p, i.e.,
p(B) - x(B)
+
P (A V B) - x (A V B)
p (A f'\ B) - x (A f'\ B) ~ O.
Q.E.D.
Lemma 2.
Suppose
X
P and define
E
A1 = {AIA'E,x(A)=P(A)L
(3.9)
Then, we have
(3.10)
sat (X) E A ,
1
Proof:
sat (X)
~
A
The lemma follows from the definition of the saturation function
and Lemma 1 (also see (3.2».
Lemma 3.
Suppose
Q.E.D.
X E P
and
u E sat(X).
Define
(3.11)
Then, we have
(3.12)
dep(X,u) E A ,
2
Proof:
dep(X,u)
~
A
The lemma follows from the definition of the dependence function
and Lemma 1.
Q.E.D.
It should be noted that from Lemmas 2 and 3
dep(X,u)
~
there holds
sat(X).
It should be also noted that A1 (resp. A ) in Lemma 2 (resp. Lemma 3) forms
2
a distributive lattice with respect to set inclusion and that sat (X) (resp.
dep(X,U»
A
2
is the maximum element (resp. the minimum element) of
A1 (resp.
) •
Lemma 4.
Suppose
For an arbitrary
(3.13)
let
y
0 < d
be a
d
X E P,
U E
sat(X}
and
V E
dep(X,u) - {u}.
satisfying
'\,
~ c(X,u,v},
vec~or
(in
n!)
defined by
Copyright © by ORSJ. Unauthorized reproduction of this article is prohibited.
The Independent-Flow Problems
(3.14)
y(U) = x(u) + d,
yew) = x(w)
(w
193
y(v) = xCv) -- d,
E - {u,v}).
£
Then, we have
(3.15)
Y £ P,
(3.16)
sat(y)
sat(X).
The fact that
Proof:
y
follows from (3.13), (3.14) and the
£ P
'\,
c(X,u,V).
definition of
Moreover, since for
BO
= sat (x)
= x(BO) = P(BO)
y(B )
O
A (2 sat (X»
yeA) = x(A),
and since for any
(3.16) follows from Lemma 2.
Lemma 5.
(3.17)
Q.E.D.
Under the assumption of Lemma 4, there holds
c+ (Y,w) = c+ (X,w)
(w
£
E - sat(X».
By Lemma 2 and the definition of
Proof:
X and
y,
we have for
BO-
sat (x)
(3.18)
(3.19)
y(B O) = x(BO) = P(B O)'
yeA) = x(A)
(A ~ B ).
O
Moreover, for any independent vector
Z,
s(B) = p(B)
LE
for some
B (' E),
then
(3.20)
peA) - seA)
(See (3.8).)
~
p(AVB) - s(AVB)
(A {; E).
Therefore, from (3.18) '\, (3.20) and (3.3) we get (3.17).
Q.E.D.
Lemma 6.
Suppose
X£ P
and let
u ' u
2
l
and
V
2
be three distinct
E such that
elements of
1, 2),
(3.21)
V
For an arbitrary
(3.22)
0 < d
~
d
2
t dep(X,u ).
l
satisfying
'\,
c(X,u ,V ),
2 2
"'-
let
y
(3.23)
be a vector (in
P) defined by
y(u 2) = x(u 2) + d,
y(V 2) = x(02) - d,
yew) = x(w)
(w £ E - {u 'V 2 }).
2
Then, we have
sat(y),
(3.24)
U
(3.25)
dep(y,u )
l
l
Proof:
£
= dep(X,u l )·
The relation (3.24) follows from (3.21) and Lemma 4.
Copyright © by ORSJ. Unauthorized reproduction of this article is prohibited.
194
S. Fujishige
Furthermore, by the assumption and Lemmas 1 and 3,
(3.26)
u 2' V
2
i dep(x,u l ).
Set
(3.27)
CO=dep(x,u ).
l
From (3.26), (3.27) and Lemma 3, we have
A~::: {AIA~E,ule:A,y(A)=P(A)},
(3.28)
Co E:
(3.29)
y(A) = x(A)
(A ~ CO),
From (3.28) and (3.29), the set
Co
thus have (3.25).
Lemma 7.
elements of
Also, let
E:
y
We
Q.E.D.
Suppose X E: P and let u ' u ' VI and
2
l
E satisfying (3.21) and (3.30):
vI
(3.30)
A~.
must be the minimum element of
dep(X,u )·
l
be a vector given by (3.23) for
V
2
be four distinct
d satisfying (3.22).
Then, we
have
(3.31)
Proof:
For any independent vector
Z, if
z(B) =
p(B)
for some
B ( ' E),
then there holds
(3.32)
p(A) - z(A) ~ p(A"B) - z(AAB)
(See (3.8).)
(3.33)
Set
y(C O)
Then, from (3.26) and Lemma 3,
Co = dep(x,u ).
= x(CO) =
(A~E).
l
p(C )'
O
Furthermore, from (3.26) we have
(3.34)
= x(A)
y(A)
(A ~ CO),
Lemma 7 follows from (3.32)
Lemma 8.
Suppose
P and let u i ' vi (i = 1, 2,
E:
sat(X),
V. E:
1-
dep(x,u.)
(1 :;,
let
y
(3.37)
o
<
q)
be
(i
1-
i < j :;,
1, 2,
q),
q) •
d. (i = 1, 2, " ' , q) satisfying
For arbitrary
(3.36)
Q.E.D.
(3.34) and (3.5).
E such that
distinct elements of
U. E:
1-
X
~
1-
~
di :;, c(X,ui,v i )
be a vector (in
a!)
=x
y(v.)
1-
= x(v.)
- d.11-
1-
= 1, 2,
q),
defined by
+ d 1-. }
y (u 1-.)
(u .)
(i
i
= 1, 2,
q,
y(w) = x(w)
Then, we have
Copyright © by ORSJ. Unauthorized reproduction of this article is prohibited.
2q
The Independent-Flow Problems
(3.38)
y e: P,
(3.39)
sat(y)'= sat(x) ,
(3.40)
c+ (y,w) = c + (x,w)
Proof:
195
(w e: E - sat(x».
Lemma 8 can be easily shown by induction on q
using Lemmas 4
7.
~
Q.E.D.
Lemma 8 will play an important role in developing algorithms for
solving the independent-flow problems.
I t should be noted that (3 .38) ~ (3.40)
hold if the assumption of Lemma 8 is valid by appropriately numbering
and
u. 's
'/..
Vi's.
Lemma 9_
and
= E.
sat(x)
Consider a bipartite graph
with end-vertex sets
G*(X,Y;C*)
(3.41)
x, y e: P
Suppose
x = E,
Y
=
E' :: {e'lee:E}
and an arc set
(3.42)
C*
=
{(u,v')lu,VEE, ue:dep(x,v)},!; g x E'.
Here, the prime denotes a copy.
to be infinity.
(3.43)
where
g(c+u)
The capacities of the arcs in C*
Then, there exists a flow
~x(u)
(3.44)
For any subset
B of E,
A = {uluEX,V'EB', (u,v')e:C*}
(3.45)
x(A) = p(A),
(3.46)
B ,!;A.
in G*
are assumed
such that
(V' e: y),
g(c-v') = y(v)
I t follows from (3.42),
~*)
(u e: X),
c+u = {(u,V') IV'e:Y, (u,v')e:C*}
Proof:
q (e:
and
c'-v' = {(u,v')luEX,(u,v')e:C*L
A be given by
let
(~X).
(3.44) and Lemmas 1 and 3 that
Therefore, we see from (3.45) and (3.46) that
(3.47)
y(B) ~ y(A) ~ p(A)
= x(A).
Consequently, from (3.44) and (3.47), the ex:lstence of a flow
9
in
G*
satisfying (3.43) is shown by the supply-darulnd theorem for bipartite
Q.E.D.
networks [1, p.84].
4.
The Independent-Flow Problems
Now, we shall formulate the independent-flow problems.
V ,V )
l
2
be a finite directed graph with a vertex set
two distinguished vertex subsets
a+
and
a-
from
a (e: A*) and
u,
A*
V
into
V
(e: V), then
V1
and
V
are defined.
u
and
v
2
of
If
V,
Let
G(V,A*;
an arc set
A*
and
V, where incidence functions
a+a = u and a-a = V for
are, respectively, called the
Copyright © by ORSJ. Unauthorized reproduction of this article is prohibited.
196
S. Fujishige
initial vertex and the terminal vertex of
we assume that
vlnv Z
=
a.
For simplifying the presentation,
0 and that for each u,
one arc with its initial vertex u
Suppose that for each
i
and
(E
V
V)
there is at most
v.
the terminal vertex
(= 1, Z) a polymatroid
P.(V.,p.)
1.-
1.-
1.-
is defined
V.1.- and that to each arc a (E A*) a capacity
and a cost yea) (E H) are given. Let N be a network represented
on the vertex set
- {O})
by an ordered quintuple:
(4.1)
where
N = (G(V,A*;V ,V )'P ,P 'c,y),
1 Z l Z
c (resp.
is the vector in
y)
a!*
(resp.
~*)
with its components
c(a) (aEA*) (resp. yea) (aEA*».
We call an ordered triple
(s,f,t)
(4. Z)
5
is an independent vector of
(4.3)
t
is an independent vector of
(4.4)
(4.5)
o ~ f(a)
an independent flow in
N if
Pl(Vl ,P1)'
PZ(VZ,P )'
Z
c(a)
(a E A*),
s(v) + f(o-v) = f(o+v)
(v E VI)'
(4.6)
f(o - v) = f(o +v) + t(v)
(v E Vz),
(4.7)
f(o-v) = f(o+v)
(v E V - V1VVZ)'
where, for v (E V), 0+ and 0- are defined by
o+v = {ala+a=v,aEA*},
(4.8)
o-v = {ala-a=v,aEA*}.
151 (= Itl) is the flow value of (s,f,t). A maximum independent flow is an
independent flow of the maximum flow-value. The cost C(f) of an independent
flow (s,f,t) is defined by
(4.9)
C(f)
L f(a)y(a).
aEA*
Here, we assume that H is a totally-ordered commutative ring so that the
~
multiplication in (4.9) is defined.
A maximum independent flow of the minimum
cost is called an optimal independent flow.
We shall consider the following two problems (called the independent-
flow prob lema) :
(I) to find a maximum independent flow in
(11) to find an optimal independent flow in
N (regardless of the cost);
N.
yea) (aEA*) as the length of a, there is no
directed cycle of negative length in G(V,A*;Vl,V ). Also, we shall occasionZ
ally express an independent flow (s,f,t) in N by f alone.
We assume that, considering
Copyright © by ORSJ. Unauthorized reproduction of this article is prohibited.
The Independent-Flow Problems
5.
197
Auxiliary Network Associated with an Independent Flow
(s,f,t) in N = (G(V,A*;V ,V ),P ,P ,c,y)
1 2 1 2
-'_.- -= (G (V,,4.),c;y) associated with (s,f,t)
f
is a directed graph, called the auxiliary graph
Given an independent flow
r.:JUXiLiary network N
f
we define the
as follows.
Gf(V,A)
The
associated with
V
(5.1)
V and an arc set A, where
(s,f,t), with a vertex set
= VV{s*, t*}
A is composed of the following six dis joint parts:
{alaEA*,f(a)<c(a)},
AO
(5.3)
B*
{a* IaEA*, o<f(a) , a+a*=a - a, a- a*=a+}
a ,
(5.4)
{(u,v) IVEsat1 (s) ,uEdeP1 (s,v)-{v}},
A1
(5.5)
{(u, v) IUEsat 2 (t), VEdeP2(t,u)-{u}},
A2
and
(5.2)
(5.6)
51
(5.7)
52
{(s*,v) IVEV -sat (s)}V{(V,8*) 18(V»O},
1
1
{(v,t*) IVEV2-sat (t)}U{(t*,v) It(v»o}'
2
i (= 1, 2),
and dePi are, respectively, the saturation
i
function and the dependence function defined with respect to the po1ymatroid
Here, for each
P.(V.,p.).
'Z-
'Z-
Furthermore,
'Z-
a(a)
(5.8)
C
c(a) - f(a)
f(a)
'"c 1 (S,v,u)
'"c 2 (t,u,V)
c +(S,v)
is a vector (e:
if
if
if
t(v)
if
if
i (= 1, 2),
a
a
= (U,V)
= (U,V)
a
a
a
a
= (8*,V)
= (V,8*)
= (v, t*)
= (t*,V)
'"
c. and
'Z-
(5.9)
flA)
E
E
e: 51'
e: 51
E 52'
e: 52'
~ ~d ~
'Z-
P.(l1.,p.).
'Z-
such that
A ,
1
A ,
2
+ ue, r~p&tbe~,
c.
defined with respect to the po1ymatroid
(in
given by
a e: A O'
if a e: B* and a is the arc in A*
"+,,
a+a = a-a and ,,a a = a a,
8(V)
c + (t,v)
2
J~)
if
if
1
Here, for each
sat
'Z-
'Z-
Also,
y
is a vector
given by
y(a)
For each arc
y(a)
= - y(a)
if
= 0
otherwise.
a (e:
as the length of
A),
a
in
a e: AO'
if a E B* and a is the arc in A*
a+a = a-a and a-a = a+"
a,
a(a)
is considered as the capacity of
such that
a and y(a)
Nf •
Copyright © by ORSJ. Unauthorized reproduction of this article is prohibited.
198
6.
S. Fujishige
Algorithmic Characterization of Optimal Independent Flows
We shall provide theorems which algorithmic ally characterize optimal
independent flows and give a basis for obtaining algorithms for finding an
optimal independent flow and a maximum independent flow.
We shall only outline
the proofs of the theorems since the theorems can be proven in a manner similar
to those in [4] and [5].
Theorem 1. Let (S,f,t) be an independent flow in N. The independent
flow (s,f,t) is of the minimum cost among all independent flows, in N,
having flow values equal to 151 (= Itl) if and only if there exists no
negative directed cycle in the auxiliary graph Cf associated with (S,f,t).
(Here, a negative directed cycle is a directed cycle of negative length.)
Proof:
The "only if" part:
directed cycle in Cf.
Suppose there exists at least one negative
f
Then, change the flow
along a negative directed
G .
cycle of the fewest arcs in
The resultant flow is an independent flow
f
due to Lemma 8 (the end-verticeB of the arcs, in Al (or A ) of Gf , lying on
2
the negative directed cycle satisfy the assumption of Lemma 8 because the
negative directed cycle is composed of the fewest arcs) and has a less cost
than that of
f.
This contadicts the assumption.
The "if" part:
Let
f
having the flow value equal to
corresponds to the difference
be an arbi~rary independent flow, in
151.
T-
Construct a circulation in
as follows.
f
Let
g
N,
Nf
which
n!)
be a vector (in
given by
g(a)
I(a) - f(a)
= f«x)
- 1«1)
= 0
if
if
a
£
AO
and
I(a) > f(a) ,
a is an atc
a-a, a-a = a+a
a £ B* and
that a+a =
in A*
and
such
f(a) > I(a) ,
otherwise.
Then, by appropriately assigning a flow to each arc of
by adding it to
capacities in
g,
Nf .
SlVA VS VA 2 and
l
2
. (Here, we neglect the
we get a circulation in N
f
Assigning a flow to each arc of
Al
and
A2
in an
appropriate manner is slightly involved but the existence of such a way of
assignment can be shown by employing Lemma 9.)
Nf
is thus realized as a circulation in
directed cycle in
of
G ,
f
the cost of
f
T-
Since the difference
f
and since there exists no negative
must be greater than or equal to that
Q.E.D.
f.
Theorem 2.
Suppose that
(s,f,t)
is an independent flow, in
N,
of
the minimum cost among all independent flows having flow values equal to
and that there exists at least one directed path from
8*
to
t*
in the
Copyright © by ORSJ. Unauthorized reproduction of this article is prohibited.
151
The Independent-Flow Problems
ef
auxiliary graph
8*
path from
let us take as
d
in Cf'
t*
to
(5,f,t).
associated with
199
P*
Let
be a shortest directed
(When there exists more than one such path,
P* such a shortest path of the fewest arcs.)
Moreover, define
by
d = min{a(a) I a is an arc lying on
(in If"
_A*) by
and a vec tor ')"
t
(6.1)
~(a)
(6.2)
=
d
if
d
if
p*} > 0
a is an arc in AD lying on P*,
a is an arc in A'fr such that Cl is an arc, in B*,
lying on P* and that ;/a = a-a, a-a = a+a,
A
otherwise.
= 0
Then, f* = f + ~ is an independent flow in N having the flow value equal
to 151 + d (> 15 I) .
Proof: Because of the assumption and Theorem 1, a shortest directed path
P*, from 8* to t* in Cf' of the fewest arcs exists. That the flow f*
is an independent flow in
N
can be shown by the use of Lemma
f and f*
Here, it may be noted that, for
C(f*) - C(f) = d· (the length of
(6.3)
Corollary_
there exists at least one directed path from
a vector
'"
_A*
f
8* to t*
Suppose the cost vector
y
~
f + t
15 I)
(>
in
N.
corollary then follows from Theorem 2.
Theorem 3.
f*
(=
f +~)
151 + d.
Proof: Let
(5,1,t)
the flow value equal to
of Theorem 2 1.s an independent flow of the
N,
151 + d.
'l.
having
8*
to
t*
in
Nf ,
which
and has the flow value equal to
Decompose the constructed flow into flows
8*
N,
Similarly as in the proof of the "if" part
corresponds to the difference 1 - f
from
having flow values equal
be an arbitrary independent flow, in
of Theorem 1, we can construct a flow, from
P_
The
Q.E.D.
minimum cost among all independent flows, in
to
p*
is an independent
N is a zero vector.
of
Let
of the fewest arcs and define
Then,
151 + d
flow having the flow value equal to
N and that
in Cf'
t*
to
8*
in Cf'
by (6.1) and (6.2).
(in If-)
Proof:
Cf ).
Suppose that (5,f,t) is an independent flow in
be a directed path, from
Q.E.D.
in Theorem 2,
in
p;,
8.
f. (i
'l.
£ I)
d.
along directed paths
t* (whose flow values sum up to d) and circulations 9j
along directed cycles Qj . Note that the lengths of paths Pi (i
to
(j £ J)
I) are less than or equal to that of
lengths of cycles
Q _ (j
J
£ J)
and that by the assumption the
are nonnegative.
must be greater than or equal to that of
£
Therefore, the cost of
f* because of (6.3).
1
Q.E.D.
Copyright © by ORSJ. Unauthorized reproduction of this article is prohibited.
s. Fujishige
200
Suppose that
Theorem 4.
(s,f,t)
there is no directed path from
associated with
Proof:
(s,f,t),
t*
(s,f,t)
then
Isl - Isl (> 0).
Gf ,
Isl,
s*
construct a flow, from
in
to
in the auxiliary graph
If
Gf
(5,1',1) , in
N,
N.
having the
then as in the proof of Theorem 3 we can
to
t*
in
Nf ,
having the flow value equal to
Consequently, there must exist a directed path from
(s,1',t)
s*
to
Q.E.D.
which contradicts the assumption.
For every independent flow
N and every vertex subset
in
U
there holds
(' V)
Isl ~ PI (VI-U) + c(A*A(Ux(V-U») + P (V "U).
(6.4)
2
2
On the other hand, when the assumption of Theorem 4 holds, let
of vertices (in
Cf'
N.
is a maximum independent flow in
If there exists an independent flow
flow value greater than
t*
s*
is an independent flow in
V) which are reachable from
s*
U*
be the set
along a directed path in
Then, by the definition of the auxiliary network we can eaSily show that
(s,f,t)
of Theorem 4 satisfies
Isl = Pl(VI-U*) + c(A*,,(U*x(V-U*») + P (V "U*).
(6.5)
2
2
Consequently, from (6.4) and (6.5) we have
max{lsl I (s,f,t)
(6.6)
=
7.
is an independent flow in
N}
min{P (Vl-U)+C(A*f'I (Ux (V-U» )+P (V 2"U) I U ~ V},
l
2
Algorithns
Based on the theorems and the corollary in the preceeding section, we
can propose algorithms for finding an optimal independent flow (and a maximum
independent flow) in
N.
The theorems and the corollary may not, however, be
sufficient to guarantee the finite termination of the algorithms described
below.
We thus assume that
Pi (A) (A, Vi' i = 1, 2)
integral multiples of a common element of
H.
and
c(a)
(a E: A*)
are
We also assume that auxiliary
networks can be efficiently constructed.
(1)
P1>imal-dual algorithm for finding an optimal independent flow
= O.
1
0
Set
2
0
Construct the auxiliary network
f
the independent flow
t*
in
G ,
f
f.
Nf (Cf(V,A),c,y) associated with
If there is no directed path from s* to
then the algorithm terminates and
f
is a solution; or
else go to 3°.
3° Find a shortest directed path
arcs in
G .
f
Let
'"
f
P*, from
be a vector (in
s*
to
t*, of the fewest
_A*) given by
H-
(6.1) and (6.2).
Copyright © by ORSJ. Unauthorized reproduction of this article is prohibited.
The Independent-Flow Problems
201
Then set
f+f+~
and go back to 2°.
(I') AlgoY'itrun faY' finding a maximum independent flow
Algorithm (I) described above is employed as an algorithm for finding
a maximum independent flow in
zero vector.
N by assuming that the cost vector
In this case, we should take as
p*
is a
y
in 3° a path, from
to
8*
t*, of the fewest arcs in G . Also, the initial independent flow f in 1°
f
can be arbitrarily chosen instead of f
0 as far as f(a) (a E A*), p .(A)
'/-
(A ~ V., i == 1, 2)
'/-
a(a) (a
and
E
A*)
are commensurable.
(II) Primal algoY'itrun faY' finding an optimal independent flow
1° Find a maximum independent flow
f
in
N (using
Algorithm (I')
described above).
Nf
2° Construct the auxiliary network
flow
f.
.~ssociated with the independent
If there is no negative dir·ected cycle in
algorithm terminates and
f
then the
of the fewest arcs in G . Then,
f
along the cycle '2* by as great a flow value as
3 ° Find a negative directed cycle
change the flow
Gf'
is a SOllltion; or else go to 3°.
f
Q*
possible (Similarly as described in Step 3° of Algorithm (I».
resultant flow as
f
Set the
again and go baek to 2°.
The validity of Algorithms (I), (II) and (I') is clear because of the
theorems, the corollary and their proofs in the preceeding section.
The
algorithms terminate in a finite number of steps due to the integrality of the
data
Pi(A) (A
~
Vi' i
==
1, 2)
and
a(a) (a
E
A*).
Since in the course of
carrying out the algorithms we get only integral independent flows, we have
the following.
Theorem 5.
If
p.(A) (A
'/-
~
V., i
'/-
==
1,2)
and
integral multiples of a common element (say, eO) of
optimal (or maximum) independent flow
integral multiples of
eO'
fO
in
a(a) (a
H,
N with
E
A*)
are
then there is an
fO (a) (a
E
A*)
being
In fact, such an integral optimal (or maximum)
independent flow can be found by using Algorithm (I) or (II) (or (I'».
It should be noted that, i f the integrality of the data is not assumed,
Algorithms (I), (11) and (I') may not termin8cte in a finite number of steps
but that, when we truncate the calculation, the flow then obtained by Algorithm
(I) is an independent flow of the minimum cost among all independent flows of
the same flow-value, while the flow then obta.ined by Algorithm (II) is a
Copyright © by ORSJ. Unauthorized reproduction of this article is prohibited.
S. Fufishige
202
maximum independent flow having an improved cost less than the initial one
(though for Algorithm (II) a maximum independent flow may not be easily
found) •
The author has not been able to succeed in determining whether
Algorithms (I), (11) and (I') terminate in a finite number of steps for
network
N with general polymatroids and capacities.
Finally, it should be noted that with a slight modification the argument
through the present paper is also valid fpr nonnegative submodular functions
instead of S-functions.
Aaknowledgrrienta
The author would like to express his sincere thanks to Professor Masao
Iri of the University of Tokyo for his valuable suggestions and discussions
on the present paper.
This paper was supported by the Grant in Aid for Scientific Research
of the Ministry of Education, Science and Culture of Japan under Grant:
Cooperative Research (A) 135017 (1976 'V 1977) •
The author is also supported by the Sakkokai Foundation.
References
[1]
Berge, C.: Graphs and Hypergraphs. North Holland, Amsterdam, 1973.
[2]
Edmonds, J.: Submodular Functions, Matroids, and Certain Polyhedra.
Proaeedi'YI{Ja of the Calgazy International Conferenae on Combinatorial
Struaturea and Their Appliaations, Gordon and Breach, New York, 1970,
pp. 67-87.
[3]
Ford, L. R., Jr., and Fulkerson, D. R.
Flows in Networks. Princeton
University Press, Princeton, 1962.
[4]
Fujishige, S.: A Primal Approach to the Independent Assignment Problem.
Journal of the Operations Research Soaiety of Japan, Vol. 20 (1977),
pp. 1 - 15.
[5]
Fujishige, S.: An Algorithm for Finding an Optimal Independent Linkage.
Journal of the Operations Researah Soaiety of Japan, Vol. 20 (1977),
pp. 59 - 75.
[6]
Iri, M., and Tomizawa, N.: An Algorithm for Finding an Optimal "Independent Assignment". Journal of the Operations Research Soaiety of Japan,
Vol. 19 (1976), pp. 32-57.
Copyright © by ORSJ. Unauthorized reproduction of this article is prohibited.
The Independmt-Flow Problems.
[7]
Iri, M.: A Practical Algorithm for the Menger-Type Generalization of the
Independent Assignment Problem. Mathematiaal FTogroamming (to appear in
1978) .
[8]
Iri, M.: Network FZO/;), Trunsportation and SaheduZing: Theory and
Algorithms. Academic Press, New York, 1969.
[9]
Lawler, E. L.: Matroid Intersection Algorithm. Mathematwal FTogramming,
Vol. 9 (1975), pp. 31-56.
[10] McDiarmid, C. J. H.: Rado's Theorem for Polymatroids. MathematwaZ
FToaeedings of the Cambridge PhilosophiaaZ Soaiety, Vol. 78 (1975),
pp. 263 - 28l.
[11] Tomizawa, N., and Iri, M.: An Algorithm for Determining the Rank of a
Triple Matrix Product AXB with Application to the Problem of Decerning
the Existence of the Unique Solution on a Network. Transaations of the
Institute of EZeatronws and COTTl17Unwation Engineer8 of Japan, Vol. 57A
(1974), pp. 834 - 841 (in Japanese); (English Translation in EZeatronias
and COTTl17Unwations in Japan, Vol. 57A (1974), pp. 50 - 57) •
[12] Welsh, D. J. A,: Matroid Theory. Academic Press, London, 1976.
[13] Woodall, D. R.: Applications of Polymatroids and Linear Programming to
Transversals and Graphs (presented at the 1973 British Combinatorial
Conference) •
Satoru FUJISHIGE: Department of
Mathematical Engineering and
Instrumentation Physics,
Faculty of Engineering,
University of Tokyo,
Hongo, Bunkyo-ku,
Tokyo 113, Japan
Copyright © by ORSJ. Unauthorized reproduction of this article is prohibited.
203
© Copyright 2026 Paperzz