The problem addressed here is a combinatorial bilevel programming problem called the uncapacitated facility location problem with customer’s preferences. A hybrid algorithm is developed for solving a battery of benchmark instances. The algorithm hybridizes an evolutionary algorithm with path relinking; the latter procedure is added into the crossover phase for exploring the trajectory between both parents. The proposed algorithm outperforms the evolutionary algorithm already existing in the literature. Results show that including a more sophisticated procedure for improving the population through the generations accelerates the convergence of the algorithm. In order to support the latter statement, a reduction of around the half of the computational time is obtained by using the hybrid algorithm. Moreover, due to the nature of bilevel problems, if feasible solutions are desired, then the lower level must be solved for each change in the upper level’s current solution. A study for illustrating the impact in the algorithm’s performance when solving the lower level through three different exact or heuristic approaches is made.

Location theory is an area of operational research which has attracted many researchers due to the existing necessity to abstract real day-to-day situations into mathematical models. One of the main problems is the facility location problem, which stems from Weber’s problems, which consists in determining the point that minimizes the sum of the Euclidean distances from that point to all other given points. Further explanation is detailed in [

The FLP has led to several extensions. For example, the simple plant location problem (SPLP) arises when the facility has an infinite capacity and can meet all the demands of any customer; the model for this problem was proposed in [

Having an ordering problem within a location one increases its complexity in both the formulation and the methodology of solution. The Discrete Ordered Median Problem (DOMP) was introduced in [

In [

A different perspective regarding an ordering within the location problem can be achieved by considering the customer’s preferences towards the facilities. The first paper which considered the customer’s preferences in the simple plant location problem (SPLP) is [

The consideration of customer’s preferences may be seen as an optimization problem within the constraints of the location problem. These kind of problems can be modeled with bilevel programming. The first bilevel model for the SPLPO was proposed in [

Most articles that addressed the bilevel model of the SPLPO reformulate the bilevel model into a single-level one and solve the reformulation. For example, for the aforementioned purposes in [

Therefore, it is convenient to emphasize that it is extremely important to obtain the optimal solution of the lower level problem in order to obtain a bilevel feasible solution. For the uncapacitated facility location bilevel problem (UFLBP), the lower level consists of an allocation problem, which can be solved in an efficient manner by an optimizer. Moreover, due to the nature of the allocation problem, alternative exact methods can be easily adapted for solving it. For instance, in [

For clarifying the latter idea, some papers in which the lower level is solved in a heuristic manner are described. For example, in [

As it is mentioned above, in order to obtain bilevel feasible solutions, the lower level problem must be optimally solved by an optimizer or by an exact method. But this is not always possible and the problem needs to be solved somehow. Hence, a heuristic procedure that balances efficiency and computational effort would be desired. Commonly, the utilization of heuristic procedures for solving the bilevel problem results very costly in terms of computational time due to the number of times that the lower level problem is solved. Then, the exploration of methodologies in which the search is guided without the resolution of the lower level turns out to be a matter of interest.

In this paper, we proposed a hybrid algorithm for solving the bilevel version of the uncapacitated facility location problem with preferences of the customers. Also, a discussion is presented about the effects that result from solving the allocation problem with an optimizer, by an alternative exact procedure or by a methodology that avoids solving it at each step. The paper is organized as follows: in Section

In this section, the problem and its mathematical formulation are described. The bilevel model considered in this paper is proposed in [

Let

The decision variables of the problem are two and are of binary nature, where

Customers delivered a list of ordered preferences which reflected their desire of being served by each facility; the first position in the list, that is, the 1st, indicates the most preferred facility and therefore

The facilities have no capacity; therefore, a facility can supply multiple customers but a customer must be served by a single facility.

The mathematical model for the UFLBP is as follows:

The existence and uniqueness of the lower level’s solution are guaranteed due to the way the preferences are given; that is, they are ordered and are different from each other. In other words, it is not allowed to assign the same preference value to more than one facility. The proof which validates the latter is shown in [

In this section, the hybrid algorithm and its components are described. Hybrid algorithms combine advantages of two or more heuristics to solve a problem, where the best part of each heuristic is taken in order to obtain either better solutions or a quick convergence. Some applications of hybrid algorithms are shown in [

Considering the discussed improvements for hybrid algorithms, in this paper, hybridization between an evolutionary algorithm and path relinking is proposed. The main idea for including the path relinking scheme is basically in order to substitute the common random crossover. On the other hand, the motivations for developing an evolutionary algorithm (EA) are as follows: first, a population based algorithm gives more information about the interaction between leader and follower due to the large number of solutions being explored; second, it is well known that EAs can handle

The EA consists in three phases: in the first one, the construction of the initial population containing feasible solutions is made; the second phase concerns the genetics operators, crossover and mutation; and the last one is the selection mechanism of survival solutions, which depends on two features, quality and diversity. Commonly, the criteria selected in the genetic operators are chosen in a random fashion. The latter might affect the algorithm’s performance due to the lack of exploration within the current neighborhood between both solutions. Hence, we decided to implement a combinatorial method called path relinking (PR) for reaching the local optimum in the current neighborhood. Path relinking begins with a pair of good quality solutions, parts from the first one, and changes its components once a time to convert this initial solution into the second one. Furthermore, PR explores all the trajectory between leader’s solutions. If the second solution is identical to the first one, then the method stops and returns the best solution found in the trajectory. It is important to highlight the notion that since the aim of the proposed algorithm is to solve a bilevel problem, when computing the corresponding objective function value, the follower’s problem is solved for each movement. This issue clearly affects the algorithm’s efficiency and it is discussed in the next section.

The addition of PR in other algorithm’s frameworks has shown a good performance and has attracted the attention of researchers. For example, in [

Next, the principal components and the phases involved in the hybrid algorithm are detailed and depicted in Pseudocode

Besides the fact that we are dealing with two subsets of decision variables, solutions that are of principal interest will be those referring to leader’s solutions, that is, the facilities that will be opened. The bilevel nature of the problem allows for considering the solutions within the algorithm in that way. Hence, leader’s solutions are represented as a binary string of size

In this phase, a predetermined number of solutions are generated. We decided to create feasible solutions in a random manner. For constructing a solution, we generate a vector of random numbers from the same size of the total number of facilities and revise component by component as follows: if the respective number is less (greater) than 0.5, then the corresponding facility remains closed (opened).

In this part, a number of solutions are chosen for being mated. We selected the solutions according to their fitness; while the solutions are better, they have more opportunity of being selected. The strategy that is used in this algorithm for achieving the latter is the tournament selection. This procedure consists in randomly matching each solution with another one from the population, and the best of both solutions is selected.

Crossover is executed after the selection. The path relinking procedure is used in the crossover phase. A pseudocode is shown in Pseudocode

Path relinking.

After the selection and crossover of individuals were performed and if a random number is greater than a threshold value, the mutation takes place. The mutation involves changing some components of the string from 0 to 1 or vice versa. The associated probability for switching a component is given by an independent number for each one of them. Then, the components of the solutions are mutated in an independent manner; that is, the mutation of a component does not affect the mutation probability of another one.

Finally, the update of the population is given in the elitist way by using their corresponding fitness value. After the proposed algorithm has been described, the computational experimentation for showing its good performance will be presented in the next section.

In this section, the methodologies used to solve the UFLBP are described. Also, the computational results obtained from applying those methodologies are presented. First, we considered an evolutionary algorithm (EA) proposed in [

The latter alternative is based on the fact that, for having feasible solutions for the bilevel problem, the lower level needs to be optimally solved for each leader’s solution. In the local procedure (PR), a new leader’s solution is obtained in each move. Therefore, in order to measure the contribution of that specific move, the lower level problem is solved. Hence, the computational cost for following that scheme is high. Thus, it is interesting to investigate the possibility of not solving the lower level for the new leader’s solution during all the PR procedure. By doing this, semifeasible solutions are being considered but after the methodology is done the lower level is optimally solved for the incumbent solution. However, due to the structure of the problem considered here, after a PR’s move has been conducted, the customers must be reallocated. In other words, in the PR, a facility could be opened, closed, or interchanged and some of the customers allocated to that specific facility will need to be associated with other opened or more preferred facilities.

The experimentation was conducted on 3.60 GHz Intel Core i7-4790 with 32.00 GB RAM running under Windows 8.1 Pro operative system. Those algorithms were implemented on Visual Studio Express 2012 with C++ and, for the first alternative, the lower level was solved with CPLEX 12.6.1. The set of benchmark instances is the same as the one used in [

Initial testing indicates that the required time to solve the small size instances with the proposed hybrid algorithm (EA+PR) with CPLEX is 4410.455 seconds. As a consequence of the excessive computational time required by CPLEX for solving the lower level, we decided to discard this approach. Hence, we used the ordered matrix of customers’ preferences for solving the lower level. In the case where we decide to avoid solving the lower level (this approach will be referred to as EA+PRw) at each step in the PR, two approaches for allocating the customers were proposed. For example, consider the situation presented in Figure

Exemplification for reallocating the customers.

Regarding the EA+PRw, the two considered approaches were analyzed and we can observe that both have good quality solutions (see Figures

Illustrating the convergence for both approaches of EA+PRw in instance a-1 medium.

Illustrating the convergence for both approaches of EA+PRw in instance b-2 large.

In order to assess the performance of the hybrid algorithm, proper parameter identification has to be done. The parameters considered in the EA+PR are the size of the population

Illustrating the convergence for EA and EA+PR in instance 132-1.

Illustrating the convergence for EA and EA+PR in instance b-1 large.

In Tables

Results for the small size instances.

Instance | EA | EA+PR | EA+PRw | ||||||
---|---|---|---|---|---|---|---|---|---|

Best gap | Average gap | Time (sec) | Best gap | Average gap | Time (sec) | Best gap | Average gap | Time (sec) | |

132-1 | 0.00% | 5.41% | 1.51 | 0.00% | 5.73% | 0.76 | 0.00% | 7.91% | 0.72 |

132-2 | 0.00% | 4.40% | 1.45 | 0.00% | 4.14% | 0.74 | 0.00% | 4.46% | 0.73 |

132-3 | 0.00% | 7.81% | 1.53 | 0.00% | 6.90% | 0.77 | 0.00% | 8.59% | 0.73 |

132-4 | 0.00% | 4.05% | 1.49 | 0.00% | 4.12% | 0.78 | 0.00% | 4.08% | 0.74 |

133-1 | 0.00% | 5.13% | 1.53 | 0.00% | 4.61% | 0.76 | 0.28% | 5.03% | 0.74 |

133-2 | 0.00% | 5.99% | 1.51 | 0.00% | 6.99% | 0.72 | 0.00% | 6.42% | 0.71 |

133-3 | 0.00% | 7.45% | 1.54 | 0.15% | 6.98% | 0.79 | 0.15% | 7.96% | 0.73 |

133-4 | 0.00% | 2.34% | 1.50 | 0.00% | 2.04% | 0.75 | 0.00% | 2.47% | 0.71 |

134-1 | 0.00% | 6.72% | 1.52 | 0.00% | 6.07% | 0.78 | 0.00% | 6.78% | 0.74 |

134-2 | 0.00% | 6.20% | 1.54 | 0.00% | 5.67% | 0.78 | 0.00% | 6.44% | 0.73 |

134-3 | 0.00% | 5.72% | 1.52 | 0.00% | 5.00% | 0.78 | 0.00% | 5.69% | 0.74 |

134-4 | 0.00% | 4.95% | 1.50 | 0.00% | 5.07% | 0.75 | 0.00% | 5.21% | 0.71 |

Results for the medium size instances.

Instance | EA | EA+PR | EA+PRw | ||||||
---|---|---|---|---|---|---|---|---|---|

Best gap | Average gap | Time (sec) | Best gap | Average gap | Time (sec) | Best gap | Average gap | Time (sec) | |

a-1 | 0.09% | 4.89% | 2.07 | 0.00% | 4.44% | 1.04 | 0.09% | 5.04% | 0.93 |

a-2 | 0.00% | 6.51% | 2.08 | 0.00% | 5.59% | 1.11 | 0.00% | 6.86% | 1.00 |

a-3 | 0.04% | 4.72% | 2.08 | 0.00% | 4.22% | 1.10 | 0.00% | 4.93% | 0.98 |

a-4 | 0.00% | 5.48% | 2.07 | 0.00% | 5.02% | 1.07 | 0.00% | 5.57% | 1.00 |

b-1 | 0.00% | 5.68% | 2.06 | 0.00% | 5.76% | 1.08 | 0.00% | 6.08% | 1.00 |

b-2 | 0.10% | 3.70% | 2.07 | 0.00% | 3.10% | 1.12 | 0.00% | 4.72% | 1.08 |

b-3 | 0.00% | 5.06% | 2.07 | 0.00% | 4.52% | 1.10 | 0.49% | 5.57% | 1.02 |

b-4 | 0.00% | 4.80% | 2.04 | 0.02% | 4.45% | 1.02 | 0.52% | 5.06% | 0.98 |

c-1 | 0.26% | 2.95% | 2.03 | 0.26% | 2.54% | 1.10 | 0.26% | 2.96% | 1.04 |

c-2 | 0.25% | 3.46% | 2.04 | 0.00% | 3.12% | 1.10 | 0.00% | 3.92% | 1.04 |

c-3 | 0.00% | 3.71% | 2.01 | 0.00% | 3.52% | 1.06 | 0.00% | 3.91% | 1.00 |

c-4 | 0.00% | 3.03% | 2.04 | 0.00% | 2.72% | 1.05 | 0.00% | 3.14% | 0.99 |

Results for the large size instances.

Instance | EA | EA+PR | EA+PRw | ||||||
---|---|---|---|---|---|---|---|---|---|

Best gap | Average gap | Time (sec) | Best gap | Average gap | Time (sec) | Best gap | Average gap | Time (sec) | |

a-1 | 0.00% | 9.76% | 3.55 | 0.00% | 8.89% | 2.07 | 0.00% | 9.89% | 1.84 |

a-2 | 0.00% | 6.94% | 3.49 | 0.00% | 6.30% | 2.02 | 0.00% | 7.12% | 1.77 |

a-3 | 0.00% | 7.23% | 3.48 | 0.00% | 6.25% | 2.09 | 0.00% | 7.23% | 1.86 |

a-4 | 0.00% | 5.85% | 3.61 | 0.00% | 5.08% | 2.11 | 0.00% | 5.72% | 1.85 |

b-1 | 0.77% | 5.39% | 3.67 | 0.77% | 4.72% | 2.35 | 0.87% | 6.09% | 2.09 |

b-2 | 1.01% | 4.71% | 3.65 | 0.29% | 4.00% | 2.16 | 0.63% | 5.29% | 2.05 |

b-3 | 0.00% | 4.37% | 3.65 | 0.00% | 4.07% | 2.13 | 0.86% | 4.48% | 2.00 |

b-4 | 0.00% | 6.47% | 3.71 | 0.00% | 5.88% | 2.25 | 1.14% | 6.74% | 2.08 |

c-1 | 0.00% | 4.04% | 3.69 | 0.00% | 3.65% | 2.22 | 0.00% | 4.21% | 2.00 |

c-2 | 0.00% | 3.82% | 3.65 | 0.00% | 4.17% | 2.28 | 0.00% | 4.62% | 2.05 |

c-3 | 0.00% | 4.53% | 3.61 | 0.00% | 4.05% | 2.12 | 0.00% | 4.91% | 2.00 |

c-4 | 0.00% | 4.67% | 3.69 | 0.00% | 4.35% | 2.25 | 0.00% | 5.14% | 2.05 |

It can be observed from Table

From Table

Finally, the behavior discussed in the above paragraphs is maintained for the large size instances. The “best gap” and “average gap” columns do not show a significant difference between EA and EA+PR. However, as before, the computational time required for the EA+PR is also 1 second less than the EA. In addition, the EA+PR has a better performance in terms of quality than the EA+PRw but the consumed time is almost the same. This is caused because in the EA+PRw when a facility is closed, the customers associated with it need to be reallocated following a predefined criterion. Hence, a quickly reallocation is made; but the required time for solving the lower level problem using the ordered matrix of preferences is very low. Then, when the algorithm reaches its stop criterion, the cumulative time reduction is not as significant as we expected.

The average gap’s values obtained by both EA+PR and EA+PRw are plotted in Figure

Comparing the average gaps.

In this paper, a hybrid evolutionary algorithm with path relinking for solving the uncapacitated facility location problem with customer’s preferences is proposed. A computational analysis which involves three approaches for dealing with the preferences’ problem associated with the lower level is presented. First, the EA is implemented in the same manner as it was proposed in [

As a result from the computational experimentation, it seems that the computational time required to solve the lower level is very short. For example, as we showed in Section

Picking up the abovementioned ideas, future research directions could involve the advantage of some particular properties existing in the lower level that may help to sort this issue. That is to avoid a blind search in the lower level, because of the use of semifeasible solutions due to the fact that the lower level is not solved in several consecutive iterations in the methodology selected.

For example, recently in [

Another option is to apply a decomposition approach based on the primal and dual relationships of the problem, for example, as in [

The authors declare that they have no competing interests.

The research activity of all the authors was partially supported by the Mexican National Council for Science and Technology (CONACYT) through Grant SEP-CONACYTCB-2014-01-240814 and by the Support Program for Scientific Research and Technology (PAICYT-UANL) with Project CE-2015.