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.