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

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

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

Page 1: Integer Linear Programming (ILP) Prof KG Satheesh Kumar Asian School of Business.

Integer Linear Programming (ILP)

Prof KG Satheesh Kumar

Asian School of Business

Page 2: 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: 1. All-integer LP or a pure ILP

2. Mixed-Integer LP

3. 0-1 integer LP

Page 3: Integer Linear Programming (ILP) Prof KG Satheesh Kumar Asian School of Business.

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

Page 4: Integer Linear Programming (ILP) Prof KG Satheesh Kumar Asian School of Business.

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 ANumbers available: 5 T’s and any number of A’s.

Management time available: 140 h/moTime needed: 4 hrs/mo for T and 40 h/mo for A.

Contribution: $10k for T and $15k for A.

Page 5: Integer Linear Programming (ILP) Prof KG Satheesh Kumar Asian School of Business.

Sweeny Eastborne: ILP Model

Maximise 10T + 15A

Subject to: 282T + 400A ≤ 2000

4T + 40A ≤ 140

T ≤ 5

T, A ≥ 0 and integer

Page 6: Integer Linear Programming (ILP) Prof KG Satheesh Kumar Asian School of Business.

Sweeny Eastborne Relaxed LP: Rounded Solution

If we relax the integer restriction, the optimum solution is

T=2.48, A = 3.25, Z = 73.57This 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!

Page 7: Integer Linear Programming (ILP) Prof KG Satheesh Kumar Asian School of Business.

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.

Page 8: Integer Linear Programming (ILP) Prof KG Satheesh Kumar Asian School of Business.

ILP Algorithms

The ILP algorithms are based on exploiting the tremendous computational success of LP. The strategy involves three steps:

1. Relax the ILP: Remove integer restrictions; replace any binary variable y with continuous range 0 y 1.

2. Solve the relaxed LP as a regular LP.

3. Starting with the relaxed optimum, add constraints that iteratively modify the solution space to satisfy the integer requirements.

Page 9: Integer Linear Programming (ILP) Prof KG Satheesh Kumar Asian School of Business.

B&B and Cutting Plane Methods

The two commonly used methods are:

1. Branch and bound method

2. Cutting Plane Method

Neither method is consistently effective; but B&B is far more successful.

Page 10: Integer Linear Programming (ILP) Prof KG Satheesh Kumar Asian School of Business.

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.

Page 11: Integer Linear Programming (ILP) Prof KG Satheesh Kumar Asian School of Business.

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.

Page 12: Integer Linear Programming (ILP) Prof KG Satheesh Kumar Asian School of Business.

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.

Page 13: Integer Linear Programming (ILP) Prof KG Satheesh Kumar Asian School of Business.

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.

Page 14: Integer Linear Programming (ILP) Prof KG Satheesh Kumar Asian School of Business.

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

Page 15: Integer Linear Programming (ILP) Prof KG Satheesh Kumar Asian School of Business.

LP2 = LP0 & T ≥ 3

T = 3, A = 2.89 Z = 73.28

Non-integer, non-inferior to current best, branch on A

LP1 = LP0 & T ≤ 2

T = 2, A = 3.3, Z = 69.5

Non-integer, can’t give better solution than LP5, fathomed

LP0

T = 2.48, A = 3.25, Z = 73.57

Non-integer, non-inferior to current best, branch on T

LP4 = LP0 & T ≥ 3 & A ≥ 3Infeasible, fathomed

LP3 = LP0 & T ≥ 3 & A ≤ 2

T = 4.26, A = 2, Z = 72.55

Non-integer, non-inferior to current best, branch on T

LP6 = LP0 & T ≥ 5 & A ≤ 2

T = 5, A = 1.48, Z = 72.13

Can’t give better solution than LP5, fathomed

LP5 = LP0 & T [3,4] & A ≤ 2

T = 4, A = 2, Z = 70

Integer, Lower (best) bound

Page 16: Integer Linear Programming (ILP) Prof KG Satheesh Kumar Asian School of Business.

See more illustrations of Branch-and-Bound

algorithm in the Excel sheet

Page 17: Integer Linear Programming (ILP) Prof KG Satheesh Kumar Asian School of Business.

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.

Page 18: Integer Linear Programming (ILP) Prof KG Satheesh Kumar Asian School of Business.

0-1 ILP: Capital BudgetingFive 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 1 8 20

2 4 7 10 40

3 3 9 2 20

4 7 4 1 15

5 8 6 10 30

Available funds, million $

25 25 25

Page 19: Integer Linear Programming (ILP) Prof KG Satheesh Kumar Asian School of Business.

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]

Page 20: Integer Linear Programming (ILP) Prof KG Satheesh Kumar Asian School of Business.

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:

Page 21: Integer Linear Programming (ILP) Prof KG Satheesh Kumar Asian School of Business.

Projects

Plant expansion

Warehouse expansion

New

Machinery

New product research

Total capital available

Present value 90000 40000 10000 37000

Yr1 15000 10000 10000 15000 40000

Yr2 20000 15000 10000 50000

Yr3 20000 20000 10000 40000

yr4 15000 5000 4000 10000 35000

Page 22: Integer Linear Programming (ILP) Prof KG Satheesh Kumar Asian School of Business.

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.

Page 23: Integer Linear Programming (ILP) Prof KG Satheesh Kumar Asian School of Business.

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

Page 24: Integer Linear Programming (ILP) Prof KG Satheesh Kumar Asian School of Business.

product Set up cost Maximum

Production

Fuel additive $200 50 tons

Solvent base $50 25 tons

Carpet cleaning fluid

$400 40 tons

Page 25: Integer Linear Programming (ILP) Prof KG Satheesh Kumar Asian School of Business.

SF = 1 if fuel additive is produced ,0 elseSS = 1 if fuel additive is produced ,0 elseSC = 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

Page 26: Integer Linear Programming (ILP) Prof KG Satheesh Kumar Asian School of Business.

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:

Page 27: Integer Linear Programming (ILP) Prof KG Satheesh Kumar Asian School of Business.

Proposed plant Annual fixed cost

Annual Capacity

Detroit 175000 10000

Toledo 300000 20000

Denver 375000 30000

Kansas city 500000 40000

Page 28: Integer Linear Programming (ILP) Prof KG Satheesh Kumar Asian School of Business.

Annual Demand of the Distribution Centers:

Distribution Centers Annual Demand

Boston 30000

Atlanta 20000

Houston 20000

Page 29: Integer Linear Programming (ILP) Prof KG Satheesh Kumar Asian School of Business.

Plant size Boston Atlanta Houston

Detroit 5 2 3

Toledo 4 3 2

Denver 9 7 5

Kansas city 10 4 2

St.louis 8 4 3

Page 30: Integer Linear Programming (ILP) Prof KG Satheesh Kumar Asian School of Business.

Max:5x11+2x12+3x13+4x21+3x22+4x23+9x31+7x32+5x33+10x

41+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

Page 31: Integer Linear Programming (ILP) Prof KG Satheesh Kumar Asian School of Business.

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

Page 32: Integer Linear Programming (ILP) Prof KG Satheesh Kumar Asian School of Business.

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.

Page 33: Integer Linear Programming (ILP) Prof KG Satheesh Kumar Asian School of Business.

  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

Page 34: Integer Linear Programming (ILP) Prof KG Satheesh Kumar Asian School of Business.

• 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

Page 35: Integer Linear Programming (ILP) Prof KG Satheesh Kumar Asian School of Business.

See more illustrations of

0-1 ILP

and solution using

Excel Solver

Page 36: Integer Linear Programming (ILP) Prof KG Satheesh Kumar Asian School of Business.

Reference

• Hamdy A Taha, “Operations Research: An Introduction”; Pearson

• Anderson, Sweeny and Williams, “An Introduction to Management Science”; Thomson

Thank you for listening