Professional Documents
Culture Documents
Computers & Industrial Engineering: A A B A C D
Computers & Industrial Engineering: A A B A C D
a
Department of Industrial Management, National Taiwan University of Science and Technology, 43, Section 4, Keelung Road, Taipei 10607, Taiwan
b
Department of Logistics Engineering, Universitas Pertamina, Jalan Teuku Nyak Arief, Simprug, DKI Jakarta 12220, Indonesia
c
Department of Industrial Engineering, Rajamangala University of Technology Lanna Tak, 41/1 Paholayothin Road, Muang, Tak 63000, Thailand
d
School of Information Systems, Singapore Management University, 80 Stamford Road, Singapore 178902, Singapore
Keywords: This paper introduces the Team Orienteering Problem with Time Windows and Partial Scores (TOPTW-PS),
Team orienteering problem which is an extension of the Team Orienteering Problem with Time Windows (TOPTW). In the context of the
Time window TOPTW-PS, each node is associated with a set of scores with respect to a set of attributes. The objective of
Partial score TOPTW-PS is to find a set of routes that maximizes the total score collected from a subset of attributes when
Discrete particle swarm optimization
visiting the nodes subject to the time budget and the time window at each visited node. We develop a mathe-
matical model and propose a discrete version of the Particle Swarm Optimization (PSO), namely, the Selective-
Discrete PSO (S-DPSO), to solve TOPTW-PS. The proposed S-DPSO uses four different movement schemes to
move a particle from its current position. The best movement scheme is selected to determine the next position of
the particle. To evaluate the performance of the proposed S-DPSO algorithm, we first test S-DPSO on two var-
iants of Orienteering Problem, namely, Team Orienteering Problem (TOP) and TOPTW. Experimental results
show that S-DPSO performs well in solving benchmark instances of TOP and TOPTW. In general, S-DPSO is
comparable to the state-of-the-art algorithms for these problems. We also apply the S-DPSO to solve 168 newly
generated TOPTW-PS instances and conclude that the proposed S-DPSO can produce high-quality TOPTW-PS
solutions.
1. Introduction (PTP) (Dell'Amico, Maffioli, & Värbrand, 1995). The three TSP variants
(OP, PCTSP and PTP) are considered as the generic forms of TSP with
The Orienteering Problem (OP) was first introduced by Tsiligirides profits (Feillet, Dejax, & Gendreau, 2005). A well-known OP extension
(1984). In OP, a set of vertices associated with a location and a score is is the Team OP (TOP), which incorporates multiple routes. Another
given. The time required to travel between each pair of locations is extension that is widely considered in OP and TOP is the TOP with Time
known in advance. OP aims to find a route that visits a subset of vertices Windows (TOPTW), which incorporates the time window constraints.
to maximize the total collected score (Vansteenwegen, Souffriau, Vansteenwegen et al. (2011b) comprehensively surveyed about OP,
Vanden Berghe, & Van Oudheusden, 2009a). Therefore, in OP, de- TOP, and TOPTW. Gunawan, Lau, and Vansteenwegen (2016) extended
termining the selection of vertices and shortest path between selected the survey by including the latest variants of the OP, such as the pro-
vertices are important factors. OP can be considered as a combination posed solution approaches and the most recent applications of the OP.
of the Knapsack Problem and the Travelling Salesman Problem (TSP). OP and its variants have attracted attention because of the nu-
In the classical TSP, the objective is to determine a path that visits all merous real-life applications (Gedik, Kirac, Milburn, & Rainwater,
vertices with the smallest travel distance. The Prize Collecting TSP 2017; Yu et al., 2017a). In this paper, we focus on the application of
(PCTSP) is a variant of TSP in which all vertices do not need to be TOPTW to the Tourist Trip Design Problem (TTDP). TTDP is a route-
visited. PCTSP considers a reward/prize for every visited vertex and a planning problem for tourists that are interested in visiting multiple
penalty to every vertex that is not visited (Balas, 1989). Meanwhile, a points of interest (POIs). Typically, most tourists visit as many POIs as
TSP variant with the objective of finding a circuit that minimizes travel possible during their limited time (Vansteenwegen et al., 2009a).
cost minus collected profit is known as the Profitable Tour Problem However, given the time limitations, they might not be able to visit all
⁎
Corresponding author.
E-mail address: vincent@mail.ntust.edu.tw (V.F. Yu).
https://doi.org/10.1016/j.cie.2019.106084
Received 27 August 2017; Received in revised form 15 September 2019; Accepted 21 September 2019
Available online 27 September 2019
0360-8352/ © 2019 Published by Elsevier Ltd.
V.F. Yu, et al. Computers & Industrial Engineering 138 (2019) 106084
POIs. Thus, tourists generally select those locations with high scores or Golden, & Wasil, 1996), which is generally played in a forested area. OP
valuable POIs (Vansteenwegen et al., 2011a). TTDP aims to help tour- aims to determine which route maximizes the collecting point or score
ists in determining tours when visiting POIs in a customized trip. (Chao et al., 1996). Vansteenwegen et al. (2011b) reviewed the OP,
In visiting each POI, the score is assumed to come from one type of TOP, and its extensions. Tang and Miller-Hooks (2005) provided a de-
activity. Nevertheless, in reality, upon a visit to a POI, several activities tailed review on the published solution approaches for OP and TOP.
can be selected. For example, when visiting a beach, tourists can ex- OP and TOP with time windows are also introduced. In OPTW and
perience several leisure activities, such as taking photo of good views TOPTW, the time window is considered a constraint. Among practical
and doing some water sports. Each activity requires a certain period of situations, motivating the inclusion of time windows include routing
time and provides a different valuable score. In this case, the problem is problem cases where each customer or location should be visited within
further complicated because the tourists should decide where they a predetermined time interval. For example, in TTDP, some attractive
should visit and what activities they should attend. Therefore, the places may have a specific time they are open. Therefore, tourists
present paper aims to present an extension of TOPTW, namely, TOPTW should plan their trip to visit during the opening period of each place.
and Partial Scores (TOPTW-PS). TOPTW-PS maximizes the total col- Abbaspour and Samadzadegan (2011) introduced the tour planning
lected scores based on the visited POIs and the combination of selected extension of OPTW. The tour-planning problem is modeled in the
activities. context of the time-dependent OPTW. The time-independent tour
The proposed TOPTW-PS is explained with the following example. planning in a large urban area considers multimodal transportations.
Tourists plan to visit a certain area with several POIs. At each POI, This problem determines the sequences for visiting the attractive points
several activities can be selected; each activity is associated with a score during a specific period via several modes of transportation system. To
and the amount of time needed to finish it. TOPTW-PS aims to max- solve the problem, an evolutionary strategy based on a genetic algo-
imize the total collected score with several constraint limitations, such rithm is proposed.
as the time budget and time windows. When considering the nature of Garcia, Vansteenwegen, Arbelaitz, Souffriau, and Linaza (2013)
the TOPTW-PS, its application is not only limited to the trip design introduced a personalized electronic tourist guide to help tourists de-
problem. TOPTW-PS can also be applied in humanitarian logistic, cide which places to visit and obtain transportation information. They
where a volunteer selects the route to visit and the necessary activities modeled the tourist planning problem by integrating public transpor-
to be conducted in the shelter. The application of routing technicians or tation as the time-dependent TOPTW; they solved this problem using
sales representatives to serve customers with several optional requested the algorithm based on Vansteenwegen, Souffriau, Vanden Berghe, &
services is also one possible application of the TOPTW-PS. Van Oudheusden (2009b). Souffriau, Vansteenwegen, Vanden Berghe,
TOPTW-PS is a new and challenging problem. It is an extension of and Van Oudheusden (2013) proposed the multiconstraint TOP with
TOPTW which belongs to the class of non-polynomial-hard (NP-hard) multiple time windows; in this problem, each vertex is extended with
problem (Golden, Levy, & Vohra, 1987). Hence, TOPTW-PS is also NP- additional knapsack constraints, which limit the selection of vertices,
hard. Hence, TOPTW-PS is a NP-hard problem. To deal with this together with the time windows and the time budget. In the tourist
complex problem, we develop the discrete version of the well-known application, these additional constraints will involve budget limitations
Particle Swarm Optimization (PSO), namely, the Selective Discrete for entrance fees for each day (e.g., a maximum number of museums to
Particle Swarm Optimization (S-DPSO). In summary, the contribution visit on the first day). The hybrid solution mechanism, which integrates
of this paper is threefold: iterated local search and a greedy randomized adaptive search proce-
dure (GRASP), was proposed to solve this problem.
• We present a new variant of the TOPTW, namely, TOPTW-PS, in In terms of solution methods, several algorithms, including the exact
which each vertex is associated with a set of scores with respect to a method (Boussier et al., 2007; Fischetti, Gonzalez, & Toth, 1998) and
set of activities. heuristic methods, have been used to solve OP and its extensions. The
• We generate a new set of benchmark instances for TOPTW-PS by basic OP model uses the exact method to determine the optimal solu-
extending the characteristics of the benchmark TOPTW instances. tion; however, this method is considerably difficult and usually requires
• We propose a discrete version of the well-known PSO, namely, S- a long computational time. Therefore, heuristic and evolutionary
DPSO, to solve the TOPTW-PS. S-DPSO introduces four different computing methods have been applied to determine a near-optimal
movement schemes: (1) following its own position, (2) moving to- solution in a reasonable amount of time. Vansteenwegen et al. (2011b)
ward its personal best position, (3) moving toward the global best provided a detailed published solution approach for OP and its exten-
position, and (4) moving toward the combination of the three sions. Metaheuristic approaches, such as tabu search (Tang & Miller-
above-mentioned schemes. The best movement scheme in term of an Hooks, 2005), ant colony optimization (ACO) (Ke, Archetti, & Feng,
objective function is selected for each particle to move to the next 2008; Montemanni & Gambardella, 2009), variable neighborhood
position. The ability of the proposed S-DPSO to solve the TOP and search (VNS) (Campbell, Gendreau, & Thomas, 2011; Tricoire,
the TOPTW is also tested. Romauch, Doerner, & Hartl, 2010), iterated local search heuristic (ILS)
(Gunawan, Lau, & Lu, 2015; Vansteenwegen et al., 2009b), simulated
The remainder of this paper is organized as follows. Section 2 re- annealing (SA) (Lin & Yu, 2012), artificial bee colony (ABC) (Cura,
views the literature related to the proposed problem and the solution 2014), PSO (Dang, Guibadj, & Moukrim, 2013; Muthuswamy & Lam,
approach. Section 3 presents the problem definition, including the 2011; Yu et al., 2017a), and the hybrid approach (Labadie,
mathematical model. Section 4 describes the original discrete PSO Melechovský, & Wolfler Calvo, 2010), deliver efficient results for some
concept. Section 5 demonstrates the proposed S-DPSO for solving the specified problems.
TOPTW-PS, including the solution representation and movement
schemes. Section 6 provides the experimental results. Finally, Section 7 3. Problem definition and model formulation
concludes this study and suggests some future research directions.
In TOPTW-PS, the fixed number of tours or paths is given. A set of
2. Related work attractive vertices associated with multiple activities and time window
is introduced. Each activity in the vertex is associated with a score and a
The topics on OP, TOP, and their applications have been studied for service time. The TOPTW-PS aims to determine the paths that maximize
many years (Schilde, Doerner, Hartl, & Kiechle, 2009; Tsiligirides, the total collected score from visiting vertices and attending some ac-
1984; Vansteenwegen & Van Oudheusden, 2007; Wang, Golden, & tivities without violating their time windows. For the mathematical
Wasil, 2008). The original OP comes from the orienteering game (Chao, model formulation, we define the following:
2
V.F. Yu, et al. Computers & Industrial Engineering 138 (2019) 106084
• A set N = {N 0 Nc } is a set of all vertices. N0 is a set of vertex 0 that Constraint (6) calculates the total visiting time of each vertex. Con-
is designated as the starting and end vertices, that is, N0 = {0} . Nc is a straint (7) determines the timeline of each path. Constraints (8) and (9)
set of vertices that represents the attractive vertices restrict the start of the service to the time window. The route is limited
(Nc = {1, 2, 3, ...,|N |} ). P is a set of paths, that is, P = {1, 2, 3, ...,|P|} . by Tmax (Constraint (10)). In addition, the visiting time of the first vis-
A is a set of activities provided in each vertex, that is, ited vertex must be longer than the travel time of arc (0, j) (Constraint
A = {1, 2, 3, ...,|A|} . All vertices are assumed to have the same set of (11)). Finally, constraints (12)–(14) are the integrality constraints for
activities. the decision variables.
• A partial score Si, a is associated with vertex i Nc and activity
a A . wi, a represents the service time associated with vertex i in 4. Particle swarm optimization (PSO)
activity a.
• A travel time ti, j is the time for traveling from vertex i to j (i , j N ). PSO was proposed by Kennedy and Eberhart (1995). The standard
• Each vertex i Nc can be visited at most once in the time interval PSO algorithm is initially designed to solve continuous optimization
[Oi , Ei]. Moreover, not all vertices can be visited because of the problems. PSO imitates the physical movements of individuals/particles
limited given time Tmax. in the swarm as a searching method. Each particle represents a solution
to the problem and its move directly relates to changes in the solution.
Decision variables The particles move through the search space seeking the global op-
timum. However, there is no guarantee of reaching the global optimum.
1 If an activity a is selected by a visit to vertex i
a i, a = Furthermore, particle moves are influenced by the information such as
0 Otherwise
its own experience and globally shared information from other particles
1 If in path p , a visit to vertex i is followed by a visit to vertex j in the swarm.
x i, j , p = We denote the most suitable solution of particle k at iteration t (the
0 Otherwise
personal best position) as pkt best and the global best solution taken from
1 If in path p , a vertex i is visited all particles at iteration t (the particle swarm’s global best position) as
yi, p =
0 Otherwise
t
gbest . At iteration t, particle k updates its next position xkt+ 1 by using Eqs.
(15) and (16) (Muthuswamy & Lam, 2011):
= Total visiting time of a visit to vertex i vkt+ 1 = w· vkt + c1·r1 (pkt xkt ) + c2·r2 (gbest
t
xkt );
vi
best (15)
si, p = Starting time of a visit to vertex i in path p
max Si, a· ai, a · yi, p where andvkt represent the velocity and the position of particle k at
xkt
p P i Nc a A (1) iteration t, respectively; w is a constant value that controls the impact of
the previous velocity; c1 is the cognitive parameter for remembering the
Constraints most suitable particle position that has been reached; c2 is the social
x 0, j, p = x i,0, p = |P| parameter controlling the communication among particles to converge
p P j Nc p P i Nc (2) toward the global best position; and r1 and r2 are uniformly distributed
random variables in [0,1].
x i, k , p = xk, j, p = yk, p k Nc , p P There are two versions of PSO which are commonly used to solve
i N ,i k j N ,k j (3) discrete optimization problems such as VRP. The first version is the
real-valued version of PSO. In this version, the particle position is re-
yi, p 1 i Nc presented as a string of arrays that consists of real numbers. The solu-
p P (4)
tion to the problem is generated through a decoding procedure which
a i, a |A| i Nc normally involves a mechanism to transform real values in the solution
a A (5) to integers or binary numbers. Examples of real-valued PSO can be
found in Ai and Kachitvichyanukul (2009). Moreover, Yu, Jewpanya,
wi, a·ai, a vi i Nc and Kachitvichyanukul (2016) used the same concept to solve the
a A (6) transshipment problem. The discrete-valued PSO represents the solu-
i N, j Nc , tion by a string of integers or binary numbers. In the discrete-valued
si, p + vi + ti, j sj, p M (1 x i, j, p) PSO, the solution can be directly obtained by decoding the particle
p P (7)
position. An illustration between these versions is illustrated in Fig. 1.
Oi si, p i Nc , p P (8) The example of real-valued PSO can be seen in Yu et al. (2017a).
This study applied a variant of PSO called 2L-GLNPSO for solving the
si, p Ei i Nc , p P (9) Multi-Modal Team Orienteering Problem with Time Windows (MM-
TOPTW). This approach is the closest implementation of PSO to our
si, p + ti,0· x i,0, p Tmax i Nc , p P (10)
proposed S-DPSO. However, because the decision variables of MM-
sj, p t 0, j, v· yj, p j Nc , p P (11) TOPTW are discrete, 2L-GLNPSO needs a decoding process to convert
the real-valued solution representation to the discrete-valued one. In-
x i, j , p {0, 1} i, j N, p P (12) stead of using real-valued solution representation similar to 2L-
GLNPSO, our proposed S-DPSO are based on the discrete-valued PSO
a i, a {0, 1} i N, p P (13) (DPSO).
yi, p {0, 1} i, j N, p P The decoding process is a process to convert the encoded solution
(14)
from a form of real-valued solution representation to a discrete-valued
Objective function (1) maximizes the total collected score. Constraint solution representation. At the end of the process, the goal is to simplify
(2) guarantees that each path starts and ends in Vertex 0. Constraint (3) the calculation of the objective function value. In general, the setup of a
ensures the path connectivity through flow conservation equalities. real-valued solution representation is similar for most problems. In the
Constraint (4) ensures that each vertex is visited at most one. Constraint solution representation, elements of the solution length and the value
(5) ensures that most |A| activities can be selected in each vertex. range are defined. Takes example of the 2L-GLNPSO implemented for
3
V.F. Yu, et al. Computers & Industrial Engineering 138 (2019) 106084
Fig. 1. Illustration of (a) real-valued PSO by Ai and Kachitvichyanukul (2009) and (b) discrete-valued PSO by Goksal et al. (2013).
solving MM-TOPTW by Yu et al. (2017a), the solution representation is dimension is an integer number, which is generated randomly from 1 to
divided into two levels of real-valued solution. The first level is to re- (2|A| 1). Each integer number in [1, (2|A| 1)] represents one specific
present the priority list of vertices that shows the sequence of vertices type of selection from all possible (2|A| 1) types. Each integer number
being visited. It is decoded by using a sorting function of the real-valued is subsequently encoded to a binary variable aci, that is, i A , to obtain
number in the solution, and then taking the index as the new re- the selected activities. If the activity i is selected, then aci is 1; other-
presentation of the solution. The second level represents the type of wise, it is 0. The integers in dimension 1 to |Nc | represent the activity
transportation being selected. This solution is decoded by assigning the selection of visiting vertex 1 to vertex |Nc |. This approach can help re-
real-valued solution representation to the representative integer value duce the dimension of the solution representation and enable multiple
defined by a function explained in the paper. Then, this process takes activity selections.
information regarding how the objective function value is calculated to Table 1 provides a TOPTW-PS instance with 25 vertices. Each vertex
obtain the objective value. However, our proposed algorithm is ex- shows three activities (|A| = 3). In this example, the vertex’s coordinate
tended from DPSO which does not need decoding process since the form (X, Y), a service time (Wa), and a partial score (Sa) associated with
of solution representation is already discrete. Some of the optimization activity a A , earliest time (Oi), and latest time (Ei) are also listed.
problems solved using DPSO include TSP (Pang, Wang, Zhou, Dong, When we consider two paths (p = 2), the total number of dimensions is
Liu, & Zhang, 2004), VRP (Goksal, Karaoglan, & Altiparmak, 2013; 51 (total dimensions consist of decisions for activity (|Nc |) and visited
Gong et al., 2012), scheduling problem (Kashan & Karimi, 2009; Pan, vertices (|Nc | + |P| 1)).
Fatih Tasgetiren, & Liang, 2008; Tseng & Liao, 2008), and OP (Dang In TOPTW-PS, visitors visiting a vertex can select more than one
et al., 2013; Muthuswamy & Lam, 2011). activity. Table 2 illustrates the activity selection from three activities
PSO has been reported to be an algorithm of fast convergence and (|A| = 3) at each vertex. In this case, there are seven possible activity
easy implementation. Therefore, in the present research, we propose combinations denoted by the integers 1–7. Each number is encoded into
the S-DPSO for TOPTW-PS. S-DPSO is a DPSO extension with several binary variables that represent the selected activity, as shown in
mechanisms to improve the particle movement. The mechanism that Table 2. For example, the first dimension of the second part of solution
provides the best solution is used for particle movement. Therefore, in
this research, we propose the S-DPSO with several mechanisms to im-
prove the particle movement. The mechanism that provides the most Table 1
suitable solution is used for particle movement. The use of S-DPSO in TOPTW-PS instance with 25 locations and one, two, or three activities at each
solving TOPTW-PS is explained in the following section. location.
No. X Y W1 W2 W3 O E S1 S2 S3
5. Proposed S-DPSO algorithm for TOPTW-PS
0 40 50 0 0 0 0 1236 0 0 0
1 45 68 0 5 5 912 967 0 45 45
This section introduces the use of S-DPSO in solving TOPTW-PS. S-
2 45 70 3 21 6 825 870 9 63 18
DPSO is a discrete version of PSO that implements a discrete permu- 3 42 66 5 2 3 65 146 45 18 27
tation-based solution. The structure of this discrete-valued solution 4 42 68 3 6 1 727 782 27 54 9
representation and the path construction procedure are explained in 5 42 65 8 0 2 15 67 72 0 18
6 40 69 2 14 4 621 702 9 63 18
Section 5.1. The parameters used in this proposed algorithm is de-
7 40 66 14 2 4 170 225 63 9 18
scribed in Section 5.2. In the process of moving a particle from its initial 8 38 68 6 0 14 255 324 27 0 63
position to another position, S-DPSO uses four mechanisms to generate 9 38 70 0 3 7 534 605 0 27 63
four candidate solutions which are explained in Section 5.3. Each so- 10 35 66 1 1 8 357 410 9 9 72
lution consists of the position and the associated objective value. The 11 35 69 9 0 1 448 505 81 0 9
12 25 85 2 0 18 652 721 9 0 81
mechanism on how S-DPSO solves TOPTW-PS is explained in Sections
13 22 75 0 9 21 30 92 0 27 63
5.4 and 5.5. 14 22 85 5 2 3 567 620 45 18 27
15 20 80 24 4 12 384 429 54 9 27
5.1. Solution representation and path construction procedure 16 20 85 4 20 16 475 528 9 45 36
17 18 75 8 4 8 99 148 36 18 36
18 15 75 0 12 8 179 254 0 54 36
The solution representation for TOPTW-PS is derived from the so- 19 15 80 7 2 1 278 345 63 18 9
lution representation for TOPTW by Lin and Yu (2012). It consists of 20 30 50 5 1 4 10 73 45 9 36
two parts. The first part is represented by a permutation of |Nc |vertices, 21 30 52 16 0 4 914 965 72 0 18
followed by |P|-1 zeros for separating paths. Therefore, the total di- 22 28 52 18 0 2 812 883 81 0 9
23 28 55 5 0 5 732 777 45 0 45
mension of the first part is |Nc | + |P| 1. The second part of the solution
24 25 50 4 1 5 65 144 36 9 45
representation is used to represent the selected activity when visiting 25 25 52 32 0 8 169 224 72 0 18
each vertex, and it consists of |Nc | dimensions. The value in each
4
V.F. Yu, et al. Computers & Industrial Engineering 138 (2019) 106084
Fig. 2. Example of solution representation for a problem with 25 vertices and 2 paths.
5
V.F. Yu, et al. Computers & Industrial Engineering 138 (2019) 106084
Table 3
Parameter settings of S-DPSO for solving TOP, TOPTW, and TOPTW-PS.
Problem Candidate parameter Selected parameter
TOPTW I = {5, 10, 30}; T = {500,8000,1000}; w = {0.3,0.6,0.9}; C1 = {0.3,0.6,0.9}; C2 = {0.3,0.6,0.9}; and L = I = 30; T = 800; w = 0.9; C1 = 0.6; C2 = 0.6; and
{500, 1000, 2000} L = 1000
TOPTWPS I = 10; T = 1000; w = 0.9; C1 = 0.6; C2 = 0.6; and
L = 500
selected dimensions are calculated as follows. For example, in Fig. 4, five vertices (|Nc | = 5) are considered with
three types of activity (|A| = 3) in one path (|P| = 1). Thus, the particle
sw = (|Nc | + |P| 1)· w ; (22)
represents the vertices with five dimensions. The example of generating
new position in Eq. (17) starts at determining sw by using Eq. (22). We
s1 = (|Nc | + |P| 1)·c1 ; (23)
assume that the acceleration number w is 0.5. Therefore, the number of
s2 = (|Nc | + |P| 1)·c2 ; (24) selected dimensions is 3, that is, sw = 5 0.5 = 3. The process then
randomly selects three dimensions from Xkt , as shown in Fig. 4.
where · denotes the smallest integer that is larger than or equal to the The add operator ( ) is used to construct the solution after the
enclosed number. For the second part of the solution representation, the multiply operator. In the first |Nc | + |P| 1 dimensions, the non-du-
dimensions of the particle are maintained. plicated dimensions from the added particle are inserted into the empty
6
V.F. Yu, et al.
Table 4
Results for TOPTW benchmark instances.
Instance set N GVNS VNS SSA GRASP-ELS ILS ACS ABC I3CH S-DPSO
Gap avg. CPU Gap avg. CPU Gap avg. CPU Gap avg. CPU Gap avg. CPU Gap avg. CPU Gap avg. CPU Gap avg. CPU Gap avg. CPU
(%) (s) (%) (s) (%) (s) (%) (s) (%) (s) (%) (s) (%) (s) (%) (s) (%) (s)
p=m=1
Solomon 100 29 2.46 66.54 0.07 85.39 0.05 22.32 0.20 9.01 1.94 0.24 0.10 200.13 0.46 4.42 0.69 26.71 0.19 20.59
Solomon 200 27 2.54 75.53 0.54 857.80 0.50 44.67 1.14 16.52 2.53 1.67 0.54 857.80 0.97 21.35 1.34 132.14 0.69 63.43
Cordeau 1–10 10 1.44 12.37 0.92 822.05 0.80 112.21 1.28 5.03 4.56 1.75 1.03 1626.63 1.30 78.54 1.05 109.01 0.33 98.41
Cordeau 11–20 10 3.51 24.22 2.61 1045.94 2.97 162.40 2.61 7.90 8.88 1.98 11.22 887.65 2.78 103.67 4.28 130.23 2.72 85.42
p=m=2
Solomon 100 29 1.64 73.88 0.96 68.78 0.04 34.52 1.28 26.60 1.85 0.89 0.63 1278.64 0.32 13.00 0.47 69.31 0.85 60.37
7
Solomon 200 27 1.16 19.79 0.70 813.69 0.65 76.87 0.38 20.91 2.80 2.60 2.88 2222.72 0.85 30.65 0.47 463.80 1.26 80.19
Cordeau 1–10 10 1.18 39.09 3.30 524.83 1.86 173.93 1.61 19.46 5.64 4.76 2.98 1889.66 2.45 149.69 1.04 247.06 1.66 142.09
Cordeau 11–20 10 1.52 82.44 2.98 618.79 3.24 201.63 2.92 28.77 7.24 5.21 5.53 2384.81 2.99 221.84 2.70 304.61 2.41 142.46
p=m=3
Solomon 100 29 1.83 91.09 1.18 68.86 0.40 45.95 1.56 35.04 2.36 1.46 1.41 1421.73 0.59 22.55 0.20 135.85 0.10 93.71
Solomon 200 27 0.24 7.32 0.11 322.34 0.45 52.26 0.06 3.50 1.10 1.71 0.82 1344.96 0.32 12.49 0.02 89.24 0.36 16.69
Cordeau 1–10 10 0.86 85.90 3.37 473.21 2.07 197.01 1.71 40.55 6.33 9.24 3.74 2163.80 2.64 228.93 0.36 424.00 0.75 178.34
Cordeau 11–20 10 1.39 150.73 2.95 517.47 3.42 251.83 2.86 42.95 8.82 9.69 6.23 2228.16 3.84 247.64 1.11 496.95 1.80 181.32
p=m=4
Solomon 100 29 1.85 86.59 1.56 66.85 0.48 58.32 1.53 39.93 3.12 2.42 1.67 1523.01 0.95 29.54 0.16 199.54 0.32 114.25
Solomon 200 27 0.00 0.53 0.00 141.21 0.00 40.45 0.00 0.02 0.00 1.02 0.02 245.42 0.00 0.53 0.00 0.17 0.04 0.18
Cordeau 1–10 10 1.30 127.33 3.25 403.17 1.90 255.57 2.20 45.75 6.77 14.07 3.27 2447.70 3.17 233.28 0.36 566.51 1.61 205.14
Cordeau 11–20 10 2.45 232.64 3.14 408.00 3.60 283.98 3.07 65.33 8.13 13.74 6.00 2583.50 3.49 267.58 0.45 728.62 1.48 207.83
Average 1.58 73.50 1.73 452.40 1.40 125.87 1.53 25.46 4.50 4.53 3.00 1581.65 1.69 104.11 0.92 257.74 1.04 105.65
Computers & Industrial Engineering 138 (2019) 106084
V.F. Yu, et al. Computers & Industrial Engineering 138 (2019) 106084
A1 A2 376.000 −3.747 0.000 v2tk+ 1 Update the k th particle velocity vector using (18)
A1 A3 575.000 −2.313 0.021 v3tk+ 1 Update the k th particle velocity vector using (19)
A2 A3 29.500 −3.713 0.000
v4t +
k
1 Update the k th particle velocity vector using (20)
Xkt+ 1 Update the k th particle position vector using (21)
if f (Xkt+ 1) > f (Pkt )
dimension of multiply operator result. For the activity selection di-
Pkt+ 1 Xkt+ 1
mension, the process randomly selects the dimension from the operated
else
particle or the dimension of the multiply operator result.
Pkt+ 1 Pkt
Fig. 5 displays the add operator process between the multiply op-
end if
erator result ( X kt ) and the added particle (Rkt ). The Rkt dimension is end for
added into the sequence of X kt . The Rkt dimension that is duplicated if f (Pgt ) < max{f (Pkt+ 1)} > f (Pkt )
with X kt is not considered. Hence, in this section, 5 and 4 are added k
8
V.F. Yu, et al. Computers & Industrial Engineering 138 (2019) 106084
Table 10
Summary of CPLEX and S-DPSO for small and medium size TOPTW-PS instances.
Set CPLEX S-DPSO Gap 2
Small (S) Medium (M) Small (S) Medium (M) S (%) M (%)
p=m=1
Solomon 100 205.52 237.76 210.38 243.93 −2.37% −2.60%
Solomon 200 429.30 655.93 429.30 674.93 0.00% −2.90%
p=m=2
Solomon 100 342.17 423.21 346.28 436.97 −1.20% −3.25%
Solomon 200 431.56 825.48 431.56 833.70 0.00% −1.00%
p=m=3
Solomon 100 408.97 570.97 412.93 580.41 −0.97% −1.65%
Solomon 200 431.56 835.89 431.56 835.96 0.00% −0.01%
Average 374.84 591.54 377.00 600.98 −0.57% −1.60%
Fig. 6. Illustration of SDPSO-4 and SDPSO results for TOPTW-PS large instances.
9
V.F. Yu, et al. Computers & Industrial Engineering 138 (2019) 106084
Fig. 7. Illustration of SDPSO-NoLocal and SDPSO results for selected TOPTW-PS large instances.
10
V.F. Yu, et al. Computers & Industrial Engineering 138 (2019) 106084
Table 13 and critical value is −1.64). Result in Table 9 shows that the average
Summary of S-DPSO-NoLocal and S-DPSO results for large TOPTW-PS in- gap between each group is significantly different. Based on this ex-
stances. periment, we can conclude that I3CH is the most effective among the
Set* S-DPSO-NoLocal S-DPSO Gap5 algorithms for TOPTW. Our proposed S-DPSO algorithm can generate
results as good as those of GVNS, VNS, SSA, GRASP-ELS, ACS, and ABC.
Objective CPU (s) Objective CPU (s) (%)
11
V.F. Yu, et al. Computers & Industrial Engineering 138 (2019) 106084
TOPTW where they are categorized into clustered (C), random (R), and 7. Conclusions and further work
random-clustered (RC) based on the locations of the vertices. SDPSO
outperforms SDPSO-(4) in all categories in terms of objective value. In this study, we introduce TOPTW-PS, which is an extension of
However, it comes with the cost of higher computational time. Both TOPTW. In TOPTW-PS, each location shows a set of activities. Each
algorithms show an increasing computational time along with the in- activity is associated with a score that is available for visitors to collect.
creasing number of days/paths. SDPSO-(4) requires less computational We formulate the mathematical model and propose the S-DPSO to solve
time for most of the instances except those having random character- the problem. The S-DPSO uses the most suitable one among the four
istics such as 1-R100, 1-R200, 1-RC200, and 3-RC200. movement schemes for each particle to improve the solution. The
We use the S-DPSO and S-DPSO-(4) objective value results to con- proposed S-DPSO is first tested on TOPTW benchmark problems. The
duct the statistical test analysis for the TOPTW-PS large benchmark computational experiments showed that S-DPSO can produce a high-
instances. The Wilcoxon signed-rank test statistics is conducted with quality solution for TOPTW, the computational results showed that the
95% confidence interval (α is 0.05 and critical value is −1.64). proposed S-DPSO can generate solutions as good as those of GVNS,
Table 12 shows that the average objective values between S-DPSO and VNS, SSA, GRASP-ELS, ILS, ACS, and ABC. Subsequently, S-DPSO is
S-DPSO-(4) results are significantly different. Therefore, can be inter- implemented to solve the TOPTW-PS instances. The computational
preted that S-DPSO outperforms S-DPSO-(4). experiment on TOPTW-PS problem showed that S-DPSO can determine
the optimal solution for small-scale instances, and results are similar to
those obtained by CPLEX. For large-scale instances, S-DPSO results are
6.4.4. Comparative results between S-DPSO and S-DPSO-NoLocal on
significantly better than those of S-DPSO-(4). Overall, S-DPSO results
TOPTW-PS instances
indicated efficiency in solving TOPTW-PS problem. The computational
The purpose of adding the local search into S-DPSO is to improve
time is reasonable with respect to the size and difficulty of the tested
the performance of the algorithm. This section shows the impact of the
instances. In addition, an analysis of the effect of local search for S-
local search on solving large-scale benchmark instances. An insight of
DPSO is conducted. It is shown that the local search improves the S-
the effectiveness of the local search is shown in Fig. 7. Both algorithms
DPSO algorithm computational results. Moreover, we conduct an ex-
show results with the trend of increasing objectives values and com-
periment to see the difference of TOPTW-PS results if the score and
putational times as a result of increasing number of days/paths being
service time is asymmetric.
considered. This is expected as the more paths considered, the more
Future research may consider the application of the proposed
vertices can be visited, but more computational time is needed to reach
TOPTW-PS, especially for the tourism sector (TTDP). Therefore, future
the optimal solution. An interesting result is shown in terms of objective
research can apply the proposed algorithm in a practical application on
value. It shows that the S-DPSO outperforms SDPSO-NoLocal. Although
an actual mobile device. In terms of the problem, multiple objectives
local search requires more computational time, the increased compu-
can also help determine a considerably beneficial solution, such as
tational time is acceptable considering the improvement in the solu-
setting an objective to maximize the total score and minimize the total
tions quality.
cost. The potential applications of TOPTW-PS to other areas also in-
The results of S-DPSO without local search (S-DPSO-NoLocal) and S-
clude humanitarian logistic, personal medical service, and freelance
DPSO with local search are summarized in Table 13. The average ob-
workers. In addition, the option to randomize movement options
jective value and computational time of S-DPSO-NoLocal are 943.68
among the four trajectories in S-DPSO can be explored. Finally, in order
and 227.83 s, respectively, and the average percentage gap between S-
to find the best parameter values, automatic calibration tools, such as
DPSO-NoLocal and S-DPSO objective values is −3.68%. The percentage
IRace (López-Ibáñez, Dubois-Lacoste, Cáceres, Birattari, & Stützle,
gap between the average S-DPSO and average S-DPSO-NoLocal results
2016), can be considered.
is calculated as follows.
12
V.F. Yu, et al. Computers & Industrial Engineering 138 (2019) 106084
for the team orienteering problem. European Journal of Operational Research, 229(2), problems with time windows. Foundations of computing and Decision Sciences, 34,
332–344. 287–306.
Dell'Amico, M., Maffioli, F., & Värbrand, P. (1995). On prize-collecting tours and the Muthuswamy, S., & Lam, S. (2011). Discrete particle swarm optimization for the or-
asymmetric travelling salesman problem. International Transactions in Operational ienteering problem. International Journal of Industrial Engineering: Theory Applications
Research, 2(3), 297–308. and Practice, 18(2), 91–102.
Feillet, D., Dejax, P., & Gendreau, M. (2005). Traveling salesman problems with profits. Pan, Q.-K., Fatih Tasgetiren, M., & Liang, Y.-C. (2008). A discrete particle swarm opti-
Transportation Science, 39(2), 188–205. mization algorithm for the no-wait flowshop scheduling problem. Computers &
Fischetti, M., Gonzalez, J. J. S., & Toth, P. (1998). Solving the orienteering problem Operations Research, 35(9), 2807–2839.
through branch-and-cut. INFORMS Journal on Computing, 10(2), 133–148. Pang, W., Wang, K. -P., Zhou, C. -G., Dong, L. -J., Liu, M., Zhang, H. -Y. et al. (2004).
Garcia, A., Vansteenwegen, P., Arbelaitz, O., Souffriau, W., & Linaza, M. T. (2013). Modified particle swarm optimization based on space transformation for solving
Integrating public transportation in personalised electronic tourist guides. Computers traveling salesman problem. In Proceedings of the Machine Learning and Cybernetics,
and Operations Research, 40(3), 758–774. 2004. Proceedings of 2004 International Conference on (Vol. 4, pp. 2342–2346).
Gedik, R., Kirac, E., Milburn, A. B., & Rainwater, C. (2017). A constraint programming Righini, G., & Salani, M. (2008). New dynamic programming algorithms for the resource
approach for the team orienteering problem with time windows. Computers & constrained elementary shortest path problem. Networks: An International Journal,
Industrial Engineering, 107, 178–195. 51(3), 155–170.
Goksal, F. P., Karaoglan, I., & Altiparmak, F. (2013). A hybrid discrete particle swarm Schilde, M., Doerner, K. F., Hartl, R. F., & Kiechle, G. (2009). Metaheuristics for the bi-
optimization for vehicle routing problem with simultaneous pickup and delivery. objective orienteering problem. Swarm Intelligence, 3(3), 179–201.
Computers & Industrial Engineering, 65(1), 39–53. Solomon, M. M. (1987). Algorithms for the vehicle routing and scheduling problems with
Golden, B. L., Levy, L., & Vohra, R. (1987). The orienteering problem. Naval Research time window constraints. Operations Research, 35(2), 254–265.
Logistics (NRL), 34(3), 307–318. Souffriau, W., Vansteenwegen, P., Vanden Berghe, G., & Van Oudheusden, D. (2013). The
Gong, Y. J., Zhang, J., Liu, O., Huang, R. Z., Chung, H. S. H., & Shi, Y. H. (2012). multiconstraint team orienteering problem with multiple time windows.
Optimizing the vehicle routing problem with time windows: A discrete particle Transportation Science, 47(1), 53–63.
swarm optimization approach. IEEE Transactions on Systems, Man and Cybernetics Part Tang, H., & Miller-Hooks, E. (2005). A TABU search heuristic for the team orienteering
C: Applications and Reviews, 42(2), 254–267. problem. Computers & Operations Research, 32(6), 1379–1407.
Gunawan, A., Lau, H. C., & Lu, K. (2015, 8-10 April). An iterated local search algorithm Tricoire, F., Romauch, M., Doerner, K. F., & Hartl, R. F. (2010). Heuristics for the multi-
for solving the Orienteering problem with time windows. Proceedings of the 15th period orienteering problem with multiple time windows. Computers & Operations
European Conference on Evolutionary Computation in Combinatorial Optimisation Research, 37(2), 351–367.
(EvoStar 2015) (Vol. 9026, pp. 61–73). Copenhagen, Denmark. Tseng, C.-T., & Liao, C.-J. (2008). A discrete particle swarm optimization for lot-streaming
Gunawan, A., Lau, H. C., & Vansteenwegen, P. (2016). Orienteering Problem: A survey of flowshop scheduling problem. European Journal of Operational Research, 191(2),
recent variants, solution approaches and applications. European Journal of Operational 360–373.
Research, 255(2), 315–332. Tsiligirides, T. (1984). Heuristic methods applied to orienteering. Journal of the
Hu, Q., & Lim, A. (2014). An iterative three-component heuristic for the team or- Operational Research Society, 797–809.
ienteering problem with time windows. European Journal of Operational Research, Vansteenwegen, P., Souffriau, W., Berghe, G. V., & Oudheusden, D. V. (2009a). A guided
232(2), 276–286. local search metaheuristic for the team orienteering problem. European Journal of
Kashan, A. H., & Karimi, B. (2009). A discrete particle swarm optimization algorithm for Operational Research, 196(1), 118–127.
scheduling parallel machines. Computers & Industrial Engineering, 56(1), 216–223. Vansteenwegen, P., Souffriau, W., Berghe, G. V., & Oudheusden, D. V. (2011a). The city
Ke, L., Archetti, C., & Feng, Z. (2008). Ants can solve the team orienteering problem. trip planner: An expert system for tourists. Expert Systems with Applications, 38(6),
Computers & Industrial Engineering, 54(3), 648–665. 6540–6546.
Kennedy, J., & Eberhart, R. (1995). Particle swarm optimization. In Proceedings of the Vansteenwegen, P., Souffriau, W., & Oudheusden, D. V. (2011b). The orienteering pro-
Proceedings of IEEE international conference on neural networks (Vol. 4, pp. blem: A survey. European Journal of Operational Research, 209(1), 1–10.
1942–1948). Vansteenwegen, P., Souffriau, W., Vanden Berghe, G., & Van Oudheusden, D. (2009b).
Labadie, N., Mansini, R., Melechovský, J., & Wolfler Calvo, R. (2012). The team or- Iterated local search for the team orienteering problem with time windows.
ienteering problem with time windows: An LP-based granular variable neighborhood Computers & Operations Research, 36(12), 3281–3290.
search. European Journal of Operational Research, 220(1), 15–27. Vansteenwegen, P., & Van Oudheusden, D. (2007). The mobile tourist guide: An OR
Labadie, N., Melechovský, J., & Calvo, R. W. (2011). Hybridized evolutionary local search opportunity. OR Insight, 20(3), 21–27.
algorithm for the team orienteering problem with time windows. Journal of Heuristics, Wang, X., Golden, B. L., & Wasil, E. A. (2008). Using a genetic algorithm to solve the
17(6), 729–753. generalized orienteering problem. The Vehicle Routing Problem: Latest Advances and
Labadie, N., Melechovský, J., & Wolfler Calvo, R. (2010). Hybridized evolutionary local New Challenges. (pp. 263–274), Springer.
search algorithm for the team orienteering problem with time windows. Journal of Yu, V. F., Jewpanya, P., & Kachitvichyanukul, V. (2016). Particle swarm optimization for
Heuristics, 17(6), 729–753. the multi-period cross-docking distribution problem with time windows. International
Lin, S.-W., & Yu, V. F. (2012). A simulated annealing heuristic for the team orienteering Journal of Production Research, 54(2), 509–525.
problem with time windows. European Journal of Operational Research, 217(1), Yu, V. F., Jewpanya, P., Ting, C.-J., & Redi, A. P. (2017a). Two-level particle swarm
94–107. optimization for the multi-modal team orienteering problem with time windows.
López-Ibáñez, M., Dubois-Lacoste, J., Cáceres, L. P., Birattari, M., & Stützle, T. (2016). Applied Soft Computing, 61, 1022–1040.
The irace package: Iterated racing for automatic algorithm configuration. Operations Yu, V. F., Redi, A. A. N. P., Yang, C.-L., Ruskartina, E., & Santosa, B. (2017b). Symbiotic
Research Perspectives, 3, 43–58. organisms search and two solution representations for solving the capacitated vehicle
Montemanni, R., & Gambardella, L. (2009). An ant colony system for team orienteering routing problem. Applied Soft Computing, 52, 657–672.
13