A modified ACO with K-Opt for restricted covering salesman problems in different environments

In this study, the ant colony optimization (ACO) algorithm is modified with the K-Opt operation to solve the covering salesman problem (CSP) under one restriction in crisp and imprecise (fuzzy, rough) environments. A CSP involves two phases—the division of cities into groups with the selection of the visiting cities and searching of the Hamiltonian circuit through the visiting cities. But, none of the studies in the literature is made following the direct approach. Also, none of the studies in the literature gives attention to reduce the total travel distance of the unvisited cities from the visited city of a group. Moreover, there is no algorithm in the literature which provides the solution of a CSP with the specified coverage range r. Also, none has introduced any algorithm to solve CSPs in imprecise environments. Though algorithms are available to solve the Traveling Salesman Problems in the imprecise environments, the approach cannot deal with the problems involving fuzzy data with nonlinear membership functions or the problems involving rough data where the rough estimation can not be done using Lebesgue measure. The well-established algorithm for any routing problem is the ACO, but not much attention has been paid to solve the CSP using ACOs. To overcome these limitations on the studies of the ACO on the CSPs, here, an algorithm is proposed for the division of groups of the set of cities depending upon the maximum number of cities in a group and the total number of groups. Then, ACO is used to find the shortest/minimum-cost path of the problem by selecting only one visiting the city from each group without violating the restriction of the specified coverage range r of the location of the unvisited cities. K-Opt operation is applied periodically at the end of ACO operation to improve the quality of the best found solution so far by the ACO algorithm and to arrest any premature convergence. For the restricted problems, paths are searched in such a manner that the total distance/travel cost of different unvisited cities of a group from the visited city of the group should not exceed a predefined upper limit. To solve the problem in an imprecise environment, some approach is followed so that the tour is searched without transferring the imprecise optimisation problem into an equivalent crisp optimisation problem. Also, the simulation approaches in fuzzy and rough environments are proposed to deal with the CSPs with any type of estimation of the imprecise data set. Algorithm is tested with the standard benchmark crisp problems available in the literature. To test the algorithm in the imprecise environments, the imprecise instances are derived randomly from the standard crisp instances using a specified rule. Test results imply that the proposed algorithm is efficient enough in solving the CSPs in the crisp as well as in the imprecise environments.


Introduction
A covering salesman problem (CSP) is a complete weighted graph, consists of a set of vertices, called cities, and a weight matrix, called distance (cost) matrix which consists of the distance (travelling cost) between any two cities. The goal of the problem is to find the different clusters (groups) of the cities and then find a minimum cost Hamiltonian circuit visiting only one city in each cluster so that each unvisited city in a cluster should be located in a predefined cover-age range of the visiting city. A maximum number of cities in a group is provided in the problem. The clustering and the searching of Hamiltonian circuit is made in such a manner that the travelling distance (cost) through the circuit is a minimum. The CSP has various real-life applications, like, telecommunication Kotenko and Saenko (2019), health care Kergosien et al. (2009), disaster management Maurya and Kumar (2017), humanitarian relief Campbell et al. (2008), transportation Ungureanu (2006), etc. For the relief of effected areas of different natural disasters, like, flood, earthquake, tsunami, etc., the locations of the relief camps are selected depending upon the human resources in such a manner that all the effected peoples can get different services with the minimum effort and expenditure. Mobile communication tower points are selected in such a way that covers all the customers' area with the minimum expenditure. So, the CSP has a wide range of applications in the real-life problems.
As CSP belongs to the class of NP-hard problems, exact (analytical approach) algorithms are not suitable to find the solution of a CSP in a usable time window. So heuristic approaches are applicable to find a compromise solution in a specific time window. The initial study in this direction was made by current and schilling [1] in 1989. They proposed the problem, and the problem was solved by the authors using a two phase heuristics approach. In the first phase of the algorithm, the set covering approach is followed to find the clusters of the vertex set. Then, one node from each cluster is selected as the facility node. Then, a traveling salesman problem (TSP) is formed through the selected nodes. In the second phase, this TSP is solved using any suitable heuristics approach. These two phases are repeated iteratively to search the best path.
Using Lin-Kernighan procedure Lin (1973), Golden et al. Golden et al. (2012) proposed two heuristics search algorithms, L S 1 and L S 2 for solving different CSPs in 2012. Both the algorithms start with a randomly generated set of feasible solutions of the problem. Then, L S 1 uses some stochastic approach to replace some nodes from the path by some new nodes to improve the quality of the solution in such a manner that the feasibility of the solution persists. The authors used mutation operations to prevent any local optima and used some uphill moves to introduce diversity in the algorithm. On the other hand, L S 2 uses two iterative procedures, namely, the Improvement Procedure and the Perturbation Procedure to find the best feasible solution.
Using the features of integer linear programming (ILP), Salari and Naji-Azimi Salari and Naji-Azimi (2012) proposed a Heuristics method for solving CSP in 2012. The algorithm starts with a randomly generated set of feasible solutions of the problem, and the tour is improved iteratively using two procedures, namely, Heuristic-based improvement and ILP-based improvement. An Extraction-Reassignment procedure is used to decrease the tour length in the heuristic phase. At first, a subset of the vertices visited by the tour is extracted and then, this vertices are reassigned into a new tour by solving the ILP model for the improvement of the objective function. Another heuristic algorithm by Lin-Kernighan Lin (1973) is also used for the possible improvement of the tour. Also, a perturbation phase is introduced in the algorithm to escape from the local optima.
Similar to the CSP, another problem, named, Covering Tour Problem (CTP), was proposed by Gendreau et al. Gendreau et al. (1992) in 1992. In this problem, the set of vertices, V , is partitioned into to two subsets V 1 and V 2 and the goal is to search a minimum cost Hamiltonian circuit through V 1 so that the distance of each of the vertices of V 2 from the circuit is located within a prescribed distance. They first formulate the problem as an ILP problem, and then, an exact branch and cut algorithm is developed to solve the problem. They have also proposed a heuristics approach for it. In a recent study, Singh et al. Pandiri et al. (2020) proposed a mixed integer programming model for a bi-objective generalised covering salesman problem, where simultaneously, the total covered demand is maximised and the total tour length is minimised.
Combining the features of ant colony optimization (ACO) algorithm and the dynamic programming technique, Salari et al Salari et al. (2015) proposed a heuristic approach to solve CSPs. Together with 3-opt, they introduced two perturbation approaches vertex-removal and vertex-addition for searching quality solutions. Venkatesh and Singh Venkatesh et al. (2019) modified the Artificial Bee Colony (ABC) algorithm with different perturbation techniques to solve the CSPs in 2019. Venkatesh et al. Venkatesh et al. (2019) proposed a local search heuristic for the CSPs using multiple perturbation strategy. In another study, Pandiri et al. Pandiri et al. (2020) modified two heuristic approaches ABC and Genetic Algorithm (GA) to solve CSPs in 2020. They proposed four approaches for selecting neighbour solutions in both the algorithms-GA and ABC, namely, Subset Neighbour, Local search with two neighbour structures, General Exchange and Permutation neighbour. Zang et al. Zang et al. (2020) defined Bilevel CSP(BCSP) and proposed two algorithms based on, parallel variable neighbourhood search (PVNS), namely, synchronous master slave PVNS and asynchronous cooperative PVNS, for the same. A crossover procedure using GPX was proposed by Tripathy et al. Tripathy et al. (2017) and using it a GA was developed by them for the CSPs in 2017. Though a significant amount of studies is made on the CSPs after its introduction by current and schilling [1], there are some lacunas in the existing literature, which are summarised below: • The well-established algorithm for any routing problem is the ACO, but not much attention has been paid to solve the CSPs using ACO Salari et al. (2015).
• It is known that a CSP involves two phases-division of cities into groups with the selection of visiting cities and searching of the minimum cost Hamiltonian circuit through the visiting cities. But, none of the studies in the literature is made following this direct approach. • Moreover, none of the studies gives attention to reduce the total travel distance of the unvisited cities from the visited city of a group. Though in real-life problem, it is crucial as different facilities are provided from the visited cities only. • Also, there is no algorithm in the literature, which gives results of the CSP instances with the specified coverage range r . All the studies have been made where groups are created with the nearest nodes from the selected centres of the groups. • All the studies upto till date proposed different heuristics for CSPs for the betterment of the existing results, which in turn motivates us for the further betterment. • In all the above studies, it is observed that the problems are considered in the crisp environment only, i.e. the cost of travel between any two specific cities is fixed, which is unrealistic in any real-life situation. In fact, the cost of travel between any two places varies with several factors, like, road conditions, type of vehicle used, the route used, etc. This cost is actually imprecise in nature and can be estimated as rough or fuzzy number using experts' opinion. This type of estimation is less error prone as it is done using experts' opinion. Though there are algorithms to solve basic TSPs and its variants in the imprecise environments ; Khan et al. ( , 2019, none has introduced any algorithm to solve the CSPs in any imprecise environment. • Though algorithms are available to solve TSPs in the imprecise environments Khan et al. ( , 2019, the approach cannot deal with the problems involving fuzzy data with nonlinear membership functions (e.g. Parabolic Fuzzy Number(PFN)) or TSPs involving Rough data where the estimation cannot be done using Lebesgue measure.
To overcome the above mentioned lacunas, in this study an attempt has been made to introduce a better heuristic approach to solve the CSPs in the crisp and as well as in the imprecise environments. Simulation approaches in the imprecise environments are proposed to deal with the CSPs in the imprecise environments for any type of imprecise data sets. Moreover, a restricted problem is introduced and solved where the total travel distance of different unvisited cities from the visited city of the corresponding group should not exceed a prescribed limit. The heuristic algorithm proposed here consists of three phases. In the first phase of the algorithm, the set of cities is partitioned into groups depending upon the maximum num-ber of cities in a group and the total number of groups. A procedure is proposed for this purpose where initially a centre of each group is selected, and then, other cities of the group are selected in such a manner that all other cities are located within the specified coverage range r . The centre of the next group is selected from the unselected cities which is nearest to this centre. In the second phase of the algorithm, the ACO Dorigo and Di Caro (1999) is used to find the shortest/minimum-cost path of the problem by visiting only the centre of each group. In the last phase, the K-Opt algorithm is used to improve the quality of the solution obtained by the ACO and to resist premature convergence. For the restricted problem, the path is searched in such a manner that the total distance/cost of different unvisited cities of a group from the visited city of the corresponding group should not exceed a predefined upper limit. To solve the problem in an imprecise environment, an approach is followed, where, the tour is searched without transferring the imprecise optimisation problem into any equivalent crisp optimisation problem. Moreover, fuzzy simulation and rough simulation approaches are proposed to deal with the problem with any general type imprecise data set.
The rest of the paper is organized as follows: in Sect. 2, the background and the main challenges of solving the CSPs in different environments are discussed. The required assumptions and different notations for the mathematical representation of the problem and the development of the proposed algorithm are listed in Sect. 3. The mathematical representation of the problem and some technical prerequisites for the proposed solution approach are presented in Sect. 4. Optimization in imprecise environments and the simulation approaches are discussed in Sect. 5. The ACO algorithm for the CSP is described in Sect. 6. In Sect. 7, the K-Opt algorithm is presented. Proposed approach is presented in Sect. 8. Experimental results are discussed in Sect. 9. A brief conclusion is drawn in Sect. 10. At length, the references are listed.

Background of the CSP and challenges
CSP was defined by Current and Schilling [1] in 1989. They formulated the problem as a zero-one linear programming problem (LPP) and proposed a heuristic approach to solve the same. In their approach, in the first step, the subset of cities to cover all the cities is determined using the approach of solving a set covering problem (SCP). For each of the solution of SCP, a TSP is generated and solved. The minimum cost tour is the solution of the CSP. As SCP and TSP, both are NPhard problems, so it is not possible to solve a moderate size CSP in a reasonable time window following this approach.
Combining the features of dynamic programming technique, ACO and amalgamating different perturbation techniques, like, 3-opt, vertex removal and vertex addition techniques, etc., Salari et al. Salari et al. (2015) developed a novel heuristic to solve CSPs in 2015. In this study, paths are created by selecting successive cities using ACO until all the cities are covered. Then, the vertex removal and vertex addition techniques are used to improve the tour cost. Finally, 3-opt operation is applied on the path for further possible improvements. This study ignores the restriction of the upper limit, r , of the coverage range of the unvisited cities and consider only the nearer nodes of any visiting city as the covered nodes for searching the path.
In a recent study, Pandiri et al. Pandiri et al. (2020) proposed two meta-heuristics for the CSPs. In the first approach, ABC algorithm is modified for the CSPs using four perturbation operations on a tour. One of these approach is the removal of a visited vertex and addition of an unvisited vertex which can cover the removed vertex and they named it LS2N. Another approach is the permutation of neighbour, where, some permutation is made on the positions of the visited cities in a tour to improve the quality. The third approach is the general exchange (GE) of an unvisited city with a visited city, such that the feasibility of the tour holds. The fourth approach is named subset neighbour (SSBN) and in this approach some cities of a tour are removed with some probability and some unvisited cities are added so the tour becomes feasible as well as the quality is improved. Using these perturbation approaches, they developed a tour improvement algorithm and is used in the employed bee phase and in the onlooker bee phase of the basic ABC to make it useful for the CSPs. For the generation of initial solution set for the ABC as well as for the GA approach, they followed the same approach as Salari et al. Salari et al. (2015). In GA, cyclic crossover operation is used, and for the mutation process, they proposed two new approaches. They have also used the perturbation approaches of the ABC algorithm in the GA for the further possible improvements. Performances of both these approaches are similar to the hybrid ACO proposed by Salari et al. Salari et al. (2015). So the approaches of Pandiri et al. Pandiri et al. (2020) did not give better solution than that of Salari et al. Salari et al. (2015). Moreover, this study also ignores the restriction of the upper limit, r , of the coverage range of the unvisited cities and consider only the nearer nodes of any visiting city as the covered nodes for searching the path.
All the above studies as well the studies mentioned in the introduction section, the initial paths are created using successive addition of visiting cities to cover all the cities following the approaches of set covering problem, but none has mentioned the covering range in their test instances, i.e. the maximum distance of an unvisited city from its nearest visiting city, though the tour cost mostly depends on it and it is also the basic restriction of the problem. Also, none of these studies tries to reduce the total group covering distance of a visiting city, though it is realistic one for any real-life problem. Since the CSP is a routing problem, selection of the visiting cities and the determination of the optimal rout through these cities using any suitable routing algorithm may produce better result (as proposed by Current and Schilling [1]). But the approach is overlooked by the researchers for developing any heuristic approach. Moreover, none have studied the CSPs in imprecise environments. There are some studies on the TSPs and GTSPs with fuzzy cost matrices and rough cost matrices ; Khan et al. ( , 2019, using the credibility measure on fuzzy events and the trust measure on rough events, where TFNs are used as the fuzzy parameters and the Lebesgue measure is used for the estimation of rough parameters. Their approach cannot deal with such problems involving fuzzy cost matrices with nonlinear membership functions. In fact, when more than one fuzzy parameters with nonlinear membership function (e.g. PFN) are added, then it is not possible to determine the analytical form of the membership function of the resultant fuzzy number. So following their approach, it is not possible to determine the credibility measure of the fuzzy events involving the process when the membership functions of the fuzzy parameters are nonlinear type. The same problem has to be face in the rough environment also, if the Lebesgue measure is not possible to use for the rough estimation.
To overcome these limitations in this study, fuzzy simulation approach and rough simulation approaches are proposed to deal with such crucial situations. Moreover, the CSP is solved with an approach where initially the cities are divided into groups selecting one possible visiting city of each group. Then, the routing heuristic ACO is used to determine the optimal route through the visiting cities. K-Opt operation is also used periodically for the possible improvement of the best path found so far and to resist any premature convergence. In a particular case, the CSP is solved with the restriction limit of the total group coverage range as well as incorporating the normal restriction on the coverage range, r .

Assumptions and notations
Following assumptions and notations are used to formulate the problem: (i) n is the number of cities involved in the problem. (ii) N C is the maximum number of unvisited cities covered by a visiting city. (iii) N B is the maximum number of cluster of cities. (iv) c i j is the travelling distance/cost between city i and city j.
(v) r is the maximum distance between a visiting city and the furthest unvisited city covered by that visiting city. (vi) (x i j ) n×n is the decision variable matrix for the mathematical representation of the problem where x i j = 1 if the salesman moves to city j from city i 0 otherwise (vii) Another array variable (v i ) 1×n is also used for the mathematical representation of the problem, where, v i = 1 if the salesman visits city i 0 otherwise (viii) Also, the coverage matrix (y i j ) n×n is defined as The ascent˜is used over a symbol to indicate fuzzy quantity. (xi) The ascentˇis used over a symbol to indicate rough quantity.

Technical background
Covering Salesman Problem: The basic CSP consists of a set of cities V = {1, 2, ...n} where the travelling distance/cost between any two cities i and j is known and fixed, say c i j . The goal of the problem is to search a minimum distance Hamiltonian circuit through a subset of cities so that the position of every unvisited city is located within a predefined coverage range r of a visited city. Then, the problem mathematically takes the following form In the formulation, the objective function Z is the total travel distance of the tour, which is to be minimized. Constraints set (5) implies that if the salesman visits a city he must left the city after his visit. Constraints set (6) implies that every vertex in the vertex set V is located in a covering distance r from a visited city. Finally, equation set (7) implies that the tour should not contain any sub-tour.
In the existing literature, every problem consists of a predefined number of clusters (N B) and upper limit (N C) of the number of cities in a cluster. A salesman should visit only one city of each cluster so that the problem constraints are satisfied. To solve the problem here, following steps are followed: • At first, randomly select a city c 1 to be visited, and search N C − 1 cities nearest to the selected city. If these cities are located inside the covering distance r , then this set of vertices is named as the first cluster. If it is not true, then another vertex is selected and the same process is continued until a cluster is created. • After the formation of a cluster, the nodes in the clusters are eliminated from the node set and let it be V 1 . • Select next city c 2 to be visited from V 1 which is nearest to c 1 and form a cluster following the same procedure as first cluster. If fails, then the next nearest node of V 1 from c 1 is selected as c 2 and the process is continued. • Following the same procedure, different clusters are created. In this formation, in any step if it fails to create a cluster, then the process again starts from the formation of first cluster.
A salesman at first partitioned the cities into some clusters according to the constraints. Then, the salesman visits one of the cities of each group which is located within the coverage range r of all the unvisited cities for the selling/canvassing/distribution of some products to its customers of the different cities of the groups. The goal of the problem is threefold: • First partition the cities into clusters depending upon the maximum number of cities in a cluster and clusters limit. • Search a minimum cost path for the traveller through all the clusters by visiting only one city of each cluster. • Every unvisited city must lies within a predefined covering distance from a visited city.

Fuzzy Number:
A fuzzy setF is defined on an universe U such that every u ∈ U belongs to the setF with some degree of membership μ F (u) ∈ [0, 1]. The function μ F : U → [0, 1] ⊂ R is called the membership function of the fuzzy setF. In other words, the function μ F completely defines the fuzzy setF on U . A fuzzy set normally denoted by using an ascent˜over the name. A fuzzy numberÃ is a fuzzy set on R such that its membership function μ A satisfies the following two conditions Zadeh (1965):

Triangular Fuzzy Number (TFN): A TFNÃ having membership function μ A has positive membership in an interval [a,c] and has membership value 1 at only one point b ∈ [a, c].
It is denoted byÃ = (a, b, c), and its membership function μÃ is given by Parabolic fuzzy number (PFN).: A PFNÃ having membership function μ A has positive membership in an interval [a,c] and has membership value 1 at only one point b ∈ [a, c]. It is denoted byÃ = (a, b, c) and its membership function μÃ is given by Y be a function andÃ 1 ,Ã 2 ,...,Ã n are fuzzy sets defined on X 1 , X 2 ,..., X n , respectively. Then, is a fuzzy set defined on Y whose membership function is defined by the extension principle and the set is given by: α-cut of a fuzzy number: LetF be a fuzzy number with membership function μ F . Then, α-cut ofF is a subset of R denoted byF α and defined as Credibility Measure(Cr): IfÃ andB be two fuzzy numbers. Then,Ã B is a fuzzy event, where * ∈ {<, >, ≤, ≥, =}.
Considering the level of uncertainty as the semantics of fuzzy numbers, credibility measure of the eventÃ B is denoted by Cr(Ã B ) and is defined as where and N es( denotes the complement ofÃ B (11)
Trust measure Liu (2002): Let ( , , κ, π) be a rough space. Then, the trust measure of a rough event R is denoted by T r (R) and is defined as where T r (R) = π(R∩ ) π( ) and T r(R) = π(R) π( ) are the lower and upper trust measure of the rough event R, respectively. A rough set normally denoted by using an ascentˆover the name.

Lemma 6 [23]: Let Lebesgue measure is used for trust measure andR
be two rough variables. Then, trust measure of the rough event R 1 <R 2 is denoted by T r (R 1 <R 2 ) and is given by Lemma 7 Liu and Iwamura (1998)

Optimization in imprecise environment
Let us consider an optimization problem in the form: Here, x = (x 1 , x 2 , ..., x n ) is a decision vector having n variables, y = (y 1 , y 2 , ..., y m ) is a vector representing, m, parameters of the problem and φ i (x, y), i = 1, 2, ... p are constraint functions. In any classical optimization problem, the parametric values are crisp in nature. When the parameters are imprecise in nature, the problem (18) reduces to optimization in imprecise environment.

Optimization in fuzzy environment
In the problem (18), if y is a vector of fuzzy numbers,ỹ = (ỹ 1 ,ỹ 2 , ...,ỹ m ), the problem (18) reduces to an optimization problem in fuzzy environment having n crisp decision variables, x 1 , x 2 , ..., x n , and is presented below: Maximizef (x,ỹ) clearly here objective function as well as the constraints are fuzzy in nature. Optimization in fuzzy environment is not properly defined till date. Moreover, there is no proper guideline to check whether the value of a decision vector is feasible with respect to the constraints involve in the problem. In problem (19), the value x 0 of the decision vector x may said to be feasible if the following condition holds It is a valid approach as If the analytical form of the membership functions of the constraint functionsφ i (x,ỹ), i = 1, 2, ..., p are available then similar as, Lemma 5, one can easily determine the values of Cr(φ i (x,ỹ) ≤ 0), i = 1, 2, ..., p for the determination of the feasibility of any value of the decision vector, x. Similarly if the analytical form of the membership function of the fuzzy objectivef (x,ỹ) is available, then one can easily determine the values of Cr(f (x ,ỹ) >f (x ,ỹ)) for the determination of the better option between two feasible values, x and x of the decision vector, x. But if the analytical form of the membership function of any constraint or the analytical form of the membership function the objective function is not available, then fuzzy simulation approach can be used for the validation of any constraint in (20) or (21). It can be done using the following algorithm.

Optimization in rough environment
In the problem (18), if y is a vector of rough numbers,ŷ = (ŷ 1 ,ŷ 2 , ...,ŷ m ), the problem (18) reduces to an optimization problem in rough environment having n crisp decision variables, x 1 , x 2 , ..., x n , and is presented below: clearly here objective function as well as the constraints are rough in nature. Optimization in rough environment is not properly defined till date. Moreover, there is no proper guideline to check whether the value of a decision vector is feasible with respect to the rough constraints involve in the problem.
In problem (22), the value x 0 of the decision vector x may said to be feasible if the following conditions hold If the analytical form of the constraint functionsφ i (x,ỹ), i = 1, 2, ..., p is available, then similar as, Lemma 6, one can easily determine the values of T r(φ i (x,ŷ) ≤ 0), i = 1, 2, ..., p for the determination of the feasibility of any value of the decision vector, x. Similarly if the analytical form of the rough objectivef (x,ŷ) is available, then one can easily determine the values of T r(f (x ,ŷ) >f (x ,ỹ)) for the determination of the better option between two feasible values, x and x of the decision vector, x. But if the analytical form of any constraint or the analytical form of the objective function is not available, then rough simulation approach can be used for the validation of any constraint in (23) or (24). It can be done using the following algorithm.

Ant colony optimization
Following different behaviours of ants for searching their food sources, the ACO algorithm was proposed by Dorigo et al. Dorigo and Di Caro (1999) in 1997 to solve TSPs. In the algorithm, the path of an ant from the nest to the food source is analogous to the path of a salesman in TSP. Ant algorithm is multi-agent system in which the behaviour for each single agent, called artificial ant or ant, follows real ants's behaviour. Nowadays, a large number of algorithms on ant base have been available in the literature. The purpose of the algorithm is to find a minimum distance path from the source to the destination. Analogous to the real ant, in the algorithm, every artificial ant has a chemical called pheromone. When the ant travels from one place to another, it is left on the path. The path in which density of pheromone is maximum is the shortest path in reality. In the algorithm, also, this phenomenon is used to find the shortest path for the salesman. In the algorithm, in the iteration, t, an ant k, which is currently located at node i, selects the next node j, depending on a probability, P k i j (t), using some probabilistic selection process, e.g. for Roulette Wheel selection process Kumar (2012): where τ i j represents the pheromone value and η i j represents the heuristics value of the move from node i to j at time step t. N k i (t) represent the set of nodes which are not yet visited by ant k (when it is at node i). α and β are positive real parameters whose values determine the relative importance of the pheromone versus the heuristics information. η i j is calculated by following equation, where d i j is the distance (cost) between the node i and j.
Pheromone Evaporation. At the time of visiting the nodes by an ant, some amount of pheromone are evaporated from each edge and some pheromone are deposited on the edges through which the ant move. For each edge (i, j), evaporation takes place using the following rule: with ρ ∈ [0, 1]. ρ is the constant, that specifies pheromone evaporate rate.
Pheromone update rule. After completion of a tour (path) from the source to the destination by all the ants, the pheromone on each edge (i, j) through which any ant moves is updated (due to deposition of pheromone) as where τ k i j (t) is the amount of pheromone deposited by the ant k on the edge(i, j) at time step t and here τ k i j (t) is taken as if k-th ant passes through the edge (i,j) where X k is the path of k-th ant and f (X k ) is the distance of the path. For detail algorithm of ACO please see Khanra et al. (2016).

K-Opt perturbation operation for CSP
K-Opt Sierksma (2014) is mainly used to improve the tour cost of a CSP. It is also called a tour improvement algorithm. The mechanism of K-Opt operation is to break a feasible tour into K-parts, rejoin different permutations of the parts to create different feasible tours and select the best among them for the improvement of the original tour. Here, K-Opt operation is applied on a complete tour of a CSP for its possible improvement. For detailed of K-Opt operation, one can refer . 2-Opt algorithm removes one edge form the tour and reconnects the two sub-tours' combination and reverses of their path to find the better movement. It is continued until no improvement is found using the process. Similarly in the case of 3-Opt, breaking 2 edges of a tour, eight possible new combinations can be found. In this way, we continue to break edges from tour, i.e. K = 1, 2, 3..., n and get new algorithm, like 2-Opt, 3-Opt, 4-Opt and so on. But the increase in K increases, the time complexity of the algorithm. For that reason, here, the 3-Opt operation is applied and it is found that it acts better than the 2-Opt operation for large size problems.

K-Opt Operation on a complete tour
The detailed algorithm of K -Opt operation for K = 3 is presented below. Here, a one-dimensional array best path i is used to represent i-th path/tour of the CSP obtained using ACO. Then, two cities of the path are randomly selected to divide the path into three sub-tour and let these be bestpath i j , j = 1, 2, 3. The reverse of these sub-tours are denoted by bestpath r i j , j = 1, 2, 3, respectively. Then, eight new tours, nbestpath i j , j = 1, 2, ..8, can be formed using bestpath i j , j = 1, 2, 3 and bestpath r i j , j = 1, 2, 3 as below: Among these new tours, minimum cost tour is the best found movement using 3-Opt operation once. If cost of this tour is less than the parent tour, then it replaces the parent tour.

Proposed algorithm for covering salesman problem
As stated earlier, the proposed algorithm consists of two procedures. The first procedure divides the node set of the problem into groups in such a manner that all the nodes of any group located within the restricted covering distance r (of the problem) from the centre of the respective group. The second procedure determines the shortest route through the centres of the group. In the algorithm, N represents number of nodes/cities, N B represents number of groups, N C represents maximum number of cities in a group. At first, equal no of nodes are selected in all the groups. The remaining nodes are successively added to different groups depending upon the distance of the node (nearest to the centre element of the group) so that cardinality of a group does not exceed For j = 2 to N E do 13.
v= Nearest city of v c in N S 14. G v= Nearest city of v c in N S 25.
ACO algorithm is used to find the best path according the centres of the groups.

68.
K -opt operation is applied on the best path for further possible improvement. 69.
The best solution found so far, solution b , is updated. 70.

71.
End for 72. End for 73. Output solution b 74. End algorithm

Exploration and exploitation
For any CSP instance, a particular division of the groups of cities and the selection of visiting nodes may converge to local optima. To explore different possible paths, the ACO is applied on the different selections of the set of visiting cities. In this study, K -opt operation is applied at the end of the ACO algorithm to avoid convergence of the path at any local optima. If the ACO converges to a local optima, then the application of 3-opt on the obtained path of ACO will find a better path and the repeated application of 3-opt on the improved paths may obtain the global optimal path. In this way, the exploration and exploitation is made in the proposed algorithm.

Implementation and testing
The algorithm is implemented in Dev C++ in a computer having Intel core-i3 first generation processor and 2 GB RAM. The algorithm is tested against a set of benchmark test problems from TSPLIB with significantly large sizes (size up to 654 nodes). The performance of the algorithm is compared with different existing successful algorithms for CSP in the literature. It is observed that the efficiency of the proposed algorithm is comparatively better with respect to the other existing algorithms used for the comparison.

Numerical illustration
So far the author's knowledge go, in the literature, there is no algorithm that presents results of benchmark CSP instances with specified coverage range r . All the studies have been made where groups are created with the nearest nodes from the selected centres of the groups. Due to this reason, here, to measure the efficiency of the proposed algorithm, some standard benchmark test instances are used that are proposed by Golden et al. Golden et al. (2012). These instances are generated form TSPLIB Gerhard (1999). The test problems have been divided into small, medium, and large size problems according to their sizes. The small size and medium size problems contain 51 to 200 number of nodes where each node can cover nearest 7, 9, 11 number of nodes and the large size problems contain 532 to 654 number of nodes where each node can cover 3, 5, 7 number of nearest nodes. Other notations and symbols are the same as previously stated.
The problems are solved using the proposed algorithm for CSPs, and the results are tabulated in Tables 1 and 2. The goal is to minimize the total tour cost of the Hamiltonian path through the visiting nodes. It is observed from the tables that in most of the considered instances tour cost increase with the number of groups, which agrees with reality. In very few cases, the algorithm gives higher tour cost for larger group size, due to the division of the groups. But in those cases also the proposed algorithm gives better results compared to the other well-established algorithms used for the comparison. The convergence graphs of the best found solutions for some instances are presented in Fig. 1.
Tables 3 and 4 present the comparative study of the computational results of the proposed algorithm with respect to seven other state-of-the-art algorithms for the CSPs. Table  3 represents the best found cost of the different instances obtained by the different well-established algorithms for CSPs in the literature along with the proposed algorithm. Table 4 represents the average cost and the standard deviation of the results obtained by the different algorithms in five different runs for the different instances. It is observed from the tables that the proposed algorithm obtains the best tour cost as well as the minimum average cost for each of the instances with different numbers of N Cs. From these observations, it can be concluded that the efficiency of the proposed algorithm is better compared to the other algorithms in the literature for solving the CSPs. Table 5 present the results due to the different values of the coverage range r for some large size test instances. It is observed from the tables that for each of the instances, the tour cost increases with the decrease of r . In Table 6 also, the results due to the different values of the coverage range r are presented for all the considered test instances. But, here, at first result due to a fixed coverage range, r , is obtained, which is presented in the column marking 100%. Then, results are obtained by decreasing the coverage range by taking its value 80%, 70%, 60% and 50% of r . In some cases, the algorithm could not find any result. In those cases, result positions in the table are kept B L AN K . It is observed from Table 6 that the tour costs increases gradually as the covering range decreases gradually. Clearly, this observation also agrees with reality.
Again results are obtained for the restricted problems where the Hamiltonian path of a CSP is searched under the restriction of a specific coverage range of different groups, i.e. total distance of different cities of a group from the visiting city should not exceed a predefined level. For this study, the group coverage range is considered as N C * r /3 for any problem, where the symbols are previously defined and the value of r is mentioned in the table. Results are obtained for different problems and are presented in Table 7. If, for any case, solution does not exists, then the solution position of such problems are kept B L AN K in the table.
As this is the initial study on imprecise CSP, no standard test problems on fuzzy CSP exist in the literature. Due to this reason, test problems with fuzzy cost parameters are generated from the previously considered standard benchmark test problems of CSPs with crisp parameters. To test the proposed algorithm in a fuzzy environment, these fuzzy CSPs are used. In a crisp CSP, if travel cost between node i and node j is d i j , then following Khan et al. Khan et al.   (2018,2019), the corresponding fuzzy cost is generated as where R1 and R2 are randomly generated between (0, R × d i j /100). Here, R is the percentage of fuzziness and its value is considered as 0.5, i.e. here, maximum 0.5% fuzziness is considered for the fuzzy costs. Table  8 presents the computational results of these problems using the proposed algorithm in fuzzy environment. As cost matrices are generated with 0.5% fuzziness the tour costs of the best found paths are near to the corresponding crisp problems and it implies that the proposed algorithm is efficient enough to solve CSPs with fuzzy cost matrices. Results are obtained following both the direct credibility measure approach and the simulation approach for the same, and the same results are obtained. As a result, only one result table is presented, as, the same results are obtained using two approaches. Due to the same reason as the fuzzy CSPs, there are no standard test problems on rough CSPs in the literature. Due to this reason, test problems with rough cost parameters are generated from the previously considered standard benchmark test problems of CSPs with crisp parameters. To test the proposed algorithm in a rough environment, these generated CSPs with rough cost parameters are used. If in a crisp CSP, travel cost between node i and node j is d i j , then following Khan et al. Khan et al. (2019), the corresponding cost in the rough environment is generated asd and R1, R2, R3 are randomly generated in (0, R × d i j /100). Here, R is the per-centage of roughness and its value is considered as 0.5, i.e. here maximum 0.5% roughness is considered for the rough costs. Table 9 presents the computational results of these problems using the proposed algorithm in rough environment. As cost matrices are generated with 0.5% roughness the tour costs of the best found paths are near to the corresponding crisp problems and it implies that the proposed algorithm is efficient enough to solve CSPs with rough cost matrices. Results are obtained following both the direct trust measure approach and the simulation approach, and the same results are obtained. As a result, only one result table is presented, as, the same results are obtained using two approaches.

Conclusion
Here, for the first time, the ACO algorithm is modified with K -opt operation to develop an efficient and consistent algorithm for CSPs under one restriction in crisp and imprecise (fuzzy, rough) environments. An algorithm is proposed for the division of groups of the cities depending upon the maximum number of cities in a group and the total number of groups. The ACO is used to find the shortest/minimum-cost path of any problem by selecting only one city from each group in such a manner that all the unvisited cities are within a predefined coverage range r . K -opt algorithm is used at the end of ACO operation for the possible improvement of the quality of the solution. Here, study is made only in two imprecise environments-fuzzy environment and rough   Table 4 Performance study with respect to the average cost and the standard deviation of the results in 5 runs LS2 Golden et al.

Table 5
The computational results due to different coverage range(r) Instance NC Best tour cost found for different NB and coverage range r NB