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 A1 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 A1 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 A1 ) 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 A1 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 A1 O j 1 t j d (1 L A1 ) (1 L A1 ) Ot A j Ot ( L A 1) 1 1 1 j 1 A 1 1 L A1 (1 j 1 L l 3 j (1 L A1 )(1 l A1 ) ) t j t . 2 (1 ) Manufacturer’s Ordering Decision (2) d (1 L A1 ) M t E (Y )t Ot A j ( L A 1) 1 1 j 1 A (1 L A1 ) (1 L A1 )(1 l A1 ) Ot t . 2 1 (1 ) 2 Vt Var (Yt ) (1 ) 2 2 (1 ) 2 l L2 L A1 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 A1 l L2 j 1 j l A 2 l 1 l L2 j 1 j l 2 j 2 ( 1 ) j 2 ( 1 ) l L2 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 L2 (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 Rm( n1) 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 iN (1 x ji )e ji E ( Di q ji ) max x ji e jc E x ji Di q jc iN 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 iN 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 On n ( m2 m ) / 2 Other applications? Basic patterns: square-root function + linear function Risk management? Thanks for your attendance!