WORKJIVG P A P E R
AN EFFICIENT ALGORITHM FOR BICRITERIA MINIMUM-COST CIRCULATION PROBLEM
Naoki Katoh
July 1987 WP-87-98
lnternatlonal lnstltute for Appl~ed Systems Analys~s
A-2361 LaxenburgIAustrra
B I IASA
A n Etticient Algoritha for Bicriteria Minimum-cost Circulation Problem
Naoki Katoh
July 1987 WP-87-98
Working Papers are interim r e p o r t s o n work of t h e I n t e r n a t i o n a l I n s t i t u t e f o r Applied Systems Analysis a n d h a v e r e c e i v e d only limited review. Views or opinions e x p r e s s e d h e r e i n d o not n e c e s s a r i l y r e p r e s e n t t h m e of t h e I n s t i t u t e or of i t s National Member Organizations.
INTERNATIONAL INSTITUTE FOR APPLIED SYSTEMS ANALYSIS A-2361 L a x e n b u r g , Austria
Foreword
This p a p e r i s c o n c e r n e d with a b i c r i t e r i a minimum-cost circulation problem which a r i s e s in i n t e r a c t i v e multicriteria decision making. The a u t h o r p r e s e n t s a strongly polynomial algorithm f o r t h i s problem, which r u n s in 0 ( m i n t n q o g 3 n , n 4 ( n log n
+
m ) l o g 5 n1)
time, where n and m are t h e numbers of v e r t i c e s and edges in a g r a p h respectively. I t i s achieved by making use of t h e p a r a m e t r i c c h a r a c t e r i z a t i o n of optimal solutions and a strongly polynomial algo- rithm f o r t h e single objective minimum-cost circulation problem.Alexander B. Kurzhanski Chairman
System and Decision Sciences P r o g r a m
A n m c i e n t Algorithm for Bicriteria Minimawcoat Circulation Problem
Naoki Katoh
1.
IntroductionIn r e c e n t y e a r s , many t y p e s of i n t e r a c t i v e optimization methods have been developed and used in p r a c t i c a l situations in o r d e r to s u p p o r t multicriteria deci- sion makings (see t h e book by Sawaragi, Nakayama and Tanino [19] and Wierzbicki and Lewandowski [27] f o r t h e s u r v e y of this topic). Given a n a d m i s s i b l e d e c i s i o n s e t (or a feasible d e c i s i o n set) X
s
Rn , and p objective functions, f 1 , f 2 ,- - ,f'
(all are assumed to b e minimization f o r convenience), t h e following problem formu- lations have been used in various situations of i n t e r a c t i v e multicriteria decision makings:
minimize max [ a i l i ( z )
+ pi 1 , +
EX i r i s pwhere ai and
pi
are positive and real constants respectively, which a r e computed based on t h e information supplied by t h e decision maker and/or t h e decision sup- p o r t s y s t e m .at and
pi
are typically determined in t h e following manner by t h e r e f e r e n c e point method, which i s one of t h e well known methods used in i n t e r a c t i v e multicri- t e r i a decision s u p p o r t systems (see 12'71 f o r t h e s u r v e y of r e f e r e n c e point methods). This method r e q u i r e s t h e decision maker to specify t h e a s p i r a t i o n level qi and t h e r e s e r v a t i o n level ri f o r e a c h objective f i . The values of qi and ri are respectively i n t e r p r e t e d as t h e d e s i r a b l e outcome f o r i-th objective t h a t t h e deci- sion maker would like to a t t a i n , and t h e maximum allowable outcome f o r i-th objec- tive. Then t h e d e g r e e of t h e achievement of a givenz
E X f o r a n i-th objective i s measured byThe aggregated d e g r e e of t h e achievement f o r z i s then measured by s
=
min pi (qf , r i , f i ( z ) ).
lSi rp
The method solves t h e following problem:
maximize s ,
z e X
and provides i t s optimal solution 2' to t h e decision maker. If z s i s not satisfacto- r y f o r t h e decision maker, h e or s h e may respecify t h e a s p i r a t i o n and/or r e s e r v a - tion levels and t h e above p r o c e s s i s r e p e a t e d until a s a t i s f a c t o r y solution i s ob- tained. A t e a c h round of t h i s i t e r a t i o n , w e need to solve t h e problem (4). Letting ai
=
I/ ( r i - q i ) andpi =
-ri / ( r i -qi ), w e haveT h e r e f o r e , t h e problem (4) i s equivalent to problem (1).
Some o t h e r modifications and generalizations of t h i s achievement function have been proposed by s e v e r a l a u t h o r s , i.e., Wierzbicki [22, 23, 24, 25, 261, Nakayama [16], S t e u e r and Choo [20], (see a l s o [27] f o r g e n e r a l discussion about achievement functions). Many of t h o s e achievement functions have t h e form simi- l a r to t h e one in (3).
In view of this, i t is of g r e a t significance to study t h e computational complexi- t y r e q u i r e d f o r solving t h e problem (1).
W e c o n c e n t r a t e on t h e case where p
=
2 and e a c h single objective problem Pi , i=
1 , 2 defined belowPi : minimize f i ( z )
z c y
is a minimum cost circulation problem (SMCP). Both problems are assumed to have optimal solutions. W e shall study problem (1) with such r e s t r i c t i o n s , which w e call a b i c r i t e r i a minimum-cost c i r c u L a t i o n problem (BMCP). Given a d i r e c t e d g r a p h G
=
(V,E), where V and E denote t h e sets of v e r t i c e s and edges respectively, a single objective minimum-cost circulation problem (SMCP) c a n b e written as fol- lows.SUCP : minimize c (e ) z (e ) e e
s u b j e c t t o
1 cz
(6 )In = ( I L , v ) E E I=
tCz(e')Je'=
( v , w ) EE j f o r vE V
(7)H e r e a ( e ) , b ( 6 ) and ~ ( e ) a r e given integer numbers. a ( 6 )
= -=
and b ( e )= +-
are allowed. Let t h e objective functions jl and j2 f o r Problem BMCP b e
and define
where c l ( e ) and c2(e) a r e i n t e g e r s and a1,a2
>
0. Problem BMCP i s then descri- besub a s follows.BMCP
: minimize max [ g l ( z ) , g 2(z) js u b j e c t to t h e constraints of (7) and (8).
Recently Tardos [21] discovered a strongly polynomial algorithm f o r solving Problem SMCP, t h e existence of which w a s a n open problem since Edmonds and Karp [5] proposed a polynomial time algorithm f o r it. An algorithm t h a t solves a problem whose input consists of n r e a l numbers is strongLy p o l y n o m i a l if
(a) i t performs only elementary arithmetic operations (additions, s u b t r a c - tions, comparisons, multiplications and divisions),
(b) t h e number of operations r e q u i r e d t o solve t h e problem is polynomially bounded in n , and
(c) when applied to rational d a t a , t h e size of t h e numbers (i.e., t h e number of bits r e q u i r e d to r e p r e s e n t t h e numbers) t h a t t h e algorithm g e n e r a t e s i s polynomi- ally bounded in n and t h e size of t h e input numbers.
Based on Tardos' r e s u l t , Fujishige [7], Orlin [17], Galil and Tardos [9] pro- posed m o r e effioient strongly polynomial algorithms. Among them, t h e one given by Galil and Tardos [9] i s t h e f a s t e s t , which runs in 0 ( n 2 ( m
+
n log n ) l o g n ) time, where n= M
and m= BI.
The major goal of this p a p e r is to propose a strongly polynomial algorithm f o r solving Problem BMCP, which r u n s in O(min tn %og3n, n '(n log n
+
m ) log5n 1) time. Notice t h a t t h a t Problem BMCP c a n b e equivalently transformed to t h e fol-lowing form.
BMCP' : minimize z
s u b j e c t to (7), (8) a n d
S u c h reformulation h a s b e e n used in t h e more g e n e r a l s e t t i n g in o r d e r to solve problem (1) ( s e e C h a p t e r 7 of t h e book [19]). This a p p r o a c h may not b e recom- mended in case t h e set X h a s a good s t r u c t u r e , s i n c e t h e new c o n s t r a i n t s (12) ad- d e d to t h e o r i g i n a l f e a s i b l e decision set X may d e s t r o y t h e good s t r u c t u r e of X . In o u r problem, we c a n n o t g u a r a n t e e a n y more t h e t o t a l unimodularity of t h e con- s t r a i n t matrix a s s o c i a t e d with t h e c o n s t r a i n t s (7), (8) a n d (12) f o r t h e a b o v e p r o b - lem BMCP', while t h e c o n s t r a i n t matrix a s s o c i a t e d with t h e c o n s t r a i n t s (7) a n d (8) i s known to b e totally unimodular ( s e e t h e books by Lawler [13] a n d Papadimitriou a n d Steiglitz [18]), which e n a b l e s u s to develop e f f i c i e n t algorithms f o r Problem SMCP.
The algorithm p r o p o s e d h e r e , on t h e o t h e r hand, d o e s n o t u s e t h e a b o v e f o r - mulation, b u t t a k e s full a d v a n t a g e of t h e good s t r u c t u r e of t h e c o n s t r a i n t s (7) a n d (8). I t employs as a s u b r o u t i n e t h e s t r o n g l y polynomial algorithm f o r solving P r o b - lem SMCP by Galil a n d T a r d o s [9], a n d finds a n optimal solution of Problem BMCP in
~ ( m i n [ n 610g3n, n 4(m
+
n log n ) log5n1)
time. The t e c h n i q u e s we u s e are r e l a t e d to Megiddo 114,151.
The problems t r e a t e d i n 114,151
a r e , however, d i f f e r e n t from o u r s . Our r e s u l t implies t h a t t h e b a s i c i d e a s developed by 114,151
c a n b e utilized to s o l v e a class of problems which h a v e t h e o b j e c t i v e function s u c h as t h e o n e in (1) with p=
2.Our problem i s also r e l a t e d b u t n o t equivalent to t h e minimum cost c i r c u l a t i o n problem with o n e additional l i n e a r c o n s t r a i n t , which w a s s t u d i e d by B r u c k e r 121.
The algorithm p r o p o s e d by [2] is, however, n o t s t r o n g l y polynomial. The t e c h - niques developed h e r e c a n b e d i r e o t l y used to improve t h e running time of B r u c k e r ' s algorithm to h a v e a s t r o n g l y polynomial algorithm whose running time i s t h e same as t h e o n e f o r BMCP. W e a l s o show t h a t t h e t e c h n i q u e s developed h e r e c a n b e e x t e n d e d to t h e case w h e r e t h e o b j e c t i v e function i s n o t t h e o n e as in (11)
-
1b u t i s s u c h as ( C a t
pi
( z )- pi
P ) P , w h e r e p i s a positive i n t e g e r .This p a p e r i s organized as follows: Section 2 gives some basic r e s u l t s . Sec- tion 3 p r e s e n t s an outline of t h e algorithm f o r solving Problem BMCP. Section 4 gives t h e detailed description of t h e algorithm which r u n s in 0 ( n 4 ( n log n
+
m )210g2n ) time. Section 5 improves t h e running time of t h e algo- rithm explained in Section 4 to ~ ( m i n [ n ' l o g 3 n , n ' ( m+
n log n ) log5nI ) ,
based o n t h e idea given by Megiddo [IS], which employa t h e idea of p a r a l l e l combinatorial algorithms to speed up t h e running time f o r many t y p e s of combinatorial optimiza- tion problems not including o u r t y p e of problem, though in f a c t w e d o not need any p a r a l l e l p r o c e s s o r b u t simulate t h e p a r a l l e l algorithm in a s e r i a l manner. Section 6 discusses s o m e extensions of o u r a p p r o a c h to o t h e r types of problems s u c h as t h e minimum cost circulation problem with one additional l i n e a r constraint.2. Baaic Concepts and Properties
Let X
s
RE denote t h e set of ~ ~ i m e n s i o n a l v e c t o r s z satisfying ( 7 ) and (El), i.e., X is t h e feasible decision s e t , and l e t f ( z )= ui(z),
f 2 ( z ) ) :#
+ R2 denote t h e function t h a t maps z E X to t h e objective p l a n e R 2 . Definewhich i s called t h e JbasibLe set ( o r a d m i s s i b l e outcome s e t ) . Notice t h a t set Y is a convex polygon s i n c e X i s a convex polyhedron and both f l ( z ) and f z ( z ) are linear. A v e c t o r y
=
( y 1 , y 2 ) E Y i s called O c i s n t if t h e r e does not e x i s t y'=
( y i , y i ) E Y such t h a t y i 6 yi: holds f o r i=
1.2 and a t l e a s t o n e inequality holds s t r i c t l y . A set of all efficient v e c t o r s i s called t h e m c i e n t s e t , which w e denote Yo. A v e c t o r y=
( y I , y 2 ) E Y i s called w e a k l y e m c i m t if t h e r e does not e x i s t y '=
( y i , y i ) E Y s u c h t h a t y i<
y4 holds f o r e a c h i=
1.2. An z E X s u c h t h a t f ( z ) is efficient i s called a n O c i e n t s o l u t i o n . The sets Y and Yo are illus- t r a t e d in Figure 1 a s t h e shaded area and t h e thick piecewise l i n e a r ourve, r e s p e c - tively.The following auxiliary problem with nonnegative p a r a m e t e r h plays a c e n t r a l r o l e in o u r algorithm.
I. Illustration o f t h e sets
Y
andYo.
P(A): v(A) --= minimize P I ( = )
+
Af2(z) s u b j e c t to ( 7 ) a n d (8).I t i s well known ( s e e
[lo]
f o r example) t h a t t h e function v(A) i s piecewise l i n e a r a n d c o n c a v e i n A, as i l l u s t r a t e d in Figure 2, with a f i n i t e number of joint points A(1), A(2),- -
,A(N) with<
A(*)<...<
A(N). H e r e N d e n o t e s t h e number of t o t a l joint points, and l e t A(*)=
0 a n d A(N= -
f o r convenience. Define f o r e a c h A E [0 , -)X' (A)
= lz
EX b
i s optimal to P(A) j.
(15) The following lemma i s well known in t h e t h e o r y of l i n e a r p a r a m e t r i c p r o g r a m s (see Gal [8] f o r t h e s u r v e y of t h i s topic). In what follows, f o r t w o r e a l numbers a , b with a 5 6 , ( a , 6 ) a n d [ a , 6 1 s t a n d f o r t h e o p e n i n t e r v a l lt(a<
t<
b ] a n d t h e closed i n t e r v a l It (a 5 t 5 b ] r e s p e c t i v e l y .Leaaaa 1.
(i) F o r a n y A f (Ag A(k)), k
=
1,...,
N+
1, w e h a v e X' (A) c X' (A(k a n d z'
(A)c
X' (A(k)).
Figure 2. nlustratlon of v (A).
A ) , k = 1 ,
...,
N + 1 , w e h a v e (ii) F o r a n y two d i s t i n c t A, A' E (A(* (*)X' (A)
=
X* (A').
(iii) F o r a n y A E (A(* -I), )) a n d a n y A' E (A(k 1, +I)), k
=
1 , .. .
,N, x'(A(,))=
[F+
(1 - p ) z 8 p S p S 1 , z E X e ( h ) a n dz'
EX'(A')].
L e t f o r k=
1 ,...,
N+
1X;
=
{ z E X b E X' (A) f o r all A E [A(k -1)' A(k)]].
(18)By Lemma 1. X;
=
X'(A) h o l d s f o r a l l A E (A(* A(*)). The following lemma is known i n t h e t h e o r y of p a r a m e t r i c l i n e a r programming.-
2.(i) F o r a n y t w o z . z 8 € & w i t h 1 5 k 5 N + 1 ,
hold.
- 8 -
(ii) F o r a n y z EX; a n d a n y z ' E X; with 2 S k S N
+
1 , l l ( z<
l l ( z'1
a n d J z ( z>
I z ( z'1
hold.
(i) F o r a n y A 2: 0 a n d a n y z E X' ( A ) , j ( z ) i s weakly efficient.
(ii) F o r a n y X
>
0 a n d a n y z E X e ( A ) , j ( z ) i s efficient.(iii) F o r a n y z EX;, k = 1 , 2
,...,
N + l , j ( z ) i s a v e r t e x of set Y.Proof. The proof of (i) i s given by Dinkelbach [4] a n d Bowman [I]. (ii) i s p r o v e d as follows. If t h e r e e x i s t s z ' E X s u c h t h a t ji ( z ') S ji ( z ) , i
=
1 3 , hold a n d o n e of inequalities i s s t r i c t . In a n y c a s e , by A>
0 , i t impliesc o n t r a d i c t i n g t h a t z i s optimal to P(A). (iii) i s p r o v e d as follows. S i n c e j ( z ) i s ef- ficient, j ( z ) i s o n t h e b o u n d a r y of set Y. If j ( z ) i s n o t a v e r t e x , i t c a n b e r e p r e s e n t e d by a convex combination of two v e r t i c e s . That i s , t h e r e e x i s t z ' , z " E X a n d p with 0
<
p<
1 s u c h t h a tS i n c e z i s optimal to P(A) with A E (A(k A(k)), i t follows t h a t
s i n c e o t h e r w i s e f l ( z ' ) + hfz(z') < f i ( z ) + h f 2 ( z ) or f l ( z ")
+
Ajz(z")<
j l ( z )+
A j z ( z ) holds by (19), c o n t r a d i c t i n g t h e optimality of z to P(A). T h e r e f o r e , both z ' a n d z " are optimal to P(A) a n d by Lemma 2 (i) f l ( z )=
j1 ( z ')=
j l ( z ") a n d j z ( z )=
j Z ( z ')=
j Z ( z ") follow. This c o n t r a d i c t s t h a t j ( z ) , j ( z ') a n d j ( z 4 ' ) are d i s t i n c t points in t h e o b j e c t i v e plane.By Lemma 3 (iii) j ( z )
=
V 1 ( z ) , j Z ( z ) ) maps a l l z E to a unique e f f i c i e n t v e r t e x in Y, a n d i t i s e a s y to see t h a t s u c h mapping from Xi, k=
1 ,...,
N+
1 to t h e set of e f f i c i e n t v e r t i c e s i s o n e to one. T h e r e f o r e w e use t h e notation z k to r e p r e s e n t a n y z EX; in what follows. A s k i n c r e a s e s from 1 to N+
1, t h e c o r r e s p o n d i n g e f f i c i e n t v e r t e x moves from top-left to bottom-right in t h e o b j e c t i v e p l a n e ( s e e Figure 1). The e d g e connecting t w o c o n s e c u t i v e e f f i c i e n t v e r t i c e s c o r r e s p o n d i n g to Xi a n d X; r e s p e c t i v e l y c o r r e s p o n d s to all optimal solutions ofP(A(k)). The following lemma gives a basis f o r o u r algorithm.
Lemma 4.
(1) If l(zl)
>
2(z1), t h e n z1 i s optimal to Problem BMCP.(ii) If g1(zN+l)
<
g 2 ( z N +l), then zN i s optimal to Problem BMCP.(iii) If n e i t h e r (i) n o r (ii) holds, t h e r e e x i s t s k* with 1 4 k * 4 N s u c h t h a t
k * +l
g l ( z k * 4 9 2 ( z k * and g l ( z 2 g z ( z k * +1)
(20) hold. Letting p b e t h e solution of t h e following l i n e a r equation
,Wl(Zk*) + (1
-
~ r ) g ~ ( z ~ * )=
,W2(zk* +I) + ( 1 - p ) g 2 ( z k * + l ),
(21) thenis a n optimal solution of BMCP.
Proof. (i) If z1 i s not optimal to BMCP, t h e r e e x i s t s E X such t h a t jl(z^)
<
j l ( z l ) and j2(z^)<
j l ( z l ) hold. j l ( z ^ )<
j l ( z l ) implies t h a t z1 i s not optimal to P(O), but z1 i s optimal to P ( 0 ) by Lemma 1 (iii). This i s a contradiction. (ii) i s proved in a manner similar to (i). (iii) F i r s t note t h a t by Lemma 2 (ii) and by definition of gi ( z ), t h e r e e x i s t s k * s u c h t h a t zk* and zk* s a t i s f y (20). In addition, by Lemma 2 (ii), t h e l i n e a r equation of (21) in p h a s a unique solution satisfying 0 4 p 4 1.z * defined by (22) i s t h e n optimal to X * (A(k.)) by Lemma 1 (iii), and j ( z * ) i s effi- c i e n t by Lemma 3 (ii). I t follows from (21) and (22) t h a t
holds. Since j ( z * ) i s efficient, t h e r e i s no z € X such t h a t j l ( z )
<
j l ( z e ) and j 2 ( z ) < j 2 ( z e ) hold. Thus t h e r e i s no EX such t h a t g 1 ( z ) < g l ( z m ) and g 2 ( z )<
g 2 ( z 1 ) by (10) and a l , a 2>
0 , implying t h a t t h e r e is no z E X such t h a t m a x f g l ( z ) . g 2 ( z ) 1<
m a x f g l ( z*I,
9 2 ( z*I{
holds.To illustrate t h e situations corresponding to Lemma 4(i), (ii) and (iii), i t i s useful to consider t h e set
t h e set
Z
i s obtained from set Y by a n affine transformation and is similar to Y in s h a p e . SetZ
i s illustrated in Fig. 3 as t h e shaded area. The thick piecewise l i n e a rc u r v e in Fig. 3 c o r r e s p o n d s to t h e efficient set
Yo.
Figures 3 (a), (b) and (c) respectively i l l u s t r a t e t h e setZ
in which Lemma 4 (i), (ii) and (iii) hold. The s t r a i g h t line passing through t h e origin in Figs. 3(a) (c) s e p a r a t e s t h e setZ
into t w o subsets; one in which g l ( z ) S g 2 ( z ) holds and t h e o t h e r in which g l ( z ) 2 g 2 ( z ) holds. If Lemma 4(i) holds, a l l ( g l ( z k ) , g 2 ( z k ) ) , k=
1,... ,N +
1, lie below t h e s t r a i g h t line (see Fig. 3(a)) among which (gl(zl), g2(z1)) i s n e a r e s t to t h e line and hence z1 i s optimal. The case of Lemma 4(ii) i s similarly illustrated in Fig. 3(b). If Lemma 4(iii) holds, t h e problem i s reduced to find k * s u c h t h a t (g1(zk*). 8 2 ( ~ k * ) ) i s above t h e s t r a i g h t line and ( g l ( z k * 'I), g 2 ( z k * 'I)) i s below it. An optimal solu- tion z * i s t h e one s u c h t h a t (g l(z * ), g 2 ( z I)) i s t h e intersection point of t h e edge connecting (g1(zk*), g 2 ( z k * ) ) and (gl(zk* +I), g 2 ( z k * +I)) and t h e s t r a i g h t line (i.e., iYl(z*)=
iY2(Z*)).figmre 3 (a). The case In whlah Lemma 4(I) holds
Pigure 3 (b). The oase in whioh Lemma 4 (ii) holds.
By Lemma 2 (i), t h e condition of Lemma 4 (i) ( r e s p . (ii)) i s tested simply by tak- ing any X with h
<
(resp. h>
and obtaining a n optimal solution z of P(X). If n e i t h e r t h e condition of Lemma 4 (i) n o r (ii) holds, w e need to find k * satisfying (20). For this, w e only have to know Once is obtained, z k * a n d I k * a r e obtained by solving P ( h ( k , )-
E) and P(X(k.)+
E) respectively, where E is a sufficiently small positive number satisfying-
A(,,<
E and- <
E. The following lemma is useful f o r finding h with h<
o rh
>
and f o r estimating t h e above E.Lemma 5. Let
and
&nre 3 (c). The c a s e in which Lemma 4 (iii) holds Figure 3. Illustration of set 2.
Then
and
hold.
Proof.
(26) i s p r o v e d by showing t h a t f o r a n y A E [O, -) a n d a n y z EX'
(A)holds. After proving t h i s , (26) follows by Lemma 9 . 2 in t h e p a p e r by Katoh a n d I b a r a k i [Ill. Note t h a t P(A) f o r a fixed A i s a l i n e a r p r o g r a m a n d t h e c o n s t r a i n t s (7) a n d (8) of P(A) c a n b e w r i t t e n in t h e form A s
=
b by introducing 2 m s l a c k v a r i - a b l e s f o r 2m inequalities of (a), where A i s ( n+
2 m ) x ( 3 m ) m a t r i x ,z
i s a 3 m - dimensional v e c t o r a n d b i s a ( n +2m)-dimensional column v e c t o r e a c h of whose element i s e i t h e r 0, a ( e ) or b (e). I t i s well known in t h e t h e o r y of l i n e a r p r o g r a mt h a t t h e r e e x i s t s a n optimal solution z of P(A) s u c h t h a t z i s a r e s t r i c t i o n of
k
to nonslack v a r i a b l e s where zU i s a b a s i c f e a s i b l e solution of A s=
b . zU i s w r i t t e n bywhere B i s a ( n
+
2 m ) X ( n+
Zm) nonsingular s q u a r e s u b m a t r i x of A , B - l i s t h e i n v e r s e matrix of B , B ' = ~ ~ i s t h e adjoint of B a n d d e t ( B ) i s t h e d e t e r m i n a n t of B. I t is well known ( s e e C h a p t e r 4 of t h e book by Lawler [13] or C h a p t e r 13 of t h e book by Papadimitriou a n d Steiglitz [le]) t h a t matrix A i s t o t a l l y u n i m o d u l a r , i.e., e v e r y s q u a r e s u b m a t r i x C of A h a s t h e d e t e r m i n a n t of e i t h e r 0 , + 1 or -1. Hence det(B) i s e q u a l to e i t h e r +1 or -1. Each element of ~ ' = ~ f , i s , by definition, e q u a l to a n d e t e r m i n a n t of ( n+
2 m-
1 ) X ( n+
2m-
1 ) s u b m a t r i x of A , which i s also e q u a l to e i t h e r 0 , +1, or -1 by t h e t o t a l unimodularity of A . S i n c e e a c h element of A i s also equal to e i t h e r 0 , +1 or -1,k
i s a n i n t e g e r v e c t o r a n d t h e a b s o l u t e value of e a c h element of k i s at most ( n+
2 m ) a T h e r e f o r efollows. This p r o v e s (26), s i n c e by Lemma 2(i) t h e value f i (z'), i
=
1 , 2 i s t h e same f o r all z ' E z '(A) if A i s n o t a joint point, a n d by Lemma 1 (iii) i t i s r e p r e s e n t e d b y t h e convex combination of f i ( z k ) a n d f i ( z*
if A i s a joint point A(k).Now w e s h a l l p r o v e (27). F o r k which 1 S k S N -1, c o n s i d e r z k , z k a n d zk+', a11 of which c a n b e assumed to b e i n t e g e r v e c t o r s as p r o v e d above. S i n c e z , z ' E X * (A(k)) a n d z ',z " E X* hold by Lemma 1 (i), i t holds t h a t
a n d
Thus, w e h a v e
Then
Since j l ( x ) and j 2 ( x ) t a k e i n t e g e r values if x i s a n i n t e g e r v e c t o r , and j l ( z k )
<
j l ( z k +')<
j l ( z k +') and j 2 ( x k )>
j 2 ( z k +')>
j 2 ( z k +') hold by Lemma 2(ii), t h e numerator i s not l e s s t h a n 1. Since
holds by (26),
follows. This p r o v e s
-
4 I / M'.
By Lemma 5, i t i s easy t o test whether t h e condition of Lemma 4 (i) o r (ii) holds. For this purpose, w e have only t o solve P(X) f o r some X with 0
<
X<
1 / M and f o r some X>
M. If t h e condition of Lemma 4 (iii) holds, we must find k* satisfy- ing (20), z k * , z k *+'
and of (21) t o compute z * by (22). One possible a p p r o a c h t o do this i s t o employ t h e binary s e a r c h f o r determining X E (X(k.-l), and A' E X(k.+l)) o v e r t h e intervalu,i]
where _X and1
a r e a p p r o p r i a t e numbers satisfying _X<
1 / M and1 >
M respectively. By Lemma 5, such binary s e a r c h may be terminated until t h e interval length is reduced t o less t h a n 1 / ~ ' (though t h e d e t a i k a r e omitted). T h e r e f o r e such method r e q u i r e s 0(n2(m+
n log n ) l o g n.
logM) time. This i s polynomial in t h e input size because logM i s polynomial in t h e input size by (25). However, i t i s not strongly polynomial because of t h e term log M . The following section alternatively p r e s e n t s a strongly polynomial algorithm f o r finding with k * satisfying (20). Once i t i s obtained, z k * and zk*+' are computed by solving P(X(k.)-
E) and P(X(k.)+
E) respectively.H e r e E satisfies 0
<
E<
1 / M 2 . This i s justified since (27) implies A(k*)-
E E -'), A(k*)) and A(,*) + E E A(k*+')I.
3. The Outline o f the Algorithm
A s discussed at t h e end of t h e previous section, i t i s easy to t e s t whether t h e condition of Lemma 4(i) o r (ii) holds. Thus w e assume in t h i s section t h a t t h e condi- tion of Lemma 4(iii) holds and w e shall focus on how to compute with k satis- fying (20).
The idea of t h e algorithm is similar t o t h e one given by Megiddo 1141 which w a s developed f o r solving fractional programs. The similar idea w a s a l s o used by Gus- field 1101 to determine t h e c u r v e of t h e objective c o s t f o r parametric combinatori- a1 problems. W e apply t h e i r ideas t o find The algorithm applies t h e algo-
rithm of Galil a n d Tardos ( t h e GT-algorithm) to solve P ( A ( , ( . ) ) without knowing t h e e x a c t value of A(,(.). The computation p a t h of t h e GT-algorithm may contain condi- tional jump o p e r a t i o n s , e a c h of which s e l e c t s p r o p e r computation p a t h depending upon t h e outcome of comparing t w o numbers. Notice t h a t t h e GT-algorithm con- t a i n s a r i t h m e t i c o p e r a t i o n s of only additions, s u b t r a c t i o n s , multiplications a n d divisions, a n d comparisons of t h e numbers g e n e r a t e d from t h e given problem d a t a , a n d t h a t when applying t h e GT-algorithm
to
solve P ( A ) with A t r e a t e d a s unknown p a r a m e t e r , t h e numbers g e n e r a t e d in t h e algorithm are a l l l i n e a r functions of A or c o n s t a n t s n o t containing A. Note t h a t comparisons are n e c e s s a r y at conditional jumps. If a comparison f o r a conditional jump o p e r a t i o n i s made between t w o l i n e a r functions of A(,(.) , t h e condition c a n b e written in t h e form off o r a n a p p r o p r i a t e c r i t i c a l c o n s t a n t i , which c a n b e determined by solving t h e l i n e a r equation in A(,(.) a o n s t r u c t e d from t h e compared t w o l i n e a r functions. H e r e
L;
i s assumedto
b e positive s i n c e otherwisei <
A ( , ( . ) i s c l e a r l y concluded.An important o b s e r v a t i o n h e r e i s t h a t condition ( 3 0 ) c a n b e t e s t e d without knowing t h e value of A(,(. )
.
F o r t h i s , solve P();-
c ) . ~ ( i ) a n d P ( K+
c ) by t h e GT- algorithm, where i s now a known c o n s t a n t , a n d c i s a positive c o n s t a n t satisfyingE
<
1 / 2 h f 2 . Let z , z ' , z " b e t h e obtained solution of P ( X-
E ) . P ( ~ ) a n d P ( X+
c )respectively. F i r s t w e test w h e t h e r i s a joint point or not, b a s e d o n t h e following lemma.
Lemma 6. Let z , z' and z" b e t h o s e defined a b o v e . Then
i
i s a joint point if a n d only if t h e following l i n e a r equation in A h a s t h e unique solution A' equal toi.
Proof.
Ifi
i s a joint point, s a y A ( , ( ) ,i -
c a n di +
c lie in t h e i n t e r v a l s (A(,( A ( , ( ) ) a n d ( A ( , ( ) , A(,( r e s p e c t i v e l y , by Lemma 5. Thus, from definition of a joint point, f l ( z )+
A f 2 ( z ) ( r e s p . f l ( z " )+
W 2 ( z " ) ) defines t h e value v ( A ) of ( 1 4 ) f o r A E [A(,( A ( , ( ) ] ( r e s p . [ A ( , ( ) , A(,( Thus ( 3 1 ) h a s a unique solution A=
A ( , ( ) .A ) f o r some k with If
i
i s not a joint point, l e ti
belong to (,()2 4 k 6 N
+
1. The following five cases are possible.I
Case 1. A(k
< -
c a n d A+
c<
A(,(). In this case f l ( z )=
f l ( z ") a n dj 2 ( z )
=
j 2 ( z " ) hold by Lemma 2 , a n d (31) h a s no unique solution.n
C a a e 2. A
-
r<
A a n di +
r<
AO). By r<
1 / 2 A i 2 and Lemma 5.n
A
-
E>
A(k -2) holds a n d t h e equation (31) h a s t h e unique solution A'=
A(k which i s n o t e q u a l toi.
A
C a a e 3.
i -
r>
A(k a n d A+
r>
A(k). This case i s t r e a t e d in a manner similar to Case 2 .A
C a s e 4.
i -
r=
A(k-l) a n d A+
r<
Ag). z1 s a t i s f i e ss i n c e v ( A ) of (14) i s c o n c a v e . If j z ( z ) < j 2 ( z " ) , t h e equation of (31) h a s t h e unique solution A'
=
A(k# i.
If j 2 ( z )=
j 2 ( z "), (31) h a s n o unique solution.n
C a s e 5.
i -
r>
A(k -1) a n d A+
r=
A(k). This case i s analogous to Case 4.A
Note t h a t t h e case of
i -
r 4 A(k -1) and A+
r n A(k) i s n o t possible b e c a u s e~ ~ ~
-
A ( k - l ) ( k n ) I / Ai2 b y Lemma 5 a n d r<
I / 2hf2 by assumption.After computing z , z' a n d z" defined a b o v e , t h e algorithm p r o c e e d s as fol- lows. If o n e of z , z' a n d z " (say,
z^)
s a t i s f i e sz^
i s a n optimal solution of BMCP s i n c e j ( Z ) is weakly e f f i c i e n t by Lemma 3 (i) a n d h e n c e t h e r e i s n o z E X s u c h t h a t j l ( z ) < j l ( z ^ ) a n d j 2 ( z )<
j2(z^) hold. S o , as- sume in what follows t h a t none of z , z ', z" s a t i s f i e s (32). Depending upon w h e t h e ri s a joint point or n o t , c o n s i d e r t h e following two cases.
C a w 1.
fi
i s not a joint point. W e t h e n c o m p a r e t h e two values g l ( z ' ) a n d g z ( z ' ) . Two s u b c a s e s are possible.Snbcaae 1 k g l ( z ' )
<
g 2 ( z ' ) . Then A*> i
i s concluded, a n d t h e algorithm c h o o s e s t h e computation p a t h c o r r e s p o n d i n g to A*> i.
Subcase 1B. g l ( z ' )
>
g z ( z '). Then A*< fi
i s concluded, a n d t h e algorithm c h o o s e s t h e computation p a t h c o r r e s p o n d i n g to A*< i.
C a a e 2.
i
i s a joint point. Then we c o n s i d e r t h e following t h r e e s u b c a s e s .Subcase 2 k g l ( z " )
<
g z ( z " ) . By Lemma 2 (ii), g l ( z )<
g z ( z ) follows. This im- plies A*> i +
r a n d t h e algorithm c h o o s e s t h e computation p a t h c o r r e s p o n d i n g toSubcase 2B. g l ( z )
>
g 2 ( z ) . Similarly to Subcase 2A, g l ( z ")>
g 2 ( z ") follows.This implies A *
< i -
r and t h e algorithm chooses t h e computation path corresponding to A *< %.
Subcase 2C. g l ( z )
<
g 2 ( z ) and g l ( z ")>
g2(z").Then i s t h e d e s i r e d joint point A ( k a ) by Lemma 4 (iii). By Lemma 5 and 0
<
r<
1 / M 2 , z E and z" E follow. T h e r e f o r e , by Lemma 4 (iii), a n op- timal solution z * of BMCP is found by (21) and (22) a f t e r letting zk*=
z and= k * +l
=
' C .With this observation t h e algorithm s t a r t s with t h e initial i n t e r v a l (A,x), where _X and
x
are typically determined by _X=
1/ (M+
I ) ,x =
M+
1 , and e v e r y time i t performs t h e conditional jump operation, t h e c r i t i c a l valuei
is computed, and P(X-
E), ~ ( i ) and ~ ( f i+
E) are solved. Depending upon t h e cases explained above, t h e length of t h e i n t e r v a l may b e reduced in such a way t h a t t h e d e s i r e d joint point A ( k a ) e x i s t s in t h e reduced interval. I t will b e shown in t h e n e x t section t h a t Subcase 2C always o c c u r s during t h e c o u r s e of t h e algorithm, which p r o v e s t h e c o r r e c t n e s s of o u r algorithm. Since t h e GT-algorithm r e q u i r e s 0 ( n 2 ( n log n+
m ) log n ) jump operations, and at e a c h jump operation at m o s t t h r e e minimum cost circulation problems, i.e., P(X-
E), ~ ( i ) and P(X+
r ) , are solved by calling t h e GT-algorithm, t h e e n t i r e algorithm r e q u i r e s 0 ( n 4 ( n log n+
m)210g2n) time in total.4. Dermiption and Analymia of the Algorithm
The algorithm f o r solving Problem BMCP is d e s c r i b e d as follows:
Procedure SOLVEBMCP
Input: A d i r e c t e d g r a p h G
=
(V,E) with costs cl(e), c2(e), lower and u p p e r compa- c i t i e s a (e) and b (6) f o r e a c h e E E , and t h e weights a l , a 2 , a n d 8 2 .Output: An optimal solution of Problem BMCP.
Step 0: [Initialization]. Compute M by (23), (24), (25). Let A = l / ( M + 1 ) , x = M + l a n d r = 1 / ( 2 M 2 + I ) .
-
Step 1: [Test t h e conditions of Lemma 4 (i) and (ii)]. Compute optimal solutions z ' and z" of Problems P a ) and P(X) respectively by applying t h e GT-algorithm. If
z ' (resp. z ") s a t i s f i e s g l ( z ')
>
g 2 ( z ') (resp. g l ( z ")<
g 2 ( z ")), output z ' (resp.z ") as a n optimal solution of BMCP and halt. Otherwise g o to S t e p 2.
Step 2: nest t h e condition of Lemma 4 (iff)].
(i) Follow t h e GT-algorithm applied to P(A(k8)) t r e a t i n g A(k8) as unknown con- s t a n t satisfying
A <
A(k.)< r.
If t h e GT-algorithm halts, g o to S t e p 3. Else at t h e n e x t conditional jump bperation, d o t h e following.(if) Let t h e condition of t h e jump operation given by
where p l(A(k. )) and P ~ ( A ( ~ . )) are l i n e a r functions in A(k. ). Solve equation
(iii) If equation (34) h a s no solution A satisfying _ X < A 8
<I,
i.e., p1(A8) < p 2 ( A 8 ) ( o r p1(A8) > p Z ( A 8 ) ) holds f o r all such A*, t h e n choose t h ecorresponding computation path at t h e c u r r e n t conditional jump operation. Go to (viii).
(iv) If equation (34) holds f o r a l l A * with _X
<
A'< 1,
choose p l ( A 9 )=
p2(A8) as t h e p r o p e r computation p a t h , and g o to (viii).(v) If equation (34) h a s t h e unique solution
i
such t h a t< i < i,
t h e condi- tions of (33) are transformed toSolve ~ ( f i
-
E), ~ ( i ) and ~ (+
E) by applying t h e GT-algorithm, and l e t i 2.2' andz " b e optimal solutions of t h e s e problems respectively.
(vi) If one of z , z ' , z U s a t i s f i e s (32). output i t as a n optimal solution of BMCP and halt.
(vii) Test whether
i
i s a joint point or not based o n Lemma 6.(vii-a) If
i
i s not a joint point, determine A(k.)> i
or A(k.)< i
according toSubcases 1A and 1B given p r i o r to t h e description of t h e algorithm, and choose t h e
*
p r o p e r computation path corresponding t o A(k8)
>
A or A(k.)< i
respectively. If)
>
i , l e t b= i.
Otherwise l e t1 = i.
Go to (viii).(vii-b) If
X
i s a joint point, determine A(k.)> X +
r , A(k.)< R -
E or A(k.) =i
according to Subcases 2A, 2 8 and 2C given p r i o r to t h e description of t h e algo- rithm, respectively. If A ( k 8 )
> i +
L (resp. A(k.)< i -
E). l e t4 = +
L (resp.-
A AA
=
A-
E), c h o o s e t h e p r o p e r computation p a t h a c c o r d i n g to A(k.)>
A ( r e s p . A,,.)<
i ) a n d g o to (viii). If A ( k a )=
i , computec
satisfying (21) a n d t h e n z * by (22) a f t e r letting z k *=
z a n d z k **' =
z".
Halt.(viii) R e t u r n to t h e conditional jump o p e r a t i o n of t h e GT-algorithm i n S t e p 2 , from w h e r e i t e x i t e d to find t h e p r o p e r computation p a t h .
Step 3: Halt.
The c o r r e c t n e s s of t h e algorithm i s almost c l e a r by t h e discussion given i n t h e p r e v i o u s section. What r e m a i n s i s to p r o v e t h a t t h e algorithm always h a l t s e i t h e r i n S t e p 1 , S t e p 2 (vi) or S t e p 2 (vii). Assume otherwise. Note t h a t Algorithm SOL- VEBMCP always h a l t s b e c a u s e i t follows t h e GT-algorithm. Assume t h a t SOLVEBMCP h a l t s in S t e p 3 a n d c o n s i d e r t h e i n t e r v a l a ,
x)
g e n e r a t e d when i t h a l t s i n S t e p 3. I t follows from t h e discussion given in S e c t i o n 3 t h a tA <
A(k.)< 1
holds. When Algo- rithm SOLVEBMCP h a l t s , i t h a s o b t a i n e d a solution which i s optimal to P(A) f o r a l l A E a , i ) , s i n c e if t h e GT-algorithm i s a p p l i e d to s o l v e P(A) f o r a n y A Ea,i),
i tfollows t h e same computation p a t h i r r e s p e c t i v e of c h o i c e of A from t h e i n t e r v a l a , X ) . However, by Lemma Z(iii), a n optimal solution of P(A') with
<
A'<
A(*.) is n o t optimal to P(A") with A ( k a )<
A"< i.
This i s a contradiction.The running time of t h e algorithm c a n b e d e r i v e d in a manner similar to [14].
A t e a c h jump o p e r a t i o n , a l i n e a r equation (34) i s solved a n d if i t h a s t h e unique solution with _X
< x < x,
t h r e e problems ~ ( f i-
E), ~ ( x ) , P(X+
E) are solved. So S t e p 2 (v) r e q u i r e s 0 ( n 2 ( n log n+
m )log n ) time. The o t h e r p a r t of S t e p 2 i s dom- inated by this. S i n c e t h e t o t a l number of jump o p e r a t i o n s in t h e GT-algorithm i s 0 ( n 2 ( n l o g n+
m ) l o g n ) , S t e p 2 i s r e p e a t e d 0 ( n 2 ( n l o g n+
m ) l o g n ) times. S o , S t e p 2 r e q u i r e s 0 ( n 4 ( n l o g n+
m)210g2n) time i n t o t a l . S i n c e S t e p 0 r e q u i r e s c o n s t a n t time a n d S t e p 1 r e q u i r e s 0 ( n 2 ( n log n+
m ) l o g n ) time, Algorithm SOL- VEBMCP r e q u i r e s 0 ( n 4 ( n log n+
m)210g2n) time i n t o t a l .Theorem 1. Algorithm SOLVEBMCP c o r r e c t l y computes a n optimal solution of Problem BMCP i n ~ ( n 4 ( n log n
+
m )210g2n ) time.The algorithm i s i n f a c t s t r o n g l y polynomial, s i n c e t h e running time depends only o n t h e numbers of v e r t i c e s a n d e d g e s in a g r a p h , a n d if t h e input d a t a are a l l r a t i o n a l numbers, t h e s i z e of t h e numbers g e n e r a t e d i n t h e algorithm i s c l e a r l y po- lynomial in n ,m a n d t h e s i z e of t h e input numbers.
This running time i s improved to ~ ( m i n t n %og3n, n 4 ( n log n
+
m ) log5n 1) in t h e following section by utilizing t h e idea of simulating t h e p a r a l l e l s h o r t e s t path algorithm in a s e r i a l manner. Such idea of simulating p a r a l l e l algorithms f o r t h e purpose of t h e speed-up of algorithms w a s originated by Megiddo1151.
The appli- cation of his idea to o u r problem, however, seems to b e new.5. Time Reduction
In o r d e r to r e d u c e t h e running time of Algorithm SOLVEBMCP, t h e following r e m a r k s are useful.
Remark 1.
In t h e GT-algorithm, t h e s h o r t e s t path algorithm i s applied 0(n210g n ) times as a subroutine. Since t h e b e s t known s h o r t e s t path algorithm with a single s o u r c e node, which is due to Fredman and Tarjan [6], r e q u i r e s O(n log n + m ) time, t h e GT-algorithm r e q u i r e s 0 ( n 2 ( n log n+
m )log n ) time in total.Remark
2. When t h e GT-algorithm i s applied to solve P(A), comparisons with t w o numbers containing A are made only when t h e s h o r t e s t p a t h algorithm i s applied.W e modify Algorithm SOLVEBMCP in such . a way t h a t instead of using O(n log n + m ) s h o r t e s t p a t h algorithm, w e employ a p a r a l l e l s h o r t e s t p a t h algo- rithm such as Dekel, Nassimi and Sahni's [3] and ~ u 6 e r a ' s [ l 2 ] in a s e r i a l manner when SOLVEBMCP follows t h e GT-algorithm in S t e p Z(i). W e still use O(n log n + m ) s h o r t e s t path algorithm in o t h e r p a r t s of SOLVEBMCP such as S t e p 1, S t e p 2 (v).
The idea of t h e time reduction i s based on Megiddo [15]. W e shall explain how i t i s attained. Let P denote t h e number of p r o c e s s o r s and let ~ p denote t h e number of s t e p s r e q u i r e d on a P - p r o c e s s o r machine. Dekel, Nassimi and Sahni's scheme re- q u i r e s P = 0 ( n 3 ) and TP
=
0 ( l o g 2 n ) while ~ u g e r a ' s scheme r e q u i r e s P=
0 ( n 4 ) and TP=
O(1og n ). W e simulate t h e s e algorithms serially. According to s o m e fixed p e r - mutation, w e visit one p r o c e s s o r at a time and perform one s t e p in e a c h cycle. A t e a c h p r o c e s s o r , when t w o l i n e a r functions pl(A), p 2(A) are compared, w e e x e c u t e S t e p 2 (ii). (iii) and (iv). If t h e equationpl(A) = p p ( A ) h a s a unique solution with A< i < 1,
such c r i t i c a l valuei
i s s t o r e d and w e p r o c e e d to t h e next p r o c e s s o r-
without executing S t e p 2 (v), (vi) and (vii). After one s t e p of t h e multiprocessor, w e have at m o s t P such c r i t i c a l values. Let Xl,i2.
- . -
, i p denote such c r i t i c a l values. W e t h e n computeor in t h e meantime w e may find t h e d e s i r e d joint point A(k.) among t h o s e c r i t i c a l values. As explained in 1151, t h i s i s done by performing a binary s e a r c h t h a t re- q u i r e s O(P) time f o r median findings in s u b s e t s of t h e set of c r i t i c a l values, and O(1ogP) applications of t h e GT-algorithm. W e explain in m o r e details how A' i s computed (the case A" i s similarly t r e a t e d ) . Each time t h e median
fit
i s found from among t h e remaining c r i t i c a l values, w e e x e c u t e S t e p 2 (v) , (vi) and (vii) withfi
re- placed byf i t .
In S t e p 2 (vii), i t may happen t h a tfit
i s concluded as t h e d e s i r e d joint point A(k.). Otherwisefit <
Ag.) orfit >
A(k.) i s concluded, and half of t h e remaining c r i t i c a l points are discarded. Since t h e remaining s u b s e t during binary s e a r c h i s halved e a c h time, t h e time r e q u i r e d to find a l l m e d i a n s i sa s shown in
1151.
Since we need O(Log P ) applications of t h e median finding in o r d - e r to find A', i t r e q u i r e s0 ( n 2 ( n log n
+
m ) l o g n - 1 o g P ) time. Hence, e a c h s t e p of t h e multiprocessor r e q u i r e stime. After A' and A" are computed, w e c a n choose t h e p r o p e r computation p a t h at e a c h p r o c e s s o r . Since t h e a b o v e p r o c e s s i s r e p e a t e d rp times in total, e a c h appli- cation of t h e p a r a l l e l s h o r t e s t path algorithm r e q u i r e s
O((P
+
n 2 ( n log n+
m ) log nlog P ) r p )time. Since t h e s h o r t e s t p a t h problem i s solved 0(n210g n ) times as mentioned in Remark 1 , t h e t o t a l running time i s
If Dekel, Nassimi and Sahni's scheme i s employed, t h i s becomes
while if ~ u g e r a ' s scheme i s employed, i t becomes
Therefore, depending on how dense t h e g r a p h is, w e may choose t h e b e t t e r one. We then have t h e following theorem.
Theorem 2. The modified SOLVEBMCP solves Problem BMCP in O(min[n 4 ( n log n
+
m ) log5n, n %og3n 1) time.8. Extensions
In this section, we shall show how o u r a p p r o a c h i s generalized to o t h e r types of problems which a r e v a r i a n t s of Problem BMCP studied s o f a r . One of such prob- lems i s t h e minimum-cost circulation problem with one additional l i n e a r c o n s t r a i n t studied by Brucker [2]. This i s described as follows.
SMCPLC : minimize j l ( x )
s u b j e c t t o t h e c o n s t r a i n t s of (7) and (8)and
Here, jl and j2 are those defined in (9), and d i s a given constant. The above problem i s solved as follows. I t i s easy t o see t h a t t h e r e e x i s t s a n optimal solution x * of SMCPLC such t h a t j ( x ' ) i s efficient. Define z k , k
=
1 ,...,
N+
1, byas before. If j 2 ( z 1 ) L d
,
x i i s optimal t o SMCPLC. If j 2 ( z N +I)>
d , t h e r e is no feasible solution to SMCPLC. S o assumeLet
Ack,,
=
minl X ( k , I 1
L k LN ,
j 2 ( z k L d , (38) A(ka,=
maxl A ( k , l l
L k LN ,
j 2 ( z k + ' )>
d1 .
(39)Lenuua 7 . Let p satisfy
p f 2 ( z k +I)
+
( 1-
p ) f 2 ( z ka+l)=
d Theni s optimal to SMCPLC.
Fig. 4
Pmof. By (9). z
'
s a t i s f i e s j 2 ( z ')=
d , a n d j ( z'
) i s e f f i c i e n t s i n c e j ( z k *I) a n d j ( z k a f l ) are a d j a c e n t e f f i c i e n t v e r t i c e s by (38), (39) a n d Lemma 3 ( s e e Fig. 4).Thus, t h e r e i s n o z E X s u c h t h a t j l ( z ) < j l ( z B ) a n d j 2 ( z ) 4 j 2 ( z 8 ) hold. This p r o v e s t h e lemma.
f, ( x )
FQpre 4. Illustration of t h e set
Y
used In Lemma 7.By t h e lemma, all what w e d o i s to compute A(k1) a n d A(k2). Once A ( k l ) a n d
k , t1
A(kz) are o b t a i n e d , z ( r e s p . z k 2 ") are computed by solving
+
r ) ( r e s p . P(AO,)+
c). w h e r e r s a t i s f i e s 0<
r<
l / ~ ~ . W e s h a l l e x p l a i n only how A ( k l ) i s computed ( t h e case of A(ka) i s similarly t r e a t e d ) . This i s d o n e in a manner s i m i l a r to t h e way of finding A(k *) in Algorithm SOLVEBMCP g i v e n in S e c t i o n 4. Following t h e GT-algorithm to s o l v e P(A(k1)) without knowing t h e e x a c t value of A(kl), e v e r y time comparison i s made at conditional jump o p e r a t i o n , w e compute a c r i t i c a l v a l u ei
by solving t h e l i n e a r e q u a t i o n in A ( k l ) formed by t h e c o m p a r e d t w o n u m b e r s con- taining A(kl). W e f i r s t test w h e t h e ri
i s a joint point or not, using Lemma 6. Ifi
i s a joint p o i n t (say A(k)), w e s o l v e P(X+
r ) to o b t a i n z k * l a n d compute f 2 ( z k + l ) .A
According to w h e t h e r j 2 ( z k tl) 4 d or not. A 2 A(kl), or
i <
A ( k l ) i s concluded r e s p e c t i v e l y , a n d t h e p r o p e r computation p a t h i s c h o s e n . Ifi
i s n o t a joint point,w e s o l v e
P ( X )
to o b t a i n z^ Ex'(X)
a n d compute f 2 ( s ) . According to w h e t h e r f 2 ( i ) S d or not,i >
A(kl) o ri <
A(kl) i s concluded r e s p e c t i v e l y , a n d t h e p r o p e r computation p a t h i s c h o s e n . In a n y c a s e , by t h e discussion s i m i l a r to t h e o n e in S e c t i o n s 3 a n d 4 , w e finally o b t a i n A(k,). W e d o n o t g i v e t h e d e t a i l s of t h e algo- rithm s i n c e i t i s almost t h e s a m e as SOLVEBMCP. In addition, w e c a n a l s o a p p l y t h e idea of t h e time r e d u c t i o n given in S e c t i o n 5 a n d h e n c e t h e following t h e o r e m holds.Theorem 3. Problem SMCPLC c a n b e solved in
O(min [ n %og3n, n '(n log n
+
m ) log 'n j) time ,W e now t u r n o u r a t t e n t i o n to a n o t h e r t y p e of problem to which t h e idea s i m i l a r to t h e o n e given in S e c t i o n s 3 a n d 4 c a n a l s o b e applied. R e c a l l t h a t Problem BMCP in (11) a r i s e s in i n t e r a c t i v e m u l t i c r i t e r i a decision making. Consider t h e s i t u a t i o n in which only a s p i r a t i o n l e v e l q
=
(ql,q2) i s s p e c i f i e d by t h e decision m a k e r a n d q i s unattainable. In t h i s c a s e , t h e d i s t a n c e between f ( z ) a n d q c a n b e c o n s i d e r e d to r e p r e s e n t a m e a s u r e of r e g r e t r e s u l t i n g f r o m unattainability of f ( z ) to q , i n s t e a d of considering t h e achievement function s u c h as s in (3)(see Figure 5). The follow- ing weighted $-norm h a s b e e n c o n s i d e r e d in t h e l i t e r a t u r e to m e a s u r e s u c h dis- t a n c e ( s e e [19, 273).H e r e p i s a positive i n t e g e r a n d ai are given c o n s t a n t s . F o r t h e ease of exposi- tion, we assume
w h e r e z k are t h o s e defined in (36). The o t h e r case s u c h as q l > f l ( z l ) or q 2
>
f 2 ( z N + l ) are t r e a t e d later. W e t h e r e f o r e c o n s i d e r t h e following problem:BMCPZ : minimize d V ( z ) , q )
s u b j e c t to t h e c o n s t r a i n t s (7) a n d (8).
S i n c e q !$ Y i s assumed, i t i s c l e a r by (43) t h a t f ( z ' ) i s e f f i c i e n t f o r a n y op- timal solution z * of BMCPZ. The e f f i c i e n t set Yo i s r e p r e s e n t e d by a function of o n e p a r a m e t e r y with f l ( z l ) S y S f 1 ( z N + l ) as follows.
Q p r e 5. Illustration of point q and the set Y.
By (43) and (45), the objective function d CJ(z),q) i s then represented by
if f ( z ) i s on the efficient edge between the vertices f ( z k ) and f ( z k +I). Define, for y l with f l ( z k ) 6 y l S f l ( z k +I),
and define
Since g ( y l ) i s c l e a r l y convex and Problem BMCPZ i s equivalent t o minimizing g ( y l ) , Problem BMCPZ is reduced t o find y
;
such t h a twhere ag ( y denotes t h e subgradient of g ( y '). Let f o r ( y y 2) E
Yo
and h>
0From (46), (47) and (48), w e have
Lemma 8.
(i) If 6(f1(z1), f 2 ( ~ ' ) , h ( l ) )
>
0, any z' i s optimal t o BMCPZ.(ii) If d(fl(zNt'). f2(zNt').h(N))
<
0, any z N is optimal t o BMCPZ.(iii) If d 1 z k f 2 z k ' Ack. -,)) S 0 and 6(fl(zk').f2(zk' 2 0 hold f o r some k * with 2 S k * 5
N ,
any z k * i s optimal t o BMCPZ.(iv) If 6 ( f 1 ( ~ k * ) , f 2 ( ~ k * ) , S 0 and 6 ( f l ( z k * "1, j,(~'*~'), A(,.)) 2 0 hold f o r some k * with 2 S k ' S
N ,
is optimal t o BMCPZ, where p satisfies
Proof. (i), (ii) and (iii) are obvious from (48) and (49). (iv) i s proved as follows.
Since g ( y l ) i s convex, t h e r e e x i s t s ( y l , y 2 ) such t h a t ( y l , y 2 ) is on t h e edge con- necting v l ( z k ' ) , f 2 ( z k * ) ) and (fl(z k' "),f2(z k* ")) and 0 E 8g ( y '). Since t h e
k* ti
point ( y l , y 2 ) on this edge i s r e p r e s e n t e d as (p#'(zk')
+
(1-
W l ( z ),~ ~ ( z
+
(1 ~-
*p ) f 2 ( z ) ")) by using t h e p a r a m e t e r p with 0 S p 5 1 andag y l ( z
'
))=
0 holds by (50) and (53), z * of (52) i s optimal to BMCPZ.Based on Lemma 8, w e c a n c o n s t r u c t a n algorithm f o r solving BMCPZ which i s similar to t h e o n e p r e s e n t e d in Sections 4 and 5. The conditions of Lemma 8 (i) and (ii) c a n b e verified simply by solving P(A) f o r A
<
A(l) and A>
A(N) respectively.which i s similar to Lemma 4 (i) a n d (ii). If none of t h e conditions of Lemma 8 (i) a n d (ii) holds, t h e r e e x i s t s k * satisfying t h e condition of Lemma 8 (iii) or (iv). To c o m - pute a n optimal solution z * f o r t h i s c a s e , w e compute
Suppose t h a t t h e s e t w o values are obtained. W e t h e n consider t h e following t w o cases.
Casc 1. A'
=
A". Then t h e condition of Lemma 8 (iv) holds f o r A(k,)=
A'. zk' and zk'+'
are obtained by solving P(A(k.)-
r ) a n d P(A(k.)+
r ) respectively. where r satisfies 0<
E<
1 / t W 2 . An optimal solution z a of BMCPZ i s t h e n computed by (52).The value of p in (52) i s obtained by solving t h e following l i n e a r equation in p which i s equivalent to (53).
(56) Case 2. A'
<
A". Then A' a n d A" are t w o consecutive joint points. Otherwise t h e r e e x i s t s a joint point A(k .) with A'<
A(k .)<
A". Since t h e values of d ~ ~ ( z k),j'2(zk). X O )) and ~ v ~ ( z ~ +1),j'2(zk 'l), are respectively increasing in k by t h e convexity of g (y i t follows from t h e maximality and t h e minimality of A' a n d A" respectively t h a tb ( t ' l ( z k ' ) , j 2 ( z k ' ) , ~ ( k *))
>
0 a n d b ~ ~ ( z ~ ' + ~ ) , j ' ~ ( z ~ ' + ~ ),A(, * ) )<
0k ' + l
holds. This is, however, impossible by j l ( z k ' )
<
jl(zk'+') a n d j 2 ( z k ' )>
j 2 ( z ).So l e t A'
=
A(k, a n d A"=
A(k,). By t h e maximality of A' a n d t h e minimality of A", w e haved y l ( ~ k ' ) , j 2 ( z k * ) . A ( k .
<
0 and ~ V ~ ( Z " ).f2(zk*1.
X(k.))>
0This i s equivalent to t h e condition of Lemma 8 (iii). T h e r e f o r e by Lemma 8 (iii) an optimal solution of BMCPZ i s obtained by solving P(A) f o r a X with
A'
<
A<
A".With this observation, what remains t o do i s t o compute A' and A" of (54) and (55) respectively. This i s done in a manner similar to t h e ways of computing A(k.) explained in Sections 3 and 4 and of computing A(k I ) and A(k8) of (38) and (39) ex- plained in this section. T h e r e f o r e , t h e details are omitted h e r e .
Finally, w e mention t h e c a s e in which (43) does not hold. If q l > j l ( x N t l ) , j ( x ' ) may not be efficient f o r a n optimal solution x ' of BMCPZ (see Figure 6). However, if we consider t h e following new p a r a m e t r i c problem f o r a nonnegative p a r a m e t e r A,
P'(A): minimize - j l ( x )
+
AJ2(x) , rcYFigure 6. Illustration of t h e case in which q l
>
j l ( x N t l ) holds.we c a n have t h e p r o p e r t y relating P'(A) t o BMCPZ which is similar t o Lemma 8 (though t h e details a r e omitted h e r e ) . The c a s e of q 2 > j 2 ( x 1 ) c a n be similarly t r e a t e d . Thus we assume t h a t
hold.