Abstract

The capacitated team orienteering problem with time windows (CTOPTW) is a problem to determine players’ paths that have the maximum rewards while satisfying the constraints. In this paper, we present the exact solution approach for the CTOPTW which has not been done in previous literature. We show that the branch-and-price (B&P) scheme which was originally developed for the team orienteering problem can be applied to the CTOPTW. To solve pricing problems, we used implicit enumeration acceleration techniques, heuristic algorithms, and ng-route relaxations.

1. Introduction

The orienteering problem (OP) [1], an NP-hard integer problem (IP), originates from a sport in which a player finds a path that has the maximum reward. The OP arises in a map with a set of points and connecting arcs. The player moves from the starting point and has to reach the ending point within a time limit. Each point has its own reward and the player can collect rewards by visiting points. Many exact and heuristic algorithms have been proposed to solve the OP [2].

The team orienteering problem (TOP) is a variant of the OP that considers multiple players. TOP is also NP-hard. Many algorithms have been proposed for the TOP, including heuristic algorithms [313] and exact algorithms [1417]. Some practical problems in the field of the vehicle routing research exhibit the form of OP/TOP. For example, the home fuel delivery problem and the recruiting problem have the same problem characteristics with the OP/TOP [3]. Therefore, several vehicle routing constraints like the vehicle capacity and time windows constraints have been considered in the TOP.

The TOP with time windows (TOPTW) is a variant of the TOP that additionally considers the time window constraint; that is, a player can visit a point only within a specified interval (time window). Many heuristic algorithms [1827] and one exact algorithm [17] have been proposed for the TOPTW.

The capacitated TOP (CTOP) is a variant of the TOP that additionally considers a capacity constraint where each point has its own demand and all players have the same capacity. A player cannot visit a set of points if the sum of the demands of the visited points exceeds the player’s capacity. Our previous studies found two heuristic algorithms [28, 29] and one exact algorithm [30] for the CTOP.

The capacitated TOP with time windows (CTOPTW) is a hybrid of the CTOP and TOPTW. The CTOPTW was first studied in [31] and the authors proposed the iterated local search (ILS) heuristic algorithm. Later, [3235] proposed improving algorithms but proposed no exact algorithm for the CTOPTW. To the best of our knowledge, our paper is the first to present the exact solution of the CTOPTW.

We apply the branch-and-price (B&P) scheme of Boussier et al. [16] to the CTOPTW. The B&P scheme was originally developed for the TOP, but it can be applied to the CTOPTW without any modification. We develop implicit enumeration to solve pricing problems that arise in the B&P for the CTOPTW.

The remainder of this paper is organized as follows. Section 2 describes the exact algorithm. Section 3 contains the computational results and Section 4 concludes the paper.

2. A Branch-and-Price for the CTOPTW

Section 2.1 provides a mathematical formulation of the CTOPTW. Section 2.2 describes the B&P scheme applied to the CTOPTW. Section 2.3 describes the implicit enumeration developed to solve pricing problems.

2.1. Mathematical Formulation

The CTOPTW arises in the directed graph , where represents a set of points and represents a set of arcs that connect pairs of points. identical players move from starting point to ending point . represents the set of points where players can collect a reward by visiting a point . A player takes travelling time to traverse an arc . The CTOPTW has the following constraints:(C1) A point can be visited only once by only one player.(C2) A player cannot take more than time to move from to .(C3) A point has demand and a player can visit a set of points only if the sum of their demands does not exceed the player’s capacity .(C4) A player can visit only during the interval . If the player arrives at before , the player must wait until . The player takes time to finish the visit at the point.Let be a set of paths from to that satisfies (C1)–(C4). Using the mathematical formulation of [16, 17], the CTOPTW can be formulated in mathematical form as .where represents the sum of collected rewards by traversing the path ; decision binary variable has the value if the path is used and 0 otherwise; and is 1 if path visits point and 0 otherwise. The objective function (1) maximizes the sum of collected rewards. Constraint (2) ensures that no point is visited more than once. Constraint (3) limits the number of players to be less than or equal to . Constraint (4) forces to be binary. This formulation has the same form as the set partitioning problem (SPP) with an exponential number of columns which is known to be NP-hard [36].

2.2. Branch-and-Price

Branch-and-price (B&P) is a special case of branch-and-bound (B&B) [37], which is an exact method used to find the optimal solution of an IP. The B&B transforms an IP to a linear problem (LP) by relaxing the integer constraints, solves the LP at the root node, and terminates if the optimal solution of the LP is an integer. Otherwise, the B&B branches the root node into some child nodes according to a predefined branching rule. For each child node, the B&B repeatedly solves an LP and decides whether it branches or bounds the child node. The repetition ends when the optimal solution of the IP is found. The B&B can be used to find the optimal solution of . If its LPs have an exponential number of columns, however, the B&B may fail.

B&P solves an LP at each node by the column generation technique. The column generation technique helps to find the optimal solution of an LP by considering only a small portion of its columns. In this paper, B&P is more appropriate than B&B because each of our benchmark instances has 102 points. B&P requires the user to define the branching rule. The simplest branching rule to fix a noninteger variable as 1 or 0 entails tremendous computational difficulty [16]. Therefore, the user may choose to define an alternative rule that forces a node or an arc to be used or not. Previous B&P papers about the TOP [16], the CTOP [30], and the TOPTW [17] all used the identical branching rule, and we also use it in this paper.

The column generation technique decomposes the original LP with many columns into master and pricing problems. The master problem contains only a small portion of the original columns. After the technique solves the master problem, it solves the pricing problem to detect a column that can improve the solution of the master problem. If it detects a column, it adds the column to the master problem as a new column. Otherwise, the technique terminates and concludes that the optimal solution of the master problem is also optimal for the original LP.

The pricing problem of the B&P in the CTOPTW is a form of the elementary shortest path problem with capacity and time windows (ESPPCTW). The ESPPCTW is a problem of determining the elementary path from the starting point to the ending point that collects the maximum net rewards while satisfying the two constraints. The ESPPCTW arises in the same graph with the CTOPTW, except that a point has a dual reward and its net reward is calculated as .

Let represent the sum of dual rewards that are collected by traversing path . The optimal path of the ESPPCTW is found by solving

2.3. Implicit Enumeration

The ESPPCTW is also NP-hard [38]. Full enumeration lists all feasible paths from to and selects the path with the maximum net reward. In full enumeration, a state is defined as a path from to with a label , where is the index of the last visited point, is the sum of rewards of the visited points, is the sum of demands of the visited points, is the current time of the path, and is an -sized binary vector in which if the path has visited and 0 otherwise.

can be extended to if , , and ; when this is done, the label of the extended state is updated as

Since full enumeration generates an exponential number of states, previous studies [3942] have used a version of full enumeration called implicit enumeration to solve the ESPPCTW. Implicit enumeration allows domination between states. A state dominated by another state can be discarded without loss of optimality. As the number of dominated states increases, both the number of states generated and the computational effort decrease. Given two states and , in the same node, dominates if

We use implicit enumeration to solve the pricing problem of the B&P or ESPPCTW but adopt two acceleration techniques to reduce the computational burden. The first is a heuristic algorithm proposed by Tae and Kim [17]. The aim of solving the ESPPCTW is to find an improving column. Although both implicit enumeration and the heuristic algorithm can find an improving column, each has a drawback. Implicit enumeration is computationally expensive but guarantees the optimality of the column, whereas the heuristic algorithm is computationally inexpensive but cannot guarantee optimality. Thus, we select implicit enumeration to solve the ESPPCTW when the heuristic algorithm fails to find an improving column.

The second technique is -route relaxation of Baldacci et al. [43], which is one type of elementary constraint relaxation. In this relaxation, each point has a group of points called -group or . -relaxed state in the point can be extended to a point even though has visited if the extension is feasible and .

As a new state is generated in the implicit enumeration, the state is joined with -route relaxed states. This joining provides the upper bound of the state; if the upper bound is less promising than the lower bound, the state is ignored. -route relaxation has achieved great acceleration in previous papers [17, 42, 43]. -route relaxation requires that a constant be set. If is a large number, the relaxation provides strong bounds but requires extensive computational time to find them, whereas if is small, the relaxation provides weak bounds but requires less time [43]. Considering the tradeoffs, we set [17].

3. Computational Results

Garcia et al. [31] made benchmark instances based on the instances of Solomon [44] and Cordeau et al. [45]. They tested their algorithm on these instances by setting the number of players to one and two. By the definition of the CTOPTW, the number of players should be at least two. However, they considered single player case because the case had been solved exactly by Righini and Salani [46]. In this paper, we only consider case of two players.

In each instance, each point has its own coordinates, demand, reward, and time windows. The travelling time between the points is calculated as Euclidean distance. The starting and ending points are located in the same positions in every instance. The constant of the time limitation constraint or is calculated as which is the end of the time window of the ending point minus the start of the time window of the starting point.

Table 1 compares the optimal solution of each instance with the best solutions reported in Garcia et al. [31] and Souffriau et al. [35]. We do not bring the solutions of Aghezzaf and Fahim [34] into this table since we have a reason to doubt that they used the different instances. Aghezzaf and Fahim [34] claimed they used the instances of Garcia et al. [31]. However, they considered as the capacity constraint while Garcia et al. [31] considered (here, we use the same notation with Garcia et al. [31]).

Notations in Table 1 represent the following: , the number of players; , the value of vehicle capacity; , the objective value found by algorithms (see Garcia et al. [31]); , the objective value found by Garcia et al.’s [31] iterated local search (ILS) algorithm; , the objective value found by Souffriau et al.’s [35] greedy randomized iterated local search (GRILS) algorithm; , the value of upper bound at the root node found by our algorithm; , the value of upper bound found by our algorithm; , the value of lower bound found by our algorithm; , the value of computational time in seconds; “—” means no value is found.

Computational tests are performed using an Intel i7 3.6 GHz processor with 8 GB RAM. Our program is built on a Microsoft Visual Basic C++ environment and LPs are solved by IBM CPLEX. The program is run on a single core. Computation time is limited to 7200 seconds. All the benchmark instances and optimal solutions can be found in https://sites.google.com/site/optimizationlaboratory. The distance between points are calculated by using a Euclidean distance that is rounded to the first decimal for Solomon’s instances (c101–c109, r101–r112, rc101–rc108) and to the second for Cordeau’s instances (pr01–pr10).

We found all optimal solutions for Solomon’s instances but only one for Coredeau. Coredeau’s instances were more difficult to solve since they have wider time windows and more number of players. If the time windows are widened, the length of a feasible path (the number of the visited players by a path) increases. Then, the pricing problem or ESPPCTW becomes more hard to solve. Then, the B&P takes much more computational time to find the optimal solution. Similar computational results can be found in the paper of Tae and Kim [17] who solved the TOPTW by B&P. They also found many optimal solutions of Solomon’s instances but only a few for Coredeau.

4. Conclusion

In this paper, we optimally solved some CTOPTW instances which has not been done previously. We showed that the B&P scheme of Boussier et al. [16], which was developed for the TOP, can be applied to the CTOPTW. To solve pricing problems, we used implicit enumeration acceleration techniques, heuristic algorithms [17], and -route relaxations [43]. We found 30 optimal solutions out of 39 benchmark instances of Garcia et al. [31].

Competing Interests

The authors declare that they have no competing interests.

Acknowledgments

This study has been funded by following two projects of KITECH (Korea Institute of Industrial Technology). Those projects are “Simulation Based Sewing Process Optimization Algorithm” and “A Development of the KLM System for the Stabilization of Kimchi Raw Material and Study on Food Industry.”