A Decomposition Based Approach For Solving A General Bilevel Linear Programming
A Decomposition Based Approach For Solving A General Bilevel Linear Programming
Abstract—Bilevel optimization has been widely used in decision- 𝒔 slack variable vector
making process. However, there still lacks an efficient algorithm 𝑺 shift factor matrix of the power grid
to determine an optimal solution of a bilevel optimization 𝑼 bus-generator incidence matrix
problem, especially for a large-size problem. To bridge the gap,
this paper proposes an efficient decomposition algorithm for a 𝑽 bus-load incidence matrix
general bilevel linear programming(GBLP). The simulation 𝑾 bus-line incidence matrix
results on large-size testing system demonstrate its correctness 𝑿 branch reactance matrix
and efficiency. 𝝆, 𝝁, 𝝁′ Lagrangian vector
Index Terms—bilevel linear programming, benders 𝐱 variable vector in the lower level
decomposition, general bilevel linear programming, power 𝐲, 𝐲̂ variable vector in the upper level
systems. Note that ∆ represents incremental change and symbols in bold
represent vectors or matrices.
NOMENCLATURE
′ I. INTRODUCTION
𝑈, 𝑈 sets of extreme points
𝑉, 𝑉 ′
𝑈𝑟 , 𝑈𝑟′
sets of extreme rays
reduced sets of extreme points B ILEVEL optimization has attracted a lot of research
attentions in recent years[1]-[7]. In general, a bilevel
optimization problem can be casted into a decider-follower
𝑉𝑟 reduced sets of extreme rays
problem. In the upper level, a decision is determined. Then, the
follower in the lower makes a best response according to the
𝜀 given value for gap
determined decision. For example, the power grid
𝜏 given maximum percentage of load uncertainty
interdiction[7] is formulated as a bilevel max-min problem. In
the upper level, the attacker determines the optimal set of lines
𝑖, 𝑗 subscript: index for lagrangian multipliers to be attacked. In the lower level, the operator minimizes the
𝑘 subscript: index for lines load shedding given the set of attacked lines determined in the
upper level.
𝐾 objective value the lower level optimization problem
The most popular methods to solve a bilevel optimization
ℎ𝑘 physical flow of line 𝑘 problem are the Karush-Kuhn-Tucker (KKT) based approach
𝐿𝑚𝑎𝑥
𝑘 rating of line 𝑘 and duality based method. In the KKT based approach, the
𝑢 loading level of line 𝑘 lower level optimization problem is replaced by its KKT
𝑧𝑙𝑜𝑤𝑒𝑟 lower bound of the GBLP optimality conditions. To linearize the nonlinear
𝑧𝑢𝑝𝑝𝑒𝑟 upper bound of the GBLP complimentary constraints, additional binary variables will be
𝒄, 𝒅 coefficient vector for the objective function in the introduced to form the so called big-M constraints, which limit
upper level the computation efficiency. In the duality based approach, the
𝒆, 𝒇 coefficient vector for the objective function in the lower level is transformed into its dual problem [8]. However,
lower level the resulting nonlinear terms in the strong duality condition
make the whole problem hard to solve, especially for a large-
𝑫 load vector
size system. Thus, it is necessary for us to develop a novel
∆𝑫 false data injection vector into load measurements algorithm to get the optimal or suboptimal solution of a bilevel
𝑨, 𝒃 coefficient matrices in the upper level optimization problem.
𝑬, 𝑭, 𝑮 coefficient matrices in the lower level A little efforts [9]-[11] has been devoted to apply some
𝒉 physical line flow vector decomposition techniques to solve a bilevel optimization
𝑱 load shedding vector problem. However, we notice that these methods can be only
𝑳 line flow vector applied to a special class of the bilevel linear programming
𝑳𝒎𝒂𝒙 line rating vector with the same objectives in the lower and upper levels. So far,
𝑷 generator output vector how to solve a GBLP with different objectives in the lower
𝑷𝒎𝒂𝒙 maximum generation output vector and upper levels efficiently is still an open question. In this
paper, we propose a benders decomposition based approach to
solve a GBLP with different objective functions in the lower Note that the bilevel optimization problem has a special
and upper levels. Different from the traditional benders structure in which only variable x is transmitted to the upper
decomposition approach, the subproblem consists of two ̂, the GBLP can be solved by
level for a given y. For a given 𝒚
sequential LPs. In the first stage, the first LP is solved to get solving two sequential LPs: LP1 and LP2.
the optimal objective. Then the constraint of the objective (LP2): min 𝒄𝑻 𝒙 (10)
function will be inserted into the second LP to get the dual
variables used to generate benders cuts. subject to
The rest of this paper is organized as follows. Section II 𝒆𝑻 𝒙 = 𝑲 𝜌 (11)
proposes an decomposition algorithm to solve a GBLP. Section 𝑬𝒙 ≤ 𝑮 − 𝑭𝒚 ̂ 𝝁′ (12)
III demonstrates the proposed model with the IEEE 118-bus
where K is the objective value of the lower optimization
system. Section IV concludes the paper.
̂.
problem for a given 𝒚
II. DECOMPOSITION METHODOLOGY OF GBLP The dual problem of (10)-(12) is
In this section, we propose a decomposition algorithm to max 𝜌𝐾 + (𝝁′ )𝑇 (𝑮 − 𝑭𝒚
̂) (13)
solve a GBLP.
subject to
A. Decomposition Method for GBLP 𝜌
Consider the general bilevel linear program(GBLP) (1)-(4) [𝑒 𝐸 𝑇 ] [ 𝝁′ ] ≤ 𝑐 (14)
as follows. .
Let 𝑆 denote the feasible region of the dual problem,
(GBLP) min 𝒄𝑻 𝒙 + 𝒅𝑻 𝒚 (1) 𝜌
subject to 𝑆 = {(𝜌, 𝝁′ )|[𝑒 𝐸 𝑇 ] [𝝁′ ] ≤ 𝑐} (15)
𝑨𝒚 ≤ 𝒃 (2) The region 𝑆 has two good chatteristics:
min 𝒆𝑻 𝒙 + 𝒇𝑻 𝒚 (3)
1) It is independent with the value of the variable 𝒚 in
subject to the upper level and the value of K;
𝑬𝒙 + 𝑭𝒚 ≤ 𝑮 (4) 2) It is a fixed polygon with a finite number of extreme
points and extreme rays.
where variables 𝒙, 𝒚 are continuous variables. Note that the
objectives in the lower and upper levels could be different,
that is Let 𝑈 ′ , 𝑉 ′ denote the sets of all the extreme points and
𝒄𝑻 𝒙 extreme rays of the feasible region S, respectively.
≠𝑤
𝒆𝑻 𝒙 𝑈 ′ = {𝑢1′ , 𝑢2′ , ⋯ , 𝑢𝑛′ } 𝑉 ′ = {𝑣1′ , 𝑣2′ , ⋯ , 𝑣𝑞′ }
where 𝑤 is a scalar. This characteristic poses a huge According to [12], the optimization problem is equivalent to
challenge for developing an efficient algorithm for solving (16)-(17):
it. 𝑇
max{ 𝜌𝑖 𝐾 + (𝝁′ 𝒊 ) (𝑮 − 𝑭𝒚
̂) (𝜌𝑖 , 𝝁′ 𝒊 ) ∈ 𝑈 ′ } (16)
Note that for a fixed 𝒚 ̂ , the lower level optimization
problem becomes a linear programming. Rewrite the lower subject to
𝑇
level optimization problem (3)-(4) as
𝜌𝑗 𝐾 + (𝝁′ 𝒋 ) (𝑮 − 𝑭𝒚
̂) ≤ 0 (𝜌𝑗 , 𝝁′ 𝒋 ) ∈ 𝑉 ′ (17)
(𝐒𝐏): min 𝒆𝑻 𝒙 + 𝒇𝑻 𝒚
̂ (5)
Constraint (17) holds for ensuring the bound of the dual
subject to
problem (13)-(14).
̂
𝑬𝒙 ≤ 𝑮 − 𝑭𝒚 𝝁 (6)
Similarly, for a fixed 𝒚, the optimization problem (5)-(6) is a
Since the term 𝒇𝑻 𝒚
̂ is a constant, we have LP. Thus, its dual problem is written as
(𝐋𝐏𝟏) 𝐾 = min 𝒆𝑻 𝒙 (7) max(𝝁)𝑇 (𝑮 − 𝑭𝒚 ̂) (18)
subject to
subject to
Constraint (6)
𝑬𝑻 𝝁 ≤ 𝒄 (19)
As LP1 is a LP whose optimal value can be determined at Let T denote the feasible region of (18)-(19)
one of its extreme points.
Note that the goal of the bilevel optimization problem is to T = {(𝜇)|𝑬𝑻 𝝁 ≤ 𝒄} (20)
determine a best y that minimizes the objective value of LP3: It can be seen that the region T is also independent with the
(𝐋𝐏𝟑) min 𝒄𝑻 𝒙 + 𝒇𝑻 𝒚
̂ (8) value of the variable 𝒚 in the upper level and has a finite
min 𝒆𝑻 𝒙 (9) number of extreme points and extreme rays.
subject to 𝑈 = {𝑢11 , 𝑢12 , ⋯ , 𝑢1𝑚 } 𝑉 = {𝑣11 , 𝑣21 , ⋯ , 𝑣𝑝1 }
Constraint (6) Since the strong duality condition can be satisfied, we have
𝐾 = max(𝝁)𝑇 (𝑮 − 𝑭𝒚
̂) (21) 3) if the subproblem is unbounded, then 𝜌∗ , (𝝁′ )∗ is the new
extreme ray that will be added into the master problem.
Introducing (21) into (16), which gives
𝑇
max 𝜌𝑖 (max(𝝁)𝑇 (𝑮 − 𝑭𝒚
̂)) + (𝝁′ 𝒊 ) (𝑮 − 𝑭𝒚
̂) (22)
Initial 𝑧𝑙𝑜𝑤𝑒𝑟 , 𝑧𝑢𝑝𝑝𝑒𝑟 , 𝜀, 𝑦
It can be verified that (22) is equivalent to
𝑇
max{𝜌𝑖 (𝝁𝒋 𝑇 (𝑮 − 𝑭𝒚
̂)) + (𝝁′ 𝒊 ) (𝑮 − 𝑭𝒚
̂) = max (𝜌𝑖 𝝁𝒋 𝑇 +
𝑇
Solve LP1 to get K
(𝝁′ 𝒊 ) ) (𝑮 − 𝑭𝒚
̂) (𝜌𝑖 , 𝝁′ 𝒊 ) ∈ 𝑈 ′ , 𝝁𝒋 ∈ 𝑈} (23)