LGT5102 Models for decision making
Binary integer programming
●
Introduction
●
Case: California Manufacturing Co.
●
An Application Vignette
●
Using BIP for Project Selection: Tazer Corp.
●
Using BIP for the Selection of Sites: Caliente City
●
Using BIP for Crew Scheduling: Southwestern Airways
●
Using Mixed BIP to Deal with Setup Costs: Revised Wyndor
Introduction
●
Integer programming (IP) problem:
some decision variables have integer values
●
Examples:
Assignment: Assign jobs to machines
Location: Where to put the plants?
Partition: Divide a set into subsets
Routing: Find optimal routes
Sequencing: Find optimal order for jobs etc.
Scheduling: Arrange events over time
Shift Scheduling: e.g., the ticket booking office problem
AlphaGo: Where to put the stone?
2
Introduction (con't)
●
Binary integer programming (BIP)
0-1 decision variables: yes-or-no decisions
●
Examples – yes-or-no decisions:
Should we undertake a particular fixed project?
Should we make a particular fixed investment?
Should we locate a facility in a particular site?
3
Case study: California Manufacturing Company
• The California Manufacturing Company is a diversified company with
several factories and warehouses throughout California, but none yet in
Los Angeles or San Francisco.
• A basic issue is whether to build a new factory in Los Angeles or San
Francisco, or perhaps even both.
• Management is also considering building at most one new warehouse,
– but will restrict the choice to a city where a new factory is being built.
• Managerial Question: Should the California Manufacturing
Company expand with factories and/or warehouses in Los Angeles
and/or San Francisco?
Objective: find the feasible combination of investment alternatives that
maximizes the net present value
Data for California Manufacturing
Net Present Capital
Decision Yes-or-No Decision Value Required
Number Question Variable (Millions) (Millions)
1 Build a factory in Los Angeles? x1 $8 $6
2 Build a factory in San Francisco? x2 5 3
3 Build a warehouse in Los Angeles? x3 6 5
4 Build a warehouse in San Francisco? x4 4 2
Capital Available: $10 million
5
Binary Decision Variables
Decision Decision Possible Interpretation Interpretation
Number Variable Value of a Value of 1 of a Value of 0
Build a factory in Do not build
1 x1 0 or 1
Los Angeles this factory
Build a factory in Do not build
2 x2 0 or 1
San Francisco this factory
Build a warehouse Do not build
3 x3 0 or 1
in Los Angeles this warehouse
Build a warehouse Do not build
4 x4 0 or 1
in San Francisco this warehouse
6
Algebraic Formulation
Let
x1 = 1 if build a factory in L.A.; 0 otherwise
x2 = 1 if build a factory in S.F.; 0 otherwise
x3 = 1 if build a warehouse in Los Angeles; 0 otherwise
x4 = 1 if build a warehouse in San Francisco; 0 otherwise
Maximize
NPV = 8x1 + 5x2 + 6x3 + 4x4 ($millions)
subject to
6x1 + 3x2 + 5x3 + 2x4 ≤ 10 ($millions) – Capital Spent
x 3 + x4 ≤ 1 – Max 1 Warehouse
x3 ≤ x1 and x4 ≤ x2 – Warehouse only if Factory
x1, x2, x3, x4 are binary variables.
Spreadsheet Model
B C D E F G
3 NPV ($millions) LA SF
4 Warehouse 6 4
5
6 Factory 8 5
7
8 Capital Required
9 ($millions) LA SF
10 Warehouse 5 2 Capital Capital
11 Spent Available
12 Factory 6 3 9 <= 10
13
14 Total Maximum
15 Build? LA SF Warehouses Warehouses
16 Warehouse 0 0 0 <= 1
17 <= <=
18 Factory 1 1
19
20 Total NPV ($millions) 13
8
Sensitivity Analysis:
Parameter Analysis Report (Optional)
The parameter analysis report shows the effect of varying the amount
of capital being made available for these investments.
9
Management’s Conclusion
• Management’s initial tentative decision had been to make $10 million of
capital available.
• With this much capital, the best plan would be to build a factory in both
Los Angeles and San Francisco, but no warehouses.
• An advantage of this plan is that it only uses $9 million of this capital,
which frees up $1 million for other projects.
• A heavy penalty (a reduction of $4 million in total net present value) would
be paid if the capital made available were to be reduced below $9 million.
• Increasing the capital made available by $1 million (to $11 million) would
enable a substantial ($4 million) increase in the total net present value.
Management decides to do this.
• With this much capital available, the best plan is to build a factory in both
cities and a warehouse in San Francisco.
Application Vignette:
Chemotherapy Patient Appointment Scheduling
●
BC Cancer Agent Vancouver Centre, Chemotherapy Unit:
nearly 15,000 outpatient treatments per year
a team of 10 nurses.
●
Managerial difficulties and problems
clinical complexity, high resource utilization and
scheduling restrictions
significant waitlist, late appointment confirmation,
clerical rework
●
Patients
difficulty to arrange necessary transportation and
support for the appointment
increasing distress and anxiety
11
Objective and approach
●
Objectives:
Reducing the size of the patient wait list
Increasing the time between notification and appointment
●
MS Approach:
Observe the booking and scheduling processes
Interview with staff and patients
Examine data of 19,000 appointment records (2008-09
from Cancer Agency Information System (CAIS))
An MILP model: allocate appointments to nurses
Implementation:
redesign processes, develop software, training staffs,
evaluate the results
12
MILP model – the intelligent engine
●
Balances workload within
and across nursing shifts
●
Includes appointment-
specific parameters
nursing time, chair
time, protocol
start/end times and
other restrictions
●
Considers chemo unit
and pharmacy capacity,
other appointments and
patient preferences 13
The results
●
“The new booking system is more straightforward for the
clerks and helps the unit to have a more balanced workload
across nurses.” — Clinical Nurse Coordinator
Project Selection at Tazer Corp.
• Tazer Corporation is searching for a new breakthrough drug.
• Five potential research and development projects:
– Project Up: Develop a more effect antidepressant that doesn’t cause mood
swings
– Project Stable: Develop a drug that addresses manic depression
– Project Choice: Develop a less intrusive birth control method for women
– Project Hope: Develop a vaccine to prevent HIV infection
– Project Release: Develop a more effective drug to lower blood pressure
• $1.2 billion available for investment (enough for 2 or 3 projects)
Question: Which projects should be selected to research and develop?
Data for the Tazer Project Selection Problem
1 2 3 4 5
Up Stable Choice Hope Release
R&D 400 300 600 500 200
($million)
Success 50% 35% 35% 20% 45%
Rate
Revenue if 1,400 1,200 2,200 3,000 600
Successful
($million)
Expected 300 120 170 100 70
Profit
($million)
16
Algebraic Formulation of Tazer Project Selection
Let xi = 1 if approve project i; 0 otherwise (for i = 1, 2, 3, 4, and 5)
Maximize
P = 300x1 + 120x2 + 170x3 + 100x4 + 70x5 ($million)
subject to
400x1 + 300x2 + 600x3 + 500x4 + 200x5 ≤ 1,200 ($m) – R&D Budget
xi are binary, i = 1, 2, 3, 4, 5
17
Spreadsheet for Tazer Project Selection Problem
A B C D E F G H I J
1 Tazer Corp. Project Selection Problem
2
3
4 Up Stable Choice Hope Release Total Budget
5 R&D Investment ($million) 400 300 600 500 200 1200 <= 1200
6 Success Rate 50% 35% 35% 20% 45%
7 Revenue if Successful ($million) 1400 1200 2200 3000 600
8 Expected Profit ($million) 300 120 170 100 70 540
9
10 Do Project? 1 0 1 0 1
18
Selection of Sites for Emergency Services:
The Caliente City Problem
• Caliente City is growing rapidly and spreading well beyond its original
borders
• They still have only one fire station, located in the congested center of town
• The result has been long delays in fire trucks reaching the outer part of the
city
Goal: Develop a plan for locating multiple fire stations throughout the city
New Policy: Response Time ≤ 10 minutes
19
Response Time and Cost Data for Caliente City
Fire Station in Tract
1 2 3 4 5 6 7 8
Response 1 2 8 18 9 23 22 16 28
times
(minutes) for 2 9 3 10 12 16 14 21 25
a fire in tract 3 17 8 4 20 21 8 22 17
4 10 13 19 2 18 21 6 12
5 21 12 16 13 5 11 9 12
6 25 15 7 21 15 3 14 8
7 14 22 18 7 13 15 2 9
8 30 24 15 14 17 9 8 3
Cost of Station 350 250 450 300 50 400 300 200
($thousands) 20
Algebraic Formulation of Caliente City Problem
Let xj = 1 if tract j is selected to receive a fire station; 0 otherwise (j = 1, …, 8)
Minimize C = 350x1 + 250x2 + 450x3 + 300x4 + 50x5 + 400x6 + 300x7 + 200x8
subject to
Tract 1: x1 + x2 + x4 ≥1
Tract 2: x1 + x2 + x3 ≥1
Tract 3: x2 + x3 + x6 ≥1
Tract 4: x1 + x4 + x7 ≥1
Tract 5: x5 + x7 ≥1
Tract 6: x3 + x6 + x8 ≥ 1
Tract 7: x4 + x7 + x8 ≥ 1
Tract 8: x6 + x7 + x8 ≥ 1
xj are binary, j = 1, 2, … , 8.
Spreadsheet Model for Caliente City Problem
A B C D E F G H I J K L M N
1 Caliente City Fire Station Location Problem
2
3 Fire Station in Tract
4 1 2 3 4 5 6 7 8
5 1 2 8 18 9 23 22 16 28
6 Response 2 9 3 10 12 16 14 21 25
7 Times 3 17 8 4 20 21 8 22 17
8 (Minutes) 4 10 13 19 2 18 21 6 12
9 for a Fire 5 21 12 16 13 5 11 9 12
10 in Tract 6 25 15 7 21 15 3 14 8
11 7 14 22 18 7 13 15 2 9
12 8 30 24 15 14 17 9 8 3
13
14 Cost of Station 350 250 450 300 50 400 300 200
15 ($thousands) Number
16 Covering
17 1 1 1 0 1 0 0 0 0 1 >= 1
18 Response 2 1 1 1 0 0 0 0 0 1 >= 1
19 Time 3 0 1 1 0 0 1 0 0 1 >= 1
20 <= 4 1 0 0 1 0 0 1 0 1 >= 1
21 10 5 0 0 0 0 1 0 1 0 1 >= 1
22 Minutes? 6 0 0 1 0 0 1 0 1 1 >= 1
23 7 0 0 0 1 0 0 1 1 2 >= 1
24 8 0 0 0 0 0 1 1 1 2 >= 1
25
26 Total
27 Fire Station in Tract Cost
28 1 2 3 4 5 6 7 8 ($thousands)
29 Station in Tract? 0 1 0 0 0 0 1 1 750
Example: D17 “=IF(D5<=10, 1, 0)”
Southwestern Airways Crew Scheduling
• Southwestern Airways needs to assign crews to cover all its
upcoming flights.
• We will focus on assigning 3 crews based in San Francisco
(SFO) to 11 flights.
Question: How should the 3 crews be assigned 3 sequences of
flights so that every one of the 11 flights is covered?
23
Southwestern Airways Flights
Seat tl e
(SE A)
Denv er Ch i cag o
(DEN) ORD)
San Fran cis co
(SFO)
Lo s An gel es
(LAX)
24
Data for the Southwestern Airways Problem
Feasible Sequence of Flights
Flights 1 2 3 4 5 6 7 8 9 10 11 12
1. SFO–LAX 1 1 1 1
2. SFO–DEN 1 1 1 1
3. SFO–SEA 1 1 1 1
4. LAX–ORD 2 2 3 2 3
5. LAX–SFO 2 3 5 5
6. ORD–DEN 3 3 4
7. ORD–SEA 3 3 3 3 4
8. DEN–SFO 2 4 4 5
9. DEN–ORD 2 2 2
10. SEA–SFO 2 4 4 5
11. SEA–LAX 2 2 4 4 2
Cost, $1,000s 2 3 4 6 7 5 7 8 9 9 8 9
Algebraic Formulation
Let xj = 1 if flight sequence j is assigned to a crew; 0 otherwise. (j = 1, 2, … , 12).
Minimize
Cost = 2x1 + 3x2 + 4x3 + 6x4 + 7x5 + 5x6 + 7x7 + 8x8 + 9x9 + 9x10 + 8x11 + 9x12
subject to
Flight 1 covered: x1 + x4 + x7 + x10 ≥ 1
Flight 2 covered: x2 + x5 + x8 + x11 ≥ 1
: :
Flight11 covered: x6 + x9 + x10 + x11 + x12 ≥ 1
Three Crews: x1 + x2 + x3 + x4 + x5 + x6 + x7 + x8 + x9 + x10 + x11 + x12 ≤ 3
xj are binary, j = 1, 2, … , 12.
Spreadsheet Model
B C D E F G H I J K L M N O P Q
3 Flight Sequence
4 1 2 3 4 5 6 7 8 9 10 11 12
5 Cost ($thousands) 2 3 4 6 7 5 7 8 9 9 8 9 At
6 Least
7 Includes Segment? Total One
8 SFO-LAX 1 0 0 1 0 0 1 0 0 1 0 0 1 >= 1
9 SFO-DEN 0 1 0 0 1 0 0 1 0 0 1 0 1 >= 1
10 SFO-SEA 0 0 1 0 0 1 0 0 1 0 0 1 1 >= 1
11 LAX-ORD 0 0 0 1 0 0 1 0 1 1 0 1 1 >= 1
12 LAX-SFO 1 0 0 0 0 1 0 0 0 1 1 0 1 >= 1
13 ORD-DEN 0 0 0 1 1 0 0 0 1 0 0 0 1 >= 1
14 ORD-SEA 0 0 0 0 0 0 1 1 0 1 1 1 1 >= 1
15 DEN-SFO 0 1 0 1 1 0 0 0 1 0 0 0 1 >= 1
16 DEN-ORD 0 0 0 0 1 0 0 1 0 0 1 0 1 >= 1
17 SEA-SFO 0 0 1 0 0 0 1 1 0 0 0 1 1 >= 1
18 SEA-LAX 0 0 0 0 0 1 0 0 1 1 1 1 1 >= 1
19
20 Total Number
21 1 2 3 4 5 6 7 8 9 10 11 12 Sequences of Crews
22 Fly Sequence? 0 0 1 1 0 0 0 0 0 0 1 0 3 <= 3
23
24 Total Cost ($thousands) 18
Wyndor with Setup Costs
A B C D E F G
1 Wyndor Glass Co. Product-Mix Problem
2
3 Doors Windows
4 Unit Profit $300 $500
5 Hours
6 Hours Used Per Unit Produced Available
7 Plant 1 1 0 4
8 Plant 2 0 2 12
9 Plant 3 3 2 18
Suppose that two changes are made to the original Wyndor problem:
1. For each product, producing any units requires a substantial one-time
setup cost for setting up the production facilities ($700 for doors and
$1300 for windows, respectively).
2. The production runs for these products will be ended after one week, so D
and W in the original model now represent the total number of doors and
windows produced, respectively, rather than production rates. Therefore,
these two variables need to be restricted to integer values.
Graphical Solution to Original Wyndor Problem (Optional)
W
Production rate
for windows
8
Optimal solution
6 (2, 6)
Feasible P = 3,600 = 300 D+ 500 W
4 Region
0 2 4 6 8 10 D
Production rate for doors 29
Net Profit for Wyndor Problem with Setup Costs
Net Profit ($)
Number of
Units Produced Doors Windows
0 0(300) – 0 = 0 0 (500) – 0 = 0
1 1(300) – 700 = –400 1(500) – 1,300 = –800
2 2(300) – 700 = –100 2(500) – 1,300 = –300
3 3(300) – 700 = 200 3(500) – 1,300 = 200
4 4(300) – 700 = 500 4(500) – 1,300 = 700
5 Not feasible 5(500) – 1,300 = 1,200
6 Not feasible 6(500) – 1,300 = 1,700
30
Feasible Solutions for Wyndor with Setup Costs
8
Production
quantity for
windows (0, 6) gives P = 1700
6 (2, 6) gives P = -100 + 1700
= 1600
(4, 3) gives P = 500 + 200
= 700
2
(0, 0) (4, 0) gives P = 500
gives P = 0
0 2 4 6 8 D
31
Production quantity for doors
Algebraic Formulation -Wyndor
Let D = Number of doors to produce,
W = Number of windows to produce,
y1 = 1 if perform setup to produce doors; 0 otherwise,
y2 = 1 if perform setup to produce windows; 0 otherwise .
Maximize P = 300D + 500W – 700y1 – 1,300y2
subject to
Original Constraints:
Plant 1: D ≤ 4
Plant 2: 2W ≤ 12
Plant 3: 3D + 2W ≤ 18
Produce only if Setup:
Doors: D ≤ 99y1
Windows: W ≤ 99y2
and: D ≥ 0, W ≥ 0; y1, y2 = binary
Spreadsheet Model - Wyndor
B C D E F G H
3 Doors Windows
4 Unit Profit $300 $500
5 Setup Cost $700 $1,300
6
7 Hours Hours
8 Hours Used Per Unit Produced Used Available
9 Plant 1 1 0 0 <= 4
10 Plant 2 0 2 12 <= 12
11 Plant 3 3 2 12 <= 18
12
13 Doors Windows
14 Units Produced 0 6
15 <= <= Production Profit $3,000
16 Only If Setup 0 99 - Total Setup Cost $1,300
17 Setup? 0 1 Total Profit $1,700
33
Assignment
●
Review
Slides, lecture notes (incl. review questions)
●
Assignment
Problem 1 (Broadcasting Olympic Games)
Submission via Blackboard: due date (check Blackboard)
Requirement: (1) please upload a single Word file for question answers
(incl. explanation of your models and solutions) and a single Excel file
containing spreadsheets. Name them (work/spreadsheet files) properly.
(2) You may work individually or in a group of two. If you work in a group,
only one submission (via Blackboard, by a “representative”) is required.
●
Preview for next topic, “queueing models”
34