Lead Time and Price Quotation Management with Asymmetric

Production and Transportation Integration for a
Make-to-Order Manufacturing Company with a
Commit-to-Delivery Business Mode
Kathryn E. Stecke
Xuying Zhao
University of Texas at Dallas
Texas A&M
Monday, Feb 27, 2006
Outline







Problem and motivation
Literature review
Problem settings
Analysis when partial delivery is allowed
Analysis when partial delivery is not allowed
Extensions
Conclusions
Ship and Delivery Dates
 Ship date: the date when a manufacturing
company gives products to a logistics company to
deliver to a customer.
 Delivery date: the date when the logistics company
delivers products to a customer.
Two Business Modes
 Commit-to-ship
the manufacturing company commits a ship date
for an order.
Customers pre-specify a shipping mode, e.g.,
overnight shipping.
 Commit-to-delivery
the manufacturing company commits a delivery
date for an order.
The ship mode can be decided dynamically by
the company.
Commit-to-ship at Dell
Profit increase opportunity in Dell
 Dell ships 95% of customer orders within eight hours.
 Based on this fact, Dell could increase profit by
adopting commit-to-delivery.
For example:
 Customers pay $450 for a computer and $160 for overnight
shipping.
 Dell gets $450 in commit-to-ship.
Dell promises a 5-days-later ship date. The logistics
company gets $160.
 Dell gets $510 in commit-to-delivery.
Dell could ship the order within eight hours by adjusting
the production schedule. Then a slow ship mode can be
adopted. The logistics company gets $100. Dell gets
$450+$60.
 Profit increases over 10%.
Problem Description
 Production schedule is important when adopting a
commit-to-delivery mode.
A good production schedule saves shipping costs.
A bad production schedule incurs expediting costs.
 How to schedule production for accepted orders so
that
All orders meet their delivery due dates.
The total shipping cost is reduced as much as possible.
Literature Review
Our research is related to two literature streams:
1. Production scheduling
 Pinedo (2000), …
2. Integration between transportation and production
 Bhatnagar, Chandra, and Goyal (1993), Thomas
and Griffin (1996), and Sarmiento and Nagi (1999),
Chen and Vairaktarakis (2005)
Production Environment
 Finished products are assembled from partlyfinished products and customized components.
 Differences among orders exist in different
models/types of components.
 Switching production from one order to another
order rarely incurs any extra production costs.
Production Schedule Setting
 We specify the production schedule for n new, just
arrived orders with delivery due dates.
 A manufacturer can wait for customer orders to
accumulate as long as its master production
schedule is not empty.
 The schedule for the n new orders will be added to
the end of the current master production schedule.
Transportation Setting
 Outsourced to a third party logistics company, e.g.,
FedEx
 The logistics company comes to collect products at the
end of each day.
Shipping Cost Setting
Shipping Cost Setting
 The shipping cost is a general function of shipping
time and the quantity of computers shipped.
 From the table in the previous slide, shipping cost is
convex decreasing in shipping time.
 From the table in the previous slide, shipping cost is
linearly increasing with shipping weight.
 Since all computers’ weights are similar, shipping cost
is linearly increasing with the quantity of computers
shipped.
Problem Settings Summary
 Orders
There are n orders to be scheduled for production;
Each order Oi has a production due date di and requires
quantity Qi.
 Production
The production planning horizon is m days
Daily production capacity is c products
Single machine or a paced assembly line
 Transportation
Outsourced to a third party logistics company, e.g., FedEx
The logistics company comes to collect products at the
end of each day.
Table of Notation
c Daily production capacity (in number of products)
m Number of production days in the planning
horizon
Qi Number of products required in order i
di Production due date for order i; di ≤ m
ti Ship date for order i; ti ≤ m
ri Ship mode for order i; ri = di- ti
Process Timeline
r1=1
r1=0
O1
O1
0
1
t1=1
d1
2
3
…
Production
m Planning
Horizon
t1=2
Ship cost for one order i: G(ri, Qi), convex decreasing with ri
and linearly increasing with Qi
Feasibility Condition
 Q  cj,
iA j
where
i
j  1,..., m
A j  {i | di  j}
denotes a set of orders having a production due date
on or before production day j in the planning horizon.
When Partial Delivery is Allowed
Quantity produced in day j for order i
MIP-PD:
n
Minimize
di
 G(d
i 1 j1
subject to
i
 j, Q ij )
Q
ij
 Qi ,
Ship date is the same as
the production date
Order i is produced
i  1,..., n
before its due date
Q
ij
 c,
j  1,..., m
di
j1
n
i 1
Q ij  0,
Q ij is integer,
i  [1, n]; j  [1, m]
i  [1, n]; j  [1, m]
Daily production
capacity constraint
When Partial Delivery is Allowed
 MIP-PD
 Totally unimodular
 ILOG CPLEX
 Algorithm
Nonpreemptive Earliest Due Date Schedule
(NEDD) : orders are sorted according to earliest
due date first and processed nonpreemptively and
continuously without idle time.
Production
…
O1
O2
O3 O4 O5
0
1
d1=1
2
d2=d3=2
3 …
d 4= d 5= 3
Planning
m Horizon
When Partial Delivery is Not Allowed
Yij=1 means that the last product
in order i is produced in day j.
MIP-NPD:
n
Minimize
m
 Y G(d
i 1 j1
ij
i
 j, Q i )
subject to
n
X
ik
 1,
i  1,..., n
X
ik
 1,
k  1,..., n
k 1
n
i 1
m
Y
j1
ij
f0  0
 1,
i  1,..., n
The ship date is the last
product’s production date.
When Partial Delivery is Not Allowed
n
f k  f k 1 
Q X
i 1
i
c
'
f k  f i  MZ ik ,
X ik  1  Zik ,
m
f   jYij ,
'
i
j1
ik
, k  1,..., n
k, i  1,..., n
k, i  1,..., n
i  1,..., n
f  di ,
i  1,..., n
X ik , Yij , Zik  {0, 1} j  [1, m], k & i  [1, n]
M is a large positive number
'
i
When Partial Delivery is Not Allowed
Cj: number of products which are produced in day j
but shipped in day j+1 or later.
C1=150
O1
C2=160
O2
(100) (150) (90)
1
0
(100)
n
Minimize
…
…
O3
(160) (100)
2
(150+90)
m
 Y Q (b  a(d
i 1 j1
ij
m
Production
Planning
Horizon
i
i
 j))  Minimize
m 1
C
j1
j
When Partial Delivery is Not Allowed
 Algorithm NPD: try to reduce each Cj as much as
possible.
Get an initial feasible schedule by NEDD.
Start reducing Cm-1 by producing smaller orders first.
Cm-1
O5
O5
Cm-1
O1
O3
O1
Day m-1
O2 O3
O2
Reduce each Cj the same way.
The algorithm stops when C1 is reduced.
O4
O4
Day m
Algorithm Performance When n=5 and m=5
Optimal
Solution
CPU
Time
(Seconds)
Heuristic
Algorithm NPD
CPU
Time
(Seconds)
Gap
1
3876.61
0.04
3876.61
0.03
0.00%
2
3464.25
0.03
3464.25
0.03
0.00%
3
2263.46
0.16
2263.46
0.05
0.00%
4
1939.83
0.05
1939.83
0.03
0.00%
5
3872.58
0.64
3872.58
0.04
0.00%
6
3623.87
0.03
3623.87
0.03
0.00%
7
1927.18
0.03
1927.18
0.02
0.00%
8
1875.28
0.02
1875.28
0.02
0.00%
9
2446.02
0.25
2446.02
0.03
0.00%
10
1792.73
0.02
1792.73
0.02
0.00%
Algorithm Performance When n=8 and m=8
Optimal
Solution
CPU
Time
(Seconds)
Heuristic
Algorithm NPD
CPU
Time
(Seconds)
Gap
1
8037.38
50
8075.96
0.03
0.48%
2
3907.34
46
3907.34
0.04
0.00%
3
2890.97
74
2971.63
0.03
2.79%
4
9078.63
20
9078.63
0.09
0.00%
5
4739.02
40
4739.02
0.03
0.00%
6
8439.89
16
8439.89
0.06
0.00%
7
2890.73
11
2890.73
0.08
0.00%
8
3878.27
9
3878.27
0.05
0.00%
9
2382.08
14
2387.80
0.07
0.24%
10
6793.45
54
6793.45
0.09
0.00%
Performance of Lower Bounds When n=5 and m=5
Optimal CPU LP_relaxation CPU
Gap
PD_relaxation CPU
GAP
1
3876.61
0.04
2790.00
0.03
28.03%
3557.56
0.03
8.23%
2
3464.25
0.03
2969.21
0.03
14.29%
3285.49
0.02
5.16%
3
2263.46
0.16
1802.39
0.07
20.37%
2062.01
0.05
8.90%
4
1939.83
0.05
1847.05
0.04
4.78%
1939.83
0.03
0.00%
5
3872.58
0.64
3357.91
0.08
13.29%
3852.44
0.06
0.52%
6
3623.87
0.03
2666.44
0.02
26.42%
3617.71
0.02
0.17%
7
1927.18
0.03
1766.65
0.02
8.33%
1902.70
0.03
1.27%
8
1875.28
0.02
1179.74
0.02
37.09%
1800.08
0.02
4.01%
9
2446.02
0.25
1584.78
0.05
35.21%
2358.21
0.04
3.59%
10
1792.73
0.02
1662.58
0.02
7.26%
1792.73
0.02
0.00%
Performance of Lower Bounds When n=8 and m=8
Optimal CPU
LP_relaxation CPU
Gap
PD_relaxation CPU
Gap
1
8037.38
50
5373.79
0.45
33.14%
8012.46
0.37
0.31%
2
3907.34
46
2874.24
0.18
26.44%
3706.50
0.14
5.14%
3
2890.97
74
2157.24
0.52
25.38%
2866.11
0.47
0.86%
4
9078.63
20
5905.65
0.91
34.95%
8689.16
0.72
4.29%
5
4739.02
40
4173.18
0.15
11.94%
4718.64
0.11
0.43%
6
8439.89
16
7764.70
0.60
8.00%
8437.36
0.36
0.03%
7
2890.73
11
2620.16
0.43
9.36%
2882.93
0.29
0.27%
8
3878.27
9
3530.78
0.76
8.96%
3867.41
0.47
0.28%
9
2382.08
14
2010.00
0.29
15.62%
2364.93
0.21
0.72%
10
6793.45
54
4762.89
0.82
29.89%
6652.15
0.30
2.08%
Algorithm Performance When n=500 and m=15
PD_
CPU Time
Heuristic
CPU Time
relaxation (Seconds) Algorithm NPD (Seconds)
Gap
1
736792.20
27
734434.46
0.05
0.32%
2
1097625.86
64
1097406.33
0.07
0.02%
3
862985.47
71
862381.38
0.15
0.07%
4
973284.03
64
972992.04
0.07
0.03%
5
1198024.59
98
1190477.04
0.14
0.63%
6
794362.87
44
792059.22
0.14
0.29%
7
1083242.39
90
1082700.77
0.06
0.05%
8
1175462.73
52
1174169.72
0.18
0.11%
9
927816.42
77
925404.10
0.21
0.26%
10
892542.15
58
885848.08
0.09
0.75%
Extensions
 Considering customer locations in the shipping
cost function
 Considering quantity discounts in the shipping cost
function
Shipping Cost Varies with Customer Locations
Considering Customer Locations in Models
 When partial delivery is allowed.
 When partial delivery is not allowed
Considering Quantity Discounts
 Some 3PL companies offer quantity discounts
when multiple items are sent in a batch.
 When partial delivery is allowed, there exists a
tradeoff.
 We propose another MIP to consider this tradeoff
O1
0
(150)
1
(0)
(150)
(150)
2
(300)
(150)
…
…
m
Conclusions
 We analyzed a production and transportation integration
problem for make-to-order industries.
 When partial delivery is allowed, NEDD provides the
optimal production schedule.
 Mixed integer programming model: MIP-PD
 Totally unimodular
 ILOG CPLEX
 When partial delivery is not allowed, an effective and
efficient heuristic algorithm is provided.
 Mixed integer programming model: MIP-NPD
 Heuristic algorithm NPD
Thank You!