Anda di halaman 1dari 8

Discrete Applied Mathematics 161 (2013) 2764–2771

Contents lists available at ScienceDirect

Discrete Applied Mathematics


journal homepage: www.elsevier.com/locate/dam

Note

Inverse multi-objective combinatorial optimization


Julien Roland a,∗ , Yves De Smet a , José Rui Figueira b,1
a
CoDE-SMG, Service de Mathématiques de la Gestion, Ecole polytechnique de Bruxelles, Université libre de Bruxelles, 50, Av. F.
Roosevelt, CP 210/01, B-1050 Brussels, Belgium
b
CEG-IST, Instituto Superior Técnico, Technical University of Lisbon, Av. Rovisco Pais, 1049-001 Lisboa, Portugal

article info abstract


Article history: Inverse multi-objective combinatorial optimization consists of finding a minimal adjust-
Received 20 December 2010 ment of the objective functions coefficients such that a given set of feasible solutions be-
Received in revised form 24 April 2013 comes efficient. An algorithm is proposed for rendering a given feasible solution into an
Accepted 30 April 2013
efficient one. This is a simplified version of the inverse problem when the cardinality of
Available online 24 May 2013
the set is equal to one. The adjustment is measured by the Chebyshev distance. It is shown
how to build an optimal adjustment in linear time based on this distance, and why it is
Keywords:
Multi-objective optimization
right to perform a binary search for determining the optimal distance. These results led us
Inverse optimization to develop an approach based on the resolution of mixed-integer linear programs. A second
Combinatorial optimization approach based on a branch-and-bound is proposed to handle any distance function that
can be linearized. Finally, the initial inverse problem is solved by a cutting plane algorithm.
© 2013 Elsevier B.V. All rights reserved.

1. Introduction

An inverse optimization problem can be described as follows: ‘‘Given an optimization problem and a feasible solution
to it, the corresponding inverse optimization problem consists of finding a minimal adjustment of the profit vector such
that the given solution becomes optimum’’ [8]. In the literature, this adjustment of the profit vector is generally performed
under the L1 , the L2 , or the L∞ norm. Inverse optimization is a very recent mathematical programming model with strong
developments, and of a crucial importance in geophysical sciences, transportation and traffic flow, among others [see for
example [18,3,16,1]].
In real-world applications, it is common to face decision making problems that are by their very nature multidimensional.
This is a prominent feature in situations modeled as knapsack problems, such as in capital budgeting [2,14], planning
remediation of contaminated lightstation sites [11], selecting transportation investments [19], and relocating problems
arising in conservation biology [12]. In capital budgeting one could maximize the net present value of the selected projects
and simultaneously minimize their risk. To our best knowledge, this aspect has not been taken into account in inverse
optimization.
In this paper, our aim is to go a step further extending inverse optimization to multi-objective optimization problems.
This extension has been mentioned in Ahuja and Orlin [1], but not covered yet. Multi-objective optimization consists of
finding solutions that simultaneously ‘‘maximize’’ several objective functions over a set of feasible solutions. Since there is
generally no ideal solution that is the best one for all the objective functions, the resolution of such a model usually leads
to find all the so-called efficient solutions. They are such that there exists no other solution that is at least as good for every
objective function and strictly better for one or more objective function(s).

∗ Corresponding author. Tel.: +32 2 650 58 85; fax: +32 2 650 59 70.
E-mail addresses: juroland@ulb.ac.be, julien.roland@ulb.ac.be (J. Roland), yves.de.smet@ulb.ac.be (Y. De Smet), figueira@ist.utl.pt (J. Rui Figueira).
1 Also Associate Researcher at LORIA Laboratory, Nancy, France.

0166-218X/$ – see front matter © 2013 Elsevier B.V. All rights reserved.
http://dx.doi.org/10.1016/j.dam.2013.04.024
J. Roland et al. / Discrete Applied Mathematics 161 (2013) 2764–2771 2765

Unlike single-objective optimization, multi-objective optimization leads to a set of non-dominated solutions instead of a
single optimal solution. Therefore, the definition of inverse multi-objective optimization should take into account modifica-
tions over the whole non-dominated set. Hence, the inverse problem is defined as the minimal adjustment of the objective
functions coefficients inducing a change in the efficient set. That is to say, the addition or removal of solutions. Many ques-
tions could be raised from this definition. This paper addresses the following one. What is the minimal adjustment of the
objective functions coefficients such that each solution, belonging to a given subset of the feasible set, becomes efficient?
This question has potential theoretical, and practical implications. It leads to a way for measuring the distance to
efficiency for a feasible solution. This distance is equal to zero if and only if the solution is efficient, and increases with how
much the coefficients have to be modified so that the solution becomes efficient. An illustration of inverse optimization in
the field of multi-objective optimization drawn from portfolio analysis can be stated as follows. Portfolios are generally built
by searching the ones that minimize risk and simultaneously maximize return, dividends, liquidity, etc. Given a portfolio,
it is nevertheless difficult to evaluate its performances on this set of objectives. In such a kind of problems it is common
to model the expected return by the average daily return. However, when looking at the period to observe, there is no
consensus among researchers and practitioners. It might be calculated over the last week, the last month, etc. One could
start to build a general model in order to identify efficient solutions. An observed portfolio might be dominated in this model
because investors perceive or evaluate parameters in a slightly different way. However, a natural constraint is to impose the
efficiency of observed portfolios. Therefore, one could focus on the minimal adjustment of the initial model parameters
in order to satisfy this constraint. In a first attempt for solving this problem, one could assume that all the objectives and
constraints are linear. Within these assumptions, the model leads to an instance of the inverse multi-objective knapsack
problem. Given an instance of the knapsack problem and a set of feasible solutions, the question is how to modify the profits
as little as possible such that those solutions become efficient.
The purpose of this paper is to solve the inverse multi-objective combinatorial optimization problem under the L∞ , and
the L1 norm. In single-objective optimization, several approaches have been suggested for dealing with such problems when
the adjustment is measured under the L1 norm (e.g., the inverse integer linear programming problem by Huang [10], Schae-
fer [15], Wang [20], the inverse {0,1}-knapsack problem by Huang [10], and combinatorial optimization problems by Yang
and Zhang [22]). However, these approaches are either computationally expensive, or fail in the search of inverse solutions.
The method proposed by Huang [10] is based on the reduction from the knapsack problem to the shortest path problem.
From this reduction the author proposed to solve the inverse {0,1}-knapsack problem as the inverse shortest path problem.
However, his conclusion is not valid since the network associated with the knapsack problem is a very particular one and
therefore any modification on the weights should be applied with caution. In other words, the inverse {0,1}-knapsack prob-
lem can be solved as the inverse shortest path problem only with additional constraints, which was not the case in the work
by Huang [10]. Concerning the methods used by Wang [20] and Yang and Zhang [22], which are based on the cutting plane
algorithm and the column generation method, as explained in their respective papers, those methods only guarantee to con-
verge in a finite number of steps. In this paper, two algorithms based on cutting plane and branch-and-bound methods are
presented. When considering the L∞ norm one could also apply cutting plane algorithms or a column generation method but
with the same drawback. A procedure based on the Newton’s method has been considered by Zhang and Liu [23], however
it requires to solve a particular problem belonging to the NP-Hard complexity class. One could also take advantage of the
polynomial equivalence observed by Ahuja and Orlin [1], however, as explained in their paper it cannot be used in practice,
because it relies on the use of the ellipsoid algorithm.
This paper is summarized as follows. A simplified version of the question addressed in this paper is first studied. It
consists of finding a minimal adjustment of the objective functions coefficients so that a given feasible solution becomes
efficient. The adjustment is measured by the L∞ distance. Some theoretical results are provided and an algorithm is proposed.
This algorithm performs a particular search on the set of profit matrices in order to find the minimal adjustment, which
transforms a given feasible solution into an efficient one. To achieve this purpose, the algorithm makes use of a mixed-
integer program in order to test the efficiency of the feasible solution (for the given profit matrix). Other methods to test the
efficiency are discussed. A second algorithm based on branch-and-bound is also presented. The purpose of this approach
is to be able to handle any distance function that can be linearized. Finally, the inverse problem is solved by applying a
branch-and-cut approach.
This paper is organized as follows. In Section 2, concepts, definitions, and notation are introduced. In Section 3, an
algorithm is proposed to solve a simplified version of the problem. In Section 4, a branch-and-bound approach is proposed
to handle distance functions that can be linearized. In Section 5, the general problem is solved by a procedure based on
cutting plane algorithms. We conclude with remarks and avenues for future research.

2. Concepts, definitions, and notation

This section addresses several concepts, their definitions, and the basic notation used in the remaining sections of this
paper.
Let Rn = {(x1 , x2 , . . . , xj , . . . , xn ) : xj ∈ R for j = 1, 2, . . . , n} denote the set of real-valued vectors of length n > 1 and
N = {0, 1, 2, . . .} the set of non-negative integers. A vector x ∈ Rn is a matrix composed of 1 column and n rows, and the
transpose of x, denoted by xT , is a matrix composed of n columns and 1 row. The canonical basis of Rn is denoted by the n
vectors ej with j = 1, 2, . . . , n.
2766 J. Roland et al. / Discrete Applied Mathematics 161 (2013) 2764–2771

Let x, y ∈ Rn be two vectors. The following notation will be used hereafter: x < y iff ∀j ∈ {1, 2, . . . , n} : xj < yj ; x 5 y
iff ∀j ∈ {1, 2, . . . , n} : xj 6 yj ; x ̸= y iff ∃j ∈ {1, 2, . . . , n} : xj ̸= yj ; x ≤ y iff x 5 y and x ̸= y. The binary relations =, ≥, and
> are defined in a similar way.
Let V , W ⊆ Rn denote two sets of vectors. Then, the set addition of V and W (denoted by V ⊕ W ) can be stated as follows,
V ⊕ W = {x ∈ Rn : x = x1 + x2 , x1 ∈ V , x2 ∈ W }. For the sake of simplicity x ⊕ W is used instead of {x} ⊕ W .
A subset S ⊆ Rn is a cone if and only if x1 , x2 ∈ S implies that λ1 x1 + λ2 x2 ∈ S, for all λ1 > 0 and λ2 > 0 [13]. Finally, let
us define the following two cones:
 n
 
Rn= = x ∈ Rn : x = ei αi , αi > 0, i = 1, . . . , n ,
i =1
 n
 
Rn5 = x ∈ Rn : x = ei αi , αi 6 0, i = 1, . . . , n .
i =1

Multi-objective optimization (MOO) consists of maximizing ‘‘simultaneously’’ several objective functions over a set of
feasible solutions (see, for example, Steuer [17], Ehrgott and Gandibleux [6] or Ehrgott [5], for a complete review on this
field). The feasible set is denoted by X ⊆ Rn . The outcome of each feasible solution x ∈ X is denoted by a vector F (x) =
(f 1 (x), f 2 (x), . . . , f i (x), . . . , f q (x)) composed of the outcomes of q objective functions f i : X → R, with i ∈ I =
{1, 2, . . . , q}.
‘‘ max ’’ F (x) = {f 1 (x), f 2 (x), . . . , f i (x), . . . , f q (x)}
(MOO)
subject to: x ∈ X.
A particular class of Multi-Objective Combinatorial Optimization problems (MOCO) is considered. Each instance is
defined by a pair (X , C ) where X ⊆ {x : x ∈ {0, 1}n } is the feasible set and C ∈ Nq×n is the so-called profit matrix (composed
of non-negative integers). Each objective function f i : X → N, with i ∈ I, is defined by a row of the profit matrix with
f i (x) = , where J = {1, 2, . . . , n}.

j∈J Cij xj
In multi-objective optimization two spaces should be distinguished. The decision space, i.e., the space in which the feasible
solutions are defined, and the objective space, i.e., the space in which the outcome vectors are defined. The image of the
feasible set in the objective space is denoted by Y = {y ∈ Rq : y = Cx, x ∈ X }.
q
An outcome vector y∗ ∈ Y is said to be ideal if and only if Y ⊆ {y∗ ⊕ R5 }. In the definition of MOO, the maximization
operator is between quotation marks, because there is not necessarily an ideal outcome vector and there is no unique total
order on Rq , as soon as q > 2. Consequently, it is widely accepted to build the dominance relation on the set Y of the outcome
q
vectors. Let y, y′ ∈ Y denote two outcome vectors such that y ̸= y′ . If y′ ∈ {y ⊕ R5 }, then y dominates y′ . The Dominance
relation is a binary relation that is irreflexive, asymmetric, and transitive. This relation induces a partition of Y into two
subsets: the set of dominated outcome vectors and the set of non-dominated outcome vectors. An outcome vector y∗ ∈ Y is
q
non-dominated if there is no y ∈ Y such that y dominates y∗ . Let y ∈ Y be an outcome vector. If {y ⊕ R= } ∩ Y = {y}, then
y is non-dominated. Conversely, in the decision space the concepts of efficient and non-efficient solutions can be defined. A
solution x∗ ∈ X is efficient if and only if there is no x ∈ X such that Cx ≥ Cx∗ . The set of efficient solutions corresponding to
an instance (X , C ) is denoted by E (X , C ).
Inverse Multi-Objective Combinatorial Optimization (IMOCO) consists of finding a minimal adjustment of the profit
matrix C so that X 0 ⊆ X becomes a set of efficient solutions. In other words, it consists of finding a profit matrix D∗ ∈ Nq×n
such that the distance between C and D∗ is minimized, and X 0 ⊆ E (D∗ , X ). IMOCO can be stated as follows.

D∗ ∈ arg min δ(C , D)


subject to: X 0 ⊆ E (D, X ) (IMOCO)
D ∈ N q×n ,

where δ : Rq×n × Rq×n → R+ denotes a distance function between two profit matrices. It is easy to see that δ(C , D∗ ) is
equal to zero if and only if X 0 ⊆ E (C , X ).
A simplified version of IMOCO, denoted by IMOCO-α , is obtained by fixing X 0 = {x0 }. It consists of finding a minimal
adjustment of the profit matrix C such that x0 is an efficient solution:

Dα ∈ arg min δ(C , D)


subject to: x0 ∈ E (D, X ) (IMOCO-α)
D ∈ Nq×n .
The distance between matrices C and D can be measured by the norm of C − D (see, for example, Deza and Deza [4], or
Horn and Johnson [9]). Let |·| denote a vector norm, and ∥·∥ a matrix norm.  If C − D is treated as a vector of size qn, then vector
norms such as the Lp norm can be used. For instance |C − D|1 = i∈I j∈J |Cij − Dij |, and |C − D|∞ = maxi∈I ,j∈J |Cij − Dij |.

Otherwise, one may consider matrix norms such as the maximum column sum ∥ C − D ∥ 1 = max j∈J i∈I |Cij − Dij |, or the
δ( , )

maximum row sum ∥C − D∥∞ = maxi∈I j∈J | Cij − D ij | . In what follows, it is assumed that C D is a linearizable function
like the norms presented in this paragraph.
J. Roland et al. / Discrete Applied Mathematics 161 (2013) 2764–2771 2767

3. A binary search algorithm for IMOCO-α under L∞

The question addressed in this section is how to determine a minimal adjustment of the profit matrix, measured by the
Chebyshev norm, such that a given feasible solution becomes efficient. Let us start by defining a linear integer program to
check whether x0 ∈ X is an efficient solution of (X , D).

max Dij xj
i∈I j∈J
(1)
subject to: Dx = Dx0
x ∈ X.
Wendell and Lee [21] have shown that, if x∗ is an optimal solution to Problem (1), then x0 ∈ E (D, X ) if and only if Dx0 = Dx∗ .
The inverse problem IMOCO-α , with respect to the Chebyshev norm, can be stated as follows:
D∗ ∈ arg min |C − D|∞
subject to: Dx0 = Dx∗
D ∈ N q×n
(IMOCO-α)

x∗ ∈ arg max Dij xj
i∈I j∈J
subject to: Dx = Dx0
x∈X
IMOCO-α is a bilevel optimization problem were we seek for a profit matrix D∗ ∈ Nq×n , which minimizes the L∞ distance
with respect to C and such that x0 is an efficient solution of the modified optimization problem (X , D∗ ).
Let us analyze the nature of some optimal solutions of IMOCO-α . Based on a partition of J defined by J 0 = {j ∈ J : x0j = 0}
and J 1 = {j ∈ J : x0j = 1}, the first theorem establishes that an optimal solution D∗ can be built by increasing, or keeping
equal, Cij , for all j ∈ J 1 and by decreasing, or keeping equal, Cij , for all j ∈ J 0 , for i ∈ I.

Theorem 3.1. There exists an optimal solution D∗ ∈ Nq×n of IMOCO-α such that ∀j ∈ J 1 : D∗ij > Cij and ∀j ∈ J 0 : D∗ij 6 Cij , with
i ∈ I.
Proof. Let D ∈ Nq×n denote any optimal solution of IMOCO-α . Define the following sets for all i ∈ I : Ji0> = {j ∈ J 0 : Dij >
Cij }, Ji1< = {j ∈ J 1 : Dij < Cij }. Consider a solution D∗ of IMOCO-α defined as follows, for all i ∈ I:

Cij , if j ∈ {Ji1< ∪ Ji0> }




Dij = (2)
Dij , otherwise.

Let us show that for all x ∈ X , if Dx0 ≥ Dx, then D∗ x0 ≥ D∗ x. This is equivalent to showing that the following condition
holds: if D(x0 − x) ≥ 0, then D∗ (x0 − x) ≥ 0. The profit matrix D∗ is introduced in the first inequality as follows,
(D − D∗ + D∗ )(x0 − x) ≥ 0, which leads to write: D∗ (x0 − x) ≥ (D∗ − D)(x0 − x). From Eq. (2) and the definition of
J 1 , one may deduce that, for all j ∈ J 1 , (x0 − x)j > 0 and (D∗ij − Dij ) > 0. Similarly, for all j ∈ J 0 , (x0 − x)j 6 0 and
(D∗ij − Dij ) 6 0. Therefore, (D∗ − D)(x0 − x) = 0, and consequently D∗ (x0 − x) ≥ 0. 
k q×n
Let us define a matrix D ∈ N of distance at most k from matrix C with respect to the L∞ norm.

Definition 3.2 (Dk ). Let k > 0 be a natural number. Then, Dk is a matrix of size q × n, where for all i ∈ I, and j ∈ J,

max{0, Cij − k}, if x0j = 0,



Dkij =
Cij + k, otherwise.

Theorem 3.3. If D∗ is an optimal solution of IMOCO-α , with |C − D|∞ = k, then Dk is also an optimal solution of IMOCO-α .
Proof. Let D∗ denote an optimal solution of IMOCO-α with |C − D|∞ = k. Let us show that for all x ∈ X , if D∗ x0 ≥ Dx,
then Dk x0 ≥ Dk x. Similarly to the proof of Theorem 3.1, this is equivalent to show that the following condition holds: if
D∗ (x0 − x) ≥ 0, then Dk (x0 − x) ≥ 0. This leads to write: Dk (x0 − x) ≥ (Dk − D∗ )(x0 − x). From Definition 3.2 and the
definition of J 0 , one may deduce that, for all j ∈ J 0 , (x0 − x)j 6 0 and (Dkij − D∗ij ) 6 0. Similarly, for all j ∈ J 1 , (x0 − x)j > 0
and (Dkij − D∗ij ) > 0. Therefore, (Dk − D∗ )(x0 − x) = 0, and consequently Dk (x0 − x) ≥ 0. 

Lemma 3.4. If δ∞ ∈ N is the optimal solution value of IMOCO-α , then δ∞ 6 ∆ = maxi∈I ,j∈J 0 {Cij }.

Proof. It is always possible to build a matrix D ∈ Nq×n with |C − D|∞ = maxi∈I ,j∈J 0 {Cij } such that Dx0 is a non-dominated
solution of (X , D). The matrix is defined as follows, ∀i ∈ I , ∀j ∈ J 1 : Dij = Cij and ∀i ∈ I , ∀j ∈ J 0 : Dij = 0. It is easy to see
that for all x ∈ X , one obtains Dx0 = Dx and |C − D|∞ = maxi∈I ,j∈J 0 {Cij }. This concludes the proof. 
2768 J. Roland et al. / Discrete Applied Mathematics 161 (2013) 2764–2771

Lemma 3.5. If Dk x0 is a non-dominated vector for (Dk , X ), then Dk+1 x0 is a non-dominated vector for (Dk+1 , X ).
Proof. Assume that there exists a solution x ∈ X such that Dk+1 x dominates Dk+1 x0 . Therefore, Dk+1 (x − x0 ) ≥ 0.
The profit matrix Dk is introduced in the inequality as follows, (Dk+1 + Dk − Dk )(x − x0 ) ≥ 0, which leads to write:
Dk (x − x0 ) ≥ (Dk − Dk+1 )(x − x0 ). From Definition 3.2 and the definition of J 1 , one may deduce that, for all j ∈ J 1 , (x − x0 )j 6 0
and (Dkij − Dijk+1 ) 6 0. Similarly, for all j ∈ J 0 , (x − x0 )j > 0 and (Dkij − Dkij+1 ) > 0. Therefore, (Dk − Dk+1 )(x − x0 ) = 0,
and consequently Dk (x − x0 ) ≥ 0. Therefore, Dk x dominates Dk x0 which contradicts the hypothesis, and the lemma is
proved. 
Based on the previous results, an algorithm for computing an optimal solution of IMOCO-α is devised. Thanks to
Theorem 3.3, an optimal solution of IMOCO-α can be built based on the distance between matrices D∗ and C . Since this
distance is bounded from above by ∆ = maxi∈I ,j∈J {(1 − x0j )Cij } (see Lemma 3.4), the algorithm consists of finding the
minimal value k ∈ {1, 2, . . . , ∆} such that Dk x0 is a non-dominated vector of the MOCO instance (X , Dk ). This condition
is naturally checked by solving Problem (1). The minimal value of k can be found by performing a binary search on the set
{1, 2, . . . , ∆} as a consequence of Lemma 3.5. Therefore, Algorithm 1 requires to solve O(log2 ∆) times Problem (1). For
more details on the procedure, see the pseudo-code of Algorithm 1.
The computational complexity of Algorithm 1 could be potentially improved by taking into account the characteristics
of the combinatorial problem. Let us consider the multi-objective knapsack problem as an illustrative example. Erlebach
et al. [7] have shown that a dynamic programming approach solves this problem in O(n(UBmax )q ), where UBmax = max{UB1 ,
UB2 , . . ., UBi , . . . , UBq } and UBi is an upper bound on the optimal solution value of the i-th objective function. Therefore, in
the context of IMOCO-α , the inverse multi-objective knapsack problem can be solved in O(log2 ∆n(UBmax )q ).

Algorithm 1 A binary search algorithm to compute an optimal solution Dα of IMOCO-α , with respect to the Chebyshev norm.
1: a ← 0;
2: b ← ∆;
3: while (a ̸= b) do
4: k ← a + ⌊(b − a)/2⌋;
5: Build matrix Dk ;
6: x∗ ← Solve Problem 1 for(X , Dk );
7: if (Dk x0 = Dk x∗ ) then
8: b ← k;
9: else
10: a ← k + 1;
11: end if
12: end while
13: Dα ← Da ;

4. A branch-and-bound approach to IMOCO-α

A branch-and-bound approach to solve IMOCO-α is introduced in this section. The purpose of this approach is to be able
to solve IMOCO-α for any linearizable distance function. In the tree, each node is a relaxation of the inverse problem. The
initial relaxation is min{δ(C , D) : D ∈ Nq×n }. This relaxation is very poor, because there are no constraints to ensure the
efficiency of x0 . For each node (relaxation), it is easy to check if x0 is an efficient solution by solving Problem (1). Let x∗ be
an optimal solution of this problem. There are (q + 1) possibilities for improving the relaxation, i.e. to ensure that x0 is not
dominated by x∗ . Indeed, Dx0 = Dx∗ , and (Dx0 )i > (Dx∗ )i , with i ∈ I, are (q + 1) sufficient conditions to ensure that Dx0 is
not dominated by Dx∗ .
The branch-and-bound tree is built as follows. The root is P 0 = min{δ(C , D) : D ∈ Nq×n }. Let D0 be an optimal solution
to P 0 . By solving Problem (1), it is easy to check if x0 is an efficient solution for an instance (D0 , X ). Let x∗ be an optimal
solution of this problem. If x0 is a non-efficient solution (D0 x∗ ̸= D0 x0 ), then (q + 1) new child nodes are created. The first
one is P 0 ∪ {Dx0 = Dx∗ }. That is to say, the linear program P 0 where the constraint Dx0 = Dx∗ is added to it. The (1 + i)-th
node is P 0 ∪ {(Dx0 )i > (Dx∗ )i }, with i ∈ I. This process is repeated for each child node.
The optimal solution of each leaf leads to a feasible solution and an upper bound on δ(Dα , C ). Furthermore, the optimal
solution value of a given node is a lower bound for the other nodes in the sub-tree rooted at this node. Let δ ∗ be an upper
bound on δ(Dα , C ). Therefore, if the optimal solution value of a node is greater than δ ∗ , then the sub-tree rooted at that node
is pruned. The procedure is described in Algorithm 2 which explores the tree search in a best-first manner.

5. A cutting-plane approach for IMOCO

A cutting-plane approach for IMOCO is introduced in this section. It requires to establish a relaxation of this problem and
a way to generate cuts. Let us consider each feasible solution x0 ∈ X 0 . Let S (x0 ) = {x1 , x2 , . . . , xk } ⊆ X be a set composed
J. Roland et al. / Discrete Applied Mathematics 161 (2013) 2764–2771 2769

Algorithm 2 Compute an optimal solution Dα of IMOCO-α .


1: UP ← {P 0 };
2: δ ∗ is an upper bound on δ(Dα , C );
3: while UP ̸= ∅ do
4: Select a linear program P from UP with respect to the best-first search;
5: if P is feasible then
6: Let D0 be an optimal solution to P;
7: δ 0 ← δ(D0 , C );
8: if δ 0 < δ ∗ then
9: Let x∗ be an optimal solution to Problem 1 for the instance (D0 , X );
10: if D0 x∗ ̸= D0 x0 then
 
11: UP ← UP ∪ P ∪ {Dx0 = Dx∗ } ;
UP ← UP ∪ P ∪ {(Dx0 )i > (Dx∗ )i } : i ∈ I ;
 
12:
13: else
14: δ∗ ← δ0 ;
15: Dα ← D0 ;
16: end if
17: end if
18: end if
19: end while

of k feasible solutions, and D ∈ Rq×n a profit matrix. For all x ∈ S (x0 ), the outcome vector Dx0 is not dominated by Dx if
and only if, either Dx0 = Dx, or there exists i ∈ I with (Dx0 )i > (Dx)i . It is easy to translate those conditions into a set of
constraints. Consequently, a relaxation of IMOCO can be defined as follows

D0 ∈ arg min δ(C , D)


subject to: D ∈ Rq×n
for all i ∈ I , x0 ∈ X 0 , xl ∈ S (x0 ) :
(Dx0 )i > (Dxl )i − αl (x0 )M
(Dx0 )i > (Dxl )i − βl,i (x0 )M (IMOCO-(S ))
∈ X 0 , xl ∈ S (x0 ) :
for all x0 
αl (x ) +
0
βl,i (x0 ) 6 q
i∈I
αl (x0 ), βl,i (x0 ) ∈ {0, 1}.

Problem IMOCO-(S ) is a relaxation of IMOCO because it requires that each solution x0 ∈ X 0 should be efficient with
respect to a subset of feasible solutions and not to the whole set. The constraint (Dx0 )i > (Dxl )i − βl,i M should be replaced
by (Dx0 )i > (Dxl )i − βl,i M + 1 in order to have a linear program.
The value of M is an upper bound on D∗ij for all i ∈ I , j ∈ J. This bound is obtained by considering a zero profit matrix
D∗,0 ∈ Rq×n defined as follows: D∗,0 is equal to zero for all i ∈ I , j ∈ J. It is easy to see that IMOCO is feasible if and only if
D∗,0 is a feasible solution to it. Based on D∗,0 and the choice of a distance function, it is easy to determine a value for M. For
instance, if δ(C , D) = |C − D|∞ , then M = max{Cij : i ∈ I , j ∈ J }.
Let D0 be an optimal solution to IMOCO-(S ). The condition x0 ∈ E (D0 , X ) can be checked by solving Problem (1). Let x∗
be an optimal solution of this problem. A cut with respect to D0 is generated in Problem IMOCO-(S ) by adding x∗ to S (x0 ).
Sketch of the algorithm. By solving Problem (1), for all x0 ∈ X 0 , it is easy to check if x0 is an efficient solution to an instance
(X , C ). Let x∗ be an optimal solution of this problem. If x0 is not an efficient solution (Cx∗ ̸= Cx0 ), then add x∗ in the set S (x0 ).
If for all x0 ∈ X 0 , S (x0 ) = ∅, then stop. Otherwise, solve Problem IMOCO-(S ). Let D0 be an optimal solution to this problem.
If X 0 is a set of efficient solutions with respect to (D0 , X ), then stop; otherwise, repeat the process. See Algorithm 3 for a
pseudo-code of this procedure.

Theorem 5.1. Algorithm 3 converges to an optimal solution of IMOCO in a finite number of steps.

Proof. Let us consider the end of any iteration t of the while loop. For all x0 ∈ X 0 it is ensured that for all x ∈ S (x0 ), Dt x0 is
not dominated by Dt x, and there exists an x∗ such that Dt x∗ = Dt x0 . If there exists at least an x0 ∈ X 0 such that Dt x∗ ̸= Dt x0 ,
with x∗ ∈ X , then the variable Count is not equal to zero. Therefore, the while loop continues to the next iteration. This
implies that x∗ ̸∈ S (x0 ), otherwise it would contradict the feasibility of Dt to IMOCO-(S ). Therefore, the number of iterations
of the while loop is bounded by the cardinality of the feasible set. At the end of the algorithm, the loop condition ensures
that X 0 ⊆ E (X , Dt ), and IMOCO-(S ) implies that Dt is an optimal solution. 
2770 J. Roland et al. / Discrete Applied Mathematics 161 (2013) 2764–2771

Algorithm 3 Compute an optimal solution D∗ of IMOCO.


1: D0 ← C ;
2: Count ← 0;
3: for all x0 ∈ X 0 do
4: Solve Problem 1 for (D0 , X ) and let x∗ be an optimal solution;
5: if D0 x∗ ̸= D0 x0 then
6: S (x0 ) ← x∗ ;
7: Count ← Count +1;
8: else
9: S (x0 ) ← ∅;
10: end if
11: end for
12: t ← 0;
13: while Count > 0 do
14: t ← t + 1;
15: Let Dt be an optimal solution of IMOCO-(S ) for (Dt −1 , X );
16: Count ← 0;
17: for all x0 ∈ X 0 do
18: Solve Problem 1 for (Dt , X ) and let x∗ be an optimal solution;
19: if Dt x∗ ̸= Dt x0 then
20: S (x0 ) ← S (x0 ) ∪ {x∗ };
21: Count ← Count + 1;
22: end if
23: end for
24: end while
25: D∗ ← Dt ;

6. Conclusion

In this paper, the inverse multi-objective combinatorial optimization has been defined and studied. Two algorithms were
proposed to solve a simplified version of this problem. The first algorithm requires only to solve a logarithmic number of
mixed integer programs containing a linear number of constraints and variables compared to the instance. Moreover, it can
be potentially improved by taking into account the nature of the combinatorial problem. The second algorithm relies on a
branch-and-bound to handle any linearizable distance function. A third algorithm is proposed to solve the general version
of this problem. This approach is based on a cutting plane algorithm.
There are many possible extensions of this work. For instance, the use of other norms, the nature of the adjustment, and
the introduction of some constraints on the adjustment are of obvious interest.

Acknowledgments

José Rui Figueira acknowledges the financial support from LORIA grant entitled ‘‘Multiple Criteria in ROAD’’. We also
would like to thank the anonymous referees for their valuable comments and suggestions.

References

[1] R.K. Ahuja, J.B. Orlin, Inverse optimization, Operations Research 49 (2001) 771–783.
[2] K.A. Bhaskar, Multiple objective approach to capital budgeting, Accounting and Business Research 10 (1979) 25–46.
[3] D. Burton, P.L. Toint, On an instance of the inverse shortest paths problem, Mathematical Programming 53 (1992) 45–61.
[4] M.M. Deza, E. Deza, Encyclopedia of Distances, Springer, Berlin, Germany, 2009.
[5] M. Ehrgott, Multicriteria Optimization, second ed., Springer-Verlag, Berlin, Germany, 2005.
[6] M. Ehrgott, X. Gandibleux, A survey and annotated bibliography of multiobjective combinatorial optimization, OR Spectrum 22 (2000) 425–460.
[7] T. Erlebach, H. Kellerer, U. Pferschy, Approximating multiobjective knapsack problems, Management Science 48 (2002) 1603–1612.
[8] C. Heuberger, Inverse combinatorial optimization: a survey on problems, methods, and results, Journal of Combinatorial Optimization 8 (2004)
329–361.
[9] R.A. Horn, C.R. Johnson, Matrix Analysis, Cambridge University Press, 1990.
[10] S. Huang, Inverse problems of some NP-complete problems, in: Algorithmic Applications in Management, in: Lecture Notes in Computer Science,
vol. 3521, Springer, Berlin, Germany, 2005, pp. 422–426.
[11] L. Jenkins, A bicriteria knapsack program for planning remediation of contaminated lightstation sites, European Journal of Operational Research 140
(2002) 427–433.
[12] M.M. Kostreva, W. Ogryczak, D.W. Tonkyn, Relocation problems arising in conservation biology, Computers and Mathematics with Applications 37
(1999) 135–150.
[13] M. Padberg, Linear Optimization and Extensions, second ed., Springer-Verlag, Berlin, Germany, 1995.
[14] M.J. Rosenblatt, Z. Sinuany-Stern, Generating the discrete efficient frontier to the capital budgeting problem, Operations Research 37 (1989) 384–394.
[15] A.J. Schaefer, Inverse integer programming, Optimization Letters 3 (2009) 483–489.
J. Roland et al. / Discrete Applied Mathematics 161 (2013) 2764–2771 2771

[16] P.T. Sokkalingam, R.K. Ahuja, J.B. Orlin, Solving inverse spanning tree problems through network flow techniques, Operations Research 47 (1999)
291–298.
[17] R.E. Steuer, Multiple Criteria Optimization: Theory, Computation and Application, John Wiley & Sons, Inc, New York, USA, 1986.
[18] A. Tarantola, Inverse Problem Theory: Methods for Data Fitting and Model Parameter Estimation, Elsevier Science Publishers, Amsterdam, The
Netherlands, 1987.
[19] J.Y. Teng, G.H. Tzeng, A multiobjective programming approach for selecting non-independent transportation investment alternatives, Transportation
Research Part B: Methodological 30 (1996) 291–307.
[20] L. Wang, Cutting plane algorithms for the inverse mixed integer linear programming problem, Operations Research Letters 37 (2009) 114–116.
[21] R.E. Wendell, D.N. Lee, Efficiency in multiple objective optimization problems, Mathematical Programming 12 (1977) 406–414.
[22] C. Yang, J. Zhang, Two general methods for inverse optimization problems, Applied Mathematics Letters 12 (1999) 69–72.
[23] J. Zhang, Z. Liu, A general model of some inverse combinatorial optimization problems and its solution method under l∞ norm, Journal of Combinatorial
Optimization 6 (2002) 207–227.

Anda mungkin juga menyukai