Mathematical Problems in Engineering

Volume 2015, Article ID 310301, 16 pages

http://dx.doi.org/10.1155/2015/310301

## Bilevel Programming and Applications

^{1}Departamento de Ingeniería Industrial y de Sistemas, Tecnológico de Monterrey, Avenida Eugenio Garza Sada 2501 Sur, 64849 Monterrey, NL, Mexico^{2}Department of Social Modeling, Central Economics and Mathematics Institute (CEMI) of the Russian Academy of Sciences (RAS), Nakhimovsky Prospekt 17, Moscow 117418, Russia^{3}Department of Electronics and Computing, Sumy State University, Rimsky-Korsakov Street 2, Sumy 40007, Ukraine^{4}Institut für Numerische Mathematik und Optimierung, Fakultät für Mathematik und Informatik, TU Bergakademie Freiberg, Akademiestraße 6, 09596 Freiberg, Germany^{5}SINTEF, Box 4760, Sluppen, 7465 Trondheim, Norway^{6}Facultad de Ciencias Físico-Matemáticas (FCFM), Universidad Autónoma de Nuevo León (UANL), Avenida Universidad S/N,
66450 San Nicolás de los Garza, NL, Mexico

Received 25 June 2014; Accepted 23 July 2014

Academic Editor: Sergii V. Kavun

Copyright © 2015 Vyacheslav V. Kalashnikov et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

#### Abstract

A great amount of new applied problems in the area of energy networks has recently arisen that can be efficiently solved only as mixed-integer bilevel programs. Among them are the natural gas cash-out problem, the deregulated electricity market equilibrium problem, biofuel problems, a problem of designing coupled energy carrier networks, and so forth, if we mention only part of such applications. Bilevel models to describe migration processes are also in the list of the most popular new themes of bilevel programming, as well as allocation, information protection, and cybersecurity problems. This survey provides a comprehensive review of some of the above-mentioned new areas including both theoretical and applied results.

#### 1. Introduction

Although a wide range of applications fit the bilevel programming framework, real-life implementations are scarce, due mainly to the lack of efficient algorithms for tackling medium- and large-scale bilevel programming problems (BLP). Solving a bilevel (more generally, hierarchical) optimization problem, even in its simplest form, is a difficult task. A lot of different alternative methods may be used based on the structure of the problem analyzed, but there is no general method that guarantees convergence, performance, or optimality for every type of problem.

Many new ideas appeared and were discussed in works of plenty of authors. Among them, we would name Dempe [1], Dempe et al. [2], Dempe and Dutta [3], Dewez et al. [4], Thi et al. [5], and Vicente and Calamai [6], whose works have developed various ways of reducing original bilevel programming problems to equivalent single-level ones, thus making their solution somewhat easier task for conventional mathematical programming software packages.

Mixed-integer bilevel programming problems (with part of the variables at the upper and/or lower level being integer/Boolean ones) are even harder for the conventional optimization techniques. For instance, a usual replacement of the lower level optimization problem with a corresponding KKT condition may not work if some of the lower level variables are not continuous. Therefore, solid theoretical base is necessary to be found, in order to propose efficient algorithmic procedures aimed at finding local or global solutions of such a problem.

A great amount of new applied problems in the area of energy networks has recently arisen that can be efficiently solved only as mixed-integer bilevel programs. Among them are the natural gas cash-out problem, the deregulated electricity market equilibrium problem, biofuel problems, a problem of designing coupled energy carrier networks, and so forth, if we mention only part of such applications. Bilevel models to describe migration processes are also in the list of the most popular new themes of bilevel programming.

This special volume of the Hindawi journal Mathematical Problems in Engineering comprises papers dealing with three main themes: bilevel programming, equilibrium models, and combinatorial (integer programming) problems, and their applications to engineering. Because of that, it opens with this survey paper “Bilevel Programming and Applications” summing up some recent and new directions and results of the development of the mathematical methods aimed at the solution of bilevel programs of different types and their applications to real-life problems.

The paper is organized as follows: the survey of the literature dealing with the formulation and history of bilevel programming problems is given in Section 2. Section 3 describes the ways the linear bilevel programs are treated, while Section 4 surveys the recent results in an important application of BLP to the well-known imbalance cash-out problem arising in the natural gas industry. Section 5 reviews the new methods of reducing the number of upper level variables, which helps a lot in applying stochastic programming algorithms to solve the optimal cash-out problems. Section 6 describes various promising bilevel approaches to the mixed-integer allocation model. Finally, Section 7 presents the latest bilevel mechanisms to solve very important information protection and cybersecurity problems. The conclusion, acknowledgements, and the list of references finish the survey.

#### 2. Bilevel Programs: Statement and History

A* bilevel program* is an optimization problem where the feasible set is partly determined through a solution set mapping of a second parametric optimization problem [1]. The latter problem is given as where is a (closed) set.

Let denote the feasible set mapping: letbe the optimal value function, and let be the solution set mapping of the problem (1) for a fixed value of : Letbe the graph of the mapping . Then, the bilevel programming problem is given as where is a closed set.

Problems (1) and (5) can be interpreted as an hierarchical game of two decision makers (or players) which make their decisions according to the hierarchical order. The first player (called the* leader*) makes his selection first and communicates it to the second player (the so-called* follower*). Then, knowing the choice of the leader, the follower selects his* response* as an optimal solution of problem (1) and gives this back to the leader. Thus, the leader’s task is to determine a best decision, that is, a point which is feasible for problem (5): , minimizing, together with the response , the function . Therefore, problem (1) is called the follower’s problem and (5) the leader’s problem. Problem (5) is the* bilevel programming problem*.

##### 2.1. Optimistic and Pessimistic Approaches

Strictly speaking, problem (5) is ill-posed in the case when the set is not a singleton for some , which means that the mapping is not a function but a multivalued mapping. This is implied by an ambiguity in the computation of the upper level objective function value, which is rather an element in the set . The quotation marks in (5) are used purely to indicate this ambiguity. To cope with such an obstacle, there are several ways out.(1)The leader can assume that the follower is willing (and able) to cooperate. In this case, the leader simply selects the solution within the set that is the best one with respect to the upper level objective function. This leads then to the function to be minimized over the set This is the* optimistic* approach leading to the* optimistic bilevel programming problem*. Roughly speaking, this problem is closely related to the problem If is a local minimum point of the function on the set and , then the point is also a local minimum point of problem (7). The converse is in general not true. For more information about the relation between both problems, the interested reader is referred to Dempe [1].(2)The leader has no possibility to influence the follower’s selection, neither has he/she any guess about the follower’s choice. In this case, the leader has to take into account the follower’s ability to select the worst solution with respect to the leader’s objective function; hence the leader has to diminish the damage resulting from such an unlucky selection. This brings up the function to be minimized on the set This is the* pessimisti*c approach resulting in the* pessimistic bilevel programming problem*. This problem is often much more complicated than the optimistic bilevel programming problem; see Dempe [1].There is also another pessimistic bilevel optimization problem in the literature. To describe this problem consider the bilevel optimization problem with connecting upper level constraints and an upper level objective function depending only on the upper level variable : In this case, a point is feasible if there exists such that , which can be written as Now, if the quantifier is replaced by we derive a second pessimistic bilevel programming problem This problem has been investigated in Wiesemann et al. [7]. The relations between (13) and (10) should be studied in the future.(3)The leader is able to predict a selection of the follower: for all . If this function is inserted into the upper level objective function, this leads to the problem Such a function is called a selection function of the point-to-set mapping . Hence, we call this approach the* selection function approach*. One special case of this approach arises if the optimal solution of the lower level problem is unique for all values of . It is obvious that the optimistic and the pessimistic problems are special cases of the selection function approach.

Even under restrictive assumptions (as in the case of linear bilevel optimization or if the follower’s problem has a unique optimal solution for all ), the function is in general nondifferentiable. Hence, the bilevel programming problem is a* nonsmooth* optimization problem.

Various results and examples/counterexamples concerning the existence of solutions to different formulations of bilevel programming problems can be found in [1, 8–10], to mention only few.

##### 2.2. A Short History of Bilevel Programming

The history of bilevel programming dates back to von Stackelberg who (in 1934 in monograph [11]) formulated a hierarchical game of two players now called* Stackelberg game*. The formulation of the bilevel programming problem goes back to Bracken and McGill [12]; the notion “bilevel programming” has been coined probably by Candler and Norton [13]; see also Vicente et al. [14]. With the beginning of the 80’s of the last century a very intensive investigation of bilevel programming started. A number of monographs, for example, Bard [15], Shimizu et al. [16] and Dempe [1], edited volumes, see Dempe and Kalashnikov [17] and Migdalas et al. [18] and (annotated) bibliographies, for example, Vicente and Calamai [6], and Dempe [19] have been published in that field.

One possibility to investigate bilevel programs is to transform them into single-level (or ordinary) optimization problems. In the first years, linear bilevel programming problems (where all the involved functions are affine (linear) and the sets and are whole spaces) were usually transformed making use of linear programming duality or, equivalently, the Karush-Kuhn-Tucker conditions for linear programming. Applying this approach, solution algorithms have been developed;* compare*, for example, Candler and Townsley [20]. The transformed problem is a special case of a mathematical program with equilibrium constraints MPEC (now sometimes called* mathematical program with complementarity constraints*, MPCC). We can call this the* KKT transformation* of the bilevel programming problem. This approach is also possible for convex parametric lower level problems satisfying some regularity assumption.

General MPCCs have been the topic of some monographs;* see* Luo et al. [21] and Outrata et al. [22]. Solution algorithms for MPCCs (see, for instance, Outrata et al. [22], Demiguel et al. [23], Leyffer et al. [24], and many others) have also been suggested for solving bilevel programming problems.

Since MPCCs are nonconvex optimization problems, solution algorithms will hopefully compute local optimal solutions of the MPCCs. Thus, it is interesting if a local optimal solution of the KKT transformation of a bilevel programming problem is related to a local optimal solution of the latter problem. This has been the topic of the paper by Dempe and Dutta [3].

Later on, the selection function approach to bilevel programming has been investigated in the case when the optimal solution of the lower level problem is uniquely determined and strongly stable in the sense of Kojima [25]. Then, under some assumptions, the optimal solution of the lower level problem is a -function; see Ralph and Dempe [26] and Scholtes [27] for the definition and properties of -functions. This can then be used to determine necessary and sufficient optimality conditions for bilevel programming;* compare* Dempe [28].

Using the optimal value function of the lower level problem (1), the bilevel programming problem (7) can be replaced with This is the so-called* optimal value transformation*.

Since the optimal value function is nonsmooth even under very restrictive assumptions, this is a nonsmooth, nonconvex optimization problem. Using nonsmooth analysis, see, for example, Mordukhovich [29, 30] and Rockafellar and Wets [31], optimality conditions for the optimal value transformation can be obtained,* compare* Outrata [32], Ye and Zhu [33], and Dempe et al. [34].

Nowadays, a large number of Ph.D. theses have been written on bilevel programming problems, very different types of (necessary and sufficient) optimality conditions can be found in the literature, the number of applications is huge, and both exact and heuristic solution algorithms have been suggested.

#### 3. Linear Bilevel Programming Problems

The linear bilevel program is the problem of the following structure: where is the solution set mapping of the lower level problem Here, , , and are matrices of sizes , , and , respectively, and all variables and vectors used are of appropriate dimensions. Note that we have used here the so-called optimistic bilevel optimization problem, which is related to problem (7).

The so-called* connecting constraints * are included in the upper level problem. Validity of such constraints is beyond the selection of the leader and can be verified only after the follower has selected his/her (possibly* not* unique) optimal solution. In the case especially when does not reduce to a singleton, certain difficulties may arise. In order to examine the bilevel programming problem in the case that does not reduce to a singleton, Ishizuka and Aiyoshi [35] introduced their double penalty method. In general, connecting constraints may imply that the feasible set of the bilevel programming problem is disconnected. This situation is illustrated by the following example:

*Example 1 (Mersha and Dempe [36]). *Consider the problem subject toThe optimal solution for this problem is the point at (see Figure 1). But if we shift the two upper level constraints to the lower level we get the point at as an optimal solution (see Figure 2). From this example one can easily notice that if we shift constraints from the upper level to the lower one, the optimal solution obtained prior to shifting is not optimal any more in general. Hence ideas based on shifting constraints from one level to another will lead to a solution which may not solve the original problem.