• Keine Ergebnisse gefunden

An Efficient Algorithm for Bicriteria Minimum-Cost Circulation Problem

N/A
N/A
Protected

Academic year: 2022

Aktie "An Efficient Algorithm for Bicriteria Minimum-Cost Circulation Problem"

Copied!
35
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

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

(2)

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

(3)

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 n

1)

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

(4)

A n m c i e n t Algorithm for Bicriteria Minimawcoat Circulation Problem

Naoki Katoh

1.

Introduction

In 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 p

where 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 given

z

E X f o r a n i-th objective i s measured by

(5)

The 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 ) and

pi =

-ri / ( r i -qi ), w e have

T 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 below

Pi : 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

(6)

1 cz

(6 )In = ( I L , v ) E E I

=

tCz(e')Je'

=

( v , w ) EE j f o r v

E 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) j

s 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-

(7)

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 ) log5n

1)

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)

-

1

b 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 .

(8)

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 ) log5n

I ) ,

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 . Define

which 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.

(9)

I. Illustration o f t h e sets

Y

and

Yo.

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

E

X 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))

.

(10)

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 d

z'

EX'(A')]

.

L e t f o r k

=

1 ,

...,

N

+

1

X;

=

{ 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.

(11)

- 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 implies

c 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 t

S 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 of

(12)

P(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) then

is 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 . Set

Z

i s illustrated in Fig. 3 as t h e shaded area. The thick piecewise l i n e a r

(13)

c 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 set

Z

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 set

Z

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

(14)

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 r

h

>

and f o r estimating t h e above E.

Lemma 5. Let

and

(15)

&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 E

X'

(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 m

(16)

t 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 by

where 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 e

follows. 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

(17)

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 interval

u,i]

where _X and

1

a r e a p p r o p r i a t e numbers satisfying _X

<

1 / M and

1 >

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-

(18)

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 of

f 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 assumed

to

b e positive s i n c e otherwise

i <

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 satisfying

E

<

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 to

i.

Proof.

If

i

i s a joint point, s a y A ( , ( ) ,

i -

c a n d

i +

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 t

i

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 d

(19)

j 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 d

i +

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 to

i.

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 s

s 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 s

z^

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 r

i 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 to

(20)

Subcase 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 value

i

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

(21)

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 e

corresponding 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 to

Solve ~ ( f i

-

E), ~ ( i ) and ~ (

+

E) by applying t h e GT-algorithm, and l e t i 2.2' and

z " 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 to

Subcases 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 t

1 = 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 t

4 = +

L (resp.

(22)

-

A A

A

=

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 , compute

c

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 t

A <

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 E

a,i),

i t

follows 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.

(23)

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 Megiddo

1151.

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 value

i

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 compute

(24)

or 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) with

fi

re- placed by

f i t .

In S t e p 2 (vii), i t may happen t h a t

fit

i s concluded as t h e d e s i r e d joint point A(k.). Otherwise

fit <

Ag.) or

fit >

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 s

a 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 s

0 ( 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 s

time. 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

(25)

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, by

as 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 assume

Let

Ack,,

=

min

l X ( k , I 1

L k L

N ,

j 2 ( z k L d , (38) A(ka,

=

max

l A ( k , l l

L k L

N ,

j 2 ( z k + ' )

>

d

1 .

(39)

Lenuua 7 . Let p satisfy

p f 2 ( z k +I)

+

( 1

-

p ) f 2 ( z ka+l)

=

d Then

(26)

i 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 e

i

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 r

i

i s a joint point or not, using Lemma 6. If

i

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 . If

i

i s n o t a joint point,

(27)

w e s o l v e

P ( X )

to o b t a i n z^ E

x'(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 r

i <

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.

(28)

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

(29)

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 t

where ag ( y denotes t h e subgradient of g ( y '). Let f o r ( y y 2) E

Yo

and h

>

0

From (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 and

(30)

ag 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 t

b ( t ' l ( z k ' ) , j 2 ( z k ' ) , ~ ( k *))

>

0 a n d b ~ ~ ( z ~ ' + ~ ) , j ' ~ ( z ~ ' + ~ ),A(, * ) )

<

0

k ' + 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 have

d y l ( ~ k ' ) , j 2 ( z k * ) . A ( k .

<

0 and ~ V ~ ( Z " ).f2(zk*

1.

X(k.))

>

0

This 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

(31)

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) , rcY

Figure 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.

Referenzen

ÄHNLICHE DOKUMENTE

We present a heuristic approach, based on randomized local search and a hybrid of variable neighborhood search and beam search, to solve the LCSqS for an arbitrary set of

An evolutionary algorithm with solution archive for the generalized minimum spanning tree problem. Quesada-Arencibia, editors, Proceedings of the 13th International Conference

Searching, inserting and converting solutions requires O(r) time, thus the com- plexity only depends on the length of the solution vector, but not on the number of already

Given a connected, weighted, undirected graph G and a bound D ≥ 2, the bounded-diameter minimum span- ning tree problem seeks a spanning tree on G of small- est weight in which

The main features of the proposed memetic algorithm for the vertex-biconnectivity augmentation problem are: The effective deterministic preprocessing which reduces the search space

In the simple case, each query can be answered either without using any index, in a given answer time, or with using one built index, reducing answer time by a gain specified for

Based on this graph reduction technique, we make use of two neighborhood structures: The Node Optimization Neigh- borhood (NON) emphasizes the selection of the spanned nodes in

A Predecessor Coding in an Evolutionary Algorithm for the Capacitated Minimum Spanning Tree Problem.. G¨