19
Optim Eng (2009) 10: 219–237 DOI 10.1007/s11081-008-9059-x A new spanning tree-based genetic algorithm for the design of multi-stage supply chain networks with nonlinear transportation costs Ming-Jong Yao · Hsin-Wei Hsu Received: 30 September 2008 / Accepted: 20 October 2008 / Published online: 6 November 2008 © Springer Science+Business Media, LLC 2008 Abstract The design of configuration and the transportation planning are crucial is- sues to the effectiveness of multi-stage supply chain networks. The decision makers are interested in the determination the optimal locations of the hubs and the optimal transportation routes to minimize the total costs incurred in the whole system. One may formulate this problem as a 0-1 mixed integer non-linear program though com- mercial packages are not able to efficiently solve this problem due to its complexity. This study proposes a new spanning tree-based Genetic Algorithm (GA) using de- terminant encoding for solving this problem. Also, we employ an efficient heuristic that fixes illegal spanning trees existing in the chromosomes obtained from the evolu- tionary process of the proposed GA. Our numerical experiments demonstrate that the proposed GA outperforms the other previously published GA in the solution quality and convergence rate. Keywords Genetic algorithm · Non-linear transportation costs · Multi-stage supply chain networks · Spanning tree 1 Introduction A supply chain is a network that consists of suppliers, manufacturing sites, distribu- tion centers (DCs) and customer locations through logistics. Logistics is often defined M.-J. Yao ( ) Department of Transportation Technology and Management, National Chiao Tung University, Taiwan, ROC e-mail: [email protected] H.-W. Hsu Department of Industrial Engineering and Engineering Management, National Tsing Hua University, Taiwan, ROC e-mail: [email protected]

A new spanning tree-based genetic algorithm for the design ... · meaningful information for evaluation. Spanning trees have been used extensively in a variety of network optimization

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: A new spanning tree-based genetic algorithm for the design ... · meaningful information for evaluation. Spanning trees have been used extensively in a variety of network optimization

Optim Eng (2009) 10: 219–237DOI 10.1007/s11081-008-9059-x

A new spanning tree-based genetic algorithmfor the design of multi-stage supply chain networkswith nonlinear transportation costs

Ming-Jong Yao · Hsin-Wei Hsu

Received: 30 September 2008 / Accepted: 20 October 2008 / Published online: 6 November 2008© Springer Science+Business Media, LLC 2008

Abstract The design of configuration and the transportation planning are crucial is-sues to the effectiveness of multi-stage supply chain networks. The decision makersare interested in the determination the optimal locations of the hubs and the optimaltransportation routes to minimize the total costs incurred in the whole system. Onemay formulate this problem as a 0-1 mixed integer non-linear program though com-mercial packages are not able to efficiently solve this problem due to its complexity.This study proposes a new spanning tree-based Genetic Algorithm (GA) using de-terminant encoding for solving this problem. Also, we employ an efficient heuristicthat fixes illegal spanning trees existing in the chromosomes obtained from the evolu-tionary process of the proposed GA. Our numerical experiments demonstrate that theproposed GA outperforms the other previously published GA in the solution qualityand convergence rate.

Keywords Genetic algorithm · Non-linear transportation costs · Multi-stage supplychain networks · Spanning tree

1 Introduction

A supply chain is a network that consists of suppliers, manufacturing sites, distribu-tion centers (DCs) and customer locations through logistics. Logistics is often defined

M.-J. Yao (�)Department of Transportation Technology and Management, National Chiao Tung University,Taiwan, ROCe-mail: [email protected]

H.-W. HsuDepartment of Industrial Engineering and Engineering Management, National Tsing Hua University,Taiwan, ROCe-mail: [email protected]

Page 2: A new spanning tree-based genetic algorithm for the design ... · meaningful information for evaluation. Spanning trees have been used extensively in a variety of network optimization

220 M.-J. Yao, H.-W. Hsu

as the art of bringing the right amount of right products to the right place (Tilanus1997). Due to the criticality of logistic systems, researchers and practitioners had ad-dressed lots of efforts to the plan and management in supply chain networks (Marryand Vidyaranya 2005). Also, many factors influence the efficiency of the logistic sys-tem, and one of the most important issues is to determine the locations of plants anddistribution centers so as to minimize costs or maximize profit and satisfy the cus-tomer demand in the supply chain. Tragantalerngsak et al. (1997) commented that themulti-stage model fits the decision making scenario for the cases where several plantsshould be sited between the suppliers to the customers in order to provide productsor act as a distribution center.

In the literature, many researchers had addressed their efforts to solve the problemof designing a supply chain network. One may refer to Simchi-Levi et al. (2003) andour literature in Sect. 2 for the details. Some of them applied heuristic for solving theproblem, e.g., Geoffrion and van Roy (1979). Most of studies recommended mixedinteger programming (MIP) model for solving the problem. However, as Bramel andSimchi-Levi (1997) commented in their book, it is generally very difficult to obtainthe optimal solution for these MIP models. Recently, Syarif et al. (2002) applied theconcept of spanning tree to the design of multi-stage supply chain networks and uti-lized the characteristic of spanning tree to set up the encoding (viz. Prüfer encoding)in their genetic algorithm (GA) for solving the problem. Syarif et al. (2002) caredabout the topics of the places of manufacturing sites and DCs should be opened. Inthis paper, we would like to extend their study by accommodating more complexdecision-making scenarios (e.g., taking into accounts the fixed cost for subcontract-ing the transportation vehicles operating between any two neighboring stages) in themulti-stage supply chain network. In Sect. 3, we will show that the revised mathe-matical model may be no longer a linear, binary integer program and it is unable tobe solved by commercial optimization packages, e.g., LINGO or CPLEX, etc.

In order to solve the supply chain design problem in this study, we propose a newspanning tree-based GA using different encoding. We note that the GA using Prüferencoding in Syarif et al. (2002) still applies to solve the concerned problem in thisstudy. Our numerical experiments will show that the proposed GA outperforms Syarifet al. (2002) solution approach.

The rest of this paper is organized as follows. Section 2 reviews the literature onthe design of supply chain networks. Section 3 presents the mathematical model forthe concerned problem in this study. Section 4 provides the details on the proposedGA. The numerical experiments in Sect. 5 demonstrate that the proposed GA ob-tains better solutions than Syarif et al. (2002). Finally, Sect. 6 gives the concludingremarks.

2 Literature review

In order to face the challenge from the global market, larger enterprise groups payintensive attention to the design of supply chains since it grows to be one of the mostimportant factors to gain advantage over other competitors. The management of flowof goods (including work-in-process and finished items) is one of the major concerns

Page 3: A new spanning tree-based genetic algorithm for the design ... · meaningful information for evaluation. Spanning trees have been used extensively in a variety of network optimization

A new spanning tree-based genetic algorithm for the design of multi-stage 221

Fig. 1 Three-stage logistics system by Yu (1997)

to improve the efficiency of the supply chain to meet the demand with a minimumcost, or to fill demand for maximum profit. Therefore, the modeling and analysis ofmulti-stage supply chains have been a very prosperous area of research in the pasttwo decades.

One may refer to Ro and Tcha (1984) and Pirkul and Jayaraman (1998) for theearly studies on multi-stage logistic systems. An order plan model for a multi-stageproduction system was introduced by Azevedo and Sousa (2000). Such a systemprocesses products and materials through different production units that are part of alogistics chain organized in several phases. In this case, they tried to determine, foreach incoming order, an optimal path (concerning cost) through the network. Discus-sion of the production/distribution planning in relation to the supply chain manage-ment concept was given by Sim et al. (2000).

Before this study, Syarif et al. (2002) proposed a spanning tree-based GA to de-termine to choice the right locations for opening the plants and DCs and calculatingminimum cost from suppliers to manufacturers, manufacturers to DCs and DCs tocustomers. One may refer to Fig. 1 (illustrated by Yu 1997) for the operations in athree-stage supply chain. We note that the mathematical model was formulated ac-cording to a simple and straightforward decision-making scenario. Therefore, theirmathematical model is a linear, binary integer program that can be solved by LINGOor other commercial optimization packages. Later, Yeh (2005) proposed a revisedmathematical model that corrected the fatal error appearing in Syarif et al. (2002)models. He also brought up with a brilliant and efficient Hybrid Heuristic Algo-rithm (HHA) for solving the revised model. His proposed HHA combines a greedymethod, the linear programming technique and three local search methods (namely,

Page 4: A new spanning tree-based genetic algorithm for the design ... · meaningful information for evaluation. Spanning trees have been used extensively in a variety of network optimization

222 M.-J. Yao, H.-W. Hsu

a pair-wise exchange procedure, an insert procedure and a remove procedure). Thecomputational results in his study demonstrate his HHA is very efficient in solvingthe problem with high quality solutions. We note that Yeh’s (2005) HHA only appliesto the models with linear cost terms since it needs to employ the linear programmingtechnique, which serves as the most critical part in the HAA, to improve candidatesolutions during its optimization process. Therefore, it is not applicable to the supplychain network design problem with nonlinear transportation costs concerned in thisstudy.

Note that GA had been popularly applied to solve several NP-hard networkoptimization problems; e.g., Chou et al. (2001) applied GA to solve the degree-constrained minimum spanning tree problem presented in Narula and Ho (1980),Delbem et al. (2005) employed GA to solve the network reconfiguration problemin power distribution systems, and Zhou and Gen (2003) applied GA to solve thetelecommunication network design problem. Gen et al. (2005) utilized GA for solvingthe following four network design problems: (1) degree-constrained minimum span-ning tree problem, (2) capacitated minimum spanning tree problem, (3) fixed chargetransportation problem, and (4) bicriteria local area network topological design prob-lem. Also, Jo et al. (2007) employed GA for solving the nonlinear fixed charge trans-portation problem in two-stage supply chain networks (with the transshipment hap-pening only between the plants and the customers), which may be recognized as aspecial case or a simplified version of the problem studied in this paper.

Gen and Cheng (1997) commented that there are two types of encoding, namely,direct and indirect, when employing GA to solve network optimization problems.With direct encoding, the strings can be translated directly. On the other hand, withindirect encoding, a decoding algorithm should be used to expand the strings intomeaningful information for evaluation. Spanning trees have been used extensively ina variety of network optimization problems and various encoding methods have beenused to represent trees. They can be classified broadly into three categories: edge,node, and edge-node encoding. Edge encoding has been found to be a poor represen-tation, and in node-based or vertex-based encoding the nodes, rather than edges, arerepresented in the encoding. A popular encoding method for trees is based on Prüfernumber, which represents a tree of n nodes with n − 2 digits, where each digit isan integer between one and n. Syarif et al. (2002) adopted Prüfer encoding to solvethe supply chain network problems. Since Prüfer encoding may lead to infeasiblechromosomes, they also proposed a feasibility check and repairing procedure for notonly decoding Prüfer representation and fix any infeasible chromosome. Note thatthe evolutionary process in their GA is done with a one-point crossover and inver-sion mutation. Besides, Gen et al. (2005) and Jo et al. (2007) also employed Prüferencoding for solving network design problem in supply chains. These studies rec-ommended Prüfer encoding since it may obtain solutions which are better than otherGAs, e.g., matrix-based encoding GAs.

On the other hand, Abuali et al. (1995) suggested determinant encoding as an al-ternate node-based encoding for representing spanning trees, and compared Prüfer,determinant, and link and node biased encoding methods and found that determinantencoding provided better performance. Chou et al. (2001) showed that determinantencoding is superior to Prüfer encoding when solving the degree-constrained mini-mum spanning tree problem.

Page 5: A new spanning tree-based genetic algorithm for the design ... · meaningful information for evaluation. Spanning trees have been used extensively in a variety of network optimization

A new spanning tree-based genetic algorithm for the design of multi-stage 223

Inspiring from the results of Chou et al. (2001), we tried to apply determinant en-coding for solving the concerned problem. Also, we propose an efficient heuristic tofix illegal spanning trees existing in the chromosomes obtained from the evolutionaryprocess. We will present the details on the proposed GA in Sect. 4.

3 The mathematical model

In this section, we present three models for the problem of designing a supply chainnetwork.

3.1 The basic model

First, we would like to introduce the basic model presented in Syarif et al. (2002).Before presenting the revised model, we first introduce the nomenclature used later.

Indices

I: number of suppliers (i = 1,2, . . . , I )

J: number of plants (j = 1,2, . . . , J )

K: number of DCs (k = 1,2, . . . ,K)

L: number of customers (l = 1,2, . . . ,L)

Parameters

ai : capacity of supplier i

bj : capacity of plant j

ck : capacity of DC k

dl : demand of customer l

fj : fixed cost for operating plant j

gk : fixed cost for operating DC k

sij : unit cost of transportation in plant j using material from supplier i

tjk : unit cost of transportation from plant j to DC k

ukl : unit cost of transportation from DC k to customer l

P : an upper limit on total number of plants that can be openedW : an upper limit on total number of DCs that can be opened

Variables

xij : amount shipped from supplier i to plant j

yjk : amount shipped from plant j to DC k

zkl : amount shipped from DC k to customer l

pj ={

1, if production takes place at plant j

0, otherwise

wk ={

1, if DC k is opened0, otherwise

Page 6: A new spanning tree-based genetic algorithm for the design ... · meaningful information for evaluation. Spanning trees have been used extensively in a variety of network optimization

224 M.-J. Yao, H.-W. Hsu

where �x� denotes the ceiling operator that obtains the smallest integer larger than x.We present the mixed binary integer linear program in Syarif et al. (2002) as follows.Note that we call it as the problem (P0) in this paper.

(P0) Minimize TC =∑

i

∑j

sij xij +∑j

∑k

tjkyjk +∑

k

∑l

uklzkl

+∑j

fjpj +∑

k

gkwk (1)

subject to∑j

xij ≤ ai for all i (2)

∑k

yjk ≤ bipj for all j (3)

∑j

pj ≤ P (4)

∑l

zkl ≤ ckwk for all k (5)

∑k

wk ≤ W (6)

∑k

zkl ≥ dl for all l (7)

pj ,wk = {0,1} for all j, k (8)

xij , yjk, zkl ≥ 0 for all i, j, k, l (9)

The objective function (1) is the sum of the fixed costs for operating plants andDCs, the transportation costs between any two neighboring echelons in the multi-stage supply chain network. Constraints in (2) ensure that the suppliers’ capacity issufficient. Constraints (3) and (5) are the capacity constraints for the plants and DCs,respectively. Constraints (4) and (6) indicates that the opened plants and DCs do notexceed their upper limits, respectively. Constraints in (7) make sure that the demandsof all customers are met.

3.2 An extended version

Here, we would like to present an extended version of Syarif et al. (2002) model. Wederive this revised model, which will be named as the problem (P1), by taking intoaccounts the fixed costs for subcontracting the transportation vehicles in the multi-stage supply chain network. When formulating this revised model, we adopt all theassumptions in Syarif et al. (2002) but employ two different assumptions as follows.

1. We assume that the operations of transportation will be subcontracted to a thirdparty logistic (3PL) service provider. According to the cases in the real world,the 3PL service provider charges the transportation cost by taking into account

Page 7: A new spanning tree-based genetic algorithm for the design ... · meaningful information for evaluation. Spanning trees have been used extensively in a variety of network optimization

A new spanning tree-based genetic algorithm for the design of multi-stage 225

not only the unit cost for each shipped item, but also the fixed cost for assigneddesignated vehicles for the transportation between two neighboring echelons in asupply chain network.

2. We allow unlimited number of opened plants and DCs in the multi-stage supplychain network.

We define some notation before discussing the details on calculating the cost forsubcontracting 3PL service provider. First, we define FC as the fixed cost for sub-contracting a transportation vehicle and VL as the capacity limit of a transportationvehicle. Suppose that the total amount of shipment between two neighboring eche-lons in a supply chain network is TA. Following the first assumption above, the 3PLservice provider will charge a fixed cost for subcontracting the transportation vehiclesoperating between the two neighboring echelons, which is given by

FC ·⌈

TA

VL

⌉(10)

Following our second assumption, we remove the following two constraints,namely,

∑j pj ≤ P and

∑k wk ≤ W from Syarif et al. (2002) model. We consider

that it would be more reasonable since we have included the fixed costs for operatingplants and DCs in the objective function and the optimization process automaticallydetermines the values of the upper bounds (i.e., P and W ).

The mixed integer nonlinear program for the problem (P1) is presented as follows.

(P1) Minimize

TC =∑

i

∑j

sij xij +∑j

∑k

tjkyjk +∑

k

∑l

uklzkl +∑j

fjpj

+∑

k

gkwk + FC ·[⌈∑

xij �=0 xij

VL

⌉+

⌈∑yjk �=0 yjk

VL

+⌈∑

zkl �=0 zkl

VL

⌉](11)

subject to (2), (3), (5), (7), (8), and (9).We note that after adding the last cost term, the objective function in our mathe-

matical model turns to a nonlinear function. Since the problem (P1) is not a mixedinteger linear program, we are no longer able to guarantee obtaining the optimal so-lution using commercial software, e.g., LINGO or CPLEX as the problem (P0) did.

3.3 More complicated versions

We note that it could be very complicated to determine the transportation cost in thesupply chain. We would use a case in Fig. 2 as an example for our discussion here.

We assume that there are three companies that take care of the transportation op-erations in the supply chain network in Fig. 2. Each company covers only a particularpart of the map possibly because of the geometric reasons and the economic reasons

Page 8: A new spanning tree-based genetic algorithm for the design ... · meaningful information for evaluation. Spanning trees have been used extensively in a variety of network optimization

226 M.-J. Yao, H.-W. Hsu

Fig. 2 A map for the 3PL companies responsible for the transportation

when establishing its transportation routes. Note that the transportation charge couldbe complicated in the real world. For example, the company may offer a price tablewith all-unit discount, incremental discount or a price table with indifference points,see Russell and Krajewski (1991) and Siajadi et al. (2005) for details. We note that itis almost impossible to learn the exact objective function value before one determinesthe values of the decision variables in the mathematical model. The source of such dif-ficulty results from the total transportation costs paid to 3PL companies. Especially,one has to know the values of xij , yjk , zkl , ∀i, j, k, l to determine the total transporta-tion costs paid to a 3PL company c, which is denoted as τc(xij , yjk, zkl |∀i, j, k, l).Then, we may have a complicated mixed integer nonlinear program such a case,which is named as the problem (P2) as follows.

(P2) Minimize TC =∑j

fjpj +∑

k

gkwk +∑

c

τc(xij , yjk, zkl |∀i, j, k, l) (12)

subject to (2), (3), (5), (7), (8), and (9).Even though the problem (P2) is a very complicated problem, GA may serve as

an appropriate solution methodology since GA has the values of all the decision vari-ables in the mathematical model during the evolutionary process.

4 The genetic algorithm

In this section, we propose a new spanning tree-based GA for solving the design of amulti-stage supply chain. The chromosome representation, the proposed heuristic thatfixes the feasibility problem for the illegal chromosomes and the genetic operators inthe proposed GA will be introduced in the following subsection.

Page 9: A new spanning tree-based genetic algorithm for the design ... · meaningful information for evaluation. Spanning trees have been used extensively in a variety of network optimization

A new spanning tree-based genetic algorithm for the design of multi-stage 227

Fig. 3 The illustration of chromosome representation in the proposed GA

4.1 Chromosome representation and determinant encoding

In the problem of designing a supply chain network, each chromosome S in the pro-posed GA is a composition of five ordered sub-strings, S1, . . . , S5. Namely, the firstsub-string S1 represents the decisions if the sites of plants should be opened, and thesecond sub-string S2 represents the decisions if the sites of DCs should be opened.Also, the last three sub-strings, S3, S4, S5 use determinant encoding to represent thetransportation patterns between the suppliers and the plants, that between the plantsand the DCs, as well as that between the DCs and the customers, respectively. Here,we take a small-size supply chain that has 3 supplies, 3 feasible plants, 2 feasibleDCs and 4 customers as an example (which is depicted in Fig. 3) to illustrate ourchromosome representation in the proposed GA.

Suppose that there are I suppliers, J plants, K DCs and L customers in the supplychain. Next, we will have further discussion on determinant encoding. We first takethe transportation for the stage between the I suppliers and J plants as an example.(The determinant encoding for the transportation between the J plants and K DCs aswell as that between K DCs and L customers are done in the same fashion.) Thereare a total of I +J nodes considered in this stage. Then, the length of the substring S3using determinant encoding corresponding to this stage should be (I + J − 1). (Wehave further discussions on the reasons why there should be (I +J − 1) links for thisstage in the Appendix.) Similarly, the length of the substrings S4 and S5 should be(J + K − 1) and (K + L − 1), respectively.

The decoding algorithm for determinant encoding treats each allele of chromo-some to correspond to its position in the chromosome and the position represents itsdirect connecting node. The first gene is decoded as fixed-position 2, second as fixed-position 3, and so on. Using a substring Sg (g = 3,4,5) with its length being λ, weelaborate the decoding for the determinant encoding in the following discussion. De-note Sq as the qth allele in substring Sq and 1 ≤ q ≤ λ. Recall that the number of thenodes in this stage should be λ+1. The decoding of a substring Sg using determinantencoding is done by the following procedure.

The decoding procedure for the substrings using determinant encoding

1. Set q = 1, if 0 < q ≤ λ + 1, go to Step 2, else Stop.2. Connect node (q + 1) with node Sg(q), set q = q + 1, go back to Step 1.

Next, we would like to show that there could be three types of illegal spanning treegenerated from determinant encoding if one did not set any restriction on the range of

Page 10: A new spanning tree-based genetic algorithm for the design ... · meaningful information for evaluation. Spanning trees have been used extensively in a variety of network optimization

228 M.-J. Yao, H.-W. Hsu

Fig. 4 The layout of thespanning tree from determinantencoding—an illegal tree

the encoding value. For example, let sg = [42656] represent a chromosome coded bydeterminant encoding. It implies that there are six nodes in the network correspondingto each fixed position [23456] with the links (2,4), (3,2), (4,6), (5,5) and (6,6) inthe tree. (Each corresponding fixed position in the figure is equal to the order of thegene plus one. Each allele of chromosome can be connected to its correspondingfixed position as in Step 2 in the procedure presented above.) The final layout of thetree is shown in Fig. 4. The generated spanning tree may not be legal and need to berepaired by reallocating genes in appropriate positions to generate a legal tree. FromFig. 4, one may detect that there exists no connecting link to node 1, which is called“missing node 1”. On the other hand, one may find “self-loop” in the tree since thelinks (5,5) and (6,6) leads to such a problem. Also, “cycle” occurs if a subset oflinks connect in a loop, returning to the original node, in which case one of the linksmay be unnecessary.

In order to ensure feasibility of a substring in determinant encoding, we shouldrestrict the range of the encoding value corresponding to the transportation betweenthe suppliers and the plants, that between the plants and the DCs and that betweenthe DCs and the customers. We take the transportation between the I suppliers and J

plants as an example. The first (I − 1) genes for this stage correspond to the indicesfor the plants that suppliers 2 to I connected with. Obviously, they can connect onlyto the nodes indexed from (I + 1) to (I + J ). Then, the next J genes for the J plantsshould take the encoding value the range in from 1 to I . The restrictions on the valuesof encoding also apply to the stage between the plants and the DCs and the stage be-tween DCs and the customers. It will never happen the cases of self-loops and cycleswith the restrictions on the range of the encoding value. Therefore, the restrictions onthe range of the encoding value effectively prevent the possibility of producing illegalspanning trees. Only a single issue we must deal with is problem of missing node 1.Since this problem often happens when generating the initial population, we presentour procedure for fixing illegal spanning trees in Sect. 4.2.

Page 11: A new spanning tree-based genetic algorithm for the design ... · meaningful information for evaluation. Spanning trees have been used extensively in a variety of network optimization

A new spanning tree-based genetic algorithm for the design of multi-stage 229

4.2 Initialization, ensuring feasibility and fitness evaluation

When implementing the initialization of the proposed GA, one part of the chromo-somes in the initial population are randomly generated, but taking into accounts of therestrictions on the range of the encoding value. We set α as the portion of the chromo-somes that are randomly generated. (We take the value of α = 10% in our numericalexperiments.) We denote � as the population size. Then, the other chromosomes inthe initial population are generated by a greedy heuristic. Let q be the index for thefixed position in each chromosome. The pseudo code of the initialization procedureis presented as follows.

The initialization procedure

1. (The randomly-generated part) Calculate the value of ρ = �� · α�. For this set ofρ chromosomes, we randomly generate the values of Sg(q) but take into accountsof the restrictions on the range of the encoding value for each chromosome S.

2. (The greedy-generated part) For the other �−ρ chromosomes, we do the follow-ing steps. Let q = 2.(a) For the qth fixed position, pick the link (q, r) with the lowest transportation

cost per-unit but taking into accounts of the restrictions on the range of theencoding value. When there exist two or more tie links, we randomly pick oneof these tie links.

(b) Set q = q + 1. If q ≤ I + J , then go to Step 2(a); otherwise, stop.

We have further explanation on Step 2(a) as follows. Suppose that a supply chainhas I suppliers and J plants. Recall that the first fixed position corresponds to node 2,which is the supplier no. 2. For a substring S3, we should pick the link (2, j̄ ) with j̄ =arg minj {s2j }. We note that for a fixed position q , usually there exist many candidatelinks with the same transportation cost per unit since the nodes corresponding to thesecandidate links are located within a close range of transportation distance. Therefore,the random tie-breaking in Step 2(a) will prevent plenty copies of same chromosomesexisting in the initial population.

Since the problem of “missing node 1” still happen, there may exist illegal treesin the initial population. For a given substring Sq with its length being λ, we may usethe following procedure for fixing this problem.

The procedure for fixing missing node 1

1. Let q = 1 and flag = 1 (which defaults that the problem of missing node 1 exists).2. Check the value of Sg(q): If Sg(q) = 1, then set flag = 0. Go Step 3.3. If q < λ, set q = q + 1 and go to Step 2; otherwise, go to Step 4.4. If flag = 0, then stop (without the problem of missing node 1); otherwise, pick

plant r̄ among those candidate sites with r̄ = arg minr{s1r} and assign 1 to thecorresponding fixed position. (If there is a tie, randomly select a position.)

Although determinant encoding is an indirect encoding strategy, the decoding al-gorithm is very simple. Also, it enjoys the advantage that there exist no infeasible

Page 12: A new spanning tree-based genetic algorithm for the design ... · meaningful information for evaluation. Spanning trees have been used extensively in a variety of network optimization

230 M.-J. Yao, H.-W. Hsu

solution in the proposed chromosome representation. The only disadvantage is thatit may generate illegal trees with the problem of missing node 1. But, from anotherpoint of view, it provides opportunities to improve the value of the objective functionwhen fixing the illegal trees (that is not possible for Prüfer encoding).

After conducting decoding, we are ready to determine the values of xij , yjk, zkl |∀i, j, k, l for fitness evaluation. We note that the decisions on the values of dif-ferent stages are independent, e.g., the decisions on the values of xij ’s are inde-pendent of yjk’s. We may use the following procedure to determine the values ofxij , yjk, zkl |∀i, j, k, l, in a stage-by-stage fashion. (Here, we employ the decision onthe values of xij as an example in the transportation quantity assignment procedure.The values of yjk’s and zkl’s can be determined in a similar way.)

The transportation quantity assignment procedure

1. Mark all the links in the chromosome as “unlabeled”.2. Randomly pick an unlabeled link (i, j) that connects node i and node j in the

supply chain, and set xij = min{ai, bj } where ai and bj are the available capacityof supplier i and plant j , respectively.

3. Mark the link (i, j) as “labeled” and update the available capacity by ai = ai −xij

and bj = bj − xij .4. If there exists any unlabeled link, go to Step 2; otherwise, stop.

After determining the values of xij , yjk , zkl , ∀i, j, k, l, we are able to secure thevalue of the objective function by plugging them into the termFC · [�∑xij �=0 xij /VL� + �∑yjk �=0 yjk/VL� + �∑zkl �=0 zkl/VL�] in (11) or the term∑

c τc(xij , yjk, zkl |∀i, j, k, l) in (12). The selection mechanism presented in the nextsubsection will be conducted based on the objective function obtained here.

4.3 Selection, genetic operators and termination

Some researchers prefer to use the enlarged sampling approach since it reduces thepossibility of duplicate chromosomes entering the population during selection (Genand Cheng 1997). Typically, there are two enlarged sampling strategies: (μ + λ) and(μ,λ). In (μ + λ) strategy, μ parents and λ offsprings compete for survival and theμ best solutions are selected for the next generation. In (μ,λ) strategy, we select theμ best solutions from out of λ offspring solutions. We used the stochastic (μ + λ)

method as recommended in Chou et al. (2001).On the genetic operators, we compare several combinations of crossover and mu-

tation operators. In the GA braught by Syarif et al. (2002), they employ the single-point operator for crossover and the inversion-displacement operator for mutation. Inone-point crossover, a random position is generated for a pair of chromosomes andthe alleles of the first chromosome from this fixed position to the end are exchangedwith the second chromosome in the same range. In this process, the alleles of thesecond chromosome are transferred to the respective alleles in the first chromosome.

In order to look for a more efficient implementation for the proposed GA, we in-clude two-point and uniform operators for crossover and both insertion and exchangeoperators for mutation. Two-point crossover generates two random positions, head

Page 13: A new spanning tree-based genetic algorithm for the design ... · meaningful information for evaluation. Spanning trees have been used extensively in a variety of network optimization

A new spanning tree-based genetic algorithm for the design of multi-stage 231

and tail. The alleles of the first chromosome from the head position to the tail are ex-changed with the second chromosome in the same range. Uniform crossover is a dy-namic and nondeterministic method where a set of positions, called a mask, is chosenfor each of the chromosomes and their alleles are exchanged with each other basedon the generated positions. There are two random decisions-the positions to replaceand the number of genes to replace. Insert mutation randomly generates two posi-tions in a given chromosome and inserts the gene from the first position in the secondposition and shifts all the genes to the right by one position. Exchange mutation ran-domly selects two positions in a given chromosome and exchanges both genes. Insertmutation causes greater changes to the chromosome compared to exchange mutation.This is particularly true in our study since the genes in a chromosome are related totheir fixed positions.

Obviously, the genetic operators should be applied to the parts of the chromosomefor different stages of the supply chain independently. Also, when implementing thegenetic operators in the proposed GA, one should pay attention to the following twoissues to ensure feasibility of the chromosomes.

1. We should follow the restrictions on the range of the encoding value discussed inSect. 4.1 to ensure the feasibility of the chromosome. For example, supposed thatwe apply a crossover operator to the substrings corresponding to the transportationbetween the I suppliers and J plants for two chromosomes. In such a case, we firstconduct the crossover operator to the first (I − 1) genes of the substrings so as tokeep the values of the indices for the plants in their feasible range. Then, we dothe crossover operator to the other J genes of the substrings for the J plants.(Mutation operators shall be applied in a similar way.)

2. We should fix those chromosomes experiencing the operations of genetic opera-tors if they suffer the problem of missing node 1.

An important issue in the implementation of GA is the termination criterion. Sev-eral termination criteria are established from number of generations, computing time,and fitness convergence. Fitness convergence occurs when all the chromosomes in thepopulation have the same fitness value. In this study, fitness convergence is selectedas the termination criterion. Namely, we stop the evolutionary process in GA whenthe best chromosome on hand was not improved in the last 10 generations.

The population size, crossover rate, and mutation rate are three other importantcontrol parameters for GA. For the sake of having a fair stand for comparison, weemployed the same settings as Syarif et al. (2002) did for the implementation oftheir GA.

5 Numerical experiments

In the first part of this section, we will demonstrate that the proposed GA using de-terminant encoding and our cost-reduction heuristic, which is abbreviated as Y&H,is superior to the GA using Prüfer encoding presented in Syarif et al. (2002), whichis abbreviated as SYG for the rest of the paper. Also, we will bring up with the rec-ommend genetic operators following the results of our experimental design on the

Page 14: A new spanning tree-based genetic algorithm for the design ... · meaningful information for evaluation. Spanning trees have been used extensively in a variety of network optimization

232 M.-J. Yao, H.-W. Hsu

Table 1 The configurations ofthe four problems in ournumerical experiments

Prob. No. ofsuppliers

No. ofmanufacturers

No. ofDCs

No. ofcustomers

1 4 5 5 5

2 8 10 10 10

3 15 20 20 40

4 20 25 25 60

selection of genetic operators in the second part of this section. The third part of thissection conducts further comparison between the Y&H and SYG using larger numberof instances.

5.1 Comparison of two solution approaches

In order to compare the performance of the proposed GA and the GA using Prüferencoding, we randomly generate four instances of the problem (P1) with differentconfigurations (suppliers, manufacturers, distribution centers and customers) of thesupply chain networks. Table 1 summarizes the configurations of the supply chainnetworks in our experiments.

We note that the parameters of the instances used for comparison in this sectionare randomly generated. The capacity limit of each node in the supply chain, the fixedcost of the suppliers and DCs, and the transportation cost in each stage are generatedfrom Uniform [200,1500], Uniform [400,2500] and Uniform [1,10], respectively.In our experiments, we have the fixed cost for subcontracting a transportation vehi-cle given by FC = 500 and the capacity limit of a transportation vehicle given byVL = 300. Recall that the total amount of shipment between two neighboring ech-elons is denoted as TA (which shall be calculated as the values of xij , yjk, zkl aregiven from the transportation quantity assignment procedure presented in Sect. 4.2).Therefore, the cost for subcontracting the transportation vehicles operating betweenthe two neighboring echelons is given by 500 · �TA/300�.

Our numerical experiments were done by a personal computer with a CPU ofAMD Sempron(tm) 2400+, 1.67 GHz and 1 G RAM. In order to rule-out the effectsfrom using different genetic operators, we use the same combination as the SYG’s(i.e., one-point operator for crossover and inversion-displacement operator for mu-tation) in our experiments here. (Though after comparing different combinations ofgenetic operators, we find that two-point operator for crossover and exchange opera-tor for mutation will be the most effective one for the proposed GA. We will presentour discussions on the design of experiments in Sect. 5.2. Also, we will comparethe Y&H with the SYG using our best combination of genetic operators in Sect. 5.3later.) The crossover rate and the mutation rate are 0.4 and 0.2, respectively. The pop-ulation size is 50. We run the Y&H and SYG for 30 times for each problem. Table 2summarizes the objective function value and the run time for the comparison of thetwo solution approaches.

Table 2 “seems” indicating that the proposed GA (i.e., Y& H) is superior to SYG.In order to earn objective support from statistical analysis, we employed t-test toverify our intuition and formulated the following hypothesis:

Page 15: A new spanning tree-based genetic algorithm for the design ... · meaningful information for evaluation. Spanning trees have been used extensively in a variety of network optimization

A new spanning tree-based genetic algorithm for the design of multi-stage 233

Table 2 The comparison of the two solution approaches

Prob. The value of the objective function Run time (in sec.)

SYG Y&H Improvementof Y&H

SYG Y&H

Average Best Average Best

1 $54,425 $53,360 $53,847 $53,080 1.06% 10.73 9.85

2 106,104 104,750 105,582 104,660 0.49% 34.10 24.87

3 272,187 265,020 263,577 260,300 3.16% 59.65 38.60

4 406,631 397,870 389,657 381,800 4.17% 170.30 90.18

H0: There exists no significant difference between the solution from Y&H and SYG.H1: Y&H is superior to SYG.

The results of our t-tests indicate that one may reject H0 with a 95% confidencelevel (i.e., α = 0.05). Also, since the p-values of all are less than 0.0026, we arestrongly confident that the same conclusion still holds for those cases with smallervalues of α. Therefore, we can draw our conclusion that Y&H is superior to SYGaccording to our numerical experiments.

Interestingly, one may observe that the larger the problem size, the better the per-formance of Y&H (from the determinant encoding). On the other hand, the solutionsfrom Y&H outperform the solution from SYG in both the average and the best ofthe objective function value. Therefore, we may learn that the determinant encodingis superior to Prüfer encoding in our experiments. Also, one may notice that for thelarge-size problems (i.e., problem no. 3 and no. 4), the best solutions from SYG (us-ing Prüfer encoding) is even worse than the average of the solutions of Y&H. Suchan advantage may result from the fixing heuristic in Sect. 4.2, that plays the role oflocal search in the evolutionary process of GA, enhancing the ability of exploitationof the proposed GA.

On the other hand, one may observe that the run time of SYG becomes signifi-cantly longer than Y&H for the larger-size problems. The run time of SYG is almosttwice of Y&H for problem no. 4. Therefore, we would comment that the proposedGA using determinant encoding performs better in the convergence rate of GA.

5.2 Experimental design on the selection of genetic operators

In this section, we would like to find the best combination of genetic operators forthe proposed GA. Here, we compare three operators for crossover, namely, one-point (C1), two-point (C2) and uniform (C3) operators, and three operators for muta-tion, viz., inversion-displacement (M1), insertion (M2) and exchange (M3) operators.(Note that we define the alias of each genetic operator to facilitate our presentationlater.) Similar to our experiments in Sect. 5.1, we set the crossover rate and the muta-tion rate to be 0.4 and 0.2, respectively, and the population size to be 50. We solvedthe problem (P1) for 10 times, and summarized our results in Table 3. In each cellof Table 3, we show the average objective function value and the average run timeof the proposed GA. The best solution is indicated in the parenthesis. For example,when using C1 and M1 as the genetic-operator combination, the average and the best

Page 16: A new spanning tree-based genetic algorithm for the design ... · meaningful information for evaluation. Spanning trees have been used extensively in a variety of network optimization

234 M.-J. Yao, H.-W. Hsu

Table 3 The comparison of the two solution approaches

Cross. Mut. Prob. no.

1 2 3 4

Obj.value

Time(sec.)

Obj.value

Time(sec.)

Obj.value

Time(sec.)

Obj.value

Time(sec.)

C1 M1 $53,847 9.85 $105,582 24.87 $263,577 38.60 $389,657 90.18

(53,080) (104,660) (260,300) (381,800)

M2 54,017 9.64 106,117 24.67 267,725 48.55 397,910 71.65

(53,150) (105,200) (263,660) (388,380)

M3 54,064 9.59 106,274 14.16 263,137 23.80 389,683 52.01

(53,370) (105,110) (256,980) (382,390)

C2 M1 54,171 13.2 106,288 19.80 264,686 42.04 389,063 82.30

(53,550) (105,460) (259,930) (380,340)

M2 54,114 13.45 106,411 19.01 268,097 34.07 397,580 71.98

(53,430) (104,860) (261,940) (387,870)

M3 53,738 11.52 105,482 13.91 261,765 28.87 386,015 68.29

(53,080) (104,460) (257,630) (379,540)

C3 M1 53,572 22.06 106,209 28.01 263,606 72.95 390,572 132.95

(53,080) (105,840) (259,020) (385,640)

M2 53,925 15.76 107,155 18.48 267,507 58.92 397,917 95.92

(53,310) (106,260) (262,600) (390,580)

M3 53,886 9.65 105,644 22.01 262,051 48.04 388,502 81.41

(53,150) (104,550) (257,340) (380,950)

objective function value obtained for the problem no. 1 is $53,847 and $53,080, re-spectively. Also, for each problem, the best objective function value or the shortestrun time are shown in italic fonts.

From Table 3, one may observe that C2 + M3 (i.e., the combination of the two-point operator for crossover and the exchange operator for mutation) brought the bestsolution for most of the cases. Furthermore, it shows that the proposed GA convergesin a shorter run time comparing with others. Especially, the larger the size of theproblem, the better the recommended combination. We note that such an advantageis very important for the applications in the real world since the size of the problemis usually very large for the practical cases. Following our numerical experiments,we suggest using the two-point operator for crossover and the exchange operator formutation when employing the proposed GA for solving the problem of designing asupply chain network.

5.3 Further comparisons

After comparing different combinations of genetic operators in Sect. 5.2, we find thattwo-point operator for crossover and exchange operator for mutation will be the mosteffective one for the proposed GA. We would like to use larger number of sample

Page 17: A new spanning tree-based genetic algorithm for the design ... · meaningful information for evaluation. Spanning trees have been used extensively in a variety of network optimization

A new spanning tree-based genetic algorithm for the design of multi-stage 235

Table 4 The improvement of the Y&H comparing with the SYG

Instance Data set 1 Data set 2 Data set 3 Data set 4

Obj. Run time Obj. Run time Obj. Run time Obj. Run timevalue (sec.) value (sec.) value (sec.) value (sec.)

1 0.06% 66.08% 7.29% 67.41% 17.34% 65.09% 23.82% 84.64%

2 4.24% 65.10% 8.41% 74.80% 15.77% 84.91% 21.56% 84.45%

3 2.74% 60.26% 5.70% 73.17% 16.17% 75.46% 16.23% 75.98%

4 0.11% 60.81% 7.08% 74.50% 14.30% 81.84% 16.90% 79.62%

5 2.60% 75.66% 7.18% 72.14% 15.08% 85.17% 16.68% 80.76%

problems with to demonstrate the superiority of the proposed approach by using ourbest combination of genetic operators here. There are four sets of experiments, andwe randomly generate 5 instances for each data set. The instances in the first dataset are generated using a similar way as we did for the problem no. 1 in Table 2.(The second set is generated similar to the problem no. 2, and so on.) The numberof nodes in each stage of supply chain (which shall be an integer) are randomly gen-erated with a discrete uniform distribution. For the first set of instances, the numberof nodes in each stage is generated from Uniform [3, 8]. The uniform distributionsfor the second, the third, and the fourth sets are Uniform [8,14], Uniform [15, 40],and Uniform [20, 60], respectively. We collect the data of the objective function val-ues and the run time for both the Y&H and SYG approaches for 30 runs for eachinstance. By comparing with the results of the SYG, we summarize the improvementof the Y&H for each data set in Table 4.

From Table 4, the improvement of the proposed approach (i.e., the Y&H) is im-pressively significant by using our best combination of genetic operators (with two-point crossover and exchange mutation). Also, the larger the size of the problem, thelarger the improvement of the proposed approach. Therefore, we conclude that theproposed approach outperforms the approach by Syarif et al. (2002) in both aspectsof the solution quality and the run time.

6 Conclusion

This study focuses on the design of configuration and the transportation planningin multi-stage supply chain networks. The decision makers need to determine theoptimal locations of the hubs and the optimal transportation routes to minimize thetotal costs incurred in the whole system. We formulate two mathematical modelsby revising the model in Syarif et al. (2002) by taking into accounts more practicalcases in the real world (e.g., considering the cost for subcontracting the transportationvehicles between any two neighboring echelons) in the supply chain network. Wenote that this problem is formulated as a 0-1 mixed integer non-linear program that isnot able to be efficiently solved by commercial packages due to its complexity. Thisstudy proposes a new spanning tree-based Genetic Algorithm (GA) using determinantencoding for solving this problem. And, we derive an efficient heuristic that fixes

Page 18: A new spanning tree-based genetic algorithm for the design ... · meaningful information for evaluation. Spanning trees have been used extensively in a variety of network optimization

236 M.-J. Yao, H.-W. Hsu

illegal spanning trees existing in the chromosomes obtained from the evolutionaryprocess. It also plays the role of a local search to improve the candidate solutionsobtained in the evolutionary process of the proposed GA. Our numerical experimentsdemonstrate that the proposed GA outperforms the GA of Syarif et al. (2002) in thesolution quality and convergence rate.

Recently, the authors are trying to apply the proposed methodology in this studyto other network design problems in the literature.

Appendix: The number of possible links in one stage of the supply chain

In this section, we would like to explain the reasons why there should be (I + J − 1)

links between I suppliers and J plants in the supply chain.Intuitively, there are possible links between I suppliers and J plants. Here, fol-

lowing the rationale of enumeration, we would like to show that there could be nomore than (I + J − 1) links in an optimal solution for the supply chain network de-sign problem. For example, if there are 3 suppliers and 3 plants, the total number ofpossible links should be 9. We enumerate all the possible cases when optimality isreached as follows.

1. The supplier 1 is assigned to three plants. It is necessary that at least two of theplants consumed all of their capacity; otherwise, it does not reach optimality. Thatis, at most only one plant still has capacity available. After assigning the supplier 1to these three plants, we have two suppliers and one plant left. No matter both sup-pliers or one of the suppliers were assigned to the plant (with capacity available),the total numbers of links will not exceed 5, which is (I + J − 1).

2. The supplier 1 is assigned to two plants. It is necessary that at least one of theplants consumed all of its capacity; otherwise, it does not reach optimality. In sucha case, we have a problem with two suppliers and two plants left. If the supplier 2is assigned to two plants. It is necessary that at least one of the plants consumedall of its capacity; otherwise, it does not reach optimality. Then, we have onlyone supplier and one plant left. No matter when happen to the last case, the totalnumbers of links will not exceed 5.

3. The supplier 1 is assigned to only one plant.

The supplier 2 is assigned to three plants. It is necessary that at least two of theplants consumed all of their capacity; otherwise, it does not reach optimality. That is,at most only one plant still has capacity available. After assigning the supplier 2 tothese three plants, we have one supplier and one plant left. Then, we have only onesupplier and one plant left. The total numbers of links will not exceed 5.

The supplier 2 is assigned to two plants. It is necessary that at least one of theplants consumed all of its capacity; otherwise, it does not reach optimality. Thenthere are two plants and one supplier left where two links will be assigned at most.Therefore, the total numbers of links will not exceed 5.

The supplier 2 is assigned to only one plant. There could be three plant still avail-able in such a case. The only supplier 3 may be assigned to all of these three plantsat most. Therefore, the total numbers of links will not exceed 5.

Page 19: A new spanning tree-based genetic algorithm for the design ... · meaningful information for evaluation. Spanning trees have been used extensively in a variety of network optimization

A new spanning tree-based genetic algorithm for the design of multi-stage 237

We may easily generalize our rationale to all of the cases with I suppliers and J

plants in the supply chain. We conclude that there are no more than (I + J − 1) linksbetween I suppliers and J plants when optimality is reached.

References

Abuali FN, Wainwright RL, Schoenefeld DA (1995) Determinant factorization: A new encoding schemefor spanning trees applied to the probabilistic minimum spanning tree problem. In: Eshelman LJ(ed) Proceedings of the sixth international conference on genetic algorithms. Morgan Kaufmann, SanMateo, pp 155–192

Azevedo AL, Sousa JP (2000) Order planning for networked make-to-order enterprises: A case study.J Oper Res Soc 51:1116–1127

Bramel J, Simchi-Levi D (1997) The logic of logistics: Theory, algorithms and applications for logisticsmanagement. Springer, New York

Chou H, Premkumar G, Chu CH (2001) Genetic algorithm for communications network design—An em-pirical study for the factors that influence performance. IEEE Trans Evolut Comput 5(3):236–249

Delbem ACB, de Leon Ferreira de Carvalho A, Bretas NG (2005) Main chain representation for evolution-ary algorithms applied to distribution system reconfiguration. IEEE Trans Power Syst 20:425–436

Gen M, Cheng R (1997) Genetic algorithms and engineering design. Wiley, New YorkGen M, Kumar A, Kim JR (2005) Recent network design techniques using evolutionary algorithms. Int J

Prod Econ 98(2):251–261Geoffrion A, van Roy TJ (1979) Caution: Common sense planning methods can be hazardous to your

corporate health. Sloan Manag Rev 20:30–42Jo JB, Li YZ, Gen M (2007) Nonlinear fixed charge transportation problem by spanning tree-based genetic

algorithm. Comput Ind Eng 53:290–298Marry JM, Vidyaranya BG (2005) Global supply chain design: A literature review and critique. Transp

Res Part E 41:531–550Narula SC, Ho CA (1980) Degree-constrained minimum spanning tree. Comput Oper Res 7(4):239–249Pirkul H, Jayaraman V (1998) A multi-commodity, multi-plant, capacitated location allocation problem:

Formulation and efficient heuristic solution. Comput Oper Res 25:869–878Ro H, Tcha D (1984) A branch and bound algorithm for two level uncapacitated facility location problem

with some side constraint. Eur J Oper Res 18:349–358Russell RM, Krajewski LJ (1991) Optimal purchase and transportation cost lot sizing for a single item.

Dec Sci 22:940–954Siajadi HR, Ibrahim N, Lochert PB, Chan WM (2005) Joint replenishment policy in inventory-production

systems. Prod Plan Control 16:255–262Sim E, Jang Y, Park J (2000) Study on the supply chain network design considering multi-level, multi-

product, capacitated facility. In: Proceedings of Korean supply chain management societySimchi-Levi D, Kaminsky P, Simchi-Levi E (2003) Designing and managing the supply chain: Concepts,

strategies, and case studies, 2nd edn. McGraw-Hill, New YorkSyarif A, Yun YS, Gen M (2002) Study on multi-stage logistic chain network A spanning tree-based

genetic algorithm approach. Comput Ind Eng 43:299–314Tilanus B (1997) Introduction to information system in logistics and transportation. Elsevier, LondonTragantalerngsak S, Holt J, Ronnqvist M (1997) Lagrangian heuristics for the two-echelon, single-source,

capacitate location problem. Eur J Oper Res 102:611–625Yeh WC (2005) A hybrid heuristic algorithm for the multistage supply chain network problem. Int J Adv

Manuf Technol 26(5–6):675–685Yu H (1997) ILOG in the supply chain. ILOG Technical ReportZhou G, Gen M (2003) A genetic algorithm approach on tree-like telecommunication network design

problem. J Oper Res Soc 54(3):248–254