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,
iA 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 j1
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
j1
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 j1
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
j1
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
j1
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 j1
ij
m
Production
Planning
Horizon
i
i
j)) Minimize
m 1
C
j1
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!
© Copyright 2026 Paperzz