Supply Chain Coordination

advertisement
A class of polynomially solvable
0-1 programming problems and
applications
Jinxing Xie (谢金星)
Department of Mathematical Sciences
Tsinghua University, Beijing 100084, China
E-mail:jxie@math.tsinghua.edu.cn
http://faculty.math.tsinghua.edu.cn/~jxie
合作者:赵先德,魏哲咏,周德明
王 淼,熊华春,邓晓雪
Outline

Background: Early Order Commitment

An Analytical Model: 0-1 Programming

A Polynomial Algorithm

Other Applications
Connect Supply With Demand:
The most important issue in
supply chain management (SCM)
SUPPLY
Information
DEMAND
Product
Cash
Supply chain optimization & coordination (SCO & SCC):
The members in a supply chain cooperate with each
other to reach the best performance of the entire chain
Supply Chain Coordination:
Dealing with Uncertainty

S
U
P
P
L
Y
Uncertainty in demand and leadtime (提前期)
Place Order
Retailer 1
Deliver Products
Manufacture or
Order from Upstream Supplier
Supplier
(Manufacturer or Wholesaler)
• Make to stock
• Make to order

Leadtime reduction: time-based competition
Retailer 2
.
.
.
Retailer 16
D
E
M
A
N
D
Supply Chain Coordination:
Dealing with Uncertainty

Information sharing – sharing real-time demand
data collected at the point-of-sales with upstream
suppliers (e.g., Lee, So and Tang (LST,2000);
Cachon and Fisher 2000; Raghunathan 2001; etc.)

Centralized forecasting mechanism – CPFR

Contract design – coordinate the chain

……
Early Order Commitment (EOC)

means that a retailer commits to purchase a
fixed-order quantity and delivery time from a
manufacturer before the real need takes place
and in advance of the leadtime. (advance
ordering/booking commitment)

is used in practice for a long time, e.g. by
Walmart

is an alternative form of supply chain
coordination (SCC)
EOC: Questions



Why should a retailer make commitment with
penalty charge?
Intuition: EOC increases a retailer’s risks of
demand uncertainty, but helps the manufacturer
reduce planning uncertainty
Our work


Simulation studies
Analytical model for a supply chain with infinite time
horizon
EOC: Simulation Studies


Zhao, Xie and Lau (IJPR2001), Zhao, Xie and Wei
(DS2002), Zhao, Xie and Zhang (SCM2002), etc.
conducted extensive simulation studies under
various operational conditions.
Findings


EOC can generate significant cost savings in some cases
Can we have an analytical model? (Zhao, Xie and
Wei (EJOR2007), Xiong, Xie and Wang
(EJOR2010), etc.)
Basic Assumptions:
Same as LST(MS, 2000)
Supplier
(Manufacturer)

Retailer
Demand
The demand is assumed to be a simple
autocorrelated AR(1) process
Dt  d  Dt 1   t


d > 0, -1<<1, and  is i.i.d. normally distributed
with mean zero and variance 2.
<< d  negative demand is negligible
Notation




L - manufacturing (supplier) leadtime
l - delivery leadtime
A
l
A - EOC period
Order
Delivery leadtime
0 <= A <= L+1
Further (techinical) assumptions:




An “alternative” source exists for the manufacturer
Backorder for the retailer
No fixed ordering cost
Information sharing between the two partners
An order and delivery flow

PT = L, DT = l, EOCT = A (decision)
Supplier
Delivery
t+EOCT t+EOCT+DT
$$
Receive Order and
Do manufacture planning
t
$
Retailer
Place Order
Receive Delivery
Production Complete
t+PT
Framework of Decision Making :
Periodic-review (at end of each period)
Time Label
t-A t-A+1
Retailer’s Demand
Retailer’s Order
t t+1
Dt
Ot-A
Ot-A+1
t+l+A+1
Dt+1
Dt+l+A+1
Ot
Manufacturer’s Demand
D’t
Manufacturer’s Order
Qt
Time Label
t+A
Ot+L-A+1
D’t+1
t t+1
D’t+A
t+A
t+L-A+1
D’t+L+1
t+L+1
Retailer’s Ordering
Decision (1)

Xt 
the total demand during periods [t+1,
t+l+A+1]
l  A 1
D
j 1
t j
l  A 1 l  A  j 1

1  l  A1
j
l  A 1
i

d
(
1


)


(
1


)
D


t  j
 


t
1    j 1
 j 1 i  0
l  A 1
l  A 1

d 

(
1


)
j
mt  E ( X t ) 
(
l

A

1
)



Dt



1  
1 
j 1

 2 l  A1
j 2
vt  Var ( X t ) 
(
1


)
2 
(1   ) j 1
Retailer’s Ordering
Decision (2)

the order-up-to level (optimal)
St  mt  k vt
1
k  (
p
h p
).
retailer’s order quantity at period t

 (1   l  A1 )
Ot  Dt  (St  St 1 )  Dt 
( Dt  Dt 1 ).
1 
Ot  i
l  A 2
i
l  A 1
i 1
1 i
1



(
1


)

d   iOt 
 t  i    l  A1 k  t  i  k 
t .
1 
1 
1 
k 1
Manufacturer’s Ordering
Decision (1)

Manufacturer’s demand for [t+1, t+L+1] is
L 1
A
Yt   Ot  A j   Ot  A j 
j 1
j 1
L  A1
O
j 1
t j
d 
 (1   L A1 )   (1   L A1 )
  Ot  A j 
Ot
( L  A  1) 

1  
1 
1 
j 1

A
1

1 
L  A1
 (1  
j 1
L l 3 j
 (1   L A1 )(1   l  A1 )
) t  j 
t .
2
(1   )
Manufacturer’s Ordering
Decision (2)
d 
 (1   L A1 ) 
M t  E (Y )t   Ot  A j 
( L  A  1) 

1  
1 
j 1

A
 (1   L A1 )
 (1   L A1 )(1   l  A1 )

Ot 
t .
2
1 
(1   )
2
Vt  Var (Yt ) 
(1   ) 2


2
(1   ) 2
l  L2
L  A1
j 2
(
1


)

j l  A 2
L  l  3 j 2
(
1


)

j 1
Manufacturer’s Ordering
Decision (3)

The order-up-to level (optimal)
Tt  M t  K Vt ,

1
K   ( H P P ).
order quantity at period t is
Qt  Ot  (Tt  Tt 1 )
 (1   L  A 1 )
 (1   L  A 1 )(1   l  A 1 )
 Ot 
(Ot  Ot 1 ) 
( t   t 1 ).
2
1 
(1   )
Cost Measures



Retailer’s average cost per period
c  [(h  p) (k )  hk ] vt  r vt
Manufacturer’s average cost per period
C  [( H  P) ( K )  HK ] Vt  R Vt
total cost of the supply chain
SC ( A)  c  C  r vt  R Vt

Normal Loss Function  ( x)   ( z  x)d( z).
x
Supply Chain’s Relative Cost
Saving
r
(h  p) (k )  hk
“Cost Ratio”

SC ( A)  SC (0)
SC ( A) 
 1
SC (0)
SC ( A)  0

1

  
 
R



( H  P) ( K )  HK
l  A1
l  L2
j 1
j l  A 2
l 1
l  L2
j 1
j l  2
j 2
(
1


) 

j 2
(
1


) 

l  L2
j 2
(
1


) 2

j l  2
j 2
(
1


)

j 2
(
1


)

l 1
j 2
(
1


)

j 1
 Critical condition when EOC is beneficial
How ∆SC changes with A?
 Theorem. ∆SC decreases at first and then
increases as A increases from 0 to L+1.
 Corollary. The optimal A* = 0 or L+1.
Managerial implications
-- Either do not use EOC policy (make to stock) or
use the largest possible EOC periods (make to order)
Performance of EOC: Example
(τ=1.0, l=6, L=12, =0.5)
Effect of EOC Period on the Percentage Cost Savings
Per cent age Cost Savi ngs ( %)
80
60
40
Suppl y Chai n
Ret ai l er
20
Manuf act ur er
0
-20
- 40
0
1
2
3
4
5
6
7
EOC Per i od
8
9
10
11
12
13
Note on τ: usually, τ  1
r
(h  p) (k )  hk
 
R ( H  P) ( K )  HK
Observation. (H+P)η(x)+Hx is convex in x and its
minimum is achieved at K
Usually: h  H, p  P(h+p)η(k)+hk  (H+P)η(K)+HK
 under most situations in practice, cost ratio τ  1
How τ, l, L influence the
performance of EOC?
1

  
 
l  L2
 (1  
j l  2
) 2
j 2
l 1
 (1  
j 2
) .
j 1
 Proposition 1. When τ 1, EOC is always beneficial.
 Proposition 2. When τ>1, as r increases, the critical
condition is getting difficult to hold.
 Proposition 3. When τ>1, as L increases, the critical
condition is getting difficult to hold.
 l 2 
2
m 2  1  (m 2  1)  L 1
 Proposition 4. When τ>1 and 0    1 ,
as l increases, (LHS – RHS) of the critical condition inequality
increases at first and then decreases.
EOC: Multiple retailers

i=1, 2, …, n:
Dit  d i   i Di ,t 1   i ,t
EOC: 0-1 programming

Similar to previous analysis:
 i 

SC ( x1 , x2 ,..., xn )  R  
i 1  1   i 
n

i=1, 2, …, n:
 iR 

ai  
 1  i 
r
bi  i i
1  i




r
C i i
i 1 1   i
n
2
2
i
(
1


)

r


i
i
1  i
j l  x  2
i 1
i
j 2

(1   i )   (1   i ) 


j 1
j 1

j 2
li 1
 (1  
j 2
i
)
li 1
j 2
j 1
yi  xi L  1
1
2
n


Min f ( y )    ai 1  yi    bi yi  C
i 1
 i 1

n
j li  2
j 2
(
1


 i)
i
xi=0,or xi=L+1
 (1  ij ) 2
li  xi 1
n
li  L  2
L li  2
j 1
li  L  2
s.t.
yi  0,1 i  1,2,..., n
EOC: 0-1 programming
1
2
n


Min f ( y )    ai 1  yi    bi yi  C
i 1
 i 1

n
s.t.

Theorem
yi  0,1 i  1,2,..., n
ai  0
bi  0
EOC: Algorithm

算法:
 
O n2
EOC: generations

From 2-stage to more stages
Other applications

Single period problem: commonality decision in a
multi-product multi-stage assembly line
m
m-1
......
j
......
1
i=1
Di
......
Cmi
Cm-1,i
Cji
C1i
i=n
i   i
m
Stage

Component
Base-assembly
End Product
pi   cij
j 1
For each stage j: commonality Cjc with c jc  c ji
Commonality decision

Assumptions: salvage=0; stockout not permitted



Turn to spot market: the purchasing cost of the
component Cji is eji (i=1,2,…,n,c ; j= m,m-1,…,1)
assume ejc ≥ eji > cji (i=1,2,…,n; j= m,m-1,…,1)
Decisions:

Whether dedicated component Cji should be replaced
by the common components Cjc

mn
x  x11, x12 , x1n , x21, , x2n ,, xm1 ,, xmn  0, 1 

Inventory levels for all components Cji (i=1,2,…,n,c ;
j= m,m-1,…,1)

q  q11, q21 , qm1, q12, , qm2 ,, q1n ,, qmn , q1c ,, qmc  Rm( n1)
Commonality decision

Objective function (expected profit)
n
m
n
m


 ( x , q )   pi i   (1  x ji )c ji q ji   max x ji c jc q jc
i 1
j 1 i 1
j 1

iN



 (1  x ji )e ji E ( Di  q ji )    max x ji e jc E   x ji Di  q jc 
iN
j 1 i 1
j 1
 i 1

m
n
m
n

m




   pi   (1  x ji )c ji  x ji c jc   i
i 1 
j 1

n
m
n
 (1  x ji ) (e ji  c ji ) E ( Di  q ji )   c ji E (q ji  Di )  
j 1 i 1
m

 max x ji
j 1
iN



n
n




 
 e jc  c jc  E   x ji Di  q jc   c jc E  q jc   x ji Di   ,
i 1
 i 1


 

Commonality decision

Denote
1
R(u ) 
2


u


( w  u ) exp  w2 2 dw
 e ji  c ji 

z ji   
 e

ji


1
K ji  c ji z ji  e ji R( z ji )

Proposition. Suppose that the component commonality
decision is given, then

 
*
*
*
*
*
q * ( x )  q11
, q21
, qm* 1 , q12
, qm* 2 ,, q1*n ,, qmn
, q1*c ,, qmc
q  i  z ji i (1  x ji )
n
q   x ji i  z jc
*
ji
m 

 * 

 ( x ) :  x , q ( x )    0   K jc
j 1 

*
i 1
n
x 
i 1
ji
2
i


x


x
K


x
(
c

c
)




ji
ji
ji i
ji
jc
ji
i

i 1
i 1
i 1

n
m
m





 0    pi   c ji  i   K ji i 

i 1 
j 1
j 1



n
*
jc

n
2
i
n
Two different cases

Case (a) (Component commonality):


The component commonality decisions in a stage are
independent of those in other stages.
Case (b) (Differentiation postponement):

The dedicated component Cji can be replaced by the
common component Cjc only if the dedicated
components Cj+1,i , Cj+2,i ,…,Cmi are replaced by Cj+1,c ,
Cj+2,c ,…,Cmc (i.e., xki  x ji , for any k  j and
i=1,2,…,n).
Case (a)

0-1 Programming
m
min f ( x )  {K jc
x
j 1
n
n
x  x
i 1
ji
2
i
i 1
n
ji
K ji i   x ji (c jc  c ji ) i }
i 1

mn
x  x11, x12 , x1n , x21, , x2 n ,, xm1 ,, xmn  0, 1 
which can be decoupled into m sub-problems (for j )
2
 In an optimal solution: b ji : K ji i  (c jc  c ji ) i  ( K jc i )
Case (a)

rji be the ranking position of bji
among {bj1, bj2, … , bjn}
O(mn2)
Case (b)

0-1 programming
m 


min
f
(
x
)

K jc


x
j 1 



x


x
K


x
(
c

c
)




ji
ji
ji i
ji
jc
ji
i

i 1
i 1
i 1

n
n
n
2
i

mn
x  x11, x21 , xm1 , x12, , xm 2 , , x1n , , xmn  0, 1 
xli  xki , for any l  k and i  1,2,, n


Enumeration method:
O(m  1) 
An algorithm with complexity On
n
( m2 m ) / 2

Other applications?


Basic patterns: square-root function
+ linear function
Risk management?
Thanks for your attendance!
Download