380 likes | 1.33k Views
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.
E N D
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 ILPOptimal 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
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?
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:
Fixed Cost Three raw materials are used for a company to produce three products: a fuel additive, a solvent base, acarpet 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
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:
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
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.
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