INTRODUCTION
The positioning of the Order Penetration Point (OPP) is successively
becoming a topic of strategic interest (Olhager, 2003). In the existing
literature, this point is also called: Customer Order Decoupling Point
(CODP), Decoupling Point (DP) and Customer Order Point (COP). This point
defines the stage in the manufacturing value chain, where a particular
product is linked to a specific customer order. Sometimes the OPP is called
the customer order decoupling point to highlight the involvement of a
customer order (Olhager, 2003).
Upstream from the OPP the supply chain is initially forecast driven.
However, with the advent of Kanban driven supply this has become more
than simply a push system. Downstream from the OPP all products are pulled
by the enduser, that is, they are market driven. The OPP separates the
part of the supply chain that responds directly to the customer from the
part of the supply chain that uses forward planning and a strategic stock
to buffer against the variability in the demand of the supply chain (Naylor
et al., 1999).
Associated with the positioning of the OPP is the cognate issue of postponement.
The aim of postponement is to increase the efficiency of the supply chain
by moving product differentiation (at the Decoupling Point) closer to
the end user (Naylor et al., 1999). Postponement centers around
delaying activities in the supply chain until real information about the
markets is available (Yang and Burns, 2003). HP is very famous in the
implementation of this strategy, because HP has designed its modules in
a way that by different combinations of the modules, it can produce different
products. Yet, if this company would supply its products as finalized
and assembled products, the amount of its inventories would be increased
dramatically. So, HP prepares the modules in its supply chain and wait
for the customer to order. After the customer order is specified, modules
are assembled to each other and the requested product would be created.
Summing up, HP has reduced its inventories in its supply chain by using
the postponement strategy.
A 2x2 matrix shown in Fig. 1 identifies four generic
supply chain Postponement/Speculation strategies, by combining manufacturing
and logistics postponement and speculation. The matrix will be referred
to as the P/S matrix. The four strategies are (Pagh and Cooper, 1998):
• 
The full speculation strategy 
• 
The logistics postponement strategy 
• 
The manufacturing postponement strategy 
• 
The full postponement strategy 

Fig. 1: 
The P/S matrix and generic supply chain P/S strategies.
Source: (Pagh and Cooper, 1998) 

Fig. 2: 
Possible points for positioning the OPP of modules 
The subject of this study was more relative to the logistics postponement
strategy, because the extended model was for a supply chain where its
manufacturing process, is not based on the customer order. In other words,
there was no postponement in the manufacturing part of the chain and postponement
can only be made in the logistics part (including the packaging of modules
and shipping). Figure 2 shows the overall structure
of this chain and the possible points for positioning the OPPs.
Some of the existing researchers in this field as Adan and Wal (1998),
ArreolaRisa and Decroix (1998), Donk (2001), Federgruen and Katalan (1999),
Wikner and Rudberg (2005b) and Youssef et al. (2004) only discuss
about strategies that are related to postponements in production. Adan
and Wal (1998) believe that it is not necessary for a system to be completely
MTS or completely MTO. But, it could be as a combination of these two
and by this reasoning he has proposed models for compound models. ArreolaRisa
and Decroix (1998) have studied the MTS and MTO strategies for different
products that are produced by one machine and has finally determined that
production processes in which the products must be either as MTS or MTO.
Being MTS or MTO in the food industry is studied as a case study by Donk
(2001). Effects of adding a MTO product to a MTS system is studied by
Federgruen and Katalan (1999). Determining the position of OPP, Wikner
and Rudberg (2005b) in addition to production range, have considered the
issues relating to product engineering. Youssef et al. (2004) have
proposed several efficient rules for a combinational system of MTS and
MTO.
The other study that have not limited themselves to postponement in production
and have discussed about positioning the OPP in the total supply chain,
have studied the subject in different points of view. The following paragraphs
give a proper overview about these studies.
Positioning the OPP is called a strategic decision by Olhager (2003).
In the mentioned study, the major factors that are effecting the positioning
of the OPP were propounded and were classified in three categories: market
specifications, product specifications and production specifications.
The impact of the OPP positioning, on productivity of the supply chain
is studied by Hull (2005). Olhager and Ostlund (1990) discuss relations
between pushpull systems and the positioning of the OPP point. The mentioned
study believed that supply chain acts as a push system in the upstream
of the OPP and in the downstream section of the OPP acts as a pull system.
In two interesting studies (MasonJones et al., 2000; Naylor et
al., 1999), the relation between lean and agile concepts with the
positioning of the OPP in the supply chain is propounded. These studies
have pointed to this important issue that the supply chain in the upstream
section of the OPP must be lean (low costs) and in the downstream section
of the OPP that the customer demand is specified must be agile. These
studies believe that instead of being completely lean or being completely
agile, it is better to implement a combination of these concepts in the
supply chain strategy. Also, the OPP acts as a divider between the lean
and agile section of the supply chain. Wikner and Rudberg (2005a) have
extended the concept of Customer Order Decoupling Point (CODP) to customer
order decoupling zone (CODZ).
Garg and Tang (1997), Mikkola and SkjottLarsen (2004), Pagh and Cooper
(1998), Yang et al. (2004) and Yang and Burns (2003) have studied
the issue of postponement in the supply chain. Garg and Tang (1997) propound
this subject that, it is not necessary that all products have a common
OPP and a family of products could have several OPP points. The considered
study presented two models for products that have more than two OPP points.
Mass customization and modularization concepts and their relation with
postponement strategies are propounded by Mikkola and SkjottLarsen (2004).
Four strategies of postponement/speculation in supply chain and specifications
of each strategy in terms of production, inventory and distribution costs
and the status of service levels in each strategy are presented by Pagh
and Cooper (1998). Yang et al. (2004) have written a review study
in postponement. Yang and Burns (2003) have viewed the supply chain from
the point of view of postponement and has studied the postponement requirements
in relation to integration of supply chain and issues relating to capacity
planning and control in supply chain and order decoupling point.
Rudberg and Wikner (2004) have studied the problem of determining the
position of OPP in supply chains which act as mass customization. Wanke
and Zinn (2004) have defined the strategic decisions of logistics as:
being MTS or MTO, being pulled or pushed and centralizing inventories
or decentralizing inventories. And as propounded as before, each of these
three decisions are related to the positioning of OPP. Fisher (1997) believes
that supply chain of new and competitive products must have high responsiveness
and supply chain of common and noncompetitive products must have a high
efficiency, where this subject was also related to the positioning of
the OPP in supply chain.
MATERIALS AND METHODS
Consider the supply chain of auto export to a specific country. The assembling
company in the target country is our only customer and batch sized orders
are specified. But the time of order placement is a stochastic variable
that can give values between α and β.
Suppose that after the placement of order by customer, the required time
for moving the modules between each two points, has two elements where
one is fixed and another is a variable. The fixed element is not dependent
on the number of moving modules between points j and j+1, because in any
case it occurs and we show this element by l_{j}. But the
variable element shows the amount of delay in delivery that occurs by
shifting the OPP of module i from point j+1 to point j and we show it
by r_{ij}. Also suppose that after the placement of order by customer,
for every unit of time (for example, day) delay in delivery, a penalty
cost is paid that we show it by p.
These autos must be exported as separated modules (final assembly must
take place in the target country) and different modules differ in inventory
cost and the amount of delay that occurs in their shipment. So, the position
of their OPP can be at different points. Consequently, we let the OPP
of each module to be located at any point of the chain.
Transportation cost has two elements, fixed and variable, but the variable
cost of transportation has no effect on the solution of problem, because
in any case it would be paid. Therefore we only consider the fixed transportation
costs. As a whole, the following notations are required:
Q 
: 
Customer order size 
t 
: 
Time of order placement by customer 
f(t) 
: 
Probability distribution function for the time of order placement 
F(t) 
: 
Cumulative distribution function of order placement by customer 
t* 
: 
Optimal time of being prepared for modules in OPPs (decision variable) 
h_{ij} 
: 
Inventory holding cost for the unit of module i in point j 
K_{j} 
: 
Fixed transportation cost from point j1 to point j 
k_{ij} 
: 
Variable transportation cost for module i from point j1 to point
j 
T_{j} 
: 
Sum of fixed transportation costs from the chain beginning to point
j 
l_{j} 
: 
Time distance (transportation time) between points j1 and j 
n 
: 
No. of modules 
N 
: 
No. of points of chain 
r_{ij} 
: 
Amount of delay in delivery that occurs by shifting the module i
from point j+1 to point j 
R_{ij} 
: 
Amount of delay in delivery that occurs by positioning the module
i in point j 
p 
: 
Penalty cost for delay in delivery of order 
x_{ij} 
: 
If the OPP of module i is located at point j, equals to 1 and otherwise
equals to 0 (decision variable) 
t_{i} 
: 
Amount of time where module i is in its OPP before t* 
tp_{j} 
: 
Amount of time where modules that their OPP is in point j are in
their OPP before t* 
y_{j} 
: 
If there is a transshipment to destination point of j, equals to
1 and otherwise equals to 0 (decision variable) 
Modeling the problem by dynamic programming: We decompose the
problem into two phases. In phase (1), we determine the OPP of each module
without considering the other modules. In this phase we do not consider
the transportation costs, because they have no impact on the answer of
our problem, i.e. the position of the OPP for that module is not affected
by the transportation costs. The output of this phase is the primary OPP
for each module and the sum of inventory holding and penalty costs (for
delay in delivery of order) for positioning the OPP of each module in
each point. We show these costs by c_{ij} and use them in phase
(2) as some of the input data.
Phase (1): determining t* and primary OPP for each module: In
this phase, because the OPP of a module is placed at any point, all of
its fixed transportation costs must be paid, we do not consider these
costs in this section. On the other hand, it is not necessary that the
considered module arrives before t*, because if it arrives before t* the
time duration until t*, inventory holding cost (type II) is included.
Consequently, in this phase we should just consider the inventory holding
cost (type I) and the delay in delivery cost. If module i placed in point
j, sum of these costs (c_{ij}), is computed as follows:
The Eq. 1 shows that, if the time of order placement
by customer (t) is after t* the type I of inventory holding costs increases.
And if the time of order placement by customer is before t*, delay costs
will be increased. We know that in any case, we have a delay for each
module equal to R_{ij} and the penalty cost for it must be paid.
So, for computing the c_{ij} for each module and each point, t*
must be specified. In the other hand, value of t* is determined by differentiating
Eq. 1 with respect to t*, equating to zero and solving
for the t*. Differentiating with respect to t* gives:
By simplifying the Eq. 2, we have:
So, there is a mutual relationship between t* and c_{ij}, where
for computing c_{ij}, t* should be determined and for computing
t*, c_{ij} for each i and j should be determined, because in Eq.
3 for each i there is only one j and that is where c_{ij}
is minimum. So, for computing t* and c_{ij}, we propose the following
algorithm:
Step 0 
: 
Solve Eq. 3 for t* and consider all
i`s and all j`s 
Step 1 
: 
Consider the current t* and Solve Eq. 1 for c_{ij}
at all i`s and all j`s 
Step 2 
: 
Solve Eq. 3 for t* but for each i only consider
the j where 
Step 3 
: 
while t* in the two consecutive stages is not fixed, repeat steps
1 and 2 
The following example shows the method of using this algorithm.
Suppose that Q = 96 and time of order placement by the customer has a
uniform distribution between 0 and 30 and also p = 20 units of money,
n = 8 and N = 7. And inventory holding costs for each unit module, at
each point is shown in Table 1.
Also, R_{ij} for all modules and all points are shown in Table
2.
Iterations of the algorithm for obtaining t* and c_{ij} are shown
in Table 3. In Table 3, for each i
only the minimum of c_{ij} and the relative j are shown.
Values of c_{ij} for all modules and all points in the final
iteration of the algorithm are shown in Table 4.
Now, we obtain the primary OPP of each module as:
So, in the mentioned example we have: OPP_{1} = 6, OPP_{2}
= 3, OPP_{3} = 6, OPP_{4} = 4, OPP_{5} = 3, OPP_{6}
= 7, OPP_{7} = 5, OPP_{8} = 2. And the range that the
OPP of each module can be located in it (i.e., [a, b]) is determined as:
Table 1: 
Inventory holding cost of modules at points (h_{ij}) 

Table 2: 
Amount of delay in delivery that occurs by positioning the
module i in point j (R_{ij}) 

Table 3: 
Iterations of the algorithm for obtaining t* and c_{ij} 

So, for the above example we have: a = 2 and b = 7. At the end of phase
(2), the OPP of all modules locates in range [a, b] because considering
the fixed transportation costs (economies of scale) causes the OPP of
some modules to shift toward the OPP of some other modules but there is
no factor that would cause the OPP of a module to come out from this range.
Phase (2): determining t_{i} and final OPP for each module
by the use of dynamic programming: Dynamic programming is an effective
method to find a global optimum in some optimization problems. We now
briefly describe the formulation of problem of determining t_{i}
and final OPP for each module and the solution by dynamic programming.
Stage (n) 
: 
Points a to b 
State (s) 
: 
Set of modules that are not already assigned to any nodes 
Decision variable (x_{n}, t_{n}) 
: 
Modules that are assigned in each stage and the amount of time that
they should arrive in their OPP earlier than t* 
The recursive formulation of the model in dynamic programming is as follows:
where, (s−x_{n}) shows the set of s after the assignment
of set x_{n} of modules in stage n. The decision vector is (x_{n},
t_{n}) which contributes to the objective function by p_{n}(x_{n},
t_{n}) that is stated by the following formulation:
As is stated by the Eq. 7 the decision (x_{n},
t_{n}) has two conditions. In both conditions the sum of c_{ij}
for assigned modules must be calculated.
Table 4: 
Values of c_{ij} for all modules and all points in
the final iteration of the algorithm 

But between fixed transportation
costs and inventory holding cost of type II, only one will occur. In the
case of t_{n} = 0, modules that are assigned to point n, must
arrive there exactly at t*. In another words, there is a consignment to
this point which involves the fixed transportation cost represented by
T_{j}. But if these modules are transported by a consignment that
its destination is one of the points after n, there would be no fixed
transportation costs but instead the inventory holding cost of type II
is involved. the proposed dynamic programming is explained more clearly
in an example problem, with two modules and three points.
Stages of dynamic programming in a backward method are shown at Table
58:
So, (x_{1},t_{1}) = ({1}, 4), x_{2} = φ
and x_{3} = 2. It means that only one consignment consisting of
both modules must go to point 3. It delivers the module 1 to point 1,
4 days before t* and delivers the module 2 to point 3 at t*. The cost
of the optimal solution is 35 which consist of three parts. Fixed transportation
cost is equal to 12 units, inventory holding cost (type II) is 4 units
and finally 8+11 = 19 units for c_{ij}.
Numerical example: Here, it will solve the mentioned example that
had 8 modules and 7 points, by using the model that was presented in phase
(2). The required data are: inventory holding cost, that are shown in
Table 1, c_{ij} that obtained in phase (1) and
are shown in Table 4. Also values of a and b that are
2 and 7, respectively.
Table 5: 
Values of l_{j} and T_{j} for point
a to b and c_{ij} for modules and points in dynamic programming
of the example problem 

Table 6: 
Stage 3 of dynamic programming of the example problem (n =
3) 

Table 7: 
Stage 2 of dynamic programming of the example problem (n =
2) 

Table 8: 
Stage 1 of dynamic programming of the example problem (n =
1) 

Table 9: 
Values of l_{j} and T_{j} for point
a to b 

Table 10: 
Values of decision variables (x_{ij} and t_{i}
and y_{j} for all modules and all points) 

Table 11: 
Iterations of the algorithm for obtaining the final t* and
other decision variables (x_{ij} and t_{i} and y_{j}
) 

Also suppose that time distance between points
and summation of fixed transportation costs until different points being
as shown in Table 9. And note that l_{j} for first point always equals to zero.
Now, we solve the presented model for the above inputs and obtain the
values for decision variables that are shown in Table 10.
Obtained OPPs in Table 6 are not equal to primary OPPs.
So, we must compute the t* from equation 3 for modules
and points in Table 6 where, x_{ij} is equal
to 1. Finally we propose the following algorithm:
Step 1 
: 
Solve equation (3) for t* and consider the modules and points
that x_{ij} for them is equal to 1. 
Step 2 
: 
Consider the current t* and solve Eq. 1 for c_{ij}
and all modules and all points 
Step 3 
: 
Solve the mathematical model by considering the current c_{ij}
(all i and all j) and go to step 1. 
Step 4 
: 
while t* in two consecutive stages is not fixed, repeat steps
1 to 3. 
Iterations of the above algorithm for the mentioned example are shown
in Table 11.
So, the final values of decision variables are:
t* = 15.7
y_{1} = y_{3} =
y_{4} = y_{6} = y_{7} = 0 and y_{2} = y_{5} = 1
t_{1} = t_{2} =
t_{3} = t_{4} = t_{5} = t_{6} =
t_{7} = t_{8} = 0
x_{15} = x_{35} = x_{45} = x_{75} = 1 and x_{22} = x_{52} = x_{62} = x_{82} = 1
z = 2366.6 
CONCLUSION
Summary: we decomposed the problem of determining the OPP points for
modules into two different phases. In phase (1), we only considered the delay
in delivery costs and type I of inventory holding costs. And then in phase (2),
we used the output of phase (1) as some of inputs and also in this phase we
considered the transportation costs and the type II of inventory holding costs
that may occur for saving in transportation costs. We modeled this problem that
had three cost elements as a dynamic programming model and solved a numerical
example and presented its results.
Future research:This research has the ability to be extended in
two directions. First is the elimination of some assumptions that causes
the creation of new problems 4 issues of these problems are:
• 
In this problem, we assumed that the demand is deterministic, whereas
in real problems it may be stochastic. 
• 
We modeled and solved this problem for export to one country. If
we want to consider multi countries, the supply chain becomes a divergent
chain and the complexity of the problem would be increased. In other
words, we supposed that there is only one customer (target country)
and as a result, the chain is linear, whereas it may be multiple customers
and the chain as divergent. 
• 
The case that there are multiple customers and also their demand
being stochastic is a complex problem that study on it could be very
attractive. 
• 
If the time between two sequential customer orders is short, it
is better that the amount of held inventory in OPP point to be as
a multiple of Q, i.e., batch sizes in points before OPP in the chain
must be larger than batch sizes in points after the OPP. This case
is very close to real supply chains. 
Another direction that we can extend this research is related to the
solving method. We modeled this problem by mathematical programming, whereas
we can model this problem by dynamic programming. But the efficiency of
dynamic programming for this problem is very low, because by increasing
the number of modules, the number of states and decision variables in
each stage would be increased exponentially. If we could limit the number
of states or decision variables, this method could be an appropriate technique
for this problem.
If the dimensions of problem become large enough, we must use the metahuristic
algorithms such as GA, SA, TS and also a combination of these algorithms
can be used. Modeling and solving the problem by each of these methods
and then a comparison of them in the light of obtained solutions and time
solution by computer could be a good research.