Genetic Algorithm for Solving Location Problem in a Supply Chain Network with Inbound and Outbound Product Flows

This paper considers a location problem in a supply chain network. The problem addressed in this paper is motivated by an initiative to develop an efficient supply chain network for supporting the agricultural activities. The supply chain network consists of regions, warehouses, distribution centers, plants, and markets. The products include a set of inbound products and a set of outbound products. In this paper, definitions of the inbound and outbound products are seen from the region’s point of view. The inbound product is the product demanded by regions and produced by plants which flows on a sequence of the following entities: plants, distribution centers, warehouses, and regions. The outbound product is the product demanded by markets and produced by regions and it flows on a sequence of the following entities: regions, warehouses, and markets. The problem deals with determining locations of the warehouses and the distribution centers to be opened and shipment quantities associated with all links on the network that minimizes the total cost. The problem can be considered as a strategic supply chain network problem. A solution approach based on genetic algorithm (GA) is proposed. The proposed GA is examined using hypothetical instances and its results are compared to the solution obtained by solving the mixed integer linear programming (MILP) model. The comparison shows that there is a small gap (0.23%, on average) between the proposed GA and MILP model in terms of the total cost. The proposed GA consistently provides solutions with least total cost. In terms of total cost, based on the experiment, it is demonstrated that coefficients of variation are closed to 0.


Introduction
This paper considers a location problem in a supply chain network.The problem addressed in this paper has been discussed by Suprayogi et al. [1] where it is motivated by an initiative to develop an efficient supply chain network for supporting the agricultural activities.The supply chain network can help farmers to get agricultural activity supporting products (e.g.fertilizers, pesticides, and seeds) at lower cost and better supply.The supply chain network also can support farmers for distributing their agricultural products (e.g.rice) to markets.The supply chain network is designed to establish distribution centers and warehouses that can act as intermediaries.
The supply chain network consists of regions, warehouses, distribution centers, plants, and markets.The products include a set of inbound products and a set of outbound products.In this paper, definitions of the inbound and outbound products are seen from the region's point of view.
The inbound product is the product demanded by regions and produced by plants which flows on a sequence of the following entities: plants, distribution centers, warehouses, and regions.The outbound product is the product demanded by markets and produced by regions and it flows on a sequence of the following entities: regions, warehouses, and markets.The supply chain network considered in this paper is illustrated in Figure 1.
The problem deals with determining locations of the warehouses and the distribution centers to be opened and shipment quantities associated with all links on the network that minimizes the total cost.The problem can be considered as a strategic supply chain network problem.Min and Zhou [2] has provided a review and taxonomies in supply chain modeling.In addition, the problem addressed in this paper integrates the facility location decisions with other relevant decisions in a supply chain network.Melo et al. [3] have pointed out the important roles of facility decision problems in the strategic supply chain network.They gave a literature review of facility location models in the context of supply chain management.According to the supply chain structure mentioned by Melo et al. [3], this problem has the following features: multiple location layers, multiple commodities, single period, and deterministic.
The supply chain network discussed in this paper involves simultaneously forward and reverse flows.In literature, this typical supply chain network can be called as the supply chain network with bidirectional flows as mentioned in De Rosa et al. [4] and Zhang et al. [5].
The facility location problem is one of hard combinatorial optimization problems.Solving the MILP model can be applied only for small problems.In this paper, a solution approach based on genetic algorithm (GA) is proposed.GA is one of metaheuristic approaches where it is inspired from the natural selection process.The proposed GA in this paper is adapted from Costa et al. [6] where they proposed a new encoding/decoding procedure for designing a single product three-stage supply chain network.Using this procedure, infeasible distribution flows can be avoided in the decoding process.

Problem Definition
The problem definition is taken from Suprayogi et al. [1].There are five entities in the supply chain network, i.e.: plants, distribution centers, warehouses, regions, and market.There are a set of inbound products produced by plants.The supply capacities of inbound products are known.There are a set of regions where each region requires the inbound products.The inbounds product is sent from plant to regions through distribution centers and warehouses.There is a set of outbound products demanded by markets and produced by regions.The outbound products are delivered to markets through warehouses.
There is a set of location candidates of warehouses and a set of location candidates of distribution centers.The problem deals with determining locations of warehouses and distribution centers to be opened and shipment quantities to minimize the total cost.The total cost consists of costs for opening warehouses and distribution centers and costs of transporting both inbound and outbound products.
Characteristics of the supply chain network to be designed must meet the following policies: (a) A distribution center can receive an inbound product from one plant or more.(b) A warehouse must receive all inbound products from a particular distribution center.(c) A region must receive all inbound products from a particular warehouse.(d) All outbound products from a region must be delivered to a warehouse.(e) The warehouse delivering inbound products to a region and receiving outbound products of a region is same.(f) Each market can receive outbound products from several warehouses.Minimize

Mixed Integer Linear Programing Model
subject to: The objective function to be minimized is formulated in Equation (1).

Outline of the Proposed GA
The GA approach starts by generating an initial population consisting a set of chromosomes.To represent the solution, a decoding procedure is carried out.Based on the solution, the total cost is calculated and it represent the fitness values.Three GA operators are applied, i.e., elitism, crossover, and mutation, to produce a new population.This process is repeated until the maximum generation is achieved.Figure 2 shows the flowchart of the proposed GA approach.

Chromosome Representation
In this paper, a permutation-type chromosome adopted from Costa et al. [6] is applied to represent each chromosome.Each chromosome is divided into two segments.The first segment represents the DCs and the second one represents the warehouses.Thus, the length of the chromosome is the sum of possible DCs and warehouses.A locus in the chromosome segment represents a facility that may be established.In the permutation-type chromosome, the value in each locus represents the priority of the facility to be opened.A convention is used that number 1 is the highest priority and the next larger number will be less in priority.The values of each locus are unique across the two segments in a chromosome.Figure 3 illustrates a permutation-type chromosome with four possible DCs ad six possible warehouses to be opened.Table 1 shows the mapping value of locus to facilities priority.

Decoding Procedure
Facility priority mapping will be useful for the decoding procedure.The final goal of decoding process is to allocate demands to facilities.Once the demands are allocated, the total cost can be obtained through a known transport and facility building costs.
As the chromosome is divided into two segment, the decoding procedure can also be divided into two steps.The first decoding step is done on the warehouse by allocating demands from regions to warehouses, and from warehouses to markets.The second decoding step is done on the DC segment where it allocate demands from warehouses to DCs, and from DCs to suppliers.The first decoding step can be described using flowcharts as shown in Figure 4 and Figure 5.The flowchart for demand allocation of the second step is similar.

Genetic Algorithm Operators
Elitism.Elitism involves directly copying a number of the best solutions from the current population to the new population.
Crossover.Crossover is a method in genetic algorithm to mix best features of two candidate solution in order to find a better solution.This is done by mixing and exchanging the locus of two parent chromosome to obtain one or two new child chromosomes.The crossover method used in this paper is position-based crossover illustrated in Figure 6.According to Costa et al. [6], the procedure for generating offsprings are described in the following steps.1. Select a set of position from parent 1 at random.2. Generate an offspring by copying from parent 1 the randomly selected genes into the corresponding position of the offspring.3. Fill the blank genes in the offspring by adding not already included genes in the order as they appear in parent 2. 4. Repeat the steps 1-3 for a second offspring by starting from a set of positions randomly selected from parent 2.
Mutation.Mutation is done to a single chromosome to expand the solution space and escape a local optimum point.In the proposed GA, the swap operator is used.Based on the selected chromosome, the operator selects two genes randomly and exchanges their position each other.Figure 7 illustrates the swap operator.

Results and Discussions
The proposed GA is implemented in Visual Basic for Application (VBA) of Microsoft Excel 2013.To assess the performance of the proposed GA, computational experiments are performed using four hypothetical instances.The main characteristics of each instance are shown in Table 2.
The optimal solutions are obtained by solving the MILP model using LINGO 8.Both LINGO 8 and the proposed GA are executed on a computer with Intel Celeron 877 dual core 1.4 GHz processor, 4 GB RAM, and Windows 7 64-bit operating system.The GA parameters used are set as follows.The population size is 20.The percentages of the new individuals produced by elitism, crossover, and mutation are 10%, 60%, and 30%, respectively.The maximum number of generations is 100.
The proposed GA is run in 10 replications to obtain the best solution for each instance.Table 3 summarizes the computational results.From Table 3, it is shown that solving the MILP model can obtain the optimal solution only for three instances within 24 hours.For instance 4, solving the MILP model cannot find a feasible solution until 24 hours.But, using the proposed GA, the solution can be found within 25 seconds.Based on the optimal solutions obtained (instance 1-3), the gap in the total cost is very small (0.23%, on average).
Figure 8 shows the convergence of the proposed GA based on instance 1 where it shows the best total cost for each generation.It is known that GA is a probabilistic metaheuristic approach.Therefore, each replication may produce a different solution.In terms of total cost, based on coefficients of variation, the consistency of the proposed GA is shown in Table 4.
It is shown that the coefficients of variations are close to 0 (based on 10 replications) and it demonstrates the consistency of the proposed GA.It is also observed that the bigger problem size will have a higher coefficient of variation.

Conclusions
This paper has presented the facility location problem in a supply chain network consisting of inbound and outbound product flows.The solution approach based on genetic algorithm (GA) has been proposed.A computational experiment has been conducted to evaluate the performance of the proposed GA.The solutions of the proposed GA are compared to the optimal solutions obtained by solving the MILP model.
The comparison shows that there is a small gap (0.23%, on average) between the proposed GA and MILP model in terms of the total cost.In addition, the proposed GA can obtain the solution for the instance that cannot be obtained by solving the MILP model.Therefore, the proposed GA can be applied for solving large problems where they exist in the real situation.In addition, the proposed GA provides consistent results.In term of the total cost, it is demonstrated that coefficients of variation are closed to 0.

Figure 1 .
Figure 1.Illustration of the supply chain network

Figure 3 .
Figure 3. Illustration of the permutation-type chromosome

Figure 2 .
Figure 2. Flowchart of the proposed GA

Figure 4 .
Figure 4. Flowchart of demand allocation from regions to warehouses.

Figure 5 .
Figure 5. Flowchart of demand allocation from warehouses to markets.

Figure 8 .
Figure 8. Convergence of the prposed GA Notations used in the MILP model are as follows:

Table 1 .
Mapping value of locus to facilities priority

Table 2 .
Test instances Number of regions, WH: Number of warehouses, DC: Number of distribution centers, IB: Number of inbound products, OB: Number of outbound products, SU_IB(1): Number of plants for inbound product 1, SU_IB(2): Number of plants for inbound product 2, SU_IB(3): Number of plants for inbound product 3, MA_OB(1): Number of markets for outbound product 1.

Table 3 .
Computational results

Table 4 .
Consistency for the proposed GA