A new efficient encoding/decoding procedure for the design of a supply chain network with genetic...

14
A new efficient encoding/decoding procedure for the design of a supply chain network with genetic algorithms q Antonio Costa , Giovanni Celano, Sergio Fichera, Enrico Trovato Dipartimento di Ingegneria Industriale e Meccanica, University of Catania, Viale Andrea Doria 6, 95125 Catania, Italy article info Article history: Received 10 June 2009 Received in revised form 8 April 2010 Accepted 15 September 2010 Available online 22 September 2010 Keywords: Supply chain network Logistic costs Optimization Genetic algorithms Encoding–decoding procedure abstract Supply chain network (SCN) design is a strategic issue which aims at selecting the best combination of a set of facilities to achieve an efficient and effective management of the supply chain. This paper presents an innovative encoding–decoding procedure embedded within a genetic algorithm (GA) to minimize the total logistic cost resulting from the transportation of goods and the location and opening of the facilities in a single product three-stage supply chain network. The new procedure allows a proper demand allo- cation procedure to be run which avoids the decoding of unfeasible distribution flows at the stage of the supply chain transporting products from plants to distribution centers. A numerical study on a bench- mark of problems demonstrates the statistical outperformance of the proposed approach vs. others cur- rently available in literature in terms of total supply chain logistic cost saving and reduction of the required computation burden to achieve an optimal design. Ó 2010 Elsevier Ltd. All rights reserved. 1. Introduction Supply chain management (SCM) covers a wide range of sub- ject areas including purchasing and supply, logistics and transpor- tation, marketing, organizational behavior, network, strategic management, management information systems and operations management: all of these areas have contributed to the explosion of literature dealing with SCM: a complete survey is available in Chen and Paulraj (2004). Several definitions of SCM have been re- ported in literature (Croom, Romano, & Giannakis, 2000): a large number of them refers to the concept of network of facilities or- ganized to allow for an efficient and effective flow of products, materials and information from suppliers to customers. Thus, a multi-stage supply chain network (MSCN) can be modeled by means of a sequence of stages, each consisting of a set of nodes, i.e. the existing or potential facilities located in several countries or regions of the world where goods are transformed or manufac- tured or stocked and delivered: suppliers, plants, distribution cen- ters (DCs) and customers. The structure of each stage of the supply chain is completed by a set of arcs connected to the nodes and representing the flow of goods: each arc has a weight propor- tional to the cost incurred in between the two nodes it connects together. Usually, for a connecting arc the outgoing node and the incoming nodes are respectively defined as sources and depots. In the recent years, the multi-stage supply chain network de- sign problem has received a great deal of attention due to the increasing competitiveness generated by the overflowing market globalization. This competitiveness forces the companies to assure their customers a high level of service and, at the same time, to control costs and maximize profits along the overall supply chain in order to hamper their competitors’ rise. The network design problem plays a key role in the long-term strategic decision- making that managers need to optimize to keep efficient the whole supply chain. The outcome of a MSCN design problem is usually twofold: identifying the optimal number and the location of the manu- facturing plants and distribution centers to be added to each stage of the network; selecting the optimal logistic transportation trees representing the flow of the optimal quantities of raw materials, semi- finished and final products from suppliers to customers throughout the stages of the supply chain. The optimization of the MSCN design problem requires the pre- liminary definition of one or more performance metrics allowing the efficiency and effectiveness of different supply chain configura- tions to be quantified and compared. A stream of the literature re- search in this field refers to the single objective approach pursuing the minimization of the total cost of the supply chain such that the product demand from several customers is satisfied without exceeding the capacities of the network facilities, see the recent contributions of Jayaraman and Ross (2003), Yan, Yu, and Cheng 0360-8352/$ - see front matter Ó 2010 Elsevier Ltd. All rights reserved. doi:10.1016/j.cie.2010.09.011 q This manuscript was processed by Area Editor Mohamad Y. Jaber. Corresponding author. Tel.: +39 0957382457; fax: +39 095337994. E-mail addresses: [email protected] (A. Costa), [email protected] (G. Celano), sfi[email protected] (S. Fichera), [email protected] (E. Trovato). Computers & Industrial Engineering 59 (2010) 986–999 Contents lists available at ScienceDirect Computers & Industrial Engineering journal homepage: www.elsevier.com/locate/caie

Transcript of A new efficient encoding/decoding procedure for the design of a supply chain network with genetic...

Page 1: A new efficient encoding/decoding procedure for the design of a supply chain network with genetic algorithms

Computers & Industrial Engineering 59 (2010) 986–999

Contents lists available at ScienceDirect

Computers & Industrial Engineering

journal homepage: www.elsevier .com/ locate/caie

A new efficient encoding/decoding procedure for the design of a supplychain network with genetic algorithms q

Antonio Costa ⇑, Giovanni Celano, Sergio Fichera, Enrico TrovatoDipartimento di Ingegneria Industriale e Meccanica, University of Catania, Viale Andrea Doria 6, 95125 Catania, Italy

a r t i c l e i n f o a b s t r a c t

Article history:Received 10 June 2009Received in revised form 8 April 2010Accepted 15 September 2010Available online 22 September 2010

Keywords:Supply chain networkLogistic costsOptimizationGenetic algorithmsEncoding–decoding procedure

0360-8352/$ - see front matter � 2010 Elsevier Ltd. Adoi:10.1016/j.cie.2010.09.011

q This manuscript was processed by Area Editor Mo⇑ Corresponding author. Tel.: +39 0957382457; fax

E-mail addresses: [email protected] (A. C(G. Celano), [email protected] (S. Fichera), etrova

Supply chain network (SCN) design is a strategic issue which aims at selecting the best combination of aset of facilities to achieve an efficient and effective management of the supply chain. This paper presentsan innovative encoding–decoding procedure embedded within a genetic algorithm (GA) to minimize thetotal logistic cost resulting from the transportation of goods and the location and opening of the facilitiesin a single product three-stage supply chain network. The new procedure allows a proper demand allo-cation procedure to be run which avoids the decoding of unfeasible distribution flows at the stage of thesupply chain transporting products from plants to distribution centers. A numerical study on a bench-mark of problems demonstrates the statistical outperformance of the proposed approach vs. others cur-rently available in literature in terms of total supply chain logistic cost saving and reduction of therequired computation burden to achieve an optimal design.

� 2010 Elsevier Ltd. All rights reserved.

1. Introduction

Supply chain management (SCM) covers a wide range of sub-ject areas including purchasing and supply, logistics and transpor-tation, marketing, organizational behavior, network, strategicmanagement, management information systems and operationsmanagement: all of these areas have contributed to the explosionof literature dealing with SCM: a complete survey is available inChen and Paulraj (2004). Several definitions of SCM have been re-ported in literature (Croom, Romano, & Giannakis, 2000): a largenumber of them refers to the concept of network of facilities or-ganized to allow for an efficient and effective flow of products,materials and information from suppliers to customers. Thus, amulti-stage supply chain network (MSCN) can be modeled bymeans of a sequence of stages, each consisting of a set of nodes,i.e. the existing or potential facilities located in several countriesor regions of the world where goods are transformed or manufac-tured or stocked and delivered: suppliers, plants, distribution cen-ters (DCs) and customers. The structure of each stage of thesupply chain is completed by a set of arcs connected to the nodesand representing the flow of goods: each arc has a weight propor-tional to the cost incurred in between the two nodes it connectstogether. Usually, for a connecting arc the outgoing node and theincoming nodes are respectively defined as sources and depots.

ll rights reserved.

hamad Y. Jaber.: +39 095337994.osta), [email protected]@dees.unict.it (E. Trovato).

In the recent years, the multi-stage supply chain network de-sign problem has received a great deal of attention due to theincreasing competitiveness generated by the overflowing marketglobalization. This competitiveness forces the companies to assuretheir customers a high level of service and, at the same time, tocontrol costs and maximize profits along the overall supply chainin order to hamper their competitors’ rise. The network designproblem plays a key role in the long-term strategic decision-making that managers need to optimize to keep efficient the wholesupply chain. The outcome of a MSCN design problem is usuallytwofold:

� identifying the optimal number and the location of the manu-facturing plants and distribution centers to be added to eachstage of the network;� selecting the optimal logistic transportation trees representing

the flow of the optimal quantities of raw materials, semi-finished and final products from suppliers to customersthroughout the stages of the supply chain.

The optimization of the MSCN design problem requires the pre-liminary definition of one or more performance metrics allowingthe efficiency and effectiveness of different supply chain configura-tions to be quantified and compared. A stream of the literature re-search in this field refers to the single objective approach pursuingthe minimization of the total cost of the supply chain such that theproduct demand from several customers is satisfied withoutexceeding the capacities of the network facilities, see the recentcontributions of Jayaraman and Ross (2003), Yan, Yu, and Cheng

Page 2: A new efficient encoding/decoding procedure for the design of a supply chain network with genetic algorithms

Fig. 1. The three-stage supply chain network.

A. Costa et al. / Computers & Industrial Engineering 59 (2010) 986–999 987

(2003), Gen and Syarif (2005), Truong and Azadivar (2005), Amiri(2006). This approach usually involves making tradeoffs amongthe cost components of the system that include: (i) the costs ofopening and operating the facilities and (ii) the inbound and out-bound transportation costs.

The MSCN design problems can be classified as mixed-integerprogramming problems: they have been recognized as NP-hardproblems that combine the multiple choice knapsack problem withthe capacitated location–allocation problem (Gen & Cheng, 1997).In the last decades, several optimization procedures have beendeveloped to solve these problems. Recently, Amiri (2006) pre-sented a heuristic method based on the Lagrange relaxation tech-nique to minimize the total cost of a two stages, uncapacitatedSCN distribution network. The optimal configuration of a produc-tion and distribution network respecting both operational andfinancial constraints has been determined by Tsiakys andPapageorgiou (2008): a mixed integer linear programming modelis embedded as an add-on within the Excel� spreadsheet environ-ment and a case study for the coatings business unit of a globalspecialty chemicals manufacturer is used to demonstrate the appli-cability of their approach.

The SCN design problems have also been solved by means of evo-lutionary algorithms. The first attempt to go beyond the traditionalmathematical modeling and to exploit the efficiency of the geneticalgorithms (GA) to solve the SCN design problems modeled as thebalanced allocation of customers to multiple and uncapacitated dis-tribution has been proposed by Zhou, Min, and Gen (2002). Chan,Chung, and Wadhwa (2004) optimized the demand allocation for atwo-stage, single product, and partially capacitated, collaborativeSCN design problem: they implemented a multi-criteria geneticoptimization algorithm which combines the optimization method-ology of Genetic algorithms (GAs) with the decision-making tech-nique of the Analytic Hierarchy Process (AHP). A hierarchicalcombination of mixed-integer programming and a genetic algo-rithm has been proposed in Truong and Azadivar (2005) to deter-mine simultaneously the values of quantitative as well as policyvariables. Starting by the consideration that a multi-stage SCN is asequence of multiple SCN stages in which the flow can be only trans-ferred between two consecutive stages, Yeh (2006) presented amemetic algorithm for the minimization the total transportationcost of a given distribution network design problem, involving thechoice of facilities (plants and distribution centers) to be openedand the distribution network design to be configured. The proposedalgorithm was developed by combining the following methods: thegenetic algorithm (GA), the multi-greedy heuristic method, the lin-ear programming technique and three local search methods. Gen,Cheng, and Lin (2008) propose a GA based approach to cope withnetwork multiple objective problems.

When implementing GAs the definition of the chromosome, i.e.the string representing a possible problem solution, is a key issuethat strongly affects the performance of the algorithms both interms of the quality of the optimal solutions and the speed of con-vergence. The spanning-tree based representation would be appro-priate for a distribution network design problem: thus, a properproblem encoding procedure is required. Prüfer number-based andpriority-based encodings represent the most popular proceduresadopted by the researchers to optimize the SCN design problems.

The Prüfer number-based encoding was originally adopted byGen and Cheng (2000) and belongs to the family of the vertex-based encodings. It allows for the size of the string representingthe transportation tree to be significantly reduced since only|K| + |J| � 2 digits are needed when the connections among Ksources and J depots have to be arranged for a single stage of thesupply chain. In addition, the Prufer number-based encoding mayallow for a ‘‘demand splitting” condition allocating the product de-mand from a single depot to multiple sources. Since the Prüfer

number-based encoding can produce unfeasible chromosomesdue to violation of the flow conservative law, chromosome replace-ment, see Gen and Cheng (2000), or repairing procedures havebeen proposed in literature, (Gen & Syarif, 2005; Syarif & Gen,2003; Syarif, Yun, & Gen, 2002). In order to escape from the repairmechanisms characterizing the Prüfer number-based encoding, re-cently Gen, Altiparmak, and Lin (2006) and Altiparmak, Gen, Lin,and Paksoy (2006) implemented the priority-based encoding.Although for the single stage problem the priority-based approachallows repair procedures to be avoided after any genetic operatorimplementation to the chromosomes, some exceptions may resultwhen a multi-stage supply chain network has to be designed. Tomodel a single product three-stage SCN, Altiparmak et al. (2006)introduced a three segment chromosome string which is decodedthrough a backward procedure from the third stage representingthe transportation tree between customers and DCs up to the firststage connecting suppliers and plants: this decoding structure canrequire some repair procedures when the number of DCs or plantsselected as open is greater than the predetermined maximumnumber of facilities to be opened, (afterwards called ‘‘upper limitconstraint”), or their capacities are not enough to meet the custom-ers’ demand. The consequence is that the priority-based encodingimplementation can result in an efficiency deterioration of theoptimization algorithm. The extension of the priority-basedencoding to the multi-product case has been recently proposedin Altiparmak, Gen, Lin, and Karaoglan (2009).

The aim of this paper is presenting a new chromosome encod-ing and a complementary decoding procedure able to overcomethe drawbacks which characterize the literature procedures citedabove, in order to improve the efficiency and effectiveness of aGA in detecting optimal designs for three-stages SCN, see Fig. 1.

With respect to the available literature on three-stages SCNproblems, the main goals achieved through the implementationof the new encoding–decoding procedure are in the order:

� the reduction of the chromosome length from three unrelated sub-strings to two permutation interconnected sub-strings allowingfor the genetic operators (e.g. crossover, mutation, etc.) to beapplied to the entire chromosome instead of to each sub-string;� the elimination of the chromosome repairing actions required

to meet either the total capacity constraints and the upper limitconstraints at the SCN stage modeling the transportation treeamong plants and DCs;

Page 3: A new efficient encoding/decoding procedure for the design of a supply chain network with genetic algorithms

988 A. Costa et al. / Computers & Industrial Engineering 59 (2010) 986–999

� the reduced memory exploitation and faster algorithm conver-gence to the optimal design;� the reduction of the total cost of the supply chain with respect

to other available approaches thanks to the more performingdesign selection than other procedures.

The remainder of the paper is organized as follows: in the nextsection the reference mathematical model for the single productmulti-stage SCN is presented; in Section 3 the structure and theoperators of the genetic algorithm are explained: particular atten-tion is paid to the description of the new chromosome representa-tion procedure for single product multi-stage SCNs; then, anumerical example is worked out to help readers understandinghow the presented procedures work; an extensive numerical anal-ysis is presented and discussed in Section 4 to compare the perfor-mance of the GA embedding the proposed procedure with GAsimplementing other chromosome representations; conclusionsand future research directions complete the paper.

2. The mathematical model of the multi-stage SCN

As reported in the previous section, a well-known issue in singleproduct supply chain network design concerns the facility locationproblem; it consists of seeking out an optimal configuration for thedistribution network able to minimize the total supply chain cost,which includes the fixed costs of operating and opening plants andDCs, the variable transportation costs to move raw materials fromsuppliers to plants and products from plants to customers acrossDCs. For the investigated three-stage SCN the following assump-tions have been made: (1) the number of potential suppliers, plantsand DCs as well as their capacities and (2) the number of custom-ers and their demand for a single product are known in advance.Under these assumptions, the specific constrained problem solu-tion aims at selecting the best subset of plants and DCs to beopened and configuring the best multi-stage distribution networkstrategy between suppliers and customers able to fulfil the cus-tomer demand requirements for a product with a minimum cost.By doing reference to Altiparmak et al. (2006), the following nota-tion has been adopted:

Indices:

I is the number of customers (i = 1, 2, . . . , I),J is the number of potential distribution centers DCs(j = 1, 2, . . . , J),K is the number of potential plants (k = 1, 2, . . . , K),S is the number of potential suppliers (s = 1, 2, . . . , S).

Parameters:

di is the demand for the product at customer i,Wj is the maximum capacity of DC j,Dk is the maximum capacity of plant k,Es is the maximum capacity of supplier s for raw material,Wmax is the maximum number of DCs which can be opened,Pmax is the maximum number of plants which can be opened,u is the utilization rate of raw material per unit of the product,vj is the annual fixed cost for operating a DC j,cji is the unit transportation cost for the product from DC j tocustomer i,gk is the annual fixed cost for operating a plant k,akj is the unit transportation cost for the product from plant k toDC j,tsk is the unit transportation and purchasing cost for rawmaterial from supplier s to plant k.

Variables:

bsk is the quantity of raw material shipped from supplier s toplant k,fkj is the quantity of the product shipped from plant k to DC j,qji is the quantity of product shipped from DC j to customer i,zj is the Boolean flag identifying open (zj = 1) or closed (zj = 0)DCs,pk is the Boolean flag identifying open (pk = 1) or closed (pk = 0)plants.yji is the Boolean flag equal to 1 if DC j serves customer i or equalto 0 otherwise

Constraints:Xj

yji ¼ 1; 8i ð1Þ

Xi

diyji 6Wjzj; 8j ð2Þ

Xj

zj 6Wmax ð3Þ

qji ¼ diyji; 8i; j ð4Þ

uX

j

fkj 6X

s

bsk; 8k ð5Þ

Xk

fkj ¼X

i

qji; 8j ð6Þ

Xk

bsk 6 Es; 8s ð7Þ

uX

j

fkj 6 Dkpk; 8k ð8Þ

Xk

pk 6 Pmax ð9Þ

bsk P 0; 8s; k ð10Þ

fkj P 0; 8j; k ð11Þ

qji P 0; 8i; j ð12Þ

zj ¼ f0;1g; 8j ð13Þ

pk ¼ f0;1g; 8k ð14Þ

yij ¼ f0;1g; 8i; j ð15Þ

Constraint (1) runs the allocation of each customer to a singleDC; expression (2) is the capacity constraint for DCs; constraint(3) gives the upper limit on the number of DCs to be opened; theequality constraint (4) corresponds to the quantity of productcrossing the connection between each opened DC and each cus-tomer; constraint (5) assures the product flow conservation be-tween the first and the second stage of the SCN: the utilizationfactor u is defined as the fraction of raw material per unit of theproduct (Altiparmak et al., 2006): in the remainder of the paperit is set equal to 1; constraint (6) assures the product flow conser-vation between the second and the third stage of the SCN; con-straint (7) gives the capacity constraint for the supplier; (8) isthe capacity production constraint of plants; constraint (9) limitsthe maximum number (Pmax) of plants to be opened, constraints

Page 4: A new efficient encoding/decoding procedure for the design of a supply chain network with genetic algorithms

A. Costa et al. / Computers & Industrial Engineering 59 (2010) 986–999 989

(10)–(12) force the non-negativity restriction on the variables bsk,fkj, qji. Constraints (13)–(15) define the Boolean variables of theproblem.

The objective function corresponding to the total supply chaincost can be formulated as follows:

min TC ¼X

k

gk � pk þX

j

v j � zj þX

s

Xk

tsk � bsk þX

k

Xj

akj

� fkj þX

j

Xi

cji � qji ð16Þ

3. The implemented genetic algorithm

Genetic algorithms have been widely used by researchers tofind optimal solutions for the multi-stage supply chain networkdesign problems. The GA embedding the proposed encoding–decoding approach is presented in Fig. 2.

In general the performances of GAs and other evolutionary algo-rithms can be strongly affected by the problem representation;thus, the problem encoding is the first step aimed at coding eachGA chromosome individual. On the basis of the input data charac-terizing the problem to be investigated, a Demand Allocation Matrix(DAM) is built at the start of the algorithm run. The DAM is an ar-ray whose contained information is retrieved during each chromo-some decoding procedure, which allows the minimum number ofplants to be selected and opened in order to allocate the goods de-mand coming from DCs. The overall decoding procedure, whichevolves through a backward path along the supply chain stages,is run to get the value of the fitness function, i.e. the total supplychain cost TC, for each chromosome handled by the GA.

The structure of the new encoding–decoding procedures to beapplied to the chromosome for the single product SCN problem isextensively presented and discussed in the next sub-section. Then,a worked numerical example presenting the procedures is reportedand, finally, the GA operators are described.

3.1. The proposed chromosome encoding–decoding procedures

To run an efficient and effective GA optimization algorithm tosolve the SCN design problem, coding the problem representationby a proper chromosome is a challenging task for the decisionmakers. The chromosome encoding based on unrelated sub-stringshas been popular among the literature dealing with the solution ofSCN design problems by means of evolutionary algorithms. Such achromosome representation refers to a string composed of severalsub-strings, each specifically codified to represent a single stage inthe multi-stage SCN to be designed.

Given a single product three-stages SCN design problem, in thePrüfer number-based encoding five adjacent sub-strings generatethe chromosome: the first and the second sub-string have binarydigits as genes representing open/closed plants and DCs, respec-tively; the last three sub-strings are coded by means of three Prüfernumbers aimed at configuring the transportation tree for each stageof the SCN, for major details see Syarif et al. (2002), Gen & Syarif(2005). Basically, the Prüfer number-based encoding generates achromosome string having |K| + |J| + |S| + |K| � 2 + |K| + |J| � 2 + |J| +|I| � 2 genes to represent a three-stages SCN.

On the other hand, to cope with the same problem the priority-based encoding represents the chromosome by means of threeunrelated sub-strings: the last sub-string of the chromosome isrepresented by integers coding the connection of each customerto a single DC, since the customer demand cannot be split and for-warded to multiple DCs. The second integer sub-string codes prior-ities which define the order of selection of the plants to be opened;finally, the first segment of the chromosome codes priorities

between suppliers and plants, see Altiparmak et al. (2006). The pri-ority-based encoding requires a chromosome string having|S| + |K| + |K| + |J| + |I| genes to represent a three-stages SCN.

The encoding representation presented in this paper consists ofa permutation chromosome v(t) including only |K| + |J| genes, where|K| and |J| are the number of plants and DCs, respectively. Fig. 3shows an example of a generic permutation string representing athree-stage SCN with four plants (i.e. |K| = 4) and four DCs (i.e.|J| = 4).

The permutation string can be considered as the combination oftwo sub-strings, denoted as v1(k) and v2(j), respectively. The mean-ing of the elements of the permutation string should be interpretedas follows:

� The first sub-string v1(k) has size |K| and accounts for the con-figuration of the transportation tree among suppliers and openplants. In this case the raw material demand issued by the man-ufacturing plants could be split among the available supplierswithin the network.� The second sub-string v2(j) has size |J| and allows the transpor-

tation tree to be built among customers and the DCs which havebeen selected as opened. No splitting for the customer demandis allowed during this phase.� Both the two sub-strings v1(k) and v2(j), i.e. the whole permuta-

tion string v(t) having size |K| + |J|, allow for the transportationtree to be modeled among the DCs and the manufacturingplants selected as opened. At this stage of the SCN the demandsplitting is allowed.

It is well known the fact that the decoding procedures for eitherthe Prüfer number-based and priority-based encodings may gener-ate unfeasible transportation trees, i.e. solutions that need theimplementation of repairing procedures. Here, an innovative decod-ing procedure is proposed for the permutation chromosome withthe aim of eliminating the need of any repairing procedure at thestage modeling the distribution flow among opened DCs andplants. The possible violation of the capacity constraint or the max-imum number of DCs to be opened is still present just at the thirdstage of the SCN: it is accounted for by adding a penalty cost to thechromosome fitness. From now on, for the convenience of repre-sentation, the following statements should be taken into account:

ddj ¼XI

i¼1

qji; 8j 2 J; is the demand for the product at DC j;

ð17Þ

dddk ¼XJ

j¼1

fkj; 8k 2 K is the demand for the product at plant k:

ð18Þ

The description of the three stages decoding procedure is de-tailed below.

3.1.1. Stage 1: customer demand allocation to DCsThe transportation tree among open DCs and customers is ob-

tained by taking advantage of the decoding of the second sub-string v2(j), which follows a priority-based procedure: the j�th DChaving the highest priority is opened; then, the i�th customer cor-responding to the minimum transportation cost cj�i� is allocated tothat DC; the customers allocation to the selected DC continuesuntil the maximum capacity of that DC has been reached, other-wise another DC is opened; the procedure terminates when the to-tal customer demand is allocated. Whenever a generatedtransportation tree violates the upper limit constraint on the num-ber of opened DCs, a penalty cost is added to the total supply chain

Page 5: A new efficient encoding/decoding procedure for the design of a supply chain network with genetic algorithms

Fig. 2. The flowchart of the GA embedding the proposed encoding–decoding procedure.

990 A. Costa et al. / Computers & Industrial Engineering 59 (2010) 986–999

cost TC; the pseudo-code required to decode the second dummysub-string is reported in Fig. 4.

3.1.2. Stage 2: DCs demand allocation to plantsThe transportation tree among open DCs and plants is deter-

mined by means of the innovative decoding approach applied tothe whole chromosome string v(t): during this step of the decodingprocedure the genes within the first sub-string v1(k) represent thepriorities among plants, whereas the genes belonging to the second

sub-string v2(j) correspond to the priorities among DCs. During thisstep the Encoding Feasibility Adjustment (EFA) routine is run, whichmodifies the plant priorities within the sub-string v1(k) in accor-dance to the information contained within the DAM. The DAMcomputation coupled to the EFA routine execution assures thetransformation of the sub-string v1(k) to a sub-string v�1ðkÞ allow-ing for feasible solutions, thus improving the algorithm efficiencyin investigating the space of solutions. To work properly, boththe DAM computation and the EFA routine execution should allow

Page 6: A new efficient encoding/decoding procedure for the design of a supply chain network with genetic algorithms

1 2 3 4 5 6 7 8

v1(t) v2(t)

v(t)

Suppliers-Plants stage encoding

DCs-Customers stage encoding

Plants-DCs stage encoding

Fig. 3. An example of the proposed permutation string.

A. Costa et al. / Computers & Industrial Engineering 59 (2010) 986–999 991

demand splitting, which is assumed as allowable at this stage ofthe supply chain.

Given the second stage of the supply chain, each column of theDemand Allocation Matrix refers to a given source k = 1, . . . , K.Each row of the DAM contains a combination of p plants capacities,which should satisfy the following constraints: (i) the maximumnumber Pmax of plants to be opened should be respected and (ii)the whole demand for products issued by the opened DCs shouldbe allocated. If the kth source is opened and added to the rth com-bination, then the generic element Mrk of the DAM is set equal tothe added source capacity, otherwise its value is set equal to 0.Assuming Pmin as the minimum number of plants able to fulfillthe total demand coming from the opened DCs, the maximumnumber R of rows which can be added to the Demand AllocationMatrix is equal to the value of the following binomial coefficient:

R ¼XPmax

r¼Pmin

K

r

� �ð19Þ

However, just a subset R� < R of rows are included within the DAMwhich correspond to all of the plants combinations respecting the

Fig. 4. The decoding algorithm to get the transportation tree

whole depots demand constraint. Feasible combinations of plantsare placed within the DAM in accordance to the increasing numberof opened plants and the available capacity. The numerical examplepresented below will clarify to the reader how the DAM can beobtained.

Once the DAM is available, the Encoding Feasibility Adjustmentroutine can be run to modify the first sub-string v1(k) of the chro-mosome representing the priorities among plants: the outcome ofthis routine is a feasible adjusted sub-string v�1ðkÞ having a subsetof the original string plant priorities set equal to 0 in order to pro-vide feasible solutions for this stage transportation tree. The feasi-ble adjusted sub-string v�1ðkÞ is determined in the following way.Given the sub-string v1(k), the plant k having the current highestpriority is selected and the DAM dimension is reduced by deletingall the rows having Mrk equal to 0. The total demand from DCs isthen reduced of a quantity equal to Dk. Similarly, the second high-est priority plant is selected and the DAM dimension is further re-duced by deleting all the residual rows having Mrk equal to 0. Theprocedure is repeated until the whole demand allocation from DCsis met. Then, to get the second stage transportation tree a tradi-tional priority-based decoding is directly applied to the feasible ad-justed sub-string v�1ðkÞ.

The algorithms designed to compute the DAM and to executethe EFA procedure are presented in Figs. 5 and 6, respectively:

3.1.3. Stage 3: plants demand allocation to suppliersTo get the first-stage transportation tree among plants and sup-

pliers, the feasible adjusted sub-string v�1ðkÞ is used once again toinvoke a priority-based decoding procedure. Thus, among the sec-ond stage opened plants, the k�th plant with the highest priority isselected and connected to the supplier s� corresponding to theminimum transportation cost ts�k� . Then, the second highest prior-ity plant is selected. The supplier allocation to the opened plantscontinues until the capacity of that supplier has been exhausted;

between DCs and customers from the sub-string v2(j).

Page 7: A new efficient encoding/decoding procedure for the design of a supply chain network with genetic algorithms

Fig. 5. The algorithm to compute the Demand Allocation Matrix.

992 A. Costa et al. / Computers & Industrial Engineering 59 (2010) 986–999

then, another supplier is involved in the network generation; theprocedure terminates when the total plant demand is allocated.As usual in the industrial procurement practice, the plants demandsplitting of raw material to suppliers is allowed. The pseudo-coderequired to decode the feasible adjusted sub-string v�1ðkÞ to getthe first-stage transportation tree is reported in Fig. 7.

3.2. An illustrative example

The following worked example is presented to the reader to figureout how the proposed chromosome encoding–decoding procedureswork for the single product SCN problem. A permutationchromosome representing a candidate transportation tree of athree-stage SCN having I = 5 customers, J = 4 potential DCs, K = 4 po-tential plants and S = 3 potential suppliers has been randomly gener-ated. The chromosome size is equal to K + J = 8 genes. Fig. 8 shows thegenerated chromosome, the operating and transportation cost arraysand the decoded network transportation tree. A product demandfrom the customers equal to d = (200, 150, 200, 250, 100), Ridi =900, should be satisfied. The maximum capacities of DCs, plants andsuppliers are respectively equal to: W = (150, 150, 350, 500),D = (300, 400, 500, 350), E = (400, 600, 500). The maximum number

of plants to be opened has been set equal to Pmax = 3; accordingly tothe procedure presented in Fig. 5, the minimum number of plantsto be opened is equal to Pmin = 2.

Running the stage 1 of the proposed decoding procedure on thesecond sub-string v2(j) allows customers to be allocated to the DCswithout demand splitting. Table 1 shows the trace of this step ofthe procedure.

The DC labeled as 2 is the one having the highest priority andthen it is opened. Customer 2 accounting for the minimum trans-portation cost is allocated to this DC; then, the DC residual capacityand total demand are updated. Being saturated the whole capacityof the current DC by customer 2, the second highest priority DC, i.e.the DC labeled as 4, is opened and the procedure of customer de-mand allocation to this DC is performed until its residual capacityis less than the unallocated demand from the customers: thus,after that customers 1 and 4 have been allocated, a residual capac-ity equal to 50 is frozen within the DC 4; finally, DC 3 capacity cov-ers in the order either the demands from customers 3 and 5. At theend of the iterative code execution the transportation tree for thethird stage of the network is that presented in Fig. 8.

The second step of the procedure requires the preliminary com-putation of the Demand Allocation Matrix. The size of the DAM for

Page 8: A new efficient encoding/decoding procedure for the design of a supply chain network with genetic algorithms

Fig. 6. The algorithm of the Encoding Feasibility Adjustment procedure.

A. Costa et al. / Computers & Industrial Engineering 59 (2010) 986–999 993

this example is 1034, where the maximum number of rows is eval-uated through Eq. (19). After eliminating the rows not satisfyingthe constraint on the total demand allocation from the DCs, thesize of the reduced DAM is 534, see Fig. 9.

The feasible adjusted sub-string v�1ðkÞ is determined by theEncoding Feasibility Adjustment procedure in the following way,see Table 2: the plant 2 having the current highest priority is se-lected and the DAM dimension is reduced by deleting all the rowshaving Mr2 equal to 0 8r 2R�; thus, all the combinations of plantsincluding plant 2 are preserved. The total manufacturing capacityD_tot able to absorb the overall demand of DCs is updated toD_tot = D2. Then, the second highest priority plant 3 is selectedand the DAM dimension is further reduced by deleting all theresidual rows having Mr3 equal to 0 8r 2R�. The total manufactur-ing capacity is now increased of a quantity equal to D3. The proce-dure is stopped at this iteration because the total manufacturingcapacity meets the total demand coming from DCs: thus, the firstrow of the DAM is assumed as the reference combination of plants(see Fig. 5 at step 3). Finally, the feasible adjusted sub-stringv�1ðkÞ = [0 8 5 0] is got by equating to 0 the priorities of not selectedplants 1 and 4.

To get the transportation tree among plants and DCs the prior-ity-based encoding is applied to the entire chromosome includingthe sub-string v�1ðkÞ, see Table 3. Plant 2 capacity is demanded to

allocate the total demand dd2 = 150 from DC 2 and to partially sat-isfy the demand from DC 3. Plant 3 capacity is sufficient to satisfythe demand of 50 units from DC 3 and the total demand dd4 = 450from DC 4.

The third step of the procedure completes the SCN design byapplying the priority-based encoding to the sub-string v�1ðkÞ, whichnow denotes the opened plant priorities at the first stage of thenetwork: through this approach, each opened plant demand is cou-pled with one or more suppliers. Table 4 shows how the procedureworks.

Finally, at the first stage of the SCN, the transportation tree isbuilt by assigning the plant 2 demand ddd2 = 400 entirely to sup-plier 2 and splitting the demand ddd3 = 500 from plant 3 betweensuppliers 1 and 2.

3.3. The genetic algorithm operators

3.3.1. Initial populationAt each generation a population having dimension equal to

pop_size chromosomes is evolved. A random chromosome genera-tion has been implemented to generate the initial population. Thefitness of each chromosome is equal to the corresponding totalsupply chain cost TC.

Page 9: A new efficient encoding/decoding procedure for the design of a supply chain network with genetic algorithms

Fig. 7. The decoding algorithm to get the transportation tree between suppliers and plants from the feasible adjusted sub-string v�1ðkÞ.

Fig. 8. An example of a three-stage supply chain network chromosome encoding/decoding.

Table 1Trace of step 1 procedure allocating customers to DCs.

Iteration [v1(k)|v2(j)] Wj di j� min(cj� i) i� qj� i� rd ddj*

1 [3, 8, 5, 2|1, 7, 4, 6] (150, 150, 350, 500) (200, 150, 200, 250, 100) 2 2 2 150 750 150

2 [3, 8, 5, 2|1, 0, 4, 6] (150, 0, 350, 500) (200, 0, 200, 250, 100) 4 3 1 200 550 200

3 [3, 8, 5, 2|1, 0, 4, 6] (150, 0, 350, 300) (0, 0, 200, 250, 100) 4 4 4 250 300 450

4 [3, 8, 5, 2|1, 0, 4, 0] (150, 0, 350, 50) (0, 0, 200, 0, 100) 3 3 3 200 100 200

5 [3, 8, 5, 2|1, 0, 4, 0] (150, 0, 150, 50) (0, 0, 0, 0, 100) 3 3 5 100 0 300

6 [3, 8, 5, 2|1, 0, 0, 0] (150, 0, 50, 50) (0, 0, 0, 0, 0)

994 A. Costa et al. / Computers & Industrial Engineering 59 (2010) 986–999

3.3.2. CrossoverThis operator allows genetic material to be exchanged between

two chromosomes with the aim of exploring new solution spaces.Since both the proposed encoding procedure and the priority-based encoding represent chromosome through a permutation

string of decimal integers, a position-based crossover, (Celano,Fichera, Grasso, La Commare, & Perrone, 1999), properly developedfor optimization problems whose candidate solutions are repre-sented by means of permutation chromosomes has been adoptedfor the current GA; the probability of crossover has been settled

Page 10: A new efficient encoding/decoding procedure for the design of a supply chain network with genetic algorithms

r D1 D2 D3 D4 kD feasibility

1 300 400 0 0 700 No delete2 300 0 500 0 800 No delete3 0 400 500 0 900 Yes4 300 0 0 350 650 No delete5 0 400 0 350 750 No delete6 0 0 500 350 850 No delete7 300 400 500 0 1200 Yes8 300 400 0 350 1050 Yes9 300 0 500 350 1150 Yes10 0 400 500 350 1250 Yes

0 400 500 0300 400 500 0300 400 0 350300 0 500 350

0 400 500 350

Fig. 9. The Demand Allocation Matrix configured for the proposed example.

Table 2The Encoding Feasibility Adjustment for the chromosome first sub-string v1(k).

Iteration v1(k) k D_tot DAM R�

1 [3 8 5 2] 2 400 0 400 500 0300 400 500 0300 400 0 350

0 400 500 350

��������

��������

4

2 [3 0 5 2] 3 900 0 400 500 0300 400 500 0

0 400 500 350

������������

3

3 [3 0 0 2] – 900 0 400 500 0j j 1

v�1ðkÞ = [0 8 5 0]

A. Costa et al. / Computers & Industrial Engineering 59 (2010) 986–999 995

equal to 0.25. Position-based crossover selects two parents on thefitness basis and generates a couple of offspring chromosomes byexchanging the relative order in which some randomly selectedgenes appear in one of the parents according to the position theyhave in the alternate parent. It works by performing the followingprocedure:

1. Select a set of positions from parent 1 at random.2. 2Generate one offspring by copying from parent 1 the randomly

selected genes in the into the corresponding position of theoffspring.

3. Fill the blank genes in the offspring by adding not alreadyincluded genes in the order as they appear in parent 2.

4. Repeat the steps 1–3 for a second offspring chromosome by start-ing from a set of positions randomly selected from parent 2.

Fig. 10 shows the steps 1–3 of the procedure for the creation ofone offspring chromosome.

Table 3Trace of step 2 procedure allocating DCs to plants.

Iteration [v�1ðkÞ|v2(j)] Dk ddj

0 [0 8 5 0|1 7 4 6] (0, 400, 500, 0) (0, 150, 300, 450)1 [0 8 5 0|1 0 4 6] (0, 250, 500, 0) (0, 0, 300, 450)2 [0 0 5 0|1 0 4 6] (0, 0, 500, 0) (0, 0, 50, 450)3 [0 0 5 0|1 0 4 0] (0, 0, 50, 0) (0, 0, 50, 0)3 [0 0 0 0|1 0 4 0] (0, 0, 0, 0) (0, 0, 0, 0)

Table 4Trace of procedure allocating suppliers to plants.

Iteration [v�1ðkÞ|v2(j)] Es dddk

1 [0, 8, 5, 0|1, 7, 4, 6] (400, 600, 500) (0, 400, 502 [0, 0, 5, 0|1, 7, 4, 6] (300, 200, 500) (0, 0, 500,3 [0, 0, 5, 0|1, 7, 4, 6] (0, 200, 200) (0, 0, 200,3 [0, 0, 0, 0|1, 7, 4, 6] (0, 0, 200) (0, 0, 0, 0)

3.3.3. MutationThis operator produces spontaneous random changes in one or

more chromosomes of a population generation selected on a fit-ness basis. In the proposed GA a gene swapping mutation operatoris executed: it randomly selects two genes within a chromosomeand exchange their positions each other. The probability of muta-tion of a chromosome within a population generation is equal to0.01.

An elitist strategy has been performed during the evolutionaryprocess which, in particular, ensures a preservation of the bestchromosome from disruption caused by the application of thealgorithm operators. Finally, in order to avoid premature conver-gence due to a rapid increase in the number of copies of the ‘‘fittestindividuals”, a population control technique has been embedded inthe developed GA: this technique mutates the duplicates of chro-mosomes in the current population when their number exceeds afixed upper bound.

4. Numerical analysis

To test the efficiency of the GA embedding the new chromo-some representation procedure a numerical analysis has been per-formed on a set of randomly generated single product SCNproblems. The problems have been arranged in four classes, as re-ported in Table 5.

Each class includes ten problems generated as follows. The de-mands di from customers have been generated from a discrete uni-form distribution with probability p = 0.2 for each value in therange [100, 150, . . . , 300]. The capacity cap of each potential facil-ity, i.e. DCs, plants and suppliers, has been evaluated as a functionof a normal distribution N(l, r2) through the following formula:

prio k* min(ak� j) j� fk� j� res dddk*

k 2 2 2 150 750 150

k 2 2 3 250 500 400

j 3 3 4 450 50 450

k 3 5 3 50 0 500

s� min(t�sk) k� bs�k� rd

0, 0) 2 2 2 400 500

0) 1 6 3 300 200

0) 2 7 3 200 0

Page 11: A new efficient encoding/decoding procedure for the design of a supply chain network with genetic algorithms

Fig. 10. The position-based crossover.

Table 5The set of test problems.

Class S K J I Pmax Wmax Max gener. Pop_size

I 10 10 10 21 6 6 2500 250II 20 15 12 50 9 7 4000 300III 10 6 8 100 4 5 5000 400IV 20 15 12 100 9 7 5000 400

996 A. Costa et al. / Computers & Industrial Engineering 59 (2010) 986–999

cap ¼ 110þ brandðNðl;r2ÞÞc ð21Þ

where the symbol bxc denotes the integer less than or equal to x.The normal distribution parameters are equal to l ¼ ð

PidiÞ=T and

r ¼ ðP

idiÞ=4T; the parameter T is set equal to S, Pmax, or J, for sup-pliers, plants and DCs, respectively. This random capacity genera-tion procedure assures at each stage an excess of potentialcapacity with respect to the current demand to be allocated. Fixedcosts for plants and DCs have been randomly generated as randomnumbers from normal distributions whose parameters depend onthe averaged capacities �W ¼

PjWj=J and �D ¼

PkDk=K , respectively:

v j ¼ randfN½2:5 � �W; ð2:5=4 �WÞ2�g j ¼ 1; . . . ; J ð22Þ

gk ¼ randfN½3 � �D; ð3=4�DÞ2�g k ¼ 1; . . . ;K ð23Þ

Finally, the transportation costs at each stage of the supply net-work have been drawn up as discrete uniform random variablesfrom the following intervals: cji 2 ½3;4;5; . . . ;9�, akj 2 ½3;4;5; . . . ;8�,tsk 2 ½3;4;5; . . . ;7�.

Table 6Comparison among the GAs embedding the three chromosome representation procedures

Source Response variable Supply chain cost TC

df Adj MS F p-Va

CLASS IBlocks – problems 9 2723,92,875 932.18Chromos. represen. 2 105,17,323 35.99 0.00Seed 4 210,391 0.72 0.58Error 134 292,211

Total 149R-Sq = 98.44% R-Sq(adj) = 98.27%

CLASS IIBlocks – problems 9 9950,63,972 405.94Chromos. represen. 2 4552,80,317 185.73 0.00Seed 4 387,652 0.16 0.95Error 134 24,51,282

Total 149R-Sq = 96.78% R-Sq(adj) = 96.42%

CLASS IIIBlocks – problems 9 4.683E + 09 520.31Chromos. represen. 2 1699,04,456 18.88 0.00Seed 4 380,616 0.04 0.99Error 134 90,00,471

Total 149R-Sq = 97.24% R-Sq(adj) = 96.93%

CLASS IVBlocks – problems 9 4.19E + 09 495.11Chromos. represen. 2 2.542E + 09 300.35 0.00Seed 4 45,74,094 0.54 0.70Error 134 84,62,254

Total 149R-Sq = 97.42% R-Sq(adj) = 97.13%

The numerical analysis has been conducted with the aim ofevaluating the efficacy of the GA embedding the proposed permu-tation encoding, (PRM_GA), with respect to the same algorithmembedding: (1) the Prufer number (PRF_GA) and (2) the priority-based (PRB_GA) representations of the chromosome. The GAsequipped with the three different encoding/decoding procedureshave been implemented within a Microsoft Excel™ worksheet byrunning the Visual Basic for Application programming environ-ment. The maximum number of generations and population sizeare reported for each class of problems in the last two columnsof the Table 5.

The first step of the numerical study has been carried out toinvestigate if the (PRM_GA) allows statistically significant supplychain cost reductions with respect to the other two approachesto be achieved. For each class of problems, a two factors mixedmodel experimental design with random blocks has been investi-gated. The response variable y coincides with the total supplychain cost TC. The random blocking factor B coincides with theproblem and is varied at b = 10 levels: that is, for each class ten dif-ferent instances are generated. The fixed factor A coincides withthe GA embedding a chromosome representation procedure andis varied at a = 3 levels, i.e. the (PRM_GA), (PRF_GA), (PRB_GA);the seed of the genetic algorithm is the random factor C, which is

: ANOVA tables and simultaneous confidence intervals.

Bonferroni 95,0% simultaneousconfidence intervals

Lower Center Upper

lue

lPRF_GA � lPRB_GA 126.1 136.0 398.00 lPRF_GA � lPRM_GA 591.5 853.6 11160 lPRB_GA � lPRM_GA 455.5 717.6 979.7

lPRF_GA � lPRB_GA 14 773 15320 lPRF_GA � lPRM_GA 4811 5570 63299 lPRB_GA � lPRM_GA 4038 4797 5556

lPRF_GA � lPRB_GA �1793 �338 11170 lPRF_GA � lPRM_GA 1556 3010 44657 lPRB_GA � lPRM_GA 1894 3348 4803

lPRF_GA � lPRB_GA 6198 7609 90200 lPRF_GA � lPRM_GA 12,838 14,248 15,6596 lPRB_GA � lPRM_GA 5229 6639 8050

Page 12: A new efficient encoding/decoding procedure for the design of a supply chain network with genetic algorithms

Table 7Speed of convergence of the investigated algorithms towards the optimal solution.

Class ex. DCPRF_GA DCPRB_GA DCPRM_GA RPRM_PRF RPRM_PRB

I 1 7.50 1.04 0.15 1.23 0.312 10.02 0.74 0.46 0.30 1.683 11.06 1.52 0.42 �0.31 �0.474 11.57 2.51 0.20 1.50 0.815 11.13 0.63 0.61 0.93 1.846 11.82 2.13 0.13 1.16 0.207 10.31 2.03 0.72 1.17 �0.318 11.32 1.63 1.04 0.17 1.969 10.63 1.61 0.62 1.19 0.14

10 10.99 1.47 0.82 0.47 �0.28

Average 10.64 1.53 0.52 0.78 0.59Max 11.82 2.51 1.04 1.50 1.96Min 7.50 0.63 0.13 �0.31 �0.47

II 1 13.33 2.72 1.57 2.56 1.722 13.21 2.31 0.69 2.56 �0.103 10.92 1.49 0.46 2.47 4.704 12.52 2.66 1.29 2.46 0.265 11.82 2.21 0.80 4.76 1.396 12.92 2.97 0.60 2.23 1.347 13.53 1.82 1.14 2.55 2.548 14.02 2.04 1.04 2.58 4.219 12.49 2.18 0.72 2.79 3.70

10 13.45 3.65 0.44 3.35 3.50

Average 12.82 2.40 0.88 2.83 2.33Max 14.02 3.65 1.57 3.35 4.70Min 10.92 1.49 0.44 2.23 �0.10

III 1 4.97 2.01 0.13 0.14 �2.022 4.62 0.52 0.00 2.31 3.663 3.61 0.29 0.00 0.62 3.534 4.37 1.70 0.00 0.72 0.625 3.31 0.02 0.08 0.08 �0.896 4.76 0.67 0.00 1.78 2.157 5.15 1.06 0.00 1.01 0.898 4.48 0.20 0.10 1.54 0.479 3.40 1.81 0.00 0.02 0.94

10 3.99 0.98 0.00 0.46 0.39

Average 4.27 0.93 0.03 0.87 0.98Max 5.15 2.01 0.13 2.31 3.66Min 3.31 0.02 0.00 0.02 �2.02

IV 1 14.20 3.06 1.05 4.92 0.232 10.27 3.75 0.47 4.20 �0.433 11.45 3.15 0.53 3.45 2.084 12.66 2.97 0.70 3.23 0.755 12.73 2.07 0.40 3.96 �0.356 11.02 3.66 0.33 4.16 2.927 11.32 2.17 0.30 3.74 1.228 9.75 3.58 0.58 3.18 2.919 12.53 2.51 1.06 4.74 3.85

10 12.51 2.45 0.47 3.98 2.30

Average 11.8 2.94 0.59 3.96 1.55Max 14.20 3.75 1.06 4.92 3.85Min 9.75 2.07 0.30 3.18 �0.43

A. Costa et al. / Computers & Industrial Engineering 59 (2010) 986–999 997

varied at c = 5 levels: for each instance the algorithms are run fivetimes, each corresponding to a different random evolution. Theinfluence of this last random factor has been investigated withthe aim of concluding that, whatever the starting point of the algo-rithm and its evolution history, the obtained optimal supply chaincosts are independent from the seed.

Totally, a3b3c = 150 runs have been executed to complete oneexperimental plan for each class. Given the structure of the fourexperimental plans, interactions among blocks and factors wereexcluded a priori; furthermore, a preliminary study allowed theinteractions between the factors A and C to be statistically ex-cluded. Thus, a totally additive statistical linear model has beenconsidered and the effects of the main factors have been investi-gated. Model adequacy checking on residuals did not show anyobvious pattern.

Table 6 presents the summaries of the ANOVA tables for thefour experimental plans obtained by means of the General LinearModel routine of Minitab�; in the same table the Bonferroni95.0% simultaneous confidence intervals are reported for all thepairwise differences on mean optimal supply chain costs obtainedby means of the three chromosome representation procedures.

The obtained results from the experimental plans show that:

– In the four plans blocking was necessary to eliminate a large per-centage of total variability which otherwise should have alteredthe statistical analysis; remaining variability was explained verywell by the two factors as confirmed by the values of R2 and R2

adjusted indexes larger than 96%. Furthermore, R2 and R2

adjusted indexes values are always close each other: thus,removing interactions can be considered as a correct assumption.

– The fixed factor A depending on the chromosome representa-tion procedure is always statistically influent on supply chaincost response variable and has very large values of the F-statistic;whichever the selected class of problems, this means that atleast one of the performances of the three algorithms shouldbe considered statistically different from the others. To furtherinvestigate this result, the Bonferroni 95.0% simultaneous confi-dence intervals have been computed to do pairwise compari-sons among the three levels of factor A: with reference to thecomparison between PRF_GA and PRB_GA the class III problemsshow equivalence of the response variable, being the confidenceinterval with opposite in sign limits; the remaining classesshow an outperformance of the PRB_GA vs. PRF_GA. What ismore important, the proposed PRM_GA always outperformsthe other two algorithms: in fact, the confidence intervalsalways have positive limits and do not contain the zero, whichproves a statistically significant reduction of the average supplychain costs. The averaged class percentage cost savingsachieved by the PRM_GA vs. PRB_GA range between 1.01% and3.18% whereas the percentage reduction varies within 0.9%and 3.68% when PRM_GA is compared to PRF_GA.

– The random factor B, i.e. the algorithm seed, is not statisticallyinfluent. This finding means that the selected number of itera-tions and population size were sufficient to guarantee conver-gence for the three algorithms; furthermore, the PRM_GAoutperformance vs. the other two representation approachesis not affected by the specific optimization pattern followedby the algorithms during each run.

The second step of the numerical analysis involves the investi-gation about how the PRM_GA converges to the optimal solutionwith respect to the other two algorithms. Let us denote withDCPRx-GA the percentage total supply chain cost reduction obtainedby each of the three GAs when evolving from the current optimalsolution after running 20% of the generations to the actual finaloptimal SCN design:

DCPRx GA ¼C20%

PRx GA � CPRx GA

C20%PRx GA

ð24Þ

where C20%PRx GA and CPRx GA denote respectively the supply chain costs

corresponding to the algorithm PRx_GA current optimal solutionafter running 20% of the generations and the actual final optimalSCN design. Considering the tollgate of 20% generations for thethree algorithms avoids start up effects of the population evolutionto be influent. Low values of DCPRx-GA demonstrate a fast conver-gence of the algorithm to a solution close to the actual final optimalsolution. For each instance left side of Table 7 shows the values ofthe DCPRx-GA averages over the c = 5 seed runs: by analyzing the re-sults, it appears immediately evident that the PRM-GA algorithm is

Page 13: A new efficient encoding/decoding procedure for the design of a supply chain network with genetic algorithms

998 A. Costa et al. / Computers & Industrial Engineering 59 (2010) 986–999

very fast in moving towards solutions close to the optimum: in fact,the values of DCPRM-GA are always lower than 1.6%. The averages foreach class remain lower than 1%. Compared with the DCPRM-GA, theother two algorithms show a slower convergence to the optimalsolution: for the PRF-GA the percentage cost reduction averagedover each class of problems ranges between 4.27% and 12.82%;the PRB-GA shows an intermediate behavior between the othertwo algorithms with averaged percentage cost reductions rangingbetween 0.93% and 2.94%.

Last two columns of Table 7 report the parameters RPRM_PRF andRPRM_PRB representing two percentage supply chain cost variationscomparing the algorithms each other:

RPRM PRF ¼CPRF GA � C20%

PRM GA

CPRF GAð25Þ

RPRM PRB ¼CPRB GA � C20%

PRM GA

CPRB GAð26Þ

Positive values for these two parameters mean that theproposed PRM-GA is able to achieve SCN network designs betterthan the other two algorithms just after running 20% the totalnumber of generations. The obtained results show that in 39 out

65000

70000

75000

80000

85000

90000

20 1 3 4 5

PRM_GA PRF_GAPRB_GA

320000

345000

370000

395000

PRM_GA PRF_GAPRB_GA

0 3 4 51 2

a)

iterations (x 1000)

c)

(

(Fig. 11. Graphs of the convergence of the GAs to the optimal solut

Table 8Comparison between the PRM-GA optimal solutions [$] and the true optima [$]. Class I of

Probl. 1 2 3 4

OptTRUE 66,330 70,600 57,670 64,030OptPRM 67,060 71,650 59,040 67,450AvePRM (c = 5 runs) 67,108 71,738 59,412 67,580100�(OptPRM/OptTRUE) 1.1 1.5 2.4 5.3100�(AvePRM/OptTRUE) 1.2 1.6 3.0 5.5

from 40 examples the RPRM_PRF is positive, i.e. the PRM-GA outper-forms the PRF-GA just after 20% the total number of generations; in32 out from 40 examples the RPRM_PRB is positive, thus, confirmingthe significant outperformance of PRM-GA with respect to the PRB-GA. The results shown by the last two columns of Table 7 demon-strate that the GA embedding our encoding is able on the averageto find better solutions than the final optimal solution found by theother two algorithms just after 20% of the total number of itera-tions: this is due to the possibility it has to investigate an highernumber of feasible solutions within the maximum allowed numberof generations than the other two approaches. Thus, the reducedalgorithm capacity to investigate the space of possible solutionsdue to forcing the selection process is compensated by the effi-ciency of the proposed approach. Fig. 11 gives a graphical appreci-ation of these findings by reporting the value of the current bestSCN design cost for one instance from each class well representingthe algorithm behavior over the entire set of problems.

Fig. 11 shows that the structure of the proposed chromosomerepresentation allows very good design solutions to be includedwithin the algorithm population since the early generations ofthe evolution: this depends on the possibility of working with fea-sible sequences at the first two stages of the network and relates

160000

175000

190000

205000

220000

0 1 2 3 4 5

PRM_GA PRF_GAPRB_GA

280000

310000

340000

370000

400000

0 1 2 3 4 5

PRM_GA PRF_GAPRB_GA

b)

iterations (x 1000)

d)

(

(ion: instance 4, (a) class I; (b) class II; (c) class III; (d) class IV.

problems.

5 6 7 8 9 10

57,990 66,890 66,400 58,770 63,440 64,10058,630 67,010 66,590 59,570 64,170 64,61058,710 67,010 66,708 59,674 64,218 64,6521.1 0.2 0.3 1.4 1.2 0.81.2 0.2 0.5 1.5 1.2 0.9

Page 14: A new efficient encoding/decoding procedure for the design of a supply chain network with genetic algorithms

A. Costa et al. / Computers & Industrial Engineering 59 (2010) 986–999 999

the occurrence of penalty costs just to the constraints violation atthe third stage of the supply chain: some further research aboutchromosome decoding procedure will be focused in this directionto eliminate the possibility of occurrence of penalty costs.

To get more insight about the PRM-GA efficacy in detecting highquality optimal solutions, a comparison of these solutions with thetrue optima has been performed. This step of the numerical analy-sis has been carried out by running within Lingo� software envi-ronment a mathematical programming optimization procedureoptimizing the Class I subset of problems and finding the best per-forming transportation trees of the SCNs. The remaining classes ofproblems were not considered due to the prohibitive computa-tional time required by the exact optimization procedure to finda solution. Table 8 shows the obtained results.

For each problem from the Class I the true optimum OptTRUE, thebest optimal solution OptPRM found by the proposed algorithm andthe average AvePRM of the optimal solutions over the five runs arepresented together with the relative percentage losses. With theexception of instances 3 and 4, the optimal solutions OptPRM arereally close to the corresponding true optima OptTRUE with a per-centage loss which is less than 1.5%. This result confirms the effi-cacy of the PRM-GA.

Finally, it is worth remembering that the computational timesrequired by the PRM-GA never exceed 15 min for the larger exam-ples on a computer equipped with a Intel� Core™2 Duo CPU and2 Gb RAM.

5. Conclusions

The management problem of the design of multi-stage supplychain networks has been widely investigated in literature: Geneticalgorithms have been demonstrated to be an efficient optimizationtool to select optimal design solutions. This paper has proposed anew efficient chromosome representation procedure based on aparsimonious permutation decoding of the string representingthe network and a three steps decoding procedure allowing theoccurrence of unfeasible transportation trees to be reduced. Theproposed procedure has been compared with two well-known ap-proaches presented in literature and the obtained results showthat: (i) statistically significant total supply chain cost savingscan be achieved by means of the new encoding–decoding proce-dure and (ii) the optimization GA algorithm equipped with the pro-posed procedure quickly converges to the optimal solution and inreasonable computational times.

Future research will be focused on the implementation of theDemand Allocation Matrix also to the third stage of the supplychain network with the aim of eliminating the occurrence of unfea-sible solutions; furthermore, the efficiency of the proposed proce-dure will be tested and validated on more complex problemsinvolving the design of multi-product SCNs, closed-loop SCNsand the possibility of obtaining multi-objective solutions.

Acknowledgments

The authors wish to thank the anonymous referees for theirprecious suggestions which allowed to improve significantly thequality of the final manuscript.

References

Altiparmak, F., Gen, M., Lin, L., & Karaoglan, I. (2009). A steady-state geneticalgorithm for multi-product supply chain network design. Computers &Industrial Engineering, 56(2), 521–537.

Altiparmak, F., Gen, M., Lin, L., & Paksoy, T. (2006). A genetic algorithm approach formulti-objective optimization of supply chain networks. Computers & IndustrialEngineering, 51, 197–216.

Amiri, A. (2006). Designing a distribution network in a supply chain system:Formulation and efficient solution procedure. European Journal of OperationalResearch, 171(2), 567–576.

Celano, G., Fichera, S., Grasso, V., La Commare, U., & Perrone, G. (1999). Anevolutionary approach to multi objective scheduling of mixed model assemblylines. Computers & Industrial Engineering, 37(1–2), 69–73.

Chan, F. T. S., Chung, S. H., & Wadhwa, S. (2004). A heuristic methodology for orderdistribution in a demand driven collaborative supply chain. International Journalof Production Research, 42(1), 1–19.

Chen, I. J., & Paulraj, A. (2004). Understanding supply chain management: Criticalresearch and theoretical framework. International Journal of Production Research,42(1), 131–163.

Croom, S., Romano, P., & Giannakis, M. (2000). Supply chain management: Ananalytical framework for critical literature review. European Journal ofPurchasing & Supply Management, 6, 67–83.

Gen, M., Altiparmak, F., & Lin, L. (2006). A genetic algorithm for two-stagetransportation problem using priority-based encoding. OR Spectrum, 28,337–354.

Gen, M., & Cheng, R. (1997). Genetic algorithms and engineering design. New York:Wiley-Interscience.

Gen, M., & Cheng, R. (2000). Genetic algorithms and engineering optimization. NewYork: Wiley-Interscience.

Gen, M., Cheng, R., & Lin, L. (2008). Network models and optimization: Multiobjectivegenetic algorithm approach. London: Springer.

Gen, M., & Syarif, A. (2005). Hybrid genetic algorithm for multi-time periodproduction/distribution planning. Computers & Industrial Engineering, 48,799–809.

Jayaraman, V., & Ross, A. (2003). A simulated annealing methodology to distributionnetwork design and management. European Journal of Operational Research,144(3), 629–645.

Syarif, A., & Gen, M. (2003). Solving exclusionary side constrained transportationproblem by using a hybrid spanning tree based genetic algorithm. Journal ofIntelligent Manufacturing, 14(3/4), 389–399.

Syarif, A., Yun, Y., & Gen, M. (2002). Study on multi-stage logistic network: Aspanning tree-based genetic algorithm approach. Computers & IndustrialEngineering, 43, 299–314.

Truong, T. H., & Azadivar, F. (2005). Optimal design methodologies for configurationof supply chains. International Journal of Production Research, 43(11),2217–2236.

Tsiakys, P., & Papageorgiou, L. G. (2008). Optimal production allocation anddistribution supply chain networks. International Journal of ProductionEconomics, 111, 468–483.

Yan, H., Yu, Z., & Cheng, T. C. E. (2003). A strategic model for supply chain designwith logical constraints: Formulation and solution. Computer & OperationResearch, 30, 2135–2155.

Yeh, W. C. (2006). An efficient memetic algorithm for the multi-stage supply chainnetwork problem. International Journal of Advanced Manufacturing Technology,29, 803–813.

Zhou, G., Min, H., & Gen, M. (2002). The balanced allocation of customers to multipledistribution centers in the supply chain network: A genetic algorithm approach.Computers & Industrial Engineering, 43, 251–261.