On Multi-robot Search for a Stationary Object

On Multi-robot Search for a Stationary Object

Miroslav Kulich, Libor Přeučil and Juan José Miranda Bront The authors are with Czech Institute of Informatics, Robotics and Cybernetics, Czech Technical University in Prague,Zikova 1903/4, 166 36 Prague, Czech Republic   kulich@cvut.cz,lhotsvoj@fel.cvut.cz, preucil@cvut.cz    Miroslav Kulich, Libor Přeučil and Juan José Miranda Bront Miroslav Kulich, Libor Přeučil are with Czech Institute of Informatics, Robotics and Cybernetics, Czech Technical University in Prague,Zikova 1903/4, 166 36 Prague, Czech Republic {miroslav.kulich, libor.preucil}@cvut.cz Juan José Miranda Bront is with Departamento de Computación, Facultad de Ciencias Exactas y Naturales, Universidad de Buenos Aires, Argentina  jmiranda@dc.uba.ar
Abstract

Two variants of multi-robot 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 cluster-first 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 k-means 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.

\pdfstringdefDisableCommands

On Multi-robot 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 978-1-5386-1096-1.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 NP-hard [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 Branch-and-Cut and Branch-Cut-and-Price approaches were proposed [5, 6, 7] for time-dependent 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 meta-heuristics 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 multi-start 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 breadth-first 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 depth-first 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 meta-heuristic for the GSP is introduced which is able to find near-optimal solutions for TDP and GSP problems up to 107 vertices in about one second of computing time.

Little attention has been paid to multi-robot 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 cluster-first route-second 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 k-means clustering for the first phase followed by application of a genetic algorithm or 2-opt heuristic. Boone et al. [18] employ an initial k-means 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 k-means algorithm for the Capacitated Clustering Problem by incorporating a priority measure to the criterion on which are vertices assigned to clusters. We use k-means clustering followed by solution of Traveling Salesman Problem for each cluster by Chained Lin-Kernighan as a base of a goal assignment strategy in multi-robot 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 cluster-first route-second approach for the Multiple Traveling Deliveryman Problem (mTDP) and the multi-vehicle case of GSP (mGSP). The approach extends our GRASP-based meta-heuristic for the single-vehicle 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 k-means. The experimental results show that our solution has potential to be applied in practice as it provides better results than the k-means 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 GRASP-approach 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 j-th 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 multi-vehicle 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 cluster-first route-second 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 11). 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.

Fig. 1: The result of the proposed clustering method for the bier127 problem [21] and 4 vehicles.
Input: -- the number of vehicles
                   -- a graph
                   -- costs of edges
                   -- probabilities associated with vertices
                   -- start vertices of vehicles
Output: -- a tuple of sequences representing clusters
1 for  to  do
2      
3      
4
5 while  do
6      
7       foreach  do
8             foreach  do
9                   , where
                       is the index of and
                       is the last vertex of the route
10                  
11                   if  then
12                        
13                        
14                        
15                        
16                        
17                  
18            
19            
20            
21            
22      
23return
Algorithm 1 Proposed clustering algorithm.

Iv Meta-heuristic for a single-vehicle 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) meta-heuristic 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 meta-heuristic 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 22). 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.

1.
2 foreach  do
3       for  do
4             Obtain a feasible route using .
5             Improve route by applying a local search step
6             Update cost of .
7             if  then
8                  
9                  
10            
11      
12return
Algorithm 2 GRASP scheme.

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 distance-based 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.

  • 2-opt: Select two non-adjacent arcs and replace them by two new arcs, obtaining a new route as a result.

When the result obtained by VND with Swap and 2-opt is promising, i.e. its cost is less than 10% of the current best solution, the LK-op operator is applied to this result. LK-op is an adaptation of Lin-Kernighan 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 2-opt 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 LK-op is computationally demanding, the search space is reduced in two ways. First, a length of a sequence of performed 2-opt 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].

Input:    -- a graph
                   -- costs of edges
                   -- probabilities associated with vertices
                   -- starting vertex
Output: -- a route
1
2
3 while  do
4      
5      
Return path .
Algorithm 3 General greedy scheme.

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 ”2016-09-11” was set as a seed111We 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 2-opt 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 cluster-first route-second approach was compared with pure clustering as proposed in Section III and with an approach combining k-means clustering and our GRASP meta-heuristic. More specifically, we employed k-means++ – an augmentation of k-means which significantly improves both the speed and the accuracy of k-means [23]. We refer to the methods as proposed, clustering, and k-means.

All experiments were performed within the same computational environment: a workstation with the Intel®Core i7-3770 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 k-means in all cases except six, sometimes by more than in PDB and by more than in PDM. On the other hand, k-means 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 k-means and the other methods increases with an increasing number of vertices as the k-means 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 k-means 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, k-means found best solutions for several instances and , but the gap does not exceed .

Problem M BKS clustering proposed k-means
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
TABLE I: Comparison of the algorithms for mTDP.
Problem M BKS clustering proposed k-means
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
TABLE II: Comparison of the algorithms for mGSP.

Vi Conclusion

We formulated mutli-vehicle 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 cluster-first route-second 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 k-means 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 multi-robot 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. Miranda-Bront, “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 (time-dependent) traveling salesman problem,” European Journal of Operational Research, vol. 2217, no. 93, 1995.
  • [4] I. Méndez-Dí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. Miranda-Bront, I. Méndez-Díaz, and P. Zabala, “Facets and valid inequalities for the time-dependent 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 Time-Dependent 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. Murrieta-Cid, and S. Hutchinson, “A multi-robot 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. Marchetti-Spaccamela, “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. Miranda-Bront, and L. Přeučil, “A meta-heuristic based goal-selection 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 k-means 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 multi-robot 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 traveling-salesman problem,” Operations research, 1973.
  • [23] D. Arthur and S. Vassilvitskii, “K-means++: The advantages of careful seeding,” in Proceedings of the Eighteenth Annual ACM-SIAM Symposium on Discrete Algorithms, ser. SODA ’07.   Philadelphia, PA, USA: Society for Industrial and Applied Mathematics, 2007, pp. 1027–1035.
Comments 0
Request Comment
You are adding the first comment!
How to quickly get a good reply:
  • Give credit where it’s due by listing out the positive aspects of a paper before getting into which changes should be made.
  • Be specific in your critique, and provide supporting evidence with appropriate references to substantiate general statements.
  • Your comment should inspire ideas to flow and help the author improves the paper.

The better we are at sharing our knowledge with each other, the faster we move forward.
""
The feedback must be of minimum 40 characters and the title a minimum of 5 characters
   
Add comment
Cancel
Loading ...
332959
This is a comment super asjknd jkasnjk adsnkj
Upvote
Downvote
""
The feedback must be of minumum 40 characters
The feedback must be of minumum 40 characters
Submit
Cancel

You are asking your first question!
How to quickly get a good answer:
  • Keep your question short and to the point
  • Check for grammar or spelling errors.
  • Phrase it like a question
Test
Test description