Solving Integer Programs. Natural solution ideas that don’t work well Solution idea #1: Explicit enumeration: Try all possible solutions and pick the.

Slides:



Advertisements
Similar presentations
Integer Optimization Basic Concepts Integer Linear Program(ILP): A linear program except that some or all of the decision variables must have integer.
Advertisements

Integer Linear Programming
ENM 503 Lesson 7 – Discrete Models Combinatorial Problems and their Solutions I am very discrete.
Branch-and-Bound Technique for Solving Integer Programs
Solving IPs – Cutting Plane Algorithm General Idea: Begin by solving the LP relaxation of the IP problem. If the LP relaxation results in an integer solution,
Branch-and-Bound In this handout,  Summary of branch-and-bound for integer programs Updating the lower and upper bounds for OPT(IP) Summary of fathoming.
1 Cutting Plane Technique for Solving Integer Programs.
Gomory’s cutting plane algorithm for integer programming Prepared by Shin-ichi Tanigawa.
EE 553 Integer Programming
Progress in Linear Programming Based Branch-and-Bound Algorithms
Water Resources Development and Management Optimization (Integer Programming) CVEN 5393 Mar 11, 2013.
Introduction to Linear and Integer Programming
1 State of the art for TSP TSP instances of thousand of cities can be consistently solved to optimality. Instances of up to cities have been solved:
Mathematical Modeling and Optimization: Summary of “Big Ideas”
Computational Methods for Management and Economics Carla Gomes
1 Maximum matching Max Flow Shortest paths Min Cost Flow Linear Programming Mixed Integer Linear Programming Worst case polynomial time by Local Search.
Linear Programming Integer Linear Models. When Variables Have To Be Integers Example – one time production decisions –Fractional values make no sense.
D Nagesh Kumar, IIScOptimization Methods: M7L1 1 Integer Programming All Integer Linear Programming.
Review of Reservoir Problem OR753 October 29, 2014 Remote Sensing and GISc, IST.
1 Contents college 3 en 4 Book: Appendix A.1, A.3, A.4, §3.4, §3.5, §4.1, §4.2, §4.4, §4.6 (not: §3.6 - §3.8, §4.2 - §4.3) Extra literature on resource.
Cutting Planes II. The Knapsack Problem Recall the knapsack problem: n items to be packed in a knapsack (can take multiple copies of the same item). The.
LP formulation of Economic Dispatch
Daniel Kroening and Ofer Strichman Decision Procedures An Algorithmic Point of View Deciding ILPs with Branch & Bound ILP References: ‘Integer Programming’
(Not in text).  An LP with additional constraints requiring that all the variables be integers is called an all-integer linear program (IP).  The LP.
Introduction to Mathematical Programming OR/MA 504 Chapter 5 Integer Linear Programming.
Integer programming Branch & bound algorithm ( B&B )
Decision Procedures An Algorithmic Point of View
Chapter 12 Discrete Optimization Methods
Mathematical Modeling and Optimization: Summary of “Big Ideas”
Spreadsheet Modeling & Decision Analysis:
Operations Research Assistant Professor Dr. Sana’a Wafa Al-Sayegh 2 nd Semester ITGD4207 University of Palestine.
Integer Programming Key characteristic of an Integer Program (IP) or Mixed Integer Linear Program (MILP): One or more of the decision variable must be.
Linear Programming – Simplex Method
MILP algorithms: branch-and-bound and branch-and-cut
WOOD 492 MODELLING FOR DECISION SUPPORT
1 Max 8X 1 + 5X 2 (Weekly profit) subject to 2X 1 + 1X 2  1000 (Plastic) 3X 1 + 4X 2  2400 (Production Time) X 1 + X 2  700 (Total production) X 1.
OR Chapter 2. Simplex method (2,0) (2,2/3) (1,2)(0,2)
Integer programming, MA Operational Research1 Integer Programming Operational Research -Level 4 Prepared by T.M.J.A.Cooray Department of Mathematics.
15.053Tuesday, April 9 Branch and Bound Handouts: Lecture Notes.
Gomory Cuts Updated 25 March Example ILP Example taken from “Operations Research: An Introduction” by Hamdy A. Taha (8 th Edition)“Operations Research:
Branch-and-Cut Valid inequality: an inequality satisfied by all feasible solutions Cut: a valid inequality that is not part of the current formulation.
Integer LP In-class Prob
1.2 Guidelines for strong formulations  Running time for LP usually depends on m and n ( number of iterations O(m), O(log n)). Not critically depend on.
Chapter 2. Optimal Trees and Paths Combinatorial Optimization
Integer Programming, Branch & Bound Method
IE 312 Review 1. The Process 2 Problem Model Conclusions Problem Formulation Analysis.
Approximation Algorithms Duality My T. UF.
Linear Programming Piyush Kumar Welcome to CIS5930.
Chapter 6 Optimization Models with Integer Variables.
7. Linear Programming (Simplex Method)
Water Resources Development and Management Optimization (Integer and Mixed Integer Programming) CVEN 5393 Mar 28, 2011.
Integer Programming An integer linear program (ILP) is defined exactly as a linear program except that values of variables in a feasible solution have.
Chap 10. Sensitivity Analysis
EE/Econ 458 Integer Programming
The CPLEX Library: Mixed Integer Programming
Gomory Cuts Updated 25 March 2009.
Integer Linear Programming
Integer Programming (정수계획법)
Gomory’s cutting plane algorithm for integer programming
2. Generating All Valid Inequalities
Integer Programming (정수계획법)
Integer Linear Programming
Practical Issues Finding an initial feasible solution Cycling
Branch-and-Bound Algorithm for Integer Program
1.2 Guidelines for strong formulations
Integer LP: Algorithms
Branch-and-Bound Technique for Solving Integer Programs
1.2 Guidelines for strong formulations
Discrete Optimization
Presentation transcript:

Solving Integer Programs

Natural solution ideas that don’t work well Solution idea #1: Explicit enumeration: Try all possible solutions and pick the best one. Example: max 3x 1 + 2x 2 + 4x 3 s. t. x 1 + x 2 + x 3 ≥ 1 x 1 + 2x 2 + x 3  2 x 1 + x 2 - 2x 3 ≥ 0 x 1, x 2, x 3 binary Checking for all possible solutions: x x x x x x feasiblenononoyesnoyesnono value32 Select the best solution among the feasible ones: x 1 =1 x 2 = 0 x 3 = 0 with value 3

Natural solution ideas that don’t work well Number of possible solutions in the example is 2 3 = 8. Generally, if we have n binary variables, then the number of possible solutions is 2 n. We have exponential growth of number of solutions which makes the algorithm very slow for large n. This method might work only when the number of binary variables is small in a mixed integer program. In general, more sophisticated algorithms are needed: Structure the enumeration procedure so that only a small fraction of the possible solutions need to be examined. n=10n=30n=50n=100 2n2n

Natural solution ideas that don’t work well Solution idea #2: Solve the corresponding LP and round the solution. For every IP (or MIP) there is a corresponding linear program which is obtained by dropping the integrality constraints on the variables. That linear program is called LP-relaxation of the original IP (MIP). E.g., for the following IP: maxx 2 (IP) s.t.-2x 1 +2x 2  1 2x 1 +2x 2  7 x 1, x 2 ≥ 0 integer the LP-relaxation is: maxx 2 (LP) s.t.-2x 1 +2x 2  1 2x 1 +2x 2  7 x 1, x 2 ≥ 0

Natural solution ideas that don’t work well There are efficient algorithms (e.g., Simplex method) to solve LPs. So a natural algorithm for solving an IP is (i) solve the LP-relaxation; (ii) round its solution to get an integral solution for the original IP. Let’s see how it works on our example. maxx 2 s.t.-2x 1 +2x 2  1 2x 1 +2x 2  7 x 1, x 2 ≥ 0 Optimal solution is (1.5, 2) Rounded solutions are (1, 2) and (2, 2) ; but both are infeasible -2x 1 +2x 2 = 12x 1 +2x 2 = 7 Z=2

Natural solution ideas that don’t work well Consider another example. Integer ProgramLP relaxation max x 1 + 5x 2 s.t.x 1 +10x 2  20 x 1  2x 1  2 x 1, x 2 ≥ 0 integer x 1, x 2 ≥ 0 Solution to LP-relaxation: (2, 1.8) Rounded IP solution: (2, 1) with value 7 IP optimal solution: (0, 2) with value 10 Conclusion: Rounded solution too far from optimal solution x 1 +10x 2 = 20 x 1 = 2 Z=11

Natural solution ideas that don’t work well  Summarizing, Solution idea #2 has the following two pitfalls: 1)The rounded solution might be infeasible. 2)The rounded solution might be too far from optimal solution.  Solution idea #2 works well for a class of problems which have the following property: All CPF solutions of LP-relaxation are integral. For this class of problems, the optimal solution of LP-relaxation is also optimal solution for the original IP.  Generally, we need more sophisticated algorithms to solve IPs (still using the idea of LP-relaxation).

LP-relaxation-based solution methods for Integer Programs  Branch-and-Bound Technique (next handout)  Cutting Plane Algorithms