Biobjective_robust_optimization_over_the
Biobjective_robust_optimization_over_the
2019102
MANAGEMENT OPTIMIZATION
Yasmine Cherfaoui
USTHB, Department of Operational Research
Bp 32 El Alia, 16111 Algiers, Algeria
Mustapha Moulaı̈
USTHB, LaROMaD Laboratory,
Bp 32 El Alia, 16111 Algiers, Algeria
5
6 YASMINE CHERFAOUI AND MUSTAPHA MOULAÏ
and the two preference functions are linear, so the domain is not convex and the
efficient set is finite.
The optimization of one linear preference function over a MOILP has been con-
sidered and solved by many authors [1, 9, 11]. In [12], the authors strengthen the
branch-and-bound procedure by adding an efficiency test and an efficient cut to
the branching process. Inspired by this technique, even though our method treats
a more difficult problem, it can provide the preferred solutions regarding the two
main functions among the efficient set without browsing all the efficient set in a
reasonable execution time.
This paper is organized as follow: In the following section, the problem is defined
and some definitions and notations concerning the MOILP are given. In Section
3, we outline the solution method and present the algorithm. Then an illustrative
example is solved in Section 4. Computational experiments are reported in Section
5. The last section summarizes concluding remarks.
where the following notations and assumptions are employed: Z is the set of integers,
r ≥ 2, A ∈ Rm×n , b ∈ Rm , (ci ) = C ∈ Rr×n are row vectors, X = {x ∈ Rn |Ax ≤
b, x ≥ 0}.
The set X is a nonempty convex polytope and the set D is not empty. Several
authors propose a method to solve a (MOILP) [1, 7, 8] using the concept of efficiency.
A feasible solution x∗ ∈ D is called efficient solution for (MOILP) problem if and
only if there is no feasible solution x ∈ D such that Zi (x) ≥ Zi (x∗ ) for all i ∈
{1, ..., r} and Zk (x) > Zk (x∗ ) for at least one k ∈ {1, . . . , r}. Otherwise, x∗ is not
efficient and its criterion vector Z(x∗ ) is dominated by the criterion vector Z(x),
where Z(x∗ ) = (Zi (x∗ ))i=1,...,r .
Let XE denote the set of all efficient solutions for a M OILP problem. Another
type of problem that is well studied is the optimization of a linear function over the
efficient set, which is defined as follows. Let d be a row vector in Rn :
max dx
(P 1 ) s.t. (2)
x ∈ XE
Since Benson’s initiating article [4], optimization over the efficient set has evolved
sequentially [13], several strategies having been proposed to solve this problem.
Some strategies propose to explore the criterion space where upper and lower bound-
aries are generally used to progressively narrow the search [3]. While other strategies
explore the solutions space and trace adjacent efficient vertex [9], those methods
present generally the inconvenient of enumerating all efficient vertices.
In [12], the authors proposed a branch-and-cut procedure that combines the well-
known Ecker and Kouada efficiency test [8], and the efficient cut cited in [5]. In
fact this method allows to trace efficient vertices in the solutions space and move
from one efficient solution to another without having to enumerate the efficient set
and explores the domain by optimizing the objective function.
OPTIMIZING OVER EFFICIENT SET 7
So if Xl is the subset of the feasible solutions at step l where the optimal inte-
ger solution is x∗(l) and Bl , Nl are the index sets of basic and nonbasic variables
respectively of the optimal solution x∗(l) :
X
xj ≥ 1 (3)
j∈Hl
where
i i
Hl = j ∈ Nl | ∃i ∈ {1, . . . , r} with c̄j > 0 ∪ j ∈ Nl | c̄j = 0, ∀i = 1, . . . , r
The inequality (3) is called efficient cut because it takes into account the efficiency
and has the property of removing inefficient solutions without having to enumerate
them [5].
In this paper we propose a new type of problem that can be of use in at least
two types of situations. The first type may occur when a decision-maker has two
preference functions for evaluating the efficient solutions of a multiobjective prob-
lem. For the second type of situation, there are two decision makers. For instance,
let consider the existence of two firms that have joined in a common project. This
project requires optimizing several conflicting objectives, but these two firms have
also individual profit functions to maximize since they do not participate in the
project in the same way, the problem is to find solutions that optimize two prefer-
ence functions over an efficient set of multiobjective problem.
Let d1 , d2 be two row-vectors in Rn representing preference functions of decision
makers. This problem can be written as:
max d1 x
max d2 x
(P 2 ) (4)
s.t.
x ∈ XE
(LPl ) s.t.
x ∈ Xl
where X0 = X and Xl is a subset of the original set X to explore at node l of the
tree.
If this program has no solution, the node is fathomed, otherwise, there are two
cases; the first case is that the optimal solution x∗(l) is not integer: Then a normal
branching process is followed. The other case is that the solution x∗(l) is integer:
8 YASMINE CHERFAOUI AND MUSTAPHA MOULAÏ
Then two sets Hl and Hl′ are constructed and the efficient cuts (5) and (6) are
eventually added to the successor nodes of l.
X
xj ≥ 1 (5)
j∈Hl
X
xj ≥ 1 (6)
j∈H′ l
A well-known result, see [8], is that the solution x∗(l) is efficient for M OILP
if and only if (Tx1∗(l) ) has a maximum value of zero. Hence if both of (Tx1∗(l) ) and
(Tx1∗(2) ) x∗(l) have a maximum value of zero then x∗(l) belongs to XC .
The algorithm is summarized as follows:
3.2. Theoretical results. The following theoretical tools show that the algorithm
yields the set of solutions for the program (4) in a finite number of iterations.
end
end
Construct the sets Hl and H′ l ;
if Hl = ∅ or H′ l = ∅ then
Fathom the node l
else
Add the cuts (5) and (6) to the successors of l;
end
else
∗(l)
Choose an index k such as xk is fractional. Then, split the
program (LPl ) into j twok sub programs,
j by
k adding respectively the
∗(l) ∗(l)
constraints xk ≤ xk and xk ≥ xk + 1 to obtain (LPl1 ) and
(LPl2 ) ( l1 ≥ l + 1, l2 > l + 1 and l1 6= l2 );
end
else
Fathom the node l;
end
end
this means that xj = 0 for all j ∈ Hl , and xj ≥ 1 for at least one index
j ∈ Nl \Hl . Using the simplex table in x∗(l) , the following equality is supported
for all criterion i ∈ {1, . . . , r}:
X X X
Zi (x) = ci x = cij xj + cij xj , where cij xj = Zi (x∗(l) ).
j∈Bl j∈Nl j∈Bl
Thus, Zi (x) ≤ Zi (x ) for all criterion i ∈ {1, . . . , r}, with Zi (x) < Zi (x∗(l) )
∗(l)
We conclude that solution x is not efficient for the M OILP program, then
x∈/ XE , which implies x ∈
/ XC . n o
2
P
• x ∈
/ Xl1 by the same way, it implies that x ∈ x ∈ Xl | j∈Nl \Hl
′ x j ≥ 1 .
Therefore, the components of vector x satisfy the inequalities
P
xj < 1,
j∈H′l
P
xj ≥ 1,
j∈Nl \H′l
then it follows that xj = 0 for all j ∈ H′ l , and xj ≥ 1 for at least one index
j ∈ Nl \H′ l . Using the simplex table in x∗(l) , the following equality is satisfied:
P 2 P 2 P 2
d2 x = dj xj + dj xj where dj xj = d2 x∗(l)
j∈Bl j∈Nl j∈Bl
P ¯2 P ¯2
= d2 x∗(l) + dj xj + dj xj
′
j∈Hl j∈Nl \H′l
= d2 x∗(l) + d¯2j xj .
P
j∈Nl \H′l
Thus, d2 x ≤ d2 x∗(l) , with d2 x < d2 x∗(l) and d1 x ≤ d1 x∗(l) since x∗(l) is the
optimum of the present program, then x ∈ / XC .
/ XC in both cases, then x is not an efficient solution of program (P 2 ).
Since x ∈
Proposition 2. Suppose that Hl = ∅ or H′ l = ∅ at the current integer solution
x∗(l) then there is no solution in the remaining domain that is not dominated by
x∗(l) .
Proof.
• Assume Hl = ∅, then ∀i ∈ {1, . . . , r}, ∀j ∈ Nl , we have c̄ij ≤ 0 and ∃i0 ∈
{1, . . . , r} such that c̄ij0 < 0, ∀j ∈ Nl . So, x∗(l) dominates all points x, x 6= x∗(l)
of domain Dl .
• Now assume that Hl′ = ∅, then ∀j ∈ Nl , d¯2j < 0 or d¯2j = 0 and d¯1j < 0, adding
to that d¯1j < 0, ∀j ∈ Nl since it is an optimal solution for (LPl ), x∗(l) becomes
the most preferred solution in the domain Dl .
Theorem 3. The algorithm terminates in a finite number of iterations and the set
XC contains all the solutions of (P 2 ).
Proof. Let D, the set of integer feasible solutions of M OILP problem, be a finite
bounded set contained in X . The cardinality of efficient sets XC and XE is a finite
number. It contains a finite number of integer solutions. So the search tree would
have a finite number of branches. Thus the algorithm terminates in a finite number
of steps.
In order XC to contain all the solutions of (P 2 ), the fathoming rules are used
without loss of any elements in XC . At each step l of the algorithm 1, if an integer
solution x∗(l) is found, the cuts eliminate x∗(l) and all dominated solutions from
search (see proposition 2). So the first fathoming rule is when the set Hl or H′ l is
empty. In this case the current node can be pruned since the rest of the domain
contains only dominated solutions either in terms of the multiobjective program or
in terms of the two preference functions. The second rule is the trivial case when
the reduced domain becomes infeasible, whether it is because of previous cuts or
the branching.
OPTIMIZING OVER EFFICIENT SET 11
4. Illustrative example. Let consider two decision makers with the following
preference functions. We solve the following problem using the proposed branch-
and-cut algorithm as follows:
1
+ 5x2 − 12 x3
max 2 x1
max x3
s.t.
(x1 , x2 , x3 ) ∈ XE
max x1 − 2x2 − x3
x2 − 12 x3
max
max x1 − 8x3
s.t.
1 7
2 x1 − x2 − x3 ≤ 2
1 3
2 x1 + 2 x2 ≤ 8
x2 + 52 x3 ≤ 6
x1 , x2 , x3 ≥ 0 and integers.
B1 x1 x3 x5 RHS
x4 5/6 -1 2/3 53/6
x2 1/3 0 2/3 16/3
x6 1/3 5/2 -2/3 2/3
d¯1 -7/6 -1/2 -10/3 80/3
B2 x3 x5 x7 RHS
5
x4 -1 −1 2 8
x1 0 2 -3 1
5
x6 2 0 -1 1
x2 0 0 1 5
d¯1 - 12 -1 - 27 51
2
d¯2 1 0 0 0
1
c̄ −1 −2 5 −9
c̄2 - 12 0 -2 10
c̄3 -1 -2 3 1
The optimal solution found (1, 5, 0) is integer and so: XC = {(1, 5, 0)}.
From Table 2, H1 = {3} and H′ 1 = {7} and the node 3 is generated.
Node 2: The program (LP2 ) is infeasible.
Node 3: After adding the cuts x3 ≥ 1 and x7 ≥ 1 to Table 2 and solving the
problem, it gives Table 3:
B3 x5 x6 x9 RHS
5 21 21
x4 1 2 4 5
15 11
x1 2 -3 2 2
x3 0 0 -1 1
5 7
x2 0 1 2 2
x7 0 -1 - 25 3
2
x8 0 -1 - 25 1
2
d¯1 -1 - 72 - 37
4
79
4
solution ( 11 7
11
The optimal 2 , 2 , 1) is not integer so the constraints x1 ≤ 2 and
x1 ≥ 11
2 + 1 are added respectively to Table 3 and the nodes 4 and 5 are
generated.
Node 4: Solving the problem gives Table 4:
OPTIMIZING OVER EFFICIENT SET 13
B4 x6 x9 x10 RHS
3
x4 1 2 - 12 11
2
5 7
x2 1 2 0 2
x3 0 -1 0 1
x1 0 0 1 5
x5 - 32 - 15
4 - 12 1
4
x7 -1 - 52 0 3
2
x8 -1 - 52 0 1
2
d¯1 -5 -13 - 21 39
2
Table 5.
B5 x5 x9 x10 RHS
2 5 29
x4 3 -1 6 6
x1 0 0 -1 6
x3 0 -1 0 1
2 1 10
x2 3 0 3 3
2
x7 −3 0 − 31 5
3
x8 − 23 0 − 31 2
3
x6 − 23 5
2 − 31 1
6
d¯1 − 10
3 − 12 7
6
115
6
10
10
10 solution (6, 3 , 1) is not integer so the constraints x2 ≤ 3
The optimal
and x2 ≥ 3 + 1 are added respectively to Table 5 to generate node 8 and
9.
Node 6: Adding the constraint x2 ≤ 27 to Table 4 produces Table 6.
14 YASMINE CHERFAOUI AND MUSTAPHA MOULAÏ
The optimal solution found (5, 3, 1) is integer but not efficient since the
1
solution of (T(5,3,1) ) gives a nonzero at optimality, H6 = {11} and H′ 6 = {9}
and the node 10 is generated.
Node 7: Solving the problem generated after adding the constraint x2 ≥ 27 +1
B8 x5 x9 x11 RHS
5
x4 -1 -1 2 4
x2 0 0 1 3
x3 0 -1 0 1
x1 2 0 -3 7
5 1
x6 0 2 -1 2
x7 0 0 -1 2
x8 0 0 -1 1
x10 2 0 -3 1
d¯1 -1 − 12 − 27 18
d¯2 0 1 0 1
c̄1 -2 -1 5 0
c̄2 0 − 21 -2 11
2
c̄3 -2 -1 3 6
OPTIMIZING OVER EFFICIENT SET 15
the optimal solution found (7, 3, 1) is not efficient, the node 11 is generated
with H8 = {11} and H′ 8 = {9}.
Node 9: The problem became infeasible after adding the constraint x2 ≥ 10
3 +
1 to Table 5, the node is fathomed.
Node 10: solving the problem gives Table 8.
entries of the matrices A and C were randomly drawn from discrete uniform distri-
butions in the ranges [50, 100], [1, 30] and [-10, 10], respectively. The vectors d1 and
d2 are generated in the same way as C. To avoid infeasibility, all the constraints of
each problem are of the ≤ type. Furthermore, since all coefficients of A are positive,
a bounded feasible region is assured.
The problems were grouped according to the number of variables, constraints and
objective functions into six categories. In each category the number of objective
functions r changes from 3 to 8. For each category of problems, 50 instances were
solved.
The computational results obtained are summarized in Table 10 . The statistics
about the CP U time (in seconds) are reported. The two last columns µ and ρ refer
to the average of |XE | and the average of |X C|
|XE | , respectively. The elements and the
cardinality of XE are calculated using the algorithm presented in [5].
From the computational experiments shown in Table 10 , it appears that ρ does
not exceed a maximum of 0.17 and has a decreasing trend compared to the size
of the problem. These random experiments illustrate the usefulness of calculating
XC since the cardinality of XC is much smaller than that of XE which explains the
reasonability of the execution times.
40× 40 134.57 32.89 309.45 125.80 0.04 40× 40 95.88 10.08 196.04 208.00 0.04 40× 40 144.99 9.14 331.40 287.9 0.03
40×50 157.73 34.56 433.92 125.20 0.03 40×50 171.28 67.02 255.41 209.01 0.04 40× 50 149.37 52.53 317.58 287.0 0.02
50×50 202.20 68.99 479.77 154.78 0.03 50×50 165.06 19.80 412.60 256.20 0.02 50×50 161.94 7.88 531.84 357.3 0.02
50×60 203.40 95.00 479.77 259.40 0.03 50×60 164.41 107.78 258.46 617.69 0.08 50×60 704.35 67.92 403.40 1284.2 0.01
4 10× 10 1.41 0.49 3.68 48.28 0.17 6 10× 10 3.03 0.39 10.94 67.00 0.10 8 10× 10 0.18 0.03 0.37 87.73 0.08
10× 20 9.83 7.18 3.50 45.64 0.12 10× 20 39.78 15.78 94.01 66.44 0.09 10× 20 16.47 0.71 60.18 87.62 0.08
20× 20 15.39 4.03 46.96 85.20 0.08 20× 20 66.32 5.17 282.71 126.79 0.05 20× 20 7.39 1.20 20.18 169.99 0.06
20×30 21.08 5.37 57.29 87.10 0.03 20×30 189.16 53.06 661.83 127.35 0.06 20×30 32.92 6.88 154.09 168.85 0.05
30×30 31.14 6.58 48.91 124.10 0.04 30×30 92.32 4.17 309.10 188.67 0.05 30×30 62.25 7.17 128.51 248.21 0.03
30× 40 96.71 54.71 144.21 125.16 0.04 30× 40 111.68 25.49 983.48 186.58 0.03 30× 40 272.71 47.81 607.82 247.61 0.03
40× 40 142.48 12.80 441.43 168.86 0.03 40× 40 142.95 12.83 474.68 247.54 0.03 40× 40 106.78 6.81 442.09 329.28 0.03
40×50 165.12 10.11 597.38 165.95 0.03 40×50 228.75 15.01 568.25 201.23 0.03 40× 50 103.12 18.53 291.50 328.67 0.02
50×50 193.56 67.92 403.40 206.61 0.03 50×50 193.56 67.92 403.40 206.11 0.03 50× 50 93.66 0.76 307.25 408.84 0.02
50×60 310.21 151.512 447.21 360.00 0.05 50×60 204.42 207.59 526.59 927.27 0.11 50×60 292.14 196.96 398.75 1694.28 0.16
60×60 258.812 118.114 381.22 430.88 0.04 60×60 1518.78 264.65 304.18 1105.81 0.09 60×60 452.22 71.77 1374.76 2022.22 0.13
60×70 335.81 81.21 830.13 430.64 0.04 60×70 186.89 670.78 459.89 1106.03 0.09 60×70 1550.77 216.31 3051.36 2023.82 0.13
70×70 1698.84 795.42 2628.38 499.34 0.03 70×70 183.2.91 224.67 282.67 1285.22 0.08 70×70 496.24 216.91 738.42 2353.24 0.11
70×80 1996.99 454.60 3772.34 500.41 0.04 70×80 188.4.94 885.67 253.62 1288.00 0.08 70×80 604.30 82.03 1948.63 2354.61 0.11
80×80 2330.11 1715.02 4898.02 571.23 0.04 80×80 207.8.10 318.45 431.18 1465.65 0.07 80×80 578.00 88.23 1782.96 2684.21 0.10
80×90 2962.14 2004.15 4760.58 572.24 0.04 80×90 1686.84 721.54 289.13 1466.03 0.07 80×90 2414.12 304.49 6129.03 2685.44 0.10
90×90 3424.17 365.19 7258.68 639.00 0.02 90×90 1312.65 332.48 2872.48 1643.52 0.06 90×90 1148.57 373.37 2236.29 3011.05 0.08
90×100 2560.14 768.07 4888.01 641.27 0.03 90×100 2162.81 1172.07 3149.72 1647.83 0.06 90×100 1408.70 693.38 2801.51 3016.63 0.09
100×100 4334.21 652.04 12073.88 711.49 0.03 100×100 1574.78 195.28 2751.47 1824.42 0.05 100×100 1748.84 347.71 3221.59 3346.69 0.08
17
18 YASMINE CHERFAOUI AND MUSTAPHA MOULAÏ
(0, 16
3 , 0) 0 XC = ∅
x2 ≤ 5 x2 ≥ 6
(1, 5, 0) 1 XC = XC ∪ {(1, 5, 0)} 2
Inf easible
x3 ≥ 1, x7 ≥ 1
( 11 7
2 , 2 , 1) 3
x1 ≤ 5 x1 ≥ 6
(5, 72 , 1) 4 (6, 10
3 , 1) 5
x2 ≤ 3 x2 ≥ 4 x2 ≤ 3 x2 ≥ 4
(5, 3, 1) 6 7 (7, 3, 1) 8 9
Inf easible Inf easible
x9 ≥ 1, x11 ≥ 1 x11 ≥ 1, x9 ≥ 1
12 13
inf easible Inf easible
all the efficient set so it requires less computationally effort than solving a M OILP
problem.
The proposed solution method is a branch-and-cut algorithm using efficient cuts
that reduce the search domain of the MOILP problem iteratively. Moreover, this
algorithm can directly be extended to multiple decision makers by including the
associated preferences in the efficient cut.
For future works, we are intended to include the nonlinear form in the multi-
objective model and to study this problem with nonlinear preference functions of
decision makers.
REFERENCES
[1] M. Abbas and D. Chaabane, Optimizing a linear function over an integer efficient set, Euro-
pean J. Oper. Res., 174 (2006), 1140–1161.
[2] P. Belotti, B. Soylu and M. Wiecek, Fathoming rules for biobjective mixed integer linear
programs: Review and extensions, Discrete Optim., 22 (2016), 341–363.
OPTIMIZING OVER EFFICIENT SET 19
[3] N. Boland, H. Charkhgard, and M. Savelsbergh, A new method for optimizing a linear function
over the efficient set of a multiobjective integer program, European J. Oper. Res., 260 (2017),
904–919.
[4] H. P. Benson, Optimization over the efficient set, J. Math. Anal. Appl., 98 (1984), 562–580.
[5] M. E-A Chergui and M. Moulaı̈, An exact method for a discrete multiobjective linear fractional
optimization, J. Appl. Math. Decis. Sci., (2008), 12pp.
[6] W. Drici, F-Z Ouaı̈l and M. Moulaı̈, Optimizing a linear fractional function over the integer
efficient set, Ann. Oper. Res., 267 (2018), 135–151.
[7] J. G. Ecker, N. S. Hegner and I. A. Kouada, Generating all maximal efficient faces for multiple
objective linear programs, J. Optim. Theory Appl., 30 (1980), 353–381.
[8] J. G. Ecker and I. A. Kouada, Finding all efficient extreme points for multiple objective linear
programs, Math. Programming, 14 (1978), 249–261.
[9] J. G. Ecker and J. H. Song, Optimizing a linear function over an efficient set, J. Optim.
Theory Appl., 83 (1994), 541–563.
[10] J. P. Evans and R. E. Steuer, A revised simplex method for linear multiple objective programs,
Math. Programming, 5 (1973), 54–72.
[11] J. M. Jorge, An algorithm for optimizing a linear function over an integer efficient set, Euro-
pean J. Oper. Res., 195 (2009), 98–103.
[12] F-Z Ouaı̈l, M. E-A. Chergui and M. Moulaı̈, An exact method for optimizing a linear function
over an integer efficient set, WSEAS Transactions on Circuits and Systems, 16(3) (2017),
141–148.
[13] Y. Yamamoto, Optimization over the efficient set: Overview, J. Global Optim., 22 (2002),
285–317.
Received May 2018; 1st revision December 2018; 2nd revision April 2019.
E-mail address: [email protected]
E-mail address: [email protected]