1 Introduction

Today, there emerges a very competitive environment in various sectors. Enterprises in both public and private sectors need to keep up with this competitive environment in order to be able to maintain their operations efficiently. Accordingly, to keep up with such a competitive environment, enterprises inevitably need to aim to reduce costs and increase customer satisfaction. This brings about a necessity for sustainable supply chains that are established to satisfy customer needs at the minimum cost and by not violating production constraints. As a result, this situation draws researchers’ attention to location science problems, which still grab attention of numerous researchers and practitioners from various disciplines. Due to their mentioned strategic importance, location science problems can be considered as one of the commonly studied problems for decades. What is more, most of these problems are known to be in category of NP-hard problems. Therefore, employing metaheuristic algorithms are very common among researchers and practitioners particularly in solving large-scaled instances of location science problems.

As one of the emerging and attention-grabbing branch of metaheuristic algorithms, bio-inspired algorithms have become popular in the last decade. Bio-inspired algorithms are metaheuristics, which are based on metaphors in the simulated environment and they mimic the nature of living beings in solving optimization problems. Although they do not guarantee optimality as metaheuristics; these algorithms are commonly used due to the capability of offering solutions of high-quality in acceptable time and being open to various improvements.

Unfortunately, most of the bio-inspired algorithms are devised for real-valued continuous domains, while majority of real-life problems have discrete and combinatorial spaces. To overcome this issue, researchers commonly adopt transfer functions. These functions transform a continuous vector into a binary vector. However, this results in various additional problems such as spatial distance, since, a continuous vector may not always result in the exact same binary vector on every occasion it is transformed. This undesirable circumstance brings about conflicts throughout search. Consequently, a promising vector may be underestimated by the algorithm, while some other vectors might unnecessarily or luckily be overestimated.

Such issues constitute the main motivation of the present study. The aim here is to address a simple yet effective approach to deal with spatial distance problems in bio-inspired algorithms. Accordingly, a procedure that borrows some evolutionary operators, which can run in binary spaces, is adopted first. The mentioned procedure is used along with the notion of flower pollination algorithm (FPA) [1], which can be considered as a relatively recent bio-inspired algorithm that has been shown to be promising in various problems. The motivation in choosing this algorithm stems from its simplicity in terms of both complexity and intelligibility and being open to various improvements. In addition to these enhancements in FPA, secondarily, an adaptive mutation procedure that introduces greater level of diversity at earlier iterations and encourages intensification toward the end of search is adopted. Thus, while premature convergence and local optima problems at earlier iterations are avoided, a more intensified search around the found promising regions is conducted. Accordingly, the distinguishing features of the proposed FPA can be brought together in twofold: (i) the proposed modification is capable of handling binary spaces without any auxiliary procedures such as transfer functions, (ii) it has a further convergence capability that also enables avoiding local optima. The performance of the proposed approach is tested on the uncapacitated facility location problem (UFLP), which is one of the well-known location science optimization problems and has numerous potential real-life applications in practice. A comprehensive experimental analysis including statistical demonstrations, convergence analysis and complexity analysis is conducted. According to the statistically verified results, the proposed approach is found as a promising algorithm in solving UFLP.

The rest of this paper is organized as follows: Related literature review for UFLP, research gaps and potential applications are given in Sect. 2. The proposed solution approach and developed procedures are presented in Sect. 3. Experimental study and concluding remark are reported in Sects. 4 and 5, respectively.

2 UFLP and related studies

2.1 A formal introduction for UFLP

UFLP [2] is one of the most commonly studied location science problems, and it forms a basis for a variety of related models used in supply chain design. As discussed before, the aim in UFLP is to determine a set of facilities among a certain candidate locations so as to minimize the total cost, which is the sum of facility opening costs and transportation costs between the opened facilities and demand points (customers). More formally, UFLP can be formulated as follows:

$${\text{Minimize}}\sum_{i=1}^{N}\sum_{j=1}^{M}{c}_{ij}{x}_{ij}+ \sum_{i=1}^{N}{f}_{i}{y}_{i}$$
(1)
$$\sum_{i=1}^{N}{x}_{ij}=1 j = 1, \dots , M$$
(2)
$${x}_{ij} \le {y}_{i}\quad i=1, \dots , N j=1, \dots , M$$
(3)
$${x}_{ij} \in \left\{\mathrm{0,1}\right\}\quad i=1, \dots , N j=1, \dots , M$$
(4)
$${y}_{i} \in \left\{\mathrm{0,1}\right\}\quad i=1, \dots , N j=1, \dots , M$$
(5)

In these formulations, Eq. (1) represents the objective function to be minimized. In Eq. (1), N is the number of potential facility locations, M is the number of demand points, \({f}_{i}\) is the facility opening cost associated to ith point, \({c}_{ij}\) is the cost occurring between facility point i and the demand point j. Equation (2) ensures that all demands are satisfied. Equation (3) provides that customers can be assigned only to opened facilities. Accordingly, Eqs. (4) and (5) impose sign restrictions on decision variables. The binary variable \({y}_{i}\) denotes whether the facility i is opened or not. If the candidate facility at location i is opened, the decision variable \({y}_{i}\) takes value of 1; otherwise, it takes value of 0. The other binary variable \({x}_{ij}\) takes value of 1 if the jth demand point is assigned to facility i; otherwise, it takes value of 0.

2.2 Related studies

To the best of our knowledge, Balinski [3] first introduces a mathematical model for UFLP. Later, Efroymson and Ray [4] report a modification on this model and develop a branch and bound algorithm. Next, Khumawala [5] proposes a more efficient branch and bound algorithm. By using ascent and adjustment procedures, Erlenkotter [6] introduces the dual based branch and bound algorithm. Subsequently, by rearranging the primal–dual version of the algorithm developed by Erlenkotter [6], Korkel [7] proposes a more efficient algorithm in terms of required time.

Since UFLP is shown to be an NP-hard problem [8], various metaheuristic solution methods are reported as well. Al-Sultan and Al-Fawzan [9] present an approach that is based on Tabu search (TS) algorithm to solve the UFLP. Ghosh [10] studies the performance of generic local search, TS and complete local search with memory. Ghosh [10] proves that both of these approaches offer effective ways of generating high-quality solutions for large-scaled instances. In 2006, Şevkli and Güner [11] develop a particle swarm optimization (PSO) algorithm to solve UFLP. Two years later, Wang et al. [12] and Güner and Şevkli [13] propose a PSO to solve UFLP. Next, Kiran [14] implements a bio-inspired algorithm for UFLP. A constructive algorithm is employed by Montoya-Torres et al. [15]. According to the reported results, the proposed algorithm can be considered as an efficient approach in solving UFLP. Tsuya et al. [16] use another bio-inspired algorithm to solve UFLP. Later, de Armas et al. [17] solve the stochastic extension of UFLP. Subsequently, Baykasoglu et al. [18] present a binary weighted superposition attraction algorithm to solve UFLP. Ozsoydan [19] proposes a modified swarm-based intelligence algorithm to solve a set of binary optimization problems including UFLP. Ozsoydan [20] and Golcuk and Ozsoydan [21] implement modifications of a bio-inspired algorithm, namely grey wolf optimization algorithm to solve UFLP.

One year later, Sonuç [22] proposes another bio-inspired metaheuristic algorithm that is further extended so as to be capable of handling binary optimization problems. Authors adopt the UFLP as the benchmarking suite. Zhang et al. [23] propose an evolutionary algorithm to solve UFLP. In one of the recent studies, Alidaee and Wang [24] propose a genetic algorithm (GA) hybridized by TS to solve uncapacitated location problem, which is a natural generalization of the UFLP. The authors report promising results. In another recent study, Kaya [25] introduces a binary modification of a swarm-based optimizer that is driven by a bio-inspired algorithm. The proposed algorithm exhibits a favorable performance in solving UFLP. Zhou et al. [26] propose an improved GA and the authors address a real-life application in oil and gas fields. Lately, Soltanpour et al. [27] report efficient and promising algorithms for UFLP. The authors carry out the same analysis also for uncertain problem environment that includes uncertain data. Jiang and Zhang [28] propose an improved adaptive differential evolution (DE) algorithm for solving UFLP. It is shown by the computational results that the proposed approach outperforms other compared swarm-based algorithms. In a recent study, Baş and Yildizdan [29] propose a novel binary arithmetic optimization algorithm for UFLP. The authors adopt logic gates to deal with continuous variables, since, as reported, the canonical form the adopted algorithms is proposed for continuous spaces. Finally, in another recent work, Aslan and Pavone [30] propose another binary extension of a metaheuristic algorithm, namely vortex search algorithm for solving UFLP. As reported in that study, authors adopt several versions of transfer functions.

There exist numerous FPA studies in the literature. Due to space limitation, only closely related ones are reported here. In 2015, Dubey et al. [31] propose a hybrid FPA with a time-varying fuzzy selection methodology for wind in integrated multi-objective dispatch. In the same year, Rodrigues et al. [32] propose a binary modification for FPA by using a sigmoid transfer function. The authors test their approach on a binary optimization problem, namely feature selection problem, which is a well-known problem in machine learning domain. Dahi et al. [33] report a systematic evaluation study that addresses the efficiency of mapping techniques. The authors propose binary variants of FPA so as to evaluate the principal mapping techniques existing in the literature. Next, Nabil [34] presents a modified FPA, which is called opposition-based learning FPA. This algorithm qualitatively and quantitatively analyzes FPA with the proposition of various extensions. Abdel-Baset et al. [35] propose a hybridized FPA to solve constrained optimization problems. In same year, Draa [36] proposes some new extensions for FPA by employing opposition-based learning, modified global search and local search procedures explicitly. Zhou et al. [37] report discrete greedy FPA that is based on the integration between pollen discarding behavior and order-based crossover to get global pollination process. Ozsoydan and Baykasoglu [38] analyze the effects of various switching probability characteristics that directly affects the success of FPA. In one of the recent studies, Song et al. [39] hybridize DE with FPA to solve global optimization problems. The reported results by the authors demonstrate the efficiency of the proposed approach which points out the potential of FPA. Another similar approach is adopted by Mellal et al. [40] to deal with combined heat and power economic dispatch problem, which is shown to be a constrained optimization problem. Finally, in a recent study, Feng et al. [41] propose a binary hybrid artificial hummingbird with FPA for feature selection in Parkinson’s disease diagnosis. The authors adopt a sigmoid transfer function to deal with binary decision variables.

2.3 Research gaps, motivation and potential extensions

As stated above, the related literature for UFLP includes both swarm-based methods and trajectory-based (vector-based) algorithms. These methods are further hybridized in some studies. Swarm-based algorithms include both bio-inspired algorithms and well-known metaheuristics such as GA and DE. In this regard, to the best of our knowledge, the performance of FPA, which has been shown to be promising in numerous optimization problems, has not been tested on UFLP yet. Moreover, it is apparent from the related literature that UFLP and its extensions are quite open to real-life application studies. Thus, the proposed modified FPA along with all reported extensions and procedures is tested on UFLP in this study.

Secondarily, it is obvious from the reported related literature that, all metaheuristic algorithms adopt either various transfer functions or some modifications of these functions particularly while using swarm-based and bio-inspired metaheuristic algorithms. As mentioned earlier, this approach results in spatial distance problem, which is not a desirable circumstance for an optimization algorithm. Moreover, it is worth stressing that this undesirable issue applies also for various binary optimization problems. In other words, the mentioned spatial distance problem does not apply only for UFLP. Accordingly, spatial distance issue can be considered as a common drawback while solving binary optimization problems by using swarm-based algorithms that work on real-valued vectors. Therefore, the proposed approach in the present study has numerous potential extensions and applications for various binary optimization problems such as variants of the famous knapsack problems, feature selection or different facility location problems. Moreover, it is clear the proposed approach can be extended to numerous other metaheuristic algorithms that make use of real-valued vectors such as FPA. Accordingly, the next section is devoted to developed solution approaches.

3 Proposed solution approach

3.1 The canonical FPA

FPA [1] is a metaheuristic algorithm that is inspired by the pollination process of flowers. There are numerous flowering plants in nature, and there exist many different means of pollination to achieve the purpose of reproduction. In general, pollination methods can take two forms, namely self-pollination and cross-pollination. Cross-pollination (biotic) depends on living beings such as insects and birds at long distances. This type of pollination represents global search in FPA. Self-pollination (abiotic) on the other hand takes place at a shorter distance and this inspires local search process of FPA. To sum up, as global search and local search, FPA has two main and simple mechanisms. According to a switching probability, algorithm either switches from global to local or from local to global search.

Before diving into details of the developed procedures, the canonical FPA is presented first. In the global search procedure of FPA, solution vectors implement Lévy flight, following the best-found position. Thus, the movement pattern resembles living beings like bees and insects. As the second procedure of FPA, self-pollination takes place as random changes on solution vectors. One can put control on these search patterns via a parameter referred to as switch probability that is denoted by \(p\in (\mathrm{0,1})\). While greater values of \(p\) encourages global search, smaller values yield to more frequent use of local search. More formally, all movements of FPA are formulated in the following equations:

$${x}_{i}^{t+1}={x}_{i}^{t}+L ({g}^{*}-{x}_{i}^{t})$$
(6)
$$L\sim \frac{\lambda \Gamma \left(\lambda \right){\text{sin}}\left(\pi \lambda /2\right)}{\pi {s}^{1+\lambda }} , (s\gg {s}_{0}>0)$$
(7)
$${x}_{i}^{t+1}={x}_{i}^{t}+r {(x}_{j}^{t}-{x}_{k}^{t}) k\ne j$$
(8)

where \({g}^{*}\), \({x}_{i}^{t}\), \(L\) and \(r\) represent the best solution found by the algorithm, the ith solution vector at the tth iteration, the Lévy distribution and a random variable, respectively. Equation (6) here represents the global pollination, while Eq. (8) is the local pollination. Equation (7) is employed along with Eq. (6) and \(\Gamma \left(\lambda \right)\) represents the standard gamma function. For a better understanding of the mechanisms of the canonical FPA, a pseudocode is presented by Algorithm 1.

Algorithm 1.
figure a

A pseudocode for the canonical FPA

3.2 Proposed modifications

It is clear that the canonical FPA is proposed for real-valued optimization problems. Thus, adopting this algorithm to binary domains might require some additional mapping procedures such as employing transfer functions and most of these procedures make use of probability distributions. It further means that two binary vectors derived from the same real-valued vector do not necessarily have to be same. This undesirable circumstance brings about spatial distance between these vectors. Therefore, although such transfer functions are commonly used in numerous studies, their performances tend to be poor in most cases. In this regard, the present paper adopts some evolutionary operators in order to use them in the notion on FPA so as to overcome spatial distance issue.

3.2.1 Solution encoding

The proposed modification adopts the binary encoding technique. Solution vectors in this technique are of size \(n\), which represents the number of candidate locations to open facilities for the corresponding problem instance. If a bit takes a value of one, then it means that the corresponding facility is opened. Otherwise, the corresponding locus of the solution vector points out that the regarding facility is not opened. All bits (loci) of a solution vector take only binary values and are never changed to a real values throughout iterations. Finally, it is worth stressing that the initial population that includes only binary solution vectors is generated at random. The rest of the details are presented in the following.

3.2.2 Uniform-based xover for inheritance

As mentioned earlier, one of the notable advantages of FPA is that it has a small number of parameters. One of the parameters used in FPA is the switching probability that is denoted by \(p\) (Algorithm 1, line: 5), and this parameter defines the search characteristic by putting control on the transitions between global and local search procedures. If \(p\) is increased, FPA tends to exploit around the best-found solution. Lower values for \(p\) on the other hand yield to making use of randomly selected solution vectors from the population more frequently. It is clear that according to Eqs. (68), these procedures cannot be directly used in binary domains, since, a vector-based operation that uses Eqs. (68) very likely results in a continuous vector regardless of the input vectors. This further means that solution vectors that are generated as random binary vectors in the initial population are not guaranteed to remain as binary vectors throughout search. Although transfer functions might come in handy at this point, performance of the optimizer might suffer from the spatial distance issue that is previously mentioned. Therefore, in the present study, a uniform-based xover, which exhibits loci exchanges, is adopted to inherit information between individuals [19].

In this procedure, any ith solution vector in population undergoes a uniform-based xover with a parent vector that is either a random vector or the best-found solution vector. For each dimension of solution vectors, a random number \(rand\in (\mathrm{0,1})\) is generated and it is compared to a user-supplied parameter \({\it x{\text{OverProb}}}\in (\mathrm{0,1})\). If \(\it rand\le x{\text{OverProb}}\), allele of the corresponding locus is inherited from the ith vector. Otherwise, it is inherited from the parent vector, which probably yields to change of the corresponding bit. Thus, one can conclude that lower values of \(xOverProb\) results in dampening the changes on the bits. In other words, inertia is encouraged by using lower values of \(xOverProb\). Greater values on the other hand yield to changes for the related loci.

An illustration of this procedure is presented by Fig. 1. As one can see from this figure, solution vectors are of size 10 bits. Thus, 10 \(rand\) values are to be generated. Let’s assume that these random numbers appear to be 0.50, 0.10, 0.80, 0.70, 0.05, 0.90, 0.15, 0.45, 0.75, and 0.80, for each dimension, respectively. Given that \(\it x{\text{OverProb}}\) is set to be equal to 0.60, new solution vector, denoted by offspring, is generated as given in this figure.

Fig. 1
figure 1

Uniform-based xover

It should be noted that the values of \(p\) and \(\it x{\text{OverProb}}\) should be carefully chosen. Since, greater values of \(p\) and lower values of \(\it x{\text{OverProb}}\) yield to a greater exploitation of the best-found solution. It is clear that overuse of this solution vector might yield to premature convergence and local optima issues. On the contrary, lower values of \(p\) and greater values of \(\it x{\text{OverProb}}\) yield a more random and slower search that might also result in poor convergence. Thus, it can be concluded that both of these parameters simultaneously affect the search characteristic of the proposed FPA modification.

3.2.3 Bit-flip mutations to avoid local optima

Subsequent to xover operations discussed above, a bit-flip mutation is performed. The aim here is to introduce diversity so as to avoid local optima problems. In this procedure, randomly selected bits of a solution vector are flipped. It is clear that greater number of flipped bits introduce greater level of diversity. This becomes useful whether the population loses diversity. Lower level of mutation on the other hand yields to a better exploitation of the found regions; however, continuous use of lower level of mutation might result in loss of diversity and a slower search, where local optima issues might arise. Therefore, an adaptive mutation that encourages the number of mutations at earlier iterations and discouraging mutation gradually over iterations is adopted [20]. In other words, this procedure [18, 19, 21] provides a greater level of diversity at earlier iterations along with a decreased level of mutation toward the end of the search so as to encourage exploitation. Thus, local optima and premature convergence problems are aimed to be avoided while providing a more intensified search over iterations.

This procedure is formulated by Eq. (9), where \({{\it{\text{stepSize}}}}^{t}\in [1,{\it\text{n}}]\) and \(\phi \in (\mathrm{0,1})\) denote the step size at the tth iteration and the severity of the decrement, respectively. Step size in this formulation represents a variable in order to evaluate the number of bits (\({{\it\text{mutSize}}}^{t}\)) that undergo mutation operation at the tth iteration. Obviously, Eq. (9) yields to a continuous variable; however, the number of bits to mutate is a discrete value variable. Therefore, a ceiling function (Eq. 10) is used to determine the number of bits to mutate at the tth iteration. Subsequently, a number of randomly selected \({{\it\text{mutSize}}}^{t}\) bits of a solution vector at the tth iteration is flipped, which means that it is flipped to 1 if it is 0 or it is flipped 0 if it is 1.

Both \({{\it\text{stepSize}}}^{1}\) and \(\phi\) are user-supplied parameters. Greater values of \(\phi\) induce steeper decrements in step size, whereas smaller values yield to a smoother decrement. A pseudo code and an illustration for the mentioned mutation operator for \({stepSize}^{1}\)=30 are presented by Algorithm 2 and Fig. 2, respectively. Moreover, a tabular form of some \({{\it\text{mutSize}}}^{t+1}\) values with respect to various \({{\it\text{stepSize}}}^{1}\) and \(\phi\) parameters are presented in Table 1. Finally, bringing all modifications together, a pseudocode for the proposed binary FPA (bFPA) is presented by Algorithm 3.

Fig. 2
figure 2

An illustration of various step size settings

Table 1 A tabular illustration of \({mutSize}^{t}\) values for various mutation parameters
$${{\text{stepSize}}}^{t+1}={{\text{stepSize}}}^{t}-{e}^{-t/(t+1)}\times \phi \times {{\text{stepSize}}}^{t}$$
(9)
$${{\text{mutSize}}}^{t+1}=\lceil{{\text{stepSize}}}^{t+1}\rceil$$
(10)
Algorithm 2.
figure b

A pseudocode for the mutation operator

Algorithm 3.
figure c

A pseudocode for the proposed bFPA

It is clear that the proposed FPA modification denoted by bFPA can be distinguished from the standard FPA in two ways. First, the proposed modification is capable of handling binary spaces without any auxiliary procedures such as transfer functions. By making use of the evolutionary operators in FPA notion, this issue is overcome intrinsically. Secondarily, by using the discussed mutation procedure, bFPA has a further convergence capability that also enables avoiding local optima. Moreover, binary solution vectors that undergo xover operations are guaranteed to remain as binary vectors also subsequent to this mutation procedure, since, this procedure exhibits only bit-flip operations on loci, which already have binary values.

4 Experimental study

4.1 Calibration of parameters

All tests are performed on a computer with an i5-4590 CPU and 32 GB of RAM. Maximum number of iterations (\(\it {\text{maxIt}}\)) is used as the termination criterion. In accordance with the related literature, the parameters \(\it {\text{maxIt}}\) and population size (\(\it {\text{popSize}}\)) are fixed to 1000 and to the number of candidate facility locations (n) for the related instance, respectively.

As another parameter, \(x{\it\text{OverProb}}\) represents inertia. According to the preliminary tests, it is observed that better results can be obtained when \(\it x{\text{OverProb}}\) is fixed to 0.20. Therefore, this parameter is used as 0.20 for all tests. As discussed before, there exist two additional parameters that define the mutation characteristic in the proposed approach. They are denoted by \(\phi\) and \({{\it\text{stepSize}}}^{1}\), which represent the speed of decrement in step-sizing function and the initial step size, respectively. With respect to the preliminary tests again, it is observed that \(\phi =\) 0.0025 and \({{\it\text{stepSize}}}^{1}=\) 0.10 \(\times\) n yield to more promising results. Therefore, the parameters \(\phi\) and \({{\it\text{stepSize}}}^{1}\) are fixed to 0.0025 and 0.10 \(\times\) n, respectively, for all tests. The final parameter to be calibrated is the switching probability of FPA that is denoted by p. This parameter is fixed to 0.75 for all tests, which is close to the value proposed by Yang [1].

4.2 Computational results

The performance of the bFPA is tested by using UFLP benchmarking instances obtained from OR-Lib (http://people.brunel.ac.uk/~mastjjb/jeb/orlib/files/). The related attributes of these instances are presented in Table 2. Moreover, as presented by the same table, optimum solutions for the instances in this benchmark suite are known and available.

Table 2 Attributes of the used UFLP instances

Instances here can be categorized into three categories as small-scaled, medium-scaled and large-scaled problems that include 16, 25 and 50 facilities, respectively. All obtained results are given by Table 3, and the values in this table are calculated over 30 independent replications. The rows best, mean, worst, std. and hit in this table represent the best-found solution by the proposed algorithm, mean over all replications, worst-found solution, standard deviance of the best-found solutions over all replications and the number of replications that the best-known solution is found, respectively. Moreover, in order to analyze the effects of the adopted mutation procedure, bFPA is additionally tested without mutation operation. This modification is referred to as bFPAnm in the rest of the paper.

Table 3 Computational results

The first section of Table 3 includes small-scaled instances of size 16 \(\times\) 50. According to these results, most of the algorithms exhibit competitive performances. It is clear that particularly more recently published algorithms such as ABCbin, bWSA, PSO, prioGWO, learnGWO, prLeGWO and the proposed algorithm bFPA are capable of finding the most promising hit values in these instances. It is also clear that GWO occasionally misses to find the most promising hit values in some instances such as cap72 and cap73. CPSO exhibits a similar performance with GWO in terms of finding the most promising hit values. Finally, a notable finding in this section of Table 3 is that bFPAnm achieves the most naïve results for the small-scaled instances of UFLP. This finding also points out the efficiency of the adopted mutation procedure, which is employed by bFPA.

Results of the medium-scaled instances of size 25 \(\times\) 50 point out that the difference in performances of all compared algorithms become more apparent as the problem scale increases. It is apparent that the proposed algorithm bFPA achieves the best-known solutions in all replications for all instances of the medium-scaled benchmarks. bFPA is followed by prLeGWO, which is capable of achieving a hit value of 26 in cap103. The algorithm prLeGWO is followed by learnGWO, which shows a better performance in comparison with the rest of the compared algorithms. CPSO shows an adequate performance in some instances such as cap102 and cap104. However, it cannot achieve the optimum solution in any replications of the remaining medium-scaled instances. Moreover, bFPAnm is also not capable of finding the mentioned optimum solutions in any replications of the medium-scaled problems as well. Additionally, its standard deviance value is found far greater than that of the CPSO’s. This finding points out some possible local optima issues. Therefore, one can conclude that the adopted mutation operator contributes to the performance of bFPA also in medium-scaled instances.

Difference between the compared algorithms become even more apparent in the large-scaled instances of size 50 \(\times\) 50. Except for the instance cap133, where the proposed algorithm achieves a hit value of 26, bFPA is able to find the best-known solutions in all replications in the remaining instances of the same size. This can be considered as a remarkable performance since the closest algorithm in terms of hit values, prLeGWO is clearly outperformed by the proposed algorithm. In parallel, bFPA is found as superior to the rest of the algorithms in the large-scaled instances in regard to the hit values. Similarly, the standard deviance values of all compared algorithms for cap133 point out that the proposed algorithm exhibits a more robust performance in this instance. Moreover, the standard deviation values obtained by the proposed algorithm bFPA are often better than those found by other algorithms. Finally, it is clear that bFPAnm exhibits the most naïve performance also in the large-scaled instances of UFLP. Standard deviance values, which are found as the far greatest values among those of all compared algorithms’, point out possible local optima issues also in these instances.

Convergence plots of bFPA and bFPAnm for all instances are depicted by Fig. 3. The rows in this figure correspond to the small-scaled, medium-scaled and large-scaled instances, respectively. Data points in these plots represent mean results of the related iteration over all replications. As one can see from this figure, bFPA exhibits a better convergence particularly in small-scaled and medium-scaled instances in comparison with bFPAnm. It is clear from these plots that results given by Table 3 can be achieved also by using smaller values for maximum number of iterations. However, one should note that in such a case, the parameters of the step-sizing function (Eqs. 910) should be recalibrated according to the used maximum number of iterations parameter. Moreover, one can put forward that bFPAnm suffers from premature convergence and local optima issues, whereas bFPA which uses the proposed mutation operator exhibits a more adequate convergence pattern. This also validates that the mentioned mutation procedure contributes to the performance of the proposed algorithm bFPA.

Fig. 3
figure 3

Convergence plots of bFPA and bFPAnm

All findings point out the efficiency of the proposed algorithm bFPA. However, in order to demonstrate whether significant improvements are achieved by this algorithm, a further statistical test is crucially required. Therefore, the next subsection is devoted to the statistical demonstrations.

4.3 Statistical analysis

Generally, either parametric or nonparametric statistical tests can be used when comparing multiple algorithms. However, for safe use parametric tests, the requirements for the independence, normality and homoscedasticity should be met, which is not the case in the present study [42]. In cases, where these assumptions cannot be achieved, nonparametric tests can be used. Accordingly, nonparametric tests are employed in this study. In this regard, Friedman test is applied first to demonstrate whether at least a single pair of algorithms shows significant difference in terms of hit values. One should note that since bFPAnm is used only to demonstrate the efficiency of the adopted mutation procedure, the results of bFPAnm are not included in this analysis.

The results of the Friedman test and obtained average ranks, where the best performing algorithm is assigned by the 1st rank for the related instances, are given by Table 4. As one can see from this table bFPA achieves the best average rank. According to the p-value of this test, which is adjusted for ties, the null hypothesis H0 that is based on the equivalence of medians should be rejected for the significance level \(\alpha\)=0.10. This shows that at least one pair of algorithms is significantly different from each other. Thus, a further analysis to find the significantly different algorithms should be conducted.

Table 4 Results of Friedman test

Since the aim of this study is to demonstrate the efficiency of the proposed algorithm bFPA, a 1 \(\times\) N design rather than N \(\times\) N, is adopted. In other words, bFPA is compared to all remaining algorithms according to the average ranks over all instances. One crucial issue here is the possibility of losing control on the family-wise error rate while comparing the algorithms [42]. To avoid this, the Bonferroni procedure is employed as a post-hoc test. In this context, the z-scores, unadjusted p-values and adjusted p-values according to the Bonferroni procedure are given in Table 5.

Table 5 Pairwise comparisons and post hoc test results

According to the unadjusted p-values of Table 5, the proposed algorithm is found as significantly better than CPSO, PSO, GWO, prioGWO and learnGWO in terms of hit values for the significance level \(\alpha\) = 0.10. According to the adjusted p-values on the other hand, bFPA is found as significantly better than CPSO, PSO and GWO. In other words, although the proposed algorithm shows the most promising performance according to Tables 3 and 4, Table 5 points out that there is not enough statistical evidence to demonstrate the significant difference between bFPA and the remaining algorithms prioGWO, learnGWO, bWSA, ABCbin and prLeGWO.

4.4 Complexity analysis

Computational cost of the proposed algorithm is analyzed in terms of the worst case scenario. As can be seen from the pseudocode given by Algorithm 3, execution time of bFPA is based on the parameters \(\it {\text{maxIt}}\), \({\it\text{popSize}}\) and n. Since, the uniform-based crossover loops on the dimensions of the solution vectors of \({\it\text{popSize}}\) and step-sizing function does not require additional inner loops. Thus, execution time complexity of this algorithm can be represented by \(\mathcal{O}\)(\({\it\text{maxIt}}\times {\it\text{popSize}}\times n\)) [19, 43], which also applies for the standard FPA. It further means that developed procedures do not increase the complexity of the standard FPA.

Finally, brining all things together, one can conclude that the proposed FPA modification denoted by bFPA exhibits a promising performance in solving UFLP, which may have a great variety of potential real-life applications. As reported, this algorithm does not use transfer functions that result in spatial distance. Instead, it makes of evolutionary operators such as xover and mutation. As statistically verified, this clearly contributes to the performance of the proposed algorithm. Moreover, according to the results of Table 2, it is apparent that the adopted mutation operator clearly contributes to the efficiency of bFPA. Otherwise, as demonstrated by the experimental study, potential local optima issues might emerge. Although bFPA brings about apparent advantages in solving UFLP, it has some drawbacks such as additional parameter calibration. Since mutation and xover operators require user-supplied parameters, decision makers need to carefully define these parameter values.

5 Conclusion

The present study introduces a modified flower pollination algorithm (FPA) to solve one of the well-known facility location problems, namely the uncapacitated facility location problem (UFLP). Since UFLP is a binary optimization problem, FPA, which is introduced to solve optimization problems in continuous domains, is modified for binary domains first. In this context, some operators such as crossover and mutation that are borrowed from evolutionary algorithms are adopted in the modified FPA. By using the proposed crossover operator, FPA is able to run in binary domains without employing additional auxiliary procedures such as transfer functions. Next, proposed binary bit-flip mutation is further enhanced by making use of an adaptive step-sizing procedure that introduces greater level of diversity at earlier iterations and encourages intensification toward the end of search. Thus, while premature convergence and local optima problems at earlier iterations are avoided, a more intensified search around the found promising regions is conducted.

All available benchmarking data is solved by the proposed algorithm and the obtained results are compared to those of the promising and competitive algorithms’ that are lately reported in the related literature. According to the experimental study, the proposed algorithm is found as a promising algorithm. Moreover, appropriate statistical tests are conducted to demonstrate whether significant improvements are achieved. Results of the statistical tests show that the proposed algorithm brings about significant improvements over some of the existing algorithms. What is more, as reported in this study, any additional computational burden is not required by the proposed FPA modification. Nevertheless, one of the drawbacks of the proposed algorithm is that it makes use of two additional parameters, which needs to be calibrated in the proposed step-sizing function. Thus, it brings about an additional effort in parameter calibration stage.

The simplicity and efficiency of FPA deserves a further research. Since the proposed modification runs on binary populations, evaluating the population diversity by using hamming distance metric is quite practicable. In this regard, analyzing the effects of avoiding loss of diversity procedures along with the employed procedures in various binary optimization problems is scheduled as a future work. Moreover, the proposed algorithm in the present study can easily be extended to various binary optimization problems, of which the solution vectors can be represented as binary strings. Therefore, one can conclude that the proposed binary FPA and the proposed mutation operator can intrinsically be adapted to various binary optimization problems such as capacitated facility location problem, 0–1 knapsack problem, feature selection, assignment problems and their numerous extensions. Nevertheless, one should note that parameter calibration for these algorithms should be precisely carried out.