Introduction

The problem and background

Today, attention to environmental issues in planning and urban development activities can be an effective step toward improving the environment and the lives of citizens. For this reason, experts and researchers in recent years have continually sought to assess the environmental impacts of urban projects (Nasiri et al. 2019) in order to move toward more sustainable development. Thus, urban development would be meaningless without considering environmental sustainability. Urban sustainability is sought after environmental sustainable development. A definition has been set out by the International Council on Local Environmental Initiatives aiming for sustainable development: It is the provision of environmental, social, and economic services without any threat to the environment, or to buildings and social systems that depend on it. Sustainable development is not limited to the natural resources which are at risk, but other qualitative characteristics are also at risk, such as landscape, heritage, history, comfort, and the capability of urban areas to provide safety, health, and enjoyment (Shoja and Heidari 2015).

The concept of sustainable development relates to the human environment and focuses on the development of economic opportunity through environmental considerations and social justice. Social justice is one of the main pillars of sustainable development, playing an important role in the distribution of facilities and services between individuals. At the same time, international society faces challenges in managing the built environment in order to deal with a changing climate and to stop damage to our environment.

The Centre for Sustainable Development at Ghent University has specified eight aspects that the built environment should protect (Nielsen and Galamba 2010):

  • Culture and leisure

  • Learning and education

  • Enterprise and work

  • Safety

  • Housing

  • Transport and mobility

  • Medical and social care

  • Nature and environment management.

As is clear, safety, environment management and housing are requirements of the built environment. Furthermore, the inappropriate location of urban facilities can cause environmental damage and sometimes the destruction of habitat, in addition to disrupting the optimal functioning of services. Thus, the correct location of urban facilities, and the optimal allocation of the population to them, is a very important problem that must be considered in order to achieve environmental sustainable development in cities. For this reason, the use of location allocation analysis is important.

Location analyses have been investigated for over five decades. Location allocation is one of the main GIS analysis that generates the optimal situation of facilities in order to provide optimal services in response to particular demands. Demands can be allocated to facilities based on parameters including minimum distance, low cost, the capacity of facilities, and more. The inappropriate location of a facility will have a negative effect on its quality of service. If the location of a facility is far from the population space, it will not serve the population effectively. Inappropriate coverage of a demand will also mean a lack of proper service facilities. Nowadays, GIS (as a science and powerful tool) and SDSS (spatial decision support system) can be used effectively in location allocation problems. GIS technology is widely accepted in the world (Vafaeinejad 2018) and is used in various applications (Vafaeinejad 2017; Vafaeinezhad et al. 2010; Shaheen and Iqbal 2018).

GIS is often used to collect and organize spatial data, to introduce potential locations, and to create map outputs for location allocation problems (Church 2002). The GIS platform also permits the production of the spatial distribution of various parameters (Ferchichi et al. 2018), and it is very applicable in the geospatial modeling field of the environmental and natural objects (Shaheen et al. 2019). In general, several main models have been identified for location allocation problems, which are the P-median, the simple plant location problem (SPLP), the P-center, and Coverage problem (Brandeau and Chiu 1989). One of the successful cases in the integration of location allocation models in GIS is the development of an application by ESRI to solve the Median and Coverage problems. This feature works because of the connection between the Median and Coverage problem (the Coverage problem can be presented as a Median problem) (Church and ReVelle 1976). There has been a great deal of research on location and allocation problems integrated with GIS.

Dharmadhikari and Farahmand (2019) used from GIS and optimization methods to solve the location allocation of sugar beet piling centers. Their goal was to minimize the transportation costs, and they stated the effectiveness of this method (Dharmadhikari and Farahmand 2019). Mic et al. (2019) solved a multiobjective location allocation problem for healthcare centers in Syria using a mixed integer-weighted goal programming integrated to GIS. They stated this model outputs can help to decision-makers (Mic et al. 2019). Mindahun and Asefa (2019) solved a location allocation problem of primary schools in Addis Ababa using spatial analyst tools in GIS. They showed the schools situated around infrastructures (Mindahun and Asefa 2019). Kotavaara et al. (2018) integrated location allocation of the private car and public transport users. They investigated the coverage and efficiency of the service network in the Oulu (Kotavaara et al. 2018). Bolouri et al. (2018) explored the function of genetic and simulated annealing algorithms in solving the multiobjective location and allocation problem with the help of GIS. The results showed that the genetic algorithm has a superior quality than simulated annealing. Moreover, it has a shorter execution time (Bolouri et al. 2018). Chen et al. (2018) applied centralized data envelopment analysis for shipping line allocation. They showed the proposed model can provide the desirable outputs (Chen et al. 2018). Aghamohammadi et al. (2013) developed a hybrid algorithm for solving allocation problems based on tabu search algorithm (Aghamohammadi et al. 2013). They showed that this algorithm could produce qualitative solutions in a shorter time than other selected algorithms. Different researches showed that the results of tabu and simulated annealing algorithms are reasonable in location and allocation problems (Kovacevic-Vujcic et al. 1999; Romeijn and Smith 1994).

It is possible to combine some location allocation models. The unification and integration of these models are important for several reasons: (1) it helps us to classify and understand the relationship between various problems, and (2) it can be a tool to introduce and create new models which fulfill human needs (Lei and Church 2014). So far, many unified models have been developed. Lei and Church (2014) presented a model called the VAOMP, which is a generalization of the VAPMP and OMP models. It makes it possible to solve many forms of location allocation problems, such as vector assignment and ordered median problems, as well as many forms that are special cases of either model or new combinations of both. They used the integer linear programming (ILP) method to solve their extended model, which requires expensive software; the computing time and cost of this method are also high (Lei and Church 2014). Lei et al. (2016) used a unified approach and a tabu search algorithm to reduce computational time. Applying this unified approach results in a significant reduction in computational time in solving various problems. Using some algorithms and changing their parameters may result in a reduction in computational time.

The present research intends to investigate and solve the unified VAOMP approach. It applies developed tabu search and simulated annealing algorithms for various types of location allocation problems with different sizes to two scenarios in a case study, following Lei et al. (2016), and compares the results of the algorithms based on the quality of the solutions and the computational time.

Sustainable development

The goal of sustainable development is to integrate economic, social, and environmental objectives to maximize human well-being in the present without damaging the ability of future generations to meet their needs (OECD 2001). Urban sustainability is sought after environmental sustainable development. The World Commission on Environment and Development declares the basic principles for a sustainable city as follows:

  • Increasing economic and social opportunities, so they are sufficient for the population of urban residents

  • Decreasing energy consumption in urban development

  • Making optimal use of water, land, and the other resources required for urban development (Larijani 2016).

As is known in urban sustainability, the problem of optimal land use and location of facilities is important for reducing harm to the environment. Assessing, monitoring, and modeling land use is essential for understanding environmental and management impacts (Yaghobi et al. 2019).

Material and method

VAOMP unified approach

The VAOMP model was first developed by Lei and Church (2014). It can be used to determine the optimal location of facilities according to urban parameters, to establish social justice in cities and to address environmental problems. Then in 2016 the model was successfully used to solve airport problems using the TS algorithm. The present study applies the VAOMP model with TS and SA algorithms. Generally, the VAOMP involves allocating a demand to its first closest facility then to its second closest facility and so on. In the combination of this structure and considering the level of service, each demand must accept multiple allocations. The generalized model minimizes the level of weighted unified service based on the weight vector λ. To formulate the model, the parameters must be defined (Lei and Church 2014):

$${\text{Minimize }}Z = \mathop \sum \limits_{k = 1}^{n} \lambda_{k} w_{k}$$
(1)
$$\mathop \sum \limits_{k = 1}^{n} w_{k} = \mathop \sum \limits_{i \in I} \mathop \sum \limits_{j \in J} \mathop \sum \limits_{i = 1}^{L} a_{i} \theta_{il} d_{ij} x_{ij}^{l} \quad {\text{for every}}\quad i \in I$$
(2)
$$w_{k} \ge \mathop \sum \limits_{j \in J} \mathop \sum \limits_{i = 1}^{L} a_{i} \theta_{il} d_{ij} x_{ij}^{l} - M \cdot \left( {1 - u_{i}^{k} } \right)\quad {\text{for every}}\;i \in I,\;k = 1,2, \ldots n$$
(3)
$$\mathop \sum \limits_{k = 1}^{n} u_{i}^{k} = 1\quad {\text{for every }}\;i \in I$$
(4)
$$\mathop \sum \limits_{i \in I} u_{i}^{k} = 1\quad {\text{for every}}\quad k = 1, 2, \ldots n$$
(5)
$$w_{k} \le w_{k + 1} \quad {\text{for every}}\quad k = 1, 2, \ldots n - 1$$
(6)
$$\mathop \sum \limits_{j \in J}^{L} x_{ij}^{l} \le y_{j} \quad {\text{for every }} \;i \in I, \;l = 1,2, \ldots L$$
(7)
$$\mathop \sum \limits_{L = 1}^{L} x_{ij}^{l} \le y_{j} \quad {\text{for every}}\; i \in I,\; j \in J$$
(8)
$$\mathop \sum \limits_{{q \in C_{ij} }} x_{iq}^{l} + \mathop \sum \limits_{s = 1}^{l} x_{ij}^{s} \ge y_{j} \quad {\text{for every }}\; i \in I,\; j \in J, \; l = 1, 2, \ldots L$$
(9)
$$P_{2} \le \mathop \sum \limits_{j \in J} y_{j} \le P_{1}$$
(10)
$$0 \le x_{ij}^{l} \le 1,\quad y_{j} \;{\text{and }}\;u_{i}^{k} \left\{ { 0,1} \right\}$$
(11)
  • \(a_{i}\) demand (population in each building block) at point i (\(a_{i}\) means, customers, or clients who use the facility services).

  • \(d_{ij}\) cost (such as distance and time) between \(i \in I\) and \(j \in J\) (the cost of the facilities to serve the demands).

  • L the maximum number of adjacent ranks that is considered for any demand in the model (the maximum level of the service usage).

  • \(P_{1}\) the maximum number of open facilities.

  • \(P_{2}\) the minimum number of open facilities.

  • \(x_{ij}^{l} = \left\{ {\begin{array}{*{20}l} 1 \hfill & {\quad {\text{if demand }}i\;{\text{allocates to facility }}\;j\; {\text{as the }}\;l{\text{th closest open facility}}} \hfill \\ 0 \hfill & {\quad {\text{otherwise}}} \hfill \\ \end{array} } \right. .\)

  • \(\theta_{il}\) the fraction of the time demand at i is served by its lth adjacent facility (the level of the service usage: for example, if it is necessary to provide three facilities simultaneously to service the demands, this parameter will change from 1 to 3).

In this formulation, constraint (1) is the VAOMP model. Constraint (2) states the unconditional partial sum \(w_{k}\) at each service rank k. First, \(\sum\nolimits_{i \in I} {\sum\nolimits_{j \in J} {\sum\nolimits_{i = 1}^{L} {a_{i} \theta_{il} d_{ij} x_{ij}^{l} } } }\) is calculated for each demand; it means the cost (distance, time…) of the selected facility by a metaheuristic algorithm to each demand is multiplied by the number of population and ranked level. The calculation of this relation for all demands forms \(\sum\nolimits_{k = 1}^{n} {w_{k} }\). In the next step, all values \(w_{k}\) are ranked from the lowest to highest value and multiplied by the weight vector \(\lambda_{k}\). Each demand can be serviced by L facilities. So, each demand can be allocated to several facilities. In constraint (3), M is a large coefficient. These constraints ensure that whenever i has the kth smallest partial sum, the unconditional partial sum should be equal to the real partial sum of the costs. Constraints (4) and (5) mean each partial sum should be allocated to just one rank and vice versa. It means that each demand or population can only be allocated to one facility in each ranked level. Constraint (6) states that \(w_{k}\) should be smaller than or equal to \(w_{k + 1}\) (given that the demands are ranked from the lowest to highest value). Constraints (7, 8) is a Balinski-like constraint which limits the allocation of demand i to at most one level of closeness for any facility. Constraint (9) states that a demand i is allocated to facility j as the lth closest facility if j is truly the lth closest facility to i. Constraint (10) states that the number of facilities should be between p2 and p1. Constraint (11) defines the good values and constraints for the decision variables (Lei and Church 2014). It means that each demand cannot be allocated to each selected facility. So, first, the metaheuristic algorithms randomly select several facilities among all the facilities. Next, relation (1) is calculated for the selected facilities and all demands. In the next step, the algorithms select another number of facilities and again the relation (1) is calculated for them. This process is repeated so that the best facilities are selected to be modeled. That means, the best value (a minimum or maximum value corresponding to the problem goal) is obtained for relation (1).

Lei and Church (2014) showed the computational complexity of this formulation in solving some problems. However, the proposed model, along with its constraints, helps to allocate any demand to its closest facility at several ranked levels. This model could be used to solve very type of models, including Median, Center, Coverage, and other models. The Median problem introduces the median points among the candidate points to minimize the total cost using the objective function (Zanjirani Farahani and Hekmatfar 2009). Maximal covering location model aims to maximize covering demands with the predetermined number of facilities (Church and ReVelle 1974). The Center problem covers all the points, and its goal is to minimize the maximum distance between demand points and the closest service center (Drenzer 1995). Other problems are the subsets of these three main models.

Generally, location allocation problems seek to find the optimal locations for facilities so that these facilities can serve the existing demands (population) in the study area in the optimum way for the purpose of the problem. One of the location allocation models, which is a unified model and can solve a variety of the aforementioned location allocation models (such as P-Median, P-Center…), is the VAOMP. This model is used in integration with GIS. Given that the problem objective of optimizing the location of the facilities and demand allocation determines the type of the objective (i.e., the location allocation is from which type of problem), the method for using the model will be different. If the objective is to minimize the problem [for example, the problem of minimizing the arrival time of fire trucks to the accident site (population centers)], the model tries to find in GIS, with the help of the OD Cost Matrix, the minimum cost between each facility and demand and to determine the optimal way for which facilities serve which demands in order to reduce costs (such as travel cost, travel time, construction cost…).

Given that the model ranks the arrays of the OD Cost Matrix based on demands from the smallest to highest values, it makes it possible for each demand to be allocated to the closest facility. Therefore, the priority is given to demands that will make the cost lower for that facility. This makes the problem closer to real-world problems and the capacity of each facility is not filled with further demands. Also, when the number of facilities is not enough to serve the demands, the model can determine the optimum locations for creating new facilities to reduce the costs and so the facilities can serve the demands optimally. In maximizing problems (for example, increasing the radius and the coverage of each facility), the model tries to find the maximum cost between each facility and demand with the help of the OD Cost Matrix, and conversely for minimizing problems. The application of this model can be effective in a number of key respects: to identify suitable locations for creating new facilities without damage to the environment and degradation of nature; to investigate the status of the existing facilities to provide optimal services for the demands of the population; to properly and equitably distribute facilities; and to establish social justice for all demands. This represents an effective step toward urban sustainable development, one of the pillars of which is social justice.

Although, this model can be used in different applications in different fields and its output results can be applied in many cases such as the environment, urban development, transportation etc., in this paper the model is used to examine the population use of fire station services and the selection of the best location for the construction of new fire stations to establish social justice and to distribute services appropriately. Therefore, the parameters of the model are urban parameters, such as the population in its urban texture, the distance between the fire station and the location of the population, the arrival time of the fire trucks to the accident site, and the construction cost of the fire stations. The results of the model output contribute directly to the field of urban planning and to build sustainable cities according to urban sustainable development and social justice.

Tabu search (TS) and simulated annealing (SA) algorithms

Most location allocation problems are NP-hard, and hence polynomial algorithms are unlikely to exist. Therefore, metaheuristic methods will be normally used to solve this kind of problem. To solve the problems raised in this study, SA and TS algorithms are used.

Annealing means heating a metal, glass or crystal to its melting point, then thawing it slowly and turning it into a solid crystalline structure. This cooling process creates a high-quality structure, that is known as simulated annealing (SA) (Kirkpatrick et al. 1983; Cerny 1985). Simulated annealing is a general optimization algorithm, based on hill-climbing that, new potential points are chosen from the adjacent of the current points (Nolle et al. 2001). This process can lead to produce an optimal or near-optimal state or solution. The parameters of this algorithm include initial temperature, absolute temperature, and cooling rate (Shamsul Arifin 2011) can be tuned.

Tabu search algorithm is also a high-consumption and cost-effective metaheuristic for combined optimization problems (Habet 2009). Tabu search (TS) initially was suggested by Glover (1989, 1990) and is a repeatable betterment method to reach a global optimum solution for combinatorial optimization problems. The aim of the intelligent search method is to start from an initial solution and to get an optimal point by producing f sequence solutions (Kovacevic-Vujcic et al. 1999). The parameters of this algorithm include tabu tenure; the number of search neighbor and number of generations can be tuned.

The process of model

Later, after developing the VAOMP model and solving it with a TS algorithm, Lei et al. (2016) proposed the use of the simulated annealing algorithm to solve a variety of location and allocation problems. Therefore, in this section, following Lei et al., the simulated annealing algorithm will be used in comparison with the tabu search algorithm to solve different location and allocation problems in two scenarios. The system used in all processes is an Intel® i7 computer with 4.2 GHz CPU and 16 GB of memory. The programming of the model is done in the MATLAB environment. To determine the best parameters for each algorithm, a sensitivity analysis is applied to obtain optimal solutions and a particular model is run for each added parameter (Mehdipour and Memarianfard 2019). This will be explained in the subsequent section.

Each of the algorithms that solve the various types of location allocation problems is presented in Table 1 using Eq. (1) with its constraints. To speed up the processes, the OD Cost Matrix is produced using the OD Cost analysis based on the relevant urban criteria, such as the distance, time, coverage, and cost in GIS. With each algorithm having been tuned with the optimum parameters, it searches for the best solutions. To compare the results of this study and to determine which algorithms produce better results, similar issues will be investigated to those which were tested by Lei and Church (2014) (in Table 1) and Lei et al. (2016) (in Table 2). The intended issues are listed in Table 1 in this research. In addition to the 18 issues raised by Lei, three other issues that are a subset of the Coverage problem are added to Table 1 in order to examine the coverage of existing facilities. For each issue, each algorithm is tuned with sensitivity analysis to achieve the best solutions.

Table 1 Problems tested with the VAOMP model
Table 2 Results of the VAOMP model in selecting 10 fire stations out of 44 fire stations using the SA (fire station numbers 35-44 are the existing fire stations)

Each of the items listed in Table 1 defines an urban parameter and criterion such as minimizing distance, the time between facilities and demands, maximizing facility coverage, and the building cost of the facilities. In this way, the location of fire stations is checked with the help of these criteria. In the event of an inappropriate distribution of fire stations which fails to service some demands or some of the population (which violates the principle of social justice, which is one of the goals of urban sustainable development), the candidate fire stations will be used to build new facilities. The ultimate goal of this paper is to move toward urban sustainable development by optimizing the location of urban facilities.

Column 1 contains each problem’s name, Column 2 and 3 define the assignment vector θ and the vector of weight λ, and the last column defines the name of the special problem. The unnamed cases are a general form of VAOMP and are shown in the last column: for instance, the case named D11, which is the Vector Assignment P-Median Problem (VAPMP), in which each demand will first be serviced 70% by the closest facility and then 30% by the second closest facility (Lei et al. 2016). Figure 1 shows the process of the research.

Fig. 1
figure 1

Process of the research

The Coverage problem (Maximal Covering Location Problem) can be stated as a P-Median problem by converting the distance matrix as follows (Church and ReVelle 1976):

$$d_{ij}^{\prime } = \left\{ {\begin{array}{*{20}l} 0 \hfill & {\quad {\text{if}}\; d_{ij} \le s} \hfill \\ 1 \hfill & { \quad {\text{if}}\; d_{ij} > s} \hfill \\ \end{array} } \right.$$
(12)
$$a_{i} = \left( {\frac{\text{incidents in demand point}}{\text{total incidents}}*100} \right) + \left( {\frac{\text{population density in demand point}}{\text{total population}}*100} \right)$$
  • \(\theta_{il}\) number of access levels that means how many stations serve the demands. This parameter is extracted from Table 1.

  • \(x_{ij}^{l} = 1\) if the requested demand, based on the urban parameter, can access that station and 0, otherwise.

  • \(d_{ij}\) this parameter is extracted from the OD Cost Matrix.

First, the suitable locations to build candidate fire stations are determined through site generation, taking into account environmental parameters such as fault, land slope, soil type, elevation, land use, vegetation, and sensitive areas. Then, the best locations are selected as candidate stations by the opinion of experts in this field considering the standard distance between stations, and a point is located for each new candidate station. An appropriate number of the stations is selected from the candidate stations introduced in the previous step with the help of the model developed in Eq. (1) and its constraints, according to the size of the area, population density and unsuitable fire stations, in order to achieve social justice and to meet all the demands for fire station services. This model is highly applicable in urban sustainable development. To solve the model in the study area, all the effective urban parameters in the problem must be considered after model programming. These parameters include: minimizing the distance between demands and fire stations for safety in cities (which is one of the social indicators of urban sustainable development); minimizing the arrival time of fire trucks to incident sites to reduce pollution and fuel consumption (which is one of the environmental indicators of urban sustainable development); minimizing the cost of building a fire station (which is one of the economic indicators of urban sustainable development); the population density in the area (which is one of the social indicators of urban sustainable development); the number of incidents in statistical blocks; the average traffic on the road network; the speed on the road network; radius of coverage; and the accessibility of each station. In each of D1D21 problems in Table 1, one or more parameters are considered. Each section of the road has a specific speed and average traffic (in seconds that are added to the road travel time), that is stored in the road shape files as descriptive information. First, each algorithm randomly selects a number of stations as optimal.

It is necessary to determine by OD Cost Matrix analysis the distance and time (distance of each road section/speed of each road section) between each demand point and each selected fire station, and then determine which demand has the minimum distance or time with which station. This will lead to a reduction of fuel consumption and thus a reduction in urban pollution. Then, Eq. (2) is calculated for each demand point. The percentage of incidents is summed by the percentage of population density (Algharib 2011), and this forms \(a_{i}\). Then, \(a_{i}\) is multiplied by the urban parameter of each problem (e.g., the minimum distance between that demand and a facility or maximum coverage radius). This result is multiplied by 1 [if the requested demand, based on the urban parameter, has access to that station (a social indicator of urban sustainable development)] or otherwise by 0. The result of this step creates a partial sum. All of these partial sums are ranked from the smallest to the largest or vice versa, depending on the purpose of the problem. Then, these partial sums are multiplied by the weight values that are listed according to each problem in Table 1, and their results are summed to form the final result. Each time, the algorithm selects a number of stations, and this process is repeated. The stations that produce the best end result (depending on the objective of the problem, the minimum or maximum) are selected as the final optimum outcome. As a result, the construction of stations at those locations can bring the city closer to urban sustainable development goals, and this will create social justice in cities and economic sustainability by reducing construction, reducing waste and scrap production, and reducing fuel consumption and urban pollution. Some criteria for assessing the quality of the urban environment will be provided, including open space, accessibility, environmental protection, and safety (Southworth and Southworth 1973).

Sensitivity analysis

Performing the sensitivity analysis for TS, the parameters of this algorithm to be adjusted are the number of generations and neighbors and the tabu tenures. In the following, we discuss how to set them up.

Effect of generations The generation number refers to the repetition of all processes in the algorithm steps. This value can range from 1 to positive infinity. In a study, the impact of this parameter was examined from 5 to 100 (Fan and Machemehl 2008). Because, due to the problem size, the use of more values will result in longer problem-solving time, the range of 5–120 is examined in this research. For instance, in problem \(D_{1}\), while the number of generations is increasing, the processing time will also increase. The minimum value of the target function occurs in the number of generation equals to 70 times. Therefore, it is suggested to select the same generation numbers s as optimum in this problem.

Effect of tabu tenure The effect of Tabu tenures was investigated in the range of 5–40 (Fan and Machemehl 2008). For example, in problem \(D_{1}\), the minimum value of the objective function occurs at 15 tabu tenures. Therefore, this value is selected for tabu tenures.

Effect of search neighbors The neighborhood effect was examined in the range of 10–100 (Fan and Machemehl 2008). For example, problem \(D_{1}\) states that 90 neighborhoods should be optimum, and the same number of neighbors is recommended in the implementation of the algorithm. Therefore, these values are suggested to achieve the minimum objective function, and they are selected in a set of optimal parameters to solve this type of location and allocation problem.

In performing the sensitivity analysis for SA, the parameters should be adjusted in a way that includes the absolute temperature, initial temperature, number of generations and cooling rate. The details of their setting are discussed. According to most studies, the absolute temperature was considered 0.01 (Ming Tan 2008; Duh and Brown 2007).

Initial temperature The different investigations of the SA algorithm have used dissimilar values as the initial temperature. Murray and Church (1996) used 40 and 60 in various Median problems. In this study, the initial temperature is considered equal to the Murray and Church (according to Shamsul Arifin 2011), which are 50, 100, 200, 250, 300, and 400. The best result was obtained at temperature 200.

Cooling rate The cooling rate in one research was equal to 0.9999 (Adewole et al. 2012). In another study, it was equal to 0.90 (Shamsul Arifin 2011). In this research, the cooling rate is considered between 0.8 and 0.99. The best result occurred at 0.9.

Effect of generations This parameter depends on the cooling rate and exceeds given bound on runtime. In this research, the range for the generation number of 5–120 is examined. For example, in problem \(D_{1}\), the minimum value of the objective function occurred at 50 generations.

Study area and data

Considering the impossibility of accessing Lei et al.’s data in this research, fire stations in Tehran’s 21st and 22nd regions were used as the facility data. In addition, the population in statistical zones was used as the demand in the first scenario to solve various problems with the help of two SA and TS algorithms. According to the latest census, the population in Tehran’s 21 and 22 regions is 336,600 people. Tehran’s 22nd region is the newest urban area in Tehran, located in the northwest of the city. Its area is 6200 hectares, of which 1300 hectares are devoted to green space. This area has the highest tower buildings in the city: With a height of towers up to 22 floors, it leads the way in Tehran. It is considered to be the largest part of the capital and needs attention as a result of this expansion and population growth. Region 21 is located adjacent to region 22. The area of region 21 is more than 5156 hectares, which is 7.8% of Tehran’s total area: in comparison with the area of other regions, it is one of the largest regions in Tehran. More than 8% of the population of Tehran lives in this area. There are also ten fire stations in these areas. Moreover, 34 candidate fire stations were created through site selection (using layers effective for fire stations site selection, such as slope, aspect, elevation, geology, and land use, weighting them with the analytical hierarchy process (AHP) method and overlaying the weighted layers in GIS to process location and allocation). Figure 2 shows the location of regions 21 and 22 on a map of Tehran, and Fig. 3 indicates the existing and the candidate fire stations, the road network, and the limits of Tehran’s 21st and 22nd regions. Figure 4 shows population demands in the statistical zones of Tehran’s 21st and 22nd regions.

Fig. 2
figure 2

Location of regions 21 and 22 in the map of Tehran in scenario 1

Fig. 3
figure 3

Existing and candidate (potential) fire stations, the road network, and the limits of Tehran’s 21st and 22nd regions in scenario 1

Fig. 4
figure 4

Population demand in Tehran’s statistical zones of the 21st and 22nd regions in scenario 1

In the second scenario, regions 2 and 5 are added to the process, to increase the size of the problem and to investigate the efficiency of the algorithms in solving a variety of problems. The 2nd and 5th districts, which are adjacent to these districts, are among the largest and most densely populated parts of Tehran and are currently facing a shortage of urban facilities. There are also fourteen fire stations in the second and fifth regions. Among these fire stations, twelve candidates are added to the processing area using a site selection process. The total demand in these two regions (2nd and 5th) is 1,603,680. In addition, information exists about road networks, speed, and traffic. To accelerate the process, every 40 demands were considered as one point, so that in the first scenario, according to census zones, 8415 demand points will be created and 48,507 in the second scenario.

As it is necessary to distribute services in cities in the optimal way so that they are suitable for all demands in order to meet the goals of urban sustainable development, the distribution of urban facilities needs to be investigated. One such urban facility is a fire station, which is an emergency facility responsible for protecting people’s lives and properties against accidents and crises. Given that the size of the selected segment is large and its population is high, it seems necessary to investigate the distribution of the existing fire stations in the area. According to global standards, each fire truck must reach the accident site in less than 5 min (Yang et al. 2007). For this reason, and considering the whole of the study area is large, the number of existing fire stations in this area does not seem to be adequate. Therefore, after using the model on the study area and ensuring that the number of fire stations in the area is inadequate to provide services to the people, it is necessary to produce some candidate fire stations (by site generation and overlaying effective layers such as slope, elevation, geology etc.). Now, the algorithms will determine which fire stations among the candidate ones can serve the whole population of the area with the help of the existing fire stations, so that the city moves toward the concept of social justice and urban sustainable development.

Results and discussion

Scenario 1: selecting 10 fire stations out of 44 existing and candidate fire stations

In this scenario, existing data in regions 21 and 22 will be used. There are 44 existing and candidate fire stations in the area. The objective is to select ten fire stations out of these 44. It should be noted that the example proposed in this study is 700 times harder than the problem researched in Lei et al. (the selection of five out of 55 nodes).

$$\left( {\begin{array}{*{20}c} {44} \\ {10} \\ \end{array} } \right) = \frac{44!}{10!*34!} = 2,481,256,779$$
$$\left( {\begin{array}{*{20}c} {55} \\ 5 \\ \end{array} } \right) = \frac{55!}{5!*50!} = 3,478,761$$

Tables 2 and 3 show the average results using the VAOMP model in the study area and 10 independent implementations of the model with two algorithms (the unit of optimal solutions for the first 18 problems is based on meters and for problems 19–21 it is based on persons). It is necessary to state that, in both scenarios, the criteria for selecting the new fire stations from candidate stations are extracted from the problems raised in Table 1, where each problem defines a specific criterion for selecting the new fire stations. Column 2 shows the optimal solutions, and column 3 shows the implementation time of the model with the SA and TS algorithms. Columns 4 and 5 show the number of iterations and the number of allocated demands. Column 6 presents the optimal positions.

Table 3 Results of the VAOMP model in selecting 10 fire stations out of 44 fire stations using the TS (fire station numbers 35–44 are the existing fire stations)

For each algorithm and specific problem, a sensitivity analysis was performed to obtain the best results according to the “sensitivity analysis”. Solving these types of problems will depend heavily on the software and hardware used. Also, metaheuristic algorithms can provide different levels of performance and runtime to solve different problems. Figures 5 and 6 show the limits of Tehran’s 2nd, 5th, 21st and 22nd regions and the existing and candidate fire stations in the study area. Figure 7 shows the population demands in the statistical zones of Tehran’s 2nd, 5th, 21st, and 22nd regions.

Fig. 5
figure 5

Location of regions 21, 22, 2, and 5 in the map of Tehran in scenario 2

Fig. 6
figure 6

Existing and candidate fire stations, the road network and the limits of Tehran’s 2nd, 5th, 21st, and 22nd regions in scenario 2

Fig. 7
figure 7

Population demand in Tehran’s statistical zones of the 2nd, 5th, 21st, and 22nd regions in scenario 2

Figures 8 and 9 show the results in Tables 2 and 3 presented graphically. The selected stations are the optimal ones with the goals of creating sustainable city and establishing social justice.

Fig. 8
figure 8figure 8figure 8

Results of the VAOMP model in selecting 10 fire stations out of 44 fire stations using the SA

Fig. 9
figure 9figure 9figure 9

Results of the VAOMP model in selecting 10 fire stations out of 44 fire stations using the TS

All these problems can be solved within a few minutes with the help of these algorithms, and they will solve these problems in a much shorter time than exact methods such as ILP (used by Lei and Church 2014). The average for the 10 independent implementations of the model is presented in the tables. Some fire stations have been allocated many more than 50,000 people (according to international standards) (Yang et al. 2007) since the specified capacity was not defined for them. For example, 79,680 persons have been allocated to fire station 10 in problem \(D_{1}\) with the TS algorithm. These results show the need to use the capacity and development of the model along with the condition of capacity. Moreover, Coverage (min–max) problems indicate that the number of fire stations is not sufficient to cover the total demand.

In problems 1–18, the goal is to minimize the solutions, and, in problems 19–21, the goal is to maximize the solutions. As is clear, the TS algorithm has produced better solutions than the SA algorithm. In each run of a metaheuristic algorithm, a different solution can be produced from the previous solution; for this reason, it is necessary to use the repeatability test to evaluate the quality of the solutions. In this way, after implementation of each algorithm it is necessary to compare the results obtained from a certain number of consecutive performances of one algorithm with the same parameters: If the solutions obtained are not significantly different, then we can say that the algorithms have the required quality. To examine the quality of the two algorithms and the average runtime, each of the methods executed each problem ten times. The result of the average runtime, the percentage of similarity of allocations, and the standard deviations of both methods in the ten independent implementations of the model for the various problems are shown in Table 4. The third column shows the average runtime of the model implementation on these ten occasions. The second criterion, in the fourth column, is examined to show the quality of solutions; this is the average percentage of similarity of the allocations relative to the total demands in the ten model implementations. The fifth column also shows the average of the solution standard deviations for the model implementation on these 10 occasions. As the results of the two algorithms show, the TS algorithm yields better solutions than the SA, but the SA algorithm can provide satisfactory solutions in a shorter time in solving the Center and Coverage problems.

Table 4 Comparison of two algorithms in scenario 1, which consists of ten independent implementations of the models

Scenario 2: selecting 24 fire stations out of 70 existing and candidate fire stations

To study the performance of the two algorithms in solving different location and allocation problems in a large size, two other regions will be added to the study area. So the 2nd and 5th regions are also added to the 21st and 22nd regions. Accordingly, the total number of existing fire stations in the area is equal to 24 fire stations, and 46 fire stations were created as candidates in these regions. As a result, the total number of fire stations is equal to 70, and the total number of demands is 1,940,280. As mentioned before, this scenario aims to solve large-size problems, selecting 24 fire stations from 70. This instance is \(6* 10^{9}\) times more difficult than the problem posed by Lei et al. (2016) (five points out of 150 points).

$$\left( {\begin{array}{*{20}c} {70} \\ {24} \\ \end{array} } \right) = \frac{70!}{24!*46!} = 3,508,566,179,513,467,800$$
$$\left( {\begin{array}{*{20}c} {150} \\ 5 \\ \end{array} } \right) = \frac{150!}{5!*145!} = 591,600,030$$

In regions 2 and 5, considering their population, 40,000 demand points will be created according to the statistical zones. Therefore, in the whole study area (regions 2, 5, 21 and 22), there will be 48,507 demand points. According to Lei et al. (2016), all eighteen types of problems, as well as three Coverage problems, were solved using the VAOMP model. The results have been shown in Tables 5 and 6 using the SA and TS algorithms. It should be noted that the best parameters of each algorithm have been used.

Table 5 Results of the VAOMP model in selecting 24 fire stations out of 70 fire stations using the SA (the fire station numbers 35–58 are the existing fire stations)
Table 6 Results of the VAOMP model in selecting 24 fire stations out of 70 fire stations using the TS (the fire station numbers 35–58 are the existing fire stations)

As in reality there is no border between the regions, all the regions will be processed together to make the space of the problem more realistic. However, given the fact that in solving this type of problem, fire stations should be considered without capacity, a fire station located in a densely populated area might accept many more demands than its standard capacity. Moreover, the population in the 2nd and 5th regions is over 1,600,000 people.

According to the 50,000-person capacity of each fire station, these regions require at least 16 fire stations to service the population. However, since each fire station does not have specified capacity in this process, each fire station could accommodate any level of capacity. This is why in some of these samples, it is seen that the number of selected fire stations in regions 2 and 5 is lower than those in regions 21 and 22 which are larger regions. For example, in the first problem or Center, the aim is to minimize the maximum time. Therefore, capacity is a highlighted issue that should be considered in the process. Otherwise, a fire station may receive demands greater than its service capacity, which in reality cannot provide optimal service. On the other hand, some fire stations may be chosen as optimal fire stations, which accommodate much lower demands.

In this scenario, as in the previous scenario, Table 7 is created to evaluate the quality of the solutions. It shows that, in solving large-size problems, the better solutions and more successful implementations were obtained from the TS algorithm. The results of using the VAOMP model in this paper show that the model developed can solve a number of location problems with different goals and criteria in medium- to large-sized problems involving the location of urban facilities to achieve the goals of urban sustainable development that is consistent with the results of Lei et al. (2016). They also show that in both scenarios the TS algorithm has a good speed in reaching the optimal solutions. The results of Lei et al. (2016) also show that the TS algorithm provides better quality, and the current paper presents the same results.

Table 7 Comparison of two algorithms in scenario 2, which consists of ten independent implementations of the models

Conclusion

Since urban sustainability is a prerequisite for environmental sustainable development, consideration of human, land and land use and, consequently, the location and optimal allocation of citizens to urban facilities are very important problems. If the location of facilities is not appropriate, in addition to the costs incurred in constructing the facilities, they will not be able to serve the population in the optimum way, which will result in an unfair distribution of facilities, and as a result, their destruction will have adverse effects on the environment. So, location allocation models can be highly applicable in the optimal location of facilities. In recent decades, researchers have developed unified models of location allocation based on the P-Median model that have been able to solve numerous location allocation models. Lei and Church (2014) introduced a unified location allocation model that can solve many diverse problems. The proposed VAOMP model was used to solve eighteen issues in two scenarios. The tabu search algorithm showed a much better execution time in solving various problems vs. ILP in the optimal solving of the problem.

The present study uses the VAOMP model to solve the problems raised by Lei et al. and three Coverage problems integrated with GIS. To solve various problems, two TS and SA algorithms were applied. Using the aforementioned models with two algorithms in a case study of fire stations in Tehran, in two dissimilar scenarios of medium and large size, showed that the TS algorithm results in more qualitative solutions than the SA algorithm in both scenarios. Furthermore, while evaluating the quality of the solutions, it is found in ten independent implementations of the model that the TS algorithm works better than the SA approximately 20% and 1% in terms of the standard deviation of solution and allocation similarity. The SA algorithm can achieve optimal or near-optimal solutions in comparison with the TS algorithm in solving Coverage and Center problems in a shorter time (approximately 5% better than the TS). Coverage issues for a radius of fewer than 5 min indicate that the number of fire stations to serve the population in the region is inadequate. As a result, many demands will not be covered.

As the research shows, the VAOMP model is a qualified model in the field of location allocation, which can be used in various fields, in particular, to examine the status of urban facilities, the access of the existing demands in the regions to urban facilities, and the identification of new and optimal locations for urban facilities in order to achieve social justice and, ultimately, urban sustainable development. Therefore, the results of this research can be used by urban managers and decision-makers to create a more sustainable city. At the same time, given that the VAOMP unified model lacks capacity as a criterion, any facility may accept a large number of demands which it cannot service, so that a capacity criterion needs to be used in solving different location allocation problems. Consequently, it is proposed to solve different location allocation problems using a new VAOMP approach by also considering the capacity of each facility.