Rocktaschel S - A Branch-And-Bound Algorithm For Multiobjective Mixed-Integer Convex Optimization-Springer (2020)
Rocktaschel S - A Branch-And-Bound Algorithm For Multiobjective Mixed-Integer Convex Optimization-Springer (2020)
A Branch-and-
Bound Algorithm
for Multiobjective
Mixed-integer Convex
Optimization
BestMasters
Mit „BestMasters“ zeichnet Springer die besten Masterarbeiten aus, die an renom
mierten Hochschulen in Deutschland, Österreich und der Schweiz entstanden sind.
Die mit Höchstnote ausgezeichneten Arbeiten wurden durch Gutachter zur Veröf
fentlichung empfohlen und behandeln aktuelle Themen aus unterschiedlichen
Fachgebieten der Naturwissenschaften, Psychologie, Technik und Wirtschaftswis
senschaften. Die Reihe wendet sich an Praktiker und Wissenschaftler gleicherma
ßen und soll insbesondere auch Nachwuchswissenschaftlern Orientierung geben.
Springer awards “BestMasters” to the best master’s theses which have been com
pleted at renowned Universities in Germany, Austria, and Switzerland. The studies
received highest marks and were recommended for publication by supervisors.
They address current issues from various fields of research in natural sciences,
psychology, technology, and economics. The series addresses practitioners as well
as scientists and, in particular, offers guidance for early stage researchers.
A Branch-and-Bound
Algorithm for
Multiobjective
Mixed-integer Convex
Optimization
Stefan Rocktäschel
Ilmenau, Germany
This Springer Spektrum imprint is published by the registered company Springer Fachmedien
Wiesbaden GmbH part of Springer Nature.
The registered company address is: Abraham-Lincoln-Str. 46, 65189 Wiesbaden, Germany
This book is dedicated to my family and friends.
Thank you for being there!
Contents
1 Introduction 1
2 Theoretical Basics 5
2.1 Basics of multiobjective optimization . . . . . . . . . . 5
2.2 The central multiobjective mixed-integer optimization
problem . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.3 A relaxation of (MOMICP) . . . . . . . . . . . . . . . 15
4 Enhancing Algorithm 1 41
4.1 Preinitialization . . . . . . . . . . . . . . . . . . . . . . 41
4.2 Elimination step . . . . . . . . . . . . . . . . . . . . . 45
4.3 Decrease box width . . . . . . . . . . . . . . . . . . . . 46
4.4 Enhanced algorithm and theoretical results . . . . . . 47
7 Conclusion 63
Bibliography 65
z 1 ď z 2 :ô z 2 ´ z 1 P Rp`
Note that the partial order ď on Rp is not a total order relation for
p ě 2. Additionally, we use the following notations:
• z 1 ă z 2 :ô z 2 ´ z 1 P intpRp` q,
Definition 2.1. Let the set Z Ď Rp be nonempty and j P t1, ..., pu.
We define the j-projection of Z as
Additionally,
and
Thereby, minpZj q and maxpZj q for j P t1, ..., pu refer to the scalar
minimum and maximum of the set Zj .
Remark 2.4. The above definitions of minpZq and maxpZq are well
defined, because the respective minima and maxima exist due to the
compactness and non emptiness of the set Z and hence, of the projec-
tions.
Furthermore, it is easy to see that tz P Z | z ď z ˚ u “ tz ˚ u holds for
all z ˚ P minpZq. Analogously, tz P Z | z ˚ ď zu “ tz ˚ u holds for all
z ˚ P maxpZq.
Additionally,
1 maxpZq
maxpZq
Z
0 1 z1
minpZq
minpZq
Definition 2.6.
Definition 2.7.
B̃ Z :“ tpx, yq P X̃ ˆ Ỹ | y P Zn u, as well as
B̃ g,Z :“ B̃ g X B̃ Z .
min f px, yq
s.t. gpx, yq ď 0q
(MOMICP)
px, yq P X ˆ Y “ B
y P Zn .
12 2 Theoretical Basics
min f pbq
s.t. b P B g,Z .
with X P IRm , f˜: X Ñ Rnˆp and g̃ : X Ñ Rnˆq , where f˜i,j and g̃i,k
are convex and twice continuously differentiable on an open superset
X of X for all i P t1, ..., nu, j P t1, ..., pu, k P t1, ..., qu.
This is due to the fact that we demand convexity of f and g in As-
sumption 2.9. With Y :“ r0, 1sn , B :“ X ˆ Y , f : B Ñ Rp defined
by f px, yq :“ y J f˜pxq and g : B Ñ Rq defined by gpx, yq :“ y J g̃pxq we
can rewrite pPy q in the form of (MOMICP). However, the functions f
and g are not necessarily convex in this case, even not if f˜ and g̃ are
linear. We illustrate this in Example 2.13.
1
r0, 1s2 and λ “ 2 P r0, 1s we obtain
1 1 1
gpλpx, yq ` p1 ´ λqpx1 , y 1 qq “ gpp´ , p0, 0qJ q ` p , p0, qJ qq
2 2 2
1 J
“ gp0, p0, q q
2
1
“ p0, q ¨ g̃p0q
2
1
“ p0, q ¨ p0, 0qJ “ 0,
2
but
Note that we could also find an example where the objective func-
tions f of pPy q are nonconvex in an analog way.
At least, there are possibilities that allow us to neglect the assumption
of convexity of f for (MOMICP). We will outline one approach for
this in Section 6.
Now, in order to derive a concept of optimality for the central multiob-
jective optimization problem (MOMICP), we introduce the concept
efficiency for multiobjective optimization problems
min f pbq
(MOP)
s.t. b P B,
Definition 2.14.
(iii) The set of efficient points for (MOP) is called the efficient set
of (MOP).
Definition 2.16.
min f pbq
pROPpB̃qq
s.t. b P B̃ g .
• The list LW denotes the working list and contains boxes that still
have to be examined.
• The list LS 1 denotes the solution list and contains boxes that fulfill
the termination criteria.
• The list LN S 1 denotes the non-solution list and contains boxes that
can be discarded according to the discarding test or a necessary
feasibility condition.
• The list LLUB denotes the set of local upper bounds w.r.t. LPN S .
min fi pbq
pROPi pB̃qq
s.t. b P B̃ g
with minimum value ϕi for all i P t1, ..., pu. The ideal point minpf pB̃ g qq
is then given by
minpf pB̃ g qq “ pϕ1 , ..., ϕp qJ .
b 1 j ` b1 j 1
B̃ 1 :“ rb1 , pb1 1 , ..., b1 j´1 , t u, b j`1 , ..., b1 r qs and
2
b1 j ` b1 j 1
B̃ 2 :“ rpb1 1 , ..., b1 j´1 , r s, b j`1 , ..., b1 r q, b1 s,
2
if b1 j ` b1 j is odd and
1 1 b1 j ` b1 j 1
B̃ :“ rb , pb1 1 , ..., b1 j´1 , , b j`1 , ..., b1 r qJ s and
2
2 1 b1 j ` b1 j
1
B̃ :“ rpb 1 , ..., b j´1 , ` 1, b1 j`1 , ..., b1 r qJ , b1 s,
2
if b1 j ` b1 j is even.
• Else, set
b1 j ` b1 j 1
B̃ 1 :“ rb1 , pb1 1 , ..., b1 j´1 , , b j`1 , ..., b1 r qJ s and
2
b1 j ` b 1 j 1
B̃ 2 :“ rpb1 1 , ..., b1 j´1 , , b j`1 , ..., b1 r qJ , b1 s.
2
Note that in the bisection step, we choose the biggest index j P
argmaxtpb1 i ´ b1 i q | i P t1, ..., ruu for bisecting the box. In this way,
we split the box along a longest side and additionally at an integer
variable, if possible. In this case, the points in B̃zpB̃ 1 Y B̃ 2 q will not
be considered further.
Moreover, we assumed y i , y i P Z for all i P t1, ..., nu in Assumption 2.9.
3.2 The bisection step 23
Lemma 3.2. Let Assumption 2.9 be fulfilled and let the subbox B̃ P IRr
of B be derived from bisection steps. Then, it holds
B̃ g,Z Ď B̃ 1 Y B̃ 2 .
Corollary 3.3. Let Assumption 2.9 be fulfilled and let the subbox
B̃ P IRr of B be derived from bisection steps. Then the set of efficient
points for (MOMICP) in B̃ is a subset of B̃ 1 Y B̃ 2 .
following figure. The dotted area illustrates the points that we discard
due to the bisection step.
y
8
ppB 2 q1 q2
7
pB 2 q2
6
ppB 2 q1 q1
5
2 B1
0 1 2 3 4 x
min γ
s.t. gpx, yq ď γ ¨ eq
pFOPpB̃qq
px, yq P B̃
γ P Γ,
and
γ :“ max max gi px, yq.
iPt1,...,qu px,yqPB
ď min gj px, yq
px,yqPB
ď gj px1 , y 1 q (3.1)
ď max gj px, yq
px,yqPB
hold for all px1 , y 1 q P B and all j P t1, ..., qu. Hence, for every
px1 , y 1 q P B exists a γ 1 P Γ with gpx1 , y 1 q ď γ 1 ¨ eq . Therefore, for
every subbox B̃ of B and every px1 , y 1 q P B̃ there is a γ 1 P Γ so
26 3 A basic Branch-and-Bound algorithm for (MOMICP)
(i) It holds
γ ˚ ą 0 ô B̃ g “ H ñ B̃ g,Z “ H.
γ ˚ ą 0 ô B̃ g “ H ô B̃ g,Z “ H.
For the first case, suppose γ ˚ ą 0. Then for all px, yq P B̃ there is
a j P t1, ..., qu with gj px, yq ě γ ˚ ą 0. Else, a contradiction to the
minimality of γ ˚ would occur. Therefore, gpx, yq ď 0q holds for no
px, yq P B̃ and hence, B̃ g “ H.
If, on the other hand, γ ˚ ď 0 holds, then it is px˚ , y ˚ q P B̃ with
gpx˚ , y ˚ q ď γ ˚ ¨ eq ď 0 ¨ eq “ 0q . Hence, px˚ , y ˚ q P B̃ g holds and
B̃ g ‰ H.
For the proof of piiq, assume that Ỹ “ tỹu for some ỹ P Y X Zn . Then
it is easy to see that B̃ g,Z “ B̃ g holds. Using piq we are done.
H λ,ẑ :“ th P Rp | λJ h “ λJ ẑu
min t
s.t. f pbq ď z ` t ¨ ep
pHPOPz pB̃qq
b P B̃ g
tPR
for elements z P Rp .
(i) The optimization problem pHPOPẑ pB̃qq has a solution pb̂, t̂q P
B̃ g ˆ R with Lagrange multiplier λ̂ P Rp for the constraint
f pbq ď ẑ ` t ¨ ep .
λ̂,p̂pẑq ` Rp` q.
Ş
i.e. as the boundary of the polyhedron ẑPZ pH
According to Lemma 3.10, it holds
č
f pB̃ g,Z q Ď f pB̃ g q ` Rp` Ď pH λ̂,p̂pẑq ` Rp` q “ L ` Rp` .
ẑPZ
30 3 A basic Branch-and-Bound algorithm for (MOMICP)
bZ P B̃ Z .
y 1 “ ry 1 s ď rys ď ry 1 s “ y 1 .
solving any of the optimization problems pROPpB̃qi q for i P t1, ..., pu,
pFOPpB̃qq and pHPOPz pB̃qq for some z P Rp and follow these steps.
(i) @z P S Dw P L : z ă w,
(iii) @w1 , w2 P L : w1 ę w2 or w1 “ w2 .
3.5 Determining upper bounds 33
Remark 3.14. Here, we consider the set Ẑ P IRp with f pBq Ď intpẐq
as given. One could determine such a box by using interval arithmetic
[15].
f2
M2 LP N S
LLU B
f1
M1
Lemma 3.15. Let Assumption 2.9 be fulfilled and let L be a local upper
bound set with respect to a finite and stable set of points N Ď f pB g,Z q.
For every z P N and for every j P t1, ..., pu there is a z P L with
z j “ zj and z i ă zi for all i P t1, ..., puztju.
The following theorem will set the basis for the discarding test.
holds, then B̃ does not contain any efficient point for (MOMICP).
Condition (3.2) can be tested by solving pHPOPz pB̃qq for the re-
spective local upper bounds z P LLU B and the box B̃. However,
in order to save some computational time, we do not simply solve
pHPOPz pB̃qq for every z P LLU B . Instead, we use Lemma 3.10 to
determine supporting hyperplanes H λ̂,p̂ of f pB̃ g q ` Rp` after we solved
pHPOPz pB̃qq for any z P LLU B . Before solving pHPOPz 1 pB̃qq for the
next local upper bound z 1 P LLU B , we check whether λ̂J z 1 ě λ̂J p̂ holds
for all determined hyperplanes. This is necessary for z 1 P f pB̃ g q ` Rp`
and only then we have to solve pHPOPz 1 pB̃qq.
We summarize some theoretical results on pHPOPz pB̃qq and how we
use them. Then, we formulate the discarding test in detail. There-
fore, we assume that we have a given accuracy parameter ε ą 0, a
local upper bound z P LLU B and the solution pb˚ , t˚ q P B̃ g ˆ R of
pHPOPz pB̃qq.
LS 1 Y LN S 1 Y BS,
Ť Ť
Proof. At first we observe that it holds B “
where BS is the set of all points that are discarded due to the bisection
step. Then it obviously holds E Ď LS 1 Y LN S 1 Y BS. Corollary
Ť Ť
4.1 Preinitialization
The first idea is to compute some imagepoints of f on B g,Z before
starting the basic algorithm. Using these points, we then initialize
LPN S and LLUB .
Therefore, let imgp P N be a given number. We want to distribute
evenly many points on every possible combination of integer variables
and then create an equidistant grid on the remaining continuous
variables in a way that we obtain about imgp points in B. We then
check for each of these points b P B, if b P B g,Z holds and in this case
Algorithm 4 Preinitialization
INPUT: (MOMICP), imgp P N
OUTPUT: LPN S , LLU B
1: if imgp “ 0 _ m “ 0 then
2: Set LPN S Ð H, LLU B Ð tsuppẐqu.
3: else
xi ´xi 1
Set grd Ð p m
ř śn
4: 1 q ¨ p i“1 py i ´ y i ` 1qq .
m
i“1
m¨imgp m
5: Set Pos Ð 0 ¨ er and FV Ð H.
6: while x`grd¨pPos1 , ..., Posm qJ ď x^y `pPosm`1 , ..., Posr qJ ď
y do
7: Set b Ð px ` grd ¨ pPos1 , ..., Posm qJ , y ` pPosm`1 , ..., Posr qJ q.
8: if b P B g,Z then
9: Set FV Ð FV Y tbu.
10: end if
11: Set Pos1 Ð Pos1 ` 1.
12: for i “ 1, ..., r ´ 1 do
13: if pi ď m ^ xi ` grd ¨ Posi ą xi q _ pi ą m ^ y i´m ` Posi ą
y i´m q then
14: Set Posi Ð 0.
15: Set Posi`1 Ð Posi`1 ` 1.
16: end if
17: end for
18: end while
19: Set LPN S Ð H, LLU B Ð tsuppẐqu.
20: for b P FV do
21: Update LPN S using Algorithm 2 with input b.
22: Update LLU B using Algorithm 3 from [12].
23: end for
24: end if
Remark 4.2. Note that for imgp ą 0 the preinitialization can only
4.1 Preinitialization 43
In line 4, we calculate the grid parameter grd that is used for creating
an equidistant grid on the continuous variables. The idea behind this
formula is to consider roughly imgp points during the preinitialization.
If there were no integer variables and m “ 1, we would simply use
x1 ´x1
imgp as grid parameter, what is also done in Algorithm 4 in that
case. For m ą 1 and n “ 0 we take the mean value of interval lengths
řm xi ´xi 1
i“1 m into consideration and divide this by imgp m in order to
1
obtain roughly imgp m grid points on each Xi for i P t1, ..., mu and
1
hence pimgp m qm “ imgp grid points on X. If we have to consider
additional integer variables in the case n ą 0, we want to distribute
evenly many grid points on every possible y P Y X Zn . There are
śn n
i“1 py i ´ y i ` 1q possible y P Y X Z . Hence, we have to divide
the number of grid points on X by that number in order to still
obtain roughly imgp grid points in total on X ˆ Y . We achieve this
by multiplying the grid parameter from the case n “ 0, which is
44 4 Enhancing Algorithm 1
řm xi ´xi śn 1
, with p i“1 py i ´ y i ` 1qq . By doing that, the amount
1 m
i“1
m¨imgp m
1
imgp m
of grid points we consider on each Xi is now roughly śn 1 .
p m
i“1 py i ´y i `1qq
1
imgp m m “ ś imgp
Hence, we consider about p 1 q n grid
i“1 py i ´y i `1q
śn
p i“1 py i ´y i `1qq m
śn imgp ¨ ni“1 py i ´ y i ` 1q “ imgp
ś
points on X and thus py ´y `1q
grid
i“1 i i
points on X ˆ Y . This leads to the formula for the grid parameter
grd that we use in line 4 of Algorithm 4.
In line 5, we initialize the position vector Pos and the set of obtained
function values FV Ď f pB g,Z q. In line 6, we start going through the
box B using the position vector Pos until we obtain a point that is
not in B anymore. In line 7, we calculate the current point that has
to be considered. In the first iteration, this will be b “ px, yq and from
there on we use the position vector Pos to go through B. In lines
8-10, we check whether the current point b is in B g,Z and add it to
FV in that case. In lines 11-17, we update the position vector Pos to
determine the next point. Finally, in lines 19-23, we use the points
b P FV Ď B g,Z in order to initialize LPN S and LLU B .
3.3, Theorem 3.17 and Corollary 3.6 imply E Ď LS 3 . So, the sets
Ť
name imgp N J K L
0 0 319 280 810
balls1 3000 120 301 246 811
5000 195 276 222 842
0 0 257 215 675
balls2 3000 120 239 190 690
5000 195 239 188 691
0 0 85 78 194
parabolas1 3000 3005 8 9 281
5000 5005 8 9 279
0 0 74 65 157
parabolas2 3000 2100 10 8 228
5000 3500 10 8 228
0 0 45 41 150
parabolas3 3000 2100 6 7 193
5000 3500 6 7 191
0 0 1 2 100
points1 3000 3005 1 2 100
5000 5005 1 2 100
0 0 3 3 22
points2 3000 2 3 3 22
5000 2 3 3 22
0 0 12 5 41
triangles1 3000 150 12 5 41
5000 280 12 5 41
0 0 134 75 1351
triangles2 3000 410 121 73 1351
5000 785 123 74 1352
56 5 Test instances and numerical results
0 0 26 12 233
triangles3 3000 138 24 13 218
5000 262 24 14 219
0 0 27 6 148
triangles4 3000 126 26 5 149
5000 243 26 6 150
0 0 43 16 283
triangles5 3000 126 49 19 276
5000 243 46 18 281
Table 5.2: iteration counts
Figure 1: image set and LPN S of Figure 2: image set and LPN S of
balls1 balls2
Figure 3: image set and LPN S of Figure 4: image set and LPN S of
parabolas1 parabolas2
Figure 5: image set and LPN S of Figure 6: image set and LPN S of
parabolas3 points1
69
Figure 7: image set and LPN S of Figure 8: image set and LPN S of
points2 triangles1
Figure 9: image set and LPN S of Figure 10: image set and LPN S of
triangles2 triangles3
70 Plots referring to the numerical tests
Figure 11: image set and LPN S of Figure 12: image set and LPN S of
triangles4 triangles5