An Evolutionary Algorithm Using Duality-Base-Enumerating Scheme for Interval Linear Bilevel Programming Problems

Interval bilevel programming problem is hard to solve due to its hierarchical structure as well as the uncertainty of coefficients.This paper is focused on a class of interval linear bilevel programming problems, and an evolutionary algorithm based on duality bases is proposed. Firstly, the objective coefficients of the lower level and the right-hand-side vector are uniformly encoded as individuals, and the relative intervals are taken as the search space. Secondly, for each encoded individual, based on the duality theorem, the original problem is transformed into a single level program simply involving one nonlinear equality constraint. Further, by enumerating duality bases, this nonlinear equality is deleted, and the single level program is converted into several linear programs. Finally, each individual can be evaluated by solving these linear programs. The computational results of 7 examples show that the algorithm is feasible and robust.


Introduction
The bilevel programming problem (BLPP) is a hierarchical optimization problem, involving two optimization problems located at upper and lower levels.The constraints of the upper level problem (the leader's problem) are determined implicitly by the lower level problem (the follower's problem).Mathematically, this is a mathematical program that contains an optimization problem in the constraints and can be formulated as follows: min where  ∈   are the upper level variables, which are controlled by the leader, and  ∈   are called the lower level variables and are controlled by the follower; ,  :  +  →  are the leader and the follower objective functions, respectively, while  (, ) ≤ 0 and  (, ) ≤ 0 are called the upper level and the lower level constraints which consist of some inequalities or equalities.In problem ( are known as the upper level and the lower level problems (the leader's and the follower's problems), respectively.Sets  ∈  and  ∈  are additional constraints, such as bound constraints and integer restrictions.
For problem (1), the decision-making is hierarchically executed.The leader moves first to select an  and attempts to minimize their own objective function, and then the follower observes the leader's action and selects a  in a way that is personally optimal.If the point (, ) also satisfies other constraints at upper level, it is called a feasible point.To solve (1) is to find a pair (, ) among all feasible points such that the objective  (, ) is minimized.Unlike single level mathematical programs, any feasible solution to the bilevel program (1) must satisfy the optimality of the follower's problem when the leader's variables  are fixed.
This kind of hierarchical optimization was first realized in the field of game theory by Stackelberg [1] in his monograph about market economy; as a result, this problem is also known as Stackelberg problem.As mathematical programming, bilevel programs were initially considered by Bracken and McGill in a series of papers [2][3][4].By that time, such problems were called mathematical programs with optimization problems in the constraints.The term "bilevel programming" appeared for the first time in a paper by Candler and Norton [5], who considered a multilevel formulation in the context of agricultural economics.Since that time, lots of papers have been dedicated to this topic.
For a bilevel program, when the upper level problem involves some constraints depending on both  and , this problem is more complex than those not including the leader's constraints.The leader's constraints can cause the feasible region to become unconnected, even empty.To our knowledge, it seems that Aiyoshi and Shimizu [6] first introduced the leader's constraints in bilevel programming models.
If the follower's problem has a unique optimal solution for all leader's variable values, this problem is equivalent to a one-level optimization problem having an implicitly defined objective and constraint functions.For problems having nonunique lower level optimal solutions, the optimistic (or weak) and the pessimistic (or strong) approaches were discussed.In the case of optimistic bilevel programming, it is assumed that, whenever the optimal solution set of the follower is not a singleton, the leader is allowed to select the element in the set that suits them best.When cooperation of the leader and the follower is not allowed, the pessimistic case arises.In this case, the leader wishes to limit the "damage" resulting from an undesirable selection of the follower [7,8].In order that the bilevel program can be well posed, we only discuss optimistic model in this paper.
On the one hand, bilevel programming problems are intrinsically hard, and even the "simplest instance, " the linear BLPP, was shown to be strongly NP-hard [7].On the other hand, a variety of intractable problems in real world have been modeled as bilevel programming problems and solved, such as the investigation of network of oligopolies [9], the traffic planning [10,11], the network design problem [12], and the terrorist threat problem [13].The challenge of theoretic researches and applications have been stimulating factors for the development of BLPPs, and the usefulness of these mathematical programs in modelling hierarchical decision processes and engineering design problems prompted researchers to pay close attention to bilevel programs.As a result, over the past 20 years or so, the field of bilevel optimization has received a lot of attention in developing efficient algorithms and optimality conditions [7,8,14,15].Most of the classical, theoretical, and algorithmic researches are focused on linear bilevel programming problems [16].An important property of linear bilevel programs is that their solution set, whenever it is nonempty, contains at least one vertex of the constraint region [14], by which some efficient approaches, such as "kth best" algorithms, branch and bound approaches, and penalty methods, have been proposed [7,14,17].
In the above real-world and theoretical problems, all coefficients involved are exactly known.However, in practice, it is very common for the coefficient values to be only approximately known because relevant data is nonexistent or scarce, difficult to obtain or estimate, and so forth.Therefore, it is very necessary to explicitly consider the intrinsic uncertainty associated with the model coefficients in mathematical programming models.Uncertainty can be handled mainly in three manners: interval programming, stochastic programming, or fuzzy numbers.Since it is not always easy to specify the membership function or probability distribution in an inexact environment, interval programming is the most concerned one among these approaches.For this problem, one always needs to compute the optimal value range between the best and the worst optimal objective values.These two extreme values allow the decision maker to better understand the risk involved.
Mathematical programs with interval coefficients in the objective function and/or in the constraints have been addressed in the literature [18,19].For this kind of problems, not only does an algorithm need to search the space of variables, but it also needs to specify the coefficient values in the intervals given.This means that the search procedure is more complex than that for problems with exact coefficients.In view of the inherent complexity of the problem, most of the algorithmic approaches are focused on onelevel mathematical programming with interval coefficients, especially on linear case.Ishibuchi and Tanaka [20] investigated the mathematical programming problem with interval coefficients in objective function and reduced the problem to the question of determining the Pareto-optimal solutions of a bicriteria linear programming problem by using the defined order relations.Chanas and Kuchta [19] introduced a family of preference relations and presented a unified way to determine the solution of the problem with interval objective coefficients.Lai et al. [21] discussed a class of linear programming problems with interval coefficients in both the objective function and constraints; the noninferior solutions to such problems were defined based on two order relations between intervals.One can obtain the solution by solving a parametric linear programming problem.Molai and Khorram [22] introduced a satisfaction function and defined a satisfactory solution to the problem.Chinneck and Ramadan [23] proposed an approach for a class of linear programming with interval coefficients by analyzing all kinds of variables and constraints.Hladik [24] presented a general approach to the situation; the feasible set is described by an arbitrary linear interval system.Oliveira and Antunes [25] provided an overview of the different approaches reported in the literature to deal with interval multiple objective linear programming models.For nonlinear case, very few results have been obtained.Hladík [26] considered a generalized linear fractional programming problem with interval data and presented an efficient method which deals with the problem by solving at most four linear fractional programs.Li and Tian [27] investigated interval quadratic programming and transformed the problem into two exact mathematical programs by using the bounds of intervals and duality.
For bilevel programming problems with interval coefficients, there exist few approaches.Calvete and Galé [18] addressed a linear bilevel problem in which only objective coefficients were assumed to lie between specific bounds and developed two enumerative algorithms to compute the optimal value range based on the kth best method.Ren and Wang [28] transformed the bilevel linear programming problem with fuzzy random coefficients into interval linear bilevel programming problems.In order to obtain the optimal value range, the interval programming problem was further converted into two BLPPs with determined coefficients.However, in these approaches, one has to execute two different algorithms to compute the upper bound and the lower bound of optimal objective values, respectively.
Evolutionary algorithms have been widely adopted in dealing with hard optimization problems, which can efficiently get away from local optima [29].In this paper, we concentrate on the linear bilevel programming problem in which the coefficients of two objective functions are intervals as well as the right-hand-side values of constraints and present an efficient evolutionary algorithm based on duality bases for solving the problem.In the proposed algorithm, the intervals of the lower level objective coefficients and RHS of constraints are taken as the search space, and the duality conditions of the linear program are adopted to evaluate each individual.
This paper is organized as follows.The discussed problem and some notations are presented in Section 2, and a transformation procedure is investigated in Section 3. A real coded evolutionary algorithm is given based on the duality theorem of the linear program in Section 4, and this is followed by the experimental results in Section 5. We finally conclude our paper in Section 6.

Interval Linear Bilevel Programming Problem
In this section an interval linear BLPP (ILBP) is presented, in which the coefficients of the objective functions at two levels are interval numbers, and RHS of constraints are also specified by intervals.This means that all constants/coefficients in the bilevel program are interval numbers except for the coefficient matrix at the left-hand side of constraints.The problem can be formulated as follows: where  ∈ [ For simplicity, we denote the interval linear bilevel program by ILBP(, , , ) when the objective coefficients and the right-hand-side vector are taken as , , , and , respectively.Next, for exact bilevel programming problem ILBP(, , , ), we introduce some related definitions and notations.
In order to avoid too much theoretical analysis of the existence of solutions and concenter on the algorithmic approach, we assume that the solution of (3) always exists for any selected coefficients.Some definitions of optimal solutions are presented as follows.
The purpose of solving (3) is to obtain the best and the worst optimal solutions as well as the corresponding objective coefficient values and the values of RHS of the constraints.

Problem Transformation
It is very hard for one to directly solve ILBP(3); hence, we have to transform the problem into several simpler subproblems than present one.Considering the characteristics of objective functions, we have the following.=   or d ̸ =   , that is, there is at least one component of ĉ or d that is not at a lower bound, it follows that     +     < ĉ  + d  since   ≥ 0 and   ≥ 0. On the other hand, (  ,   ) is also a feasible solution of ILBP(  ,   , ê, b) because both ILBP(  ,   , ê, b) and ILBP(ĉ, d, ê, b) share a common feasible region (inducible region).One can conclude that ILBP(  ,   , ê, b) can provide a better optimal objective value than ĉ  + d  .This is a contradiction.Hence, the proof is completed.
It should be noted that problems (6) and ( 7) share a common structure; that is, the upper objective is a linear function, whereas the lower level is an interval linear programming problem.Without any loss of generality, we only consider the solution method of problem (6), and the other can be dealt with by using the same procedure.At first, we take ∀ ∈ [  ,   ] and ∀ ∈ [  ,   ]; that is, when  and  are After doing so, it follows that one can obtain the solutions to ILBP(6) by solving ( 9) for all  ∈ [  ,   ] and  ∈ [  ,   ].We select evolutionary algorithms to solve the problem.In the proposed algorithm,  and  are taken as evolutionary search variables; that is, the values of these two variables are encoded as individuals in populations and the region [  ,   ] × [  ,   ] is taken as the search space.For each individual, we solve the problem (9).In all of the obtained optimal solutions, the one with the minimal objective value is the best optimal solution to ILBP(3).Following a similar procedure, one can obtain the worst optimal solution by solving the following nonlinear program for each  ∈ [  ,   ] and  ∈ [  ,   ]: In all obtained objective values by solving (10) with different parametric  and , the worst one can be taken as the worst optimal value of ILBP(3).
In fact, problems ( 9) and ( 10) are nonlinear programming problems since the first constraint is nonlinear.This implies that it is hard to solve these two problems.In order to obtain precise optimal solutions to these nonlinear programs, we apply a duality-base-enumerating method to solve these problems.At first, we begin with constraint −   ≤   and transform the constraint into an equality by adding some slack variables.In order to avoid generating too many variables, we still denote the equality by −   =   .Then, we enumerate all bases generated by constraint equality group −   =   and denote these bases by  1 ,  2 , . . .,   , which are actually the bases of the lower level dual problem of ILBP (8).Finally, for each fixed  and , nonlinear programming problem ( 9) can be divided into  linear programs in terms of these duality bases: = 1, 2, . . ., .We solve these  linear programs and take the minimal objective value as the optimal value of problem (9).For problem (10), the same procedure can be adopted for obtaining the optimal solutions.It should be noted that both  and  have the same value region when the best and the worst optimal solutions are searched, and problems ( 9) and ( 10) share a common feasible region.Hence, it is computationally expensive if the best and the worst optimal solutions are separately searched by using the same procedure.In the proposed approach, both the best and the worst optimal solutions can be obtained only by executing the algorithm once.

The Proposed Solution Method
In this section, we present an evolutionary algorithm using a double-fitness-evaluation technique and a real coding scheme.

Chromosome Encoding.
We encode the values of  and  using the real-number-coding scheme; that is, [  ,   ]×[  ,   ] is taken as the search space of the evolutionary algorithm.For each individual, the code is composed of two parts; the first part is the value of , whereas the other is the value of .

Fitness Evaluation.
In order to obtain the best and the worst optimal solution in one run of the algorithm, we design a double-fitness-evaluation scheme.In this process, each individual must endure twice evaluations for searching the best and the worst optimal solutions.First, for each individual  = ( 1 , . . .,   ;  1 , . . .,   ), problems ( 9) and ( 10) are solved and two objective values can be obtained.These two objective values are taken as the fitness evaluations of the individual.Here, the objective value of ( 9) is called the first fitness and is used to search the best optimal solutions, whereas that of (10) is called the second fitness which is always applied to find the worst optimal solutions.From the viewpoint of the best optimal solution, the less the first fitness is, the better the individual is.For the worst optimal solution, the larger fitness implies that the individual is better.
If problem (9) has no optimal solution, then the first fitness is taken as ; here,  is a positive number and is large enough; when problem (10) has no optimal solution, the second fitness is taken as −.

Crossover and Mutation Operators.
In the designed algorithm a heuristic crossover is presented and Gaussian mutations are adopted.

Crossover Operator.
Let   be the best individual found so far by the first fitness and let   be the best individual found so far by the second fitness.Let  be a crossover parent individual.For ∀  taken randomly in [0, 2],  = 1, 2, crossover offspring can be generated as follows: 4.3.2.Mutation Operator.l is taken for mutation; then the offspring is given as follows: here,  (0,  2 ) is a variable distributed normally with mean 0 and variance  2 .

Algorithm Description.
In this subsection we propose an evolutionary algorithm using duality-base-enumerating scheme for interval linear bilevel programs (EA-DBES).
Step 2 (fitness).Evaluate each point in pop() by using the first and second fitness evaluations and record the best solutions   and   regarding two fitness values.
Step 3 (crossover and mutation).The designed heuristical crossover operator and Gaussian mutations are adopted to generate all genetic offspring.The set of all offspring is denoted by .
Step 4. Evaluate the fitness values of all offspring and update   and   .
Step 5.For each fitness, the best [/3] individuals are selected from set pop() ∪ , and other  − 2 × [/3] individuals are chosen at random from the remaining elements of pop() ∪ .A total of  individuals are put into the next generation of population pop( + 1).
Step 6.If the termination condition is satisfied, then the algorithm is stopped; otherwise, let  =  + 1; go to Step 3.

Computational Examples
Since it is very hard to solve interval bilevel programming problems, there are few examples investigated in the literature.In order to illustrate the performance of EA-DBES, we first select two examples with objective interval coefficients from [18]  In addition, we also select three linear bilevel programming problems with determined coefficients from the literature [14,15], which are frequently solved as computational examples to estimate the performance of the proposed algorithms, and then convert both the objective coefficients and the righthand-side vector into interval numbers by using the transformation procedure.Three obtained interval programming problems are denoted by Examples 5-7, respectively.A total of 7 computational examples are shown as follows.
Example 1.Let min It is easily seen that the constructed examples are more challenging than the original ones since interval coefficients are involved.
The parameters are taken as follows:  = 50, the crossover probability   = 0.8, the mutation probability   = 0.1,  = 1, and the maximum number of generations   = 20.EA-DBES is executed for 20 runs on a PC, and the best optimal solutions (  ,   ) as well as the worst optimal solutions (  ,   ) are recorded.In all 20 runs the best ones (   ,    ), mean values (   ,    ), and worst ones (   ,    ) of two classes of solutions are shown in Tables 1 and 2. In Tables 1 and 2,   and   represent the known best and worst optimal values, respectively.For Examples 1 and 2,   and   were provided by the existing algorithm [18], whereas for Examples 3-7, only the optimal values of the original bilevel programs are presented, which can provide upper bounds for the best optimal values of Examples 3-7 as well as lower bounds for the worst optimal values.
From Tables 1 and 2, one can see that EA-DBES found the same optimal results as those provided by the literature for  Examples 1 and 2. For Examples 3-7, the best optimal values are not larger than the original ones, and the worst optimal values are not less than the original ones.Also, it should be noted that for each class of solutions we obtained the same optimal values in all 20 runs for each problem, which implies that the proposed EA-DBES is robust and feasible.Consider that the results including the best and the worst optimal solutions can be got in one execution of EA-DBES, which is different from the existing approaches [18,28].
The values of  and  corresponding to the best and the worst optimal solutions are shown in Table 3. From the sensitivity analysis, it follows that both  and  are not unique for these optimal solutions.

Conclusion
In this paper an interval linear bilevel programming problem is discussed, and a solution approach is presented.In the proposed algorithm, the search space of evolutionary algorithm consists of both the coefficient interval of the lower level objective and the right-hand-side vector interval, and, for each individual, the fitness function value is obtained by solving several linear programs.An advantage of the proposed algorithm is that it can simultaneously obtain the best and the worst optimal values in one run, which makes the proposed EA different from other existing approaches.
,   ,   , and   are lower bound vectors of corresponding intervals, whereas   ,   ,   , and   provide upper bounds for these intervals.
,   ],  ∈ [  ,   ],  ∈ [  ,   ], and  ∈ [  ,   ] are interval vectors;  ∈   ,  ∈   ;  and  are coefficient matrices, and there are  inequality constraints in the lower level program.In the problem, and denote them by Examples 1 and 2, respectively.Further, in order to generate enough computational examples Mathematical Problems in Engineering to test the performance of the algorithm, we transform some existing bilevel programming examples into ILBPs by introducing a coefficient transformation procedure as follows: let  be a real number; then the number is converted into an interval [ − ||/2,  + ||/2].Using the procedure, we obtain 5 computational examples of interval bilevel programming problems.First, we convert the right-hand-side vectors in Examples 1 and 2 into interval numbers and denote these two obtained problems by Examples 3 and 4, respectively.

Table 1 :
Best optimal solutions provided by EA-DBES.

Table 2 :
Worst optimal solutions provided by EA-DBES.

Table 3 :
Values of  and  corresponding to the best and the worst results.