Determination of the efficient set in multiobjective linear programming

4 downloads 143 Views 1MB Size Report
Multiobjective linear programming, efficient points, non- dominated faces ... 1. Introduction. An important question arising in multiobjective programming consists.
JOURNAL OF OPTIMIZATION THEORY AND APPLICATIONS: Vol. 70, No. 3, SEPTEMBER 1991

Determination of the Efficient Set in Multiobjective Linear Programming P.

ARMAND

2 AND

C.

MALIVERT 3

Communicated by W. Stadler

This paper develops a method for finding the whole set of efficient points of a multiobjective linear problem. Two algorithms are presented; the first one describes the set of all efficient vertices and all efficient rays of the constraint polyhedron, while the second one generates the set of all efficient faces. The method has been tested on several examples for which numerical results are reported.

Abstract.

Key Words. Multiobjective linear programming, efficient points, nondominated faces, degeneracy.

1. Introduction

An important question arising in multiobjective programming consists in the determination of the whole efficient set. Indeed, the set of objective values corresponding to different efficient points is not generally totally ordered, and an appropriate answer to the decision-maker's demand is to provide him the whole set o f efficient solutions. Several approaches of this problem have been proposed up to now, in the particular framework of linear programming. Although these methods are quite different, they are always based upon the complete determination of efficient vertices of the constraint polyhedron, using a modified simplex algorithm. In some papers, vertices are tested for efficiency after being obtained (Ref. 1), while other authors propose some tests to know which pivots are leading to an efficient

~The authors are grateful to Professor W. Stadler and an anonymous referee for their helpful comments and corrections. ~Allocataire de Recherche, D6partement de Math6matiques, Facult6 des Sciences, Universit6 de Limoges, Limoges, France. 3Maitre de Conf/~rence, D6partement de Math~matiques, Facult6 des Sciences, Universit6 de Limoges, Limoges, France. 467 0022-3239/91/0900-0467506.50/0

C~ t991 Plenum Publishing Corporation

468

JOTA: VOL. 70, NO. 3, SEPTEMBER 1991

vertex or ray (Refs. 2-6). These tests are sometimes completed in order to determine efficient faces adjacent to the current vertex (Refs. 4, 7, 8, 9). In this way, the efficient faces and the efficient vertices are obtained simultaneously. In Ref. 1, the determination of efficient faces is carried out in a subsequent phase when all efficient vertices are known. As discussed in Ref. 1, the main difficulty in this kind of problem is to deal with degeneracy. For instance, in Refs. 3 and 5, the description of all efficient vertices is done by uncovering all dual-efficient bases; however, this method may lead to very high computational efforts if some vertices are degenerate. On the other hand, the characterization of an efficient face in Ref. 7 is true only if the current vertex is nondegenerate. The aim of this work is to propose two algorithms with numerical experiments overcoming these difficulties. In the next section, we recall characterizations for basic efficient solutions and then we show that, with special pivoting rules, it is possible to describe all efficient extreme points by uncovering only some efficient bases. When a degenerate vertex is encountered, we go through the subset of its corresponding bases, generating only a part of it. The third section is devoted to the determination of efficient faces. Several problems occurring from degeneracy (Refs. 4, 7) are avoided by describing an efficient face as the convex hull of its efficient vertices and its efficient rays. Using this description, we give a characterization for an efficient face and then we present an algorithm providing all maximal efficient faces. In the last section, we comment on our algorithms and report on several numerical experiments.

2. Efficiency A linear multiobjective problem can be stated under the standard form (LVMP)

max{CX: A X = b , X ~ O } ,

where C = (C, 0) is a k x ( n + m ) matrix with C a k x n matrix, A = (A, I) is an m x (n + m) matrix with A an m x n matrix and I the identity matrix of ~m, be~"~, and X e ~ ~+'. Let X be in Rp. We use the following notations: X__>O,

if and only if X/>_ 0, j = 1. . . . . p;

X_>O,

if and only if X >_-0 and X ¢- 0;

X>O,

if and only if Xj>O,j= 1. . . . . p.

JOTA: VOL. 70, NO. 3, SEPTEMBER 1991

469

We denote by

P = { Y ~ ' : A Y ~ b , Y>O}, P~ = {Re~": ARO}, S=

{Xe~n+m:riX=b,X~O},

So = {De ~"+": riD=0, D ~ 0 } , the set of feasible points, the set of recession rays, the set of feasible solutions, and the set of recession directions, respectively. Note that the applications ¢: P ~ S and ~: P~--* S~o, defined by 4}( Y ) = (Y, b - A Y) and ~(R) = (R, -AR), are one-to-one correspondences. We wilt denote the set of extreme points or vertices of P by ext(P) and the set of extreme rays of P~ by ext(P~). A feasible solution X is an extreme (or basic) feasible solution if X = ¢(Y) with Yeext(P). A point Y* eP is said to be an efficient point if there is no YeP such that CY>_CY* and the corresponding solution X* = ~(Y*) in S is called an efficient solution. The set of all efficient points is denoted by P* and the set of efficient extreme points P* ~ ext(P) by ext(P*). The corresponding solutions in S are called efficient extreme (or basic) solutions. We say that R* eext(Po~) is an efficient extreme ray if there exists Y*eext(P*) such that {Y*+tR*, t _ 0 } c P * . The corresponding direction D* = ~ R * ) in S~ is called an efficient extreme direction. A key result in all the sequel is the following characterization of efficiency which can be found in many places (see, e.g., Refs. 1 and 2).

Proposition 2.1. A feasible solution X*eS is efficient if and only if there exists 2e Nk, )~> 0 such that X* solves the linear scalar problem (LP(,~))

max{rrCX: XeS}.

Recall that r2 stands for the transpose of the vector L We introduce the subset g = {conv( V ) + cone( W): V c ext(P) W c ext(P ~)}, where 'conv' is the convex hull and 'cone' means "convex cone generated by." We deduce from Proposition 2. ! the following result.

Theorem 2.1. (i) (ii) (iii)

For E~E, the following three conditions are equivalent:

every point of E is efficient; there exists Y* in the relative interior ri E such that Y* is efficient; there exists Z>O such that, for each point Y of E, ¢(Y) solves LP(Z).

470

JOTA: VOL. 70, NO. 3, SEPTEMBER 1991

ProoL It follows from Proposition 2.1 that (iii) implies (i). Since ri E is nonempty, we have obviously (i)=>(ii). To show that (ii)~(iii), consider Y* Eri E and the corresponding efficient solution X*. From Proposition 2. l, there exists X> 0 such that X* solves LP(X). For each Y s E , we can choose a t ( 0 , 1) and Y ' e E such that Y*=aY'+(1-a)Y,

and we have, with the corresponding feasible solutions, r~,CX* = a TZCX' + ( 1 - a) r Z C X < a r £ C X * + (1 - a) rZCX.

It follows that r,~g:X* = ~Z(:X,

which implies that X solves LP(~).

[]

Note that this result is a slight extension of Theorem 4.1.2 in Ref. 1. We denote by g* the collection of subsets of g satisfying the conditions of Theorem 2.1. A face of P, in the usual sense, is called an efficient face if it is entirely contained in P*. A maximal efficient face is a maximal element of the set of all efficient faces ordered by the inclusion, and we recall that the efficient set P* is the union of all maximal efficient faces (Ref. 7). Note that an efficient face belongs necessarily to g*, the converse implication being not necessarily true. Indeed, if we consider the problem

max L - x - yJ' s.t. O_0. For each basis B, we define X = { 1 . . . . . n+m}\B, and we call basic solution specified by B, the feasible solution X~S defined by X B = [~B] - t b,

X N = O,

Recall that the basic solutions of S correspond, by the one-to-one correspondence mentioned previously, to the vertices of P. When [~n]- 1b > 0, we say that B is nondegenerate and, in this case, it is known that B is the single basis specifying the basic solution X. Otherwise, B is said to be degenerate, and X may be specified by several bases, all of which are degenerate bases. The number of zero components of [.4~]- lb is the number of zero components of X minus m and does not depend on B. Instead of saying that B is degenerate, we shall say sometimes that X (or even the corresponding vertex in P) is degenerate. A basis B is said to be an efficient basis if it specifies an efficient basic solution (or equivalently if the corresponding vertex of P is an efficient point). An efficient basis B is called a dual-efficient basis (see Definition 5 in Ref. 4) if there exists A.> 0 such that /~t = T~ (~B[~z~B ] - Iz~N - ~ N ) ,

(1)

satisfies A > 0 . When such a ,~e~k is known, we say that B is a 2-dualefficient basis or a dual-optimal basis for the scalar objective function r~.~. If B is a dual-efficient basis, we shall denote by A(B) the set of )~>0 such that B is ,~-duat efficient. Note that the condition A > 0 implies that r~,B[~8]-i is an optimal solution for the dual problem of LP(~.), namely, (DLP(~.))

min{rUb: rgA>r),C, Ug0}.

(2)

It is easily shown, from Proposition 2.1 and the properties of the simplex algorithm, that every efficient basic solution X can be specified by a dualefficient basis. However, when X is a degenerate efficient extreme solution,

472

JOTA: VOL. 70, NO. 3, SEPTEMBER 1991

every basis specifying X is not necessarily dual-efficient. We can only assert the following result. Proposition 2.2.

Consider a basis B and the subset D of degenerate

rows,

D = {ie{1 . . . . , m} : ([AS]-lb)i= 0}. Then, B is an efficient basis if and only if there exist ~ > 0 and/2 > 0 such that

Tz (~B[~]-,~u_ U') + T~([~B]-,~N)~ >=0.

(3)

Furthermore, (3) implies that the solution X specified by B solves LP().). Proofi We set tF = [A~] - 1 and define A as in (1). Suppose that B is an efficient basis. It follows from Proposition 2.1 that there exists L > 0 such that X given by (Xs, XN) = (Wb, 0) is an optimal solution for LP(X). Let • Hue ~ be a vector satisfying the following conditions: HN>O,

(4)

(WAU)DHN 0 small enough. Since X is an optimal solution of LP(Z), we must have AHN~O. Thus, we have the following implication:

VHN>O,--(~AN)DHN~O ~

AHN>0;

and from Farka's lemma, there exists/J> 0 satisfying

Conversely, suppose that (3) is satisfied, and let X be the basic solution specified by B. Consider H e W'+m such that X + tHe S, for t > 0 sufficiently small. We have .~H= 0, or equivalently

liB= --O'~ANHN, and H i > 0, for each i such that Xi = 0. Then, from the definition of D, it follows that

(trtlAN)DHN~O.

JOTA: VOL. 70, NO. 3, SEPTEMBER 1991

473

Therefore, from (3), we get AHN>0. As from (1) and the definition of Hs,

A H N : -r).(JH, we have proved that X is an optimal solution of LP(~). It follows from Proposition 2.1 that B is an efficient basis and that the corresponding efficient solution solves LP()0. [] The result above is a dual form of Lemma 2.4 in Ref. 2 (see also Theorem 3 in Ref. 10). Now, we develop our first algorithm in order to enumerate all efficient vertices. The general idea of our procedure is essentially the same as in Refs. 4 and 6, but we propose here a special treatment of the degenerate case. Recall that, given a feasible basis B0 and a basic feasible solution X, we can find, using the lexicographical rule of Dantzig (Ref. 11), a finite sequence of positive pivots linking Bo with a feasible basis B specifying X; that basis B is said to be Bo-admissible. Note that, starting from B0 and using the lexicographical rule, we cannot necessarily obtain all the bases specifying X. Given a feasible basis B0, we say that a basis B is Bo-dual efficient if it is dual efficient and Bo-admissible. We suppose from now that a first Bo-dual efficient basis B is known, as well as the corresponding simplex tableau T(B), XN A,

X~

C, where A ' = [Ae]-1AN,

C'= ~"[2~1-~2 N- C',

b'= [AB] lb,

f = CB[2 B]-'b.

-

Several methods exist which provide such an efficient basis B from a starting basis B0; see, for instance, Refs. 4, 12, 13. For each ).eA(B), we also consider the tableau T, (B),

XN X8

A'

r~.C ' A c o l u m n j e N of T(B) is said to be .~.-degenerate if there exists ~te A(B) such

474

JOTA: VOL. 70, NO. 3, SEPTEMBER 1991

that [r)~C' ]J= 0. Two dual-efficient bases (B1, B2), both Bo-dual-efficient, are said to be B0-adjacent if and only if T(B2) is obtained from T(B1) by a single positive pivot on a ~.-degenerate column, with the lexicographical rule induced by B0. If such a pivot leads to an efficient extreme direction D, we say that D is B0-adjacent to B1. Note that, in this ease, the bases B1 and B2 are necessarily J-dual efficient for the same ,1, and that they may specify the same basic solution. A B0-chain will be a sequence B~ . . . . . Bp of B0-dualefficient bases such that (B;, Bi+l) are Bo-adjacent for i= 1. . . . , p - 1. In order to determine the set of all efficient vertices, some graphs are often introduced in the literature. We list below some of them and make observations justifying our next results. Let us define the following graphs by their node set and edge set, respectively: (f~)

{B: B is an efficient basis}, {(Bl,/72):/72 can be obtained from B~ by a positive pivot} ;

(f~_)

{B: B is an efficient basis}, {(Bl,/72):/72 can be obtained from Bl by a positive or negative pivot};

(W)

{B: B is a dual-efficient basis}, {(B~, B2) : B2 can be obtained from B1 by a positive pivot on a ~.-degenerate column} ;

(Yg_)

{B: B is a dual-efficient basis}, {(B1, B2): B2 can be obtained from B1 by a positive or negative pivot on a ,%-degenerate column};

(~cPB0) {B: B is a Bo-dual-efficient basis}, {(B1, B2): B~ and B2 are Bo-adjacent}. It is well known that f#_ is a connected graph (Theorem 2.3 in Ref. 6). However, f¢, W, and Yg_ may fail to be connected, as shown in the following example.

Example 2.1. Consider the vector maximization problem -x-y-z~4 ] x +y + (3/2)zJ'

max

I

s.t.

x+y+z 0: Ae+ tA; >0}. Note that it may occur that t~+ 1= ti when there is the same component which is negative in A; and equal to zero in A~. We set Ai+ 1 = ~ - ~ / i + 1 A ' , Ai+ 1 = A i +

( t / + l -- t i ) A ; ,

N;-+l = {j6{1 . . . . . n + m } : A~+I =0}, and we call B;+ 1 a new basis obtained by pivoting (with the lexicographical order induced by Bo) on a column j s N i + l such that A;J< 0. The basis Bi+1 is adjacent to Bi, A~+l-dual efficient, and still specifies X. Indeed, the pivot does not change the basic solution, since A;y < 0 and X is already an optimal solution of LP(A'). Remark also that, if ti+l>t;, B~_~ is not Xi+l-dual efficient and then B~_ ~~ B~. Actually, that follows from the equality TAi + I ( c B , , [ h B t - 1 1 - l j _ C ) = a i _ I ~v ( ti+ 1 - t i - I ) A ; - l,

and from the fact that one component is necessarily negative by the definition of t,, since li+ 1 -- t i - 1 > t i - - ti-- I •

If Bi+~ is not ~'-dual efficient, we construct in the same way Bi+2 and so on. The number of bases being finite and from the remark above, there exists v > 0 such that t; is constant for i > v. Consequently, for i_> v, A~= A and N~= N do not depend on i. The column index j of the pivoting term between B~

JOTA: VOL. 70, NO. 3, SEPTEMBER 1991

477

and Bi+l is such t h a t j e N and AS< 0. We know from the simplex algorithm (with the lexicographical rule) that, after a finite number of iterations, say fie N, we shall have A~+6>0; ,N therefore, the algorithm will stop with a 4 dual eËficient basis. [] Theorem 2.2.

5°B0is a connected graph.

Proof. Let B' and B* be two Bo-dual effÉcient bases specifying respectively X' and X*. I f X ' =X*, it follows from Proposition 2.3 that there exists a Bo-chain linking B' and B*. Suppose now that )2' CX* and B' [respectively B*] is 4'-dual effÉcient (respectively 4*-dual efficient). It is easily seen that, for each ~l belonging to the segment [4', 4*], LP(2) admits an optimal basic solution, denoted by X~; we choose

X~,=X'

and

X~.=X*.

The number of basic solutions being finite, there exists a e N such that 4 e [ 4 ' , 4*]} : {Xl . . . . .

For each ie { 1, . . . , a}, we consider Ai = {4e[2 ', ~*]: Xi solves LP(4)}. By construction, Ai is a nonempty closed segment. These Ai, i = 1. . . . . a, form a covering of [4 ', 4"], and we may suppose by permuting some indices that Ai-i c~ A i ~ ,

i = 2 . . . . . a,

XI =X',

X~=X*.

Let us choose 4ieAi- 1 ~ Ai,

i= 2 . . . . . a,

and ~l = 4'.

Each Xi, i = 1. . . . . a - 1, appears to be optimal for both r T ~ and r4,+~C. Let Bs [respectively B;] be a 4~-dual efficient (respectively 4i+ ~-dual efficient) basis specifying Xs; at the first iteration, X~ =X' and B~ = B'. It follows from Proposition 2.3 that there exists a Bo-chain linking Bi and B;. Then, X~+~ being also an optimal solution of LP(,~;+ ~), we know from the simplex theory that there exists a Bo-chain linking B; with a basis B~+ l specifying Xs+ ~, the pivoting terms being always on 4;+ rdegenerate columns. Then, we apply again Proposition 2.3 to find a Bo-chain linking B;+ ~ to a basis B;+ ~ which is 4~+2-dual efficient and specifies X~+ ~, and so on. In this way, it is possible to find a Bo-chain of dual-efficient bases such that the last one, say B",

478

JOTA: VOL. 70, NO. 3, SEPTEMBER 1991

specifies X~=X* and from Proposition 2.3, there exists a Bo-chain linking B" to B*. [] Remark 2.1. Suppose that D* is an extreme efficient direction. There exists an efficient extreme solution X* and it* ~ Rk, it, > 0, such that, for each t > 0 , the vector X* + tD* is an optimal solution of LP(it*). Denote by B* a node of £%0 specifying X*. Then, the direction D* will be obtained automatically from B* by performing pivot operations on it*-degenerate columns with the lexicographical rule induced by B0. Thus, D* is So-adjacent to a node of ~So. Note that Theorem 2.2 implies that each connected component of graphs ~ and 3¢' generates all efficient extreme solutions. Indeed, such a component admits ~B as a subgraph where B is any dual-efficient basis belonging to the component. Furthermore, if there exists a nondegenerate efficient extreme solution, then it is specified by a single dual-efficient basis. Necessarily this basis belongs to every connected component of ~ and W, which implies that, in this case, these graphs are connected.

3. Determination of Efficient Vertices and Efficient Extreme Rays

From Theorem 2.2, we may deduce an algorithm describing the set of all efficient vertices and all extreme rays. Suppose that we know an efficient extreme solution X0 specified by a ;,-dual efficient basis B0. As ~80 is a connected graph, we apply the standard depth-first search algorithm (Chapter 5 in Ref. 14) in order to enumerate all nodes of £%0. The set of the efficient extreme solutions, the set of the efficient extreme directions, and the set of the Bo-dual efficient bases are respectively initialized to

{xo},

{80}.

Then, the method relies on a recursive subroutine denoted VeRTICEs(B, it), where B is a k-dual-efficient basis of the set N. The process is the following. Subroutine VERTICES(B~ ~)

Step It/.

Store in a list of8 all couples (j, ;-') such that the column j of T(B) is it'-degenerate and such that the pivot, chosen on this column with the lexicographical rule induced by B0, leads to a basis not already in N.

Step V2.

If ~fB= ~ , then stop; otherwise, choose (j, ;-') in cgs. Let cgB= rgB- {(j, Z')}.

JOTA: VOL. 70, NO. 3, SEPTEMBER 1991

479

Step V3. If the jth column of T(B) is nonpositive, then go to Step V6; otherwise, perform the pivot operation on that column using the lexicographical rule. Denote by B' the new basis and X' the corresponding solution.

Step V4. Store B' in ~, and, if X' ¢ ~ , then store X' in 5p. Step V5. Call the subroutine VEnTICEs(B', £'). Go to Step V2. Step V6. An efficient extreme direction D has been discovered. Then, if D does not belong to 9 , it is stored in 9. Go to Step V2. Note that this subroutine needs another subroutine to fill in the list cgs. Although this problem appears in many places (RelY. 1, 2, 5, 8, 15), we propose here a new method based on the knowledge of ~ > 0 for which B is ,1.-dual-efficient. Actually, for each column j, we have to test the existence of A' > 0 and > 0 such that - r c ' ) ~ ' + ~=0,

~j=0,

where

By homogeneity, we can replace ,;'> 0 by ,~'>,~ and study whether the following problem admits the value zero or not: (~.)

min ~j, s.t. --Tc')~'-t- ~ = TC~)~,,

~'>o,

4>0.

The right-hand side rC% is nonnegative, since B is )~-dual efficient, so that the simplex algorithm (phase II) can be directly applied. This advantage vanishes if ,~ is replaced by the constant vector (1 . . . . . 1); see Corollary 2 in Ref. 5. Note that we need not perform the test (Yj) for each nonbasic j, as simple remarks show that, for some j, the value of ( ~ ) is obviously positive. For example, if c'J> 0, or if this column dominates another one in the sense of

Suggest Documents