1 / 21

Introduction to Mixed Integer Linear Programming

Introduction to Mixed Integer Linear Programming. L. 1. 2. 3. LP formulation of Economic Dispatch. P 1 MIN. x 1. x 3. x 2. P 1 MAX. P 2 MAX. P 3 MAX. P 2 MIN. Objective function is linear All constraints are linear All variables are real

heaton
Télécharger la présentation

Introduction to Mixed Integer Linear Programming

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Introduction to Mixed Integer Linear Programming

  2. L 1 2 3 LP formulation of Economic Dispatch P1MIN x1 x3 x2 P1MAX P2MAX P3MAX P2MIN • Objective function is linear • All constraints are linear • All variables are real • Problem can be solved using standard linear programming P3MIN

  3. Can we use LP for unit commitment? P1MIN x1 x3 x2 P1MAX P2MAX P3MAX The variables no longer havea contiguous domain (Non-convex set) Standard linear programming is no longer applicable P2MIN P3MIN

  4. Mixed Integer Linear Programming (MILP) • Some decision variables are integers • Special case: binary variables {0,1} • Other variables are real • Objective function and constraints are linear

  5. Example Except for the fact that the variables are integer, this looksvery much like a linear programming problem.

  6. Example x2 8 4x1 + 2x2 = 15 6 4 2 x1 + 2x2 = 8 x1 + x2 = 5 0 8 6 4 2 x1

  7. LP relaxation x2 Let us relax the constraint that thevariables must be integer. 8 4x1 + 2x2 = 15 The problem is then a regular LP 6 4 Solution of the relaxed LP x1 = 2.5; x2 = 2.5; Objective = 12.5 2 x1 + 2x2 = 8 x1 + x2 = 5 0 8 6 4 2 x1

  8. LP relaxation x2 The solution of the relaxed problemis always better than the solution oforiginal problem! (Lower objective for minimizationproblem, higher for maximization) 8 4x1 + 2x2 = 15 6 4 Solution of the relaxed LP x1 = 2.5; x2 = 2.5; Objective = 12.5 2 x1 + 2x2 = 8 x1 + x2 = 5 0 8 6 4 2 x1

  9. Solution of the integer problem x2 8 4x1 + 2x2 = 15 6 4 Solution of the relaxed LP x1 = 2.5; x2 = 2.5; Objective = 12.5 2 x1 + 2x2 = 8 x1 + x2 = 5 0 8 6 4 2 x1

  10. Solution of the integer problem x2 8 4x1 + 2x2 = 15 6 4 Solution of the relaxed LP x1 = 2.5; x2 = 2.5; Objective = 12.5 Solution of the original problem x1 = 2; x2 = 3; Objective = 12.0 2 x1 + 2x2 = 8 x1 + x2 = 5 0 8 6 4 2 x1

  11. x2 x1 Naïve rounding off 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

  12. Finding the integer solution • Large number of integer variables • Vast number of possible integer solutions • Need a systematic procedure to search this solution space • Fix the variables to the nearest integer one at a time • “Branch and Bound” algorithm

  13. Another example Relaxed LP solution: (1.75, 0.75)

  14. Branch on x1 Problem 0 Problem 1 Problem 2

  15. Branch on x1 Problem 2 Problem 1 Solution of Problem 1 Solution of Problem 2

  16. Search Tree: first layer • Solution of Problem 2: • x1 & x2integer • Feasible solution ofthe original problem • Bound on the optimum • Best solution so far • Solution of Problem 1: • x1 integer • x2 real • Not a feasible solution yet • Can still branch on x2

  17. Branch on x2 Problem 1 Problem 3 Problem 4

  18. Search Tree: second layer No solution No integer solution yet

  19. Branch and Bound: what next? Optimal solution Solution of relaxedproblem 4 is bounded by solution of problem 2. No point in going further Can’t go any further in this direction No solution

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

  21. Duality Gap • Finding the optimal solution for a large problem can take too much time even with branch and cut • Best solution of relaxed problem provides a bound on the solution • Duality gap: Difference between best solutions of relaxed problem and actual problem • Stop searching the tree if duality gap is sufficiently small

More Related