On Multirobot Search for a Stationary Object
Abstract
Two variants of multirobot search for a stationary object in a priori known environment represented by a graph are studied in the paper. The first one is generalization of the Traveling Deliveryman Problem where more than one deliveryman is allowed to be used in a solution. Similarly, the second variant is generalization of the Graph Search Problem. A novel heuristics suitable for both problems is proposed which is furthermore integrated into a clusterfirst route second approach. A set of computational experiments was conducted over the benchmark instances derived from the TSPLIB library. The results obtained show that even a standalone heuristics significantly outperforms the standard solution based on kmeans clustering in quality of results as well as computational time. The integrated approach furthermore improves solutions found by a standalone heuristics by up to 15% at the expense of higher computational complexity.
On Multirobot Search for a Stationary Object
Miroslav Kulich, Libor Přeučil and Juan José Miranda Bront
The article has been published in Proceedings of the European Conference on Mobile Robotics (ECMR) 2017, Paris. ISBN 9781538610961.DOI:10.1109/ECMR.2017.8098696
This is an author submitted version of the paper.
For the revised version, please go to
or contact the authors at
I Introduction
Assume a mobile robot autonomously operating in a priori known environment, in which a stationary object of interest is randomly placed. The objective is to find the object, whose position is not known in advance, in a minimal time. This problem is formulated as the Traveling Deliveryman Problem (TDP) provided that the environment is represented by a graph and probability of appearance of the object is the same for all vertices in the graph. Although TDP is similar to the Traveling Salesman Problem (TSP), objectives of these problems differ and thus an optimal solution for one problem is not necessarily optimal for the second problem [1].
TDP, which is NPhard [2], has been studied from various perspectives during the last few years. Besides exact algorithms introduced by several authors [3, 4], Integer Linear Programming with BranchandCut and BranchCutandPrice approaches were proposed [5, 6, 7] for timedependent TSP which generalizes TDP. The best exact algorithm [5], nevertheless, is able to solve instances with up to 107 vertices to optimality in several hours.
More useful are heuristics and metaheuristics which provide good quality solutions with much lower computational effort. These rely particularly on Greedy Randomized Adaptive Search Procedure (GRASP), introduced originally by Feo and Resende [8], and Variable Neighborhood Search (VNS), proposed by Hansen and Mladenovic [9]. Salehipour et al. [10] employ a GRASP for TDP and compare the impact of VNS procedure as a local search phase with Variable Neighborhood Descent. Mladenovic et al. [11] propose a General VNS (GVNS), which improves Salehipour’s results. Further improvements were achieved by Silva et al. [12] who propose a simple multistart heuristic combined with an Iterated Local Search procedure. To the best of our knowledge, the approach by Silva is thus the one producing the best results, nevertheless, time needed to compute problems containing 100 vertices is more than ten seconds and instances with 200 vertices are computed in approximately one minute.
Approaches used by the robotics community are simpler. Sarmiento et al. [13] propose a modification of breadthfirst algorithm which iteratively constructs all possible routes of the defined length, fixes the most promising one and starts the next search from this route as a prefix. Finally, a modified depthfirst search algorithm with pruning and limited branching was introduced in our previous work [1].
The Graph Search Problem (GSP), introduced in Kutsoupias et al. [14], is formulated under the same settings as TDP, with the only difference that each vertex has assigned probability of finding the object when visiting the vertex and probabilities of the vertices differ in general. Besides some theoretical results regarding approximation schemes presented in Ausiello et al. [15], no further developments are present in the related literature. The only exception is our recent work [16], in which a tailored GRASP metaheuristic for the GSP is introduced which is able to find nearoptimal solutions for TDP and GSP problems up to 107 vertices in about one second of computing time.
Little attention has been paid to multirobot variants of TDP and GSP. On the other hand, some inspiration can be found in approaches to the Multiple Traveling Salesman Problem (mTSP) or other routing problems. Besides genetic algorithms, neural networks, or ant colony optimization, the clusterfirst routesecond approach plays an important role. The key idea of this approach is to split all vertices into clusters based on their location in space ( is the number of salesmen) and solve the traditional Traveling Salesman Problem for each cluster separately. For example, Sathyan et al. [17] use kmeans clustering for the first phase followed by application of a genetic algorithm or 2opt heuristic. Boone et al. [18] employ an initial kmeans clustering and modify it by taking points from the cluster with the largest tour distance and adding them to one of the smaller clusters. Convex hulls, fuzzy logic, and the TSP solution are used to determine which points to switch. Geetha et al. [19] improved kmeans algorithm for the Capacitated Clustering Problem by incorporating a priority measure to the criterion on which are vertices assigned to clusters. We use kmeans clustering followed by solution of Traveling Salesman Problem for each cluster by Chained LinKernighan as a base of a goal assignment strategy in multirobot exploration [20]. The presented experimental results indicate that this method provides more efficient assignment than former approaches.
In this paper we build on experience from the works mentioned above and present a clusterfirst routesecond approach for the Multiple Traveling Deliveryman Problem (mTDP) and the multivehicle case of GSP (mGSP). The approach extends our GRASPbased metaheuristic for the singlevehicle problems [16] by incorporating the clustering phase. The key contribution thus lies in design of a novel clustering method which respects special aspects of mTDP and mGSP. The proposed solution is evaluated computationally and compared with an algorithm based on kmeans. The experimental results show that our solution has potential to be applied in practice as it provides better results than the kmeans based approach in almost all problem instances.
The rest of the paper is organized as follows. The problem is defined in Section II, the proposed clustering is presented in Section III, while the key ideas of the tailored GRASPapproach for TDP and GSP are summarized in Section IV. Computational results including instances of both mTDP and mGSP are presented and discussed in V. Finally, Section VI is dedicated to concluding remarks and future directions.
Ii Problem Formulation
That is, formally, given

a complete undirected graph , where stands for a finite set of vertices and is a set of edges between these vertices: , , , ,

: a cost associated with each edge representing time needed to traverse the shortest path from to ,

: a weight for each vertex representing probability of presence of the searched object at the vertex,

the number of the vehicles , and

: starting vertices of the vehicles (note that several vehicles can start from the same vertex in general).
Define a walk as a sequence of vertices of , i.e. for . The overall objective is then to find a tuple of walks that visits all vertices of at least once (i.e. ) and which minimizes the expected time to find the object:
(1) 
where
is the time when the vertex , the jth vertex of the walk is visited and is a set of all possible sets of walks in . Moreover, all the walks have to start in the given starting vertices, i.e. for . The minimal expected time is then
(2) 
In summary, the aim is to minimize the average time the vertices are visited weighted by probabilities assigned to the vertices.
The multivehicle Traveling Deliveryman Problem is a special variant of mGSP with the only difference that the probability of finding the object is the same for all the vertices in the graph. These probabilities can be omitted from the equations for this case.
Iii Proposed Clustering Approach
The proposed method for solving both mTDP and mGSP follows the clusterfirst routesecond schema. This means that all vertices of the graph are divided into clusters assigned to the vehicles in the first phase. A TDP/GSP solver is then run for each cluster separately to optimize the order in which the vertices in the clusters are visited.
The clustering approach whose scheme is depicted in Algorithm 1 has a greedy nature. The algorithm starts with initialization of clusters: each cluster contains the starting vertex of the vehicle it is assigned to and current time needed to traverse each route is set to zero (lines 1–1). Moreover, the set of all not assigned graph vertices is set (line 1).
The main part of the algorithm is a loop between lines 1 and 1 which is processed until is empty. In each iteration of the loop, each not yet assigned vertex is examined to attach to each of the routes. Time in which the vertex is visited is computed first (line 1, followed by evaluation of a penalty function (line 1). This function was designed to prefer vertices that are visited earlier and with higher probability of the object of interest at them.
The pair with the lowest value of the penalty function is chosen and the vertex is attached to the end of (line 1) and time needed to traverse the is updated accordingly (line 1). Finally, is removed from (line 1). Note that the algorithm does not only return partition of vertices into clusters, but also their orders within the clusters (line 1). The result can be thus used as a solution of mTDP/mGSP. An example of a solution found by the algorithm is shown in Fig. 1.
Iv Metaheuristic for a singlevehicle case
Having the vertices partitioned into clusters, the second step is to find the best order for each cluster. To do that, we employ the greedy randomized adaptive search procedure (GRASP) metaheuristic tailored for TDP and GSP [16]. The general scheme of the GRASP is shown in Algorithm 2.
The value of the best already found solution is initially set to a high number in the algorithm (line 2). The metaheuristic then consecutively constructs initial solutions using some simple, typically greedy, heuristic (line 2). The obtained solution is improved by a sequence of local search steps (line 2) and its cost is updated accordingly (line 2). If the improved solution is better than the current best solution, the best solution and its cost are updated (lines 2–2). After all initial solutions are processed, the best solution found is returned (line 2). More detailed description of the particular steps of the GRASP follows in the next paragraphs.
We consider two heuristics for initial construction of routes, both using the same general greedy scheme as shown in Algorithm 3. The algorithm starts with a route containing only the start vertex (line 3), consecutively finds the best vertex from vertices not yet connected according to the penalty function . The found vertex is then appended at the end of the route (line 3) and removed from the set of not connected vertices (line 3).
The difference between the two heuristics lies in the definition of , which affects the selection of the next vertex to be visited (line 4). We consider the standard distancebased function, . In order to incorporate the weights for each candidate, we further consider the function . As both heuristics are deterministic, we employ Monte Carlo randomization to generate various initial solutions – the lower the penalty function value for the vertex, the higher probability that the vertex is selected.
After obtaining an initial feasible solution, an improvement phase is performed. In our case, a Variable Neighborhood Descent (VND) [10] is used. The idea of VND is simple: a neighborhood of the current solution is completely searched and the best neigbor replaces the solution. This process is repeated until no improvement is possible. A neighborhood of the route defined by an operator is a set of all routes which are formed from by application of this operator. Two different neighborhoods are considered which are formed by two local search operators:

Swap: Select two vertices in the tour and swap them.

2opt: Select two nonadjacent arcs and replace them by two new arcs, obtaining a new route as a result.
When the result obtained by VND with Swap and 2opt is promising, i.e. its cost is less than 10% of the current best solution, the LKop operator is applied to this result. LKop is an adaptation of LinKernighan operator [22] designed for TSP. It starts with a feasible solution and considers each edge sequentially as a seed for an improvement procedure. The procedure attempts to obtain an improved route by application of a sequence of 2opt moves, not necessarily improving the current solution, with a limited backtracking. If such a better path is found, it is accepted as the new initial solution and the procedure is restarted again from the first edge. Otherwise, the algorithm moves to the next edge, until all edges have been considered as a seed.
As LKop is computationally demanding, the search space is reduced in two ways. First, a length of a sequence of performed 2opt moves is limited to a maximum depth . Moreover, not all edges are considered for each vertex, only limited number of shortest edges is evaluated instead. Detailed description of the method as well as discussion about complexity of the particular steps can be found in [16].
V Results
Performance of the proposed approach has been evaluated for both mTDP and mGSP. The experiments for mTDP were run on a set of standard instances from TSPLIB [21] with sizes between 52 and 1002. As there are no benchmark instances for mGSP, instances from TSPLIB were also used for which probabilities of vertices were generated randomly. To ensure repeatability of experiments, a generator from random.org was utilized for generating 10000 normally distributed random numbers between 1 and 10 and the string ”20160911” was set as a seed^{1}^{1}1We are ready to publish the generated sequence if the paper is accepted.. Random numbers were assigned to vertices respecting the order, i.e. th vertex of an TSPLIB instance has assigned th random number. Moreover, the numbers were normalized so that the sum of probabilities of all vertices for an instance is 1.
Regarding the parameters of the method, we set , limiting the size of sequences of 2opt moves, for first 4 depths of backtracking, and for the rest. was set to 50, generating 100 initial solutions in total. Start positions of all vehicles were set to the first vertex of the instance.
The proposed clusterfirst routesecond approach was compared with pure clustering as proposed in Section III and with an approach combining kmeans clustering and our GRASP metaheuristic. More specifically, we employed kmeans++ – an augmentation of kmeans which significantly improves both the speed and the accuracy of kmeans [23]. We refer to the methods as proposed, clustering, and kmeans.
All experiments were performed within the same computational environment: a workstation with the Intel®Core i73770 CPU at 3.4 Ghz running Linux with the kernel 4.4.0. The algorithms have been implemented in C++ and compiled by clang 3.8.1. with “O2” flag. 50 runs were run for each setup consisting of an instance, a number of vehicles, and a method to provide statistically significant results.
The results for mTDP are presented in Table I. Meaning of the symbols is following: stands for the number of vehicles, BKS for the best known solution (to the best of our knowledge, there is no other mTDP solver and BKS is thus the best solution found by one of the evaluated methods), SD is standard deviation, and is execution time. PDB is the percent deviation to BKS of the best solution values found by the algorithm (denoted as ), i.e. PDB=(BKS)/BKS. Similarly, PDM is the percent deviation of the mean solution value to BKS. PDBs for the method which found the best solution are highlighted in bold. Note that clustering is a deterministic algorithm, therefore SD is always zero and PDM=PDB and are thus omitted.
The results show that proposed outperforms kmeans in all cases except six, sometimes by more than in PDB and by more than in PDM. On the other hand, kmeans produces better results for small numbers of robots, where the highest difference of PDM is less than . clustering lies between these two. Its benefit is much lower computational complexity in comparision to the other methods, with no large gap of produced results to the best found solution. Difference of computational burden between kmeans and the other methods increases with an increasing number of vertices as the kmeans clustering is much slower that the proposed one. This applies especially for higher s, for which the influence of complexity of GRASP is reduced in comparison to clustering and kmeans is thus more than 2 times slower than proposed.
The results for mGSP are presented in Table II in the same way as for mTDP. The running time of all methods slightly increased in comparison to mTDP, but the situation remains the same regarding quality of solutions. proposed produces best results in the majority of cases, followed by clustering. Again, kmeans found best solutions for several instances and , but the gap does not exceed .
Problem  M  BKS  clustering  proposed  kmeans  

PDB  T [ms]  PDB  PDM  SD  T [ms]  PDB  PDM  SD  T [ms]  
berlin52  2  70235  3.98  0.24  0  0  0.79  42.67  6.82  15.76  6070.62  64.03 
4  39746  0.78  0.25  0  0  0  19.68  8.84  12.77  1052.73  31.31  
6  30563  0.03  0.27  0  0  0  8.75  14.24  18.07  824.95  17.48  
8  25470  1.34  0.30  0  0  0  6.61  13.53  21.11  1137.95  12.69  
10  23919  1.01  0.35  0  0  0  5.14  14.83  19.05  742.42  8.96  
bier127  2  2354332  10.03  0.78  1.59  2.74  8388.61  396.88  0  7.66  142517.02  540.77 
4  1228367  13.10  0.64  5.84  5.84  0  116.97  0  16.83  80731.98  251.61  
6  879448  4.95  0.65  0  0  0  82.52  17.52  24.22  47044.46  183.57  
8  713125  0.97  0.66  0  0  0  52.17  14.96  23.25  27229.50  122.54  
10  612336  0.35  0.73  0  0  0  38.65  19.48  26.01  18738.51  99.08  
gil262  2  153716  8.66  3.23  0  0.98  601.31  3055.23  0.06  4.32  3130.36  4342.95 
4  87114  6.96  2.16  0  0.21  81.67  1019.36  12.65  13.30  209.34  2187.43  
6  65428  3.10  2.07  0  0.04  22.76  599.17  13.56  18.98  2124.00  1168.37  
8  55306  1.90  2.10  0  0.01  8.14  447.16  16.25  21.84  1566.33  776.67  
10  50292  0.75  2.18  0  0  2.63  329.39  19.43  23.64  1417.02  617.23  
lin318  2  3140312  15.07  4.29  4.55  5.75  15004.90  5855.93  0  2.92  32535.88  5931.95 
4  1811206  6.46  2.92  0  0.24  2817.56  1644.35  1.80  7.44  36532.68  2239.29  
6  1431946  4.18  2.86  0  0.08  1004.02  940.59  2.35  5.92  31411.96  1371.37  
8  1214427  3.24  2.85  0  0.03  292.51  563.80  4.56  8.13  44304.42  976.14  
10  1129348  3.93  3.03  0  0.01  256.28  565.05  3.55  6.49  27180.85  760.35  
pcb442  2  5292831  5.07  9.13  0  0.56  17515.61  14006.46  5.56  6.46  26968.07  24343.18 
4  2849704  4.96  6.08  0  0.44  7294.97  3758.14  14.27  14.61  6929.25  8974.81  
6  2055340  2.07  5.75  0  0.14  2272.75  1641.71  17.98  21.26  33959.70  4861.82  
8  1607307  1.65  5.73  0  0.11  1234.00  1251.63  26.51  30.42  30783.56  3115.88  
10  1402893  2.74  5.84  0  0.05  898.36  988.54  29.37  33.29  24376.01  2261.04  
rat575  2  994166  7.01  16.96  0  0.96  3631.90  37961.41  2.20  3.10  3053.47  66531.58 
4  524957  6.65  10.47  0  0.50  1110.60  9644.29  9.78  13.40  12210.99  23472.77  
6  375842  6.60  10.20  0  0.22  375.69  4100.55  11.89  13.89  8107.88  11401.33  
8  303082  3.46  10.10  0  0.06  137.15  2312.13  15.63  17.79  5449.48  7426.09  
10  260937  1.37  10.47  0  0.05  101.79  1406.92  18.82  22.19  4480.78  5577.58  
u724  2  7479059  8.28  26.90  0  1.31  39681.60  57579.28  2.86  3.47  24549.00  79037.02 
4  3904506  7.77  17.47  0  0.52  8792.00  16542.24  9.23  12.04  59939.66  26556.46  
6  2926359  5.31  16.85  0  0.38  4477.46  8135.85  10.39  11.53  22159.80  15149.82  
8  2427262  4.49  17.03  0  0.11  1496.06  6363.60  11.95  13.89  28998.38  10828.30  
10  2111492  2.46  17.42  0  0.12  1014.74  3725.07  14.90  16.67  34886.45  8564.65  
pr1002  2  65541078  5.99  52.28  0.35  0.99  215703.18  183435.59  0  0.63  227427.16  279021.00 
4  36553749  13.90  35.78  1.69  2.20  85095.75  53400.13  0  0.75  192716.60  81455.54  
6  26676866  9.48  36.38  0  0.28  33816.36  25943.29  1.17  2.10  318901.94  43332.34  
8  20946133  7.57  36.03  0  0.18  20700.88  14389.91  8.59  10.53  544729.91  30745.18  
10  19540052  6.21  37.82  0.96  1.14  17698.56  9307.68  0  3.34  524410.71  22968.16 
Problem  M  BKS  clustering  proposed  kmeans  

PDB  T [ms]  PDB  PDM  SD  T [ms]  PDB  PDM  SD  T [ms]  
berlin52  2  1289.3665  15.49  0.29  2.55  2.55  0.06  55.73  0  7.67  101.55  65.39 
4  711.9565  8.92  0.32  0  0  0  24.22  5.10  9.70  23.96  40.98  
6  569.3354  1.28  0.33  0  0  0  11.74  8.06  11.66  12.52  21.95  
8  510.9161  2.82  0.36  0  0  0  8.35  4.91  9.25  14.94  14.45  
10  462.7143  0  0.38  0  0  0  4.53  9.43  13.30  16.38  10.43  
bier127  2  16938.3426  16.94  0.92  0  0.58  59.14  465.85  1.19  9.68  1212.99  613.18 
4  9015.8078  10.15  0.78  0  0.11  7.17  179.04  6.09  21.01  774.75  301.05  
6  6439.1727  5.06  0.81  0  0  0.25  112.68  14.08  23.26  368.25  221.56  
8  5297.5682  2.33  0.86  0  0  0  63.20  10.91  22.10  280.29  153.78  
10  4517.5042  1.83  0.94  0  0  0  42.99  15.53  24.25  161.22  120.06  
gil262  2  557.1953  12.84  3.46  0  1.03  2.38  3465.02  0.39  3.18  11.40  4415.25 
4  324.9695  8.78  2.51  0  0.30  0.49  1028.91  9.60  10.06  1.77  2628.16  
6  241.1403  5.21  2.49  0  0.12  0.16  604.07  13.62  17.69  6.33  1410.60  
8  208.0251  4.62  2.57  0  0.03  0.06  378.99  15.12  20.39  6.27  1009.05  
10  195.8603  1.75  2.89  0  0  0  315.60  13.94  18.16  4.62  788.35  
lin318  2  9729.8214  17.30  4.85  5.48  6.23  40.37  6412.44  0  1.41  46.65  6757.29 
4  5614.8969  9.26  3.67  0  0.40  8.24  1769.25  1.00  5.74  112.89  2510.83  
6  4390.3071  4.68  3.52  0  0.16  3.95  878.58  2.62  7.51  118.88  1773.18  
8  3728.5347  4.50  3.77  0  0.02  0.75  606.11  5.42  9.02  135.38  1315.97  
10  3504.8153  4.69  4.13  0  0.01  0.43  547.21  2.99  5.94  96.50  1001.21  
pcb442  2  11670.8481  11.20  10.06  3.23  4.25  45.68  13903.57  0  3.06  155.85  19525.87 
4  6076.4795  5.80  7.07  0  0.39  10.10  3348.96  14.86  15.81  22.50  8445.16  
6  4438.6460  4.89  6.70  0  0.19  3.57  1725.01  17.89  21.13  70.81  5055.13  
8  3634.2044  3.33  7.01  0  0.05  1.21  1113.55  22.60  24.91  61.11  3643.70  
10  3197.8358  3.34  7.64  0  0.01  0.39  733.25  24.93  28.05  47.30  2869.68  
rat575  2  1624.6539  12.92  17.25  0  1.14  8.45  29891.17  0.50  1.17  5.19  50161.28 
4  885.9464  12.11  11.67  0  0.46  2.41  8358.31  4.77  8.81  20.46  20297.80  
6  647.9221  5.97  11.25  0  0.33  1.11  4596.77  5.93  8.06  14.37  11989.79  
8  527.9039  5.70  11.55  0  0.14  0.32  2678.61  9.93  11.43  7.55  8496.11  
10  444.0691  3.56  12.76  0  0.10  0.21  1842.64  15.72  19.20  7.37  6800.49  
u724  2  10053.0689  20.39  27.42  1.63  3.08  47.51  64240.43  0  0.85  31.56  87189.09 
4  5492.4174  12.34  18.58  0  0.52  14.49  16706.83  2.46  5.66  95.87  31098.84  
6  3967.1502  9.06  17.38  0  0.35  4.86  10488.02  7.99  9.06  39.43  18807.40  
8  3377.1366  6.68  18.08  0  0.14  2.61  6682.94  8.28  9.73  24.42  13853.41  
10  2805.0308  4.43  20.14  0  0.10  1.27  4474.89  16.32  17.96  30.07  10550.73  
pr1002  2  60325.4178  17.21  54.04  0  1.22  266.22  242200.87  1.78  3.06  289.47  271763.71 
4  34423.7763  20.83  36.08  5.10  5.62  98.06  52536.92  0  0.99  137.73  77147.53  
6  25056.6643  12.34  34.25  0  0.32  39.35  33415.13  3.26  4.06  236.43  49881.61  
8  20813.4050  9.51  34.61  0  0.24  23.37  19364.56  4.46  6.70  456.05  35652.01  
10  17750.8518  9.21  38.10  0  0.20  15.70  11952.95  5.79  8.58  491.02  25752.29 
Vi Conclusion
We formulated mutlivehicle variants of two routing problems – the Traveling Deliveryman Problem and the Graph Search Problem and introduced a novel clustering approach which is designed especially for these two problems. The proposed clustering was then used together with the GRASP metaheuristics in the clusterfirst routesecond scheme as an integrated approach to the problems. The proposed integrated approach is, based on the performed experimental results, suitable to solve both problems as it outperforms the standard approach based on kmeans clustering in quality of found solutions in the majority of cases with lower computational burden. Moreover, the proposed clustering can be used as a standalone solver as it produces solutions slightly worse than the integrated approach, but substantially faster.
Future research will go in two directions. We would like to use the proposed clustering in GRASP as a constructive heuristic and together with design of neighborhoods for exchanging vertices between routes extend pure GRASP for mTDP and mGSP. The second stream will focus on application of the proposed approach in other robotic applications. Similarly to using a mTSP solver for the exploration task [20] and a GSP solver for search in a priori unknown environment [1, 16], we would like to study properties of mGSP for multirobot search in an unknown space.
Acknowledgments
This work has been supported by the European Union’s Horizon 2020 research and innovation programme under grant agreement No 688117 and the Technology Agency of the Czech Republic under the project no. TE01020197 “Centre for Applied Cybernetics”.
References
 [1] M. Kulich, L. Přeučil, and J. J. MirandaBront, “Single Robot Search for a Stationary Object in an Unknown Environment,” in Robotics and Automation (ICRA), IEEE Int. Conf. on, 2014, pp. 5830–5835.
 [2] F. Afrati, S. Cosmadakis, C. H. Papadimitriou, G. Papageorgiou, and N. Papakostantinou, “The complexity of the travelling repairman problem,” Theoretical Informatics and Applications, 1986.
 [3] L. Gouveia and S. Voß, “A classification of formulations for the (timedependent) traveling salesman problem,” European Journal of Operational Research, vol. 2217, no. 93, 1995.
 [4] I. MéndezDíaz, P. Zabala, and A. Lucena, “A new formulation for the traveling deliveryman problem,” Discrete Appl. Math., vol. 156, no. 17, pp. 3223–3237, Oct. 2008.
 [5] H. Abeledo, R. Fukasawa, A. Pessoa, and E. Uchoa, “The time dependent traveling salesman problem: polyhedra and algorithm,” Mathematical Programming Computation, vol. 5, no. 1, pp. 27–55, Sept. 2012.
 [6] J. J. MirandaBront, I. MéndezDíaz, and P. Zabala, “Facets and valid inequalities for the timedependent travelling salesman problem,” European Journal of Operational Research, May 2013.
 [7] M. T. Godinho, L. Gouveia, and P. Pesneau, “Natural and extended formulations for the TimeDependent Traveling Salesman Problem,” Discrete Applied Mathematics, vol. 164, pp. 138–153, Feb. 2014.
 [8] T. A. Feo and M. G. Resende, “Greedy randomized adaptive search procedures,” Journal of Global Optimization, vol. 6, no. 2, pp. 109–133, 1995.
 [9] P. Hansen and N. Mladenović, “Variable Neighborhood Search,” Computers & Operations Research, vol. 24, no. 1, pp. 1097–1100, 1997.
 [10] A. Salehipour, K. Sörensen, P. Goos, and O. Bräysy, “Efficient GRASP+VND and GRASP+VNS metaheuristics for the traveling repairman problem,” 4OR, vol. 9, pp. 189–209, 2011.
 [11] N. Mladenović, D. Urošević, and S. Hanafi, “Variable neighborhood search for the travelling deliveryman problem,” 4OR, pp. 1–17, 2012.
 [12] M. M. Silva, A. Subramanian, T. Vidal, and L. S. Ochi, “A simple and effective metaheuristic for the Minimum Latency Problem,” European Journal of Operational Research, vol. 221, no. 3, pp. 513–520, 2012.
 [13] A. Sarmiento, R. MurrietaCid, and S. Hutchinson, “A multirobot strategy for rapidly searching a polygonal environment,” in Advances in Artificial Intelligence  IBERAMIA 2004, ser. Lecture Notes in Computer Science, C. LemaÃ®tre, C. A. Reyes, and J. A. GonzÃ¡lez, Eds., vol. 3315. Springer, 2004, pp. 484–493.
 [14] E. Koutsoupias, C. Papadimitriou, and M. Yannakakis, “Searching a fixed graph,” in Automata, Languages and Programming, ser. Lecture Notes in Computer Science, F. Meyer and B. Monien, Eds. Springer Berlin Heidelberg, 1996, vol. 1099, pp. 280–289.
 [15] G. Ausiello, S. Leonardi, and A. MarchettiSpaccamela, “On salesmen, repairmen, spiders, and other traveling agents,” in Algorithms and Complexity, ser. Lecture Notes in Computer Science, G. Bongiovanni, R. Petreschi, and G. Gambosi, Eds. Springer Berlin Heidelberg, 2000, vol. 1767, pp. 1–16.
 [16] M. Kulich, J. J. MirandaBront, and L. Přeučil, “A metaheuristic based goalselection strategy for mobile robot search in an unknown environment,” Computers & Operations Research, 2016, in press.
 [17] A. Sathyan, N. Boone, and K. Cohen, “Comparison of approximate approaches to solving the travelling salesman problem and its application to uav swarming,” International Journal of Unmanned Systems Engineering, vol. 3, no. 1, pp. 1–16, 2015.
 [18] N. Boone, A. Sathyan, and K. Cohen, “Enhanced approaches to solving the multiple traveling salesman problem,” in AIAA Infotech@ Aerospace. American Institute of Aeronautics and Astronautics, 2015.
 [19] S. Geetha, G. Poonthalir, and P. Vanathi, “Improved kmeans algorithm for capacitated clustering problem,” INFOCOMP Journal of Computer Science, vol. 8, no. 4, pp. 52–59, 2009.
 [20] J. Faigl, M. Kulich, and L. Přeučil, “Goal assignment using distance cost in multirobot exploration,” in Intelligent Robots and Systems (IROS), 2012 IEEE/RSJ Int. Conf. on, oct. 2012, pp. 3741 –3746.
 [21] G. Reinelt, “Tsplib  a traveling salesman problem library.” INFORMS Journal on Computing, vol. 3, no. 4, pp. 376–384, 1991.
 [22] S. Lin and B. Kernighan, “An effective heuristic algorithm for the travelingsalesman problem,” Operations research, 1973.
 [23] D. Arthur and S. Vassilvitskii, “Kmeans++: The advantages of careful seeding,” in Proceedings of the Eighteenth Annual ACMSIAM Symposium on Discrete Algorithms, ser. SODA ’07. Philadelphia, PA, USA: Society for Industrial and Applied Mathematics, 2007, pp. 1027–1035.