Abstract

Optimization problems containing a finite number of variables and an infinite number of constraints are called semi-infinite programming problems. Under certain conditions, a class of these problems can be represented as bi-level programming problems. Bi-level problems are a particular class of optimization problems, in which there is another optimization problem embedded in one of the constraints. We reformulate a semi-infinite problem into a bi-level problem and then into a single-level nonlinear one by using the Kuhn–Tucker optimality conditions. The resulting reformulation allows us to employ a branch and bound scheme to optimally solve the problem. Computational experimentation over well-known instances shows the effectiveness of the developed method concluding that it is able to effectively solve linear semi-infinite programming problems. Additionally, some linear bi-level problems from literature are used to validate the robustness of the proposed algorithm.

1. Introduction

The more general case of semi-infinite programming (SIP) problems occurs when a finite number of semi-infinite constraints are considered. Each constraint consists in a set of constraints indexed by a set of infinite cardinality, in this case, a generalized semi-infinite programming (GSIP) problem arises. Previous work has been reported for problems that involve continuous and differentiable functions [13]. Therefore, linear generalized semi-infinite programming (LGSIP) problems can be considered as a particular case of GSIPs, where all the defining functions are sufficiently smooth. In [4], an inverse optimization approach is proposed to solve a LGSIP. In general, semi-infinite programming is a very challenging field and keeps attracting the attention of researchers. For instance, a review of solution methods and different applications appear in [5]. Similarly, GSIPs have been proposed to model a wide variety of real-life applications, such as design centering, optimization of assembly lines, time minimal control, and robust optimization [6].

A basic reference on this topic is [7], and a review of classical methods in GSIP appears in [8]. When the set does not depend on the variable , we have a standard semi-infinite programming (SSIP) problem which is another especial case in GSIP. Regarding the latter problems, in [9], an extensive study on their main characteristics is presented, and, in [10, 11], some algorithmic aspects are reviewed. Recent results for a linear case are presented in [1215]. For a wide overview of SSIP applications, we refer to [7]. Some applications of GSIP can be found in the maneuverability problem in robotics (see [16]) and the reverse Chebyshev approximation (see [17, 18]).

Theory and solution methods for SIPs are strongly related to their corresponding bi-level formulation. The connection between both classes of problems relies in the fact that, under certain conditions, semi-infinite problems can be reformulated as bi-level programming ones [1, 3]. Bi-level programming (BLP) problems have been used to model applications widely, for example, in location, network design, pricing, humanitarian logistics, and telecommunication systems, among others [19, 20]. BLP can be seen as a hierarchized situation in which the decision maker with a higher hierarchy (leader) aims to optimize his/her own objective function depending on its decisions and the decisions taken by the decision maker with a lower hierarchy (follower). In this case, the follower considers his/her own optimization problem but parameterized according to the leader’s decision. It is essential to mention that BLP cannot be seen as two-stage optimization problems, since the leader’s decision restricts the follower’s problem, and then, the follower’s decision impacts the leader’s objective function. Hence, both decisions are interrelated but respecting a predefined hierarchy among the decision makers.

As it is mentioned above, there exist few methods for solving generalized semi-infinite optimization that exploit the closely relationship obtained from the bi-level structure of the problems [8]. Despite the abovementioned, the proposed methods that solve GSIPs are scarce and the computational experimentations are limited. The latter motivated us to conduct this research. Hence, in order to benefit from the relationship between GSIPs and BLPs, the following idea could be followed: reformulate the lower-level problem by some of the well-known methods. For instance, in the convex case, the Kuhn–Tucker optimality conditions are commonly used. After that, some of the classical algorithms used to solve linear bi-level problems, such as the Kth-best algorithm, Kuhn–Tucker approach, complementarity approach, variable elimination algorithm, and penalty function approach [21, 22], could be implemented to solve the reformulated GSIP. In this case, we decided to implement a different exact approach, which is based on the branch and bound method, which have been used to successfully solve nonlinear SIPs (see [23]).

Other methods that have been used to solve GSIPs via the bi-level formulation differ from each other on the lower-level reformulations. For instance, Stein [2] uses equilibrium constraints to model the lower level. In [8], complementarity constraints are employed to replace the lower level. Numerical methods to approximate the original problem are generated by substituting these complementarity constraints by smooth ones [3, 24]. That method has been applied to solve centering design and lapidary cutting problems (see [1, 25], respectively). Another approach is to reformulate the lower level by its corresponding dual problem. In [24], Wolfe’s dual problem is considered. It is shown that, under additional conditions, the resulting problem is numerically tractable. Theoretically, feasible direction methods and discretization algorithms [6] have been also proposed to solve GSIPs. However, the computational experimentation is complicated when having multidimensional set of indices. Most of these methods are developed to solve particular class of GSIPs or made significant assumptions preventing their reproducibility, in general. On the contrary, the algorithm herein proposed is motivated by the ideas given in [3] for solving a general case of semi-infinite programming problems but neither a detailed description nor results are reported there. Hence, a detailed step-by-step description of the algorithm is included to facilitate its implementation and reproducibility.

The main contribution of this research is the proposal of an algorithm that can be used to solve a particular class of generalized semi-infinite programming problems. In particular, linear problems consider a semi-infinite constraint. The proposed method exploits the conditions that allow a generalized semi-infinite problem to be handled as a bi-level programming one. In order to apply this method, the representation of the semi-infinite problem as a bi-level one is required. Then, its Kuhn–Tucker optimality conditions are used to reformulate the bi-level problem into a single-level one, which is solved via a branch-and-bound scheme. The effectiveness of the algorithm is shown through computational experimentation. To validate the obtained results, we analytically solve the tested linear semi-infinite programming problems, showing the algebraic and graphical solutions coincide with the solution obtained by the algorithm.

The remainder of this study is organized as follows. In Section 2, some preliminaries and the notation considered throughout this research is presented. In Section 3, the developed algorithm is described. Therefore, the computational experimentation, in which the effectiveness of the algorithm is validated, is presented in Section 4. Additionally, some examples are solved in a geometric and algebraic way to corroborate the obtained solution. Conclusions that include important remarks regarding the topic investigated in this study and further research directions are presented in Section 5.

2. Preliminaries

Let us introduce the necessary notation for this study, as well as some concepts, and necessary results on GSIP and BLP that will be used.

Throughout this study, we consider , , , , , is a -matrix, is a -matrix, is a -matrix, and is a -matrix.

We consider linear generalized semi-infinite programming (LGSIP) problems which are defined aswhere

Unless otherwise stated, we will consider and , where the sets and will represent additional restrictions on the decision variables. In particular, and , that is, and , for all and , respectively. Furthermore, we will consider that , where ; this condition can always be satisfied by adding in appropriate extra conditions (such as or others depending only on the variables ).

Following the notation presented in [21], a linear bi-level programming (LBLP) problem is defined aswhere is defined as in .

With the conditions on , the problem SIP can be considered as a LBLP problem with the special structure that lower-level objective function is obtained with the upper-level constraint. The problem that results is presented next (see [3]):

In order to have well-defined considered problem, we assume that the set-valued mapping is uniformly compact on . In other words, there exists a ball with for any such that is compact, where denotes the topological closure of . Therefore, under these assumptions, the mapping is closed and upper semicontinuous in the sense of Berge, and is a closed set. It is important to remark that, by considering the latter condition, the lower-level problems , , always has an optimal solution.

The following sets are associated with a bi-level problem. Let be the set of solutions of . Consider as the solution graph of , and as the constrained set for the upper level. Also, let be the feasible set of .

Now, the concepts associated with the semi-infinite problem defined in the introduction are presented. First, its feasible set is defined as follows:

Under the assumptions made on the set , we have (see [3]) , where denotes the orthogonal projection onto the space .

The latter equality allows the use of methods proposed to solve LBLP problems to obtain the solution of LGSIP problems.

As it is mentioned in the introduction, the main idea of the algorithms designed to solve linear bi-level problems is to reformulate the bi-level problem into an equivalent single-level one. The latter can be achieved by using the important result described next.

Consider and as the corresponding dual variables of the constraints associated with the lower-level problem, that is, constraints represented by equation (3). Using the notation of problem , we adapt the following proposition given in [21].

Proposition 1. A necessary condition for to solve is that there exist (column) vectors and such that solves

This single-level reformulation is valid in bi-level programming when the lower-level problem is convex. Hence, it not always exists for all the classes of BLP problems. However, in this study, we are considering the linear case, so the problems can be reformulated under this scheme.

3. An Algorithm that Uses the Kuhn–Tucker Optimality Conditions and a Branch-and-Bound Scheme for Solving LGSIPs

It is well known that one of the most common approaches to solve a linear bi-level problem is by using its equivalent single-level reformulation, which is given in equation (5)–(10). It can be appreciated that the resulting single-level model is a nonlinear one (see equation (9)), which complicates the optimization process. Noting that equation (9) is the only nonlinear constraint, it is common to try to handle the reformulation without that equation instead of solving the reformulated nonlinear single-level model.

One option to address the nonlinearity of the reformulated model is by omitting the nonlinear term (this results in a relaxation of the problem) and solve the resulting relaxed problem. For achieving this, let us consider all the inequalities that appear in the lower-level problem in the following manner: , . Also, it is identified that the nonlinear constraints (, where , ) imply the complementarity slackness constraints. Recall that the relaxed reformulation yields to a linear subproblem.

After the resulting linear subproblem has been solved, it is checked if equation (9) holds. If so, the optimal solution obtained is a feasible solution of problem given by equation (5)–(10), which implies that it is a feasible solution for the bi-level problem derived from the SIP; if not, an approach based on a branch and bound scheme is implemented to try to satisfy the complementarity slackness constraints. To achieve the latter, an examination of all the possible combinations’ values that guarantee the complementarity slackness implicitly is conducted. A complete cycle of this procedure is called an iteration.

The notation introduced in [21], which is the classical notation for an implicit enumeration, is used to describe the solution method herein considered. Let be the set of indexes associated with the complementarity slackness terms (see equation (9)). Consider as the objective function of the single-level reformulation, which corresponds to the upper-level’s objective function of the bi-level problem, and consider as the incumbent upper bound on the upper-level’s objective function. A subset of indexes is considered at the th level of the search tree, and also, a path is used. The path indicates if either or , for . The common sets , , and of the implicit branch and bound are used. Therefore,

The variables and , for which , are considered as nonnegative when solving the relaxation of the single-level reformulated problem defined by equations (6)–(11). Recall that, in the aforementioned relaxation, equation (9) is omitted. Hence, the complementarity slackness constraint may be satisfied or not.

The description of the algorithm based on a branch-and-bound scheme that considers the complementarity slackness constraints is presented next. It is important to emphasize that this algorithm is based in the Kuhn–Tucker approach for solving linear bi-level problems (see [21]). In nonlinear problems, Kuhn–Tucker conditions are used in globalization [26].(i)Initialization: set , , , , and .(ii)Main step (in the th iteration): set , for , and , for . Try to solve the relaxed single-level problem, that is, the problem defined by problem defined in equations (6)–(11) omitting equation (9). If an optimal solution is obtained, do , record the solution , and continue to the Fathom step; otherwise, go to the Backtrack step.Fathom: if the obtained solution yields an objective function value worst that the incumbent, a backtrack is needed. That is, if , go to the Backtrack step; otherwise, continue to the Branch step.Branch: if , , go to the next step; otherwise, select the th for which the product is the largest one and label it as . Update the sets as follows: , , and . Append to the current path , and return to the main step.Update: set the incumbent objective function value as .Backtrack: if all the nodes in the current path has been explored already, go to the next step; otherwise, branch to the th component most recently introduced in the path and update , , and . Return to the main step.Termination: if the initial incumbent value remains the same (), hence, there is no feasible solution to the bi-level problem. Otherwise, consider the feasible solution associated with as the optimal one.

This algorithm based in the branch-and-bound scheme solves exactly the equivalent single-level reformulation of the linear bi-level programming problem. The latter arises from linear generalized semi-infinite problems. Therefore, this algorithm is used to solve LGSIPs optimally.

4. Numerical Experimentation

In this section, the algorithm described above is used to solve a set of ten linear semi-infinite problems with different characteristics. Its effectiveness and suitability to solve LGSIPs are shown. Since various examples will be shown, the semi-infinite problem, its feasible set, the optimal value, and the optimal set are distinguished as , , , and , respectively, where denotes the number of example. Moreover, for the bi-level form, we also distinguish its corresponding sets , , , and .

The aim of this section is to exhibit that the proposed algorithm is able to solve LGSIPs in an efficient manner. The optimal solution of the tested problems is compared with the optimal solution obtained analytically. Also, eight additional linear bi-level problems are tested to robust the computational section showing that the algorithm is able to efficiently solve these problems. Since the majority of the semi-infinite problems herein tested are proposed by us, we do not compare the efficiency results of our algorithm against other methods. However, a comparison regarding the quality of the solution is made.

The first three examples show the particular case when . Although the study is only of interest in the general case (since in standard SIPs, they are inherently finite by the vertex theorem), standard SIPs are considered to show that the algorithm is effective in both cases.

Example 1. Consider the following problem:Figure 1 shows that the problem has feasible solution, and .
The bi-level formulation of isThe solution obtained by the algorithm coincides with the solution obtained geometrically.

Example 2. Consider the following problem:The corresponding bi-level formulation isThe algorithm shows that and .

Example 3. Consider the following problem:whereThe bi-level formulation isThe results obtained by the algorithm are and .
The following examples show that the proposed algorithm is also effective to solve semi-infinite problems in the general case.

Example 4. Consider the following problem:whereThis example is presented in [23], where the bi-level problem has optimal set and its optimal value is .
To solve the semi-infinite problem using the algorithm herein proposed, its bi-level formulation is deduced:Then, its equivalent single-level reformulation is as follows:To solve that problem, the nonlinear constraint (complementarity slackness constraint) is omitted and the relaxed linear problem is solved:The optimal solution of the relaxed problem is , with an optimal value of . Now, the relaxed complementarity slackness constraints are verified. The algorithm first explores the branch when . In this case, the resulting problem is infeasible, and that branch is fathomed. Then, the branch that considers is explored. In this case, the optimal solution is obtained, yielding to . The search to the global optimum continues, and is imposed. By doing this, the same solution of the latter problem is obtained. At this point, the obtained solution is a candidate to be the global optimum of the semi-infinite problem since all the complementarity slackness constraints are hold. To finish the search, the constraint is substituted by and the resulting problem is solved. The obtained solution is and the objective function value of . The algorithm stops and the optimal solution of the bi-level problem is with . Hence, the optimal solution for the semi-infinite problem is y.
In Figure 2, the representation of the search tree is shown.

Example 5. Consider the following problem:whereThe corresponding bi-level formulation isIts single-level reformulation is as follows:Similarly, as in the previous example, the branch and bounding scheme explores the search tree depicted in Figure 3 to achieve the optimal solution.
The solution that the algorithm obtains is as optimal set and as optimal value, which shows that and . The results are validated by solving in a geometric way. We haveThe solution graph of is shown in Figure 4. On the contraru, in Figure 5, we show thatAs , the feasible set isThe optimal solution of the problem obtained from the above described feasible set is the same as the one obtained by the algorithm.

Example 6. Consider the following problem:whereThe bi-level formulation isThe algorithm shows that the problem does not have feasible solution (from the Backtrack step goes to the Termination one). The result is justified geometrically because the intersection of and is empty.

Example 7. Consider the following problem:whereThe bi-level form isThe solution graph of is shown in Figure 6. On the contrary, in Figure 7, we show thatSince , the feasible set is . The optimal solution is . We have the same result with the algorithm.

Example 8. Consider the following problem:whereThe corresponding bi-level formulation isThe solution obtained by the algorithm is and .
If the restriction is omitted in the problem , then the problem is unbounded. Moreover, if and have no sign constraints, the feasible set exhibits a so-called re-entrant corner point at the origin (see [2]).

Example 9. Consider the following problem:whereThe corresponding bi-level formulation isThe solution obtained by the algorithm is and .

Example 10. Consider the following problem:whereThe corresponding bi-level formulation isThe solution obtained by the algorithm is and .
If the restriction is omitted in the problem , then the problem is unbounded. Moreover, if and have no sign constraints, the feasible set is not closed (see [2]).
The examples and computational results are summarized in Table 1, in which the problem is shown in the first column, the optimal solution is reported in the second one, the number of mathematical programming problems solved until the optimal solution obtained is presented in the third column, the total number of mathematical programming problems solved to guarantee optimality is shown in the fourth column, and the total CPU required time is reported in the last column. All tests were performed using a personal computer having an Intel (R) Core processor with 8 GB of RAM, and the proposed algorithm was coded and run using the FICO XPRESS 8.5 commercial software. Also, as mentioned in each example, the optimal solutions are taken from the cited references in which each problem is proposed.
The effectiveness of the algorithm is shown by solving an additional set of problems that appears in [3, 21, 22, 27]. Here, bi-level problems are considered to show the robustness of the developed method. The algorithm starts from the point in which a bi-level reformulation of the linear generalized semi-infinite programming problem is obtained. As it is explained above, the algorithm aims to find the optimal solution, but then, global optimality must be guaranteed. As a consequence, additional iterations are required. However, the required time to solve the tested problems is very short. The obtained results are presented in Table 2 in which we follow the notation of the authors.

5. Application to a Real-Life Problem

In this section, a case study regarding a supply chain, in which distribution centers and manufacturers are involved, is used to demonstrate the applicability of the developed algorithm. The problem herein considered is proposed in [28] and considered in [27]. At the upper level, the distribution centers aim to maximize the overall profit, while at the lower level, the manufacturer aims to minimize the costs.

Let be the upper-level decision variables, which denote the amount of products that will be available at distribution center Also, let be the lower-level decision variables and represent the demand of customer supplied from the distribution center . Therefore, the upper-level objective function is given by the benefit obtained from selling products at price minus the production costs . The lower-level objective function is given by the manufacturing costs and the acquisition cost from other manufacturers. The imposed constraints are typical on a problem of this type; that is, there is a capacity at the distribution centers, the demand of the customers cannot be supplied from distribution centers that are closed, and at least the minimum demand of customers must be fulfilled.

Considering the particular case study, the obtained data are assumed and the resulting bi-level model is as follows:

In order to apply the proposed algorithm, its single-level reformulation obtained by applying its Kuhn–Tucker conditions is as follows:

The obtained solution is the same as in [27, 28], that is, , with a corresponding objective function value of 105,000. The algorithm solves 5 mathematical problems, and the optimal solution was assured in the 5th iteration. It required 0.031 seconds to reach the optimal solution. It is important to mention that, in [27], hybrid genetic and particle swarm optimization algorithms solved the problem in 8 iterations, while 6 iterations of a population-based metaheuristic are required in [28]. Both references do not report the computational time, but for the type of algorithms, it is probably that our methodology is faster for solving this real-life application.

6. Conclusions

In this study, the bi-level formulation of linear generalized semi-infinite programming problems is exploited to propose an easy-to-implement exact solution algorithm. The core of the method relies in the use of Kuhn–Tucker optimality conditions to reduce the bi-level formulation into a nonlinear programming problem with complementarity constraints. The main contribution of this study is the approach of satisfying the complementarity constraints via a branch-and-bound scheme. That strategy is utilized in bi-level programming, but the adaptation to solve linear generalized semi-infinite programming problems is a novel contribution in this research area.

Additionally, computational experimentation is conducted to validate the proposed algorithm and its effectiveness. Diverse linear generalized semi-infinite programming problems with different characteristics are considered to validate the robustness of the implemented algorithm. An interesting real-life application is considered during the numerical experience, which demonstrates the convenience and applicability of the proposed approach.

Therefore, the proposed method results in an alternative for solving this particular type of problems that avoid the inclusion of additional functions to regulate the complementarity constraints, as in [8]. Nevertheless, in both methods, similar assumptions are made before applying them.

A generalization of the proposed method for the case when many semi-infinite constraints are considered is presented in [3]. Their proposal is described in a theoretical manner, but its application to specific semi-infinite problems and computational experiments are not reported. The latter may be a challenging further research direction. Another opportunity is to extend the presented algorithm for solving other variants of SIPs. Also, the generalization of the algorithm to the case with many semi-infinite constraints can also be considered as future work.

Data Availability

The data that support the findings of this study are available from the corresponding author upon reasonable request.

Conflicts of Interest

The authors declare that there are no conflicts of interest regarding the publication of this paper.