Branch-and-cut algorithms for the covering salesman problem

The Covering Salesman Problem (CSP) is a generalization of the Traveling Salesman Problem in which the tour is not required to visit all vertices, as long as all vertices are covered by the tour. The objective of CSP is to find a minimum length Hamiltonian cycle over a subset of vertices that covers an undirected graph. In this paper, valid inequalities from the generalized traveling salesman problem are applied to the CSP in addition to new valid inequalities that explore distinct aspects of the problem. A branch-and-cut framework assembles exact and heuristic separation routines for integer and fractional CSP solutions. Computational experiments show that the proposed framework outperformed methodologies from literature with respect to optimality gaps. Moreover, optimal solutions were proven for several previously unsolved instances.


Introduction
Consider a set of sites scattered in the plane that must be covered by a single-vehicle tour.Knowing that each site covers some of its neighbors, what is the minimum length of an enclosed vehicle tour in which all sites are covered?This question is addressed by the Covering Salesman Problem (CSP), proposed by Current and Schilling [5] in 1989.More formally, given an undirected graph, the CSP objective is to find the shortest Hamiltonian cycle on a subset of vertices that covers the graph.The special case where each vertex covers strictly itself is the Travelling Salesman Problem (TSP) [2], which follows that CSP is also NP-hard.
Since its proposal, the CSP has attracted the attention of researchers due to its complexity and numerous applications.These applications arise in scenarios where it is unrealistic to visit all locations, e.g., rural health services, areas affected by natural disasters, or planning mobile service units [5].
Several variants of CSP were investigated.Current et al. [7] studied the Shortest Covering Path Problem (SCPP).The goal is to find a minimum cost - path in a network that covers all vertices.The authors proposed two methods to solve the SCPP: a Lagrangian relaxation and a branch-and-bound algorithm that makes use of the obtained dual bounds.
Current and Schilling [6] introduced two bi-criterion routing problems: the Median Tour Problem (MTP) and the Maximal Covering Tour Problem (MCTP).Assuming a network with  vertices and a value  ( ), the criteria for both problems are (i) to find a minimum length tour that visits exactly  of the  vertices and (ii) to maximize the accessibility of the vertices that are not in the tour.The problems differ in the way the accessibility of the second criterion is evaluated.In MTP, the second criterion is to minimize the sum of distances from each unvisited vertex to its closest vertex in the tour.In MCTP, the second criterion is to minimize the number of uncovered vertices.The authors proposed mathematical formulations and heuristics to solve both MTP and MCTP.Their methodologies were tested on a real-life scenario requiring the optimal location and sequence of stops for overnight mail service.
Another variant of CSP, studied by Gendreau et al. [13], is the Covering Tour Problem (CTP).Let  = ( ∪ , ) be an undirected graph, where  ∪  is the set of vertices and  is the set of edges.Vertex  0 is the depot,  is the set of vertices that can be visited,  ⊆  is the set of vertices that must be visited ( 0 ∈  ), and  is the set of vertices that must be covered but cannot be visited.The goal of the CTP is to determine a minimum length tour that visits a subset of vertices  ⊆  such that  ⊆  and each vertex of  is covered by some vertex in .The authors proposed heuristics and a branch-and-cut algorithm to solve the CTP.
Golden et al. [14] proposed a generalized version of the CSP called the Generalized Covering Salesman Problem (GCSP).Given an undirected graph  = (, ), each vertex  ∈  has a covering demand   , meaning vertex  has to be covered at least   times.In addition, there is a fixed cost   that incurs when the tour visits vertex .The objective of the GCSP is to minimize the solution cost which is given by the sum of the tour length and the costs of the visited vertices.The authors developed local searches that explore exchange, removal, and insertion of tour vertices to escape from local optimum.
Another similar problem to the CSP is the Generalized Traveling Salesman Problem (GTSP).In GTSP, the vertices are partitioned into disjoint subsets, called clusters, and the goal is to determine the minimum length tour that visits exactly one vertex from each cluster.The GTSP is a special case of the CSP, where each cluster can be modeled as a subset of vertices that mutually cover themselves.Fischetti et al. [12] propose a branchand-cut algorithm based on exact and heuristic separation routines for some families of valid inequalities for the GTSP.These inequalities are translated for the CSP in Section 3.
Zhang and Xu [26] proposed the online CSP, where the vehicle will face up to  blocked edges not known a priori during its tour traversal.The objective is to find a minimum length tour that covers all vertices while bypassing the blocked edges.The authors presented a (+)-competitive algorithm, where  = 1  2 + (4+2)   +2,  is the approximation ratio for the Steiner Tree Problem,  is the maximum number of vertices that can cover an arbitrary vertex and  is the radius which defines the covering neighbourhood of each vertex.
Many works in literature have given attention to the geometric CSP, also known as the Close Enough Traveling Salesman Problem (CETSP).In this version, each vertex has its neighborhood defined as a compact region of the plane.The goal is to find a minimum length tour that starts from a depot and intercepts all neighborhood sets, thus covering all its corresponding vertices.Approximation algorithms, heuristics and methodologies based on ILP were developed for this version [3,4,10,11,15,21].
Table 1 emphasizes the main differences between CSP and its counterparts.In CTP, among the vertices that can be visited, for some of them the visitation is mandatory.As for the vertices that must be covered, in CTP these vertices cannot be visited.In GTSP, the vertices are clustered into disjoint neighborhoods, meaning each vertex covers exactly the vertices in the cluster it belongs.The vertices in GCSP may require multiple coverings and each visitation incurs into a fixed cost.Finally, in CETSP the vertices are covered by a compact region on the plane instead of being covered by a subset of vertices.All of these problems, despite sharing the idea of joining vehicle routing with set covering, contain important distinctions with respect to CSP.This explains why this problem still requires customized exact and heuristic methodologies.Some solution methodologies were proposed in the literature for the CSP.Current and Schilling [5], for example, developed a two-step heuristic to solve the CSP: the first step solves a set cover problem; the second step solves the TSP on the vertices determined by the first step.More than two decades later Salari and Naju-Azimi [19] revisited the problem by proposing a heuristic for the CSP embedded within an integer linear programming (ILP) framework.First, they employ constructive heuristics to find good initial solutions and then the tour vertices are rearranged by the use of ILP techniques in an attempt to reduce its length.Salari Table 1.Summary of the main differences between CSP, CTP, GTSP, GCSP and CETSP.

Multiple coverings
Geometric neighborhood CSP CTP GTSP GCSP CETSP et al. [20] gave a polynomial-size formulation and a hybrid heuristic for the CSP, which combines ant colony optimization and dynamic programming.The formulation of Salari et al., to the best of our knowledge, composes the state-of-the-art exact methodology for the CSP.
Venkatesh et al. [24] proposed a multi-start iterated local search (MS-ILS) algorithm for the CSP with a variable degree of perturbation.Computational results show that the proposed approach is competitive with other state-of-the-art heuristic approaches.Zang et al. [25] reformulated the CSP as a bilevel CSP with a leader and a follower sub-problem and proposed two parallel variable neighborhood search (PVNS) heuristics, namely, synchronous "master-slave" PVNS and asynchronous cooperative PVNS.Computational results show that the PVNS has improved previously best known solutions.Pandiri et al. [17] developed two hybrid metaheuristic approaches for the CSP.The first is based on the artificial bee colony algorithm and the second is based on the genetic algorithm.Both approaches were competitive with the state-of-the-art heuristics.Lu et al. [16] presented a hybrid evolutionary algorithm (HEA) that assembles a crossover operator with solution reconstruction, a destroy-and-repair mutation operator and a two-phase tabu search.The HEA also uses Lin-Kernighan local search on multiple stages.Computational results show that for 21 out of the 27 large instances, the HEA has improved previously best known solutions, while for small and medium instances the HEA has achieved previously best known solutions.
Recent applications of the CSP concern the routing of drones, which involves additional operational constraints.For example, Vásquez et al. [23] studied the Travelling Salesman Problem with Drone (TSP-D).Given a complete digraph, each node must be visited either by a vehicle route starting and ending at a depot or by a drone executing dispatches to customers from the vehicle during the route.When a drone visits a customer, it must fly back to meet the vehicle at a scheduled location on its route.The objective is to minimize travel time.The authors proposed a mixed integer programming formulation and valid inequalities for the TSP-D, solving it by Bender's decomposition using a two-stage approach: first selecting a subset of customers to be visited by the vehicle and then defining where the drone will be dispatched for the remaining customers.Computational experiments validated the performance of the algorithm using a benchmark of instances randomly generated.
A generalization of the TSP-D that considers more than one drone is the Travelling Salesman Problem with Multiple Drones (TSP-MD).Tiniç et al. [22] proposed a flow-based and a cut-based mixed integer linear programming formulations for TSP-MD.Also, branch-and-cut algorithms were developed for relaxations of the proposed formulations.The computational experiments showed that the branch-and-cut approaches outperformed the flow-based formulation.A sensitivity analysis was also made with various problem parameters, exploring scenarios such as vehicle operating cost, speed, and drone endurance.
The Flying Sidekick Travelling Salesman Problem (FSTSP) is another drone routing problem similar to the TSP-D.In FSTSP, there are some nodes that can be visited only by the vehicle, and each drone flight is limited by battery duration.Dell'Amico et al. [8] proposed a branch-and-bound exact algorithm and a heuristic, testing them on instances from the literature.The results showed that the branch-and-bound algorithm was effective in solving small instances while the heuristic approach was able to produce high-quality solutions for larger instances.
Our contributions.Despite being well studied in the point of view of heuristics, the CSP still lacks effective exact methods.Many of the current best-known solutions still had not been proven optimal or had an open optimality gap due to the absence of a dual bound.The first branch-and-cut framework is proposed for the CSP to address this matter.The framework employs exact and heuristic routines to separate families of valid inequalities, some from the GTSP and others original for the CSP.Computational experiments performed on a benchmark set of instances compare our methodology with the state-of-the-art exact methodology from literature.Previous to this work, from a set of 48 instances, for only 9 instances there were proven optimal solutions.Our methodology improves this by certifying optimality for all except one instance.This represents a major contribution to the current body of knowledge regarding exact approaches on the CSP.
This paper is organized as follows.Section 2 formally defines the CSP and presents an integer linear programming formulation.Section 3 shows new valid inequalities for the CSP.Section 4 describes separation routines for the proposed valid inequalities, which constitute the branch-and-cut framework.In Section 5 computational experiments are conducted on a benchmark of instances, and results are analyzed and discussed.Section 6 gives the concluding remarks.

Problem description and formulation
The CSP can be formally stated as follows.Consider an undirected graph (, ), where  is the set of vertices and  is the set of edges.Each edge  ∈  is associated with a non-negative cost   .For each vertex  ∈  , () is the set of vertices that cover  and () is the set of vertices that are covered by .It is considered that  ∈ () and  ∈ (), ∀ ∈  .An optimal solution to the CSP is a minimum length Hamiltonian cycle (tour) over a subset of vertices that covers all vertices in .Figures 1a-1c show optimal solutions for three CSP instances with 200 vertices.
An integer linear programming (ILP) formulation for the CSP is presented.Binary variable   indicates if an edge  ∈  belongs (1) or not (0) to the tour and binary variable   represents if a vertex belongs (1) or not (0) to the tour.We denote () the set of edges incident to  ∈  , () the set of edges with one endpoint in  ⊂  and the other in  ∖ and () the set of edges with both endpoints in .
subject to ∑︁ ∈() The CSP formulation is based on the ideas of Fischetti et al. [12] for the GTSP.The objective function (1) minimizes the cost of a solution given by the sum of the costs of its edges.Constraints (2) ensure the number of edges incident at a vertex is 2 (if  is in the tour) or 0 (otherwise).Constraint (3) impose that each vertex must be covered at least once.Constraint (4) are subtour elimination constraints which state that every cut separating two vertices in the tour contains at least two edges.

Valid inequalities
This section presents valid inequalities proposed by Fischetti et al. [12] for the GTSP, and here translated for the CSP.It is worth reminding that the GTSP is a special case of the CSP in which the vertices are partitioned into clusters, and each cluster is formed by vertices which mutually cover themselves, i.e., any two vertices  and  from the same cluster would have () = ().
In the following, a new family of valid inequalities is proposed to consider a scenario particular to the CSP.

Cover intersection inequalities
Consider the case in which two covering sets () and () strictly overlap for some pair of vertices  and , i.e., ()∩() ̸ = ∅ and () ̸ = ().This is a distinguished scenario for the CSP, and it does not occur on the GTSP since in that problem the clusters are disjoint.The new valid inequalities extend the idea of inequalities (7), in the sense of requiring a minimum weight for any edge cut-set separating two covering sets.However, to address the overlap of covering sets, the new valid inequalities (10) also take into account the edge cut-set weight of the intersection () ∩ ().
For the following new valid inequalities (10), consider   =  ∩ () for any  ∈  .These inequalities are here called CI inequalities (cover intersection inequalities), and they only require a proper subset  ⊂  such that  ∈ ( ), which means it can be employed even if () =  , another case in which inequalities (7) cannot be employed.
According to constraints (3), for any given vertex , at least one vertex of () must be visited by the tour.In other words, for any subset  ⊂  such that  ∈ ( ), the tour must visit   or () ∖   .If set  does not intersect with (), then   is empty, and (10) reduces to (7).Otherwise,   is not empty, and in this case, to satisfy constraints (3), the solution must contain at least two edges in either (  ) or ( ∖   ).Figures 3a and 3b consider  = () ∪ () and  = ().In this case,  ∈ ( ), and   contains a single vertex since |() ∩ ()| = 1.In Figure 3a, a feasible solution is presented such that, even though the cut-set () is empty (the tour is inside ), the edge cut-set (  ) contains two edges, guaranteeing that node  is covered.An infeasible solution is presented in Figure 3b such that both edge cut-sets () and (  ) are empty.

Branch-and-cut framework
This section presents the separation routines for inequalities (7)- (10).Sections 4.1 and 4.2 present the separation routines for integer and fractional solutions, respectively.In the following sections, consider {x I , y I } and {x F , y F } as integer and fractional solutions for the CSP formulation without the subcycle elimination constraints (4) but possibly including some of the valid inequalities ( 7)- (10).Also, let   (  ,   ) and   (  ,   ) be the graphs induced by {x I , y I } and {x F , y F }, respectively.In   , every vertex  ∈   has a weight   , such that   ∈ y I , and every edge  ∈   has a cost   , such that   ∈ x I .Similarly, in   , every vertex  ∈   has a weight   , such that   ∈ y F , and every edge  ∈   has a cost   , such that   ∈ x F .

Separation routine for integer solutions
The proposed separation routine searches, in a lazy constraint fashion, for inequalities ( 7)-( 10) that are possibly violated by an integer solution {x I , y I }.First, the routine performs a depth-first search in   to check for the existence of illegal subcycles.
Let  ⊂  be the vertices of an illegal subcycle in   .To apply inequality (7) or (10) with respect to set , it is necessary that  ∈ ( ).If this is not the case, the proposed routine attempts to augment  into  aug by including the set () for some  ∈ .However, the choice of which () will be included in  aug is relevant to the effectiveness of the corresponding inequalities, as will be explained next.
Algorithm 1 presents the implementation details of the separation routine for integer solutions, which searches for inequalities (7)-( 10) associated with each subcycle found in {x I , y I }.The overall complexity of Algorithm 1 is bounded by ( 2 ).

Exact separation routine for fractional solutions
This section gives the exact separation routines of inequalities ( 7)-( 10) for a fractional CSP solution {x F , y F }.In particular, the separation of inequalities ( 7)-( 9) follows the methodology proposed by Fischetti et al. [12] for the GTSP.As for the CI inequalities (10), a transformation of the solution graph  ′ is proposed to tackle the overlap of covering sets.The routines are described next.
As observed by Fischetti et al. [12], the separation problem to find one or more inequalities (9) violated by {x F , y F } can be reduced to the problem of computing a minimum cut between two vertices  and  in graph   ,  ∈  and  ∈   ∖, i.e., finding the maximum flow from  to  [1].Similarly, the separation of inequalities (8) can be reduced to computing a minimum cut in graph   that separates  ∈  and () ⊆   ∖.In other words, finding the maximum flow from  to  [1], where  is an artificial vertex connected to each  ∈ () through edges with infinite capacity.As for inequalities (7), the separation problem can be reduced to computing a minimum cut between covering sets () and () in graph   , with () ⊆ , () ⊆  ∖, and () ∩ () = ∅.A maximum flow from  to  can be computed, such that  and  are artificial vertices connected, respectively, to each vertex in () and () with infinite capacity edges, as illustrated in Figure 5.It is worth noting that the separation of inequality (7) does not work when () and () overlap, since every cut separating  and  has infinite weight, as exemplified in Figure 6a.
An exact separation algorithm for CI inequalities (10) is proposed to accomodate the case when two covering sets () and () overlap.The first step is to augment graph   , by including an artificial vertex  ′ and an artificial edge (,  ′ ) for every vertex  ∈ () ∩ ().Vertex  is removed from () and vertex  ′ is included into ().Finally, for each  ∈ () ∩ (), let   be the set of edges with one endpoint being  and the other is in  ∖().The edges of   are excluded from   and their total weight is transferred to the artificial edge (,  ′ ).This ensures that every artificial edge will be counted for in any minimum cut, in the sense that every edge in   contributes in their purpose of connecting both covering sets () and (), as expected in a feasible solution.Figure 6 illustrates the augmentation of graph   .
The separation of a CI inequality (10) reduces to computing a minimum cut between sets () and () in the augmented graph.Let ( min ) be the minimum cut between () and () and   =  min ∩ ().If ∑︀ ∈(min) ⋃︀ ()   has a value less than 2, then a violated CI inequality (10) was found.Algorithm 2 presents the implementation of exact separation routine for fractional solutions.The separation consists in computing a max-flow for each pair of vertices, thus considering a push-relabel algorithm [1] to solve max-flow, the time complexity of Algorithm 2 is bounded by ( 4 ).
Given the computational effort required for the exact separation of fractional solutions, two alternatives were investigated.The first is based on a first-found policy, which follows the same steps of Algorithm 2, however the execution is interrupted once the first inequality which surpasses a given violation threshold  is found.For example, with respect to inequalities (7), given a vertex  ∈  and a set  ∈ ( ) : () ̸ =  , if the following holds, (2 − ∑︀ ∈()   > ), then the cut is included in the model and Algorithm 2 halts.The same goes for inequalities (8)- (10).
The second alternative for the exact separation routines resides in the heuristic separation of inequalities ( 7)- (10), described in the following section.

Heuristic separation routine for fractional solutions
A heuristic separation has the purpose of finding inequalities being violated by a fractional solution {x F , y F } within short computational times.In contrast with the exact separation routine however, a heuristic does not come with any guarantee of finding a violated inequality even if one exists.
Input: graph   (  ,   ) induced by a fractional solution {x F , y F } for the CSP.
In the second step, the connected components  1 , . . .,   of   are computed.For each component   , let  =   and if  ∈ ( ) then two cases are considered: (i) if () ̸ =  , then the inequality (7) associated with  cuts {x F , y F }; (ii) if () =  and ∑︀ ∈()   < 2 for some vertex  ∈  , then the CI inequality (10) associated with  and  cuts {x F , y F }.
In the third step, for each connected component   , let  =   and  = arg max  {  :  ∈ }.If () ̸ =  , then the inequality (8) associated with  and  cuts {x F , y F }.
Algorithm 3, with a time complexity bounded by ( 2 ), details the heuristic separation routine for fractional solutions.

Computational experiments
In this section, the proposed branch-and-cut methodologies are evaluated and compared to the state-of-the-art using the literature benchmark of instances, described in the following section.

Instances
The benchmark used in the computational experiments is composed of instances by Salari et al. [20] and a new set of instances, all of them based on the TSPLIB [18].Salari et al.Input: graph   (  ,   ) induced by a fractional solution {x F , y F } for the CSP.Output: a set  of valid inequalities that cuts {x F , y F }.   ←  ∪ inequality (7) associated with . ←  ∪ CI inequality (10) associated with  and . ←  ∪ inequality ( 7) associated with . ←  ∪ CI inequality (10) associated with  and . ← arg max{ :  ∈ }.
30: return T for these instances were not included in the paper.Nonetheless, full experimental data (including results for large instances) and source codes are available on-line1 .

Computational settings
The branch-and-cut methodologies were implemented in C++ using solver Gurobi and the Lemon graph library [9].The experiments were conducted on a PC under Ubuntu and CPU Intel Xeon E5-2630 2.2 GHz, with 64GB of RAM and one-hour time limit.
These methodologies were compared with the integer linear programming formulation proposed by Salari et al. [20], denoted here as SRS.To the best of our knowledge, SRS is the best performing exact methodology for the CSP.
Preliminary experiments have shown that even in cases where the heuristic separation fails to find violated inequalities in methodologies CSP-I&F h and CSP-I&F h -X, applying the exact separation does not improve the quality of the solutions obtained.This can be justified by the high computational effort spent by the exact separation routines.

Results
The results of the computational experiments are reported for the small instances in Table 2 and for the medium instances in Tables 3 and 4. Each table reports for each methodology and for each instance, the following: -LB : best lower bound obtained; -Gap: optimality gap ( UB−LB UB ) • 100; -Time: execution time in seconds.
In Tables 2 and 3, the column group BestUB reports the best upper bounds known in the literature for each instance: column UB gives the best known upper bounds and column References cites the papers which attained them.For each instance, Tables 2-4 highlight the optimal solutions (underlined) and the best lower bounds (in bold) obtained by each methodology.
For small-size instances, there were previously known lower bounds for 32 out of 36 instances, obtained by SRS, from which optimal solutions were proven for 9 instances.The proposed branch-and-cut framework, on the other hand, obtained lower bounds for all instances.More importantly, the framework proved optimality for all 36 small instances.All branch-and-cut methodologies outperformed SRS with respect to optimality gap, and they were fairly robust among themselves; the worst performing (CSP-I) obtained an average 0.28% optimality gap, while the best performing (CSP-I&F vp and CSP-I&F vp -X) with zero optimality gap, shows the exact separation prevails over the heuristic separation of fractional solutions for small instances.
With respect to medium-size instances created by Salari et al., no lower bound was known for any of the 12 instances in the literature.The branch-and-cut framework obtained the first lower bounds for all these instances.Furthermore, optimality was proven for all instances except one (kroA200-7), which remains with an optimality gap of 1.35%.The performance among the branch-and-cut methodologies varied more significantly this time.The best-performing methodology was CSP-I&F h -X, with an average gap of 0.11%.The heuristic separation overcomes the exact separation, mainly due to the reduction in computational effort.The worst-performing methodology (CSP-I) obtained an average gap of 6.12%, showing that integral cuts alone perform poorly for more challenging instances.
The effect of the CI inequalities (10) in the performance of the methodologies was also examined.Regarding the small and medium instances created by Salari et al., the average gaps of CSP-I&F vp and CSP-I&F vp -X were both zero for small instances, but for the medium instances the CI inequalities reduced the average gap from 1.98% to 0.86%.Furthermore, comparing CSP-I&F h and CSP-I&F h -X, the CI inequalities reduced the average gaps from 0.08% to 0.03% for small instances and from 0.31% to 0.11% for medium instances.It is worth mentioning that even for the medium instances where the methodologies CSP-I&F vp and CSP-I&F h obtained the same optimality gaps of CSP-I&F vp -X and CSP-I&F h -X, the CI inequalities reduced the execution time on average.For example, comparing the methodologies that use heuristic separation, the difference in execution time was substantial.The average execution times of CSP-I&F h and CSP-I&F h -X were 1220.67 and 808.42, respectively, representing a reduction of more than 33%.
Considering the new medium instances, from a total of 39 instances, CSP-I&F vp -X and CSP-I&F h -X obtained, together, the best lower bounds for 27 instances, while CSP-I&F vp and CSP-I&F h obtained the best lower bounds for only 9 instances.Furthermore, only CSP-I&F h -X was able to obtain optimal solutions.Therefore, the results show that the CI inequalities have a significant impact on reducing the optimality gaps and obtaining the best lower bounds.

Final remarks
The proposed branch-and-cut framework for the CSP uses existing valid inequalities for the GTSP, by Fischetti et al. [12], and a new family of valid inequalities, CI inequalities, to improve on the state-of-the-art exact methodology for the CSP.Exact and heuristic separation routines for integer and fractional solutions are investigated.
The branch-and-cut framework is composed of five methodologies using distinct families of inequalities and separation routines.Computational experiments conducted on a benchmark of 48 instances from literature and 39 new instances delves into the effectiveness of the framework.From the 48 small and medium instances from literature, only 9 optimal solutions were known.Our branch-and-cut framework, by borrowing meaningful valid inequalities from GTSP and proposing new valid inequalities for CSP, was able to obtain optimal solutions for all instances except one, thus 47 instances were proven optimal (among them, 38 instances for the first time).With respect to the new instances, our methodology obtained the highest number of best lower bounds and number of proven optimal solutions.Finally, the experiments also show that the CI inequalities had a significant role in the performance of the methodologies.
The ideas presented in this work can support the exact solution of many future developments of the CSP.The heuristics and metaheuristics approaches proposed to solve the CSP in the literature can be combined with our branch-and-cut framework to develop hybrid methodologies, such as matheuristics, in order to improve the upper and lower bounds of the CSP.Future works may consider, for example, CSP with multiple vehicles, capacity constraints, time constraints, green vehicles, uncertainty on the covering neighborhood, and other generalizations of the CSP which better approximate practical routing problems.The new family of valid inequalities proposed in this work should be considered on the exact solution for any of these generalizations.

Figure 3 .
Figure 3. Example of feasible (a) and infeasible (b) solutions in the context of overlap of covering sets.

Figure 4 .
Figure 4. Example of an invalid CSP solution with two subcycles.