162 American Scientific Research Journal for Engineering, Technology, and Sciences (ASRJETS) ISSN (Print) 2313-4410, ISSN (Online) 2313-4402 © Global Society of Scientific Research and Researchers http://asrjetsjournal.org/ Using Lingo to Optimize the Supply Network Cost Gamal Nawaraa, Mohamed Mansourb, Ghada Mohamedc* aEmail: Schultraeger@europaschulekairo.com bEmail: Mamansour68@yahoo.com cEmail: ghadayousf22@yahoo.com Abstract This paper concerns the supply network cost as an optimization problem to decide its production strategy. The network consists of some nodes and arcs to represent the Bill of Materials of a finished product. Raw materials, subassemblies, and final assembly are a three-level supply network with a deterministic production lead time to assemble the finished product. The two options of production strategy are Make-to-Stock or Make-to-Order. The objective function is the minimization of supply network cost according to the selected strategy. To solve this problem, Lingo is used which is developed by Lindo system. A binary linear programming is developed by Lingo to decide the production strategy for each node in supply network with a minimum cost. The constraints are the delivery time which must be satisfied, and the limited capacity. A numerical example is conducted to show the result of the Lingo model. Keywords: Make-to-Stock; Make-to-Order; Hybrid; Critical Path Method; Supply network cost. 1. Introduction The supply network consists of all parties involved, directly or indirectly, in fulfilling a customer request. Make- to-stock “MTS” and Make-to-order “MTO” are two kinds of the production strategies. Some decisions techniques were developed previously to select the best strategy from the above ones. Hybrid strategy (MTS- MTO) this is a combination between the two strategies “MTS” strategy and “MTO” strategy. The mathematical model-based approaches solved to minimize the manufacturing related costs to satisfy the customer response time. Such as the author of [1] who considered a model such that the objective function minimizes the sum of inventory holding cost and the product/process redesign cost subject to a service-level constraint. ------------------------------------------------------------------------ * Corresponding author. http://asrjetsjournal.org/ American Scientific Research Journal for Engineering, Technology, and Sciences (ASRJETS) (2017) Volume 37, No 1, pp 162-177 163 It is solved by queuing theory. The author of [2] proposed a mathematical model with minimization of supply chain cost which is the sum of setup, inventory, stock-out and assets specificity cost subject to the delivery time constraint required by the customer. The supply network cost and the expected customer delivery time are the most important criteria for managers to evaluate and manage the performance of supply chain as the author of [3] stated. The supply network cost is combining the physical cost and marketability cost. Physical cost includes all setup costs of production and storage. Marketability cost includes all stock-out and asset specificity costs as the author of [4] defined. 2. The problem formulation and the model The proposed model decides the strategy as "MTS" strategy or "MTO" strategy for every component in the supply network as the purchasing strategy of raw materials, the manufacturing strategy, and the delivery strategy of the finished product. The supply network total cost is compared for Pure "MTS" strategy and Pure "MTO" strategy. The minimum cost strategy for each component defining the decision variable.The supply network total cost is defined as the sum of the setup cost, the transportation cost of raw materials from external suppliers to the entire manufacturing facility, the component cost, the storage cost, and the stock-out cost. The supply network cost = Setup cost +Transportation cost+ Component cost + Storage cost +Stock-out cost. 2.1. The Supply network of BOM Any product has its Bill of Materials, “BOM”, which can be presented by a directed network. The network consists of nodes (components) and arrows that connect the nodes. Nodes at every stage define the activities of the supply network such as the procurement, the manufacturing, and the delivery. To calculate the production lead time of the supply network, the critical path method is used as in [5], so all the nodes are linked with a dummy node (S) by dash lines and terminate with a node (E). So finally, the network is represented by a single source (S) and a single terminal node (E) as shown in numerical example Figure 1. 2.2. The Assumption of model • The expected demand for the finished product per period is assumed to be normally distributed with a mean and a standard deviation. • Each component in the supply network has a deterministic production lead time. But it is neglected for a “MTS” component, as the customer demand is satisfied from the on-hand inventory. • The production lead time of the supply network is calculated as the critical path from the start node to the termination node as the longest path. • The order quantity (lot size) must be within the limit of the production capacity and if the customer demand excesses it, an infeasible case is obtained. American Scientific Research Journal for Engineering, Technology, and Sciences (ASRJETS) (2017) Volume 37, No 1, pp 162-177 164 2.3. Notations Table 1 indicates the notations for the model. Table 1: Notations Symbol Description 𝑁𝑁 Number of components 𝑖𝑖 Component index, 𝑖𝑖 ∈ 𝑁𝑁 𝐷𝐷(𝜇𝜇,𝜎𝜎) Normal distribution demand of the finished product per period 𝜇𝜇 The average demand of the finished product per period 𝜎𝜎 The standard deviation of demand of the finished product per period 𝑟𝑟𝑖𝑖 The number of units needed for component i to form one unit of its parent 𝜇𝜇𝑖𝑖 The average demand of component i per period 𝜎𝜎𝑖𝑖 The standard deviation of demand of component i per period 𝐿𝐿𝑖𝑖 The production lead time of component i 𝐾𝐾𝑖𝑖 The fixed setup/ordering cost of component i per period per order 𝑇𝑇𝑖𝑖 The fixed transportation cost of component i per period per order 𝑣𝑣𝑖𝑖 The unit price of component i 𝐶𝐶𝑖𝑖 The procurement cost of component i per order 𝑄𝑄 The production lot size of the finished product per period 𝑄𝑄𝑖𝑖 The order quantity of component i per period 𝐶𝐶𝐶𝐶𝐶𝐶 The production capacity of the manufacturing system per period ℎ𝑖𝑖 The unit holding cost of component i per period 𝐻𝐻𝑖𝑖 The total holding cost of the excess inventory of component i at the end of the period 𝐼𝐼𝑖𝑖 The on-hand inventory of component i, at the start of period 𝑆𝑆𝑆𝑆𝑖𝑖 The safety stock of component i per period, 𝑆𝑆𝑆𝑆i = ziσL𝑖𝑖 [6] 𝑧𝑧𝑖𝑖 The safety factor of component i, with 𝐹𝐹(𝑧𝑧𝑖𝑖 ) = 1 − (ℎ𝑖𝑖 𝑄𝑄𝑖𝑖) (𝑝𝑝𝑖𝑖 𝜇𝜇𝑖𝑖 ) ,𝐹𝐹(𝑧𝑧𝑖𝑖 )is the cumulative standard function [7] 𝑝𝑝𝑖𝑖 The unit backorder cost of component i 𝜇𝜇𝐿𝐿𝑖𝑖 The average demand of component i, during its production lead time 𝜎𝜎𝐿𝐿𝑖𝑖 The standard deviation of demand of component i, during its production lead time 𝑑𝑑 The number of increment units of the period 𝐸𝐸𝐸𝐸𝑖𝑖 The expected excess of inventory of component i, at the end of the period 𝐸𝐸𝐸𝐸𝑖𝑖 The expected shortage of inventory of component i, at the end of the period 𝐺𝐺(𝑧𝑧𝑞𝑞𝑖𝑖) The unit normal loss function 𝑧𝑧𝑞𝑞𝑖𝑖 The difference between the on-hand inventory and the customer demand divided by the standard deviation of it 𝑆𝑆𝑖𝑖 The total stockout cost of the shortage inventory of component i, at the end of the period 𝑞𝑞 The customer demand for the finished product with the probability distribution function f(q) 𝑞𝑞𝑖𝑖 The relevant demand for component i with the probability distribution function, 𝑞𝑞𝑖𝑖 = 𝑟𝑟𝑖𝑖 𝑞𝑞 𝐷𝐷𝑇𝑇 The delivery time, the time from placing an order until receiving it 𝑥𝑥𝑖𝑖 The decision binary variable for component i, where xi = 0 for “MTS” component, xi = 1 for “MTO” component �⃗�𝑋 𝑇𝑇𝐶𝐶��⃗�𝑋� The string variable that is composed of all the decision variables of supply network The supply network total cost according to the selected binary variables 2.4. The mathematical model 𝑀𝑀𝑖𝑖𝑀𝑀.𝑇𝑇𝐶𝐶(�⃗�𝑋) = ∑ 𝑁𝑁 𝑖𝑖=1 (𝐾𝐾𝑖𝑖 + 𝑇𝑇𝑖𝑖 + 𝑣𝑣𝑖𝑖𝑄𝑄𝑖𝑖 + ℎ𝑖𝑖𝐸𝐸𝐸𝐸𝑖𝑖 + 𝑝𝑝𝑖𝑖𝐸𝐸𝐸𝐸𝑖𝑖)(1 − 𝑥𝑥𝑖𝑖) + (𝐾𝐾𝑖𝑖 + 𝑇𝑇𝑖𝑖 + 𝑣𝑣𝑖𝑖𝑞𝑞𝑖𝑖)𝑥𝑥𝑖𝑖 (1) American Scientific Research Journal for Engineering, Technology, and Sciences (ASRJETS) (2017) Volume 37, No 1, pp 162-177 165 Subject to 𝐿𝐿𝑖𝑖−1𝑥𝑥𝑖𝑖−1 + 𝐿𝐿𝑖𝑖𝑥𝑥𝑖𝑖 + 𝐿𝐿𝑖𝑖+1𝑥𝑥𝑖𝑖+1 ≤ 𝐷𝐷𝑇𝑇 (2) 𝑞𝑞𝑖𝑖𝑥𝑥𝑖𝑖 ≤ 𝐼𝐼𝑖𝑖−1 𝑟𝑟𝑖𝑖−1 (3) 𝑞𝑞 ≤ 𝐶𝐶𝐶𝐶𝐶𝐶 (4) 𝑥𝑥𝑖𝑖−1 ≤ 𝑥𝑥𝑖𝑖 (5) 𝑥𝑥𝑖𝑖 ∈ {0,1} (6) The supply network total cost, Equation (1) is minimizing according to the selected strategy for each component in the supply network, to satisfy the customer demand with the delivery time for a limited production capacity. Equation (2) is satisfying the delivery time which must be more than or equal to the production lead time of the supply network , PT(X��⃗ ). It is computed by adding Lixi (the production lead time for component 𝑖𝑖) plus Li−1xi−1 (the production lead time of its predecessor component), and Li+1xi+1 (the production lead time of its successor component) and it must be less than or equal to the delivery time DT. Equation (3) ensures that the on-hand inventory of the component’s predecessor divided by the number of units needed for it to form one assembled unit must be equal or more than the component’s customer demand. Equation (4) ensures that the customer demand must be less than or equal to the production capacity, so if it is more than the production capacity, the “MTO” strategy is not feasible, and the “MTS” strategy is applied. Equation (5) ensures that the decision variable of every component 𝑥𝑥𝑖𝑖 must be more than or equal to the decision variable of its predecessor component xi−1 , so if the subassembly/final assembly is “MTO”, so its children components (all its predecessors) may be “MTS” or “MTO” but the vice-versa isn’t correct. Equation (6) is the binary constraint of the decision variable for every component in the supply network. 3. Solution of the model To solve the model and have the minimum cost, the Lingo programming language is implemented. Lingo optimization modeling software is a tool for building and solving mathematical optimization models. 3.1. The basic syntax of Lingo mathematical modeling Table 2 below indicates the code of Lingo according to different nomenclature in the mathematical model. 3.2. The Structure of the Lingo model The Lingo model consists of two main sections, SETS, DATA. Typically, when dealing with a model’s data, you need to assign set members to sets and give values to some set attributes before LINGO can solve your model. For this purpose, LINGO gives the user three optional sections, the data section for inputting set American Scientific Research Journal for Engineering, Technology, and Sciences (ASRJETS) (2017) Volume 37, No 1, pp 162-177 166 members and data values, the init section for setting the starting values for decision variables, and the calc section for performing computations on raw input data as in [8]. Sets are defined in an optional section of a LINGO model called the sets section. Before you use sets in a LINGO model, you have to define them in the sets section of the model. The sets section begins with the keyword SETS: (including the colon) and ends with the keyword ENDSETS. The data section begins with the keyword DATA: (including the colon) and ends with the keyword ENDDATA. In the data section, you can have statements to initialize set members and/or the attributes of the sets you instantiated in a previous sets section. Set looping functions allow you to iterate through all the members of a set to perform some operation. There are currently four set looping functions in LINGO. The names of the functions and their uses are shown in Table 3. Table 2: The basic syntax of Lingo Nomenclature Lingo Syntax Minimum Min= ≤ #LE# ≥ #GE# < #LT# > #GT# ≠ #NE# Table 3: The lopping functions of Lingo Function Use @For Used to generate constraints over members of a set @Sum Computes the sum of an expression over all members of a set @Min Computes the minimum of an expression over all members of a set @Max Computes the maximum of an expression over all members of a set 3.3. Implementation of Lingo model 3.3.1. The input data The @OLE function is used to move data and solutions back and forth from Excel using OLE-based transfers. The @OLE function is used in the Sets section to retrieve Set members from Excel, or in the Data, section to import data and/or export solutions. American Scientific Research Journal for Engineering, Technology, and Sciences (ASRJETS) (2017) Volume 37, No 1, pp 162-177 167 The @PSL is the unit normal linear loss function. @PSL( Z) is the expected amount that demand exceeds a certain level if demand has a standard normal distribution. 3.3.2. The model Keys of parameters in the model:- M: the number of raw materials Numberofsub: the number of subassemblies Child, Parent2, and Parent1 for raw materials, subassemblies, final assembly. Xchild, xparent2,xparent1 are the decisions variables for raw materials, subassemblies, and final assembly. The code of Lingo DATA: !m is raw materials number; m=9; numberofsub=4; !z is safety factor; !limited production capacity of subassemblies, and final assembly per period; !demand per month; demand=?; capacity=?; delivery_time=?; ENDDATA SETS: Child/1..M/: mean_of_demand1,standardDEVdemand,Standard_devofDemand,SHORTAGE,EXCESS,LTaveragedemandchi American Scientific Research Journal for Engineering, Technology, and Sciences (ASRJETS) (2017) Volume 37, No 1, pp 162-177 168 ld,LTstandarddemandchild,Z,itemcost,backorder,transportcost,leadtime,holdingcost,orderingcost,reorderpoint,sa fety_stock,demandchild,averagedemandchild,availablequantity,orderedquantitychild,totalholdingtime, mtschild,mtochild,xchild; Parenttwo/1..numberofsub/: mean_of_demand2,standardDEVdemand2,Standard_devofDemand2,SHORTAGE2,EXCESS2,LTaveragedema ndparenttwo,LTstandarddemandparenttwo,Z2,minavialablequantity,backorder2,leadtime2,relalength,orderingco st2,holdingcost2,reorderpoint2, safety_stock2,averagedemandparenttwo,demandparenttwo,availablequantity2,orderedquantityP2,xParent2,p2mt scost,p2mtocost; Parentone/1/: SHORTAGE1,EXCESS1,Z1,minavailablequantity1,backorder3,leadtime3,orderingcost3,holding_cost3,transpor t_cost3,orderedquantity,reorderpoint3,criticalpath,safety_stock1,PMTSCOST,pmtocost,xparent1,availablequanti ty1; Parenttwo_Parentone(parenttwo,parentone):quantity; Child_Parenttwo(child,parenttwo):DEMANDRQ,sub_raw1; ENDSETS DATA: mean_of_demand=1600; standard_deviation_of_demand=25; !THE EXPECTED DEMAND INFORMATION; AVERAGEDEMAND=2000; STANDARDDEVIATIONOFDEMAND=50; ! THE INPUT DATA FROM EXCEL; backorder3,backorder2,itemcost,backorder,leadtime,holdingcost,orderingcost,transportcost,quantity,DEMAND RQ,orderingcost2,holdingcost2,sub_raw1, holding_cost3,orderingcost3,leadtime2,leadtime=@ole(newone433.xlsx); American Scientific Research Journal for Engineering, Technology, and Sciences (ASRJETS) (2017) Volume 37, No 1, pp 162-177 169 !THE OUTPUT SOLUTION TO EXCEL; @ole(NEWONE433.xlsx)=PMTSCOST,PMTOCOST,mtschild,mtochild,p2MTSCOST, P2MTOCOST,xchild,xparent2,xparent1; END DATA ! THE CALCULATIONS; orderedquantity(1)=averagedemand; ! calculations of optimum ordered quantity of raw materials; @For(child(k):orderedquantitychild(k)= @Sum(child_parenttwo(k,j): orderedquantity(1)*quantity(j,1)*DEMANDRQ(k,j))); ! calculations of optimum ordered quantity of subassemblies; @For(parenttwo(j):orderedquantityP2(j)= @Sum(parenttwo_Parentone(j,i): orderedquantity(1)*quantity(j,1))); !calculation of critical path; @for(parenttwo(j):relalength(j)= @Max(child_parenttwo(k,j)|sub_raw1(k,j)#ne#0:sub_raw1(k,j))+(leadtime2(j)); criticalpath(1)=@Max(parenttwo(j):relalength(j))+leadtime3(1); !calculation of quantities need from raw materials and subassemblies; !! FIRST(REQUIRED DEMAND); @For(child(k):demandchild(k)= @Sum(child_parenttwo(k,j):demand*quantity(j,1)*DEMANDRQ(k,j))); American Scientific Research Journal for Engineering, Technology, and Sciences (ASRJETS) (2017) Volume 37, No 1, pp 162-177 170 @For(child(k):Standard_devofDemand(k)=@sum(child_parenttwo(k,j): standard_deviation_of_demand*quantity(j,1)*DEMANDRQ(k,j))); @FOR(Parenttwo(j):Standard_devofDemand2(j)=@sum(parenttwo_parentone(j,i): standard_deviation_of_demand*quantity(j,1))); ! calculation of reorder point; @for(child(k):averagedemandchild(k)= @sum(child_parenttwo(k,j):averagedemand*quantity(j,1)*DEMANDRQ(k,j))); ! calculation of customer demand from raw materials and subassemblies; @for(child(k):mean_of_demand1(k)=@sum(child_parenttwo(k,j): mean_of_demand*quantity(j,1)*DEMANDRQ(k,j))); @for(child(k):standardDEVdemand(k)=@sum(child_parenttwo(k,j): STANDARDDEVIATIONOFDEMAND*quantity(j,1)*DEMANDRQ(k,j))); @for(child(k):LTaveragedemandchild(k)=@sum(child_parenttwo(k,j): averagedemand*quantity(j,1)*DEMANDRQ(k,j))*leadtime(k)/23); @for(child(k):LTstandarddemandchild(k)= (standardDEVdemand(k)/@sqrt(23))*leadtime(k)); ! calculation of safety stock; @for(child(k):@psn(z(k))= @if((holdingcost(k)/backorder(k))#le#1,(1-(holdingcost(k)/backorder(k))),0.4)); @for(child(k):safety_stock(k)= Z(k)*LTstandarddemandchild(k)); @for(parenttwo(j):@psn(Z2(j))= @if((holdingcost2(j)/backorder2(j))#le#1, (1-(holdingcost2(j)/backorder2(j))),0.4)); American Scientific Research Journal for Engineering, Technology, and Sciences (ASRJETS) (2017) Volume 37, No 1, pp 162-177 171 @for (parenttwo(j):safety_stock2(j)= Z2(j)*LTstandarddemandparenttwo(j)); @psn(Z1(1))= @if((holding_cost3(1)/backorder3(1))#le#1, (1-(holding_cost3(1)/backorder3(1))),0.4); safety_stock1(1)= Z1(1)*STANDARDDEVIATIONOFDEMAND/@sqrt(23)*leadtime3(1); !available quantity in each node according to a demand distribution; @for(child(k):availablequantity(k)=orderedquantitychild(k)+safety_stock(k); @for(parenttwo(j):averagedemandparenttwo(j)=@sum(parenttwo_parentone(j,i): quantity(j,1)*averagedemand)); @for(parenttwo(j):standardDEVdemand2(j)=@sum(parenttwo_parentone(j,i): quantity(j,1)*STANDARDDEVIATIONOFDEMAND)); @for(parenttwo(j):mean_of_demand2(j)=@sum(parenttwo_parentone(j,i): quantity(j,1)*mean_of_demand)); @for(parenttwo(j):LTaveragedemandparenttwo(j)=@sum(parenttwo_parentone(j,i):quantity(j,1)*averagedeman d*leadtime2(j)/23)); @for(parenttwo(j):LTstandarddemandparenttwo(j)= (standardDEVdemand2(j)/@sqrt(23))*leadtime2(j)); @for(parenttwo(j):availablequantity2(j)=orderedquantityP2(j)+ safety_stock2(j)); availablequantity1(1)=orderedquantity(1)+safety_stock1(1); !EXPECTED SHORTAGE; @for(child(k):SHORTAGE(k)= Standard_devofDemand(k)* @psl(((availablequantity(k)-demandchild(k))/Standard_devofDemand(k)))); American Scientific Research Journal for Engineering, Technology, and Sciences (ASRJETS) (2017) Volume 37, No 1, pp 162-177 172 @for(parenttwo(j):SHORTAGE2(j)=Standard_devofDemand2(j)* @psl(((availablequantity2(j)-demandparenttwo(j))/Standard_devofDemand2(j)))); SHORTAGE1(1)=standard_deviation_of_demand*@psl(((availablequantity1(1)- demand)/standard_deviation_of_demand)); !minimum available quantity (check for quantity); @for(parenttwo(j):minavialablequantity(j)=@if(demand#le#capacity#and#demand#gt#AVERAGEDEMAND# and#delivery_time#ge#criticalpath(1),5000, @min(child_parenttwo(k,j)|DEMANDRQ(k,j)#ne#0:availablequantity(k)/DEMANDRQ (k,j)))); minavailablequantity1(1)=@if(demand#le#capacity#and#demand#gt#AVERAGEDEMAND#and#delivery_tim e#ge#criticalpath(1),5000,@min(parenttwo(j):(availablequantity2(j)/quantity(j,1)))); !EXPECTED EXCESS; @for(child(k):EXCESS(k)=@if(availablequantity(k)#gt#demandchild(k), (availablequantity(k)-demandchild(k))+SHORTAGE(k),0)); @for(parenttwo(j):EXCESS2(j)= @if(availablequantity2(j)#gt#demandparenttwo(j),(availablequantity2(j)- demandparenttwo(j))+SHORTAGE2(j),0)); EXCESS1(1)=@if(availablequantity1(1)#gt#demand,availablequantity1(1)-demand+SHORTAGE1(1),0); !the decision variables; @for(child(k):MTSchild(k)=@if((availablequantity(k)- demandchild(k))#gt#0,(orderingcost(k)+transportcost(k)+ (itemcost(k)*orderedquantitychild(k))+(holdingcost(k)*(EXCESS(k)))), (orderingcost(k)+transportcost(k)+(itemcost(k)*orderedquantitychild(k))+ (backorder(k)*shortage(k))))); @for(child(k):MTOchild(k)=(orderingcost(k)+transportcost(k)+(itemcost(k)* American Scientific Research Journal for Engineering, Technology, and Sciences (ASRJETS) (2017) Volume 37, No 1, pp 162-177 173 demandchild(k)))); @for(child(k):xchild(k)=@if((mtschild(k)- mtochild(k))#ge#0,@if((@max(child_parenttwo(k,j)|sub_raw1(k,j)#ne#0:sub_raw1(k,j)*xparent2(j))#eq#0),0, @if((@max(child_parenttwo(k,j)|sub_raw1(k,j)#ne#0:sub_raw1(k,j)+leadtime2(j))#le#(delivery_time- leadtime3(1))),1,0)),0));; @for(parenttwo(j):p2MTScost(j)=@if((availablequantity2(j)-demandparenttwo(j()#gt#0, @round(orderingcost2(j)+(holdingcost2(j)*(EXCESS2(j))),0), @round(orderingcost2(j)+backorder2(j)*(SHORTAGE2(j)),0))); @for(parenttwo(j):p2MTOcost(j)=@if(demandparenttwo(j)#le#capacity, orderingcost2(j),5000000));@for(parenttwo(j):xparent2(j)=@if((p2mtscost(j)- p2mtocost)#gt#0#and#xparent1(1)#eq#1,@if(leadtime2(j)+leadtime3(1)#le# delivery_time#and#minavialablequantity(j)#ge#demandparenttwo(j),1,0),0)); PMTScost(1)=@if(availablequantity1(1)#gt#demand,(orderingcost3(1)+ (holding_cost3(1)*(EXCESS1(1)))),(orderingcost3(1)+backorder3(1)*(SHORTAGE1(1)))); !make to order calculation; PMTOcost(1)=@if(demand#le#capacity,orderingcost3(1),500000); xparent1(1)=@if((pmtocost(1)-pmtscost(1))#lt#0,@if(leadtime3(1)#le# delivery_time #and#minavailablequantity1(1)#ge#demand,1,0),0); !TOTAL COST OF SUPPLY NETWORK MTS; totalcostMTS=@sum(child(k):MTSchild(k))+@sum(parenttwo(j):P2MTScost(j))+ @sum(parentone:PMTScost(1))-p2mtscost(4); !TOTAL COST OF SUPPLY NETWORK MTO; totalcostMTO=@sum(child(k):MTOchild(k))+@sum(parenttwo(j):P2MTOcost(j))+ @sum(parentone:PMTOcost(1))-p2mtocost(4); American Scientific Research Journal for Engineering, Technology, and Sciences (ASRJETS) (2017) Volume 37, No 1, pp 162-177 174 !TOTAL COST PROPOSED MODEL; hybridcost=@sum(child(k):@if(xchild#eq#0,MTSchild(k),MTOchild(k)))+ @sum(parenttwo(j):@if(xparent2#eq#0,P2MTScost(j),P2MTOcost(j)))+ @sum(parentone:@if(xparent1#eq#0,PMTScost(1),PMTOcost(1))); 3.3.3. The output of the model The output of the model is the objective function, the supply network cost for the hybrid strategy and according to the decision variables of the nodes as illustrating in the following numerical example. 4. The Numerical example Figure 1 is taken as a case study to show the results of the proposed model. Table 4 indicates the data of the supply network to assemble the finished product. Figure 1: The supply network of numerical example Table 4: The production data of supply network Node Name riUnit Li(day) Ki($/order) Ti($/order) vi($/unit) hi($/period) pi($/unit) 1 P1 1 18 150 120 0.5 0.1 1.5 2 P2 1 3 300 130 1.2 0.24 1.4 3 P3 1 5 200 150 1.8 0.36 1.6 4 P4 1 7 500 160 1.7 0.34 1.7 5 P5 1 10 450 80 2 0.4 1.6 6 P6 1 14 550 110 1.5 0.3 1.5 7 P7 1 5 150 130 2.5 0.5 1.8 8 A1 1 2 600 -- 2.5 0.5 2.1 9 A2 1 2 600 -- 2.5 0.5 2.2 10 A3 1 3 600 -- 3 0.6 2.3 11 A4 1 2 700 -- 8 1.6 5 S 2 3 4 5 6 7 9 10 11 E 8 American Scientific Research Journal for Engineering, Technology, and Sciences (ASRJETS) (2017) Volume 37, No 1, pp 162-177 175 4.1. The critical path time The longest path (critical path) is S-P1-A1-A3-A4-E and it equals to 25days. It is the production lead time for a Pure MTO, 𝐶𝐶𝑇𝑇(�⃗�𝑋)=25 days. The delivery time is compared according to the critical path time. The production lead time differs according to the decision variables of the string X. 4.2. The scenarios of the customer demand The scenarios of customer demand are given in Table 5. Table 5: The scenarios of customer demand Scenario # 𝑞𝑞(units/period) 𝐷𝐷𝑇𝑇(day) 1 500 2 2 1000 5 3 1500 10 4 2000 15 5 2500 25 Three supply network costs: Pure MTS cost, Pure MTO cost, and the minimum cost of the proposed model are calculated. Assuming the customer demand is from a normal distribution q�µq,σq� = (1600,25). And The distribution of the finished product demand is normal with D(μ,σ)=(2000,50). The production capacity is limited to 2200units per period. 4.3. The scenarios results By solving the objective function Equation (1), the supply network cost is obtained for each scenario to satisfy the customer demand with a minimum cost. Scenario 1; the customer demand is small than the capacity with a short delivery time so all components are MTS expect the subassemblies and the final assembly are MTO, the infeasible case of a Pure MTO because of the short delivery time. Scenario 2; the customer demand slightly increases, with also a short delivery time less than the delivery time the hybrid cost is decreased as the customer demand increases so the remaining inventory becomes less than scenario 1. Scenario 3; the customer demand is increasing but still less than capacity, and the delivery time increases but American Scientific Research Journal for Engineering, Technology, and Sciences (ASRJETS) (2017) Volume 37, No 1, pp 162-177 176 still less than the critical path time. Scenario 4; the customer demand is increasing, it is more than the average demand and the delivery time is long, so the MTS strategy has a more cost because of the high cost of backorder quantities. Scenario 5; the customer demand is increasing and becomes more than (Full CAP), and the delivery time is equal to critical path time, but the MTO strategy is infeasible because of insufficient capacity, and the MTS strategy is applied for all components of the supply network with the highest cost according to the big backorder quantities. Table 6 indicates the result of scenarios and the decision variables of the nodes of the supply network. Table 6: The result of scenarios Supply network cost Scenario1 Scenario2 Scenario3 Scenario4 Scenario5 TCMTS 40792 37822 34852 31882 42883 TCMTO Infeasible Infeasible Infeasible Infeasible Infeasible TC(X��⃗ ) 38377 34579 27447 31728 42883 𝐗𝐗��⃗ 00000000001 00000001111 01100111111 011111111111 00000000000 5. Conclusion The proposed model is used to find the decoupling points of a supply network. A supply network represents the BOM of a finished product. The supply network consists of nodes which may be (raw materials, sub-assemblies, and final assembly), and arcs which are the deterministic lead time of each node. The critical path method is used to find the production lead time of the supply network. Every node has its associated costs for both strategy (make to stock, or make to order) and the proposed model selects which one to minimize the supply network cost. A numerical example is applied and with a developing a collection of scenarios of customer demand with delivery times, the decoupling line is determined as a collection of decoupling points for each path in supply network, and every node has its selected strategy with minimum cost. References [1] D. Gupta and S. Benjaafar. “Make-to-order, Make-to-stock, or Delay Product Differentiation? A Common Framework for Modeling and Analysis.”, IIE Transactions, vol. 36, pp. 529–546, 2004. [2] X. Y. Sun, P. Ji, L. Y. Sun, and Y. L. Wang. “Positioning Multiple Decoupling Points in a Supply Network.” The International Journal of Production Economics, vol.113, pp. 946- 956, 2008. [3] Morash and E. A. “Supply Chain Strategies, Capabilities, and Performance.” Transportation Journal, American Scientific Research Journal for Engineering, Technology, and Sciences (ASRJETS) (2017) Volume 37, No 1, pp 162-177 177 vol.41 (1), pp. 37-54, 2001. [4] R. Mason-Jones, B. Naylor, and D. R. Towill. “Engineering the Leagile Supply Chain.” International Journal of Agile Management Systems, vol. 2 (1), pp. 54–61, 2000. [5] L.R. Shaffer, J.B. Ritter, and W.L. Meyer. The Critical Path Method. New York: McGraw-Hill, 1965. [6] L. King Peter. (2011). Crack the Code. [7] H.E. Scarf. “Inventory Theory.” The Journal of Operation Research, vol. 50(1), pp.1-50,2002. [8] “Lingo the modeling language and optimizer", 1415 North Dayton Street Chicago, Illinois 60642 Technical Support: (312) 988-9421 E-mail: tech@lindo.com. WWW: http://www.lindo.com. mailto:tech@lindo.com