Professional Documents
Culture Documents
A genetic algorithm for supply chain configuration with new product develop-
ment
PII: S0360-8352(16)30340-0
DOI: http://dx.doi.org/10.1016/j.cie.2016.09.008
Reference: CAIE 4464
Please cite this article as: Afrouzy, Z.A., Nasseri, S.H., Mahdavi, I., A genetic algorithm for supply chain
configuration with new product development, Computers & Industrial Engineering (2016), doi: http://dx.doi.org/
10.1016/j.cie.2016.09.008
This is a PDF file of an unedited manuscript that has been accepted for publication. As a service to our customers
we are providing this early version of the manuscript. The manuscript will undergo copyediting, typesetting, and
review of the resulting proof before it is published in its final form. Please note that during the production process
errors may be discovered which could affect the content, and all legal disclaimers that apply to the journal pertain.
A genetic algorithm for supply chain configuration with new
product development
Iraj Mahdavi
Department of Industrial Engineering, Mazandaran University of Science and
Technology, Babol, Iran, irajarash@rediffmail.com
Abstract
New product development has become increasingly important recently due to highly
competitive market place and economic reasons. Development and production of new
products in the planning horizon require an efficient and responsiveness supply chain
network. As new products appear in the market, the old products could become obsolete,
and then phased out. A generously persuasive parameter for new product and developed
product problems in a supply chain is the time which the developed products are
introduced and the old products are phased out and also the time new products are
introduced in the planning horizon in order to maximum the total profit.
With consideration of the factors noted above, this study proposes to design a multi
echelon multi product multi period supply chain model which incorporates product
development and new product production and their effects on supply chain configuration.
In terms of the solution technique, to overcome NP-hardness of the proposed model,
priority based genetic algorithm is applied to find the suitable time for introducing
developed and new product in the planning horizon, production schedule and design of
supply chain network in order to maximum the total profit in a reasonable computational
time. The accuracy of the proposed genetic algorithm is validated on small, medium and
large instances that have been solved using the software LINGO, in order to evaluate the
*
Corresponding author
1
performance of the algorithm. Then, the implementation of the fuzzy crossover and
mutation controllers is described. It is able to regulate the rates of crossover and mutation
operators during the search process. Finally, a comparison is done on conventional GA
and the controlled GA.
Keywords: Supply chain; New product development; Priority based genetic algorithm;
Fuzzy logic controller.
2
As new products appear in the market, the old products could become obsolete, and then
phased out. A generously persuasive parameter for NPD problems in a SC is the strategy
of introduction a new product and phasing out the old products which are developed in
the planning horizon. Before launching a new product, a manufacturer must decide the
timing of the product launch and the production/sales plan over the planning horizon.
According to Billington et al. (1998) there is two rollover strategies namely single
product roll and dual product roll to introduce new products to the market. In the first
strategy, single product roll, the time phasing out the old product and the time introducing
the new product are the same which means that as the new product is introduced the old
product is phased out. As such, in dual rollover strategy as the new product is introduced
the firm continues producing the old product, in other words, the coexistence of both
products is allowed during a certain period of time. In the proposed model the single
product rollover is assumed.
Although many studies have investigated the SC configuration and the NPD problems
separately, a few researchers have dealt with SC together with NPD. Naraharisetti and
Karimi (2010) proposed the SC redesign and new process introduction in multi-purpose
plants. They added some production and inventory facilities, distribution and customer
centers to their chain. An integrated optimization model for configuring the SC of new
product is developed by Amini and Li (2011). Their work was a first attempt to model the
interaction between new product diffusion and SC configuration. The aim of their
research is configuration of SC subject to demand dynamics and other SC parameters
such as lead-time and inventory. Also, Li and Amini (2012) developed an integrated
optimization model which allowed multiple-sourcing and safety stock placement
decisions in coordinate with the demand dynamics during the new product diffusion
process throughout its life cycle. As another study, Nepal et al. (2011) has extended a
multi-objective optimization model for SC configuration during product development.
Their presented model consists of two objectives: maximization of the total compatibility
index in strategic alliance and minimization of the total SC costs. Their model improves
SC efficiency and stability by jointly considering sourcing, inventory costs and
compatibility decisions during the configuration of the SC. They solved their model by
using GA. Jafarian and Bashiri (2014) provided a five echelon dynamic SC model. Their
proposed model considers the time of new product lunching in the SC, which is
optimized with SC configuration simultaneously. In addition, production, sales,
transportation planning and their lead times are considered in the model. In their
proposed model each firm individually decide to introduce new products and their model
considers developing a single product.
To improve NPD activities in a SC, this paper presents an integer linear programming
model that considers a multi echelon multi product multi period SC together with NPD. It
generalizes the previous studies in the following aspects:
• The previous studies have assumed single product models. They considered the
SC for producing only one product and the product is developed during the
planning horizon. This study proposes a multi product model.
• The proposed model includes three groups of products. Products which are being
produced by the company, products that are developed during the planning
horizon and products which is decided to newly be produced during the planning
horizon.
3
1.2- Genetic algorithm
Many SC optimization models are NP-hard and researchers employ heuristics or meta-
heuristic methods to find the optimal solution for them. As effective approaches for
solving different problems from manufacturing systems, SC systems, transportation
systems and logistics systems, heuristics or meta-heuristic methods have drawn more
attention from researchers in recent years (Sel and Bilgen, 2014, Kumar and Chatterjee,
2013, Mahdavi et al., 2009, Ribas and Companys, 2015, Bandyopadhyay and
Bhattachary, 2013, Ahmadizar et al., 2015, Fahimnia et al., 2012, Bootaki et al., 2014,
Paydar et al., 2010).
He et al. (2015) formulated a mixed integer programming model for the multi echelon
container SC network where the objective is subject to the minimization of the total SC
service cost. They proposed a novel simulation-based heuristic method for solving it. As
another study, Jamshidi et al. (2015) proposed a mixed integer non-linear model for a
five-tier SC with controllable lead time and multiple transportation options and
developed a novel meta-heuristic method that combines the Taguchi’s feature with
Artificial Immune System to solve their proposed model. They examined the
performance of the proposed solution method against a set of numeric instances.
Soleimani and Kannan (2015) developed a deterministic multi echelon, multi product,
multi period model for a closed-loop SC network and presented a new PSO-GA hybrid
algorithm to solve various kinds of problems. Then a complete computational analysis
was under taken to validate their proposed algorithm.
GAs, which are search techniques that mimic the process of natural selection and natural
genetics, have been routinely used to generate useful solutions for optimization and
search problems. It belongs to the class of meta-heuristic optimization techniques.
GA can be implemented in several different ways to solve different problems. One of the
important issues that affect the performance of GAs is representation. Different genetic
representations are introduced for different problems.
Syarif, Yun and Gen (2002) have developed a spanning tree-based GA approach for the
multi source, single product and multi stage SC network design based on Prüfer numbers.
A priority-based GA was developed by Gen et al. (2006), in which new decoding and
encoding procedures were used to adapt to the characteristic of a two-stage transportation
problem. The aim of their proposed model was minimizing the total logistic cost
including the opening costs of distribution centers and shipping cost from plants to
distribution centers and from distribution centers to customers. Lin et al. (2009)
formulated an integrated multi stage logistics network model with considering the direct
shipment and direct delivery of logistics and inventory. To solve the problem, they
proposed an effective hybrid evolutionary algorithm which combined an extended
priority-based encoding method with the local search technique. Altiparmak et al. (2009)
proposed a mathematical model for a three-stage SC network with a single source and
multiple products. They presented a solution approach based on steady-state GAs for
their model. Demirel et al. (2014) considered a mixed integer programming model for a
closed-loop supply chain (CLSC) network with multi periods and multi-parts. Then, they
developed a GA approach and applied it to solve real size crisp and fuzzy CLSC
problems. Roghanian and Pazhoheshfar (2014) proposed a probabilistic mixed integer
linear programming model for the design of a reverse logistic network with multi
4
products and multi stages. Then, they proposed priority based GA to find reverse logistics
network. For implementation of this study, priority based GA method is adopted.
An evolutionary algorithm contains various parameters. The action of setting the values
of various parameters of an evolutionary algorithm is crucial for good performance and is
necessary to produce an executable version. However, the correct setting of these
parameters is not an easy task. For instance, the parameters of GA technique such as
crossover and mutation rate have significant impact on its performance. Two main forms
are considered for identifying the correct setting values; parameter tuning and parameter
control (Yun and Gen (2003)). In parameter tuning approach, various efforts such as trial
and error is done before the run of GA to find good values for the parameters and then the
run starts and the parameters remain fixed during the run. However, different values of
parameters might be optimal at different stages of the running process (Schwefel, 1981,
Eiben et al., 1999, Yun and Gen, 2003). Parameter control is another form for identifying
the correct setting values. It starts with initial parameter values and they are changed
during the run. By controlling the parameters of GAs, they can be adaptively regulated
according to the problems under consideration which improve their overall performance
(Hong et al., 2002, Yun and Gen, 2003). Here, the Fuzzy Logic Controller (FLC) is used
to regulate the GA operators.
Hence, the aim of this study is to design an integrated multi echelon multi period and
multi product optimization model for maximizing the total profit and priority based GA
method is applied to obtain a solution in a reasonable time. In addition, FLC is used to
regulate the rates of crossover and mutation operators during the search process.
After the introduction, the remainder of the paper is structured as follows: Section 2
presents the proposed optimization model and the mathematical model formulation. A
numerical example is illustrated in section 3. To solve the model, the proposed GA
solution approach is presented in Section 4. The implementation of the FLC is described
and test problems to investigate the performance of the developed GA algorithm are
presented in Section 5. Finally, section 6 draws conclusions.
2- Problem description
In this section, a four echelon SC model which consists of suppliers, manufacturers,
distributors and customer groups is considered while the company is able to design and
introduce new products according to customers' tastes and preferences in the planning
horizon. As a company produces several products, flexibility is needed to respond to
marketplace changes to gain or maintain competitive advantage and for that the company
must have the ability to introduce and produce new products. This can be expressed in the
two following options: 1) developing an old product, 2) producing new products. The
rollover which is considered in the proposed model is single-product roll as the rollover
strategy which means first the old product is phased out then the new product is
introduced, thereby only one of the old or new products is produced in a moment. The
proposed model stops producing the old product after it gets developed and the developed
one is ready to be produced.
The indices, sets and parameters, designed to model the SC network have been defined in
the following. Then, we continue with a brief description about the objective function and
constraints of the model.
5
Insert Figure 1
It is noted that the products contain three groups, first group indicates the products that
are being produced by the company, the second group relates to the products which are
the developed form of the old products and is decided to be produced and the third group
contain the new products that the company decides to produce during the planning
horizon. The indices are as the following:
⎧o (old ) o = 1, ...,O
⎪
i = ⎨ j (old → new ) j = O + 1, ..., J
⎪n (new ) n = J + 1, ..., I
⎩
2.1.2- Parameters
New product development
Poj 1, if product o can be developed to product j, 0, otherwise
Demand
Dgit Demand of customer group g for product i in period t
Prices
PRsrt Per unit price of raw material r in the supplier s in period t
PDi Per unit price of product i
Bill of material
Bir Number of the raw material r needed to produce product i
NPD duration
dli New product designing duration of product i
Capacities
CM ft Capacity of manufacturer f in period t
CDd Capacity of distributor d
CSsrt Capacity of supplier s for providing raw material r in period t
6
Production cost
CPfi Cost of producing product i in manufacturer f
fCPfi Fixed cost of producing product i in manufacturer f
TPfi Hour needed to produce per unit of product i in manufacturer f
CLS git Lost sale cost per unit of product i at customer group g in period t
Inventory cost
CIR fr Per unit Cost of inventory for raw material r in manufacturer f
CIM fi Per unit cost of inventory for product i in manufacturer f
CID di Per unit cost of inventory for product i in distributor center d
Initial inventory
IIR fr Initial inventory of manufacturer f for raw material r
IIM fi Initial inventory of manufacturer f for product i
IID di Initial inventory of distributor d for product i
Transportation cost
TCS sf Transportation cost between supplier s and manufacturer f
TCM fd Transportation cost between manufacturer f and distributor center d
TCD dg Transportation cost between distributor center d and customer group g
NPD cost
CDNi Cost of designing new product i
M Sufficiently large number
Flow
SRM sfrt Amount of raw material r transferred from supplier s to manufacturer f in period t
SMD fdit Amount of product i transferred from manufacturer f to distributor d in period t
SDGdgit Amount of product i transferred from distributor d to customer group g in period t
Production
Q fit Production quantity of product i for manufacturer f in period t
LS git The amount of lost sale for product i at customer group g in period t
7
Product availability
ETit Binary variable which represents the new product entering time to distributor centers,
Designing decisions
DPit 1, if company decide to design product i in period t, 0, otherwise
Based on the above definitions, the mathematical model of the problem is derived in the
next subsections.
Maximize Z =
∑∑∑∑ PDi SDGdgit − ∑∑∑∑ PRsrt SRM sfrt − ∑∑∑ (CPfiQ fit + fCPfi DPit )
d g i t s f r t f i t
−∑∑∑ CIDdi IDdit − ∑∑∑ CIR fr IR frt − ∑∑∑ CIM fi IM fit (1)
d i t f r t f i t
2.1.5- Constraints
Flow
IR frt = IR fr ( t −1) + ∑ SRM sfrt − ∑ Bir Q fit ∀f , t , r (2)
s i
∑ SDG
d
dgit + LS git = Dgit ∀g , i , t (5)
8
Capacity
∑ SRM
f
sfrt ≤ CS srt ∀s , r , t (9)
Q fitTPfi ≤ CM ft ∀f , i , t (10)
∑∑∑ SMD
t f i
fdit ≤ CDd ∀d (11)
Production allowance
Q fit ≤ M * ETit ∀f , t , i (12)
∑
h =t + dli +1
EToh < DPjt Poj ∀t , i ∈ o , j (13)
∑ DP
t
it =1 ∀ i ∈ j, n (15)
IR frt , IM fit , IDdit , SRM sfrt , SMD fdit , SDGdgit , Q fit , LS git ≥ 0 and integer (16)
∀ i, t , f , d , s, g , r
DPit , ETit ∈ {0, 1} ∀ i, t (17)
All Constraints are represented from (2)–(17) and are described briefly in the following.
Eqs. (2)- (4) show the flow constraints. Eq. (5) represents that the sales of each product at
each costumer group during each time period should not exceed its corresponding
demand, while the unsatisfied amount is lost. The initial inventories are defined in Eqs.
(6)-(8). Eq. (9) shows that the total raw materials transported from each available supplier
to the manufacturers cannot exceed the supplier capacity. Eqs. (10) and (11) also state the
same issue about the maximum capacity of available plants and distributors, respectively.
Eq. (12) denotes the production allowance and Eq. (13) represents the rollover strategy
which is only related to the developing products. It states that when the company decided
to develop an old product the manufacturers have the ability to produce the developed
products and launch them to the market after the designing duration time. Eq. (14) relates
to the designing starting time. Eq. (15) assures that during the planning horizon the
company decides to produce each new product once. Finally, Constraints (16) and (17)
pertains to the non-negativity condition and to the binary nature of the decision variables,
respectively.
9
raw materials which the model starts with product one and two and during the time
periods and customer demands and competitive markets the model wants to develop
product two to product three and product four to be newly introduced for the first time.
The planning horizon is considered ten periods and based on the objective function which
is maximizing the total profit; the model determines the appropriate time for developing
the product and introduces the new product. The information related to the example is
given in Tables 1-9.
Insert Table 1
Insert Table 2
Insert Table 3
Insert Table 4
Insert Table 5
Insert Table 6
Insert Table 7
Insert Table 8
Insert Table 9
Table (1) shows the transportation costs and the bill of material matrix are presented in
Table (2). Table (3) contains the information related to distributors and products prices.
Costs of production, raw material and end product inventory are shown in Table (4).
Table (5) represents capacity of manufactures and capacity of suppliers is shown in Table
(7). Cost of raw materials is given in Table (6). Tables (8) and (9) illustrate the demand
of customer groups and Cost of lost sales in each period, respectively. Although the new
products are being produced during the time horizon but designing them are costly and
the costs are considered 170 and 300 for each, respectively. Also the duration for
designing new products are 2 and 4 periods, respectively.
The optimal solution of the illustrative example for ten periods based on the proposed
model and the related objective function value are shown in Table (10). As the aim of the
model is obtaining profit by developing and introducing new products the model decided
to start developing product two in period 4 and after the designing duration introduce
product three in period 6 and phase out product two in period 6. Based on the profit,
introducing product four in period 8 would be profitable.
Insert Table 10
For medium and large-sized problems, the multi echelon design problem is difficult to be
solved optimally. According to the computational complexity, the proposed model cannot
be solved optimally within a practical time.
4- Solution approach
A priority-based GA is proposed for solving the new product development SC problem
in this paper to obtain a good solution for the model in a reasonable time.
10
4.1.1- Chromosomes
GAs start with an initial set of random solutions generally called population. Each
individual in the population is called a chromosome. Each chromosome consists of genes
and as it is known, a gene in a chromosome is characterized by two factors: locus, the
position of the gene within the structure of chromosome and allele, the value the gene
takes. To illustrate the GA strategy, chromosome encoding is the first and important step.
In priority-based encoding, the position of a gene is used to represent a node
(source/depot in transportation network), and the value is used to represent the priority of
corresponding node for constructing a tree among candidates (Gen and Cheng, 2000).
For the problem in this paper, the chromosome is made up by three segments, in which
the segments are used to demonstrate the relationship among the four echelons as
described in Figure (2). As an example, consider a SC network with two raw materials,
five suppliers, two manufactures, four distributers, two costumer groups, three products.
The first segment defines the transportation tree between the suppliers and manufactures
and it consists of (|S|+|F|)*|R| digits which |S|, |F| and |R| represent the number of
suppliers, manufactures and raw materials, respectively. As it is seen in Figure (2) each
gene in segment 1 is an integer number between 1 and (|S|+|F|)*|R| which represents the
priority of each node. Similarly, the transportation tree between manufactures and
distributor centers is defined in segment 2. This segment consists of (|F|+|D|)*|I| digits
which |F|, |D| and |I| represent the number of manufactures, distributor centers and
products, respectively and the priority of each node is an integer number between 1 and
(|F|+|D|)*|I|. The third segment which indicates the transportation tree between distributor
centers and customer groups is defined as the same way. It consists of (|D|+|G|)*|I| digits
that |D|, |G| and |I| represent the number of distributor centers, customer groups and
products, respectively and the priority of each node is an integer number between 1 and
(|D|+|G|)*|I|. The illustration of a chromosome structure for one period is given in Figure
(2). As the proposed model is multi period, the full length of a chromosome is the sum of
the lengths of these three segments multiplied by the numbers of periods [((D+G)*I) +
((D+F)*I) + ((S+F)*R)]*T. Figure (3) represents a chromosome for multi product multi
echelon multi period SC.
Transportation tree between customer groups and distributor centers, distributor centers
and manufactures, manufactures and suppliers which is obtained with decoding of the
third, second and first segment of chromosome, respectively, is generated by sequential
arc appending between sources and depots. The chromosome of SC is decoded on the
backward direction. At each step of the decoding procedure, the highest priority in the
chromosome is determined. Although its position gives the product type, it gives a source
(depot) to realize a shipment for the product type, too. Depending on the selected source
(depot), a depot (source) is determined considering minimum transportation cost and an
arc between them is added to corresponding tree (Altiparmak et al., 2009). The decoding
algorithm of the priority based encoding for the multi product case is presented in Figure
(3).
For a NPD problem, under the chromosome structure mentioned above, since the
company decides to produce new products and also develop current products in some
periods, this has to be shown in the chromosome. This is done by randomly generating a
period and depending on the new product designing duration of each product parameter,
the following conversion statements are going to be done:
11
1) If the product is newly created, depending on the period obtained by sum of
randomly generated period and the designing duration parameter, the value of the
genes for this product is updated. The priority of the related product for the
periods up to the determined period is considered zero and the rest remain
unchanged.
2) If the product is developed to another product, depending on the period obtained
by sum of randomly generated period and the designing duration parameter, the
value of the genes for these products are updated. The priority of the old product
from the determined period up to the end of the planning horizon is considered
zero and on contrary, the priority of the developed product for the periods up to
the determined period is considered zero and the rest remain unchanged.
The decoding algorithm of the priority-based encoding for the NPD multi product case
for the third segment is presented in the next subsection. As the periods for developing
and producing products is determined and applied one the third segment chromosome,
these determined periods is transformed to the second segment chromosome and the
chromosome updating is done for this segment, but the first segment remain unchanged
and the general decoding procedure is applied.
12
4.1.3- Decoding procedure for the SC problem
The chromosome of SC for the problem in this paper is decoded on the backward
direction. First, a transportation tree between customer groups and distributer centers is
obtained using algorithm (1). In the second step, by the outputs of the third segment and
the periods obtained for introducing new and developed products from the third segment,
the transportation tree between distributer centers and manufactures is derived by an
algorithm similar to algorithm (1) except that here the periods for introducing new and
developed products are as same as the one obtained from the third segment. Lastly, the
transportation tree between manufactures and suppliers is obtained by decoding the first
segment using procedure (1) given in Figure (4). An overall procedure for decoding the
proposed chromosome is shown in Figure (5).
Insert Figure 2
Insert Figure 3
Insert Figure 4
Insert Figure 5
13
Crossover is known as the most important recombination operator in GA. The goal of
crossover operator is to explore new solution space and increase the speed at which the
optimum solution is acquired. To perform the crossover, two parents are selected
randomly. Then, their periods for developing and introducing new products are
exchanged. In other words, when two parents are selected randomly, their priority based
chromosomes are updated by the exchanged periods and then is decoded using Procedure
1 given in Figure 3 and the fitness function is obtained.
Algorithm 2: Priority- based GA for multi echelon, multi product, multi period SC problem
Input: SC data, GA parameters
Output: best solution (Maximum total profit)
Begin
k ←1 ;
Initialize p ( k ) by priority-based encoding
Evaluate ( p )
While (not terminate condition) do
Select p1 ( k ) and p2 ( k ) for crossover
Apply crossover to p1 ( k ) and p2 ( k ) for obtaining p1 ( k ) and p2 ( k )
' '
Evaluate p1 ( k ) , p2 ( k ) and p3 ( k )
' ' '
5- Computational results
14
5.1- Numerical test problems
For experimentation, this section presents the application of the proposed model along
with the proposed GA algorithm on some random test problems. Some sets of small,
medium and large sized instances are considered to evaluate the performance of the
solution approach. For experimental comparison under a same condition, the parameters
of each test problem are set as: pop size=100; max iteration=200; crossover rate=0.8;
mutation rate=0.1.
First, three small-sized instance is developed due to its ability to compare with the global
optimum. These problems are coded by Lingo optimization software to achieve the
global optimum. Second, the proposed GA is coded by Matlab8.2.0.701 (R2013b)
software to complete the process of comparison. All computations are run on an Intel(R)
Core(TM) i7-4501U CPU@ 2.60 GHz processor laptop. The results of solving these
random test problems using LINGO and proposed GA are shown and compared in Table
(11). GAP in Table (11) illustrates the relative difference between objective values
obtained by two methods. As shown in Table (11), with the result obtained from the
proposed GA for small sized problems, it is noticed that the proposed GA is able to find
the near optimal solutions in a reasonable computational time. However Lingo gives the
real optimal solutions in a shorter time for small sized problems. On the basis of the
results from the small sized problem, the Lingo software provides results in reasonable
time. However, the GA and Lingo solution search qualities are almost the same.
Two test problems are solved to show the performance of the proposed GA which Lingo
was not able to solve it optimally. After 10h the Lingo solver was only able to specify the
best feasible objective function value. The solver was then interrupted and the best values
of the considered examples are demonstrated in Table (11). By considering the GAP
between the objective value of proposed GA and the best feasible objective function
value from the Lingo solver, it is concluded that the proposed GA is capable to find near
optimal solutions for medium sized problems and it is also important to notice that from
the computational time point of view the proposed GA is efficient, too.
As shown in Table (11), for two large sized test problems, after 10h, Lingo is not able to
find even feasible solutions while the proposed GA solved them in less than half an hour.
As the case parameters increases, complexity increases. In other words, as the number of
the products and the ones which are going to be developed and produced newly, increase,
the problem becomes more complicated and the Lingo software requires a much longer
time to solve the problem or either is not able to solve. As far as for real world problems
Lingo is very inefficient. Thus, GA retains high performance and takes reasonable time
for complex problems.
Insert Table 11
However the performance of GAs relies on the values of the parameters, identification of
the parameters is a hard task. Obviously, there are many components and parameters that
can be changed and tuned for optimal algorithm performance. Therefore, several
approaches have been proposed in the literatures to identify the correct values of the GAs
parameters. FLCs are efficient methods to control GAs parameters during genetic search
15
process. Song et al. (1997) proposed an improved GA with two fuzzy controllers based
on some heuristics to adaptively adjust the crossover probability and mutation rate during
the optimization process. Gen and Cheng (2000) have offered various adaptive methods
using several FLCs in their book. Yun and Gen (2003) proposed some genetic algorithms
with adaptive abilities and compared the performance among them under a same
condition. As another study, Lin and Gen (2009) proposed an auto-tuning strategy by
using FLC to tune the probabilities of the genetic operators. Their effective approach can
correspond to most optimization problems. More recently, Sharma and Kasniya (2015)
presented the application of a fuzzy logic controlled algorithm to economic dispatch.
They described the implementation of the fuzzy crossover and mutation controllers and
compared its performance with conventional GA.
The basic concept of Song et al. (1997) and Yun and Gen (2003) are used here to
adaptively regulate the rates of crossover and mutation operators during the GAs search
process. FLC is implemented to change the mutation and crossover rate adaptively on the
basis of the fitness values at the current and previous generations for each iteration. It
increases the rates of the crossover and mutation operators if it consistently produces a
better offspring during the process, and conversely, if it produces a poorer offspring, it
reduces the rates of the crossover and mutation operators. By this way, it encourages the
well performing operators to produce more offspring and reduces the chance of poorly
performing operators to produce offspring.
16
tables for the fuzzy mutation controller are similar to the crossover ones (Tables (12) and
(13), respectively).
Insert Table 12
Insert Figure 6
Insert Figure 7
Insert Table 13
17
produced products is an important issue. These periods are obtained for the test problem
7 by general GA and controlled GA. By the controlled GA, it follows that developing
product start at period 15 and new product production start at period 4, similarly, the
general GA states period 19 for developing and period 7 for producing new product. As
results, controlled GA gives a better introduction time. Figure (8) shows the objective
function (fitness function) curves of general GA and controlled GA for test problem 7.
The results of the controlled GA demonstrate that the overall performance of FLC GA is
better in comparison with general GA.
Insert Table 14
Insert Table 15
Insert Figure 8
6- Conclusions
Customer needs and wants are delicate and complex. If a company understands
them and makes efforts to fulfill customer demands, the corresponding SC needs
reconfiguration. Incorporating the SC with NPD is a challenging task. This paper
aims to identify a multi echelon multi product multi period optimization model for
SC configuration and NPD. The proposed model incorporates three kinds of products:
products which are produced during the planning horizon, products which are decided to
be developed and products that are newly introduced during the planning horizon.
The indicated model was capable to determine the optimized lunching time and
phasing time during a planning horizontal time in order to maximum the total profit.
To solve the proposed model the priority based GA is utilized. Some test
problems was provided to illustrate the practicality and validity of the proposed
model and the obtained solutions were compared with the optimal solutions
derived by using Lingo software. A fuzzy controller was described and
considered to adaptively adjust the crossover and mutation rates. The computing
results represent that the controlled GA is efficient and gives quality solutions
and near optimal solutions with a very low difference and reasonable time. In
addition, compared with conventional GA, the results indicate that the controlled
GA improves the performance of conventional GA.
Further research could be planned to investigate other evolutionary algorithms
for obtaining optimal solutions and compare them and consider other adaptive
abilities.
References
Ahmadizar, F., Zeynivand, M. and Arkat, J., (2015) Two-level vehicle routing with
cross-docking in a three-echelon supply chain: A genetic algorithm approach,
Applied Mathematical Modelling, 39(22) 7065-7081.
Amini, M. and Li, H., (2011) Supply chain configuration for diffusion of new products:
an integrated optimization approach, Omega, 39, 313–322.
Altiparmak, F., Gen, M., Lin, L. and Karaoglan, I., (2009) A steady-state genetic
18
algorithm for multi-product supply chain network design, Computers and Industrial
Engineering, 56(2) 521–537.
Billington, C., Lee, H. and Tang, C., (1998) Successful strategies for product rollovers,
MIT Sloan Management Review, 39, 23–30.
Bootaki, B., Mahdavi, I. and Paydar, M.M., (2014) A hybrid GA-AUGMECON method
to solve a cubic cell formation problem considering different worker skills, Computers
& Industrial Engineering, 75, 31-40.
Demirel, N., Özceylan, E., Paksoy, T. and Gökçen, H., (2014) A genetic algorithm
approach for optimising a closed-loop supply chain network with crisp and fuzzy
objectives, International Journal of Production Research, 52(12) 3637–3664.
Eiben, A.E., Michalewicz, Z., M. Schoenauer, M. and Smith, J.E., (1999) Parameter
Control in Evolutionary Algorithms, IEEE Transactions on Evolutionary
Computation, 3 (2), 124-141.
Fahimnia, B., Luong, L. and Marian, R., (2012) Genetic algorithm optimisation of an
integrated aggregate production–distribution plan in supply chains, International
Journal of Production Research, 50(1) 81–96.
Flynn, B.B., Huo, B. and Zhao, X., (2010) The impact of supply chain integration on
performance: a contingency and configuration approach, Journal of Operations
Management, 28(1) 58–71.
Gen, M. and Cheng, R., (2000) Genetic algorithms and engineering optimization, John
Wiley and Sons, New York.
Gen, M., Altiparmak, F. and Lin, L., (2006) A genetic algorithm for two-stage
transportation problem using priority-based encoding, OR Spectrum, 28, 337–354.
Hong, P., Doll, W.J., Nahm, A.Y. and Li, X., (2004) Knowledge sharing in integrated
product development, European Journal of Innovation Management, 7 (2) 102–112.
Hong, T.P., Wang, H.S., Lin, W.Y. and Lee, W.Y., (2002) Evolution of Appropriate
Crossover and Mutation Operators in a Genetic Process, Applied Intelligence, 16(1),
7-17.
He, Y., Lai, K.K., Sun, H. and Chen, Y., (2014) The impact of supplier integration on
customer integration and new product performance: The mediating role of
manufacturing flexibility under trust theory, International Journal of Production
19
Economics, 147(Part B) 260-270.
He, J., Huang, Y. and Chang, D., (2015) Simulation-based heuristic method for container
supply chain network optimization, Advanced Engineering Informatics, 29(3) 339-
354.
Jafarian, M. and Bashiri, M., (2014) Supply chain dynamic configuration as a result of
new product development, Applied Mathematical Modelling, 38 (3) 1133-1146.
Jamshidi, R., Fatemi Ghomi, S.M.T. and Karimi, B., (2015) Flexible supply chain
optimization with controllable lead time and shipping option, Applied Soft Computing,
30, 26–35.
Koufteros X.A., Edwin Cheng T. and Lai K.H., (2007) “Black-box” and “gray-box”
supplier integration in product development: Antecedents, consequences and the
moderating role of firm size, Journal of Operations Management, 25, 847-870.
Li, H. and Amini, M., (2012) A hybrid optimisation approach to configure a supply chain
for new product diffusion: a case study of multiple-sourcing strategy, International
Journal of Production Research, 50 (11) 3152–3171.
Lin, L. and Gen, M., (2009) Auto-tuning strategy for evolutionary algorithms: balancing
between exploration and exploitation, Soft Computing, 13 (2) 157-168.
Lin, L., Gen, M. and Wang, X., (2009) Integrated multistage logistics network design by
using hybrid evolutionary algorithm, Computers & Industrial Engineering, 56, 854–
873.
Mahdavi, I., Paydar, M.M., Solimanpur, M. and Heidarzade, A., (2009) Genetic
algorithm approach for solving a cell formation problem in cellular manufacturing,
Expert Systems with Applications, 36, 6598–6604.
Naraharisetti, P. and Karimi, I.A., (2010) Supply chain redesign and new process
introduction in multipurpose plants, Chemical Engineering Science, 65, 2596–2607.
Nepal, B., Monplaisir, L. and Famuyiwa, O., (2011) A multi-objective supply chain
configuration model for new products, International Journal of Production Research,
49 (23) 7107–7134.
Paydar, M.M, Mahdavi, I., Sharafuddin, I. and Solimanpur, M., (2010) Applying
20
simulated annealing for designing cellular manufacturing systems using MDmTSP,
Computers & Industrial Engineering, 59 (4) 929-936.
Ribas I. and Companys, R., (2015) Efficient heuristic algorithms for the blocking flow
shop scheduling problem with total flow time minimization, Computers & Industrial
Engineering, 87, 30-39.
Roghanian, E. and Pazhoheshfar, P., (2014) An optimization model for reverse logistics
network under stochastic environment by using genetic algorithm, Journal of
Manufacturing Systems, 33(3) 348-356.
Schwefel, H.-P., Numerical Optimisation of Computer Models, (1981) Wiley, New York.
Sel, C. and Bilgen, B., (2014) Hybrid simulation and MIP based heuristic algorithm for
the production and distribution planning in the soft drink industry, Journal of
Manufacturing Systems, 33 (3) 385–399.
Sharma, V.K. and Kasniya, B., (2015) Economic Load Dispatch Using Fuzzy Logic
Controlled Genetic Algorithms, International Journal of Scientific & Engineering
Research, 6 (10) 141-149.
Syarif, A., Yun, Y. and Gen, M., (2002) Study on multi stage logistics chain network: A
spanning tree- based genetic algorithm approach, Computers and Industrial
Engineering, 43, 299-314.
Simchi-Levi, D., Kaminsky, P., Simchi-Levi, E., (2000) Designing and Managing the
Supply Chain: Concepts, Strategies, and Case Studies, McGraw-Hill, New York.
Soleimani, H. and Kannan, G., (2015) A Hybrid Particle Swarm Optimization and
Genetic Algorithm for Closed-Loop Supply Chain Network Design in large-scale
networks, Applied Mathematical Modelling, 39 (14) 3990-4012.
Song, Y. H., Wang, G. S., Wang, P. T. and Johns, A. T., (1997) Environmental/Economic
Dispatch Using Fuzzy Logic Controlled Genetic Algorithms, IEEE Proceedings on
Generation, Transmission and Distribution, 144(4) 377– 382.
Van Kleef, E., Van Trijp, H.C.M. and Luning, P., (2005) Consumer research in the early
stages of new product development: A critical review of methods and techniques,
Food Quality & Preference, 16, 181–201.
Yun, Y. and Gen, M., (2003) Performance Analysis of Adaptive Genetic Algorithms with
Fuzzy Logic and Heuristics, Fuzzy Optimization and Decision Making, 2, 161– 175.
21
Order
Demand
Manufactures Distributors
Supplier 1 Customer 1
Customer 2
Supplier 2
Products
• •
• •
• •
• •
Customers
Suppliers
[ 4 8 2 10 7 12 ] [ 17 1 15 5 14 18 ] [ 16 6 9 13 3 11 ]
[ 2 11 6 13 15 5 ] [ 3 7 14 10 4 16 ] [ 18 1 9 12 17 8 ]
[ 6 12 10 2 9 5 14 ] [ 11 1 8 13 3 7 4 ]
Figure 2. An example of representation for multi product multi echelon SC for one period.
1
Segment 1 Segment 2
Segment 3
t=1
Raw material 1 … Raw material R Product 1 … Product I Product 1 … Product I
S1 … Ss f1 … ff … S1 … Ss f1 … ff f1 … ff D1 … DD … f1 … ff D1 … DD D1 … DD G1 … GG … D1 … DD G1 … GG
t=2
Raw material 1 … Raw material R Product 1 … Product I Product 1 … Product I
S1 … Ss f1 … ff … S1 … Ss f1 … ff f1 … ff D1 … DD … f1 … ff D1 … DD D1 … DD G1 … GG … D1 … DD G1 … GG
.
.
.
.
t=T
Raw material 1 … Raw material R Product 1 … Product I Product 1 … Product I
S1 … Ss f1 … ff … S1 … Ss f1 … ff f1 … ff D1 … DD … f1 … ff D1 … DD D1 … DD G1 … GG … D1 … DD G1 … GG
Figure 3. An illustration of a chromosome for multi product multi echelon multi period SC.
2
Procedure 1: Priority based decoding for multi product multi period transportation tree
Inputs: F: Set of sources, G: Set of depots, I: Set of products, T: Number of periods,
Dgi : Demand on depot g for product i, " g Î G , i Î I ,
C fi : Capacity of source f for product i, " f Î F , i Î I ,
T fgi : Transportation cost of one unit of product i from source f to depot g,
" f Î F,i Î I
V (T ( I ( f + g ) ) ) :Chromosome, " f Î F , g Î G ,
Outputs:
x fgit :The amount of product i transferred from source f to depot g in period t.
For t=1 to T
Step 1: x fgit = 0 , " f Î F , g Î G , i Î I
Step 2: Select a node based on p = arg max {V (n), n Î I * ( F + G )} ,
é pù
Determine the product type based on i = ê
*
Step 3: ú
êF +Gú
If p Î F for product i then a source is selected f = p
* *
Step 4:
g = arg min Tf
*
{ *
gi
* V (((i - 1) * (F + G)) + F + g) ¹ 0, g Î G
*
}
Select a depot with minimum cost
Else p Î G for product i a depot is selected g = p
* *
f = arg min T
*
{ fg
* *
i
V (((i - 1) * (F + G)) + f ) ¹ 0, f Î F
*
}
Select a source with minimum cost
Step 5: xf * * *
g i t {
= min Dg i , C f * * * *
i
} then update demands and capacities:
Dg i = Dg i - x
* * * * *
f g i
* *
t
, Cf i = Cf
* * * *
i
-x *
f g i
* *
t
Step 6: If D * *
g i
= 0 then V (((i - 1) * (F + G)) + f ) = 0
*
If C * *
f i
= 0 then V (((i - 1) * (F + G)) + F + g ) = 0
*
3
Procedure 2: An overall pseudo code for priority based decoding of the chromosome
Inputs: Number of raw materials, suppliers, manufactures, distributer centers, customer groups, products,
periods,
SC data,
V1 ,V2 ,V3 : Chromosomes of the first, second and third segment, respectively.
Outputs: X , X ' , X '' : The transferred amount between every two echelons in the first, second and third
segment, respectively,
Z= Maximum profit (objective function).
''
Step 1: Set the customers as depots and distributer centers as sources, call algorithm 1 to obtain X
Update the second segment by the randomly period obtained in step 1 and call procedure 1 to
Step 2: '
obtain X
Step 3: Calculate X using procedure 1
Step 4: Calculate and output Z (objective function)
End
Figure 5. An overall decoding procedure for priority-based encoding
4
m
NR NL NM NS ZE PS PM PL PR
R
-1.0 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1.0
Figure 6. Membership functions for Df ( t - 1 ) and Df ( t ) , where NR- Negative Larger; NL- Negative Large;
NM- Negative Medium; NS- Negative small; ZE- Zero; PS- Positive small; PM- Positive medium; PL- Positive large;
PR- Positive larger.
NR NL NM NS ZE PS PM PL PR
R
-0.1 -0.08 -0.06 -0.04 -0.02 0 0.02 0.04 0.06 0.08 0.1
5
x 10
8 (a)
1.63
O b je c t iv e f u n c t io n
1.62
1.61
1.6
1.59
0 20 40 60 80 100 120 140 160 180 200
Generation
x 10
8 (b)
1.64
1.63
O b je c t iv e f u n c t io n
1.62
1.61
1.6
1.59
0 20 40 60 80 100 120 140 160 180 200
Generation
Figure 8. (a) General GA, (b) Controlled GA outputs for objective function of test problem 7
6
Table 1: Transportation costs
Supplier Distributor
TCSsf TCMfd
Manufacture 1 2 3 1 2 3 4
1 0.13 0.16 0.15 0.5 0.3 0.5 0.1
2 0.12 0.19 0.18 0.3 0.7 0.5 0.4
3 0.14 0.18 0.15 0.4 0.1 0.2 0.5
4 0.19 0.15 0.17 0.4 0.5 0.1 0.2
TCD dg
Customer group
1 1.5 1.3 1.6 1.4
2 1.7 1.1 1.8 1.2
Raw material
Product 1 2 3 4 5 6
1 2 0 3 1 2 3
2 0 3 2 2 1 4
3 2 3 0 1 2 3
4 1 1 4 0 2 0
1
Table 4: Production, raw material and end product inventory cost
Raw material holding cost End product inventory holding cost Production cost
1 2 3 4 5 6 1 2 3 4 1 2 3 4
1 0.01 0.06 0.07 0.04 0.03 0.08 0.75 0.73 0.8 0.85 15 20 25 21
2 0.07 0.04 0.07 0.05 0.05 0.07 0.67 0.65 0.65 0.7 19 21 18 22
3 0.06 0.05 0.08 0.04 0.08 0.05 0.85 0.84 0.9 0.93 21 24 20 20
4 0.04 0.05 0.07 0.03 0.05 0.07 0.75 0.8 0.82 0.84 24 22 23 19
Initial raw material inventory Initial end product inventory Fixed cost
1 2 3 4 5 6 1 2 3 4 1 2 3 4
1 15 16 15 20 22 18 10 15 0 0 2 4 5 7
2 14 18 19 15 20 23 14 16 0 0 2 4 5 7
3 18 14 20 19 21 17 18 20 0 0 2 4 5 7
4 13 15 17 20 22 19 10 14 0 0 2 4 5 7
Period
Manufacture
1 2 3 4 5 6 7 8 9 10
1 1000 900 800 1600 800 1200 1100 1030 950 800
2 800 1000 1200 1120 1100 900 850 1190 800 820
3 950 1000 850 900 970 1500 1300 1400 1000 1300
4 1100 1000 1200 1270 1000 950 1100 1050 1100 1000
2 1 6 7 8 9 9 10 11 12 13 13
2 4 5 7 8 9 9 10 11 12 13
3 6 7 8 9 10 11 12 13 14 14
3 1 4 5 7 8 9 9 10 11 12 13
2 6 7 8 9 10 11 12 13 14 15
3 5 6 8 9 10 10 11 11 13 14
4 1 6 7 8 9 10 11 12 13 14 15
2 5 6 7 8 9 9 10 11 12 13
3 7 9 10 12 12 13 14 15 16 17
5 1 5 6 8 9 10 10 11 12 13 14
2 7 9 10 12 12 13 14 15 16 16
3 6 7 8 8 10 11 12 13 14 15
6 1 7 9 10 12 12 13 14 15 16 16
2 6 7 8 9 9 10 11 12 13 13
3 5 6 8 9 10 11 11 12 13 13
2
Table 7: Supplier capacity
Raw material
Supplier 1 2 3 4 5 6
1 3120 3160 3140 3110 3130 3130
2 3150 3140 3120 3190 3120 3160
3 3160 3130 3200 3140 3190 3120
* The capacity of suppliers are assumed to be equal in the planning horizon
2 1 290 340 210 330 440 290 330 360 330 410
2 290 410 360 190 290 380 260 290 390 380
3 1 440 290 280 380 290 500 370 460 490 480
2 380 380 400 310 340 390 340 390 460 280
4 1 400 370 290 440 360 440 400 350 290 340
2 300 370 440 290 310 400 300 400 410 340
2 1 251 214 242 274 289 283 265 252 150 210
2 156 135 115 183 197 172 278 212 144 132
3 1 159 150 186 129 115 101 116 182 128 204
2 241 170 277 185 255 254 266 139 260 143
4 1 200 224 116 257 184 247 176 273 126 128
2 136 219 247 158 251 201 205 157 137 183
3
Table 11: Comparison of proposed GA and LINGO for small, medium and large-sized test proble
Medium sized
problems
4 12 6 4 4 10 10 12 28839862.24 30453920 00:09:15 10:00:00 5.3
5 15 6 4 5 12 10 14 15527388.24 16589090 00:10:34 10:00:00 6.4
Large sized
problems
6 20 8 5 5 12 15 16 115320000 ----- 00:11:18 10:00:00 -----
7 20 8 5 5 14 15 20 162890000 ----- 00:15:22 10:00:00 -----
4
Table 12: Fuzzy decision table for crossover and mutation
Df ( t - 1 )
D c (t )
NR NL NM NS ZE PS PM PL PR
NR NR NL NL NM NM NS NS ZE NE
NL NL NL NM NM NS NS ZE ZE PS
NM NL NM NM NS NS ZE ZE PS PS
NS NM NM NS NS ZE ZE PS PS PM
Df (t ) ZE NM NS NS ZE PE PS PS PM PM
PS NS NS ZE ZE PS PS PM PM PL
PM NS ZE ZE PS PS PM PM PL PL
PL ZE ZE PS PS PM PM PL PL PR
PR ZE PS PS PM PM PL PL PR PR
Table 13: Defuzzification table for control action of crossover and mutation
Z ( i, j ) i
-4 -3 -2 -1 0 1 2 3 4
-4 -4 -3 -3 -2 -2 -1 -1 0 0
-3 -3 -3 -2 -2 -1 -1 0 0 1
-2 -3 -2 -2 -1 -1 0 0 1 1
-1 -2 -2 -1 -1 0 0 1 1 2
j 0 -2 -1 -1 0 2 1 1 2 2
1 -1 -1 0 0 1 1 2 2 3
2 -1 0 0 1 1 2 2 3 3
3 0 0 1 1 2 2 3 3 4
4 0 1 1 2 2 3 3 4 4
Table 14: Comparison of general GA and FLC GA for proposed test problems
No. of Objective value CPU time GAP
examples GA FLC GA GA FLC GA GA FLC GA
3 23904985.09 24224373.38 00:08:15 00:11:13 2.7 1.4
4 28839862.24 29479394.56 00:09:15 00:09:10 5.3 3.2
5 15527388.24 15776224.59 00:10:34 00:13:05 6.4 4.9
6 115320000 117284000 00:11:18 00:11:40 - -
7 162890000 163430000 00:15:22 00:17:25 - -
Table 15: Comparison of general GA and FLC GA for test problem 7 with crossover rate 0.5
Ex. 7 Objective value CPU time GAP
General GA 162640000 00:12:01 0.15%
FLC GA 163430000 00:11:08 0
5
Highlights:
• Designing a multi-echelon multi-product multi-period supply chain model
• Considering new product development effects in supply chain configuration
• Developing a priority based genetic algorithm to find the suitable solution at
reasonable time
28