Water Resources Development and Management Optimization (Integer Programming) CVEN 5393 Mar 11, 2013.

Slides:



Advertisements
Similar presentations
Branch-and-Bound Technique for Solving Integer Programs
Advertisements

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,
Pure, Mixed-Integer, Zero-One Models
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.
DMOR Branch and bound. Integer programming Modelling logical constraints and making them linear: – Conjuction – Disjunction – Implication – Logical constraints.
Water Resources Development and Management Optimization (Linear Programming) CVEN 5393 Feb 18, 2013.
EE 553 Integer Programming
Lecture 10: Integer Programming & Branch-and-Bound
Progress in Linear Programming Based Branch-and-Bound Algorithms
Branch & Bound Algorithms
Integer Programming and Branch and Bound Brian C. Williams November 15 th, 17 th, 2004 Adapted from slides by Eric Feron, , 2002.
Solving Integer Programs. Natural solution ideas that don’t work well Solution idea #1: Explicit enumeration: Try all possible solutions and pick the.
Mathematical Modeling and Optimization: Summary of “Big Ideas”
Computational Methods for Management and Economics Carla Gomes
Approximation Algorithms
Explorations in Artificial Intelligence Prof. Carla P. Gomes Module 7 Part 3 Integer Programming.
Branch and Bound Algorithm for Solving Integer Linear Programming
Review of Reservoir Problem OR753 October 29, 2014 Remote Sensing and GISc, IST.
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.
Water Resources Development and Management Optimization (Linear Programming) CVEN 5393 Feb 25, 2013.
Integer programming Branch & bound algorithm ( B&B )
Decision Procedures An Algorithmic Point of View
Chapter 11: Hillier and Lieberman Dr. Hurley’s AGB 328 Course
Mathematical Modeling and Optimization: Summary of “Big Ideas”
Operations Research Assistant Professor Dr. Sana’a Wafa Al-Sayegh 2 nd Semester ITGD4207 University of Palestine.
Chapter 9 Integer Programming
Integer Programming Key characteristic of an Integer Program (IP) or Mixed Integer Linear Program (MILP): One or more of the decision variable must be.
Using Binary Integer Programming to Deal with Yes-or-No Decisions
Water Resources Development and Management Optimization (Linear Programming) CVEN 5393 Mar 4, 2011.
MILP algorithms: branch-and-bound and branch-and-cut
1 Chapter 4: Integer and Mixed-Integer Linear Programming Problems 4.1 Introduction to Integer and Mixed-Integer Linear Programming 4.2 Solving Integer.
WOOD 492 MODELLING FOR DECISION SUPPORT
To accompany Quantitative Analysis for Management, 9e by Render/Stair/Hanna 11-1 © 2006 by Prentice Hall, Inc. Upper Saddle River, NJ Chapter 11.
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.
Column Generation By Soumitra Pal Under the guidance of Prof. A. G. Ranade.
Integer Linear Programming Terms Pure integer programming mixed integer programming 0-1 integer programming LP relaxation of the IP Upper bound O.F. Lower.
Integer Programming Li Xiaolei. Introduction to Integer Programming An IP in which all variables are required to be integers is called a pure integer.
Divide and Conquer Optimization problem: z = max{cx : x  S}
Branch and Bound Algorithms Present by Tina Yang Qianmei Feng.
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.
Integer Programming Definition of Integer Programming If requiring integer values is the only way in which a problem deviates from.
5.3 Mixed Integer Nonlinear Programming Models. A Typical MINLP Model.
Integer Programming, Branch & Bound Method
EMGT 5412 Operations Management Science
1 Chapter 5 Branch-and-bound Framework and Its Applications.
0 Integer Programming Introduction to Integer Programming (IP) Difficulties of LP relaxation IP Formulations Branch and Bound Algorithms Reference: Chapter.
Water Resources Development and Management Optimization (Integer and Mixed Integer Programming) CVEN 5393 Mar 28, 2011.
Nonlinear Programming Prepared by Lee Revere and John Large
Signal processing and Networking for Big Data Applications: Lecture 9 Mix Integer Programming: Benders decomposition And Branch & Bound NOTE: To change.
5.3 Mixed-Integer Nonlinear Programming (MINLP) Models
Water Resources Development and Management Optimization (Linear Programming) CVEN 5393 Mar 7, 2011.
6.5 Stochastic Prog. and Benders’ decomposition
Introduction to Operations Research
5.2 Mixed Integer Linear Programming
5.3 Mixed Integer Nonlinear Programming Models
Integer Linear Programming
ENGM 435/535 Integer Programming.
5.2 Mixed Integer Linear Programming
6.5 Stochastic Prog. and Benders’ decomposition
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
5.2 Mixed Integer Linear Programming
Discrete Optimization
Presentation transcript:

Water Resources Development and Management Optimization (Integer Programming) CVEN 5393 Mar 11, 2013

Acknowledgements Dr. Yicheng Wang (Visiting Researcher, CADSWES during Fall 2009 – early Spring 2010) for slides from his Optimization course during Fall 2009 Introduction to Operations Research by Hillier and Lieberman, McGraw Hill

Today’s Lecture Integer Programming – Examples R-resources / demonstration

INTEGER PROGRAMMING

Integer Programming In many practical problems, the decision variables actually make sense only if they have integer values. If some or all of the decision variables in a linear programming formulation are required to have integer values, then it is an Integer Programming (IP) problem. The mathematical model for integer programming is the linear programming model with one additional restriction that some or all of the decision variables must have integer values. If only some of the decision variables are required to have integer values, then the model is called Mixed Integer Programming (MIP) problem. If all of the decision variables are required to have integer values, then the model is called Pure Integer Programming problem.

In some decision-making problems, the only two possible choices for decisions are yes and no.

1. Examples of Integer Programming (1) Example of BIP

All the decision variables have the binary form Because the last two decisions represent mutually exclusive alternatives (the company wants at most one new warehouse), we need the constraint x 1 : building a factory in Los Angeles? Yes (x 1 =1) or No (x 1 =0) x 2 : building a factory in San Francisco? Yes (x 2 =1) or No (x 2 =0) x 3 : building a warehouse in Los Angeles? Yes (x 3 =1) or No (x 3 =0) x 4 : building a warehouse in San Francisco? Yes (x 4 =1) or No (x 4 =0)

Furthermore, decisions 3 and 4 are contingent decisions, because they are contingent on decisions 1 and 2, respectively (the company would consider building a warehouse in a city only if a new factory also were going there). Thus, in the case of decision 3, we require that x 3 = 0 if x 1 = 0. This restriction on x 3 (when x 1 = 0) imposed by adding the constraint Similarly, the requirement that x 4 = 0 if x 2 = 0 is imposed by adding the constraint The complete BIP model for this problem is

(2) Example of MIP

2. Some Perspectives on Solving Integer Programming Problems subject to Question 1: Pure IP problems have a finite number of feasible solutions. Is it possible to solve pure IP problems by exhaustive enumeration ? Consider the simple case of BIP problems. With n variables, there are 2 n solutions to be considered. Each time n is increased by 1, the number of solutions is doubled. n=10, 1024 solutions n=20, more than 1 million solutions n=30; more than 1 billion solutions.

Question 2: Is IP easier to solve than LP because IP tends to have much fewer feasible solutions than LP ? Question 3: Can we use the approximate procedure of simply applying the simplex method to get an LP optimal solution and then rounding the noninteger values of the solution to integers ? AB

subject to A B C

3. The Branch-and-Bound Technique and Its Application to BIP The Branch-and-Bound Technique is the most popular mode for IP algorithms. The basic concept underlying the branch-and-bound technique is to divide and conquer. The original problem is divided into smaller and smaller subproblems until these subproblems can be conquered. The dividing (branching) is done by partitioning the entire set of feasible solutions into smaller and smaller subsets. The conquering (fathoming) is done partially by bounding how good the best solution in the subset can be and then discarding the subset if its bound indicates that it cannot possibly contain an optimal solution for the original problem.

California Manufacturing Co. Example Branching

Original problem Solution Tree The variable used to do this branching at any iteration by assigning values to the variable is called the branching variable

Bounding LP relaxation of the whole problem

LP relaxation of subproblem 1 LP relaxation of subproblem 2

Fathoming Three cases where a subproblem is conquered (fathomed). (1) A subproblem is conquered if its LP relaxation has an integer optimal solution

(2) A subproblem is conquered if it is inferior to the current incumbent. Since Z*=9, there is no reason to consider further any subproblem whose bound ≤ 9, since such a subproblem cannot have a feasible solution better than the incumbent. Stated more generally, a subproblem is fathomed whenever its (3) If the simplex method finds that a subproblem’s LP relaxation has no feasible solutions, then the subproblem itself must have no feasible solutions, so it can be dismissed (fathomed).

Using the BIP Branch-and Bround Algorithm to Solve the California Manufacturing Co. Example (1) Initiliazation Set Z*= − ∞. Solve the relaxation of the whole problem by the simplex method. The optimal solution of the relaxation is 1)The bound of the whole problem is less than Z*. 2)The relaxation of the whole problem has feasible solution. 3)The optimal solution includes a noninteger value of x 1. So the whole problem can not be fathomed and should be divided (branched) into subproblems. (2) Iteration 1 Subproblem 1 with x 1 =0. The optimal solution of its relaxation is (0,1,0,1) with Z=9. The optimal solution is integer, which is the best feasible solution found so far. So this integer solution with Z*=9 is stored as the first incumbent. Since the optimal solution of its relaxation is integer, subproblem 1 is fathomed Subproblem 2 with x 1 =1. Because subproblem 2 is not fathomed, it should be divided into subproblems. Subproblem 1 Subproblem 2

(3) Iteration 2 The only remaining subproblem corresponds to the x 1 =1 node, so we shall branch from this node to create the two new subproblems. Subproblem 4 with x 1 =1, x 2 =1. Subproblem 3 with x 1 =1, x 2 =0.LP relaxation of subproblem 3 LP relaxation of subproblem 4 Bound for subproblem 3 : Bound for subproblem 4 : Subproblem 1 Subproblem 2 Subproblem 3 Subproblem 4

(4) Iteration 3 So far, the algorithm has created 4 subproblems. Subproblem 1 has been fathomed, and subproblem 2 has been replaced by subproblems 3 and 4, but these last two remain under consideration. Because they were created simultaneously, but subproblem 4 has the larger bound, the next branching is done from subproblem 4, which creates the following new subproblems Subproblem 5 with x 1 =1, x 2 =1, x 3 =0. Subproblem 6 with x 1 =1, x 2 =1, x 3 =1. LP relaxation of subproblem 5 : LP relaxation of subproblem 6 : No feasible solutions Bound for subproblem 5 : Z≤ 16 Subproblem 1 Subproblem 2 Subproblem 3 Subproblem 4 Subproblem 5 Subproblem 6

(5) Iteration 4 The subproblems 3 and 5 corresponding to nodes (1,0) and (1,1,0) remain under consideration. Since subproblem 5 was created most recently, so it is selected for branching. Since x 4 is the last variable, fixing its value at either 0 or 1 actually creates a single solution rather than subproblems. These single solutions are (1,1,0,0) with Z=14 is better than the incumbent with Z*=9, so (1,1,0,0) with Z*=14 becomes the new incumbent. Because a new incumbent has been found, we reapply fathoming test 1 with the new incumbent to the only remaining subproblem 3. Subproblem3: There are no remaining (unfathomed) subproblems. Therefore, the optimality test indicates that the current incumbent is optimal. Subproblem 1 Subproblem 2 Subproblem 3 Subproblem 4 Subproblem 5 Subproblem 6

4. The Branch-and-Bound Algorithm for MIP

An MIP Example

Change 1:The bounding step BIP algorithm: With integer coefficients in the objective function of BIP, the value of Z for the optimal solution for the subproblem’s LP relaxation is rounded down to obtain the bound, because any feasible solution for the subproblem must have an integer Z. MIP algorithm: With some of the variables not integer-restricted, the bound is the value of Z without rounding down. Change 2: The fathoming test BIP algorithm: With a BIP problem, one of the fathoming tests is that the optimal solution for the subproblem’s LP relaxation is integer, since this ensures that the solution is feasible, and therefore optimal, for the subproblem.. MIP algorithm: With a MIP problem, the test requires only that the integer-restricted variables be integer in the optimal solution for the subproblem’s LP relaxation, because this suffices to ensure that the solution is feasible, and therefore optimal, for the subproblem..

Subproblem 1 Subproblem 2 Subproblem 1 Subproblem 2

Change 3:Choice of the branching variable BIP algorithm: The next variable in the natural ordering x 1, x 2, …, x n is chosen automatically. MIP algorithm: The only variables considered are the integer-restricted variables that have a noninteger value in the optimal solution for the LP relaxation of the current subproblem. The rule for choosing among these variables is to select the first one in the natural ordering. Change 4:The values assigned to the branching variables BIP algorithm: The binary variable is fixed at 0 and 1, respectively, for the 2 new subproblems. MIP algorithm: The general integer-restricted variable is given two ranges for the 2 new subproblems.

Subproblem 1 Subproblem 2 Subproblem 3 Subproblem 4

Subproblem 3 Subproblem 5 Subproblem 6

Subproblem 1 Subproblem 2 Subproblem 3 Subproblem 4 Subproblem 5 Subproblem 6

HUGHES-MCMAKEE-NOTES\CHAPTER- 06.PDF INTEGER / MIXED-INTEGER PROGRAMMING (PROF. MCMAKEE NOTES) INTRODUCTION & EXAMPLES Hughes-McMakee-notes\chapter-07.pdf