bi levelargerhgrth
TRANSCRIPT
-
7/28/2019 Bi Levelargerhgrth
1/74
An Introduction to Bilevel
Programming
Chris Fricke
Department of Mathematics and StatisticsUniversity of Melbourne
Createdb
yNeeviaDocumentC
onvertertrialversionh
ttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
2/74
Outline
What is Bilevel Programming?
Origins of Bilevel Programming. Some Properties of Bilevel Programs.
The Linear Bilevel Programming Problem.
Applications. References.
Createdb
yNeeviaDocumentC
onvertertrialversionh
ttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
3/74
What is Bilevel Programming?
Createdb
yNeeviaDocumentC
onvertertrialversionh
ttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
4/74
What is Bilevel Programming?
A mathematical program that contains an
optimization problem in the constraints. *
Evolved in two ways:
A logical extension of mathematical
programming.
Generalisation of a particular problem in gametheory (Stackelberg Game).
*Bracken and McGill, Operations
Research, Vol. 21 (1973)
Createdb
yNeeviaDocumentC
onvertertrialversionh
ttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
5/74
General Bilevel Programming
Problem (Bard, 1998)
s.t.
s.t.
x, y 0
min
xX
F(x, y)
minyY
f(x, y)
G(x, y) 0
g(x, y) 0
Createdb
yNeeviaDocumentC
onvertertrialversionh
ttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
6/74
Origins of Bilevel Programming
Game Theory Approach
Mathematical Programming Approach
Createdb
yNeeviaDocumentC
onvertertrialversionh
ttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
7/74
Origins of Bilevel Programming
Stackelberg
(The Theory of the Market Economy, Oxford
University Press, 1952).
Bracken and McGill
("Mathematical Programs with Optimization
Problems in the Constraints", OperationsResearch Vol. 21 No. 1, 1973).
Createdb
yNeeviaDocumentC
onvertertrialversionh
ttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
8/74
Game Theory Approach
Createdb
yNeeviaDocumentC
onvertertrialversionh
ttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
9/74
Elementary Game Theory
Situations involving more than one decision
maker (player).
Leads to the notion ofconflictor
competition.
Each player has a number of available
strategies with corresponding payoffs.
Simplest case: Two-person, zero-sum game.
Createdb
yNeeviaDocumentC
onvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
10/74
Two-person Zero-sum Game:
Assumptions
One player's gain = other player's loss.
Players make decisions simultaneously.
Players have perfect information
Of both their own and their opponent's
permissible strategies and corresponding
payoff.
Players do not cooperate.
Createdb
yNeeviaDocumentC
onvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
11/74
Two-person Zero-sum Game
Payoff matrix:
A1 A2 . . . Ana1
a2
...
am
v11 v12 v1n
v21 v22 v2n
vm1 vm2 vmn. . .
. . .
. . .
......
...Player I
Player II
Createdb
yNeeviaDocumentC
onvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
12/74
Stackelberg Game:
Assumptions
One player's gain the other player's loss.
Players make decisions in specified order.
Second player reacts rationally to firstplayer's decision.
Players have perfect information
Of both their own and their opponent'spermissible strategies and consequent payoff.
Players do not cooperate.
=
Createdb
yNeeviaDocumentConvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
13/74
Stackelberg Game
Payoff matrix:
(Bimatrix Game). . . An
a1
a2
...
am
......
...
Player I Payoff Player II Payoff
(vm1, wm1) (vm2, wm2) . . . (vmn, wmn)
(v21, w21) (v22, w22) (v2n, w2n)
(v11, w11) (v12, w12) (v1n, w1n). . .
. . .
A1 A2
Createdb
yNeeviaDocumentConvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
14/74
Stackelberg Game:
Definitions
Player who moves first is called theLEADER.
Player who reacts (rationally) to the leader'sdecision (strategy) is called the
FOLLOWER.
The actions of one affect the choices and
payoffs available to the other, and vice-versa.
Createdb
yNeeviaDocumentConvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
15/74
Stackelberg Game:
Solution Methods
Small instances can be solved analytically
(standard game theory techniques
e.g. graphical method).
How to analyze/solve when each player has
many available strategies?
How to incorporate a complex relationship
between the strategies and payoffs?
Createdb
yNeeviaDocumentConvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
16/74
Extension to Bilevel
Programming
Also allows additional constraints to be
placed on the player's strategies.
Mathematical programming viewpoint:
LEADERmoves first and attempts to minimize
their own objective function.
FOLLOWERobserves the leader's action andmoves in a way that is personally optimal.
Createdb
yNeeviaDocumentConvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
17/74
Mathematical Programming
Approach
Createdb
yNeeviaDocumentConvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
18/74
Some Distinctions
Ax b
x 0
s.t.
General mathematical program:
min
x
f(x)
Createdb
yNeeviaDocumentConvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
19/74
Some Distinctions
Ax bx 0
s.t.
Multiple objective program:
min
x
f(x)
minx
g(x)
Createdb
yNeeviaDocumentConvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
20/74
Some Distinctions
s.t.
A(x, y) b
C(x, y) ds.t.
x, y 0
Bilevel program:
min
x
f(x, y)
min
y
g(x, y)
Createdb
yNeeviaDocumentConvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
21/74
General Bilevel Programming
Problem (BLPP)
s.t.
s.t.
x, y 0
min
xX
F(x, y)
min
yY
f(x, y)
G(x, y) 0
g(x, y) 0
Createdb
yNeeviaDocumentConvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
22/74
Properties of Bilevel Programs
Existence of Solutions
Order of Play
Createdb
yNeeviaDocumentConvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
23/74
Existence of Solutions
A BLPP need not have a solution.
Restricting the functions to be
continuous and bounded DOES NOT
guarantee the existence of a solution.
F,G,f,g
Createdb
yNeeviaDocumentConvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
24/74
Example (Bard, 1998)
Createdb
yNeeviaDocumentConvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
25/74
Example 1
The solution to the followers problem as
a function of is:
yx
Createdb
yNeeviaDocumentConvertertrialversionht
tp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
26/74
Example 1
Substituting these values into the leaders
problem gives:
Createdb
yNeeviaDocumentConvertertrialversionht
tp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
27/74
Example 1
Solution space for leaders problem:F
4
3
2
1
1/4 1/2 3/4 1 x10
Createdb
yNeeviaDocumentConvertertrialversionht
tp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
28/74
Example 1
Leaders optimal solution:F
4
3
2
1
1/4 1/2 3/4 1 x10
x = (41, 43)y = (0, 1)
F = 1.5
Createdb
yNeeviaDocumentCo
nvertertrialversionht
tp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
29/74
Example 1
At followers optimal solution is
at any point on the line
Corresponding solution for leader is
No way for the leader to guarantee they
achieve their minimum payoff
No solution.
x = (41, 4
3)
f = 1 y1 + y2 = 1
F = 2y1 + 23 F [1.5, 3.5]
CreatedbyNeeviaDocumentCo
nvertertrialversionht
tp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
30/74
Order of Play
The order in which decisions are made is
important.
The roles of leader and follower are NOT
interchangeable (problem is not symmetric).
CreatedbyNeeviaDocumentCo
nvertertrialversionht
tp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
31/74
Example 2
Reverse the previous example:
CreatedbyNeeviaDocumentCo
nvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
32/74
Example 2
The solution to the followers problem as
a function of is:
xy
CreatedbyNeeviaDocumentCo
nvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
33/74
Example 2
Substituting these values into the leaders
problem gives:
CreatedbyNeeviaDocumentCo
nvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
34/74
Example 2
Solution space for leaders problem:
1/4 1/2 3/4 1
-1
-2
-3
f
y10
CreatedbyNeeviaDocumentCo
nvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
35/74
Example 2
Solution space for leaders problem:
Optimal solution
y = (21, 2
1)
f = 2.5
1/4 1/2 3/4 1
-1
-2
-3
f
y10
CreatedbyNeeviaDocumentCo
nvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
36/74
Example 2
At followers optimal solution is
at any point on the line
Comparison of solutions:
y = (21, 2
1)
F = 2.5 x1 + x2 = 1
CreatedbyNeeviaDocumentCo
nvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
37/74
The Linear Bilevel Programming
Problem (LBLPP)
CreatedbyNeeviaDocumentCo
nvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
38/74
General Bilevel Programming
Problem (Bard, 1998)
s.t.
s.t.
x, y 0
min
xX
F(x, y)
min
yY
f(x, y)
G(x, y) 0
g(x, y) 0
CreatedbyNeeviaDocumentCo
nvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
39/74
General LBLPPminxX
F(x, y) = c1x + d1y
s.t.
A1x + B1y b1
A2x + B2y b2
minyY
f(x, y) = c2x + d2y
s.t.
CreatedbyNeeviaDocumentCo
nvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
40/74
Definitions Constraint region of the BLPP:
Followers feasible set for each fixed :
Followers rational reaction set:
S= {(x, y) : x X, y Y, A1x + B
1y b
1,
A2x + B2y b2}
x X
S(x) = {y Y : B2y b2 A2x}
P(x) = {y Y : y argmin[f(x, y) : y S(x)]}
CreatedbyNeeviaDocumentCo
nvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
41/74
Definitions Inducible Region:
When and are non-empty, the
BLPP can be written as:
IR = {(x, y) S, y P(x)}
S P(x)
min{F(x, y) : (x, y) IR}
CreatedbyNeeviaDocumentCo
nvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
42/74
Example (Bard, 1998)
CreatedbyNeeviaDocumentCo
nvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
43/74
6
5
4
3
2
1
0 1 2 3 4 x
y
(1,2)
(2, 1)
(4, 4)
(3, 6)
Inducible Region
S
F(x, y) = x 4y
f(y) = y
CreatedbyNeeviaDocumentCo
nvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
44/74
6
5
4
3
2
1
0 1 2 3 4 x
y
(1,2)
(2, 1)
(4, 4)
(3, 6)
Inducible Region
S
F(x, y) = x 4y
f(y) = y
Non-convex in
general
CreatedbyNeeviaDocumentCo
nvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
45/74
6
5
4
3
2
1
0 1 2 3 4 x
y
(1,2)
(2, 1)
(4, 4)
(3, 6)
Inducible Region
S
Optimal solution
F = 12f = 4
x
= 4y = 4
F(x, y) = x 4y
f(y) = y
Createdby
NeeviaDocumentCo
nvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
46/74
6
5
4
3
2
1
0 1 2 3 4 x
y
(1,2)
(2, 1)
(4, 4)
(3, 6)
Inducible Region
S
F = 19x = 3
F(x, y) = x 4y
f(y) = y
Createdby
NeeviaDocumentCo
nvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
47/74
6
5
4
3
2
1
0 1 2 3 4 x
y
(1,2)
(2, 1)
(4, 4)
(3, 6)
Inducible Region
S
F = 19
f = 2.5
F(3, 2.5) = 7
x = 3
y = 2.5
F(x, y) = x 4y
f(y) = y
Createdby
NeeviaDocumentCo
nvertertrialversionhtt
p://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
48/74
Pareto Optimality Multiple objective problem.
Feasible solution B dominates feasible
solution A:B at least as good as A w.r.t. every objective,
B strictly better than A w.r.t. at least oneobjective.
Pareto optimal solutions:
Set of all non-dominated feasible solutions.
Createdby
NeeviaDocumentCo
nvertertrialversionhtt
p://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
49/74
6
5
4
3
2
1
0 1 2 3 4 x
y
(1,2)
(2, 1)
(4, 4)
(3, 6)
Inducible Region
S
Optimal solution
F = 12f = 4
x
= 4y = 4
F(x, y) = x 4y
f(y) = y
Createdby
NeeviaDocumentCo
nvertertrialversionhtt
p://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
50/74
6
5
4
3
2
1
0 1 2 3 4 x
y
(1,2)
(2, 1)
(4, 4)
(3, 6)
Inducible Region
S x = 3y = 4
F= 13
f = 4
F(x, y) = x 4y
f(y) = y
Createdby
NeeviaDocumentCo
nvertertrialversionhtt
p://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
51/74
6
5
4
3
2
1
0 1 2 3 4 x
y
(1,2)
(2, 1)
(4, 4)
(3, 6)
Inducible Region
- F
- f
S
Region of solutions
dominant to (4,4)
F(x, y) = x 4y
f(y) = y
Createdby
NeeviaDocumentCo
nvertertrialversionhtt
p://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
52/74
Summary of Properties of Bilevel
Programs No guarantee of solution.
Order in which decisions are made is
important.
No guarantee of Pareto optimality.
Non-convex optimization problem.
All of the above can apply even when all
functions are continuous and bounded.
Createdby
NeeviaDocumentCo
nvertertrialversionhtt
p://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
53/74
Solution Methods for the LBLPP
Vertex Enumeration
Penalty Methods KKT Conditions
Createdby
NeeviaDocumentCo
nvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
54/74
Represent the IR as a Piecewise
Linear Function* Theorem 1:
The IR can be written equivalently as a
piecewise linear equality constraint comprisedof supporting hyperplanes of .
Theorem 2:
The solution of the LBLPP occurs at avertex of .
S
S
(x, y)
*Bard,Practical Bilevel Optimization, (1998)
Createdby
NeeviaDocumentCo
nvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
55/74
Solution Methods These Theorems are exploited in vertex
enumeration algorithm of Candler and
Townsley*.
Approach based on Simplex method.
Various penalty methods also developed.
Most common approach via use of KKTconditions.
*Candler and Townsley,
Computers and Operations
Research, Vol. 9 (1982)
Createdby
NeeviaDocumentCo
nvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
56/74
Karush-Kuhn-Tucker Conditions Given the KKT conditions for a local
optimum at the point for
are:
yx = x
Createdby
NeeviaDocumentConvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
57/74
Replace the Followers Problem
with its KKT Conditions Recall the followers problem:
Createdby
NeeviaDocumentConvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
58/74
KKT Conditions Let u and vbe the dual variables associated
with the two sets of constraints.
Createdby
NeeviaDocumentConvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
59/74
KKT Conditions Applying the KKT conditions to the
followers problem gives:
Createdby
NeeviaDocumentConvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
60/74
Reformulation Solve forx, y, u, v
Createdby
NeeviaDocumentConvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
61/74
Reformulation Complementarity condition is non-linear.
Requires implementation of non-linear
programming methods.
Problem is further complicated if IR is not
convex.
Createdby
NeeviaDocumentConvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
62/74
Integer Programming Approach
to Dealing with Non-Linearity Write all inequalities in followers problem
in the form:
Complementary slackness gives:
Introduce binary variables and
sufficiently large constant
gi(x, y) 0
ui gi(x, y) = 0
zi {0, 1}M
Createdby
NeeviaDocumentConvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
63/74
Integer Programming Approach
to Dealing with Non-Linearity* Replace complementary slackness with the
following inequalities:
Now have a mixed-integer linear program
Apply standard IP solvers (e.g. CPLEX).
Drawback: increased number of variablesand constraints
Computational inefficiency.
ui Mzi, gi M(1 zi)
*Fortuny-Amat and McCarl,Journal of the
Operational Research Society, Vol. 32 (1981)
Createdby
NeeviaDocumentConvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
64/74
Alternative Approach to Dealing
with Non-Linearity Rewrite complementary slackness term as
sum of piecewise linear separable functions.
Use globally convergent non-linear code to
obtain solutions.
Basis for Bard-Moore (branch-and-bound)
algorithm for solving the LBLPP*
i
ui gi(x, y) = 0*Bard and Moore, SIAM Journal of
Scientific and Statistical Computing,
Vol. 11 (1990)
Createdby
NeeviaDocumentConvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
65/74
Replace with new variables to
give equivalent set of constraints:
i
ui gi(x, y) = 0
i
min{ui, gi} = 0
i
(min{0, (gi ui)} + ui) = 0
i
(min{0, wi} + ui) = 0
wi gi + ui = 0
gi ui wi
Piecewise linearseparable term
Linear equalities
Createdby
NeeviaDocumentConvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
66/74
Applications
Economics
Resource Allocation Transportation Network Design
Createdby
NeeviaDocumentConvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
67/74
Applications Multilevel systems
A high level decision maker is able to influence
the decisions made at lower levels, withouthaving complete control over their actions.
Objective function of one department is
determined, in part, by variables controlled by
other departments operating at higher or lowerlevels.
Createdby
NeeviaDocumentConvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
68/74
Economic Planning at the
Regional or National Level Leader: Government
Controls policy variables e.g. tax rates, import
quotas.
Maximize employment / Minimize use of a
resource.
Follower: Industry to be regulated
Maximize net income s.t. economic and
governmental constraints.
Createdby
NeeviaDocumentConvertertrialversionhttp://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
69/74
Determining Price Support
Levels for Biofuel Crops Leader: Government
Determine the level of tax credits for each
biofuel product.
Minimize total outlays.
Follower: Petro-chemical industry
Minimize costs.
Createdby
NeeviaDocumentConvertertrialversionhttp
://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
70/74
Resource Allocation in a
Decentralized Firm Leader: Central resource supplier
Allocates products to manufacturers.
Maximize profit of firm as a whole.
Follower: Manufacturing facilities at
different locations
Determines own production mix/output.Maximize performance of own unit.
Createdby
NeeviaDocumentConvertertrialversionhttp
://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
71/74
Transportation System Network
Design Leader: Central planner
Controls investment costs e.g. which links to
improve.Influence users preferences to minimize total
costs.
Follower: Individual users
Their route selection determines the trafficflows and therefore operational costs.
Seek to minimize cost of own route.
Createdby
NeeviaDocumentConvertertrialversionhttp
://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
72/74
Summary of Bilevel
Programming Problems
s.t.
s.t.
x, y 0
minxX
F(x, y)
miny
Y
f(x, y)
G(x, y) 0
g(x, y) 0
Createdby
NeeviaDocumentCon
vertertrialversionhttp
://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
73/74
Summary of Bilevel
Programming Problems No guarantee of solution.
Order in which decisions are made is
important. No guarantee of Pareto optimality.
Non-convex optimization problem.
In linear case, a number of possiblereformulations exist to aid solution.
Used for specific applications.
Createdby
NeeviaDocumentCon
vertertrialversionhttp
://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/ -
7/28/2019 Bi Levelargerhgrth
74/74
References Bard, J.F.Practical Bilevel Optimization:
Applications and Algorithms, Kluwer
Academic Press, 1998. Shimizu, K., Ishizuka, Y. and Bard, J.F.,
Nondifferentiable and Two-LevelMathematical Programming, Kluwer
Academic Publishers, 1997. http://www.acsu.buffalo.edu/~bialas/
Createdby
NeeviaDocumentCon
vertertrialversionhttp
://www.neevia.com
http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/http://www.neevia.com/