Professional Documents
Culture Documents
05b-UC Using MILP
05b-UC Using MILP
Linear Programming
LP formulation of Economic Dispatch
C1
C1 = a1 + c1x1
L
1 2 3
Minimize CT = a1 + a2 + a3 + a1
c1 x1 + c2 x2 + c3 x3 C2 P1MIN P1MAX
x1
Subject to: x1 + x2 + x3 = L
P1MIN £ x1 £ P1MAX C2 = a2 + c2 x2
P2MIN £ x2 £ P2MAX a2
x2
P 3
MIN
£ x3 £ P 3
MAX
C3 P2MIN P2MAX
x1 = 0 or P1MIN £ x1 £ P2MAX
a1
x2 = 0 or P2MIN £ x2 £ P2MAX C2 P1MIN P1MAX
x1
x3 = 0 or P3MIN £ x3 £ P3MAX
a2
x2
The variables no longer have C3 P2MIN P2MAX
a contiguous domain
(Non-convex set)
Standard linear programming
is no longer applicable a3
x3
© 2011 D. Kirschen & the University of Washington P3MIN P3MAX 2
Mixed Integer Linear Programming (MILP)
Except for the fact that the variables are integer, this looks
very much like a linear programming problem.
4x1 + 2x2 = 15
2
x1 + 2x2 = 8
x1 + x2 = 5
0 2 4 6 8 x1
© 2011 D. Kirschen & the University of Washington 5
LP relaxation
x2
Let us relax the constraint that the
8
variables must be integer.
4x1 + 2x2 = 15
The problem is then a regular LP
6
x1 + x2 = 5
0 2 4 6 8 x1
© 2011 D. Kirschen & the University of Washington
Objective: 3x1 + 2x2 6
LP relaxation
x2 The solution of the relaxed problem
8 is always better than the solution of
original problem!
4x1 + 2x2 = 15
(Lower objective for minimization
6 problem, higher for maximization)
x1 + x2 = 5
0 2 4 6 8 x1
© 2011 D. Kirschen & the University of Washington 7
Solution of the integer problem
x2
8
4x1 + 2x2 = 15
x1 + x2 = 5
0 2 4 6 8 x1
© 2011 D. Kirschen & the University of Washington 8
Solution of the integer problem
x2
8
4x1 + 2x2 = 15
x1 + x2 = 5
0 2 4 6 8 x1
© 2011 D. Kirschen & the University of Washington 9
Naïve rounding off
x2
x1
LP solution
IP solution
The optimal integer solution can be far away from the LP solution
“Far away” can be difficult to find when there are many dimensions
© 2011 D. Kirschen & the University of Washington 10
Finding the integer solution
x1 ³ 0; x2 ³ 0 x1 ³ 0 ; x2 ³ 0
x1 £ 1 x1 ³ 2
Problem 1 Problem 2
© 2011 D. Kirschen & the University of Washington 13
Branch on x1
Problem 2
Problem 1
Solution of
Problem 1 Solution of Problem 2
Problem 1
x1 £ 1; x2 ³ 0
x1 ³ 0; x2 ³ 0 x1 ³ 0; x2 ³ 0
x1 £ 1; x2 £ 1 x1 £ 1; x2 ³ 2
Problem 3 Problem 4
© 2011 D. Kirschen & the University of Washington 16
Search Tree: second layer
No solution
No integer solution yet
© 2011 D. Kirschen & the University of Washington 17
Branch and Bound: what next?
Optimal solution
Solution of relaxed
Can’t go any problem 4 is
bounded by solution
further in this
No solution of problem 2. No
direction point in going further
© 2011 D. Kirschen & the University of Washington 18
Comments on Branch and Bound
• Search tree gets very big if there are more
than a few integer or binary variables
• Even with the bounds provided by the relaxed
solutions, exploring the tree usually takes a
ridiculous amount of time
• Clever mathematicians have developed
techniques to identify “cuts”
– Constraints based on the structure of the problem
that eliminate part of the search tree
– “Branch and Cut” algorithm