Chapter 11: Hillier and Lieberman Dr. Hurley’s AGB 328 Course

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
McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., Table of Contents Chapter 2 (Linear Programming: Basic Concepts) Three Classic Applications.
Introduction to Management Science
Water Resources Development and Management Optimization (Linear Programming) CVEN 5393 Feb 18, 2013.
Water Resources Development and Management Optimization (Integer Programming) CVEN 5393 Mar 11, 2013.
McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., Integer Programming.
Integer Programming 3 Brief Review of Branch and Bound
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.
Computational Methods for Management and Economics Carla Gomes
Mathematical Modeling and Optimization: Summary of “Big Ideas”
Computational Methods for Management and Economics Carla Gomes
Basic LP Problem McCarl and Spreen Chapter 2 LP problem is linear form of Mathematical Program This formulation may also be expressed in matrix notation.
Linear Programming. Linear programming A technique that allows decision makers to solve maximization and minimization problems where there are certain.
Explorations in Artificial Intelligence Prof. Carla P. Gomes Module 7 Part 3 Integer Programming.
McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., Chapter 7 (Binary Integer Programming) Including two CD-rom supplements.
INTRODUCTION TO LINEAR PROGRAMMING
Review of Reservoir Problem OR753 October 29, 2014 Remote Sensing and GISc, IST.
0 Integer Programming Introduction to Integer Programming (IP) Difficulties of LP relaxation IP Formulations Branch and Bound Algorithms.
Daniel Kroening and Ofer Strichman Decision Procedures An Algorithmic Point of View Deciding ILPs with Branch & Bound ILP References: ‘Integer Programming’
Introduction to Mathematical Programming OR/MA 504 Chapter 5 Integer Linear Programming.
Introduction to Linear Programming
Integer programming Branch & bound algorithm ( B&B )
Decision Procedures An Algorithmic Point of View
Linear Programming Chapter 13 Supplement.
Module B: Linear Programming
Introduction to Linear Programming
The Theory of the Simplex Method
Linear Programming: Basic Concepts
Spreadsheet Modeling & Decision Analysis:
Operations Research Assistant Professor Dr. Sana’a Wafa Al-Sayegh 2 nd Semester ITGD4207 University of Palestine.
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.
McGraw-Hill/Irwin © The McGraw-Hill Companies, Inc., Table of Contents Chapter 9 (Integer Programming) General Integer Programming (Section 9.1)9.2–9.12.
Operations Research Assistant Professor Dr. Sana’a Wafa Al-Sayegh 2 nd Semester ITGD4207 University of Palestine.
Solving Linear Programming Problems: The Simplex Method
Using Binary Integer Programming to Deal with Yes-or-No Decisions
Integer Programming Each year CrossChek decides which lines of golf clubs and clothing it will market. Consider that each line of golf clubs is expected.
Network Optimization Problems
Linear Programming: Formulation and Applications Chapter 3: Hillier and Hillier.
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.
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
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
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.
Linear Programming Wyndor Glass Co. 3 plants 2 new products –Product 1: glass door with aluminum framing –Product 2: 4x6 foot wood frame window.
University of Colorado at Boulder Yicheng Wang, Phone: , Optimization Techniques for Civil and Environmental Engineering.
EMGT 5412 Operations Management Science Nonlinear Programming: Introduction Dincer Konur Engineering Management and Systems Engineering 1.
EMGT 5412 Operations Management Science
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
The CPLEX Library: Mixed Integer Programming
Linear Programming Wyndor Glass Co. 3 plants 2 new products
Introduction to Operations Research
Integer Linear Programming
ENGM 435/535 Integer Programming.
Chapter 1. Formulations.
Branch-and-Bound Algorithm for Integer Program
Branch-and-Bound Technique for Solving Integer Programs
Integer Linear Programming
Presentation transcript:

Chapter 11: Hillier and Lieberman Dr. Hurley’s AGB 328 Course Integer Programming Chapter 11: Hillier and Lieberman Dr. Hurley’s AGB 328 Course

Terms to Know Integer Programming, Mixed Integer Programming, Binary Variable, Binary Integer Programming, Mutually Exclusive Alternatives, Contingent Decisions, Tours-of-duty Planning Problem, Rostering Problem, Auxiliary Binary Variable, Binary Representation

Terms to Know Cont. Set Covering Problems, Set Partitioning Problems, Exponential Growth, LP Relaxation, Branching Tree, Branching Variable, Relaxation, Incumbent, Fathom, Descendants, Lagrangian Relaxation, Cutting Plane, Cut, Minimum Cover, Global Constraints

Applications of Binary Variables Binary variables only allow two choices This makes them suited for problems that are characterized by variables that can take on only two possibilities. Examples: Do a project or not do a project? To hire or not to hire? To build or not to build? To Sell or not to sell?

Case Study: California Manufacturing Company (CMC) The California Manufacturing Company is a company with factories and warehouses throughout California. It is currently considering whether to build a new factory in Los Angeles and/or San Francisco. Management is also considering building one new warehouse where a new factory has been recently built. Should the CMC build factories and/or warehouses in Los Angeles and/or San Francisco?

Capital Needed (Millions) Case Study: CMC Cont. Binary Decision Decision Variable NPV (Millions) Capital Needed (Millions) Build a factory in Los Angeles FLA $9 $6 Build a factory in San Francisco FSF 5 3 Build a warehouse in Los Angeles WLA 6 Build a warehouse in San Francisco WSF 4 2 Building Money Available: $10 million

Case Study: CMC Cont. FLA, FSF, WLA,WSF are all binary variables which take on the value of 1 if the specific item is done and zero if it is not done. We also need to make sure that at most one warehouse is built and it is built where a factory is built.

Mathematical Model for CMC

Innovative Uses for Binary Variables Either-Or Constraint A Subset of Constraints Must Hold A Constraint that Needs a Single Value Out of Multiple Possibilities A Fixed Cost Is Only Associated with a Positive Usage of a Variable Binary Representation of General Integer Variables

Either-Or Constraint Suppose you have a situation where you have two potential constraints, but only one of them can hold To handle this issue, you can add to one constraint My1 to the RHS and to the other constraint M(1-y1) to the RHS where y1 is a binary variable For example: 5x1+9x2 ≤ 24 + My1 8x1+6x2 ≤ 35 + M(1-y1)

A Subset of Constraints Must Hold Suppose you have N constraints where only K of the constraints hold (K<N) You would add to constraint i the amount Myi and one other constraint where 𝑖=1 𝑁 𝑦 𝑖 =𝑁−𝐾 For example: 5x1 + 12x2 ≤ 34 + My1 6x1 + 11x2 ≤ 43 + My2 7x1 + 10x2 ≤ 57 + My3 y1+ y2 + y3 = 1

A Constraint that Needs a Single Value Out of Multiple Possibilities Suppose you have a constraint where the function can take on one out of many values To handle this issue, you would multiply value i by a binary variable yi and sum them all together while adding one more constraint that 𝑖=1 𝑁 𝑦 𝑖 =1 For example: 5x1 +31x2 = 25 or 50 or 75 5x1 +31x2 = 25y1+ 50y2+ 75y3 y1+ y2 + y3 = 1

A Fixed Cost Is Only Associated with a Positive Usage of a Variable Suppose you have the situation where your objective function only takes on a fixed cost ki if you use a corresponding variable xi > 0, if xi = 0 then ki = 0 To handle this issue you would add to the objective function kiyi and a new constraint xi ≤ Myi For example, suppose that variable x1 has an associated set-up cost if you decide to use it

min 𝑥 1 , 𝑥 2 10 𝑥 1 +45 𝑥 2 +100 𝑦 1 Subject to: 9 𝑥 1 + 35 𝑥 2 ≤900 23 𝑥 1 +42 𝑥 2 ≤750 𝑥 1 ≤𝑀 𝑦 1

Binary Representation of General Integer Variables There are some times when you may want to represent a variable that is supposed to be an integer by transforming it into a binary representation This can be done by defining the variable x = 𝑖=0 𝑁 2 𝑖 𝑦 𝑖

Goods Product Company Example Objective: Maximize Profits Decision Variables: Product 1, Product 2, and Product 3 Constraints: Production time available for Plants 1 and 2 At most two out of the three products can be produced Only one of the two plants can produce the new products

Data for Goods Product Company Product 1 uses 3 hours of Plant 1 or 4 hours of Plant 2 per unit of production You can sell up to 7 at a profit of $5,000 Product 2 uses 4 hours of Plant 1 or 6 hours of Plant 2 per unit of production You can sell up to 5 at a profit of $7,000 Product 3 uses 2 hours of Plant 1 or 2 hours of Plant 2 per unit of production You can sell up to 9 at a profit of $3,000 Plant 1 has 30 hours available while Plant 2 has 40 hours

Mathematical Model for Goods Product Company max 𝑥 1 , 𝑥 2 , 𝑥 3 , 𝑥 4 , 𝑥 5 , 𝑥 6 , 𝑥 7 5 𝑥 1 +7 𝑥 2 + 3𝑥 3 Subject to: 𝑥 1 −𝑀 𝑥 4 ≤0 𝑥 2 −𝑀 𝑥 5 ≤0 𝑥 3 −𝑀 𝑥 6 ≤0 𝑥 4 + 𝑥 5 + 𝑥 6 ≤2 3𝑥 1 + 4𝑥 2 +2 𝑥 3 −𝑀 𝑥 7 ≤30 4𝑥 1 + 6𝑥 2 +2 𝑥 3 +𝑀 𝑥 7 ≤30+𝑀 0≤𝑥 1 ≤7, 0≤𝑥 2 ≤5, 0≤𝑥 3 ≤9 𝑥 4 , 𝑥 5 , 𝑥 6 , 𝑥 7 ∈ 0,1 We will examine the spreadsheet model in class

Supersuds Corporation Example Objective: Maximize Profits Decision Variables: Number of TV spots for Product 1, Product 2, and Product 3 Constraints: Number of TV spots allocated to the three products cannot be more than five Major Issue: Proportionality Assumption is violated

Data for Supersuds If any of the products does not buy a TV spot, it will not get any profit If Product 1 buys 1, 2 , or 3 TV spot(s), its profitability would be 1, 3, or 3 respectively If Product 2 buys 1, 2 , or 3 TV spot(s), its profitability would be 0, 2, or 3 respectively If Product 3 buys 1, 2 , or 3 TV spot(s), its profitability would be -1, 2, or 4 respectively

Mathematical Model 1 for Supersuds max 𝑥 11 , 𝑥 12 , 𝑥 13 , 𝑥 21 , 𝑥 22 , 𝑥 23 , 𝑥 31 , 𝑥 32 , 𝑥 33 𝑥 11 +3 𝑥 12 + 3𝑥 13 +2 𝑥 22 + 3𝑥 23 − 𝑥 31 +2 𝑥 32 + 4𝑥 33 Subject to: 𝑥 11 + 𝑥 12 + 𝑥 13 ≤1 𝑥 21 + 𝑥 22 + 𝑥 23 ≤1 𝑥 31 + 𝑥 32 + 𝑥 33 ≤1 𝑥 11 + 2𝑥 12 + 3𝑥 13 + 𝑥 21 + 2𝑥 22 + 3𝑥 23 + 𝑥 31 + 2𝑥 32 + 3𝑥 33 ≤1 𝑥 11 , 𝑥 12 , 𝑥 13 , 𝑥 21 , 𝑥 22 , 𝑥 23 , 𝑥 31 , 𝑥 32 , 𝑥 33 ∈ 0,1 We will examine the spreadsheet model in class

Mathematical Model 2 for Supersuds max 𝑥 11 , 𝑥 12 , 𝑥 13 , 𝑥 21 , 𝑥 22 , 𝑥 23 , 𝑥 31 , 𝑥 32 , 𝑥 33 𝑥 11 +2 𝑥 12 +2 𝑥 22 + 𝑥 23 − 𝑥 31 +3 𝑥 32 + 2𝑥 33 Subject to: 𝑥 12 − 𝑥 11 ≤0 𝑥 13 − 𝑥 12 ≤0 𝑥 22 − 𝑥 21 ≤0 𝑥 23 − 𝑥 22 ≤0 𝑥 32 − 𝑥 31 ≤0 𝑥 33 − 𝑥 32 ≤0 𝑥 11 + 𝑥 12 + 𝑥 13 + 𝑥 21 + 𝑥 22 + 𝑥 23 + 𝑥 31 + 𝑥 32 + 𝑥 33 =5 𝑥 11 , 𝑥 12 , 𝑥 13 , 𝑥 21 , 𝑥 22 , 𝑥 23 , 𝑥 31 , 𝑥 32 , 𝑥 33 ∈ 0,1 We will examine the spreadsheet model in class

Wyndor Case Revisited Two new products have been developed: An 8-foot glass door A 4x6 foot glass window Wyndor has three production plants Production of the door utilizes Plants 1 and 3 Production of the window utilizes Plants 2 and 3 Objective is to find the optimal mix of these two new products.

Wyndor Case Revisited Cont. Production Time Used for Each Unit Produced Plant Doors Windows Available Per Week 1 1 hour 0 hour 4 hour 2 2 hour 12 hour 3 3 hour 18 hour Unit Profit $300 $500

Wyndor Case Revisited Cont.

Changing Wyndor to Account for Setup Costs Suppose that two changes are made to the original Wyndor problem: If Wyndor chooses to produce doors, it must pay a one time set-up cost of $700, while if Wyndor produces windows it must pay a set-up cost of $1,300. We want to restrict the doors and windows to be integer values.

Wyndor’s Mathematical Model With Set-Up Costs

Changing Wyndor to Account for Mutually Exclusive Products Suppose Wyndor decides that it only wants to produce doors or windows rather than both. This implies that either doors have to be zero or windows have to be zero.

Wyndor’s Mathematical Model With Mutually Exclusive Products

Changing Wyndor to Account for Either-Or Constraints Suppose the company is trying to decide whether to build a new up-to-date plant that will be used to replace plant 3. This implies that Wyndor wants to examine the profitably of using plant 4 versus plant 3.

Wyndor’s Data with Either/Or Constraint Production Time Used for Each Unit Produced Plant Doors Windows Available Per Week 1 1 hour 0 hour 4 hour 2 2 hour 12 hour 3 3 hour 18 hour 4 2 hours 4 hours 28 hours Unit Profit $300 $500

Wyndor’s Mathematical Model With Either/Or Constraint

The Challenges of Rounding It may be tempting to round a solution from a non-integer problem, rather than modeling for the integer value. There are three main issues that can arise: Rounded Solution may not be feasible. Rounded solution may not be close to optimal. There can be many rounded solutions The solution to the LP-relaxation shown on the graph is approximately (3.8, 4.9). None of the possible rounded solutions, (3, 4), (4, 4), (3, 5), or (4, 5), are even feasible. The optimal solution at (1, 3) is not even close to the LP-relaxation solution. There are 230, or approximately 1 billion rounded solutions to a problem with 30 variables that are non-integer.

Algorithms For Solving BIPs and MIPs Branch-and-Bound Algorithm Branch-and-Cut Algorithm

Branch-and-Bound Algorithm This algorithm has three main steps in an iteration: Branching This is where you create two new sub-problems Bounding For each sub-problem, apply the simplex method to the LP relaxation Fathoming This where you are deciding whether to dismiss the sub-problem from further consideration

Fathoming Test Test 1: Its bound is less than Z*, where Z* represents the value you get from the objective function for the current best incumbent solution Test 2: The LP relaxation problem has no solution Test 3: The optimal solution for the LP relaxation problem is binary/integer

Branch-and-Cut Algorithms These algorithms primarily rely upon: Problem preprocessing Fixing variables that you know upfront must be a particular variable Eliminating redundant constraints Tightening constraints in a way to reduce the feasible region Generating cutting planes This reduces the feasible region for the LP relaxation which does not reduce the feasible solutions Clever branch-and-bound techniques

In-Class Activity (Not Graded) Create a spreadsheet model for each of the Wyndor problems previously discussed