Beruflich Dokumente
Kultur Dokumente
Zbigniew Michalewicz
zbyszek@cs.adelaide.edu.au mrp@pjwstk.edu.pl
mrbonyadi@cs.adelaide.edu.au
Adam Wierzbicki
Polish-Japanese Institute of
Information Technology
Warsaw, Poland
adamw@pjwstk.edu.pl
ABSTRACT
General Terms
Algorithms
Keywords
Traveling Thief Problem, Co-evolution, Heuristics, Metaheuristics, Multi-objective optimization, Non-separable problems, Real-world optimization problems
1. INTRODUCTION
In contemporary business enterprises the complexity of
real-world problems has to be perceived as one of the greatest obstacles in achieving eectiveness. Even relatively small
companies are frequently confronted in their daily routines with problems of very high complexity. There have
been some studies to investigate sources of complexity (hardness) in real-world combinatorial optimization problems [9,
23, 15, 16]. For example, in [23] several reasons were identied that make optimization problems hard to solve. However, the reasons listed and discussed in that article (premature convergence, robustness, etc) were more related to the
issues of the solvers rather than the hardness of the problems. Also, in [16], ve main reasons behind the hardness of
real-world problems were discussed: the size of the problem,
modeling issues, noise, constraints, and some psychological
pressures on the designer when problems are big. In [15],
real-world problems were categorized into two groups: (1)
design/static problems, and (2) operational/dynamic problems. The rst category includes a variety of problems, such
as traveling salesman problem (TSP), Vehicle Routing Problem (VRP), knapsack problem (KP), etc. The second category includes problems presented in the now-a-days industries (e.g. real-world supply chain). The author argued that,
although some of the design/static problems (rst category)
Permission to make digital or hard copies of all or part of this work for personal or
classroom use is granted without fee provided that copies are not made or distributed
for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than
ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission
and/or a fee. Request permissions from permissions@acm.org.
GECCO14, July 1216, 2014, Vancouver, BC, Canada.
Copyright 2014 ACM 978-1-4503-2662-9/14/07 ...$15.00.
http://dx.doi.org/10.1145/2576768.2598367.
421
complete1 , which means that they are verifiable in polynomial time, and every problem veriable in polynomial
time polynomially reduces to any of these problems. The
question whether every polynomial-time-veriable problem
is polynomial-time-solvable is an old famous question in theoretical computer science [11, 3]. In particular, there are
no known sub-exponential algorithms for any known NPcomplete problem.
Two well-studied NP-complete problems in the literature
are the Knapsack Problem (KP) and the Traveling Salesman
Problem (TSP). In light of the above, there are no known
polynomial algorithms to either of these problems.
State-of-the-art algorithm for TSP runs in 2n( n/ log n)
time and exponential space [7], which is a huge improvement over classical algorithm described in [13] running in
2n time2 . Not only TSP is hard to solve, it is also hard to
approximate approximating TSP with a ratio bounded
by a constant is polynomially equivalent to solving TSP.
Moreover, almost every restriction of TSP that makes it
non-trivial is also NP-complete. There are known, however, better algorithms and approximations in some special
cases. For bounded-degree graphs with bounded weights
there is an algorithm running in (2 )n time and polynomial space [8]. For Euclidean TSP with bounded double dimension, there is a polynomial-time approximation scheme
[6, 5]. The classical Christodes algorithm [10] computes a
1.5-approximation for metric TSP. Variety of heuristics were
proposed to solve general TSP this includes approaches
based on genetic algorithms and ant colony optimization
[12]. Two best available heuristics base on reformulation of
TSP as Mixed Integer Linear Programming [1], and a generalization of k-opt heuristic [2].
Knapsack Problem can be solved in pseudo-polynomial
time (i.e. polynomial in the unary coding of natural numbers) by using two obvious dynamic programming approaches:
one with respect to weights of items, the other with respect to their prots. Also, the second approach gives rise
to a fully-polynomial-time approximation scheme by simple
truncation of prots. A survey on methods of solving Knapsack Problem found in Pisingers PhD dissertation [17].
are really hard and most of the current research has been
concentrated on those problems, the problems from the second category (i.e. operational/dynamic problems) are much
harder and represent a huge opportunity for Evolutionary
Algorithms. It was also stated that the value of addressing
the problems in the rst category does not have signicant
inuence on solving the problems in the second category
[15].
The reason behind the aforementioned minimal inuence
was investigated in [9] where the authors claimed that the
sources of complexity in real-world problems in the rst
group is somehow dierent from the ones in the second
group. It was argued that most of real-world problems
are multi-component problems (several potentially NP-Hard
problems interact with each other) while most of the current researches have been concentrated on single component
problems (traveling salesman problem, Knapsack problem,
job shop scheduling, vehicle routing problem, etc). Also, it
was stated that interdependency among components in operational/dynamic problems plays a key rule in the complexity of the problems. However, this interdependency is not
found in design/static problems [9]. To illustrate the complexity that arises by interdependency in multi-component
problems, a new test problem called Traveling Thief Problem (TTP) was introduced [9]. TTP was a composition of
two well-known problems, TSP and KP (see section 2.3 for
more details).
In this paper, a new algorithm (called CoSolver) for dealing with multi-component problems is proposed. CoSolver
mimics the behavior of a corporation that has separate departments that specialize in solving some aspects of a multicomponent problem. Each department is good in solving
one component, like choosing a route or a schedule. On the
other hand, departments need to work together to solve a
real problem. They do so by communicating their partial
solutions and negotiating with other departments. Also, we
propose a simple heuristic (called Density-based Heuristic,
DH) that rst generates a solution for the TSP component of
a given TTP and then it generates a solution for the found
TSP so that the objective value is maximized. Note that
DH ignores all interdependencies between the components.
These two methods are compared through some generated
benchmark TTPs. Results show that the performance of CoSolver is better than DH, which means that considering the
interdependency between components in solving this multicomponent problem (TTP) is benecial.
The paper has been organized as follows. Section 2 gives
some background information about combinatorial optimization problems, multi-component vs single component problems, and the description of the traveling thief problem. In
section 3, we propose two methods to solve TTP. Section 4
gives some details for generating instances, and in section
5, the results of application of the proposed methods to the
test problems are discussed. Section 6 concludes the paper.
2.
BACKGROUND
In this section, some background information about Traveling Salesman Problem (TSP) and Knapsack Problem (KP)
are given. Also, the Traveling Thief Problem (TTP) formulation is reviewed.
422
1
To be precise, the decision counterpart of these problems
are NP-complete
2
Up to a polynomial.
3. PROPOSED ALGORITHMS
In this section, we propose two algorithms to deal with
TTP. The rst algorithm (called Density-based Heuristic,
DH) is a simple heuristic which ignores the interdependency
between the components. The second algorithm is a socially
inspired algorithm which mimics the behavior of groups of
experts in solving multi-component problems in real-world.
ti =
m
X
i=1
pi min(xi , 1) R
n
X
ti,i+1
if i = 1
0
n+1
P
Li =
d(k , k+1 ) if i 6= 1
(5)
(1)
i=1
d(i , j )
vmin
vmax Wi vmaxW
(4)
k=i
Li
vmin
vmax wi vmaxW
(3)
(2)
3
A C++ based implementation for this algorithm can be
found in [2].
4
Note that, in the case of repetitions of an item in dierent
cities, the repetitive items can be assumed as another item
and the pi value is calculated for that as a new item
423
Algorithm 2: CoSolver
1: dk 0
2: Wk 0
3: P
4: for r 1 to MaxIter do
5:
pickedItems solve KRP with pk , wk , dk and
parameter
P Wk
6:
Wk ipickedItems wi [0 < xi k]
7:
solve TSKP with Wk , d
8:
P calcObj(pickedItems , )
9:
if P > P then
10:
P P
11:
12:
pickedItems pickedItems
13:
dk d(k , k+1 )
14:
else
15:
break
16: return pickedItems,
T = R
n
X
ti,i+1
(6)
i=1
m
X
i=1
pi min(xi , 1) R
n
X
ti
(7)
i=1
where:
ti =
d(i)
vmin
vmax Wi vmaxW
(8)
424
ti
Li
vmin
vmax (Wi1 + wi ) vmaxW
Li
vmin
vmax Wi1 vmaxW
(9)
700
600
0.6
500
400
0.4
300
200
0.2
100
200
400
600
800
(10)
reducing the value of the rent rate (w.r.t the prot of items)
in fact reduces the contribution of the TSP component to
the nal objective value. In an extreme case, the TSP component is completely ignored if the rent rate is zero. Also,
by increasing the value of the rent rate, total prot of items
becomes less important in the nal objective value and the
speed of travel become more important (contribution of TSP
in the nal objective is increased). Consequently, the solution for the KP component have smaller impact on the total
objective. This is also the same for the value of vmax vmin .
As an example, lets assume that vmin is a constant (0.1). If
the value of vmax vmin becomes zero, the value of velocc
ity, calculated by vmax (vmax vmin ) W
(Wc is the total
W
c
. Thus,
weight of the picked items) becomes vmax for any W
W
picking any item has no impact on the speed of the travel,
and hence, one can completely decompose TTP instance to
two independent sub-problems (TSP component and KPcomponent) and solve them separately. Note that, with this
setting, the optimal solution in isolation for each component
in fact constructs the overall optimal solution for any given
rent rate (see Fig 2). By making vmax larger (for a xed
vmin ), the variability of the nal velocity increases according
c
to the ratio of the available capacity (1 W
). In fact, for a
W
large vmax , the more items the thief pick, the faster the speed
drops comparing to a smaller value for vmax . If the value of
vmax is set to a very large value, the nal velocity drops very
fast and, for xed values of other parameters (xed prots
and weights for items, rent rate, and distances), it would be
better to have more available capacity in the knapsack to
avoid signicant drop of the travel speed. In fact, in this
case, solving KP component to optimality is more harmful.
(11)
k=i
4.
800
vmax
and:
if i = 1
0
n+1
P
Li =
d(k) if i 6= 1
900
0.8
GENERATION OF INSTANCES
4.1 Meta-component
This subsection describes all parameters that are independent from the TSP graph and KP items i.e. knapsackcapacity, rent rate, minimal-velocity and maximal-velocity.
One can alter the importance of TSP or KP components
in a TTP by tunning these parameters. As an example, a
425
1
0
426
90
90
DH
CoSolver
80
70
70
Percentage of gap
Percentage of gap
DH
CoSolver
80
60
50
40
30
20
10
60
50
40
30
20
10
0
0
50
100
150
10
15
20
25
30
35
Figure 3: Performance of DH and CoSolver in solving the generated benchmark problems with regards
to different number of items.
Figure 4: Performance of DH and CoSolver in solving the generated benchmark problems with regards
to the different number of cities.
90
5.
DH
CoSolver
80
70
Percentage of gap
60
50
40
30
20
10
EXPERIMENTAL RESULTS
10
15
20
25
30
Ratio(m/n)
Figure 5: Performance of DH and CoSolver in solving the generated benchmark problems with regards
to the number of items/number of cities.
small number of cities, the performance of DH is much worse
than CoSolver. The reason is that, when the number of cities
is small, the contribution of the TSP part becomes minimal
(the total distance for the whole tour is small). Thus, the
picking plan for the items becomes very important. However, DH only uses a very simple rule to pick the items,
which makes the algorithm ineective. CoSolver however is
equally eective when the number of cities is small or large.
Fig. 5 shows the gap vs ratio (ratio = m/n) for DH and
CoSolver. Figure indicates that the higher this ratio is, the
less eective DH is. In fact, when the number of cities is
small and the number of items is large, DH is not that useful
as the strategy for picking items in DH is not that eective
in nding good solutions for the KP component to match
with the found tour. However, CoSolver is way more eective especially for instances in which ration is high. This in
fact conrms that the negotiation between modules can effectively address the multi-component problems. Note also
that the algorithm for generating the tour in DH is one of
the most eective known methods for solving TSP. However,
CoSolver only utilizes problem knowledge to solve the given
TTPs and no complex strategy in the algorithm were used.
Fig. 6 shows the gap vs rent rate for DH and CoSolver
methods. Clearly, the performance of DH is lower than the
performance of CoSolver when the rent rate is small. The
reason is that (as discussed in section 4.1), for smaller values
of the rent rate, the signicance of the solution for the TSP
component becomes smaller. As DH uses a simple heuristic
to solve the KP component, it is actually expected that its
performance is low when the rent rate is small. however,
427
90
DH
CoSolver
80
Percentage of gap
70
60
[7]
50
40
[8]
30
20
10
[9]
0
0
100
200
300
400
500
600
700
800
900
1000
Rent rate
Figure 6: Performance of DH and CoSolver in solving the generated benchmark problems with regards
to different rent rates.
[10]
when the rent rate is high, the contribution of TSP component becomes larger. As DH uses a good method to deal
with the TSP component, its results become better when
the rent rate increases.
6.
[11]
[12]
7.
[13]
[14]
[15]
[16]
[17]
[18]
[19]
REFERENCES
[20]
[21]
[22]
[23]
428