8
Decision Support Global maximization of UTA functions in multi-objective optimization Duy Van Nguyen Department of Mathematics, University of Trier, D-54286 Trier, Germany article info Article history: Received 5 May 2011 Accepted 12 June 2012 Available online 7 July 2012 Dedicated to the memory of my teacher, Prof. Dr. Reiner Horst. Keywords: Multiple objective optimization Utility function program UTA type methods UTA functions Global optimization Branch-and-bound algorithm abstract The UTAs (UTilité Additives) type methods for constructing nondecreasing additive utility functions were first proposed by Jacquet-Lagrèze and Siskos in 1982 for handling decision problems of multicriteria ranking. In this article, by UTA functions, we mean functions which are constructed by the UTA type methods. Our purpose is to propose an algorithm for globally maximizing UTA functions of a class of lin- ear/convex multiple objective programming problems. The algorithm is established based on a branch and bound scheme, in which the branching procedure is performed by a so-called I-rectangular bisection in the objective (outcome) space, and the bounding procedure by some convex or linear programs. Pre- liminary computational experiments show that this algorithm can work well for the case where the num- ber of objective functions in the multiple objective optimization problem under consideration is much smaller than the number of variables. Ó 2012 Elsevier B.V. All rights reserved. 1. Introduction The subject for this article is the multiple objective program- ming problem of the form max f i ðxÞ; i ¼ 1; ; k s:t: x 2 X R n : ð1Þ We assume throughout the article that k P 2, X is a compact convex set and the functions f i : X ! R; i ¼ 1; ; k, are linear or concave. Furthermore, we define the mapping f : R n ! R k ; f ðxÞ¼ðf 1 ðxÞ; ; f k ðxÞÞ: Usually, X is called the decision set, and the image of the set X under f, f ðXÞ :¼fz 2 R k : z ¼ f ðxÞ; x 2 Xg; ð2Þ is called the outcome set of Problem (1). The most important approach for handling Problem (1) is the concept of efficient (or Pareto optimal) solutions. For applications, theory and computational methods of efficient solutions, we refer to Refs. [1–8,18,21–23] and references therein. Another interesting and important approach to Problem (1) is the concept of utility (or value) functions and utility function pro- grams. The main idea of this school of thought is that each outcome has a ‘utility’ to the decision maker, and the decision maker tends to or should choose the one having the maximal utility. This ap- proach consists of two consecutive stages: (a) Construction of a utility function on the outcome set, and (b) Development of algorithms for the global maximization of the utility function. For the first stage, the UTAs (UTilité Additives) type methods, originally proposed by Jacquet-Lagrèze and Siskos [13] for han- dling multicriteria decision making problems, play an important part. These methods construct utility functions of the form UðzÞ¼ X k i¼1 U i ðz i Þ; where for each i, U i is a continuous, nondecreasing and piecewise af- fine univariate function. Throughout this article, functions con- structed by the UTA type methods are called UTA functions. For improvements of the UTA type methods and other methods for constructing utility functions we refer to e.g., [4,6–8,14– 17,19,20,22,23]. For the second stage, to our knowledge, there are only a few methods for handling utility function programs. In [12], a modifi- cation of the simplex algorithm was proposed to determine some kind of local optimal solutions. A global optimization method for solving general utility function programs was presented in [10]. The purpose of the present article is to propose a new algorithm for globally solving the utility function program 0377-2217/$ - see front matter Ó 2012 Elsevier B.V. All rights reserved. http://dx.doi.org/10.1016/j.ejor.2012.06.022 E-mail address: [email protected] European Journal of Operational Research 228 (2013) 397–404 Contents lists available at SciVerse ScienceDirect European Journal of Operational Research journal homepage: www.elsevier.com/locate/ejor

Global maximization of UTA functions in multi-objective optimization

  • Upload
    duy-van

  • View
    212

  • Download
    0

Embed Size (px)

Citation preview

European Journal of Operational Research 228 (2013) 397–404

Contents lists available at SciVerse ScienceDirect

European Journal of Operational Research

journal homepage: www.elsevier .com/locate /e jor

Decision Support

Global maximization of UTA functions in multi-objective optimization

Duy Van NguyenDepartment of Mathematics, University of Trier, D-54286 Trier, Germany

a r t i c l e i n f o a b s t r a c t

Article history:Received 5 May 2011Accepted 12 June 2012Available online 7 July 2012

Dedicated to the memory of my teacher,Prof. Dr. Reiner Horst.

Keywords:Multiple objective optimizationUtility function programUTA type methodsUTA functionsGlobal optimizationBranch-and-bound algorithm

0377-2217/$ - see front matter � 2012 Elsevier B.V. Ahttp://dx.doi.org/10.1016/j.ejor.2012.06.022

E-mail address: [email protected]

The UTAs (UTilité Additives) type methods for constructing nondecreasing additive utility functions werefirst proposed by Jacquet-Lagrèze and Siskos in 1982 for handling decision problems of multicriteriaranking. In this article, by UTA functions, we mean functions which are constructed by the UTA typemethods. Our purpose is to propose an algorithm for globally maximizing UTA functions of a class of lin-ear/convex multiple objective programming problems. The algorithm is established based on a branchand bound scheme, in which the branching procedure is performed by a so-called I-rectangular bisectionin the objective (outcome) space, and the bounding procedure by some convex or linear programs. Pre-liminary computational experiments show that this algorithm can work well for the case where the num-ber of objective functions in the multiple objective optimization problem under consideration is muchsmaller than the number of variables.

� 2012 Elsevier B.V. All rights reserved.

1. Introduction

The subject for this article is the multiple objective program-ming problem of the form

max f iðxÞ; i ¼ 1; � � � ; ks:t: x 2 X � Rn:

ð1Þ

We assume throughout the article that k P 2, X is a compact convexset and the functions fi : X ! R; i ¼ 1; � � � ; k, are linear or concave.Furthermore, we define the mapping

f : Rn ! Rk; f ðxÞ ¼ ðf1ðxÞ; � � � ; fkðxÞÞ:

Usually, X is called the decision set, and the image of the set X underf,

f ðXÞ :¼ fz 2 Rk : z ¼ f ðxÞ; x 2 Xg; ð2Þ

is called the outcome set of Problem (1).The most important approach for handling Problem (1) is the

concept of efficient (or Pareto optimal) solutions. For applications,theory and computational methods of efficient solutions, we referto Refs. [1–8,18,21–23] and references therein.

Another interesting and important approach to Problem (1) isthe concept of utility (or value) functions and utility function pro-grams. The main idea of this school of thought is that each outcomehas a ‘utility’ to the decision maker, and the decision maker tends

ll rights reserved.

to or should choose the one having the maximal utility. This ap-proach consists of two consecutive stages:

(a) Construction of a utility function on the outcome set, and(b) Development of algorithms for the global maximization of

the utility function.

For the first stage, the UTAs (UTilité Additives) type methods,originally proposed by Jacquet-Lagrèze and Siskos [13] for han-dling multicriteria decision making problems, play an importantpart. These methods construct utility functions of the form

UðzÞ ¼Xk

i¼1

UiðziÞ;

where for each i, Ui is a continuous, nondecreasing and piecewise af-fine univariate function. Throughout this article, functions con-structed by the UTA type methods are called UTA functions.

For improvements of the UTA type methods and other methodsfor constructing utility functions we refer to e.g., [4,6–8,14–17,19,20,22,23].

For the second stage, to our knowledge, there are only a fewmethods for handling utility function programs. In [12], a modifi-cation of the simplex algorithm was proposed to determine somekind of local optimal solutions. A global optimization method forsolving general utility function programs was presented in [10].

The purpose of the present article is to propose a new algorithmfor globally solving the utility function program

398 D.V. Nguyen / European Journal of Operational Research 228 (2013) 397–404

maxfUðzÞ : z 2 f ðXÞg ¼maxfUðzÞ : z ¼ f ðxÞ; x 2 Xg; ð3Þ

where U(z) is a UTA function. Our algorithm belongs to the class ofbranch and bound methods, which is a successful tool in globaloptimization, see e.g., [9–11]. In this algorithm, both basic opera-tions, branching and bounding procedures, are established basedon the special structure of the UTA function U(z).

To apply our algorithm, we assume that any UTA function, con-structed by the basic model of Jacquet-Lagrèze, and Siskos, or bythe new approaches, e.g., the UTA–GMS method in [7], the GRIPmethod in [6], the ACUTA method in [4], is consistent by applyinga man–machine dialogue included in the UTA type philosophy.

In the next section, we outline briefly the basic UTA method andgive a detailed representation of the resulting UTA function. Sec-tions 3–5 deal with basic operations that are used to establishthe finite branch and bound algorithm in Section 6. An illustrativeexample and preliminary computational experiments are reportedin Section 7. Finally, some conclusions are given in Section 8.

2. The Basic UTA Method

The basic UTA method of Jacquet-Lagrèze and Siskos was devel-oped for constructing additive utility functions of the form

UðzÞ ¼Xk

i¼1

UiðziÞ; ð4Þ

where for every i, the univariate function Ui(zi) is continuous, non-decreasing and piecewise affine in the interval [ti, Ti] with

ti 6 minffiðxÞ : x 2 Xg < maxffiðxÞ : x 2 Xg 6 Ti: ð5Þ

For arbitrary points z1; z2 2 Rk, by z16 z2 we mean that

z1i 6 z2

i 8i ¼ 1; � � � ; k. Let R0 be a rectangle in Rk defined by

R0 :¼ fz 2 Rk : t 6 z 6 Tg ¼ fz 2 Rk : ti 6 zi 6 Ti; i ¼ 1; � � � ; kg:ð6Þ

Then obviously the function U defined in (4) has the following non-decreasing property in the rectangle R0:

z1; z2 2 R0; z1 P z2 ) Uðz1ÞP Uðz2Þ: ð7Þ

We present briefly the original idea of the basic UTA method.UTA Method:

Step 1: Choose a finite set, B, of reference outcomes, (e.g., B con-sists of outcomes of efficient solutions).

Step 2: Determine on B a preference ordering in the followingsense: for each pair a, b 2 B, one is convinced that exactlyone of following cases can occur:

(i) a is preferred to b, notation: a � b;(ii) a is indifferent to b, notation: a � b.

Step 3: Divide interval [ti, Ti] into pi � 1 equal intervals [zi,j, zi,j+1],j = 1, � � � , pi � 1, with zi1 = ti and zi;pi

¼ Ti.Step 4: For each i, assume that Ui(zi) is continuous and affine in

each subinterval [zi,j, zi,j+1], j = 1, � � � , pi � 1. From this, foreach b 2 B and i = 1, � � � , k, there is an interval [zi,j, zi,j+1]such that bi 2 [zi,j, zi,j+1], and it holds that

UiðbiÞ ¼ Uiðzi;jÞ þUiðzi;jþ1Þ � Uiðzi;jÞ

zi;jþ1 � zi;jðbi � zi;jÞ: ð8Þ

Step 5: Assume that for each b 2 B, the function value U(b) is esti-mated by

UðbÞ ¼Xk

i¼1

UiðbiÞ þ eb; ð9Þ

where Ui(bi) is computed by (8), and eb denotes an error of the esti-mation. Furthermore, assume that for each pair a, b 2 B, it holds that

a � b() UðaÞ � UðbÞ ¼ 0a � b() UðaÞ � UðbÞP d;

�ð10Þ

where d is a given positive number, (a potential error).Step 5: Denote

ui;j ¼ Uiðzi;jÞ; i ¼ 1; � � � ; k; j ¼ 1; � � � ;pi: ð11Þ

Then the values ui,j are determined by solving the following linearprogram:

minX

b2Beb subject to ð12Þ

Xk

i¼1

½UiðaiÞ � UiðbiÞ� þ ea � eb P d

for all pair a; b 2 B such that a � b

ð13Þ

Xk

i¼1

½UiðaiÞ � UiðbiÞ� þ ea � eb ¼ 0

for all pair a; b 2 B such that a � b

ð14Þ

ui;jþ1 � ui;j P 0 8i ¼ 1; � � � ; k; j ¼ 1; � � � ;pi: ð15Þ

ui1 ¼ 0 8i ¼ 1; � � � ; kXk

i¼1

ui;pi¼ 1

ð16Þ

ui;j P 0 8ði; jÞ; ea P 0 8a 2 B: ð17Þ

Remark 1.

(a) The above linear program hasPk

i¼1pi þ jBj variables. Theyare ui,j, i = 1, � � � , k; j = 1, � � � , pi and eb, b 2 B.

(b) Constraints in (13) and (14) are equivalent to conditions in(10).

(c) Constraints in (15) imply that the function Ui(zi) is nonde-creasing for each i.

(d) Constraints in (16) imply that the function U(z) is normed inthe rectangle {z 2 Z:ti 6 zi 6 Ti, i = 1, � � � , k}, such that U(t) = 0and U(T) = 1.

Let u� ¼ u�ij� �

i¼1;���k;j¼1;���;pi

be an optimal solution of the linear

program constructed in Step 5. Then we obtain for eachi 2 {1, � � � , k} the function Ui(zi), which is a nondecreasing, continu-ous and piecewise affine function given by

UiðziÞ ¼ ‘ijðziÞ for zi 2 ½zi;j; zi;jþ1�; j ¼ 1; � � � ;pi � 1; ð18Þ

where for each j = 1, � � � , pi � 1 the affine function ‘ij is defined by(8), i.e.,

‘ijðziÞ ¼ aijzi þ bij with

aij ¼u�i;jþ1 � u�i;jzi;jþ1 � zi;j

and bij ¼ u�i;j �u�i;jþ1 � u�i;jzi;jþ1 � zi;j

zi;j:ð19Þ

3. Reformulation of utility function program

Let U be a UTA function defined in the rectangle R0, (recall thatthe rectangle R0 is defined by (6)). For the establishment of abranch and bound algorithm for solving the utility function pro-gram (3), we define a set Z � Rk by

D.V. Nguyen / European Journal of Operational Research 228 (2013) 397–404 399

Z :¼ fz 2 Rk : z 6 f ðxÞ; x 2 Xg: ð20Þ

The aim of this section is to construct a rectangle R1 # R0 such thatwe can replace the utility function program (3) by a problem of theform

maxfUðzÞ : z 2 Z \ R1g ¼maxfUðzÞ : z 6 f ðxÞ; x 2 X; z

2 R1g: ð21Þ

For our purpose, we assume that a decision x0 2 X is available,which yields an outcome z0 = f(x0).

If U(z0) = U(T), then it follows from the nondecreasing propertyof the utility function U that z0 is an optimal solution of Problem(3). Thus we assume that

Uðz0Þ < UðTÞ: ð22Þ

The following result shows a way to construct a rectangle R1 # R0

such that from any optimal solution of Problem (21) one obtainsimmediately an optimal solution of Problem (3).

Proposition 1. For each i = 1, � � � , k, let �ri 2 ½ti; Ti� satisfying

Uið�riÞ ¼ Uðz0Þ �Xk

m ¼ 1m–i

UmðTmÞ and �ri > ti;

or �ri ¼ ti;otherwise;

ð23Þ

and let

ri ¼min �ri; z0i

� �: ð24Þ

Furthermore, let R1 be a rectangle defined by

R1 ¼ fz 2 Rk : r 6 z 6 Tg ¼ fz 2 Rk : ri 6 zi 6 Ti ði¼ 1; � � � ; kÞg: ð25Þ

Then from each optimal solution z⁄ of Problem (21) (which satisfiesz⁄ 6 f(x⁄) for some x⁄ 2 X), one obtains immediately an optimalsolution z ¼ f ðx�Þ of Problem (3). In other words, Problem (3) can bereplaced by Problem (21).

Proof. By construction, it is clear that R1 # R0. We show first thatR1 contains at least an optimal solution of Problem

maxfUðzÞ : z 2 Zg: ð26Þ

For this, define for each i = 1, � � � ,k a point v i ¼ ðT1; � � � ; Ti�1;�ri;

Tiþ1; � � � ; TkÞ, where the component �ri is determined from (23). Thenit follows that

Uðv iÞ ¼ Uið�riÞ þXk

m ¼ 1m–i

UmðTmÞ ¼ Uðz0Þ:

From Assumption (22), it follows that U(vi) < U(T), which impliesthat Uið�riÞ < UiðTiÞ, and therefore, �ri < Ti for each i = 1, � � � , k. Thus,it holds that

Z # fz : z 6 Tg ¼[ki¼1

fz : z 6 v ig[fz : �r 6 z 6 Tg:

Since U(z) 6 U(z0) for z 2 {z:z 6 vi}, i = 1, � � � ,k, it follows that when-ever a point z 2 Z exists satisfying U(z) > U(z0), it must be containedin the rectangle fz : �r 6 z 6 Tg. But, by construction, the rectangleR1 contains the point z0 as well as the rectangle fz : �r 6 z 6 Tg. Thus,the rectangle R1 contains an optimal solution of Problem (26). Thisimplies that Problem (26) can be replaced by Problem (21).

To complete the proof, let z⁄ be any optimal solution of Problem(21). Then it holds that z⁄ 6 f(x⁄) for some x⁄ 2 X. Now let z ¼ f ðx�Þ.

Then from the nondecreasing property of the utility function U, itholds that UðzÞP Uðz�Þ, which implies that z is an optimal solutionof Problem (3). h

For the construction of the rectangle R1 in the above proposition, wemainly need to compute a point �r ¼ ð�r1; � � � ;�rkÞ such that (23) holds.For each i = 1, � � � , k, since the function Ui(zi) is nondecreasing, thereal number �ri can be computed, e.g., by any line search procedure.However, based on the special structure of the UTA function U(z),we propose below a simple procedure for this task.

First note that, since UiðtiÞ 6 Uið�riÞ 6 UiðTiÞ, there exists aninterval [zi,j, zi,j+1] such that

�ri 2 ½zi;j; zi;jþ1� for some 1 6 j 6 pi � 1:

Let �ri ¼ zi;j þ kðzi;jþ1 � zi;jÞ; 0 6 k 6 1. Then from (23), it follows that

Uið�riÞ ¼ ‘ijð�riÞ ¼ aij�ri þ bij ¼ Uðz0Þ �Xk

m ¼ 1m–i

UmðTmÞ;

which implies

aij½zi;j þ kðzi;jþ1 � zi;jÞ� þ bij ¼ Uðz0Þ �Xk

m ¼ 1m–i

UmðTmÞ:

If aij = 0, then the condition for �ri 2 ½zi;j; zi;jþ1� is therefore

bij ¼ Uðz0Þ �Xk

m ¼ 1m–i

UmðTmÞ:

Otherwise, i.e., aij > 0, the real number �ri is computed by

�ri ¼ zi;j þ kðzi;jþ1 � zi;jÞ where

k ¼

Uðz0Þ �Pk

m ¼ 1m–i

UmðTmÞ � ‘ijðzi;jÞ

aijðzi;jþ1 � zi;jÞ; 0 6 k 6 1:

From the above observation, we obtain the following procedure forcomputing the real number �ri for each i = 1, � � � , k.

Procedure 1.

Step 1: Set j = pi � 1.Step 2: If bij ¼ Uðz0Þ �

Pkm ¼ 1m–i

UmðTmÞ, then set �ri ¼ zi;j. Otherwise,compute

k ¼

Uðz0Þ �Pk

m ¼ 1m–i

UmðTmÞ � ‘ijðzi;jÞ

aijðzi;jþ1 � zi;jÞ:

Step 3: If 0 6 k 6 1, then set

�ri ¼ zi;j þ kðzi;jþ1 � zi;jÞ;

and stop, otherwise, set j j � 1 and goto Step 2.For the establishment of a branch and bound algorithm in the nextsections, we enlarge the rectangle R1 slightly by setting

ri maxfzi;j : zi;j 6 rig 8i ¼ 1; � � � ; k: ð27Þ

Remark 2. It is worth noting that by the modification (27), the ini-tial rectangle R1 has an useful property that for each i = 1, � � � , k, theedge [ri, Ti] contains at least an interval of the form [zi,j, zi,j+1]. Inother words, the rectangle R1 has full dimension in Rk.

400 D.V. Nguyen / European Journal of Operational Research 228 (2013) 397–404

4. I-rectangular bisection

For the branching procedure of our branch and bound algo-rithm, we introduce in this section a special kind of rectangularsubdivision, which we call I-rectangular bisection.

Beginning with the initial rectangle R1 constructed in the previ-ous section, the algorithm generates iteratively a sequence of sub-rectangles, {Rq}, such that Rq Rq+1 for all q P 1. Each rectanglegenerated throughout the algorithm should have the I-shape inthe following sense:

Definition 1. A rectangle

R ¼ fz 2 Rk : v i 6 zi 6 wi; i ¼ 1; � � � ; kg;

is called to have the I-shape (or simply I-rectangle) iff the bounds vi,wi, i = 1, � � � , k have following properties:

(i) vi, wi are elements of the set fzi;1; � � � ; zi;pi�1g;(ii) For each i = 1, � � � , k, the edge [vi, wi] of R contains at least an

interval of the form [zi,j, zi,j+1], (thus, the dimension of R is k).

At iteration q, let Rq � R1 be an I-rectangle having the form

Rq ¼ z 2 Rk : vqi 6 zi 6 wq

i ; i ¼ 1; � � � ; k� �

: ð28Þ

Assuming that there exists an index i such that the edge vqi ;w

qi

� �of

Rq consists of at least two intervals of the forms [zi,j, zi,j+1], we pro-pose a procedure for the subdivision of the I-rectangle Rq into two I-subrectangles Rq

1 and Rq2.

Procedure 2.

Step 1: Fix an index m 2 {1, � � � ,k} such that the number of subin-tervals [zm,j, zm,j+1] in vq

m;wqm

� �is maximal.

Step 2: Choose zm;jm 2 vqm;w

qm

� �such that vq

m < zm;jm < wqm. Set

Rq1 ¼ z 2 Rk : vq

m 6 zm 6 zm;jm ; vqi 6 zi 6 wq

i 8i – m� �

; and

Rq2 ¼ z 2 Rk : zm;jm 6 zm 6 wq

m; vqi 6 zi 6 wq

i 8i – m� �

:ð29Þ

It is easy to verify that the subrectangles Rq1;R

q2 satisfy

Rq1 [ Rq

2 ¼ Rq and intRq1 \ intRq

2 ¼ ;:

We say that Rq is divided into Rq1; Rq

2 by an I-rectangular bisection.

Remark 3. The choice of the point zm;jm 2 vqm;w

qm

� �at Step 2 is flex-

ible depending on the structure of the UTA function. A classicalchoice of zm;jm is the following: Let d ¼ 1

2 wqm � vq

m

, then zm;jm is thelargest value such that zm;jm 6 vq

m þ d.

5. Bound estimations

Another basic operation of branch and bound algorithms is thebounding procedure, which actually consists of two parts, upperand lower bound estimations. This is the topic of concern in thissection.

5.1. Upper bounds

To simplify the notation, let

R ¼ fz 2 Rk : v i 6 zi 6 wi; i ¼ 1; � � � ; kg

be any I-rectangle contained in the initial rectangle R1 constructedby Proposition 1. The purpose of this section is to compute a realnumber, c(R), such that

cðRÞP maxfUðzÞ : z 2 R \ Zg: ð30Þ

By definition, c(R) can be considered as an upper bound for themaximal value of the function U(z) over the set R \ Z.

We recall that for each I-rectangle R the bounds vi, wi are ele-ments of the set {zi,j, j = 1, � � � , pi � 1}. We also assume here thatevery edge [vi, wi] of R contains at least an interval of the form[zi,j, zi,j+1], i.e., dim (R) = k. Letting mi + 1 with mi P 0 be the numberof intervals contained in the edge [vi, wi], we write

½v i;wi� ¼ ½v i ¼ zi;�j; zi;�jþ1; � � � ; zi;�jþmiþ1 ¼ wi�: ð31Þ

Accordingly, let

‘ijðziÞ ¼ aijzi þ bij; j ¼ �j; � � � ;�jþ mi ð32Þ

be the affine functions defined in (19). The following result yields anupper bound c(R).

Proposition 2. For each i = 1, � � � , k, let

ai ¼maxfaij : j ¼ �j; � � � ;�jþ mig;�ai ¼minfaij : j ¼ �j; � � � ;�jþ mig:

ð33Þ

Then an upper bound c(R) can be computed by solving the followingoptimization problem in variables z 2 Rk; n 2 Rk:

cðRÞ ¼maxXk

i¼1

ni

s:t: aizi � ni P aiv i � Uiðv iÞ; i ¼ 1; � � � ; k�aizi � ni P �aiwi � UiðwiÞ; i ¼ 1; � � � ; kni P 0; i ¼ 1; � � � ; kz 2 R \ Z:

ð34Þ

We stipulate that c(R) = �1, if R \ Z = ;.

Proof. Define for each i = 1, � � � , k two affine functions

‘iðziÞ ¼ aizi þ ðUiðv iÞ � aiv iÞ;�‘iðziÞ ¼ �aizi þ ðUiðwiÞ � �aiwiÞ

where ai and �ai are defined in (33).First, we show that it holds:

‘iðziÞ ¼ aizi þ ðUiðv iÞ � aiv iÞP UiðziÞ for zi 2 ½v i;wi�: ð35Þ

Since the function Ui(zi) is linear in each interval [zi,j, zi,j+1], we onlyneed to show that

‘iðzi;jÞP Uiðzi;jÞ 8j ¼ �j; � � � ;�jþ mi:

This is done by induction as follows.For j ¼ �j, it holds

‘iðzi;jÞ ¼ ‘iðv iÞ ¼ Uiðv iÞ ¼ Uiðzi;jÞ:

Assume that for j P �jþ 1 it holds

‘iðzi;j�1ÞP Uiðzi;j�1Þ ¼ ‘i;j�1ðzi;j�1Þ:

Then, since ai P ai,j�1, i.e.,

‘iðzi;jÞ � ‘iðzi;j�1Þzi;j � zi;j�1

P‘i;j�1ðzi;jÞ � ‘i;j�1ðzi;j�1Þ

zi;j � zi;j�1;

it follows that ‘i(zi,j) P ‘i,j�1 (zi,j) = Ui(zi,j).Next, we show that it holds:

�‘iðziÞ ¼ �aizi þ ðUiðwiÞ � �aiwiÞP UiðziÞ for zi 2 ½v i;wi�: ð36Þ

As above, we also need to show that

�‘iðzi;jÞP Uiðzi;jÞ 8j ¼ �j; � � � ;�jþ mi:

This is done by backward induction as follows.

D.V. Nguyen / European Journal of Operational Research 228 (2013) 397–404 401

For j ¼ �jþ mi, it holds

�‘iðzi;jÞ ¼ �‘iðwiÞ ¼ UiðwiÞ ¼ Uiðzi;jÞ:

Assume that for j 6 �jþ mi � 1 it holds

�‘iðzi;jÞP Uiðzi;jÞ ¼ ‘i;j�1ðzi;jÞ:

Then, since �ai 6 ai;j�1, i.e.,

�‘iðzi;jÞ � �‘iðzi;j�1Þzi;j � zi;j�1

6‘i;j�1ðzi;jÞ � ‘i;j�1ðzi;j�1Þ

zi;j � zi;j�1;

it follows that �‘iðzi;j�1ÞP ‘i;j�1ðzi;j�1Þ ¼ Uiðzi;j�1Þ.Now we define a function mi : ½v i;wi� ! R by

miðziÞ ¼ minf‘iðziÞ; �‘iðziÞg: ð37Þ

Then the function mi(zi), being the pointwise minimum of two af-fine functions, is concave. Moreover, from (35) and (36), and theproperty Ui(zi) P 0, it holds that

miðziÞP UiðziÞP 0 for zi 2 ½v i;wi�:

Thus, it follows that

maxXk

i¼1

miðziÞ : z 2 R \ Z

( )P max

Xk

i¼1

UiðziÞ : z 2 R \ Z

( );

which implies that an upper bound c(R) can be computed by

cðRÞ ¼maxXk

i¼1

miðziÞ : z 2 R \ Z

( ):

Using additional variables n1, � � � , nk, we can formulate the last prob-lem equivalently as

maxXk

i¼1

ni

s:t: miðziÞP ni; i ¼ 1; � � � ; kz 2 R \ Z;

which is exactly Problem (34). h

We consider below two special cases, in which the upper boundc(R) computed by Proposition 2 can be improved significantly.

Proposition 3. Let R ¼ fz 2 Rk : zi 2 ½v i;wi�; i ¼ 1; � � � ; kg be an I-rectangle, where

½v i;wi� ¼ ½v i ¼ zi;�j; zi;�jþ1; � � � ; zi;�jþmi¼ wi�;

and accordingly, let

‘ijðziÞ ¼ aijzi þ bij; j ¼ �j; � � � ;�jþ mi � 1

be the affine functions constructed by the UTA method as in (19).

(a) Assume that for an index i 2 {1, � � � , k}, the sequence

fai;�j; � � � ;ai;�jþmi�1g

is nondecreasing, i.e,

ai;�j 6 � � � 6 ai;�jþmi�1: ð38Þ

Then in Problem (34), the two constraints

aizi � ni P aiv i � Uiðv iÞ�aizi � ni P �aiwi � UiðwiÞ:

ð39Þ

can (and should) be replaced by one unique constraint of the form

aizi � ni P aiv i � Uiðv iÞ with ai ¼UiðwiÞ � Uiðv iÞ

wi � v i:

(b) Assume that for an index i 2 {1, � � � , k}, the sequence

fai;�j; � � � ;ai;�jþmi�1g

is nonincreasing, i.e,

ai;�j P � � �P ai;�jþmi�1: ð40Þ

Then in Problem (34), the two constraints

aizi � ni P aiv i � Uiðv iÞ�aizi � ni P �aiwi � UiðwiÞ:

can (and should) be replaced by mi � 1 constraints of the form

aijzi � ni P �bij; j ¼ �j; � � � ;�jþ mi � 1: ð41Þ

Proof.

(a) From (38), it follows that the function Ui(zi) is convex in theinterval [vi, wi]. Therefore, it is well-known that the affinefunction

‘iðziÞ ¼ aizi þ ðUiðv iÞ � aiv iÞ with ai ¼UiðwiÞ � Uiðv iÞ

wi � v i

is the best concave upper estimating function of Ui in interval [vi,wi]. Thus, the upper estimating function mi(zi) defined in (37) canand should be replaced by ‘iðziÞ.

(b) From (40), it follows that the function Ui(zi) is concave in theinterval [vi, wi], and can be represented as the pointwiseminimum of the affine functions ‘i;�jðziÞ; � � � ; ‘i;�jþmi�1ðziÞ, i.e.,

UiðziÞ ¼minf‘i;�jðziÞ; � � � ; ‘i;�jþmi�1ðziÞg:

Thus, the upper estimating function mi(zi) defined in (37) can andshould be replaced by the function minf‘i;�jðziÞ; � � � ; ‘i;�jþmi�1ðziÞg, fromwhich the assertion (b) follows. h

Remark 4. From Proposition 3(b), it follows that if Condition (40)is fulfilled for all i = 1, � � � , k, then it holds that

cðRÞ ¼maxfUðzÞ : z 2 R \ Zg:

With other words, in this case, the upper bound c(R) is the exactmaximal value of U(z) in R \ Z.

The upper bound c(R) computed by Propositions 2 and 3 has thefollowing useful properties, which can be applied to establish ourbranch and bound algorithm in the next section.

Proposition 4.

(a) If every edge of the I-rectangle R contains a unique interval ofthe form ½zi;�j; zi;�jþ1�, then it holds that

cðRÞ ¼maxfUðzÞ : R \ Zg:

(b) Let R and R0 be two I-rectangles such that R R0. Then it holdsthat

cðRÞP cðR0Þ:

Proof.

(a) For each i = 1, � � � , k, if ½v i;wi� ¼ ½zi;�j; zi;�jþ1�, then it followsthat the function Ui(zi) coincides with the affine function‘ij(zi) = aijzi + bij in [vi, wi]. Thus, it holds that mi(zi) = Ui(zi)for zi 2 [vi, wi], where mi is defined in (37). Therefore, it fol-lows that

402 D.V. Nguyen / European Journal of Operational Research 228 (2013) 397–404

cðRÞ ¼maxXk

i¼1

miðziÞ : z 2 R \ Z

( )

¼maxXk

i¼1

UiðziÞ : z 2 R \ Z

( ):

(b) Let

R ¼ fz 2 Rk : v i 6 zi 6 wi; i ¼ 1; � � � ; kg;R0 ¼ fz 2 Rk : v 0i 6 zi 6 w0i; i ¼ 1; � � � ; kg:

Further, let m0iðziÞ; i ¼ 1; � � � ; k be the functions defined by (37)according to the rectangle R0. Then the condition R R0 implies that½v i;wi� ½v 0i;w0i� 8i ¼ 1; � � � ; k. Thus, mi(zi) P m0(zi) for each i andzi 2 ½v 0i;w0i�, from which it follows that

cðRÞ ¼maxfXk

i¼1

miðziÞ : z 2 R \ Zg

P maxfXk

i¼1

miðziÞ : z 2 R0 \ Zg

P maxfXk

i¼1

m0iðziÞ : z 2 R0 \ Zg

¼ cðR0Þ: �

5.2. Lower bounds

As usual for branch and bound algorithms, lower bounds of theoptimal value are computed and improved iteratively by using fea-sible solutions found throughout the algorithm. For the imple-mentability of our algorithm, we assume that the decision set Xis given by

X ¼ fx 2 Rn : gjðxÞ 6 0; j ¼ 1; � � � ;m; x P 0g; ð42Þ

where gj, j = 1, � � � , m are convex functions. Then, in the calculationof an upper bound c(R) for an I-rectangle

R ¼ fz 2 Rk : v i 6 zi 6 wi; i ¼ 1; � � � ; kg;

Problem (34) becomes the following problem (in variablesx 2 Rn; z 2 Rk and n 2 Rk):

cðRÞ ¼maxXk

i¼1

ni

s:t: aizi � ni P aiv i � Uiðv iÞ; i ¼ 1; � � � ; k ð�Þ�aizi � ni P �aiwi � UiðwiÞ; i ¼ 1; � � � ; k ð��Þzi � fiðxÞ 6 0; i ¼ 1; � � � ; kgjðxÞ 6 0; j ¼ 1; � � � ;m;x P 0v i 6 zi 6 wi i ¼ 1; � � � ; kni P 0; i ¼ 1; � � � ; k:

ð43Þ

Remark 5.

(a) Note that the constraints (⁄)–(⁄⁄) in Problem (43) should bemodified for the two special cases considered in Proposition 3.

(b) In general, Problem (43) is a convex program with linearobjective function. If the functions fi, i = 1, � � � , k and gj,j = 1, � � � , m are all linear, then it is an ordinary linearprogram.

Let ðx�; z�; n�Þ 2 Rn � Rk � Rk be an optimal solution of Problem(43), and define a point ðxðRÞ; zðRÞÞ 2 Rn � Rk by

ðxðRÞ; zðRÞÞ :¼ ðx�; f ðx�ÞÞ: ð44Þ

Then obviously (x(R), z(R)) is a feasible solution of Problem (21).This feasible solution can be used for improving lower bounds. Itis worth noting that the point z(R) does not need to belong to theI-rectangle R.

6. The algorithm and its finite convergence

Using the basic operations established in Sections 3–5, we de-velop now a branch and bound algorithm for globally solving theutility function program (3).

Branch and Bound Algorithm:

Step 1 (Initialization): Compute x0 2 X and z0 = f(x0); Constructan initial I-rectangle R1 containing an optimal solution of Prob-lem (21) (Section 3); Compute upper bound c(R1) and (x(R1),z(R1)) by solving Problem (43) (or its modified versions as inProposition 3) respecting R1; Define a set

Q 1 ¼ fðx0; z0Þ; ðxðR1Þ; zðR1ÞÞg

Set

c1 ¼ cðR1Þðfirst upper boundÞ;l1 ¼maxfUðzÞ : ðx; zÞ 2 Q 1gðfirst lower boundÞ;

and choose (x1, z1) 2 Q1 satisfying U(z1) = l1; Set R1 ¼ fR1g; q ¼ 1.Step 2 (Checking optimality):If cq = lq, then stop: zq = f(xq) is an optimal solution of the utilityfunction program (3) with optimal value U(zq) = cq. Otherwise,goto Step 3.Step 3 (Branching): Divide the I-rectangle

Rq ¼ fz 2 Rk : vq6 z 6 wqg

into two I-subrectangles Rq1 and Rq

2 (Section 4).Step 4 (Bounding): Compute cðRq

i Þ and xðRqi Þ; z Rq

i

for i = 1,2.

Step 5 (Improving lower bound): Compute

lqþ1 ¼maxflq;U z Rq1

;U z Rq

2

g;

and choose (xq+1, zq+1) satisfying U(zq+1) = lq+1.Step 6 (Pruning): Set

Rqþ1 ¼ ðRq n fRqgÞ [ Rq1;R

q2

� �;

and delete all rectangles R 2 Rqþ1 such that c(R) 6 lq+1, i.e., set

Rqþ1 ! Rqþ1 n fR : cðRÞ 6 lqþ1g;

Step 7 (Choosing a rectangle to subdivide in the next iteration): Set

cqþ1 ¼lqþ1; ifRqþ1 ¼ ;maxfcðRÞ : R 2 Rqþ1g; if Rqþ1 – ;;

(

If Rqþ1 – ;, then choose Rqþ1 2 Rqþ1 satisfying c(Rq+1) = cq+1.Step 8: Set q (q + 1), and go to Step 2.

Proposition 5. The above branch and bound algorithm is finite, i.e., itterminates after finitely many iterations yielding an optimal solutionof Problem (3).

Proof. Let {Rp} be any subsequence of I-rectangles generatedthroughout the algorithm such that Rp Rp+1 "p. Then the I-rectan-gular bisection guarantees that there exists a number �p such thatthe I-rectangle

R�p ¼ z 2 Rk : v �pi 6 zi 6 w�p

i ; i ¼ 1; � � � ; k� �

has the property that every edge v �pi ;w

�pi

� �contains a unique interval

of the form [zi,j, zi,j+1]. By Proposition 4(a), it holds that

D.V. Nguyen / European Journal of Operational Research 228 (2013) 397–404 403

cðR�pÞ ¼maxfUðzÞ : z 2 R�p \ Zg:

Let ðxðR�pÞ; zðR�pÞÞ be computed by (44) respecting R�p. Then it holdsthat

cðR�pÞ 6 UðzðR�pÞ 6 l�pþ1;

which implies that the rectangle R�p has to be deleted by the pruningrule at Step 6. With this, it is shown that each decreasing subse-quence of I-rectangles generated throughout the algorithm is finite,and therefore, the algorithm terminates after finitely many itera-tions at Step 2, yielding an optimal solution of Problem (3).

7. Illustrative example and preliminary numerical experiments

In the first part of this section, we present an example to illus-trate the branch and bound algorithm. Consider the following mul-tiple objective programming problem with n = 2 and k = 2:

max f 1ðxÞ ¼ x1 þ 2x2

f 2ðxÞ ¼ 2x1

s:t: � 0:25x1 þ 0:5x2 6 1

x21

4þ x2

2

96 1

0 6 x1 6 20 6 x2 6 3:

ð45Þ

The first rectangle R0 2 R2 is defined by

R0 ¼ fz 2 R2 : 0:0 6 z1 6 6:0; 0:0 6 z2 6 4:0g; i:e:;R0 ¼ ½0:0;6:0� � ½0:0;4:0�:

Dividing each of intervals [0.0, 6.0] and [0.0, 4.0] into 4 equal inter-vals, we obtain

R0 ¼ ½0:0;1:5;3:0;4:5;6:0� � ½0:0;1:0;2:0;3:0;4:0�:

We assume that a UTA function U : R0 ! Rþ was constructed havingthe form

UðzÞ ¼ U1ðz1Þ þ U2ðz2Þ; where

U1ðz1Þ ¼

2z1 þ 1; z1 2 ½0:0;1:5�

0:5z1 þ 3:25; z1 2 ½1:5;3:0�

0:5z1 þ 3:25; z1 2 ½3:0;4:5�

z1 þ 1; z1 2 ½4:5;6:0�;

8>>>>>>>>><>>>>>>>>>:

U2ðz2Þ ¼

0:333z2 þ 1:5; z2 2 ½0:0;1:0�

z2 þ 0:833; z1 2 ½1:0;2:0�

0:2z2 þ 2:433; z1 2 ½2:0;3:0�

1:5z2 � 1:466; z1 2 ½4:5;6:0�

8>>>>><>>>>>:

Initialization.

SetR1 ¼ R0;

c1 ¼ cðR1Þ ¼ 10:64 ðfirst upper boundÞ;

ðxðR1Þ; zðR1Þ; nðR1ÞÞ ¼ ð0:85;2:14;5:14;1:72;6:57;4:07Þ;

ðx1; z1Þ ¼ ðxðR1Þ; zðR1ÞÞ ¼ ð0:85;2:14;5:14;1:72Þ;

l1 ¼ Uðz1Þ ¼ 8:69 ðfirst lower boundÞ;

R1 ¼ fR1g:

Iteration 1. Divide R1 into R11 and R1

2 where

R11¼ ½0:0;6:0�� ½0:0;1:0�with

c R11

� �¼8:5833 ð<l1Þ;

lðR11Þ¼8:333 ð<l1Þ;

R12¼ ½0:0;6:0�� ½1:0;4:0�with

c R12

� �¼10:60;

l R12

� �¼8:65:

Actual upper bound : c2¼10:60;Actual lower bound : l2¼8:69;

Current best feasible point : ðx2;z2Þ¼ ð0:85;2:14;5:14;1:72Þ;R1

1 is deleted:R2¼fR12g; R2¼R1

2:

Iteration 2. Divide R2 into R21 and R2

2 where

R21¼ ½0:0;4:5�� ½1:0;4:0�with

c R21

� �¼9:8333;

l R21

� �¼8:5333;

R22¼ ½4:5;6:0�� ½1:0;4:0�with

c R22

� �¼9:95;

l R22

� �¼8:65:

Actual upper bound : c3¼9:95;

Actual lower bound : l3¼8:69;

Current best feasible point : ðx3;z3Þ¼ ð0:85;2:14;5:14;1:72Þ;

R3¼ R21;R

22

n o; R3¼R2

2:

The algorithm needs two more iterations yielding the followingoptimal solution of the utility function program underconsideration:

x� ¼ ð1:96; 0:444Þ; z� ¼ f ðx�Þ ¼ ð2:85; 3:92Þ; Uðz�Þ ¼ 9:098:

To get some numerical experiments with the algorithm, we con-struct a class of multiple objective optimization problems of theform

max cTi x; i ¼ 1; � � � ; k

s:t: Ax� b 6 0gjðxÞ 6 0; j ¼ 1; � � � ;m2

t 6 x 6 T;

ð46Þ

where ci 2 Rn; i ¼ 1; � � � ; k; A is an m1 � n matrix, b 2 Rm1 , and gj,j = 1, � � � , m2, are convex quadratic functions of the form

gjðxÞ ¼ xT Q jxþ qT x� aj 6 0

with Qj being a positive semidefinite matrix, q 2 Rn and aj P 0.For each given k, all intervals [ti, Ti], i = 1, � � � , k, were divided

into p equal subintervals, i.e., pi = p " i = 1, � � � , k. The utility func-tions were randomly generated having properties of UTA functions.

For each given input data set (n, k, m1.m2, p), 20 problems of theform (46) were generated by using a pseudo–random number gen-erator. Numerical results on test problems in the sense of averagevalues are summarized in Table 1.

For all test problems we replaced the optimality condition‘cq = lq’ at Step 2 of the branch and bound algorithm by the condi-tion ‘cq � lq 6 e’ with e = 10�6. Finally, we notice that for solvinglinear/convex subproblems of the form (43) we used an own code

Table 1Numerical results.

n k m1 m2 p Iter Rmax Time

10 10 15 0 5 8.5 2.5 0.5510 10 20 0 10 17.1 2.1 1.2010 10 10 5 10 17.5 2.2 2.9020 10 25 0 5 10.5 1.8 0.9720 15 25 0 10 20.5 2.2 3.1220 10 20 5 10 21.2 2.5 5.1250 10 25 0 5 12.3 1.7 2.2750 15 25 0 10 26.2 2.2 10.0850 10 20 5 10 21.2 2.0 15.12

100 10 55 0 5 13.5 1.9 7.38100 10 55 0 10 30.7 2.1 16.12100 10 20 5 10 21.2 2.5 25.12

Iter: average number of iterations, Rmax: average maximal number of rectanglesstored at an iteration, Time: average CPU-time in seconds.

404 D.V. Nguyen / European Journal of Operational Research 228 (2013) 397–404

written in FORTRAN 90. Test problems were run on a PC with IntelCore 2 Duo Processor, 2.4 GHz, 2 GB RAM.

8. Conclusions

In the present article, we propose a branch and bound algorithmfor computing a global optimal solution of a utility function pro-gram, in which the utility function is determined by one of theUTA type methods (UTA function). Based on the special structureof UTA functions, the main operation of this global optimizationalgorithm is performed in the outcome space, so that it is relativelyefficient in many cases where the number of objective functions ofthe multiple objective optimization problem under considerationis much smaller than the number of variables.

Acknowledgements

The author thanks two anonymous referees for constructivecomments and valuable suggestions which helped to improve con-siderably the first version of this article.

References

[1] H.P. Benson, A geometrical analysis of the outcome set in multiple objectiveconvex programs with linear criterion functions, Journal of GlobalOptimization 6 (1995) 231–251.

[2] H.P. Benson, An outer approximation algorithm for generating all efficientextreme points in the outcome set of a multiple objective linear programmingproblem, Journal of Global Optimization 13 (1998) 1–24.

[3] H.P. Benson, E. Sun, Outcome space partition of weight set in multiobjectivelinear programming, Journal of Optimization Theory and Applications 105(2000) 17–36.

[4] G. Bous, P. Fortemps, F. Glineur, M. Pirlot, ACUTA: a novel method for elicitingadditive value functions on the basis of holistic preference statements,European Journal of Operational Research 206 (2010) 435–444.

[5] M. Ehrgott, Multicriteria Optimization, Springer, Berlin, 2005.[6] J.R. Figueira, S. Greco, R. Slowinski, Building a set of additive value functions

representing a reference preorder and intensities of preference: GRIP method,European Journal of Operational Research 195 (2009) 460–486.

[7] S. Greco, V. Mousseau, R. Slowinski, Ordinal regression revisited: multiplecriteria ranking using a set of additive value functions, European Journal ofOperational Research 191 (2008) 415–435.

[8] P. Hansen (Ed.), Essays and Surveys on Multiple Criteria Decision Making,Springer, Berlin, Germany, 1983.

[9] R. Horst, P.M. Pardalos, N.V. Thoai, Introduction to Global Optimization, 2nded., Kluwer Dordrecht, The Netherlands, 2000.

[10] R. Horst, N.V. Thoai, Utility function programs and optimization over theefficient set in multiple objective decision making, Journal of OptimizationTheory and Applications 92 (1997) 469–486.

[11] R. Horst, H. Tuy, Global Optimization: Deterministic Approaches, 2nd ed.,Springer Verlag, Berlin, New York, 1993.

[12] E. Jacquet-Lagrèze, R. Meziani, R. Slowinski, MOLP with an interactiveassessment of a piecewise linear utility function, European Journal ofOperational Research 31 (1987) 350–357.

[13] E. Jacquet-Lagrèze, Y. Siskos, Assessing a set of additive utility functions formulticriteria decision making: The UTA method, European Journal ofOperational Research 10 (1982) 151164.

[14] E. Jacquet-Lagrèze, Y. Siskos, The preference disaggregation approach: twentyyears of MCDA experience, European Journal of Operational Research 130(2001) 233–245.

[15] R.L. Keeney, H. Raiffa, Decisions with Multiple Objectives: Preferences andValue Tradeoffs, Wiley, New York, 1976.

[16] M. Kostkowski, R. Slowinski, UTA+Application (v. 1.20)-User’s manual,Institute of Computing Science, Poznan University of Technology, 60–965Poznan, Poland, 1996, or: Document du LAMSADE, No. 95, Universit de Paris-Dauphine, Paris, 1996.

[17] P. Pardalos, Y. Siskos, C. Zopounidis (Eds.), Advances in Muticriteria Analysis,Kluwer Academic Publishers., Dordrecht, 1995.

[18] V. Pareto, Cours d’économie politique, F. Rouge, Lausanne vol. I, 1896, (vol. II,1897).

[19] B. Roy, Multicriteria Methodology for Decision Aiding, Kluwer AcademicPublishers., Dordrecht, 1996.

[20] Y. Siskos, E. Grigoroudis, N. Matsatsinis, UTA Methods, in: J. Figueira, S. Greco,M. Ehrgott, (Eds.), Multiple Criteria Decision Analysis: State of the Art Surveys,vol. 78, International Series in Operations Research & Management Science,2005, pp. 297–334.

[21] R.E. Steuer, Multiple Criteria Optimization: Theory, Computation, Applications,Wiley, New York, 1985.

[22] P.L. Yu, Multiple Criteria Decision Making: Concepts, Techniques andExtensions, Plenum, New York, 1985.

[23] M. Zeleny, Multiple Criteria Decision Making, McGraw Hill, New York, 1982.