linear programming (lp) an important topic of deterministic operations research agenda 1.modeling...
TRANSCRIPT
Linear Programming (LP)
An important topic of Deterministic Operations Research
Agenda
1. Modeling problems
2. Examples of models and some classical problems
3. Graphical interpretation of LP
4. Solving LP by Simplex using MS Excel
5. Some theoretical ideas behind LP and Simplex
Example 1: Product Mix Problem
Fertilizer manufacturing company, 2 types of fertilizer
Type A: high phosphorus
Type B: low phosphorus
Tons Required/ ton of Fertilizer
Item Type A Type B
Maximum amount available per day
Urea 2 1 1500
Potash 1 1 1200
Rock Phosphate 1 0 500
Net profit per ton 15 10
Product Mix Problem: Modeling
Step 1. The decision variables
Daily production of Type A: x tons
Type B: y tons
Step 2. The objective function (maximize profit)
z = 15x + 10y
Product Mix Problem: Modeling..
Step 3. The constraints
Limited supply of raw materials per day:
Urea: 2x + y ≤ 1500
Potash: x + y ≤ 1200
Rock Phosphate: x ≤ 500
Product Mix Problem: Complete model
Maximize z( x, y) = 15 x + 10y
subject to 2x + y ≤ 1500
x + y ≤ 1200
x ≤ 500
x ≥ 0,
y ≥ 0
Interesting Aspects:Linearity, Inequalities
Feasible solutions: (0, 0), (1, 1), …Infeasible solutions: (600, 500), …
Example 2. Blending Problem
Three types of petrol (minimum Octane rating: 85, 90, 95)
Four types of oils (Octane rating: 68, 86, 91, 99)
Blending oils petrol, with proportional Octane rating
Objective: best product mix [how much of each petrol, oil to sell]
Background: Petroleum Refinery
Example 2. Blending Problem, the data
Petrol Type Min OcR Selling Price Demand (barrels/day)
1 (Premium) 95 45.15 ≤ 10,000
2 (Super) 90 42.95 No limit
3 (Regular) 85 40.99 ≥ 15,000
Raw oil
OcR Available amount (barrels/day)
Cost/barrel Sale price
1 68 4000 31.02 36.85
2 86 5050 33.15 36.85
3 91 7100 36.35 38.95
4 99 4300 38.75 38.95
Blending Problem: Modeling
Step 1. The decision variables
xij = barrels/day of oil i ( i = 1, 2, 3, or 4) to make petrol j (j = 1, 2, or 3)
Total premium petrol per day = x11 + x21 + x31 + x41
Its Octane Rating:68x11 + 86x21 + 91x31 + 99x41
x11 + x21 + x31 + x41
≥ 95,
68x11 + 86x21 + 91x31 + 99x41 - 95(x11 + x21 + x31 + x41) ≥ 0.
Blending Problem: Modeling..
Step 2. The objective function
Maximize profit Maximize revenue
45.15(x11 + x21 + x31 + x41) +
42.95(x12 + x22 + x32 + x42) +
40.99(x13 + x23 + x33 + x43) +
36.85 (4000 – (x11 + x12 + x13)) +
36.85 (5050 – (x21 + x22 + x23)) +
38.95 (7100 –(x31 + x32 + x33)) +
38.95 (4300 – (x41 + x42 + x43))
super
regular
premium
Oil 1
Oil 2
Oil 3
Oil 4
Blending Problem: Modeling...
Step 3. The constraints
(a) The OcR constraints:
68x11 + 86x21 + 91x31 + 99x41 - 95(x11 + x21 + x31 + x41) ≥ 0
68x12 + 86x22 + 91x32 + 99x42 - 90(x12 + x22 + x32 + x42) ≥ 0
68x13 + 86x23 + 91x33 + 99x43 - 85(x13 + x23 + x33 + x43) ≥ 0
Blending Problem: Modeling....
Step 3. The constraints..
(b) Can’t use more oil than we have:
x11 + x12 + x13 ≤ 4000
x21 + x22 + x23 ≤ 5050
x31 + x32 + x33 ≤ 7100
x41 + x42 + x43 ≤ 4300
Blending Problem: Modeling…..
Step 3. The constraints...
(c) The demand constraints:
x11 + x21 + x31 + x41 ≤ 10,000
x13 + x23 + x33 + x43 ≥ 15,000
(d) Allowed values of variables
xij ≥ 0 for i = 1, 2, 3, 4, and j = 1, 2, 3.
Blending Problem: complete modelMaximize:
45.15(x11 + x21 + x31 + x41) + 42.95(x12 + x22 + x32 + x42) + 40.99(x13 + x23 + x33 + x43) +
36.85(4000 – (x11 + x12 + x13)) + 36.85 (5050 – (x21 + x22 + x23)) +
38.95 (7100 –(x31 + x32 + x33)) + 38.95 (4300 – (x41 + x42 + x43))
Subject to:
68x11 + 86x21 + 91x31 + 99x41 - 95(x11 + x21 + x31 + x41) ≥ 0
68x12 + 86x22 + 91x32 + 99x42 - 90(x12 + x22 + x32 + x42) ≥ 0
68x13 + 86x23 + 91x33 + 99x43 - 85(x13 + x23 + x33 + x43) ≥ 0
x11 + x12 + x13 ≤ 4000
x21 + x22 + x23 ≤ 5050
x31 + x32 + x33 ≤ 7100
x41 + x42 + x43 ≤ 4300
x11 + x21 + x31 + x41 ≤ 10,000
x13 + x23 + x33 + x43 ≥ 15,000
xij ≥ 0 for I = 1, 2, 3, 4, and j = 1, 2, 3.
Octane
rating
Supply
Demand
Example 3: Transportation problem
Background:
Company has several factories (sinks), and several suppliers (sources)
Objective: Minimize the cost of transportation
Example 3. Transportation problem, the data
transportation cost per ton
mine capacity/day
plant 1 plant 2 plant 3
Mine 1 800 11 8 2
Mine 2 300 7 5 4
daily ore requirement at each plant:
400 500 200
Transportation problem: the model
Step 1. The decision variables
xij = amount of ore shipped from mine i to plant j per day.
Step 2: The objective function
Minimize the transportation costs:
Minimize: 11x11 + 8x12 + 2x13 + 7x21 + 5x22 + 4x23
Transportation problem: the model..
Step 3. The constraints
(a) Shipment from each mine less than daily production
x11 + x12 + x13 ≤ 800 [capacity of mine 1]x21 + x22 + x23 ≤ 300 [capacity of mine 2]
(b) Demand of each plant must be met
x11 + x21 ≥ 400 [demand at plant 1]x12 + x22 ≥ 500 [demand at plant 2]x13 + x23 ≥ 200 [demand at plant 3]
(c) Decision variables can’t be negative
xij ≥ 0, for all i= 1, 2, j = 1, 2, 3.
Transportation problem: historical note
Kantorovich in USSR in the 1930’s, Koopmans in 1940’s
Dantzig in 1950’s Simplex method
Kantorovich and Koopmans, Nobel prize (Economics) in 1975
The Geometry of Linear Programs
Point in a 1D space: x = c
c0
Line in 2D: ax + by = c
2x+3y = 0
2x+3y = 3
2x+3y = 92x+3y = 6
(0,0) 1.5 3 4.5
1
2
3y
x
The Geometry of Linear Programs
Plane in 3D: ax + by + cz = d
11
1z
x
y
Planex + y + z = 1
1
1
1
z
x
y
Plane:x + y + z = 0
Plane:x + y + z = 2
The Geometry of Linear Programs
Hyper-plane in n-Dimensions: a1x1 + a2x2 + … + anxn = c ??
2-D Half spaces:
2x+3y = 6
(0,0) 1.5 3 4.5
1
2
3
y
x
2x+3y > 6
2x+3y < 6
Feasible set
The Geometry of LP: Product Mix revisited
max z( x, y) = 15 x + 10y
ST 2x + y ≤ 1500
x + y ≤ 1200
x ≤ 500
x ≥ 0,
y ≥ 0
x ≥ 0
y ≥ 0
x ≤ 500
2x+y ≤ 1500
x + y ≤ 1200(0,0)
1000
1500
500 1000 1500
500
y
x
The Geometry of LP: Product Mix revisited
max z( x, y) = 15 x + 10yST 2x + y ≤ 1500
x + y ≤ 1200
x ≤ 500
x ≥ 0,
y ≥ 0
Feasible set
x ≥ 0
y ≥ 0
x ≤ 500
2x+y ≤ 1500
x + y ≤ 1200(0,0)
1000
1500
500 1000 1500
500
y
x
Try point: x = 0, y = 0:
15x + 10y = 0
15x + 10y = 5000
15x + 10y = 13,500
(300, 900)
Summary
1. LP formulations are very common in modern industry
2. Beautiful connection between Algebra and Geometry
3. Geometry not useful for > 3 variables
4. Practical problems: 1000’s of variables (see next slide)
5. Need Algebraic method !
Some real world examples of LP
Military patient evacuation problem
The US Air Force Military Airlift Command (MAC) has a patient evacuation problem that can be modeled as an LP. They use this model to determine the flow of patients moved by air from an area of conflict to army bases and hospitals.
The objective is to minimize the time that patients are in the air transport system.
The constraints are: - all patients that need transporting must be transported - limits on the size and composition of hospitals, capacity of air fleet, air-lift points MAC have generated a series of problems based on the number of time periods (days). A 50 day problem consists of an LP with 79,000 constraints and 267,000 variables.
This LP can be solved (using a fast computer) in approximately 10 Hours
Some real world examples of LP..
Military logistics planning
The US Department of Defense Joint Chiefs of Staff have a logistics planning problem that models the feasibility of supporting military operations during a crisis. The problem is to determine if different materials (called movement requirements) can be transported overseas within strict time windows.
The LP includes capacities at embarkation and debarkation ports, capacities of the various aircraft and ships that carry the movement requirements and penalties for missing delivery dates.
A typical problem of this type may consider 15 time periods, 12 ports of embarkation, 7 ports of debarkation and 9 different types of vehicle for 20,000 movement requirements. This resulted in an LP with 20,500 constraints and 520,000 variables.
This LP can be solved in approximately 75 minutes
Some real world examples of LP...
Airline crew scheduling (American Airlines)
Within a fixed airline schedule (the schedule changing twice a year typically) each flight in the schedule can be broken down into a series of flight legs. A flight leg comprises a takeoff from a specific airport at a specific time to the subsequent landing at another airport at a specific time. For example a flight from HK Bangkok Phuket has two legs. A key point is that these flight legs may be flown by different crews. For crew scheduling, aircraft types have been pre-assigned (not all crews can fly all types). For a given aircraft type and a given time period (the schedule repeats over a 1 week period) we must ensure that all flight legs for a particular aircraft type can have a crew assigned. Note here that by crew we mean not only the pilots/flight crew but also the cabin service staff, typically these work together as a team and are kept together over a schedule.There are restrictions on how many hours the crews (pilots and others) can work. A potential crew schedule is a series of flight legs that satisfies these restrictions. All such potential crew schedules can have a cost assigned to them. Usually a crew schedule ends up with the crew returning to their home base, e.g. A-D and D-A in crew schedule 1 above. A crew schedule such as 2 above (A-B and B-C) typically includes as part of its associated cost the cost of returning the crew (as passengers) to their base. Such carrying of crew as passengers (on their own airline or on another airline) is called deadheading.
For our American Airlines problem the company has a database with 12 million potential crew schedules.
The objective is to select the combination of schedules (out of the 12 million) which shall minimize costs.
The constraints are to ensure that all flight legs have a crew assigned to them, and work restrictions are violated. One case of this problem was formulated as an LP, with 12 million variables, and 750 constraints.
[Note: a small percentage improvement of the schedule ten's of millions of dollars!]
This LP could be solved in approximately 27 minutes using a software called OSL
next: How to solve LP’s using MS Excel