# Bilevel Programming and Applications

Authors: Vyacheslav V. Kalashnikov; Stephan Dempe; Gerardo A. Pérez-Valdés; Nataliya I. Kalashnykova; José-Fernando Camacho-Vallejo
Journal: Mathematical Problems in Engineering
 (2015)

---

## 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.


---

## Body

## 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 Section2. 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

Abilevel 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 (1)minyfx,y:gx,y≤0,y∈T,where f:Rn×Rm→R,g:Rn×Rm→Rp,T⊆Rm is a (closed) set.LetY:Rn→Rm denote the feasible set mapping: let(2)Yx:=y:gx,y≤0,φx:=minyfx,y:gx,y≤0,y∈Tbe the optimal value function, and let Ψ:Rn→Rm be the solution set mapping of the problem (1) for a fixed value of x: (3)Ψx:=y∈Yx∩T:fx,y≤φx.Let(4)gphΨ:=x,y∈Rn×Rm:y∈Ψxbe the graph of the mapping Ψ. Then, the bilevel programming problem is given as (5)“minx”Fx,y:Gx≤0,x,y∈gphΨ,x∈X,where F:Rn×Rm→R,G:Rn→Rq,X⊆Rn 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 theleader) makes his selection first and communicates it to the second player (the so-calledfollower). Then, knowing the choice of the leader, the follower selects hisresponse 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 x^ which is feasible for problem (5): G(x^)≤0,x^∈X, minimizing, together with the response y^∈Ψ(x^), the function F(x,y). Therefore, problem (1) is called the follower’s problem and (5) the leader’s problem. Problem (5) is thebilevel programming problem.


### 2.1. Optimistic and Pessimistic Approaches

Strictly speaking, problem (5) is ill-posed in the case when the set Ψ(x) is not a singleton for some x, which means that the mapping x↦F(x,y(x)) 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 {F(x,y):y∈Ψ(x)}. 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Ψ(x) that is the best one with respect to the upper level objective function. This leads then to the function (6)φox:=minFx,y:y∈Ψxto be minimized over the set {x:G(x)≤0,x∈X}. This is theoptimistic approach leading to theoptimistic bilevel programming problem. Roughly speaking, this problem is closely related to the problem (7)minx,yFx,y:Gx≤0,x,y∈gphΨ,x∈X.If x¯ is a local minimum point of the function φo(·) on the set (8)x:Gx≤0,x∈Xand y¯∈Ψ(x¯), then the point (x¯,y¯) 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(9)φpx:=maxFx,y:y∈Ψxto be minimized on the set {x:G(x)≤0,x∈X}:(10)minφpx:Gx≤0,x∈X.This is thepessimistic approach resulting in thepessimistic 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 x: (11)“minx”Fx:Gx,y≤0,y∈Ψx.In this case, a point x is feasible if there exists y∈Ψ(x) such that G(x,y)≤0, which can be written as (12)minxFx:Gx,y≤0forsomey∈Ψx.Now, if the quantifier ∃ is replaced by ∀ we derive a second pessimistic bilevel programming problem (13)minxFx:Gx,y≤0∀y∈Ψx.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:y(x)∈Ψ(x) for all x. If this function is inserted into the upper level objective function, this leads to the problem (14)minxFx,yx:Gx≤0,x∈X.Such a function y(·) is called a selection function of the point-to-set mapping Ψ(·). Hence, we call this approach theselection function approach. One special case of this approach arises if the optimal solution of the lower level problem is unique for all values of x. 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 allx), the function y(·) is in general nondifferentiable. Hence, the bilevel programming problem is anonsmooth 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 calledStackelberg 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 setsX and T 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 calledmathematical program with complementarity constraints, MPCC). We can call this theKKT 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 PC1-function; see Ralph and Dempe [26] and Scholtes [27] for the definition and properties of PC1-functions. This can then be used to determine necessary and sufficient optimality conditions for bilevel programming;compare Dempe [28].Using the optimal value functionφ(x) of the lower level problem (1), the bilevel programming problem (7) can be replaced with (15)minx,yFx,y:Gx≤0,gx,y≤0,fx,y≤φx,x∈X.This is the so-calledoptimal 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.


## 2.1. Optimistic and Pessimistic Approaches

Strictly speaking, problem (5) is ill-posed in the case when the set Ψ(x) is not a singleton for some x, which means that the mapping x↦F(x,y(x)) 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 {F(x,y):y∈Ψ(x)}. 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Ψ(x) that is the best one with respect to the upper level objective function. This leads then to the function (6)φox:=minFx,y:y∈Ψxto be minimized over the set {x:G(x)≤0,x∈X}. This is theoptimistic approach leading to theoptimistic bilevel programming problem. Roughly speaking, this problem is closely related to the problem (7)minx,yFx,y:Gx≤0,x,y∈gphΨ,x∈X.If x¯ is a local minimum point of the function φo(·) on the set (8)x:Gx≤0,x∈Xand y¯∈Ψ(x¯), then the point (x¯,y¯) 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(9)φpx:=maxFx,y:y∈Ψxto be minimized on the set {x:G(x)≤0,x∈X}:(10)minφpx:Gx≤0,x∈X.This is thepessimistic approach resulting in thepessimistic 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 x: (11)“minx”Fx:Gx,y≤0,y∈Ψx.In this case, a point x is feasible if there exists y∈Ψ(x) such that G(x,y)≤0, which can be written as (12)minxFx:Gx,y≤0forsomey∈Ψx.Now, if the quantifier ∃ is replaced by ∀ we derive a second pessimistic bilevel programming problem (13)minxFx:Gx,y≤0∀y∈Ψx.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:y(x)∈Ψ(x) for all x. If this function is inserted into the upper level objective function, this leads to the problem (14)minxFx,yx:Gx≤0,x∈X.Such a function y(·) is called a selection function of the point-to-set mapping Ψ(·). Hence, we call this approach theselection function approach. One special case of this approach arises if the optimal solution of the lower level problem is unique for all values of x. 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 allx), the function y(·) is in general nondifferentiable. Hence, the bilevel programming problem is anonsmooth 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 calledStackelberg 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 setsX and T 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 calledmathematical program with complementarity constraints, MPCC). We can call this theKKT 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 PC1-function; see Ralph and Dempe [26] and Scholtes [27] for the definition and properties of PC1-functions. This can then be used to determine necessary and sufficient optimality conditions for bilevel programming;compare Dempe [28].Using the optimal value functionφ(x) of the lower level problem (1), the bilevel programming problem (7) can be replaced with (15)minx,yFx,y:Gx≤0,gx,y≤0,fx,y≤φx,x∈X.This is the so-calledoptimal 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:(16)minx,ya⊤x+b⊤y:Ax+By≤c,x,y∈gphΨ,where Ψ(·) is the solution set mapping of the lower level problem (17)Ψx:=Argminyd⊤y:Cy≤x.Here, A, B, and C are matrices of sizes p×n, p×m, and n×m, 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-calledconnecting constraintsAx+By≤c 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 (possiblynot unique) optimal solution. In the case especially when Ψ(x) does not reduce to a singleton, certain difficulties may arise. In order to examine the bilevel programming problem in the case that Ψ(x) 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(18)z=-x-2y⟶minx,ysubject  to(19)2x-3y≥-12x+y≤14,y∈Argminy-y:-3x+y≤-3,3x+y≤30.
The optimal solution for this problem is the pointC at (x¯,y¯)=(8,6) (see Figure 1). But if we shift the two upper level constraints to the lower level we get the point B at (x~,y~)=(6,8) 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.Figure 1
The problem with upper level connecting constraints. The feasible set is depicted with bold lines. The pointC is global optimal solution and point A is a local optimal solution.Figure 2
The problem when the upper level connecting constraints are shifted into the lower level problem. The feasible set is depicted with bold lines. The global optimal solution is pointB.In Example1, the optimal solution of the lower level problem was unique for all x. If this is not the case, feasibility of a selection of the upper level decision maker possibly depends on the selection of the follower. In the optimistic case, this means that the leader selects within the set of optimal solutions of the follower’s problem one point which is at the same time feasible for the upper level connecting constraints and gives the best objective function value for the upper level objective function.As we can see in Example1 the existence of connecting upper level constraints might lead, in general, to adisconnected feasible set in the bilevel programming problem. Therefore, solution algorithms will live in one of the connected components of the feasible set (i.e., a sequence of feasible points which all belong to one of the connected parts is computed) or they need to jump from one of the connected parts of the feasible set to another one. Some ideas of discrete optimization are needed in such cases.In order to avoid the above-mentioned difficulties, some researchers restrict themselves to the cases when the upper level constraints depend on the upper level variables only (i.e., matrixB is zero-matrix, B=0). Thus, the bilevel problem (16)-(17) reduces to a simpler one: (20)minx,ya⊤x+b⊤y:Ax≤c,x,y∈gphΨ,where Ψ(·) is the solution set mapping of the lower level problem (21)Ψx:=Argminyd⊤y:Cy≤x.In this problem, parametric linear optimization (see, for example, Nožička et al. [37]) can be used to show that the graph of the mapping Ψ(·) equals the connected union of faces of the set {(x,y)⊤:Cy≤x}.


## 4. Application of Bilevel Programming to Imbalance Cash-Out Problem

In the early 1990s, several regulations were passed in the USA and the European Union [38, 39] changing the way natural gas was marketed and traded. Particularly, this liberalization [40] effectively ended a period in which natural gas was a state-driven industry. The liberalization has also created the emergent natural gas markets, as well as a strong demand for models to better tackle the new problems and profit from this new setting [41, 42]. It is possible to say that the above-mentioned processes formed the natural gas supply chain. The resulting market configuration demanded the independence of the transportation and commercialization processes. As a result of this paradigm shift—and the accompanying restructurization of the market—a systematic analysis of several new features becomes indispensable.Of particular interest is a problem that arises in the natural gas supply chain, namely, that ofbalancing the fuel volumes over a distribution network. Such a balancing procedure directly concerns the Pipeline Operating Company (POC), since the correct operation of the pipeline means the well controlled volumes of the transported gas. Moreover, any natural gas shipping company (NGSC) is also concerned with the balancing of the volumes because it is often impossible to avoid animbalance justified by certain economic reasons. A natural gas shipping company’s business is to sell the gas by moving it through the pipeline to its clients: it has to fulfill signed contracts first and then market excesses of the gas to achieve the maximum profits. In order to do that, the NGSC has to manage the volumes at each selling point (so-calledpipeline meters) taking into account the balance, the selling prices, and the total revenue. The basic mathematical framework of this problem’s modeling is found in [43].Owing not only to this liberalization, but also to the new local conditions that are more open to competition, new small players entered the natural gas industry, especially at the local scale. Indeed, the USA has over 80 interstate, long-distance pipelines [44], serving different regions with various climatic, demographic, economic, and political circumstances. Natural gas usage in Alabama, for example, intuitively is not the same as in Oregon; thus the market dynamics of the fuel are also different, and this, we presume, should be reflected in some way in the econometric data of the states.Not only macroeconomic trends, however, are affected by this setting. When doing cross-regions studies of various aspects of the supply chain, such as the forecasting of demand [45, 46], the balancing of the pipelines after imbalances have been created by the natural gas shippers [43, 47, 48], or the dynamics of interstate-intrastate systems [49], one has to take into account the existence of different markets.The existence of a common relationship between price and consumption of natural gas across several zones allows for strong claims of uniformity, which are useful when, for example, we are building scenarios for a stochastic problem. Indeed, if we manage to group the regions in clusters with similar price and consumption functions, we can reduce the number of variables needed in a scenario tree formulation [42, 50]It must be emphasized that, while natural gas pipeline networks have been thoroughly studied, most of the existent models focus on aspects of this part of the supply chain other than the NGSC-POC interaction in the system balancing, such as network operation optimization [51, 52] or deployment of facilities [53]. There are also papers considering the natural gas supply chain in a multilevel scheme, in which both the NGSC and the POC are present and accounted for, such as the related [54, 55]. These works are remarkable in the sense that they span the whole supply chain with much emphasis on the traders (financial front-ends of the natural gas producers,) so that there is little to no mention of imbalances in the system resulting from the dealings of the NGSCs and the POCs, even though both actors are present in the models.Many authors do acknowledge [56, 57] the existence of a problematic situation in the NGSC-POC system following the paradigm shift, yet we have found very few sources that explain plausible ways in which this problem is nowadays solved. For example, [58] shows how storage is required by the NGSC when no flexibility exists in the network volume management, either because it is not allowed, or because it is not technically possible. Nevertheless, balancing is an important part of the modern natural gas supply chain management, and to date, no policy has been accepted as optimal regarding the way, in which the imbalances produced by the NGSC are physically and economically handled. Among the most important tools that aid the POC in its task of restoring the balance of the system is thearbitrage penalization policies, in which the POC performs a maintenance redistribution of the imbalances in the system and charges the NGSC(s) for the cost of this operation.In [59], one finds a modeling framework (which we are going to follow) of the penalization part of this problem. This penalization refers only to the cash-out that occurs between the NGSC and the POC: it leaves outside any reference to actual market conditions, which are obviously important to the NGSC. The paper presents a solution method through a modification of the original problem, as well as the analysis of how this modification affects the objective function and the obtained solutions. In [47], the authors compare two algorithms that solve the problem making use of certain numerical procedures. In the present paper, we adapt these algorithms to our extended model. We also make use of the idea proposed in [43] to divide our problem into severalgeneralized transportation problems when finding its numerical solution.In [60, 61], we study a modified version of the above-described problem, in which the upper level objective function includes certain new terms based upon the net profit of the leader—the natural gas shipping company. This formulation assumes, however, the complete knowledge (perfect information) about the changes in the prices of natural gas during the process, which is somewhat nonrealistic and not quite useful, as the resulting function does not clearly reflect the reasons behind the actions of the NGSC.In [62] a stochastic reformulation of the problem is presented, so that the NGSC is now able to forecast the next several values of the natural gas demand and then to plan the extraction of natural gas from the pipeline. The resulting model is a stochastic variation of the original mixed-integer bilevel optimization problem, for which two different solution methods are proposed and compared.To the best of our knowledge, there is no literature, beyond the works listed in the paragraphs above and their derivatives, that explicitly deals with the NGSC-POC subsystem in the same way we propose, formulating a bilevel optimization problem out of the balancing operations. We attribute this to the relatively recent nature of the problem we are dealing with, as well as the difficulty of its accurate formulation for specific instances.


### 4.1. Problem Specification

Following the scheme constructed in [47, 59], we will consider a leader-follower system, in which the first agent (the leader), namely, the Natural Gas Shipping Company (NGSC), buys the gas at the wells, arranges for its injection into an (interstate) pipeline at its starting point, and extracts some amount of gas—ideally, equal to the deposited amount—from pipeline meters in severalpool zones across the country. The follower here is the administrator of the pipeline, which we call the Pipeline Operating Company (POC), who permits the NGSC to extract amounts of natural gas that may differ from the originally injected volumes, thus creating positive or negative imbalances. The latter is a kind of usual market practice that allows for a dynamic flow of the fuel within the natural gas supply chain.However, since disrupting the system in this way implies extra costs for the NGSC, the company attempts to do it only when its predictions of future market conditions show that the total revenues overcome the losses incurred by the penalization policy applied to the NGSC. It is clear that the NGSC needs tools that provide it with the best possible information and help it make advantage of the latter.The NGSC-POC system operates in the following way.(1)
The NGSC makes a forecast of the demand it is likely to have during the next period (month, year, etc.) and considers different scenarios, in which this can occur.(2)
The NGSC books certain capacityDc for every pool zone and stage (day, week, month, etc.)(3)
For each subsequent stage, the NGSC determines the amount of gas to extract and sell, which possibly creates positive and negative imbalances in the process; this continues until the period is over;.(4)
The POC studies the resulting last day imbalances and rearranges them according to certain business rules.(5)
The POC charges the NGSC with certain penalty for the final (rearranged) imbalances. The latter may occur to be negative; that is, the POC may pay to the NGSC.(6)
The NGSC calculates the net profits as its sales revenue minus the penalty.The resulting model is a bilevel multistage stochastic optimization problem [63], in which the upper level decision maker (the leader) is the NGSC who has the objective of maximizing its net profit as the revenue from the sales of its gas in the pipeline minus the penalty imposed by the POC. The lower level decision maker (the follower) is the POC who aims at minimizing the absolute value of the penalization cash-out flow, either from the POC to the NGSC or vice versa. The first stage of the stochastic problem corresponds to the capacity booking made by the NGSC, and these capacity values remain unchanged throughout the whole process. At the next stages, the decision variables are the daily extraction amounts (and hence, the imbalances), unsatisfied demand, and the penalty cash-outs imposed by the POC.Note that, while the POC may appear as the party with more influence in the system, the NGSC is the leader of the bilevel problem. The only reason why the NGSC is the upper level (leader) is because of the timing of the decision process. Indeed, it would seem logical that the POC, enjoying stronger control over its own facilities, has to abide to the decisions (regarding final day imbalances) that the NGSC has already made. This is because of the relative freedom that has been awarded (in the current business’ practice) to the NGSC in creating imbalances to maintain healthy business in favor of its customers.


### 4.2. Stochastic Model

In [62], the authors present a bilevel multistage stochastic optimization model, which is developed to deal with a certain subsystem of the natural gas supply chain. While former models were focused on the arbitrage policies in a deterministic setting, here we have expanded the problem to include such elements as gas sales and booking costs and added a stochastic framework to model the uncertainty in demand and prices faced by the upper level decision maker (the leader).The developed model was implemented numerically and compared to the perfect information solution (PIS) and the expected value solutions (EVS). Experimental findings show that 19 of the 21 instances deliver implementation values of over half of the PIS, whereas only one of the EVS implementation values has a relative error below 0.75. The stochastic solution implementation values are better than those of the EVS values in all but one case—which corresponds to the simplest instance tested—which testifies in favour of our approach. The performed linear reformulation also proved advantageous, as solving the original model with nonlinear levels takes considerably longer time and does not provide better solutions after up to 10 hours of running time in 20 of the 21 experiments.Future work includes assessing the convenience of using heuristic approaches for solving the lower level (as opposed to using a specialized linear solver) and reformulating the linear lower level in the form of its duality conditions, adding these to the upper level to solve a single-level problem instead of a bilevel one. It is also worthwhile to study these models under different time series not showing seasonality is also planned, as it is the implementation of a rolling horizon approach to remedy the lack of accuracy over long-period problems (such as problem B011 involving 28 periods).


### 4.3. Penalty Function Method

Paper [64] studies a special bilevel programming problem that arises from the dealings of a Natural Gas Shipping Company (NGSC) and the Pipeline Operator Company (POC), with facilities of the latter used by the former. Because of the business relationships between these two actors, the timing and objectives of their decision-making process are different and sometimes even opposed.In order to model that, bilevel programming was traditionally used in the above-mentioned works. Later, the problem was expanded and theoretically studied to facilitate its solution; this included extension of the upper level objective function, linear reformulation, heuristic approaches, and branch-and-bound techniques.In this paper, the authors presented a linear programming reformulation of the latest version of the model, which is significantly faster to solve when implemented computationally. More importantly, this new formulation makes it easier to theoretically analyze the problem, allowing one to draw some conclusions about the nature of the solution of the modified problem.When a NGSC and a POC engage in a contract, the resulting dynamics may be subject to multilevel programming analysis. In this work, an inexact penalization approach (IPA) was developed to solve the related bilevel linear programming problem, in which the NGSC is the upper level decision maker, and tries to maximize its earnings. In the meantime, the POC is the lower level decision maker trying to minimize the cash-out between both parties, while balancing the pipeline network to guarantee an adequate operation of the latter.The IPA algorithm is adapted to the linearized versions of the problems found in [65], and theoretical work is then made to demonstrate the convergence of this solution method.Combining the inexact penalization approach and a modified Nelder-Mead simplex algorithm has resulted in a fast and efficient enough optimization scheme, in which new iterations are generated, corrected, and then evaluated for optimality. To summarize the numerical experiments, the IPMNM approach works considerably better than both direct implementations and IPA versions without linearization. This makes a support for our linearization attempts, as well as for the advantageous usage of the IPA algorithms developed in [47]. Altogether, numerical results concerning the running time, convergence, and optimal values are presented and compared to previous reports, showing a significant improvement in speed without actual sacrifice of the solution’s quality.In conclusion, it is possible to believe that the new solution speed achieved allows one to reach a quick and more frequent balancing. Indeed, the more accurate the solution is, the more dynamic and successful the industry’s response to market necessities will be.


## 4.1. Problem Specification

Following the scheme constructed in [47, 59], we will consider a leader-follower system, in which the first agent (the leader), namely, the Natural Gas Shipping Company (NGSC), buys the gas at the wells, arranges for its injection into an (interstate) pipeline at its starting point, and extracts some amount of gas—ideally, equal to the deposited amount—from pipeline meters in severalpool zones across the country. The follower here is the administrator of the pipeline, which we call the Pipeline Operating Company (POC), who permits the NGSC to extract amounts of natural gas that may differ from the originally injected volumes, thus creating positive or negative imbalances. The latter is a kind of usual market practice that allows for a dynamic flow of the fuel within the natural gas supply chain.However, since disrupting the system in this way implies extra costs for the NGSC, the company attempts to do it only when its predictions of future market conditions show that the total revenues overcome the losses incurred by the penalization policy applied to the NGSC. It is clear that the NGSC needs tools that provide it with the best possible information and help it make advantage of the latter.The NGSC-POC system operates in the following way.(1)
The NGSC makes a forecast of the demand it is likely to have during the next period (month, year, etc.) and considers different scenarios, in which this can occur.(2)
The NGSC books certain capacityDc for every pool zone and stage (day, week, month, etc.)(3)
For each subsequent stage, the NGSC determines the amount of gas to extract and sell, which possibly creates positive and negative imbalances in the process; this continues until the period is over;.(4)
The POC studies the resulting last day imbalances and rearranges them according to certain business rules.(5)
The POC charges the NGSC with certain penalty for the final (rearranged) imbalances. The latter may occur to be negative; that is, the POC may pay to the NGSC.(6)
The NGSC calculates the net profits as its sales revenue minus the penalty.The resulting model is a bilevel multistage stochastic optimization problem [63], in which the upper level decision maker (the leader) is the NGSC who has the objective of maximizing its net profit as the revenue from the sales of its gas in the pipeline minus the penalty imposed by the POC. The lower level decision maker (the follower) is the POC who aims at minimizing the absolute value of the penalization cash-out flow, either from the POC to the NGSC or vice versa. The first stage of the stochastic problem corresponds to the capacity booking made by the NGSC, and these capacity values remain unchanged throughout the whole process. At the next stages, the decision variables are the daily extraction amounts (and hence, the imbalances), unsatisfied demand, and the penalty cash-outs imposed by the POC.Note that, while the POC may appear as the party with more influence in the system, the NGSC is the leader of the bilevel problem. The only reason why the NGSC is the upper level (leader) is because of the timing of the decision process. Indeed, it would seem logical that the POC, enjoying stronger control over its own facilities, has to abide to the decisions (regarding final day imbalances) that the NGSC has already made. This is because of the relative freedom that has been awarded (in the current business’ practice) to the NGSC in creating imbalances to maintain healthy business in favor of its customers.


## 4.2. Stochastic Model

In [62], the authors present a bilevel multistage stochastic optimization model, which is developed to deal with a certain subsystem of the natural gas supply chain. While former models were focused on the arbitrage policies in a deterministic setting, here we have expanded the problem to include such elements as gas sales and booking costs and added a stochastic framework to model the uncertainty in demand and prices faced by the upper level decision maker (the leader).The developed model was implemented numerically and compared to the perfect information solution (PIS) and the expected value solutions (EVS). Experimental findings show that 19 of the 21 instances deliver implementation values of over half of the PIS, whereas only one of the EVS implementation values has a relative error below 0.75. The stochastic solution implementation values are better than those of the EVS values in all but one case—which corresponds to the simplest instance tested—which testifies in favour of our approach. The performed linear reformulation also proved advantageous, as solving the original model with nonlinear levels takes considerably longer time and does not provide better solutions after up to 10 hours of running time in 20 of the 21 experiments.Future work includes assessing the convenience of using heuristic approaches for solving the lower level (as opposed to using a specialized linear solver) and reformulating the linear lower level in the form of its duality conditions, adding these to the upper level to solve a single-level problem instead of a bilevel one. It is also worthwhile to study these models under different time series not showing seasonality is also planned, as it is the implementation of a rolling horizon approach to remedy the lack of accuracy over long-period problems (such as problem B011 involving 28 periods).


## 4.3. Penalty Function Method

Paper [64] studies a special bilevel programming problem that arises from the dealings of a Natural Gas Shipping Company (NGSC) and the Pipeline Operator Company (POC), with facilities of the latter used by the former. Because of the business relationships between these two actors, the timing and objectives of their decision-making process are different and sometimes even opposed.In order to model that, bilevel programming was traditionally used in the above-mentioned works. Later, the problem was expanded and theoretically studied to facilitate its solution; this included extension of the upper level objective function, linear reformulation, heuristic approaches, and branch-and-bound techniques.In this paper, the authors presented a linear programming reformulation of the latest version of the model, which is significantly faster to solve when implemented computationally. More importantly, this new formulation makes it easier to theoretically analyze the problem, allowing one to draw some conclusions about the nature of the solution of the modified problem.When a NGSC and a POC engage in a contract, the resulting dynamics may be subject to multilevel programming analysis. In this work, an inexact penalization approach (IPA) was developed to solve the related bilevel linear programming problem, in which the NGSC is the upper level decision maker, and tries to maximize its earnings. In the meantime, the POC is the lower level decision maker trying to minimize the cash-out between both parties, while balancing the pipeline network to guarantee an adequate operation of the latter.The IPA algorithm is adapted to the linearized versions of the problems found in [65], and theoretical work is then made to demonstrate the convergence of this solution method.Combining the inexact penalization approach and a modified Nelder-Mead simplex algorithm has resulted in a fast and efficient enough optimization scheme, in which new iterations are generated, corrected, and then evaluated for optimality. To summarize the numerical experiments, the IPMNM approach works considerably better than both direct implementations and IPA versions without linearization. This makes a support for our linearization attempts, as well as for the advantageous usage of the IPA algorithms developed in [47]. Altogether, numerical results concerning the running time, convergence, and optimal values are presented and compared to previous reports, showing a significant improvement in speed without actual sacrifice of the solution’s quality.In conclusion, it is possible to believe that the new solution speed achieved allows one to reach a quick and more frequent balancing. Indeed, the more accurate the solution is, the more dynamic and successful the industry’s response to market necessities will be.


## 5. Reduction of Upper Level Dimension in Bilevel Programming Problem

As we have already seen from the previous sections, bilevel programming modeling is a new and dynamically developing area of mathematical programming and game theory. For instance, when we study value chains, the general rule usually is that decisions are made by different parties along the chain, and these parties have often different, even opposed goals. This raises the difficulty of supply chain analysis, because regular optimization techniques (e.g., like linear programming) cannot be readily applied, so that tweaks and reformulations are often needed (cf. [59]).The latter is exactly the case with theNatural Gas Value Chain. From extraction at the wellheads to the final consumption points (households, power plants, etc.), natural gas goes through several processes and changes ownership many a time.Bilevel programming is especially relevant in the case of the interaction between a Natural Gas Shipping Company (NGSC) and a Pipeline Operating Company (POC). The first one owns the gas since the moment it becomes a consumption-grade fuel (usually at wellhead/refinement complexes, from now onward called the extraction points) and sells it to Local Distributing Companies (LCD), who own small, city-size pipelines that serve final costumers. Typically, NGSCs neither engage in business with end-users, nor actually handle the natural gas physically.Whenever the volumes extracted by the NGSCs differ from those stipulated in the contracts, we say an imbalance occurs. Since imbalances are inevitable and necessary in a healthy industry, the POC is allowed to apply control mechanisms in order to avoid and discourage abusive practices (the so-called arbitrage) on part of the NGSCs. One of such tools is cash-out penalization techniques after a given operative period. Namely, if a NGSC has created imbalances in one or more pool zones, then the POC may proceed to “move" gas from positive-imbalanced zones to negative-imbalanced ones, up to the point where every pool zone has the imbalance of the same sign, that is, either all nonnegative or all nonpositive, thus rebalancing the network. At this point, the POC will either charge the NGSC a higher (than the spot) price for each volume unit of natural gas withdrawn in excess from its facilities, or pay back a lower (than the sale) price, if the gas was not extracted.Prices as a relevant factor induce us into the area of stochastic programming instead of the deterministic approach. The formulated bilevel problem is reduced to the also bilevel one but with linear constraints at both levels (cf. [62]). However, this reduction involves introduction of many artificial variables, on the one hand, and generation of a lot of scenarios to apply the essentially stochastic tools, on the other hand. The latter makes the dimension of the upper level problem simply unbearable burden even for the most modern and powerful PC systems. First attempts to diminish the number of decision variables were made by the authors in [66, 67].The aim of chapters [68, 69] is a mathematical formalization of the task of reduction of the upper level problem’s dimension without affecting (if possible!) the optimal solution of the original nonlinear bilevel programming problem. Under a couple of quite reasonable assumptions about the data of the original bilevel programming problem, the authors of [68, 69] established that the modified problem obtained by translating part of upper level variables to the lower level and replacing the original lower level program with an appropriate equilibrium problem will have the same solution set as the original bilevel program.A bit more specialized and profound results were deduced in [68] for the linear bilevel program by making use of certain tools from the previous works [70–74]. As paradoxically it could sound, in the linear case, the problem is much more complicated. Indeed, the uniqueness of a generalized Nash equilibrium (GNE) at the lower level of is much too restrictive a demand. As was shown by Rosen [72], the uniqueness of a so-called normalized GNE is rather more realistic assumption. This idea was further developed later by many authors, including the authors of [69, 73].Following the line proposed in [72], the authors of [69] introduce and study the concept ofnormalized generalized Nash equilibrium (NGNE) defined similarly to the concept from [72]. Based upon the revealed properties of such a entity, they establish the existence and uniqueness results for the lower level problem. Hence, the coincidence of the solution sets of the original bilevel (linear or nonlinear) program and the modified model obtained by the translation of part of variables from the upper to the lower level is demonstrated.To conlcude, chapters [68, 69] deal with an interesting problem of reducing the number of variables at the upper level of bilevel programming problems. The latter problems are widely used to model various applications, in particular, the natural gas cash-out problems described in [59, 62]. To solve these problems with stochastic programming tools, it is important that part of the upper level variables be governed at the lower level, to reduce the number of (upper level) variables, which are involved in generating the scenario trees.The chapters present certain preliminary results recently obtained in this direction. In particular, it has been demonstrated that the desired reduction is possible when the lower level optimal response is determined uniquely for each vector of upper level variables. In [69], the necessary base for similar results is prepared for the general case of bilevel programs with linear constraints, when the uniqueness of the lower level optimal response is quite a rare case. However, if the optimal response is defined for a fixed set of Lagrange multipliers, then it is possible to demonstrate (following the ideas and techniques from [72]) that the so-callednormalized Nash equilibrium is unique. The latter gives one a hope to get the positive results about reducing the dimension of the upper level problemwithout affecting the solution of the original bilevel programming problem.


## 6. Allocation Models as Bilevel Programming Problems

Bilevel programming has also served as a suitable option for modeling allocation problems where two-hierarchized levels with different objectives are involved. At each level, the decision maker aims to optimize his own interest. The predefined existing hierarchy allows that the upper level has complete information about the lower level’s decision on the allocation, but not on the vice versa manner. In particular, bilevel programming offers a convenient framework for dealing with the allocation problems.An important and very common problem that appears in these kinds of situations is the allocation of resources or the allocation of parties in the whole process considered. Hence, we are going to divide this literature review in two directions: first, the previous works done where the optimal allocation of resources are described, and then, the papers related to optimally allocate customers, distribution centers, plants, or other parties involved in a specific supply chain are refereed.


### 6.1. Bilevel Allocation of Resources

When considering a company’s personnel and workers aslimited resources, we could mention paper [75] where the main department boasting several branching divisions needs to allocate the personnel (workers, technicians, and management personnel) for the company’s tasks. The leader intends to maximize its benefit by allocating the specific workers to the divisions, while the followers aim to maximize their own benefits using the assigned personnel. The authors of [75] solved the proposed model by applying asimulation bionic algorithm. The main issue is that they did not make any conclusions about the quality of the thus obtained solution due to the complexity inherent to the bilevel model.In [76], the minimum total time for finishing jobs in a system is sought. In that problem, the leader is the job scheduler who tries to optimize the system performance by allocating the workers to the machines. On the other hand, the follower is represented by many noncooperative workers seeking to use a set of common machines minimizing the latency of their work schedule. Three polynomial-time algorithms for solving the problem are proposed, and complexity results are given demonstrating that this problem is NP-hard.Next, one can find a plenty of papers devoted to the analyzis of the allocation of water to different regions of the world. For example, in [77] a nonlinear bilevel programming model with fuzzy random variables for distributing (in an equitable way) the water in a region is studied. The whole community (society) is seen as the leader, and the followers are seen as the subareas contained in the region. Both decision levels strive to maximize their economic gain. The authors of [77] proposed a hybrid heuristic based on an interactive fuzzy programming technique and a genetic algorithm. Also, an application to a real case study was made showing the reasonable performance of the developed solution method.Paper [78] examines a similar situation: a bilevel multiobjective linear programming model is considered. It is important to note that the lower level problem contains multiple objective functions. The leader has to allocate the amount of water destined for irrigation, industry, domesticity, and ecology in order to maximize the benefit for the region. Then, the follower optimizes its gain using the water resource doomed for each purpose. The problem is solved by using fuzzy goal programming in the upper level and a tolerance-based approach in the lower level. Their model and methodology was validated in a case study from China. In [79], more references concerning this particular topic can be found (in Japanese).Another interesting application is about housing allocation. In [80], this problem for a continuum transportation system is analyzed. The leader selects the optimal housing development pattern while the follower decides about the allocation of the houses based on their renting and travel costs. The lower level problem is defined by a set of differential equations and it is solved by the finite element method. The results obtained from numerical experimentation show that the algorithm seems to be efficient enough. An extension of the previous work was done in [81]. The main difference is in that the leader optimizes the housing allocation in order to achieve the minimum CO2 emissions, while the followers aim is to find the equilibrium among the users in a transportation system. The authors of [81] also adapted the finite element method and proposed two alternative solution algorithms based on the Newton-Raphson procedure and the convex combination approach. The computational tests showed that traffic intensity, CO2 emissions, and transport demand are balanced along with the best housing allocation.Bilevel programs related to the optimal allocation of a specific product can also be found in the literature. For example, [82] presents a problem where a company markets products and allocate resources to two producer factories that consume the resources. Hence, the model can be viewed and treated as a Stackelberg equilibrium problem, because in the lower level, both followers compete for the common allocated resources trying to optimize their own criteria. A hybrid intelligent algorithm based on fuzzy simulation, as well as neural network, and genetic algorithms are proposed for solving this bilevel problem.Wang and Lootsma [83] introduced a bilevel model for the case when the general manager tries to allocate resources among the different departments of the company. In the upper level, the correct allocation of the resources to the departments is made in order to maximize the company’s total revenue. On the other hand, in the lower level, each department estimates its own benefit generated with the allocated resources. A numerical example is given to illustrate the proposed exact method.As we mentioned before, bilevel programming allows a realistic mathematical modeling for a very wide application areas. We are going to confirm this fact with the work done by Burgard et al. [84] where a genomic problem is addressed. In that problem, the leader maximizes the bioengineering objective, that is, the chemical production, and the follower optimizes the flux allocation based on the biomass generated through the gene deletions.


### 6.2. Bilevel Allocation for the Supply Chain Models

It is well known that supply chains involve many components in the whole process. At some point of the supply chain, an allocation is required, for example, to allocate customers to plants, demanded zones to distribution centers, vehicles to producers, and so forth.Under this scheme, Calvete et al. [85] introduced a production-distribution bilevel problem, in which a company (the leader) is dedicated exclusively to the allocation of customers to distribution centers satisfying their demand of products. Another company (the follower) is doomed to produce these products. The leader will distribute the products and purchase them from some plants, and then the distribution centers will transport them to their customers meeting their requirements in order to minimize the distribution costs. On the other hand, the follower decides its own production plan based on the production capacity of the plants and by considering the requirements of the demand grouped in the distribution centers seeking to minimize the operation costs. The authors of [85] considered a real case from a company in Spain and also some benchmark instances. Furthermore, they solved this problem by using a heuristic algorithm based on an ant colony optimization method delivering pretty good quality solutions in a reasonable time.Also, Legillon et al. [86] considered the same problem proposing a coevolutionary algorithm without improving the solution quality given in the seminal paper. Camacho-Vallejo et al. [87] developed a method based on scatter search obtaining the best known results for the benchmark instances. In [88], a single-commodity, multiplant network with multiple depots is studied. The leader seeks to minimize the total cost (i.e., the cost associated with the distribution from the plants to depots and then to the customers, plus the warehousing costs and the operation costs of the depots) of locating depots and allocating customers to them. The follower intends to balance the workload of the system improving the customer service and finding a trade-off between cost and efficiency. A standard genetic algorithm was proposed [88] in order to solve some randomly generated test problems with demonstrating certain opportunity areas for improving its performance.Humanitarian logistics have given rise to application of bilevel programming frameworks for dealing with situations that appear in that area. Feng and Wen [89] considered the bilevel program where an earthquake affected the local transportation network. Here, the leader tries to maximize the flow of vehicles entering the affected area to provide assistance, whereas the followers attempt to travel through an unaffected route to minimize their total travel time. Since this situation generates traffic jams and negatively impacts the recovery and relief efforts, a government agency regulates the use of existing roads. In order to solve the proposed model, a genetic algorithm was implemented and validated in a case study showing that this algorithm is an effective tool to solve the problem in question.In their turn, Wang et al. [90] proposed a model for locating storage centers and allocating the sent aid. The leader minimizes the cost of locating the storage centers, allocation of sent aid, distribution, and penalties, while the follower (an affected community) optimizes its own cost based on the resources allocated to each community. A small test instance was created for testing the developed particle swarm optimization algorithm showing the ease of its implementation.Similar to the models discussed above, Sun et al. [91]. seek an optimal decision about locating distribution centers by the search of an equilibrium among the customers’ costs. The leader will locate new distribution centers to minimize fixed and variable costs while meeting the demand by a set of customers. In its turn, the follower will allocate the customers to the distribution centers so as to minimize the cost of meeting their demand. An algorithm that exploits the special structure of the lower level problem and abranch-and-bound (B&B) scheme in the upper level is proposed to deal with this bilevel program. In a different context (but with a similar structure) Xu and Wei [92] modeled a problem related to the waste management of constructions and demolitions. The government is the leader that has to make the decision about locating the waste collection depots and processing centers. The administrators of different construction waste management systems control the allocation of the waste to the located facilities. Both objectives functions minimize their own costs in a fuzzy random environment. An improved particle swarm optimization algorithm was designed to treat and solve the latter problem.It seems that facility location and customers’ allocation requirements can be effectively modeled with bilevel programming when taking into account the customers’ demand at the facilities that will serve them. Various papers in which the customers are allocated to the facilities according to a predetermined list of preferences can be found in the literature;see [93–96]. In all those papers, the facility location problem under customers’ preferences is studied. In the bilevel program induced, the leader has to locate some facilities, while the follower will allocate the customers optimizing their preestablished preferences towards the facilities. The first three papers (i.e., [93–95]) developed valid two-sided bounds for the objective functions invloved in this problem, and the last two works (i.e., [95, 96]) implemented heuristic algorithms to process the bilevel model.Moreover, competitive facility location models have been approached with bilevel programming, too. In that problem, two competing firms have to locate some facilities in order to capture the maximum demand of the existing customers. With an aim to classify the problem as a bilevel program, a hierarchy among the firms must exist in the model. A lot of variations of these models have been published. The differentiation relies on the customers’ behavior; for example, the customers may be allocated to the facilities based on a predefined criterion, such as the shortest distance, a list of preferences, preestablished contracts, or in a random way. Another important factor is the characteristics of the competing firms, for instance, (i) if they have an exact number of facilities to be located, that is,(r∣p)-centroid problem; (ii) whether one firm already has located facilities and the other firm has to locate new ones, that is, (r,Xp)-medianoid problem. The existence of facilities, the possibility of closing some or make them more attractive, and so forth,—all them are the issues that are addressed in these models. It is important to note that in competitive facility location problems, neither the leader nor the follower will make the decision of the customers’ allocation, but this allocation implicitly appears in the process and clearly affects both levels’ decisions. The reader is referred to [97–106] in order to have a closer look to particular models in this area.Further, the design of telecommunication networks has also been analyzed as a bilevel programming scheme. A problem within this area is the one studied by Kim et al. [107], in which the topological design of a local area network is proposed. The problem consists of allocating users to clusters and the union of clusters by bridges in order to obtain a minimum response time network boasting at the same time the minimum connection costs. Therefore, the decision concerning the optimal allocation of users to clusters will be made by the leader, while the follower will make the decision about connecting all the clusters by forming a spanning tree. The authors [107] applied a coevolutionary genetic algorithm based on Nash equilibrium to solve the problem.Finally, optimization in ports has also attracted the attention of researches and found applications of bilevel programming:compare Lee et al. [108], where a problem for scheduling berth and quay cranes is studied. In that problem, the leader deals with the berth allocation problem minimizing the sum of waiting and handling times of each vessel. On the other hand, the follower solves the quay crane scheduling problem in order to minimize the total time until all the vessels and the quay cranes have finished up their activities. Owing to the difficulty of the exact solution of this bilevel problem, a genetic algorithm that finds reasonable quality solutions is proposed in [108].


## 6.1. Bilevel Allocation of Resources

When considering a company’s personnel and workers aslimited resources, we could mention paper [75] where the main department boasting several branching divisions needs to allocate the personnel (workers, technicians, and management personnel) for the company’s tasks. The leader intends to maximize its benefit by allocating the specific workers to the divisions, while the followers aim to maximize their own benefits using the assigned personnel. The authors of [75] solved the proposed model by applying asimulation bionic algorithm. The main issue is that they did not make any conclusions about the quality of the thus obtained solution due to the complexity inherent to the bilevel model.In [76], the minimum total time for finishing jobs in a system is sought. In that problem, the leader is the job scheduler who tries to optimize the system performance by allocating the workers to the machines. On the other hand, the follower is represented by many noncooperative workers seeking to use a set of common machines minimizing the latency of their work schedule. Three polynomial-time algorithms for solving the problem are proposed, and complexity results are given demonstrating that this problem is NP-hard.Next, one can find a plenty of papers devoted to the analyzis of the allocation of water to different regions of the world. For example, in [77] a nonlinear bilevel programming model with fuzzy random variables for distributing (in an equitable way) the water in a region is studied. The whole community (society) is seen as the leader, and the followers are seen as the subareas contained in the region. Both decision levels strive to maximize their economic gain. The authors of [77] proposed a hybrid heuristic based on an interactive fuzzy programming technique and a genetic algorithm. Also, an application to a real case study was made showing the reasonable performance of the developed solution method.Paper [78] examines a similar situation: a bilevel multiobjective linear programming model is considered. It is important to note that the lower level problem contains multiple objective functions. The leader has to allocate the amount of water destined for irrigation, industry, domesticity, and ecology in order to maximize the benefit for the region. Then, the follower optimizes its gain using the water resource doomed for each purpose. The problem is solved by using fuzzy goal programming in the upper level and a tolerance-based approach in the lower level. Their model and methodology was validated in a case study from China. In [79], more references concerning this particular topic can be found (in Japanese).Another interesting application is about housing allocation. In [80], this problem for a continuum transportation system is analyzed. The leader selects the optimal housing development pattern while the follower decides about the allocation of the houses based on their renting and travel costs. The lower level problem is defined by a set of differential equations and it is solved by the finite element method. The results obtained from numerical experimentation show that the algorithm seems to be efficient enough. An extension of the previous work was done in [81]. The main difference is in that the leader optimizes the housing allocation in order to achieve the minimum CO2 emissions, while the followers aim is to find the equilibrium among the users in a transportation system. The authors of [81] also adapted the finite element method and proposed two alternative solution algorithms based on the Newton-Raphson procedure and the convex combination approach. The computational tests showed that traffic intensity, CO2 emissions, and transport demand are balanced along with the best housing allocation.Bilevel programs related to the optimal allocation of a specific product can also be found in the literature. For example, [82] presents a problem where a company markets products and allocate resources to two producer factories that consume the resources. Hence, the model can be viewed and treated as a Stackelberg equilibrium problem, because in the lower level, both followers compete for the common allocated resources trying to optimize their own criteria. A hybrid intelligent algorithm based on fuzzy simulation, as well as neural network, and genetic algorithms are proposed for solving this bilevel problem.Wang and Lootsma [83] introduced a bilevel model for the case when the general manager tries to allocate resources among the different departments of the company. In the upper level, the correct allocation of the resources to the departments is made in order to maximize the company’s total revenue. On the other hand, in the lower level, each department estimates its own benefit generated with the allocated resources. A numerical example is given to illustrate the proposed exact method.As we mentioned before, bilevel programming allows a realistic mathematical modeling for a very wide application areas. We are going to confirm this fact with the work done by Burgard et al. [84] where a genomic problem is addressed. In that problem, the leader maximizes the bioengineering objective, that is, the chemical production, and the follower optimizes the flux allocation based on the biomass generated through the gene deletions.


## 6.2. Bilevel Allocation for the Supply Chain Models

It is well known that supply chains involve many components in the whole process. At some point of the supply chain, an allocation is required, for example, to allocate customers to plants, demanded zones to distribution centers, vehicles to producers, and so forth.Under this scheme, Calvete et al. [85] introduced a production-distribution bilevel problem, in which a company (the leader) is dedicated exclusively to the allocation of customers to distribution centers satisfying their demand of products. Another company (the follower) is doomed to produce these products. The leader will distribute the products and purchase them from some plants, and then the distribution centers will transport them to their customers meeting their requirements in order to minimize the distribution costs. On the other hand, the follower decides its own production plan based on the production capacity of the plants and by considering the requirements of the demand grouped in the distribution centers seeking to minimize the operation costs. The authors of [85] considered a real case from a company in Spain and also some benchmark instances. Furthermore, they solved this problem by using a heuristic algorithm based on an ant colony optimization method delivering pretty good quality solutions in a reasonable time.Also, Legillon et al. [86] considered the same problem proposing a coevolutionary algorithm without improving the solution quality given in the seminal paper. Camacho-Vallejo et al. [87] developed a method based on scatter search obtaining the best known results for the benchmark instances. In [88], a single-commodity, multiplant network with multiple depots is studied. The leader seeks to minimize the total cost (i.e., the cost associated with the distribution from the plants to depots and then to the customers, plus the warehousing costs and the operation costs of the depots) of locating depots and allocating customers to them. The follower intends to balance the workload of the system improving the customer service and finding a trade-off between cost and efficiency. A standard genetic algorithm was proposed [88] in order to solve some randomly generated test problems with demonstrating certain opportunity areas for improving its performance.Humanitarian logistics have given rise to application of bilevel programming frameworks for dealing with situations that appear in that area. Feng and Wen [89] considered the bilevel program where an earthquake affected the local transportation network. Here, the leader tries to maximize the flow of vehicles entering the affected area to provide assistance, whereas the followers attempt to travel through an unaffected route to minimize their total travel time. Since this situation generates traffic jams and negatively impacts the recovery and relief efforts, a government agency regulates the use of existing roads. In order to solve the proposed model, a genetic algorithm was implemented and validated in a case study showing that this algorithm is an effective tool to solve the problem in question.In their turn, Wang et al. [90] proposed a model for locating storage centers and allocating the sent aid. The leader minimizes the cost of locating the storage centers, allocation of sent aid, distribution, and penalties, while the follower (an affected community) optimizes its own cost based on the resources allocated to each community. A small test instance was created for testing the developed particle swarm optimization algorithm showing the ease of its implementation.Similar to the models discussed above, Sun et al. [91]. seek an optimal decision about locating distribution centers by the search of an equilibrium among the customers’ costs. The leader will locate new distribution centers to minimize fixed and variable costs while meeting the demand by a set of customers. In its turn, the follower will allocate the customers to the distribution centers so as to minimize the cost of meeting their demand. An algorithm that exploits the special structure of the lower level problem and abranch-and-bound (B&B) scheme in the upper level is proposed to deal with this bilevel program. In a different context (but with a similar structure) Xu and Wei [92] modeled a problem related to the waste management of constructions and demolitions. The government is the leader that has to make the decision about locating the waste collection depots and processing centers. The administrators of different construction waste management systems control the allocation of the waste to the located facilities. Both objectives functions minimize their own costs in a fuzzy random environment. An improved particle swarm optimization algorithm was designed to treat and solve the latter problem.It seems that facility location and customers’ allocation requirements can be effectively modeled with bilevel programming when taking into account the customers’ demand at the facilities that will serve them. Various papers in which the customers are allocated to the facilities according to a predetermined list of preferences can be found in the literature;see [93–96]. In all those papers, the facility location problem under customers’ preferences is studied. In the bilevel program induced, the leader has to locate some facilities, while the follower will allocate the customers optimizing their preestablished preferences towards the facilities. The first three papers (i.e., [93–95]) developed valid two-sided bounds for the objective functions invloved in this problem, and the last two works (i.e., [95, 96]) implemented heuristic algorithms to process the bilevel model.Moreover, competitive facility location models have been approached with bilevel programming, too. In that problem, two competing firms have to locate some facilities in order to capture the maximum demand of the existing customers. With an aim to classify the problem as a bilevel program, a hierarchy among the firms must exist in the model. A lot of variations of these models have been published. The differentiation relies on the customers’ behavior; for example, the customers may be allocated to the facilities based on a predefined criterion, such as the shortest distance, a list of preferences, preestablished contracts, or in a random way. Another important factor is the characteristics of the competing firms, for instance, (i) if they have an exact number of facilities to be located, that is,(r∣p)-centroid problem; (ii) whether one firm already has located facilities and the other firm has to locate new ones, that is, (r,Xp)-medianoid problem. The existence of facilities, the possibility of closing some or make them more attractive, and so forth,—all them are the issues that are addressed in these models. It is important to note that in competitive facility location problems, neither the leader nor the follower will make the decision of the customers’ allocation, but this allocation implicitly appears in the process and clearly affects both levels’ decisions. The reader is referred to [97–106] in order to have a closer look to particular models in this area.Further, the design of telecommunication networks has also been analyzed as a bilevel programming scheme. A problem within this area is the one studied by Kim et al. [107], in which the topological design of a local area network is proposed. The problem consists of allocating users to clusters and the union of clusters by bridges in order to obtain a minimum response time network boasting at the same time the minimum connection costs. Therefore, the decision concerning the optimal allocation of users to clusters will be made by the leader, while the follower will make the decision about connecting all the clusters by forming a spanning tree. The authors [107] applied a coevolutionary genetic algorithm based on Nash equilibrium to solve the problem.Finally, optimization in ports has also attracted the attention of researches and found applications of bilevel programming:compare Lee et al. [108], where a problem for scheduling berth and quay cranes is studied. In that problem, the leader deals with the berth allocation problem minimizing the sum of waiting and handling times of each vessel. On the other hand, the follower solves the quay crane scheduling problem in order to minimize the total time until all the vessels and the quay cranes have finished up their activities. Owing to the difficulty of the exact solution of this bilevel problem, a genetic algorithm that finds reasonable quality solutions is proposed in [108].


## 7. Information Protection and Cybersecurity Problems as Bilevel Programs

The methods and approaches solving bilevel programming problems also are actual in the areas of information protection and cybersecurity. However, the solutions in these similar areas have some special features, especially, concerning certain cryptographic applications. One of these features is the following. There exists a standard (single-level) mathematical formalization of the cryptographic problem, but it has been shown to bear some flaws. Thus, the proposed methods and approaches based on the bilevel programming techniques helps eliminate those deficiences and enhance the processing of problems of the information protection and cybersecurity on the new quality level.At the same time, the problems of information protection and cybersecurity clealy lack good interpretations with the help of the bilevel programming apparatus. Therefore, this section of the survey is presenting the first-time and original review of the possible treatment of these important information protection and cybersecurity problems asbilevel programs.


### 7.1. Some Cryptographic Applications

One of the urgent problems of public key cryptosystem improvements is the increase of the qulity of software performance and hardware implementations. One of the approaches helping improve the functioning of cryptosystems is marking up the performance of finite field arithmetic concerning operations of multiplication. A possible way to do is to widely apply the bilevel programming techniques.As the well-known publications show (cf. [109–112], to mention only few), the most effective multiplication algorithms have been provided by Comba [109] and Karatsuba [112]. However, Comba’s algorithm shows somewhat better results in numerous rendition (benchmark) tests of software implementations on modern platforms. The combined Karatsuba-Comba multiplication (KCM) algorithm for processors of the reduced instruction set computers (RISC-processors) is described in paper [113].The KCM-algorithm is an example of a promising combination of those by Comba and Karatsuba, while Karatsuba’s algorithm is especially often used for the machine word multiplication. As a result, the main goal of that paper [113] is to provide a suggestion for the effective increasing of software implementation of the finite field GF(p) multiplication (squaring) with the aid of Comba’s algorithm. Such research was motivated by the necessity to obtain the effective confirmation of software implementation of some known algorithms for continuous development of the modern 32-bit and 64-bit platforms. It is important to mention that the last ten years have seen a rapid development of multicore processors and multiprocessor systems [113].


### 7.2. Software Implementation

With the recent boost of information technology in modern society, the problem of information security became of special urgency. The most difficult task is to provide secure handling and storage of critical and confidential data for government and private companies, banks, and other systems. A solution to this problem is to implement systems that provide for information confidentiality, integrity, authenticity, and accessibility by means of cryptographic software and cryptographic hardware based on some approaches making use of bilevel programming.At the same time, cryptoanalytical methods taking advantage of the progress in capabilities of modern computers demand high requirements on the security parameters of modern cryptosystems with the use of the well-known techniques and devices of bilevel programming. Moreover, the increased amount of data processed in modern information systems needs a quite high-level performance of the modern cryptosystems. Hence, the timing requirements to cryptographic applications have increased dramatically; that is, prospective cryptoalgorithms must provide efficient processing of bulk data when applying bilevel programming and, at the same time, a high level of security.So far, most research activity has been carried out about some theoretical aspects of hyperelliptic curve cryptosystems (HECC), including many improvements of the underlying arithmetic of the hyperelliptic curves. On the implementation side, improvements for specific processors and hardware platforms have been analyzed. The present approach provides a very important contribution towards practical implementation of HECC by showing how to build an efficient hyperelliptic curve of digital signature algorithm (HECDSA) implementation and provides cryptographically suitable curves. Unfortunately, the published results on practical implementations of HECC are rare (see, for example, [114, 115]). This solution is intended to provide very practical facts for the implementation of an HECDSA system with all its necessary details at the interpretation with the help of the bilevel programming techniques. There are numerous modern publications dealing with HECC, but they describe no validated system parameters for the efficient implementation of a workable cryptosystem.The lack of publications dedicated to this topic was the motivation behind the thorough summary of all results for efficient HECC implementation presented in this review and the comparison of HECC (HECDSA) with the existing elliptic curve cryptosystems (ECC) and/or elliptic curve of digital signature algorithms (ECDSA) based on the use of some bilevel programming methods.


### 7.3. Cybersecurity Applications

The bilevel formulation is investigated through a problem in which the goal of the destructive agent is to minimize the number of power system components that must be destroyed in order to cause a loss of load greater than or equal to a specied level. This goal is tempered by the logical assumption that, following a deliberate outage, the system operator will implement all feasible corrective actions to minimize the level of system load shed.The resulting nonlinear mixed-integer bilevel programming formulation is transformed into an equivalent single-level mixed-integer linear program by replacing the lower level optimization problem with its Karush-Kuhn-Tucker (KKT) optimality conditions and also converting a number of nonlinearities to linear equivalents using some well-known integer algebra results. The equivalent formulation has been tested in [116] on two case studies, including the 24-bus IEEE reliability test system (RTS) through the use of commercially available software.The bilevel model specically allows one to dene different objective functions for the terrorist and the system operator and permits to impose constraints on the upper level optimization problem. The latter are functions of both the upper and lower level variables. This degree of exibility is not possible to implement through the existingmax-min models.As present, researchers have begun to look into some new ways of addressing the security assessment problem, here called theTerrorist Threat Problem (TTP). For example, in [117], a multiagent system was proposed capable of assessing power system vulnerability, monitoring hidden failures of protection devices, and providing adaptive control actions to prevent catastrophic failures and cascading sequences of events.Attack tree (AT) is another widely used combinatorial model in the cybersecurity analysis. The basic formalism of AT does not take into account defense mechanisms.Defense trees (DT) have been developed to investigate the effect of defense mechanisms using measures such as attacker’s cost and security cost, return on investment (ROI) and return on attack (ROA). DT, however, places defense mechanisms only at the leaf node level while the corresponding ROI/ROA analysis does not incorporate the probability of attack. In anattack response tree (ART), an attacker-defender game was used to find an optimal policy from the countermeasures’ pool. The latter suffers from the problem of state-space explosion, since a solution in ART is sought by means of apartially observable stochastic game model. In [118], the authors have presented a novel attack tree named theattack countermeasure tree (ACT), in which (i) defense mechanisms can be applied at any node of the tree, not just at the leaf node level; (ii) some qualitative analysis (usingmin-cuts, structural and Birnbaum importance measures) and probabilistic analysis (using attacker’s and security costs, the system risk,the impact of an attack, ROI, and ROA) can be performed; (iii) the optimal countermeasure set can be selected from the pool of defense mechanisms without constructing a state-space model. They have used single- and multiobjective optimization tools to find suitable countermeasures under different constraints. In addition, they have illustrated the features of ACT using a practical case study, namely, a supervisory control and data acquisition (SCADA) attack.Finally, some authors [119] have proposed atrilevel model. Cybersecurity is becoming an area of growing concern in the electric power industry with the development ofsmart grid. A false data injection attack, which is against the state estimation through a SCADA network, has recently attracted the ever wider interest of researchers. This review [119] further develops the concept of aLoad redistribution (LR) attack, a special type of the false data injection attack. The damage from LR attacks to power system operations can manifest in an immediate or a delayed fashion. For the immediate attacking goal, they have shown in [119] that the most damaging attack can be identified through amax-min attacker-defender model. Benders decomposition within a restart framework is used to solve the bilevel immediate LR attack problem with a moderate computational effort. Its efficiency has been validated by the Karush-Kuhn-Tucker- (KKT-) based method solution in their previous work. For the delayed attacking goal, the authors of [119] have proposed atrilevel model to identify the most damaging attack and transform the model into an equivalent single-level mixed-integer problem for its final solution. In order to summarize, the techniques developed in [119] enable a quantitative analysis of the damage from LR attacks to the power system operations and security and hence provide an in-depth insight into an effective attack prevention when resources (budgets) are limited. A 14-bus system is used to test the correctness of the proposed model and algorithm.


## 7.1. Some Cryptographic Applications

One of the urgent problems of public key cryptosystem improvements is the increase of the qulity of software performance and hardware implementations. One of the approaches helping improve the functioning of cryptosystems is marking up the performance of finite field arithmetic concerning operations of multiplication. A possible way to do is to widely apply the bilevel programming techniques.As the well-known publications show (cf. [109–112], to mention only few), the most effective multiplication algorithms have been provided by Comba [109] and Karatsuba [112]. However, Comba’s algorithm shows somewhat better results in numerous rendition (benchmark) tests of software implementations on modern platforms. The combined Karatsuba-Comba multiplication (KCM) algorithm for processors of the reduced instruction set computers (RISC-processors) is described in paper [113].The KCM-algorithm is an example of a promising combination of those by Comba and Karatsuba, while Karatsuba’s algorithm is especially often used for the machine word multiplication. As a result, the main goal of that paper [113] is to provide a suggestion for the effective increasing of software implementation of the finite field GF(p) multiplication (squaring) with the aid of Comba’s algorithm. Such research was motivated by the necessity to obtain the effective confirmation of software implementation of some known algorithms for continuous development of the modern 32-bit and 64-bit platforms. It is important to mention that the last ten years have seen a rapid development of multicore processors and multiprocessor systems [113].


## 7.2. Software Implementation

With the recent boost of information technology in modern society, the problem of information security became of special urgency. The most difficult task is to provide secure handling and storage of critical and confidential data for government and private companies, banks, and other systems. A solution to this problem is to implement systems that provide for information confidentiality, integrity, authenticity, and accessibility by means of cryptographic software and cryptographic hardware based on some approaches making use of bilevel programming.At the same time, cryptoanalytical methods taking advantage of the progress in capabilities of modern computers demand high requirements on the security parameters of modern cryptosystems with the use of the well-known techniques and devices of bilevel programming. Moreover, the increased amount of data processed in modern information systems needs a quite high-level performance of the modern cryptosystems. Hence, the timing requirements to cryptographic applications have increased dramatically; that is, prospective cryptoalgorithms must provide efficient processing of bulk data when applying bilevel programming and, at the same time, a high level of security.So far, most research activity has been carried out about some theoretical aspects of hyperelliptic curve cryptosystems (HECC), including many improvements of the underlying arithmetic of the hyperelliptic curves. On the implementation side, improvements for specific processors and hardware platforms have been analyzed. The present approach provides a very important contribution towards practical implementation of HECC by showing how to build an efficient hyperelliptic curve of digital signature algorithm (HECDSA) implementation and provides cryptographically suitable curves. Unfortunately, the published results on practical implementations of HECC are rare (see, for example, [114, 115]). This solution is intended to provide very practical facts for the implementation of an HECDSA system with all its necessary details at the interpretation with the help of the bilevel programming techniques. There are numerous modern publications dealing with HECC, but they describe no validated system parameters for the efficient implementation of a workable cryptosystem.The lack of publications dedicated to this topic was the motivation behind the thorough summary of all results for efficient HECC implementation presented in this review and the comparison of HECC (HECDSA) with the existing elliptic curve cryptosystems (ECC) and/or elliptic curve of digital signature algorithms (ECDSA) based on the use of some bilevel programming methods.


## 7.3. Cybersecurity Applications

The bilevel formulation is investigated through a problem in which the goal of the destructive agent is to minimize the number of power system components that must be destroyed in order to cause a loss of load greater than or equal to a specied level. This goal is tempered by the logical assumption that, following a deliberate outage, the system operator will implement all feasible corrective actions to minimize the level of system load shed.The resulting nonlinear mixed-integer bilevel programming formulation is transformed into an equivalent single-level mixed-integer linear program by replacing the lower level optimization problem with its Karush-Kuhn-Tucker (KKT) optimality conditions and also converting a number of nonlinearities to linear equivalents using some well-known integer algebra results. The equivalent formulation has been tested in [116] on two case studies, including the 24-bus IEEE reliability test system (RTS) through the use of commercially available software.The bilevel model specically allows one to dene different objective functions for the terrorist and the system operator and permits to impose constraints on the upper level optimization problem. The latter are functions of both the upper and lower level variables. This degree of exibility is not possible to implement through the existingmax-min models.As present, researchers have begun to look into some new ways of addressing the security assessment problem, here called theTerrorist Threat Problem (TTP). For example, in [117], a multiagent system was proposed capable of assessing power system vulnerability, monitoring hidden failures of protection devices, and providing adaptive control actions to prevent catastrophic failures and cascading sequences of events.Attack tree (AT) is another widely used combinatorial model in the cybersecurity analysis. The basic formalism of AT does not take into account defense mechanisms.Defense trees (DT) have been developed to investigate the effect of defense mechanisms using measures such as attacker’s cost and security cost, return on investment (ROI) and return on attack (ROA). DT, however, places defense mechanisms only at the leaf node level while the corresponding ROI/ROA analysis does not incorporate the probability of attack. In anattack response tree (ART), an attacker-defender game was used to find an optimal policy from the countermeasures’ pool. The latter suffers from the problem of state-space explosion, since a solution in ART is sought by means of apartially observable stochastic game model. In [118], the authors have presented a novel attack tree named theattack countermeasure tree (ACT), in which (i) defense mechanisms can be applied at any node of the tree, not just at the leaf node level; (ii) some qualitative analysis (usingmin-cuts, structural and Birnbaum importance measures) and probabilistic analysis (using attacker’s and security costs, the system risk,the impact of an attack, ROI, and ROA) can be performed; (iii) the optimal countermeasure set can be selected from the pool of defense mechanisms without constructing a state-space model. They have used single- and multiobjective optimization tools to find suitable countermeasures under different constraints. In addition, they have illustrated the features of ACT using a practical case study, namely, a supervisory control and data acquisition (SCADA) attack.Finally, some authors [119] have proposed atrilevel model. Cybersecurity is becoming an area of growing concern in the electric power industry with the development ofsmart grid. A false data injection attack, which is against the state estimation through a SCADA network, has recently attracted the ever wider interest of researchers. This review [119] further develops the concept of aLoad redistribution (LR) attack, a special type of the false data injection attack. The damage from LR attacks to power system operations can manifest in an immediate or a delayed fashion. For the immediate attacking goal, they have shown in [119] that the most damaging attack can be identified through amax-min attacker-defender model. Benders decomposition within a restart framework is used to solve the bilevel immediate LR attack problem with a moderate computational effort. Its efficiency has been validated by the Karush-Kuhn-Tucker- (KKT-) based method solution in their previous work. For the delayed attacking goal, the authors of [119] have proposed atrilevel model to identify the most damaging attack and transform the model into an equivalent single-level mixed-integer problem for its final solution. In order to summarize, the techniques developed in [119] enable a quantitative analysis of the damage from LR attacks to the power system operations and security and hence provide an in-depth insight into an effective attack prevention when resources (budgets) are limited. A 14-bus system is used to test the correctness of the proposed model and algorithm.


## 8. Concluding Remarks

In this paper, we present a survey of Bilevel Programming and Application area, closely related to applied problems such as natural gas imbalance cash-out problem, toll optimization problem, and others. Recent results and trends in the mixed-integer bilevel programming models with linear objective function and constraints are also described.Many open questions still exist in Bilevel Programming theory, especially in relation to applications. New topics/questions arise as, for example, application of nonsmooth/variational analysis. Many new applications are found; much is yet open with respect to solution algorithms; important are also mixed-discrete bilevel optimization problems. All these items have not been included in this survey only due to the space limitations, but we hope to enlight them in the nearest future.



---

*Source: 310301-2015-03-01.xml*