Integer Linear Programming (ILP)

Slides:



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

BU Decision Models Integer_LP1 Integer Optimization Summer 2013.
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,
1 Chapter 11 Here we see cases where the basic LP model can not be used.
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.
1 Lecture 3 MGMT 650 Sensitivity Analysis in LP Chapter 3.
Linear Programming Problem Formulation.
EE 553 Integer Programming
Water Resources Development and Management Optimization (Integer Programming) CVEN 5393 Mar 11, 2013.
1 1 Slide © 2001 South-Western College Publishing/Thomson Learning Anderson Sweeney Williams Anderson Sweeney Williams Slides Prepared by JOHN LOUCKS QUANTITATIVE.
Operations Research Team 2.
5-1 Copyright © 2010 Pearson Education, Inc. Publishing as Prentice Hall Integer Programming Chapter 5.
Introduction to Management Science
Computational Methods for Management and Economics Carla Gomes
Linear Programming Integer Linear Models. When Variables Have To Be Integers Example – one time production decisions –Fractional values make no sense.
INTRODUCTION TO LINEAR PROGRAMMING
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.
Integer Programming Integer Linear Programming A ll-Integer Linear Program AA ll variables must be integers Mixed-Integer Linear Program SSome, but.
Chapter 5 Integer Programming. What is an integer program (IP)? IP is a linear program in which all or some variables can only take integral values. A.
LP formulation of Economic Dispatch
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’
(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.
DECISION MODELING WITH MICROSOFT EXCEL Copyright 2001 Prentice Hall Publishers and Ardith E. Baker IntegerOptimization Chapter 6.
Integer programming Branch & bound algorithm ( B&B )
Introduction to Management Science
5-1 Copyright © 2010 Pearson Education, Inc. Publishing as Prentice Hall Integer Programming Chapter 5.
Decision Procedures An Algorithmic Point of View
Chapter 11: Hillier and Lieberman Dr. Hurley’s AGB 328 Course
5-1 Copyright © 2013 Pearson Education, Inc. Publishing as Prentice Hall Integer Programming Chapter 5.
1 1 Slide Integer Linear Programming Professor Ahmadi.
1 1 Slide Integer Linear Programming Professor Ahmadi.
Introduction to Management Science
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.
To accompany Quantitative Analysis for Management, 8e by Render/Stair/Hanna 11-1 © 2003 by Prentice Hall, Inc. Upper Saddle River, NJ Chapter 11.
1 Chapter 4: Integer and Mixed-Integer Linear Programming Problems 4.1 Introduction to Integer and Mixed-Integer Linear Programming 4.2 Solving Integer.
1 1 Slide © 2009 South-Western, a part of Cengage Learning Slides by John Loucks St. Edward’s University.
WOOD 492 MODELLING FOR DECISION SUPPORT
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.
5-1 Copyright © 2010 Pearson Education, Inc. Publishing as Prentice Hall Integer Programming Chapter 5.
1 1 © 2003 Thomson  /South-Western Slide Slides Prepared by JOHN S. LOUCKS St. Edward’s University.
Integer Programming Li Xiaolei. Introduction to Integer Programming An IP in which all variables are required to be integers is called a pure integer.
Gomory Cuts Updated 25 March Example ILP Example taken from “Operations Research: An Introduction” by Hamdy A. Taha (8 th Edition)“Operations Research:
Integer Programming Definition of Integer Programming If requiring integer values is the only way in which a problem deviates from.
5-1 Copyright © 2013 Pearson Education Integer Programming: The Branch and Bound Method Module C.
Integer Programming, Branch & Bound Method
Introduction to Integer Programming Integer programming models Thursday, April 4 Handouts: Lecture Notes.
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.
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.
Linear Programming Dr. T. T. Kachwala.
Introduction to Operations Research
Gomory Cuts Updated 25 March 2009.
Slides by John Loucks St. Edward’s University.
Integer Linear Programming
ENGM 435/535 Integer Programming.
Linear Programming Integer Linear Models.
Branch-and-Bound Algorithm for Integer Program
Branch-and-Bound Technique for Solving Integer Programs
Integer Linear Programming
Presentation transcript:

Integer Linear Programming (ILP) Prof KG Satheesh Kumar Asian School of Business

Types of ILP Models ILP: A linear program in which some or all variables are restricted to integer values. Types: All-integer LP or a pure ILP Mixed-Integer LP 0-1 integer LP

An All-Integer IP or Pure ILP Maximise 2 x1 + 3 x2 Subject to 3 x1 + 2 x2 ≤ 12 ¼ x1 + 1 x2 ≤ 4 1 x1 + 2 x2 ≤ 6 x1, x2 ≥ 0 and integer

Illustration of All-Integer LP Sweeny: Eastborne Reality is considering investing in townhouses (T) and apartments(A). Determine the number of T’s and A’s to be purchased. (Integers) Funds available: $2 million. Cost: $282k per T and $400k per A Numbers available: 5 T’s and any number of A’s. Management time available: 140 h/mo Time needed: 4 hrs/mo for T and 40 h/mo for A. Contribution: $10k for T and $15k for A.

Sweeny Eastborne: ILP Model Maximise 10T + 15A Subject to: 282T + 400A ≤ 2000 4T + 40A ≤ 140 T ≤ 5 T, A ≥ 0 and integer

Sweeny Eastborne Relaxed LP: Rounded Solution If we relax the integer restriction, the optimum solution is T=2.48, A = 3.25, Z = 73.57 This is not acceptable because townhouses and apartments cannot be purchased in fractions! Rounding down gives integer solution with T = 2, A = 3 and Z = 65 Such rounding down may sometimes yield an optimum solution, but one cannot be sure!

Sweeny Eastborne ILP Optimal Integer Solution The optimal solution is T = 4, A = 2, Z = 70 and not the rounded-down solution which gives Z = 65.

ILP Algorithms The ILP algorithms are based on exploiting the tremendous computational success of LP. The strategy involves three steps: Relax the ILP: Remove integer restrictions; replace any binary variable y with continuous range 0  y  1. Solve the relaxed LP as a regular LP. Starting with the relaxed optimum, add constraints that iteratively modify the solution space to satisfy the integer requirements.

B&B and Cutting Plane Methods The two commonly used methods are: Branch and bound method Cutting Plane Method Neither method is consistently effective; but B&B is far more successful.

Branch-and-Bound (B&B) Developed in 1960 by A Land and G Doig Relax the integer restrictions in the problem and solve it as a regular LP. Let’s call this LP0 (to imply node-zero LP) Test if integer requirements are met. Else branch to get sub-problems LP1 and LP2.

Branching If LP0 (in general LPi) fails to yield integer solution, branch on any variable that fails to meet this requirement. The process of branching is illustrated below. If LPi yields x1 = 3.5 and x1 is taken as the branching variable, we get two sub-problems, LPi+1 = LPi & (x1 3) and LPi+2 = LPi & (x1 4). Note: In mixed integer problems, a continuous variable is never selected for branching.

Bounding / Fathoming Select LP1 (in general LPi) and solve. Three conditions arise. Infeasible solution, declare fathomed (no further investigation of LPi). Integer solution. If it is superior to the current best solution update the current best. Declare fathomed. Non-integer solution. If it is inferior to the current best, declare fathomed. Else branch again.

Best Bound In maximisation, the solution to a sub-problem is superior if it raises the current lower bound. In minimisation, the solution to a sub-problem is superior if it lowers the current upper bound. When all sub-problems have been fathomed, stop. The current bound is the best bound.

B&B Tree for Eastborne LP0 T = 2.48, A = 3.25, Z = 73.57 Non-integer, non-inferior to current best, branch on T LP1 = LP0 & T ≤ 2 T = 2, A = 3.3, Z = 69.5 Non-integer, can’t give better solution than LP5, fathomed LP2 = LP0 & T ≥ 3 T = 3, A = 2.89 Z = 73.28 Non-integer, non-inferior to current best, branch on A LP3 = LP0 & T ≥ 3 & A ≤ 2 T = 4.26, A = 2, Z = 72.55 Non-integer, non-inferior to current best, branch on T LP4 = LP0 & T ≥ 3 & A ≥ 3 Infeasible, fathomed LP5 = LP0 & T  [3,4] & A ≤ 2 T = 4, A = 2, Z = 70 Integer, Lower (best) bound LP6 = LP0 & T ≥ 5 & A ≤ 2 T = 5, A = 1.48, Z = 72.13 Can’t give better solution than LP5, fathomed Note: Z is a multiple of 5 and hence only Z ≥ 75 can be better than z = 70

Non-integer, non-inferior to current best, branch on T LP0 T = 2.48, A = 3.25, Z = 73.57 Non-integer, non-inferior to current best, branch on T LP1 = LP0 & T ≤ 2 T = 2, A = 3.3, Z = 69.5 Non-integer, can’t give better solution than LP5, fathomed LP2 = LP0 & T ≥ 3 T = 3, A = 2.89 Z = 73.28 Non-integer, non-inferior to current best, branch on A LP3 = LP0 & T ≥ 3 & A ≤ 2 T = 4.26, A = 2, Z = 72.55 Non-integer, non-inferior to current best, branch on T LP4 = LP0 & T ≥ 3 & A ≥ 3 Infeasible, fathomed LP5 = LP0 & T  [3,4] & A ≤ 2 T = 4, A = 2, Z = 70 Integer, Lower (best) bound LP6 = LP0 & T ≥ 5 & A ≤ 2 T = 5, A = 1.48, Z = 72.13 Can’t give better solution than LP5, fathomed

See more illustrations of Branch-and-Bound algorithm in the Excel sheet

0-1 Integer LP “0 -1” decision variables are used in problems where an Yes-No decision is to be taken regarding multiple choices. If the variable is 1, the corresponding choice is selected; if the variable is 0, it is not selected.

0-1 ILP: Capital Budgeting Five projects are being evaluated over a three year planning horizon. The table gives the expected returns for each project and associated yearly expenditures. Which project should be selected over the 3-year horizon? Expenditure in million $/year Returns, million $ Project Year 1 Year 2 Year 3 1 5 8 20 2 4 7 10 40 3 9 15 6 30 Available funds, million $ 25

0-1 ILP Model Maximise: 20 P1 + 40 P2 + 20 P3 + 15 P4 + 30 P5 subject to: 5 P1 + 4 P2 + 3 P3 + 7 P4 + 8 P5 <= 25 1 P1 + 7 P2 + 9 P3 + 4 P4 + 6 P5 <= 25 8 P1 + 10 P2 + 2 P3 + 1 P4 + 10 P5 <= 25 P1, P2, P3, P4, P5 = [0,1]

The Ice –Cold refrigerator Company is considering investing in several projects that have varying capital requirements over the next 4 years. Faced with limited capital each year, management would like to select the most profitable projects. The estimated net present value for each project, the capital requirements, and the available capacity over the four year period are shown:

Projects Plant expansion Warehouse expansion New Machinery New product research Total capital available Present value 90000 40000 10000 37000 Yr1 15000 Yr2 20000 50000 Yr3 yr4 5000 4000 35000

Fixed Cost Three raw materials are used for a company to produce three products: a fuel additive, a solvent base, a carpet cleaning. The profit contribution are $40 per ton for the fuel additive, $30 per ton for the solvent base, and $50 per ton for the cleaning fluid. Each ton of fuel additive is a blend of 0.4 tons of material 1 and 0.6 tons of material 3. Each ton of solvent base is a blend of 0.5 of material 1, 0.2 of material 2, 0.3 of material 3, Each ton of carpet cleaning fluid is a blend of 0.6 of material 1, 0.1 of material 2, 0.3 of material 3.

F = tons of fuel additive used S = tons of solvent base used C = tons of carpet cleaning used. Max 40F+30S+50C s.t. 0.4F+0.5S+0.6C<=20 0.2S+0.1C<=5 0.6F+0.3S+0.3C<=21 F,S,C>=0

product Set up cost Maximum Production Fuel additive $200 50 tons Solvent base $50 25 tons Carpet cleaning fluid $400 40 tons

SF = 1 if fuel additive is produced ,0 else SS = 1 if fuel additive is produced ,0 else SC = 1 if fuel additive is produced ,0 else Max 40F+30S+50C-200SF-50SS-400SC (net profit) s.t . F<=50SF or F-50SF <=0 Maximum F S<=25SS or S-25SS <=0 Maximum S C<=40SC or C-40SC <=0 Maximum C

Distribution Systems Design The Martin-Beck Company operates a plant in St. Louis with an annual capacity of 30,000 units. Product is shipped to regional centers located in Boston, Atlanta, Houston. Bcos of an anticipated increase in demand, Martin-Beck plans to increase the capacity by constructing a new plant in one or more of the following cities : Detroit, Toledo, Denver or Kansas City. The estimated annual fixed cost and the annual capacity for the 4 proposed plants is as follows:

Proposed plant Annual fixed cost Annual Capacity Detroit 175000 10000 Toledo 300000 20000 Denver 375000 30000 Kansas city 500000 40000

Annual Demand of the Distribution Centers: Boston 30000 Atlanta 20000 Houston

Plant size Boston Atlanta Houston Detroit 5 2 3 Toledo 4 Denver 9 7 Kansas city 10 St.louis 8

Max: 5x11+2x12+3x13+4x21+3x22+4x23+9x31+7x32+5x33+10x41+4x42+2x43+8x51+4x52+3x53+175y1+300y2+375y3+500y4 y1=1 if a plant is constructed in Detroit, 0 else y2=1 if a plant is constructed in Toledo, 0 else y3=1 if a plant is constructed in Denver, 0 else y4=1 if a plant is constructed in Kansas city, 0 else

x11+x12+x13<=10y1 or x11+x12+x13-10y1<=0 s.t. x11+x12+x13<=10y1 or x11+x12+x13-10y1<=0 x21+x22+x23<=20y1 or x21+x22+x23-20y1 x31+x32+x33<=30y1 or x31+x32+x33-30y1 x41+x42+x43<=40y1 or x41+x42+x43-40y1 x51+x52+x53<=30 x11+x21+x31+x41+x51=30 x12+x22+x32+x42+x52=20 x13+x23+x33+x43+x53=20

Branch Location The long-range planning department for the Ohio Trust Company is considering expanding its operation into a 20-county region in NE Ohio. Currently, Ohio Trust does not have a principal place of business in any of the 20 counties. According to the banking laws in Ohio, if a bank establishes a principal place of business (PPB) in any county, branch banks can be estd in that county and in any adjacent county. However, to establish a new PPB, Ohio Trust must either obtain approval for a new bank from the state’s superintendent of banks or purchase an existing bank.

  COUNTIES IN THE OHIO TRUST EXPANSION REGION COUNTIES UNDER CONSIDERATION ADJACENT COUNTIES 1 Ashtabula 2,12,16 2 Lake 1,3,12 3 Cuyahoga 2,4,9,10,12,13 4 Lorain 3,5,7,9 5 Huron 4,6,7 6 Richland 5,7,17 7 Ashland 4,5,6,8,9,17,18 8 Wayne 7,9,10,11,18 9 Medina 3,4,7,8,10 10 Summit 3,8,9,11,12,13 11 Stark 8,10,13,14,15,18,19,20 12 Geauga 1,2,3,10,13,16 13 portage 3,10,11,12,15,16 14 Columbians 11,15,20 15 Mahoning 11,13,14,16 16 Trumbull 1,12,13,15 17 Knox 6,7,18 18 Holmes 7,8,11,17,19 19 Tuscarawas 11,18,20 20 Carroll 11,14,19

Let xi= 1 if a PBB is estd in county i; 0 otherwise Objective Function Decision variables Let xi= 1 if a PBB is estd in county i; 0 otherwise Objective Function Minimise: Z= x1+x2+x3.,.,.x20 Subject to: x1 + x2 + x12 + x16 >= 1 (Ashtabula) x1 + x2 + x3 + x12 >= 1 (Lake) .,.,,.,.,.,(20 constraints) Non-negativity Xi = 0,1 i = 1,2,.,., 20

See more illustrations of 0-1 ILP and solution using Excel Solver

Reference Hamdy A Taha, “Operations Research: An Introduction”; Pearson Anderson, Sweeny and Williams, “An Introduction to Management Science”; Thomson Thank you for listening