Introduction

The maximal covering location problem (MCLP) aims to select the location of a fixed number of facilities to maximize covered nodes. A covered node has at least one facility within a predetermined distance or time, called the ‘covering radius’. Known as covering models, these are very popular among researchers because of their applications in real-world problems. There are many studies that have incorporated extensions of the covering location problem (see Berman et al. 2009; Zade et al. 2014; Javadi and Shahrabi 2014).

In MCLP models, coverage occurs in areas within the covering radius. Two important assumptions of the MCLP are ‘binary coverage’ and ‘individual coverage’. Gradual covering and cooperative covering are two new developments in covering location models that generalize binary coverage and individual coverage, respectively. In recent years, some researchers have focused on these types of problems (see Berman et al. 2013; Averbakh et al. 2014; Bashiri et al. 2014; Drezner and Drezner 2014; Peker and Kara 2015; Bagherinejad et al. 2016).

In previous studies, models have been developed separately for the gradual covering location problem and the cooperative covering location problem. However, it seems that cooperative concepts can be applied concurrently with gradual covering. Comparison of Figs. 1 and 2 clarifies the difference between cooperative covering and cooperative gradual covering.

Fig. 1
figure 1

Cooperative covering location problem

Fig. 2
figure 2

Cooperative gradual covering location problem

A simple depiction of cooperative covering is shown in Fig. 1. The received signal strength within the dark color areas is sufficient for covering and every node in these areas is fully covered (e.g., nodes n 1 and n 2). The nodes in other areas are not covered at all. Hence, node n 3 receives some signals; however, because the received signal strength does not reach the threshold required for covering, this node is not covered at all, just like node n 4, which receives no signals.

Figure 2 shows a simple depiction of cooperative gradual covering. The coverage level within the dark color areas is perfect; that is, all demands in these areas will be satisfied (e.g., nodes n 1 and n 2). Nodes, such as n 3, which are located in the light color areas, are partially covered; nodes, such as n 4, which are in colorless areas, are not covered at all.

We focus on merging gradual covering with cooperative covering in the maximal covering location problem with discrete location space. The authors call it the cooperative gradual maximal covering location problem (CGMCLP).

This problem has lots of real-world applications such as cooperative covering problems. Location of light towers, warning sirens, and cell phone towers and also design of emergency response systems are some examples of such applications (see Berman et al. 2010). As an example, the authors focus on two real-world applications which are wave transmitters for servicing to demand nodes in an area and distribution centers that receive goods from some warehouses to describe the proposed problem more clearly.

Wave transmitters can cooperate to cover a demand node to send/receive a signal. Suppose that two facilities in Fig. 2 are wave transmitters. Node n 2 can be partially covered to send/receive signals by each transmitter, while it can receive more coverage by weak signals provided by the second transmitter. As another example, consider distribution centers that receive goods from some warehouses. Due to the limitation of warehouses inventories, a distribution center can be supported by one or more warehouses fully or partially using cooperative and gradual coverage simultaneously. In the field of cooperative covering, a discrete CMCLP model was developed by Berman et al. (2011). However, they did not consider allocation in their model.

In the case of physical signals, the allocation decision cannot be determined in the design stage, so it is done during the servicing stage. However, allocation may be important in non-physical signal applications. Inappropriate or ineffective allocation results in higher transportation costs. Therefore, the authors add an allocation variable to the CMCLP and CGMCLP models for non-physical signals.

Moreover, in this paper, it is shown that the CGMCLP model is a general form of previous models. Generalizing several models in one model is an approach that has been adopted by different researchers to develop different subjects (see Kazemzadeh et al. 2008; Vidal et al. 2014; Vidal et al. 2014). This prompted us to offer a general model that can be converted to other models. This general model with proper setting of parameters has all the characteristics of subset models and also facilitates running multiple models to study their specifications and compare their results. This paper provides a general model called the general CGMCLP model; it can be transformed into the classical MCLP, CMCLP, and CGMCLP models by related parameters setting.

The proposed models are NP-hard, so simulated annealing (SA) and tabu search (TS) algorithms are developed for solving them in large-size problems. Then, the results of the CGMCLP model are compared with the CMCLP and GMCLP models in numerical examples to show better performance of the CGMCLP model.

Briefly, as stated in the literature review section (Table 1), previous researchers focused on just one of the gradual coverage and the cooperative coverage separately and the combination of these two concepts in one model is a gap in this research area. This paper addressed merging gradual coverage and the cooperative coverage in one general model in discrete location space.

Table 1 Overview of research on coverage functions as extensions of maximal covering problems

This paper is organized as follows. Section 2 presents a literature review. In Sects. 3, 4, and 5, the proposed models are developed and illustrated in numerical examples. The developed SA and TS algorithms are analyzed in Sect. 6. Finally, this paper is concluded in the last section.

Literature review

Since Church and ReVelle (1974) introduced the maximal covering location problem, the covering concept has attracted substantial attention from researchers, who have developed it with different assumptions. Schilling et al. (1993) reviewed the literature on covering problems in facility location. Farahani et al. (2012) reviewed studies on the covering problem done from 1993 to 2011.

As a special case of covering, in this paper, it is discussed the coverage function. In this field, different generalizations of the traditional coverage function have been proposed to develop covering location models. Berman et al. (2010) presented a review of generalizations of three implicit assumptions of covering models: (1) binary coverage; (2) individual coverage; and (3) fixed covering radius. Gradual covering, cooperative covering, and variable radius are methods which have been proposed to relax these three, respectively. In this paper, the authors focus on the first two methods.

Gradual covering

The first aforementioned assumption (binary coverage) implies that each node is fully covered if it has at least one facility within the covering radius; otherwise, its coverage level is zero. However, this assumption is unrealistic for real-world applications. Gradual covering is more reasonable in some cases, since the coverage level decreases from 100% to zero according to its distance from the facility; the maximization of total coverage is the main objective. Verter and Lapierre (2002) considered application of gradual covering in the location of preventive health care facilities. Drezner et al. (2004) have also described a number of potential applications in this field.

Berman and Krass (2002) considered gradual covering with a step-coverage function in a network and developed heuristic approaches to solving it. They called their model GMCLP and indicated that it is NP-hard, because it is a generalization of another NP-hard problem (MCLP). Berman et al. (2003) considered a network and discrete models with a coverage decay function that is a general non-increasing function. Drezner et al. (2004) presented a planar version with a non-decreasing linear coverage function and formulated the objective function to minimize total non-coverage. Karasakal and Karasakal (2004) investigated a discrete gradual covering model and defined the partial coverage. Berman et al. (2009) developed an ordered gradual covering location problem (OGCLP) model that generalizes the p-center, p-median, p-covering, and gradual covering models.

Drezner et al. (2010) considered a planar version of a gradual covering problem with a probabilistic covering function in which covering radii are random variables with uniform distribution. Berman et al. (2011) developed a probabilistic gradual covering model for a network in which demand weights are independent discrete random variables. Berman and Wang (2011) considered this model with unknown probability distributions for demand weights.

Drezner et al. (2014) proposed a gradual covering problem in discrete space. They assumed that the coverage function has a normal distribution. Their model attempts to maximize the minimum cover of the demand points and allows multiple facilities to be at the same location (co-location) for this purpose.

Recently, Bashiri et al. (2014) proposed a gradual covering problem with a stochastic coverage radius that may have different types of distribution functions. Peker and Kara (2015) developed a P-Hub maximal covering problem with a gradual coverage function.

Cooperative covering

The second mentioned assumption of the classical covering models (individual coverage) implies that every node can be covered by only one facility. Berman et al. (2010) proposed a cooperative covering location model to relax this assumption. Cooperative covering eliminates this constraint and every node can be covered by one or more facilities. For some specific applications, Berman et al. (2010) presented a new coverage definition by a signal strength concept; a node can be covered when the signals, it receives exceed a predefined threshold. It is clear that the gradual covering concept can be considered in cooperative covering as well.

Berman et al. (2010) classified signals into two categories: physical and non-physical. In location analysis of wave transmitters as a case of physical signals, each node may receive signals from several wave transmitters. In such cases, use of cooperative covering can lead to increases in resource productivity due to the contribution of facilities in covering the nodes. Berman et al. (2010) also described a number of potential applications in the real world for cooperative covering models. They formulated a cooperative set covering problem (CSCP) and CMCLP and solved them in the plane. They also developed heuristic algorithms for the problems.

Maximal covering location, set covering, and p-center problems with cooperative covering in discrete and network space were considered by Berman et al. (2011). A cooperative covering location problem with a linear and piecewise linear signal decay function on networks was analyzed by Averbakh et al. (2014). Berman et al. (2013) considered this problem on networks with a general decay function.

Jabalameli et al. (2011) developed a special form of the MCLP model on networks in which methods of gradual coverage, cooperative coverage, and covering with variable radius are applied simultaneously.

Another form of the maximal covering model is the hierarchical MCLP (HMCLP), in which different types of facilities provide different servicing levels. A cooperative hierarchical maximal covering location problem with referral (CHMCLP(R)) in discrete location space was developed by Bagherinejad et al. (2016).

Although cooperative covering with the above-described properties was proposed by Berman et al. (2010), different cooperative models, such as multiple covering by Daskin and Stern (1981), backup coverage by Hogan and ReVelle (1986), a maximal availability location problem (MALP) by ReVelle and Hogan (1989), and a queuing MALP by Marianov and ReVelle (1996) had been presented before the Berman et al. (2010) model. In addition, after Berman et al. (2010), Seifbarghy et al. (2011) proposed a model for locating a number of multiserver facilities in which each customer can be served by several facilities, according to a probabilistic distribution. These studies, along with Drezner et al. (2014), are not based on cooperative coverage, even though they allow coverage by more than one facility.

In this paper, a discrete version of the CGMCLP (cooperative gradual MCLP) is proposed. The authors also formulate CMCLAP and CGMCLAP models in which an allocation variable has been added. A brief summary of related previous research is shown in Table 1.

Formulation of the CMCLAP model

In this section, a formulation for a cooperative maximal covering location–allocation problem is developed. Berman et al. (2011) proposed a CMCLP model in discrete and network space. This model, with some changes in notation, is as follows:

$$ {\text{Max}}\left( {\sum\limits_{i \in I} {r_{i} x_{i} } } \right) $$
(1)

s.t.

$$ Tx_{i} \le \sum\limits_{j \in J} {\phi \left( {d_{ij} } \right)y_{j} } \quad \forall i \in I $$
(2)
$$ \sum\limits_{j \in J} {y_{j} = p} $$
(3)
$$ x_{i} \in \left\{ {0,1} \right\}\quad \forall i \in I $$
(4)
$$ y_{j} \in \left\{ {0,1} \right\}\quad \forall j \in J $$
(5)

where I: set of nodes; (iI), J: index set of potential facility locations; (jJ), r i : demand at node i (or weight of node i), p: number of facilities which are located, d ij : distance between nodes i and j, \( \phi \left( {d_{ij} } \right) \): received signal strength by node i from facility at j. This function is assumed to be a non-negative, non-increasing, and left continuous (see Berman et al. 2010), T: signal threshold (T > 0),

$$ y_{j} :\left\{ {\begin{array}{ll} 1 &\quad {{\text{if a facility is located at}} \,j,} \\ 0 &\quad {{\text{otherwise}},} \\ \end{array} } \right. $$
$$ x_{i} :\left\{ {\begin{array}{ll} 1 &\quad {{\text{if node}}\,\,i\,\,{\text{is covered}},} \\ 0 &\quad {{\text{otherwise}} .} \\ \end{array} } \right. $$

Objective function (1) maximizes the covered demands. The right side of constraint (2) is the summation of signal strengths received by node i from all facilities. If this summation is less than the coverage threshold, then node i cannot be covered; otherwise, it will be counted as a covered node. Constraint (3) ensures that p facilities are located. Constraints (4) and (5) impose binary restrictions on the decision variables.

In the case of non-physical signals, cooperative coverage can be considered. Consider a distribution center location problem. It is appropriate to apply cooperative covering in this application, because each distribution center should receive part of its demand that is less than the warehouse inventory from a warehouse, and the remaining demand should be covered by another warehouse. It is clear that in this situation, transportation cost is very important, so the allocation decision should be determined.

In the case of physical signals, the allocation decision is not important, and the CMCLP model is appropriate. However, it should be defined in non-physical signal applications. The cooperative maximal covering location–allocation problem (CMCLAP) for applications of non-physical signals is formulated as follows:

$$ {\text{Max}}\left( {w_{1} \sum\limits_{i \in I} {r_{i} x_{i} } - w_{2} \sum\limits_{i \in I} {\sum\limits_{j \in J} {c_{ij} v_{ij} } } } \right) $$
(6)

s.t.

$$ Tx_{i} \le \sum\limits_{j \in J} {\phi \left( {d_{ij} } \right)v_{ij} \quad \forall i \in I} $$
(7)
$$ v_{ij} \le a_{ij} y_{j} \quad \forall i \in I,j \in J $$
(8)
$$ \sum\limits_{j \in J} {y_{j} = p} $$
(9)
$$ x_{i} \in \left\{ {0,1} \right\} \quad \forall i \in I $$
(10)
$$ y_{j} \in \left\{ {0,1} \right\} \quad \forall j \in J $$
(11)
$$ v_{ij} \in \left\{ {0,1} \right\}\quad \forall i \in I , \forall j \in J $$
(12)

where

$$ v_{ij} :\left\{ {\begin{array}{ll} 1 &\quad {\text{if node i is allocated to facility which has been located at \,j,}} \\ 0 &\quad {\text{otherwise,}} \\ \end{array} } \right. $$
$$ a_{ij} :\left\{ {\begin{array}{ll} 1 &\quad {{\text{if node}}\, i\, {\text{is within the covering radius of}}\, j,} \\ 0 &\quad {{\text{otherwise}} .} \\ \end{array} } \right. $$

c ij : allocation cost of node i to facility j, which can be calculated by a predefined function of distance, demand, routing properties, etc., w 1, w 2: the weights (percentage) of covering term and allocation costs, respectively, determined by a decision maker; w 1 + w 2 = 1.

Objective function (6) maximizes the covered demands with minimum total allocation costs. The right side of constraint (7) is equal to the summation of signals strengths received by node i from all allocated facilities. If it is more than or equal to threshold, then the node will be counted as a covered node. It is worth mentioning that in this problem, the threshold can be considered as the node demand. Constraint (8) ensures that node i can be allocated to facility j only if node i is within the facility j coverage area. The number of located facilities should be p by constraint (9). Constraints (10)–(12) impose binary restrictions on the decision variables. Both the CMCLP and CMCLAP are integer linear programming models.

Formulation of the CGMCLP model

In this section, gradual and cooperative covering concepts are applied to the MCLP simultaneously. As previously noted, cooperative coverage alone ignores some demand points due to shortages of sufficient signals. The authors propose cooperative gradual covering as a better solution.

We define cooperative gradual covering as follows: every node as cooperative covering can be covered by one or more facilities and as gradual covering can be covered fully or partially. In this problem, the objective is maximization of covered demands.

The first model (CGMCLP) can be applied for cases of physical signals without allocation decision. The second model (CGMCLAP) can be applied for cases of non-physical signals, and the allocation decision should be defined in the model.

The coverage function can be defined as the gradual covering model (see Berman et al. 2003; Karasakal and Karasakal 2004):

$$ \phi \left( {d_{ij} } \right) = \left\{ {\begin{array}{ll} 1 &\quad { \, d_{ij} \le R_{1} } \\ {f\left( {d_{ij} } \right)} &\quad {R_{1} < d_{ij} \le R_{k} ;\,\left( {0 < f\left( {d_{ij} } \right) < 1} \right)} \\ 0 &\quad {d_{ij} > R_{k} } \\ \end{array} } \right. $$
(13)

where R 1 and R k are the minimum and maximum covering radii. The total coverage level of each node i can be given by

$$ \Phi_{i} = \sum\limits_{j \in J} {\phi \left( {d_{ij} } \right)y_{j} } \quad \forall i \in I. $$
(14)

According to above, the CGMCLP model can be presented as follows:

$$ {\text{Max}}\left( {\sum\limits_{i \in I} {{\text{Min}}\left\{ {r_{i} x_{i} \Phi_{i} ,r_{i} } \right\}} } \right) $$
(15)

s.t.

$$ x_{i} \le \sum\limits_{j \in J} {a_{ij} y_{j} } \quad \forall i \in I $$
(16)
$$ \sum\limits_{j \in J} {y_{j} = p} $$
(17)
$$ x_{i} \in \left\{ {0,1} \right\}\quad \forall i \in I $$
(18)
$$ y_{j} \in \left\{ {0,1} \right\}\quad \forall j \in J. $$
(19)

Objective function (15) maximizes the covered demands. If x i Φ i is equal to or greater than 1, total demands at node i (r i ) will be satisfied. Otherwise, a part of node i demand means r i x i Φ i will be covered. Equation (15) can also be written as minimization of uncovered demands; \( {\text{Min}}\left( {\sum\nolimits_{i \in I} {{\text{Max}}\left\{ {r_{i} - r_{i} x_{i} \Phi_{i} ,0} \right\}} } \right) \). Constraint (16) ensures that node i can be partially or fully covered only if it is within the maximum covering radius of at least one facility. Constraints (17)–(19) are similar to constraints (3)–(5).

The CGMCLAP considering allocation decisions can be formulated as follows:

$$ {\text{Max}}\left( {w_{1} \sum\limits_{i \in I} {{\text{Min}}\left\{ {\sum\limits_{j \in J} {r_{i} x_{ij} \phi } \left( {d_{ij} } \right),r_{i} } \right\} - w_{2} \sum\limits_{i \in I} {\sum\limits_{j \in J} {c_{ij} x_{ij} } } } } \right) $$
(20)

s.t.

$$ x_{ij} \le a_{ij} y_{j} \quad \forall i \in I,j \in J $$
(21)
$$ \sum\limits_{j \in J} {y_{j} = p} $$
(22)
$$ y_{j} \in \left\{ {0 ,1} \right\}\quad \forall j \in J $$
(23)
$$ x_{ij} \in \left\{ {0,1} \right\}\quad \forall i \in I ,\,\, j \in J. $$
(24)

Objective function (20) maximizes the covered demands with a minimum total allocation cost. Other constraints are the same as previous models. Both the CGMCLP and CGMCLAP are integer non-linear programming models. It should be noted that non-linear models have real applications such as cell formation and single and multiple allocation maximal hub covering problems (see Zade et al. 2014; Shirazi et al. 2014).

Comparing the proposed models with previously developed models shows that both the CMCLP and CGMCLP models are appropriate general forms of the MCLP. A comparison between the classical MCLP and the proposed models is shown in Table 2. Table 3 shows that the proposed CGMCLP is a general form of the GMCLP and it can be transformed into previous models by choosing the proper values of parameters.

Table 2 Comparison of MCLP model with CMCLP and CGMCLP models
Table 3 Comparison of GMCLP and CGMCLP models

By generalizing the formulation of several models in one model, features of all models can be integrated into a single model. This general model can help researchers and other practitioners who use one model instead of multiple models when they want to compare the results of several models.

To take advantages which mentioned above, a new integrated general covering model called a general CGMCLP is developed. This model can be transformed into the classical MCLP, and also into CMCLP and CGMCLP. This general CGMCLP model without allocation decision is formulated as follows:

$$ {\text{Max}}\left( {\sum\limits_{i \in I} {{\text{Min}}\left\{ {r_{i} x_{i} \sum\limits_{j \in J} {\left\{ {\phi \left( {d_{ij} } \right) + b} \right\}^{q} y_{j} } ,r_{i} } \right\}} } \right) $$
(25)

s.t.

$$ T^{{\prime }} x_{i} \le \sum\limits_{j \in J} {a_{ij}^{{\prime }} y_{j} } \quad \forall i \in I $$
(26)
$$ \sum\limits_{j \in J} {y_{j} = p} $$
(27)
$$ x_{i} \in \left\{ {0 ,1} \right\}\quad \forall i \in I $$
(28)
$$ y_{j} \in \left\{ {0 ,1} \right\} \quad \forall j \in J. $$
(29)

The general CGMCLP with allocation decision is formulated as follows:

$$ {\text{Max}}\left( {w_{1} \sum\limits_{i \in I} {{\text{Min}}\left\{ {r_{i} x_{i} \sum\limits_{j \in J} {\left\{ {\phi \left( {d_{ij} } \right) + b} \right\}^{q} v_{ij} } ,r_{i} } \right\} - w_{2} \sum\limits_{i \in I} {\sum\limits_{j \in J} {c_{ij} v_{ij} } } } } \right) $$
(30)

s.t.

$$ T^{{\prime }} x_{i} \le \sum\limits_{j \in J} {a_{ij}^{{\prime }} v_{ij} \quad \forall i \in I} $$
(31)
$$ v_{ij} \le a_{ij} y_{j} \quad \forall i \in I, j \in J $$
(32)
$$ \sum\limits_{j \in J} {y_{j} = p} $$
(33)
$$ x_{i} \in \left\{ {0,1} \right\}\quad \forall i \in I $$
(34)
$$ y_{j} \in \left\{ {0,1} \right\}\quad \forall j \in J $$
(35)
$$ v_{ij} \in \left\{ {0,1} \right\}\quad \forall i \in I, \quad \forall j \in J. $$
(36)

Objective function (25) is the total covered demands and objective function (30) is the total covered demands with a minimum total allocation cost in the general form. It is clear that the objective functions and constraints in these two models can be converted into previously mentioned models by changing the relevant parameters. The role of parameters in the transformation of the general form to models MCLP, CMCLP and CGMCLP is shown in Table 4.

Table 4 Conditions for transforming the general CGMCLP (and CGMCLAP) into other covering models

If the parameters in the general CGMCLP model are set as q = 0, b = epsilon, \( T^{{\prime }} \) = T and \( a_{ij}^{{\prime }} \) = \( \left\{ {\begin{array}{ll} 1 &\quad {if \, d_{ij} \le R_{1} } \\ {f\left( {d_{ij} } \right)} &\quad {if \, R_{1} < d_{ij} \le R_{k} = \phi \left( {d_{ij} } \right)} \\ 0 &\quad {if \, d_{ij} > R_{k} } \\ \end{array} } \right.; \) then, this model transforms into the CMCLP, as stated in Table 4. It should be noted by considering the mentioned settings Eqs. (25) and (26) transform into Eqs. (1) and (2), respectively. Moreover, Eqs. (27)–(29) in the general CGMCLP are the same as Eqs. (3)–(5) in the CMCLP. Other models have the same structure as mentioned.

Illustrative numerical example

Now, two CMCLAP and CGMCLAP models are considered in a simple numerical example. Suppose 4 facilities should be located among 15 potential demand nodes. The properties of the nodes are shown in Table 5.

Table 5 Coordinates and demands of nodes in the numerical example

Each facility can be located at each node (JI). It is assumed that each allocation cost is equal to c = 10. Since covering demands is more important than allocation cost, w 1 and w 2 are set to w 1 = 0.999 and w 2 = 0.001. The signal function \( \phi \left( {d_{ij} } \right) \) for CMCLAP (and the coverage function for CGMCLAP) is defined as the percent of node i demands covered by facility j in distance d ij . This function is given by

$$ \phi \left( {d_{ij} } \right) = \left\{ {\begin{array}{ll} 1 & {d_{ij} \le 100} \\ {0.6} & { 1 0 0 < d_{ij} \le 150} \\ {0.4} & { 1 5 0 < d_{ij} \le 200} \\ 0 & {{\text{otherwise}} .} \\ \end{array} } \right. $$

It is assumed that the distance type is Euclidean and each node is covered if it receives all of its demands (T = 1).

This example is solved by the LINGO 8.0 software for the CMCLAP and the CGMCLAP models. LINGO classifies these two models as PLIP and PINLP, respectively. The exact approach to solving these models in the LINGO software is a branch and bound (B&B) algorithm. The results for CMCLAP and CGMCLAP are shown in Tables 6 and 7, respectively. Parentheses in the allocation row of Table 7 represent partial coverage.

Table 6 Example results for CMCLAP model
Table 7 Example results for CGMCLAP model

With respect to Table 6, nodes 1, 4, 9, 11, 12, and 13 are not covered, because they do not receive enough signals from the located facilities; nodes 7, 14, and 15 are covered cooperatively. The signal strengths received in nodes 2, 3, 5, 6, and 8 are more than predefined threshold T = 1. It is clear that determined allocations have minimum allocation cost.

In this example, the results of covered demands are 137 and 157.6 for the CMCLAP and CGMCLAP, respectively. The larger covered demands by CGMCLAP (about 15%) are due to the gradual concept and structure. This example is solved by the GMCLP model and covered demand is 153.4.

For more analysis, random problems in different sizes were generated and solved for five and ten facilities. The other parameters are assumed to be the same as those determined in the previous example. Figure 3a, b shows that the total covered demands by CGMCLP is more than CMCLP and GMCLP.

Fig. 3
figure 3

Covered demands by GMCLP, CMCLP, and CGMCLP models with two-state facility numbers p = 5 (a) and p = 10 (b)

Comparison of the covered demands resulting from the CGMCLP model and models GMCLP and CMCLP in these two states with generated problems are shown in Fig. 4. It shows that more demands are covered by the CGMCLP in comparison with the CMCLP and GMCLP. It also shows that when the number of facilities is equal to or close to the number of nodes, the difference of covered demands by two models will be near zero. This difference increases as the number of nodes increases, and when the number of nodes is large enough with respect to the number of facilities, the behavior of the difference changes, as shown in Fig. 4.

Fig. 4
figure 4

Comparison of covered demands between GMCLP, CMCLP, and CGMCLP models

Setting of covering radii in the coverage problem has a major effect on the performance of the model. If the covering radii are set very small or close together, the results of the proposed models are equal to each other and even equal to the results of the traditional MCLP. In the above example, if 100, 100, and 100 or 100, 102, and 105 are applied for R 1, R 2, and R 3 instead of 100, 150, and 200, the CMCLAP and CGMCLAP models perform similar to the MCLAP (maximal covering location–allocation problem) with R = 100. The results of comparison between the three cases with the same radii of 100 and different radii are shown in Table 8.

Table 8 Analysis of different radii of the facility in performance of introduced models

For validating the proposed models, a real problem instance with 15 nodes from the Civil Aeronautics Board data set is used. The authors generate node demands randomly and consider all the same parameters as the previous example, except for the radii in the coverage function, which are set as follows: R 1 = 400, R 2 = 600, and R 3 = 800. Using a B&B solver in the LINGO software, the CMCLAP provides a global optimum coverage equal to 1009.829, while the CGMCLAP obtains a larger local optimum coverage equal to 1040.908.

Development of simulated annealing and tabu search algorithms for the CMCLAP and CGMCLAP models

In this section, simulated annealing (SA) and tabu search (TS) algorithms are developed for the CMCLAP and CGMCLAP models. These two metaheuristics have been used previously to solve problems in many studies, such as Berman et al. (2011), Jabalameli et al. (2011), Jahromi et al. (2012), Bashiri and Karimi (2012), Drezner et al. (2014), Berman et al. (2009) and Shirazi et al. (2014), etc.

The simulated annealing (SA) algorithm is a probabilistic metaheuristic with efficient results when the search space is discrete. The parameters of the SA algorithm are initial temperature (t 1), frozen temperature (t 0), cooling ratio (0 < α < 1), maximum number of algorithm iterations in each temperature (Nmax), and maximum number of accepted solutions in each temperature (M max). This algorithm starts with a high initial temperature (t 1). The temperature is reduced according to a cooling schedule via multiplying α by current temperature (t). The algorithm is run several times at each temperature and ends when the frozen temperature (t 0) is reached. In this algorithm, non-improvement movements are accepted with a certain probability to avoid trapping in a local optimum.

The implementation steps of this algorithm are summarized as follows:

Step 1:

Input data (node coordinates and demands, number of facilities (p), …)

Step 2:

Construct the signal function of \( \phi \left( {d_{ij} } \right) \)

Step 3:

Initialize the algorithm parameters

Step 4:

Construct an initial random feasible solution (facility location) using a 1 × n binary array in which n is the number of potential facility locations and the number of ones is equal to p. For example:

 

1

2

3

4

n

y j :

0

1

0

1

0

Step 5:

Calculate other variables corresponding to constraints (31) and (32) and then calculate the objective function value by Eq. (30)

Step 6:

Generate a new feasible solution by swapping operation on location of a random selected facility and calculate the objective function value of the new solution

Step 7:

Stabilize the new solution as a current solution if the objective function value has been improved, otherwise stabilize it with a probability of \( \exp (\frac{ - \Delta z}{t}) \)

Step 8:

If the number of algorithm iterations in the current temperature is equal to N max, or the number of accepted solutions in the current temperature is equal to M max, go to the next step. Otherwise, go back to step 6

Step 9:

Reduce the temperature

Step 10:

Terminate the algorithm when the frozen temperature is reached.

Setting parameters in metaheuristic algorithms has a high impact on their performance. The algorithm parameters are tuned using a 10 replicated 34 experimental design. Figure 5 shows the main effect plot of each SA for the CMCLP with 200 nodes. According to the main effects plot, the tuned parameters were set as t 1 = 50, t 0 = 0.05, and α = 0.99.

Fig. 5
figure 5

Main effects plot of the SA algorithm parameters for the CMCLAP model

Tabu search (TS) is a local search metaheuristic algorithm with a short-term memory (STM) (tabu list) to avoid returning to previous solutions. It also has a long-term memory (LTM) that conducts the search process. In this algorithm, there are two main parameters of STM, size, and maximum iterations (F max), which is tuned by a 42 experimental design. The tuned setting of STM was set at 5 and F max is set at 2,000, according to the main effects plot, which is shown in Fig. 6. Similar results are achieved for the CGMCLAP model by both algorithms.

Fig. 6
figure 6

Main effects plot of the TS algorithm for the CMCLAP model

Tables 9 and 10 show covered demands and running times of the SA and TS algorithms for random generated problems for the CMCLAP and CGMCLAP, respectively. The problems were solved by the LINGO software for better comparison. The runs were conducted on a personal computer with an Intel I3 CPU with 1.6 GHz processor and 2 GB RAM. Comparison of the results shows that the developed algorithms have better performance than an exact solution approach for large-sized problems. For example, highlighted values in Table 10 show that these two algorithms could provide good results in a few seconds, while the Lingo software could not reach to global optimum after a long time. Comparison of average covered demands by the SA and TS algorithms, which are displayed in Fig. 7, shows that the results are close together. In addition, it can be seen that in small examples, both SA and TS find a global optimum. According to the left chart in Fig. 7, increasing the number of nodes developed SA algorithm shows slightly better performance than the TS to solve the CMCLP. For the CGMCLP model, this result is reversed, as seen in the right chart of Fig. 7. Tables 9 and 10 show that the TS algorithm, particularly in large-size problems, is relatively faster than the SA. For instance, the standard deviation of the covered demands and running time of the SA and TS algorithms have been calculated, for example, with 150 nodes in Table 9. Standard deviations of covered demands for the SA and TS algorithms are 112.2 and 115.96, respectively. Standard deviations of running times of the SA and TS algorithms in the same example are 1.26 and 0.15, respectively.

Table 9 Covered demands and running times of the CMCLAP by developed algorithms
Table 10 Covered demands and run times of the CGMCLAP by developed algorithms
Fig. 7
figure 7

Comparison of average covered demands by SA and TS algorithms for CMCLP and CGMCLP models

Conclusions

In this paper, cooperative and gradual covering concepts were applied to the maximal covering location problem (MCLP) simultaneously, and a cooperative gradual maximal covering location problem (CGMCLP) model in discrete location space was proposed. To make the cooperative models more applicable for non-physical signals, an allocation variable was added to the CMCLP and CGMCLP models. New models called CMCLAP and CGMCLAP were formulated and analyzed as well.

It was shown that the CGMCLP is a general form of previous models. Then, an integrated general CGMCLP model as a general form of the MCLP, CMCLP, and CGMCLP models was developed. This general model can be converted into the classical models by proper setting of parameters.

Comparisons of the GMCLP and CMCLP with the CGMCLP by numerical examples show that the CGMCLP covers more demands. Since the proposed models are NP-hard, simulated annealing (SA) and tabu search (TS) algorithms were developed to solve the proposed models in large-sized instances. Parameters of the SA and TS algorithms were tuned by experimental design. Some random numerical examples are solved by the LINGO software and the algorithms. The efficiency of the algorithms in terms of solution quality and running time is shown through comparison of the findings. The results show that in large problems, the TS algorithm is about 70% faster than the SA algorithm (see highlighted values in Tables 9 and 10).

In this paper, the problem was considered in a discrete space and assumed that all facilities deliver similar service levels. Moreover, node demands are deterministic. A possible direction for future research would be developing a CGMCLP model in planar space and network space in which the facilities are allowed to be located at both the nodes and along the edges. Another suggestion is developing a general cooperative gradual hierarchical covering location model that integrates hierarchical covering location problems. Yet, other approaches would be assumption of stochastic demands in the proposed models and also using of other metaheuristic algorithms for solving the proposed mathematical model.