0 Integer Programming Introduction to Integer Programming (IP) Difficulties of LP relaxation IP Formulations Branch and Bound Algorithms.

Slides:



Advertisements
Similar presentations
1 Material to Cover  relationship between different types of models  incorrect to round real to integer variables  logical relationship: site selection.
Advertisements

Branch-and-Bound Technique for Solving Integer Programs
Pure, Mixed-Integer, Zero-One Models
Linear Programming Problem
Chapter 2: Modeling with Linear Programming & sensitivity analysis
1 Lecture 3 MGMT 650 Sensitivity Analysis in LP Chapter 3.
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.
Branch & Bound Algorithms
McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., Integer Programming.
Integer Programming and Branch and Bound Brian C. Williams November 15 th, 17 th, 2004 Adapted from slides by Eric Feron, , 2002.
Computational Methods for Management and Economics Carla Gomes
Integer Programming Optimisation Methods. 2 Lecture Outline 1Introduction 2Integer Programming 3Modeling with 0-1 (Binary) Variables 4Goal Programming.
Computational Methods for Management and Economics Carla Gomes
Optimization for Network Planning Includes slide materials developed by Wayne D. Grover, John Doucette, Dave Morley © Wayne D. Grover 2002, 2003 E E 681.
Integer Programming Integer programming is a solution method for many discrete optimization problems Programming = Planning in this context Origins go.
Linear and Integer Programming Models
Branch and Bound Algorithm for Solving 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.
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’
1 1 Slide LINEAR PROGRAMMING: THE GRAPHICAL METHOD n Linear Programming Problem n Properties of LPs n LP Solutions n Graphical Solution n Introduction.
Introduction to Mathematical Programming OR/MA 504 Chapter 5 Integer Linear Programming.
Integer Linear Programming (ILP)
Integer programming Branch & bound algorithm ( B&B )
Decision Procedures An Algorithmic Point of View
Integer Programming Models
Optimization Models with Integer Variables
Chapter 11: Hillier and Lieberman Dr. Hurley’s AGB 328 Course
Integer Programming Integer programming is a solution method for many discrete optimization problems Programming = Planning in this context Origins go.
Spreadsheet Modeling & Decision Analysis:
Operations Research Assistant Professor Dr. Sana’a Wafa Al-Sayegh 2 nd Semester ITGD4207 University of Palestine.
Chapter 9 Integer Programming
Types of IP Models All-integer linear programs Mixed integer linear programs (MILP) Binary integer linear programs, mixed or all integer: some or all of.
Spreadsheet Modeling and Decision Analysis, 3e, by Cliff Ragsdale. © 2001 South-Western/Thomson Learning. 6-1 Integer Linear Programming Chapter 6.
1 Additional examples LP Let : X 1, X 2, X 3, ………, X n = decision variables Z = Objective function or linear function Requirement: Maximization of the.
Integer Programming Key characteristic of an Integer Program (IP) or Mixed Integer Linear Program (MILP): One or more of the decision variable must be.
To accompany Quantitative Analysis for Management, 8e by Render/Stair/Hanna 11-1 © 2003 by Prentice Hall, Inc. Upper Saddle River, NJ Chapter 11.
Lecture 6 – Integer Programming Models Topics General model Logic constraint Defining decision variables Continuous vs. integral solution Applications:
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.
To accompany Quantitative Analysis for Management, 9e by Render/Stair/Hanna 11-1 © 2006 by Prentice Hall, Inc. Upper Saddle River, NJ Chapter 11.
15.053Tuesday, April 9 Branch and Bound Handouts: Lecture Notes.
Integer Programming Li Xiaolei. Introduction to Integer Programming An IP in which all variables are required to be integers is called a pure integer.
Group members: Ibrahim jan Qesar Habib Najeebullah
Branch and Bound Algorithms Present by Tina Yang Qianmei Feng.
8/14/04 J. Bard and J. W. Barnes Operations Research Models and Methods Copyright All rights reserved Lecture 6 – Integer Programming Models Topics.
Integer Programming Definition of Integer Programming If requiring integer values is the only way in which a problem deviates from.
Integer Programming, Branch & Bound Method
Adeyl Khan, Faculty, BBA, NSU 1 Introduction to Linear Programming  A Linear Programming model seeks to maximize or minimize a linear function, subject.
Lecture 6 – Integer Programming Models Topics General model Logic constraint Defining decision variables Continuous vs. integral solution Applications:
IE 312 Review 1. The Process 2 Problem Model Conclusions Problem Formulation Analysis.
Chapter 6 Optimization Models with Integer Variables.
Department of Business Administration FALL -SPRING Management Science Operations Research by Ass. Prof. Sami Fethi Assoc. Prof. Sami Fethi © 2007 Pearson.
1 Chapter 6 Reformulation-Linearization Technique and Applications.
EMGT 5412 Operations Management Science
Chapter 9 Integer Programming to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright (c) 2004 Brooks/Cole,
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
Introduction to Operations Research
Integer Programming II
Integer Linear Programming
ENGM 435/535 Integer Programming.
Branch-and-Bound Algorithm for Integer Program
Branch-and-Bound Technique for Solving Integer Programs
Integer Linear Programming
Presentation transcript:

0 Integer Programming Introduction to Integer Programming (IP) Difficulties of LP relaxation IP Formulations Branch and Bound Algorithms

1 Integer Programming Model An Integer Programming model is a linear programming problem where some or all of the variables are required to be non-negative integers. These models are in general substantially harder than solving linear programming models. Network models are special cases of integer programming models and are very efficiently solvable. We will discuss several applications of integer programming models. We will study the branch and bound technique, one of the most popular algorithm to solve integer programming models.

2 Classifications of IP Models Pure IP Model: Where all variables must take integer values. Maximize z = 3x 1 + 2x 2 subject to x 1 + x 2  6 x 1, x 2  0, x 1 and x 2 integer Mixed IP Model: Where some variables must be integer while others can take real values. Maximize z = 3x 1 + 2x 2 subject to x 1 + x 2  6 x 1, x 2  0, x 1 integer 0-1 IP Model: Where all variables must take values 0 or 1. Maximize z = x 1 - x 2 subject to x 1 + 2x 2  2 2x 1 - x 2  1, x 1, x 2 = 0 or 1

3 Classifications of IP Models (contd.) LP Relaxation: The LP obtained by omitting all integer or 0-1 constraints on variables is called the LP relaxation of IP. IP: Maximize z = 21x x 2 subject to 7x 1 + 4x 2  13 x 1, x 2  0, x 1 and x 2 integer LP Relaxation: Maximize z = 21x x 2 subject to 7x 1 + 4x 2  13 x 1, x 2  0 Result: Optimal objective function value of IP  Optimal objective function value of LP relaxation

4 IP and LP Relaxation xxxx x x x x x1x1 x2x x 1 + 4x 2 = 13

5 Simple Approaches for Solving IP Approach 1: Enumerate all possible solutions Determine their objective function values Select the solution with the maximum (or, minimum) value. Any potential difficulty with this approach? -- may be time-consuming Approach 2: Solve the LP relaxation Round-off the solution to the nearest feasible integer solution Any potential difficulty with this approach? -- may not be optimal solution to the original IP

6 Any decision situation that can be modeled by “yes”/“no”, “good”/“bad” etc., falls into the binary category. To illustrate The use of binary variables in constraints

7 Example  A decision is to be made whether each of three plants should be built (Y i = 1) or not built (Y i = 0) Requirement Binary Representation At least 2 plants must be built Y 1 + Y 2 +Y 3  2 If plant 1 is built, plant 2 must not be built Y 1 + Y 2  1 If plant 1 is built, plant 2 must be built Y 1 – Y 2  One, but not both plants must be built Y 1 + Y 2 = 1 Both or neither plants must be built Y 1 – Y 2 =0 Plant construction cannot exceed $17 million given the costs to build plants are $5, $8, $10 million5Y 1 +8Y 2 +10Y 3  17 The use of binary variables in constraints

8 Capital Budgeting Problem Stockco Co. is considering four investments It has $14,000 available for investment Formulate an IP model to maximize the NPV obtained from the investments IP: Maximize z = 16x x x 3 + 8x 4 subject to 5x 1 + 7x 2 + 4x 3 + 3x 4  14 x 1, x 2,, x 3, x 4  0, 1

9 Fixed Charge Problem Gandhi cloth company manufactures three types of clothing: shirts, shorts, and pants Machinery must be rented on a weekly basis to make each type of clothing. Rental Cost:  $200 per week for shirt machinery  $150 per week for shorts machinery  $100 per week for pants machinery There are 150 hours of labor available per week and 160 square yards of cloth Find a solution to maximize the weekly profit

10 Fixed Charge Problem (contd.) Decision Variables: x 1 = number of shirts produced each week x 2 = number of shorts produced each week x 3 = number of pants produced each week y 1 = 1 if shirts are produced and 0 otherwise y 2 = 1 if shorts are produced and 0 otherwise y 3 = 1 if pants are produced and 0 otherwise Formulation: Max. z = 6x 1 + 4x 2 + 8x y y y 3 subject to 3x 1 + 2x 2 + 6x 3  150 4x 1 + 3x 2 + 4x 3  160 x 1  M y 1, x 2  M y 2, x 3  M y 3 x 1, x 2,, x 3  0, and integer; y 1, y 2,, y 3  0 or 1

11 Either-Or Constraints Dorian Auto is considering manufacturing three types of auto: compact, midsize, large. Resources required and profits obtained from these cars are given below. We have 6,000 tons of steel and 60,000 hours of labor available. If any car is produced, we must produce at least 1,000 units of that car. Find a production plan to maximize the profit.

12 Either-Or Constraints (contd.) Decision Variables: x 1, x 2, x 3 = number of compact, midsize and large cars produced y 1, y 2, y 3 = 1 if compact, midsize and large cars are produced or not Formulation: Maximize z = 2x 1 + 3x 2 + 4x 3 subject to x 1  My 1 ; x 2  My 2 ; x 3  My x 1  M(1-y 1 ) x 2  M(1-y 2 ) x 3  M(1-y 3 ) 1.5 x 1 + 3x 2 + 5x 3  x x x 3  x 1, x 2, x 3  0 and integer; y 1, y 2, y 3 = 0 or 1

13 Set Covering Problems Western Airlines has decided to have hubs in USA. Western runs flights between the following cities: Atlanta, Boston, Chicago, Denver, Houston, Los Angeles, New Orleans, New York, Pittsburgh, Salt Lake City, San Francisco, and Seattle. Western needs to have a hub within 1000 miles of each of these cities. Determine the minimum number of hubs

14 Formulation of Set Covering Problems Decision Variables: x i = 1 if a hub is located in city i x i = 0 if a hub is not located in city i Minimize x AT + x BO + x CH + x DE + x HO + x LA + x NO + x NY + x PI + x SL + x SF + x SE subject to

15 Additional Applications Location of fire stations needed to cover all cities Location of fire stations to cover all regions Truck dispatching problem Political redistricting Capital investments

16 Branch and Bound Algorithm Branch and bound algorithms are the most popular methods for solving integer programming problems They enumerate the entire solution space but only implicitly; hence they are called implicit enumeration algorithms. A general-purpose solution technique which must be specialized for individual IP's. Running time grows exponentially with the problem size, but small to moderate size problems can be solved in reasonable time.

17 Example: s.t.

18 Solved as LP by Simplex method

19 An Example Telfa Corporation makes tables and chairs A table requires one hour of labor and 9 square board feet of wood A chair requires one hour of labor and 5 square board feet of wood Each table contributes $8 to profit, and each chair contributes $5 to profit. 6 hours of labor and 45 square board feet is available Find a product mix to maximize the profit Maximize z = 8x 1 + 5x 2 subject to x 1 + x 2  6; 9x 1 + 5x 2  45; x 1, x 2  0; x 1, x 2 integer

20 Feasible Region for Telfa’s Problem Subproblem 1 : The LP relaxation of original Optimal LP Solution: x 1 = 3.75 and x 2 = 2.25 and z = Subproblem 2: Subproblem 1 + Constraint x 1  4 Subproblem 3: Subproblem 1 + Constraint x 1  3

21 Feasible Region for Subproblems Branching : The process of decomposing a subproblem into two or more subproblems is called branching. Optimal solution of Subproblem 2: z = 41, x 1 = 4, x 2 = 9/5 = 1.8 Subproblem 4: Subproblem 2 + Constraint x 2  2 Subproblem 5: Subproblem 2 + Constraint x 2  1

22 Feasible Region for Subproblems 4 & 5

23 The Branch and Bound Tree Subproblem 1 z = x 1 = 3.75 x 2 = 2.25 Optimal solution of Subproblem 5: z = 40.05, x 1 = 4.44, x 2 = 1 Subproblem 6: Subproblem 5 + Constraint x 1  5 Subproblem 7: Subproblem 5 + Constraint x 1  4 3 Subproblem 2 z = 41 x 1 = 4 x 2 = 1.8 Subproblem 3 Subproblem 4 Infeasible Subproblem 5 x 1  4 x 1  3 x 2  2 x 2 

24 Feasible Region for Subproblems 6 & 7 Optimal solution of Subproblem 7: z = 37, x 1 = 4, x 2 = 1 Optimal solution of Subproblem 6: z = 40, x 1 = 5, x 2 = 0

25 The Branch and Bound Tree Subproblem 1 z = x 1 = 3.75 x 2 = 2.25 Subproblem 2 z = 41 x 1 = 4 x 2 = 1.8 Subproblem 3 z = 39 x 1 = 3 x 2 = 3, Subproblem 4 Infeasible Subproblem 5 z = x 1 = 4.44 x 2 = 1 x 1  4 x 1  3 x 2  2 x 2  1 Subproblem 6 z = 40 x 1 = 5 x 2 = 0, Subproblem 7 z = 37 x 1 = 4 x 2 =

26 Solving Knapsack Problems Max z = 16x x x 3 + 8x 4 subject to 5x 1 + 7x 2 + 4x 3 + 3x 4  14 x i = 0 or 1 for all i = 1, 2, 3, 4 LP Relaxation: Max z = 16x x x 3 + 8x 4 subject to 5x 1 + 7x 2 + 4x 3 + 3x 4  14 0  x i  1 for all i = 1, 2, 3, 4 Solving the LP Relaxation: Order x i ’s in the decreasing order of c i /a i where c i are the cost coefficients and a i ’s are the coefficients in the constraint ( Here: x 1 →x 2 → x 3 → x 4 ) Select items in this order until the constraint is satisfied with equality

27 The Branch and Bound Tree x 3 = 0 x 3 = 1 x 2 = 0 x 4 = 1 Subproblem 1 z = 44 x 1 = x 2 = 1 x 3 = Subproblem 5 z = 43.6 x 1 =.6, x 2 =x 3 =1 x 4 = 0, LB = 36 Subproblem 4 z = 36 x 1 = x 3 =1 x 2 = 0, x 4 =1 Subproblem 3 z = 43.7 x 1 =x 3 = 1, x 2 =.7, x 4 =0 Subproblem 6 z = 42 x 1 =0, x 2 =x 3 =1 x 4 = 1, LB = 42 5 Subproblem 7 LB = 42 Infeasible 6 x 2 = 1 x 1 = 0x 1 = 1 Subproblem 2 z = 43.3, LB=42 x 1 = x 2 =1 x 3 = 0, x 4 =.67 Subproblem 8 z = 38, LB=42 x 1 = x 2 =1 x 3 = x 4 = 0 Subproblem 9 z= 42.85, LB=42 x 1 = x 4 =1 x 3 = 0, x 2 =.85 x 4 = 0 3 4

28 Strategies of Branch and Bound The branch and bound algorithm is a divide and conquer algorithm, where a problem is divided into smaller and smaller subproblems. Each subproblem is solved separately, and the best solution is taken. Lower Bound (LB): Objective function value of the best solution found so far. Branching Strategy : The process of decomposing a subproblem into two or more subproblems is called branching.

29 Strategies of Branch and Bound (contd.) Upper Bounding Strategy: The process of obtaining an upper bound (UB) for each subproblem is called an upper bounding strategy. Pruning Strategy: If for a subproblem, UB  LB, then the subproblem need not be explored further. (Illustrate how to fathom nodes in a search tree ) Searching Strategy: The order in which subproblems are examined. Popular search strategies: LIFO and FIFO.

分枝界限法及其在二位元整數規劃的應用

31 分枝界限法的步驟 分枝 界限 洞悉

32 分枝

33 界限

34 洞悉

35 洞悉測試摘要

36 BIP 分枝界限演算法摘要

37

38 完成例題解題過程

39

40

41 應用分枝界限法的其他選擇

混合整數規劃之分枝界限演算法

43 MIP 分枝界限演算法摘要

44

45

46

47

48

49

50

51

52

53