Multiple commodity supply chain with maximal covering approach in a three layer structure

: Many scholars have already investigated the location problem of supply chain facilities and centres under different conditions. In a three-echelon multiple commodity supply chain, the aim is to fulfil customer demand at a minimum cost by optimising the flow of products from factories to distribution centres (DC) and from DCs to customers. In a situation where there are limited numbers of DCs and each of them covers bounded area, locating DCs for the purpose of, maximising coverage of customers’ demand and optimising allocation of the customers to those centres, are quite important. In this research, a three-echelon multiple commodity supply chain model with maximal covering approach that meets the following two objectives through appropriate selection of DC sites is presented: 1) maximise coverage of customer demand; 2) minimise the associated transportation cost required for fulfilment of the customer demand. To address such models in small scales, one can easily apply LP-metric method to make a combined dimensionless objective and solve it with lingo software. Considering the fact that the presented model is an NP-hard problem and cannot be solved in this manner, we apply customised version of a heuristic algorithm named Greedy and clearly indicate its robustness.


Introduction
Making intelligent decisions on selecting suitable sites for a firm's facilities are one of the critical elements in strategic planning of either private or public companies (Francis and Megginis, 1992). Facility location problems (FLP) in the context of supply chain management (SCM), has attracted the attentions of researchers in the recent two decades as the concept of SCM has developed. Melo et al. (2009) presented a review on the researches which study FLP in the context of SCM. Initially, this review identifies basic features which models in this area must capture in order to support decision-making involved in strategic supply chain planning. Four basic features which may be included in a facility location model to make it useful in strategic supply chain planning are: multi-layer facilities, multiple commodities, single/multiple period(s), and deterministic/stochastic parameters. Melo et al. (2009) classify the literature according to the given features as shown in Table 1.  Avittathur et al. (2005), Barahona and Jensen (1998), Dasci and Verter (2001), Marin and Pelegrin (1998), Melkote and Daskin (2001), Shen (2006), Sourirajan et al. (2007), Teo and Shu (2004), Tuzun and Burke (1999), Wang et al. (2003) and Wu et al. (2002) Chan et al. (2001), Goh et al. (2007), Listes (2007), Lowe et al. (2002), Shen and Qi (2007), Shen et al. (2003) and Snyder et al. (2007) Canel and Khumawala (1997, Dias et al. (2007), Melachrinoudis and Min (2000) and Min et al. (2006aMin et al. ( , 2006b ---

Single location layer
Multiple commodities Dogan and Goetschalckx (1999) --- Altiparmak et al. (2006), Barros et al. (1998), Ma and Davidrajuh (2005) and Tüshaus and Wittmann (1998) ---------2 location layers Multiple commodities Jang et al. (2002) and Lin et al. (2006) Listes and Dekker (2005) and Sabri and Beamon (2000) Ko and Evans (2007) -  Table 1 feature a cost minimisation objective; the approach typically expresses a single objective which is the sum of various cost components. In contrast, profit maximisation has received less attention. Under profit maximisation it may not always be desirable to satisfy all customer demands. The smallest group of papers refer to models with multiple and conflicting objectives such as resource utilisation, customer responsiveness, fill rate (i.e., fraction or amount of customer demands satisfied within the promised delivery time) maximisation, lateness (i.e., amount of time between the promised and the actual product delivery date) minimisation and environmental measures (Melo et al. (2009)). Since the model given in this paper is of multi-objective we concentrate on the researches of this type. Melachrinoudis and Min (2000) considered a multi-echelon supply chain and determine the optimal timing of relocation and phase-out in the multiple planning horizons using a dynamic, multi-objective and mixed-integer programming model. The relocation and phase-out decision were called for to adapt to dynamic changes in business environments such as changes in supplier and customer bases, distribution networks, corporate reengineering, business climate, and government legislation. Sabri and Beamon (2000) developed an integrated multi-objective supply chain model including cost, customer service levels and flexibility (volume or delivery). This model incorporates production, delivery, and demand uncertainty, and provides a multi-objective performance vector for the entire network. Guillén et al. (2005) considered a supply chain consisting of several production plants, warehouses and markets, and the associated distribution systems. A two-stage stochastic model is proposed taking into account the effects of uncertainty in production scenario. The problem objectives are maximising the total system profit over the given time horizon and market demand satisfaction. The SC configurations obtained by means of deterministic mathematical programming can be compared with those determined by different stochastic scenarios. Hugo and Pistikopoulos (2005) applied a mathematical programming-based methodology for the explicit inclusion of life cycle assessment criteria as part of the strategic investment decisions related to the design of supply chain networks. The problem was formulated as a multi-objective optimisation problem considering the multiple environmental concerns together with the traditional economic criteria. Strategic decisions involving the selection, allocation and capacity expansion of processing technologies and assignment of transportation links required to satisfy the demands at the markets are discussed in this research. To effectively re-configure a warehouse network through consolidation and elimination, Melachrinoudis et al. (2005) proposed a novel multiple criteria methodology called physical programming (PP). The proposed PP model enables a decision maker to consider multiple criteria (i.e., cost, customer service and intangible benefits) and to give criteria preferences not in a traditional form of weights, but in ranges of different degrees of desirability. The proposed model is tested using real data involving the reconfiguration of an actual company's distribution network. Altiparmak et al. (2006) proposed a new solution procedure to find the set of Pareto-optimal solutions for a multi-objective supply chain network design problem. Two different weight approaches are implemented in the proposed solution procedure. An experimental study using actual data is carried out into two stages. While the effects of weight approaches on the performance of proposed solution procedure are studied in the first stage, two solution procedures are compared according to quality of Pareto-optimal solutions in the second stage. Farahani and Asgari (2007) studied the location of DCs in a military logistics system considering two objectives: minimising the establishment costs of DCs and maximising the total quality of selected locations. The quality of each location is determined by using multiple attribute decision making techniques. Shankar et al. (2013) considered a singleproduct four-echelon supply chain network consisting of suppliers, production plants, DCs and customer zones (CZs). The key design decisions considered are: the number and location of plants in the system, the flow of raw materials from suppliers to plants, the quantity of products to be shipped from plants to DCs, and from DCs to CZs in such a way as to minimise the combined facility location and shipment costs and to maximise the covered customer demands. To optimise these two objectives simultaneously, multi-objective hybrid particle swarm optimisation algorithm was used.
HosseiniNasab and Mobasheri (2013) studied a facility location problem by means of the possibility of duplications for each machine type in the presence of alternative processing routes for each product. The objective is to minimise the total distance which is travelled by the products. A simulated annealing-based heuristic is proposed to solve the problem. Duarte et al. (2014) proposed an optimisation framework combining process design and configuration of a supply chain using an mixed-integer linear programming (MILP) formulation in order to locate a second-generation bioethanol plant in Colombia. The given framework reduces the logistical and operating costs for biofuel plants by selecting the proper site for a new facility. The supply chain structure, involving the material flow from suppliers to customers is considered in the given framework. Wang and Lee (2015) studied a capacitated facility location and task allocation problem against risky demands in a multi-echelon supply chain in such a way as to maximise total profit. The problem is of a bi-level stochastic programming. A revised ant algorithm is proposed using new design of heuristic desirability and efficient greedy heuristics in order to solve the problem.
Since one of the considered objective functions in the current research is concerned with customers demand covering, we give a brief review of maximal covering location problem (MCLP). Church and ReVelle (1974) introduced location problem with maximum coverage. MCLP addresses the issue of locating a limited number of DCs which are going to cover a given set of demand areas. Church and ReVelle (1974) proposed three algorithms to solve MCLP as follow: 1 greedy heuristic algorithm 2 greedy heuristic algorithm with substitution 3 branch and bound algorithm. Galvao and Revelle (1996) proposed a methodology for solving MCLP based on Lagrangean relaxation method. ReVelle (2008) proposed some methodologies for solving MCLP based on heuristic algorithms. Davari et al. (2011) considered a fuzzy MCLP in which travel time between any pair of nodes is assumed to be a fuzzy variable. Furthermore, a hybrid algorithm of fuzzy simulation and simulated annealing was proposed to solve the problem. Pereira et al. (2015) presented a hybrid algorithm which combines a metaheuristic and an exact method to solve the probabilistic maximal covering location-allocation problem. For the large instances of the problem, a flexible adaptive large neighbourhood search heuristic was developed to obtain location solutions, while the allocation sub-problems were solved to optimality. This paper is organised as follows: problem definition and modelling approach are presented in Section 2. In Section 3, we discussed the solution methods and proposed algorithm. We present numerical examples in Section 4 in order to analyse the performance of the proposed methodology. Conclusion and some ideas for further research are given in Section 5.

Problem definition and modelling approach
First of all, we deal with a problem of optimising location of DCs from among several potential alternatives by considering limited number of DCs, their establishment costs at each potential location, minimisation of the establishment costs and their associated runtime transportation overhead. Secondly, in determining critical path for demand coverage from DCs, this approach maximises the number of demand points to be covered. Hence, the proposed modelling approach can be classified as a bi-objective model.
After establishing DCs that could cover customers' demands, their optimal assignment for possible fulfilment of the demands is investigated by means of examining coverage level of customers' demands, transportation cost, as well as production capacity of manufacturers for the needed products. We explore the validity of our approach based on assumption of both limited and unlimited number of DCs and identification of two scenarios of either covering customers' demands completely or not covering them all.
The following subsections identify characteristics of our proposed model under the assumption of unlimited DC capacity:

Assumptions
• Capacity of DCs is unlimited.
• Factories maintain an independent production capacity for each product.
• Direct transport of products from factories to customers is not possible.
• A single cost is associated for producing and transporting a product.
• Factories are capable of producing any desired product.
• Customers can receive products of any factory through DCs.
• Each customer can only be covered by a single DC.

Parameters i
Customer index (i =1, 2, …, M). fj Cost of establishing a DC at a potential point j.
; , The first objective function maximises coverage of customers by DCs while the second objective function minimises establishment cost of DCs, as well as cost of production and transportation of goods. The constraint (3) indicates number of potential DCs. The constraint (4) points out that coverage of customer i requires assignment of a valid DC j.
The constraint (5) shows the condition of covering each customer by only one DC. The constraint (6) is a production capacity control criterion that bounds production capacity of each manufacturer to any product. The constraint (7) assures that if customer i is covered by DC j, its demand will definitely be fulfilled. The constraint (8) indicates that total number of product k which is sent from all manufacturers to DC j should be greater than the number of products to be sent from DC j to covered customers.
In a situation where capacity of DCs are limited, an additional constraint with two parameters q j and v k , which indicate capacity of DC j and volume of a unit of product k respectively, will be added to the model in the following manner:

Methodology of solution
We employ a customised version of Greedy heuristic algorithm to this NP-Hard problem.
In doing so, we first need to define a table of manufacturer capacity and two sets of demand and supply points in the following manner: I A set of demand points which are not yet covered. Initially, this set includes all points.
J A set of potential points for locating DCs that has a value of one in their match variable. Initially, this is an empty set.
When applying the algorithm, we initially assume all potential points for locating are available. Subsequently, we try to locate facilities one by one under the constraints of maximum coverage of demand points and minimum locating and transportation cost, simultaneously. We then calculate Z 1 and Z 2 for each potential DC location, respectively. It is worth to mention that when calculating transportation cost from manufacturers to DCs, we should ensure that the required products of each DC are supplied by those manufacturers which entail less transportation costs for each product type. Of course, we should also consider the production capacity of supplying manufacturers with respect to demand levels of DCs.
Considering the limited capacity of DCs, before calculating Z 1 and Z 2 , we should examine every potential centre on whether it has enough capacity to cover potential customers' demands. In other words, capacity of potential location for DC establishment should be greater than its associated required demands. In situations where such condition could not be fulfilled, number of its potential customers should be reduced accordingly. To achieve this optimally and considering the fact that removal of a customer results in automatic reduction of coverage and transportation costs, we calculate the proportion ( ) for each covered customer of a potential DC location and eliminate the customer that results in the largest cost reduction, i.e., the one with the smallest value of the proportion P. We continue carrying the above mentioned process until the capacity of potential location for DC establishment matches its customers' demands.
We also need to check the production capacity of the manufacturer to customers' demand and apply the above mentioned process of customer elimination when deemed necessary. We then calculate Z 1 and Z 2 for the customers whose demand could be covered by both the manufacturer and potential DC and keep track of the largest ratio of Z 1 /Z 2 , which is indicative of the first location for DC.
We then calculate for the next DC location by updating the sets of I and J, and table of manufacturer capacity and applying the above mentioned process while keeping track of its associated largest ratio of Z 1 /Z 2 . This process in then repeated until either all DC locations are determined, or production or supply capacities are exhausted. It is to be noted that under the assumption of unlimited DC capacity, there would be no need to carry out their supply capacity requirement check. Figure 1 shows a flowchart image of the implemented greedy algorithm, where m and n are increment counters, A is the number of DCs, B is the number of potential DCs and r j is set of customers covered by potential DC j.

Results and analysis
To clearly demonstrate proper operation of our proposed algorithm as well as its feasibility, our results and analysis is shown through some easy to follow numerical examples.

A simple model
This section carries out step-by-step demonstration of a simple scenario with 4 potential DCs, 2 products, and 10 customers where P = 1, N = 4, M = 10, A = 2, Q = 2, and Maximum Covering Distance = 20. Table 2 shows the distance between the 4 potential DCs and 10 customers, demand of each customer for the two products (H 1 , H 2 ), capacity of potential DCs (q), and cost of establishing the potential DCs (f).  Table 3 indicates transportation cost of any product from the manufacturer to the 4 potential DCs, production capacity of the manufacturer for each product (S), and volume of a unit of product k (v) as we deal with limited capacity DCs. Table 4 simply shows the transportation cost of any product between the 4 DCs and the 10 customers.

Table 3
Transportation cost of any product from manufacturer to potential DCs  To address the constraint of maximal covering distance of demands points by each potential DC, the upper limit of which is set to 20 distance units in this example, we should first identify demand points that can be covered by each potential DC under this condition, i.e., have a distance of not greater than 20 units from potential DCs. Table 5, which is a binarised subset of Table 2, indicates the coverable demand points with a value '1' in its corresponding cell.  • j = 1, index of potential DC r 1 = {1, 2, 4}, a set coverable customers by potential DC1 based on Table 5.
Since the above coverable customers' demand of 545, which is derived by adding the last two columns of Table 2 for r 1 , is greater than potential DC 1's capacity of 500 (shown at row q of Table 2), we need to eliminate customer 1 from the set since it has the smallest value of the proportion Pamong the coverable customers as shown below: Required capacity of 360 < 500 capacity of potential DC 1 (Total demand for product 1) 165 < 700 (capacity of factory 1 for product 1) (Total demand for product 2) 195 < 800 (capacity of factory 1 for product 2) Z 1 = 360, Z 2 = 3,705, Z 1 /Z 2 = 0.0972 • j = 2, index for next potential DC r 2 = {2, 3, 5}, a set coverable customers by potential DC 2 based on Table 5 Required capacity of 555 < 600 capacity of potential DC2 (Total demand for product 1) 275 < 700 (capacity of factory 1 for product 1) (Total demand for product 2) 280 < 800 (capacity of factory 1 for product 2) Z 1 = 555, Z 2 = 4,045, Z 1 /Z 2 = 0.1372 • j = 3, index for next potential DC r 3 = {4, 5, 6, 7} a set coverable customers by potential DC 3 based on Table 5 Required capacity of 785 > 700 capacity of potential DC3; thus we need to eliminate Customer 6 from the set since it has the smallest value of the proportion P as shown below: Required capacity of 570 < 700 capacity of potential DC 3 (Total demand for product 1) 285 < 700 (capacity of factory 1 for product 1) (Total demand for product 2) 285 < 800 (capacity of factory 1 for product 2) Z 1 = 570, Z 2 = 4,810, Z 1 /Z 2 = 0.1185 • j = 4, index for next potential DC r 4 = {8, 9, 10}, a set coverable customers by potential DC 4 based on Table 5 Required capacity 610 < 650 capacity of potential DC 4 (Total demand for product 1) 250 < 700 (capacity of factory 1 for product 1) (Total demand for product 2) 360 < 800 (capacity of factory 1 for product 2) Z 1 = 610, Z 2 = 5,170, Z 1 /Z 2 = 0.1180 Now, that we have exhausted all the potential DCs, we need to determine the optimal location for the first DC, which is location 2 since it has the largest ratio of Z 1 /Z 2 as shown below: Since the determined DC1 (location 2) covers customers 2, 3, 5 (indicated on Table 6), we need to take care of remaining customers through subsequent DCs and the left over capacity of factory 1 for products 1 and 2 as shown below:\ , 4, 6, 7, 8, 9, 10}  (Total demand of product 2) 360 < 520 (capacity of factory 1 for product 2) Z 1 = 610, Z 2 = 5,170, Z 1 /Z 2 = 0.1180 The optimal location for the second DC is location 3 since it has the largest ratio of Z1/Z2 as shown below:

End of algorithm
Tables 6 to 10 indicate values of the numerous decision variables and objective functions.

Feasibility evaluation
To evaluate feasibility of the proposed approach, we analysed 15 test problems under the condition of unlimited capacity of DCs. The analyses were carried out side-by-side with LP-metric method to justify validity of the result obtained from the implemented greedy algorithm. Both methods were coded in MATLAB version 7.11.0 (R2010b) so as to automate their computationally intensive process and avoid human mistake. Tables 11  and 12 show the test problems' constraints and their associated results from both greedy and LP-metric methods when considering the weights of covering objective function equal to 0.7 and 0.5 respectively. Cell entries marked with * indicate that Lingo cannot solve problem of such dimension.

Conclusions and future research
In this research, we investigated a bi-objective commodity supply chain model using a custom tailored version of a heuristic algorithm named greedy. We demonstrated its stepby-step working mechanism, proved the validity of our obtained results and showed its robustness and applicability to large scale models and NP-Hard problems. Our implemented MATLAB algorithm can easily be transformed into Excel VBA and turn into a cheap but powerful Excel Add-in module for handling large scale commodity supply chain model of NP-Hard nature. Future work along this research can include option of multiple manufactures and their optimisation, partial coverage rather than the implemented binary model, consideration of multi-echelon supply chain with more than three levels, and custom tailoring of other metaheuristic algorithms like NSGA-II, NRGA, MOPSO, etc.