Introduction

In the 90s, with the improvement of production processes and spreading of reengineering patterns, managers of many industries were not satisfied only with the improvement of internal processes and flexibility in corporate capabilities. They found out that the suppliers of parts and materials have to also produce materials with the best quality and cost and distributors of the products must have a close relationship with the market development policies of the producers. With such an attitude, logistic approaches, supply chain, and its management have emerged. Conditions of global competition and environmental sensitivity have made corporations responsible for collecting the rejected products to recover, recycle, or devastation them to maintain the environment and gain the profit of rejected products that have been abandoned. Collecting products after the consumption by customers and returning them to supply chain or devastating them bring up the closed-loop supply chain problem. The concept of the closed-loop supply chain has gained attention as a result of identification forward and reverse supply chains that are managed seamlessly. In the last 3 decades, with the highlighting of the importance of supply chain management to the industrialists, the role of coordination and integration of different components of the supply chain has become stronger in creating competitive advantages and the concept of integration has become one of the most important aspects of the supply chain management system. This concept addresses the dependence between the location of facilities, allocation of suppliers and customers to the facilities, the structure of transport system and routing them, and inventory control system.

With respect to the increasing attention to supply chain management subjects, the combinations of location, routing and inventory subjects have become of great importance in industry. Actually, the interest and attention that exist to the subjects of the supply chain have made more critical the importance of having an optimized supply chain system. Appropriate configuration of the supply chain network is considered as a continuous and noticeable competitive advantage and help the corporation against the other future problems and difficulties. Applying an integrated location–routing–inventory approach to optimize the closed-loop supply chain problem can be beneficial. Actually, the above decisions are highly dependent and only identification of the optimum of these variables in an interactive manner can result in finding an optimized supply chain system with the minimum possible costs.

In this paper, we present a new mathematical model for the location–routing–inventory problem in a closed-loop supply chain network that consists of multiple suppliers, producers, distribution centers, collecting centers, and recovery and recycling centers. Furthermore, we consider multiple periods, price increase factor for the operational costs at centers through the periods, existence the inventory or shortage (lost sales or backlog) at production centers, multiple levels of capacity for centers, arrival time to distribution centers and departure from them in the routing, and cost and time of transportation. To solve this problem, the ε-constraint method and NSGA-II and MOPSO algorithms are applied. To enhance the efficiency of these algorithms, the Taguchi method is used to tune their parameters. The remainder of this paper is as follows. In “Literature review”, the literature is reviewed. In “Problem definition”, the proposed problem is discussed and a mathematical model is presented. “Proposed solution methods” uses the ε-constraint method, NSGA-II and MOPSO algorithms to solve the model. Different comparing factors are expressed in “Comparing factors of multi-objective evolutionary algorithms”. In “Computational results”, the computational results are presented. Finally, “Conclusion” provides the conclusion.

Literature review

Some of the recent studies in the context of the location–routing–inventory problem, closed-loop supply chain, and their synthesis are presented to show the necessity of this research.

In the earliest publications about the location–routing–inventory problem, a paper titled integrating routing and inventory costs in strategic location problems was presented (Shen and Qi 2007). The intended paper considers the supply chain design problem in which the decision maker needs to decide on the number and location of distribution centers. The demand of the customers is random and each distribution center holds a certain amount of the warehouse storage with the purpose of achieving the appropriate service level to their dedicated customers. The intended problem has been formulated as a nonlinear integer programming model. For the first time, Ahmadi Javid and Azad (2010) presented a new model in a non-deterministic supply chain that simultaneously optimizes the location, allocation, capacity, inventory, and routing decisions. It has been assumed that the demand of customers is non-deterministic and follows a normal distribution. In addition, each distribution center holds a certain amount of warehouse storage.

Hiassat and Diabat (2011) presented a location–routing–inventory problem for deteriorating products. In the mentioned paper, one producer distributes one deteriorating product with a given imperishability to multiple retailers through a number of warehouses. It has been assumed that at each period, each vehicle travels at most in one route and all of the customers are served. The fleet is homogeneous and all vehicles are identical in capacity. Ahmadi Javid and Seddighi (2012) proposed the new location–routing–inventory model with deterministic demand for multi-resource distribution network. The objective of this problem is to minimize the total cost of location, routing, and inventory and was formulated in the form of mixed integer programming.

Xia (2013) presented a three-level multi-product model, in which the capacity and routing decisions, assignment decisions, transportation decisions, and routing and inventory decisions were considered. The objective of this model was the selection of locations for distribution centers, identification of transportation assignment, setup of inventory policy according to the servicing needs, and scheduling the routes of the vehicle to meet the customer demands. In the above model, the demand of each retailer at each period follows a normal distribution. Nekooghadirli et al. (2014) in a two-level supply chain including of distribution centers and customers formulated a bi-objective multi-product multi-period location–routing–inventory problem. In their model, the demand of customers is unknown and follows a normal distribution. Each distribution center holds a certain amount of safety stock and shortage is not allowed. The objective of mentioned model is to minimize total cost and maximize the expected time of delivery goods to customers. Four algorithms, including MOICA, MOPSA, NSGA-II, and PAES (Pareto archived evolution strategy), were applied to solve the model. In the same area, Guerrero et al. (2013) presented a synthetic heuristic for a location–routing–inventory problem. They considered a multi-depot multi-retailer system with capacitated storage during a discrete planning horizon.

Zhang et al. (2014) presented a mathematical model for a two-level supply chain network that includes multiple capacitated potential depot and a set of customers. This model simultaneously optimizes the decisions of location, allocation, inventory, and routing and minimizes the system costs. The amount of delivery to customers at each period and their repletion under the state of vender-managed inventory (VMI) by the homogenous fleet of capacitated vehicles are identified by the model. In the above model, the demand during the planning time horizon is deterministic and dynamic and inventory are held in the customers’ zones. Chen et al. (2017) published a paper for optimization of a multi-stage closed-loop supply chain for solar cell industry. The model formulated as a multi-objective mixed integer linear programming. Multi-objective particle swarm optimization algorithm with non-dominated sorting approach based on crowding distance was developed to search the near-optimal solution.

Zhalechian et al. (2016) presented a reliable closed-loop location–routing–inventory supply chain network under the synthetic uncertainty in the form of a new multi-objective linear programming. It has been assumed that each retailer has unknown demand which follows a normal distribution. Furthermore, different types of products have been considered in the closed-loop supply chain. Tang et al. (2016) presented a reliable location–routing–inventory model. They considered the customer environmental behavior. Aydin et al. (2016) published a paper on the coordination of closed-loop supply change for designing of the production line with considering of reproduced products. The NSGA-II algorithm was applied for identification of Pareto optimal solution of multi-objective problems. This paper of Kadambala et al. (2017) measured the effective responsiveness of closed-loop supply chain in the terms of time and energy productivity. This model was formulated as a multi-objective mixed integer linear programming and multi-objective particle swarm optimization approach and NSGA-II were applied to solve it.

The main contributions of this paper, which differentiate our effort from related studies, are as follows:

  • designing a new multi-objective mathematical model for a location–routing–inventory problem in a multi-period closed-loop supply chain in a car industry;

  • minimizing the sum of the maximum time at each level in a closed-loop supply chain;

  • considering the arrival/departure time of vehicles of each plant to/from its dedicated distribution centers;

  • determining the percentage of lost sale and backlog of total shortage at each period according to the specified policy.

Problem definition

Our problem is a multi-stage closed-loop supply chain including multiple suppliers, producers, distribution centers, customers, collecting centers, and recovery and recycling centers. The proposed model of the problem minimizes the inventory and shortage costs, production costs, fixed cost of the transportation vehicles of each plant at each period, costs of locating centers with a certain level of capacity, operational costs at centers at each period, and the sum of maximum time at each period.

The objective of this model is to identify the number of opened centers, their locations, and capacities, how to allocate centers at subsequent stages, amount of inventory or shortage at each opened plant at each period, value of production of each opened plant at each period, routes of vehicles with starting from an opened plant to serve its opened allocated distribution centers, and come back to it. Furthermore, this model calculates the vehicle arrival and departure time of each plant to/from distribution centers at each period, amount of transferred goods between opened centers at each stage during each period, so that the sum of costs and transportation time should be minimized. The corresponding decision variables are presented in the proposed mathematical model.

For better understanding of this problem, we consider a closed-loop supply chain with four and three levels in the forward and reverse supply chains, respectively, as depicted in Fig. 1. Forward supply chain levels include multiple suppliers, producers, distribution centers, and customers. Reverse supply chain levels consist of some collecting, recovery and recycling centers. The proposed model has been designed according to the real case study in the car industry in Iran. Some suppliers of spare parts for Iran Khodro Company are Ezam, Mehrkam Pars, Crouse group and the like. The Iran Khodro Industrial Group sells its products through its authorized agents to customers. These agents exist in the most cities of Iran. Using end-of-life vehicles not only bears a very high expense in the economic aspects as well as fuel consumption, but also leads to the extraordinarily heavy costs in environmental aspects for Iran. For this reason, Iranian government has paid special attention to collect end-of-life vehicles. Parts and components of thesis vehicles are disassembled. Recoverable parts are sent to recovery centers and recyclable parts are sent to recycle centers. After recycling recyclable parts, they are sold to raw materials customers and then delivered to suppliers of spare parts.

Fig. 1
figure 1

Closed-loop supply chain network

Assumptions

Some of the assumptions considered for this model are as follows:

  1. 1.

    The intended problem is single product.

  2. 2.

    At each period, the factories can have inventory or shortage or none of them (inventory = shortage = 0) (Gorji et al. 2014).

  3. 3.

    The shortage includes lost sale and backlog (Mousavi et al. 2015).

  4. 4.

    The demand of the distribution centers and customers at each period are deterministic.

  5. 5.

    The cost of centers opening with certain capacity is specified.

  6. 6.

    All opened centers must be served.

  7. 7.

    Different levels are considered for centers and eventually one capacity level is selected for each center.

  8. 8.

    Time horizon planning is multi-period.

  9. 9.

    The backlog of each distribution center at each period must be supplied at next period by its dedicated factor.

  10. 10.

    The lost sale of the plant at each period is not compensable.

  11. 11.

    For operational costs at centers, price increase factor is considered.

  12. 12.

    It is assumed that production is done at the beginning of the period and its sum with the net inventory at the end of the previous period is always positive.

  13. 13.

    Routing is considered from plant to distribution centers (Ahmadizar et al. 2015).

Sets

I :

Set of plants

S :

Set of distribution centers

K :

Set of demand zones of customers

L :

Set of collecting centers

M :

Set of recovery centers

N :

Set of recycle centers

λ :

Set of suppliers

T :

Set of time period

V :

Set of vehicles

b j :

Set of capacity levels available to center j (j ∈ i, s, l, m, n, λ)

Parameters

\(G_{1I}^{{b_{i} }}\) :

Fixed cost of opening and operating plant i with capacity level b i

\(G_{2s}^{{b_{s} }}\) :

Fixed cost of opening and operating distribution center s with capacity level b s

\(G_{3l}^{{b_{l} }}\) :

Fixed cost of opening and operating collecting center l with capacity level b l

\(G_{4M}^{{b_{M} }}\) :

Fixed cost of opening and operating recovery center M with capacity level b M

\(G_{5N}^{{b_{N} }}\) :

Fixed cost of opening and operating recycle center N with capacity level b N

\(G_{6\lambda }^{{b_{\lambda } }}\) :

Fixed cost of opening and operating supplier λ with capacity level b λ

\(e_{s}\) :

Price increase factor for processing each product unit at each distribution center s

\(e_{L}\) :

Price increase factor for processing each product unit at each collecting center L

\(e_{M}\) :

Price increase factor for recovery each product unit at each recovery center M

\(e_{N}\) :

Price increase factor for recycle each product unit at each recycle center N

\(e_{\lambda }\) :

Price increase factor for production each part at each supplier λ

\(e_{i}\) :

Price increase factor for production each product unit at each plant i

\(P_{s}\) :

Processing cost of each product unit at each distribution center s at the beginning of time horizon planning

\(P_{L}\) :

Processing cost of each product unit at each collecting center L at the beginning of time horizon planning

\(P_{M}\) :

Processing cost of each product unit at each recovery center M at the beginning of time horizon planning

\(P_{N}\) :

Processing cost of each product unit at each recycle center N at the beginning of time horizon planning

\(P_{\lambda }\) :

Expected value of production cost of one part at each supplier λ at the beginning of time horizon planning

\(P_{i}\) :

Production cost of each product unit at each plant i at the beginning of time horizon planning

\(T_{KS}\) :

Time between customer K and distribution center S (time is considered as a distance function)

\(T_{KL}\) :

Time between customer K and collecting center L (time is considered as a distance function)

\(T_{LM}\) :

Time between collecting center L and recovery center M (time is considered as a distance function)

\(T_{LN}\) :

Time between collecting center L and recycle center N (time is considered as a distance function)

\(T_{\lambda i}\) :

Time between supplier λ and plant i (time is considered as a distance function)

\(T_{N\lambda }\) :

Time between recycle center N and supplier λ (time is considered as a distance function)

\(T_{Mi}\) :

Time between recovery center M and plant i (time is considered as a distance function)

\(t_{ivt}^{{\prime }}\) :

Departure time of vehicle ν from plant i at period t

\(O_{is}^{{\prime \prime }}\) :

Distance traveled between plant i and distribution center s

\(V_{iv}^{'}\) :

Average speed of vehicle ν of plant i

\(O_{{s^{{\prime }} s}}^{{{\prime \prime \prime }}}\) :

Distance traveled between distribution center s and s

\(L_{ivs}^{{\prime }}\) :

Required time for unloading each product unit from vehicle ν of plant i at distribution center s

\(\gamma_{ist}\) :

Percent of the shortage at distribution center s to the total shortage at plant i at period t

\(\omega_{iv}^{{\prime }}\) :

Capacity of vehicle ν of plant i

\(\alpha_{it}\) :

Percent of backlog to the total shortage at plant i at period t

\(T\) :

The time of each period

\(h_{t}\) :

Holding cost of each unit of inventory at period t

\(T_{it}^{{\prime }}\) :

A party of the period t that inventory exist

\(T_{it}^{{\prime \prime }}\) :

A party of the period t that shortage exist

\(h_{t}^{{\prime }}\) :

Cost of one unit of backlog at period t

\(h_{t}^{{\prime \prime }}\) :

Cost of one unit of lost sale at period t

\(C_{ivt}^{{\prime }}\) :

Unit transportation cost of vehicle ν of plant i at period t

\(f^{'}_{iv}\) :

Fixed cost of vehicle ν of plant i

\(u_{it}\) :

Available budget for plant i at period t

\(d_{kt}\) :

Amount of customer’s demand of zone k in period t

\(\varepsilon\) :

Number of used parts in one product

\(\delta\) :

Percent of recyclable parts of each product

\(\omega_{l}\) :

Capacity of collecting center l

\(\omega_{M}\) :

Capacity of recovery center M

\(\omega_{N}\) :

Capacity of recycle center N

\(\omega_{\lambda }\) :

Capacity of supplier λ

\(\omega_{i}\) :

Capacity of plant i

\(SP_{1}\) :

Volume of each product

\(SP_{2}\) :

Average volume of each part

\(F_{it}\) :

Maximum number of producible products at plant i at each period with regard to available resources at that period

N :

A large unbounded positive number

K′:

A fixed number determined by plants as a bonus given to distribution centers

Decision variables

\(A_{1I}^{{b_{i} }}\) :

1, if plant i with capacity level b i is opened; 0, otherwise

\(A_{2s}^{{b_{s} }}\) :

1, if distribution center s with capacity level b s is opened; 0, otherwise

\(A_{3L}^{{b_{L} }}\) :

1, if collecting center L with capacity level b L is opened; 0, otherwise

\(A_{4M}^{{b_{M} }}\) :

1, if recovery center M with capacity level b M is opened; 0, otherwise

\(A_{5N}^{{b_{N} }}\) :

1, if recycle center N with capacity level b N is opened; 0, otherwise

\(A_{6\lambda }^{{b_{\lambda } }}\) :

1, if supplier λ with capacity level b λ is opened; 0, otherwise

\(X_{KST}\) :

1, if customer K assigned to distribution center S at period t; 0, otherwise

\(X_{KLT}\) :

1, if collecting center L assigned to customer K at period t; 0, otherwise

\(X_{LMT}\) :

1, if collecting center L assigned to recovery center M at period t; 0, otherwise

\(X_{LNT}\) :

1, if collecting center L assigned to recycle center N at period t; 0, otherwise

\(X_{\lambda it}\) :

1, if supplier λ assigned to plant i at period t; 0, otherwise

\(X_{N\lambda t}\) :

1, if recycle center N assigned to supplier λ at period t; 0, otherwise

\(X_{Mit}\) :

1, if recovery center M assigned to plant i at period t; 0, otherwise

\(X_{ivst}\) :

1, if distribution center s be the first one met by vehicle ν of plant i at period t; 0, otherwise

\(X_{ivst}^{{\prime \prime }}\) :

1, if distribution center s be the last one met by vehicle ν of plant i at period t; 0, otherwise

\(X_{ivst}^{{{\prime \prime \prime }}}\) :

1, if distribution center s is served by vehicle ν of plant i at period t; 0, otherwise

\(X_{{ivs^{{\prime }} st}}^{{\prime }}\) :

1, if distribution center s is met immediately after distribution center s′ with vehicle ν of plant i at period t; 0, otherwise

\(Y_{it}\) :

1, if plant i have inventory at the end of period t; 0, otherwise

\(NS_{it}\) :

Net value of inventory of plant i at the end of period t

\(Q_{it}\) :

Amount of production in plant i at period t

\(d_{st}\) :

Demand of distribution center s at period t

\(O_{skt}\) :

Amount of transferred product from distribution center s to customer K at period t

\(O_{kLt}\) :

Amount of transferred product from customer K to collecting center L at period t

\(O_{LMt}\) :

Amount of transferred product from collecting center L to recovery center M at period t

\(O_{LNt}\) :

Amount of transferred product from collecting center L to recycle center N at period t

\(\eta_{ivst}^{{\prime }}\) :

Arrival time of vehicle ν of plant i to distribution center s at period t

\(\theta_{ivst}^{{\prime }}\) :

Departure time of vehicle ν of plant i from distribution center s at period t

\(Z_{it}^{{\prime }}\) :

Total cost of inventory, shortage (lost sale and backlog), production, fixed cost of vehicle, and transportation of plant i at period t:

$$\omega_{it} :\left\{ {\begin{array}{*{20}c} {1 \quad NS_{it} = 0} \\ {0 \quad NS_{it} < 0} \\ \end{array} } \right.$$
$$M_{ist} :\left\{ {\begin{array}{*{20}c} {1 \quad d_{st} > K^{'} } \\ {0 \quad d_{st} \le K^{'} } \\ \end{array} } \right..$$

Mathematical model

$${\text{MIN Z}}_{ 1} = \sum\limits_{t} {(T_{1t} + T_{2t} + T_{3t} } + T_{4t} + T_{5t} + T_{6t} + T_{7t} + T_{8t} )$$
$$\begin{aligned} {\text{MIN Z}}_{ 2} & = \sum\limits_{{b_{i} }} {\sum\limits_{I} {G_{1I}^{{b_{i} }} \cdot A^{{b_{i} }}_{1I} } } + \sum\limits_{{b_{s} }} {\sum\limits_{S} {G_{2s}^{{b_{s} }} \cdot A_{2s}^{{b_{s} }} + \sum\limits_{{b_{L} }} {\sum\limits_{L} {G_{3L}^{{b_{L} }} \cdot A_{3L}^{{b_{L} }} } } } } \\ & \quad + \sum\limits_{{b_{M} }} {\sum\limits_{M} {G_{4M}^{{b_{M} }} \cdot A_{4M}^{{b_{M} }} + } } \sum\limits_{{b_{N} }} {\sum\limits_{N} {G_{5N}^{{b_{N} }} \cdot A_{5N}^{{b_{N} }} } } \\ & \quad + \sum\limits_{{b_{\lambda } }} {\sum\limits_{\lambda } {G_{6\lambda }^{{b_{\lambda } }} \cdot A_{6\lambda }^{{b_{\lambda } }} + \sum\limits_{t} {\sum\limits_{I} {Z_{it}^{{\prime }} } } } } \\ & \quad + \sum\limits_{S} {\sum\limits_{{b_{S} }} {\sum\limits_{K} {\sum\limits_{t} {A_{2s}^{{b_{s} }} \cdot P_{s} \cdot X_{kst} \cdot O_{kst} \cdot 1 + e_{s} )^{t} } } } } \\ & \quad + \sum\limits_{L} {\sum\limits_{{b_{L} }} {\sum\limits_{k} {\sum\limits_{t} {A_{3L}^{{b_{L} }} \cdot P_{L} \cdot O_{klt} \cdot X_{klt} \cdot (1 + e_{L} )^{t} } } } } \\ & \quad + \sum\limits_{M} {\sum\limits_{{b_{M} }} {\sum\limits_{L} {\sum\limits_{t} {A_{3L}^{{b_{L} }} \cdot A^{{b_{M} }}_{4M} \cdot P_{M} \cdot O_{LMt} \cdot X_{LMt} \cdot (1 + e_{M} )^{t} } } } } \\ & \quad + \sum\limits_{N} {\sum\limits_{{b_{N} }} {\sum\limits_{L} {\sum\limits_{t} {A_{5N}^{{b_{N} }} \cdot A^{{b_{L} }}_{3L} \cdot P_{N} \cdot O_{LNt} \cdot X_{LNt} \cdot (1 + e_{N} )^{t} } } } } \\ & \quad + \sum\limits_{N} {\sum\limits_{{b_{N} }} {\sum\limits_{\lambda } {\sum\limits_{t} {A_{6\lambda }^{{b_{\lambda } }} \cdot A^{{b_{N} }}_{5N} \cdot P_{\lambda } \cdot O_{N\lambda t} \cdot X_{N\lambda t} \cdot (1 + e_{\lambda } )^{t} } } } } \\ {\text{s}}.{\text{t}}. \\ \end{aligned}$$
$$T_{1t} = \mathop {\hbox{max} }\limits_{i} \left[ {\left( {\mathop {\hbox{max} }\limits_{s} \sum\limits_{{b_{s} }} {\sum\limits_{v} {A^{{b_{s} }} 2s \cdot X_{ivst}^{{{\prime \prime \prime }}} } \cdot \eta_{ivst}^{{\prime }} } } \right) - t_{ivt}^{{\prime }} } \right]\quad \forall t$$
(1)
$$T_{2t} = \mathop {\hbox{max} }\limits_{k} \left[ {\sum\limits_{S} {T_{ks} \cdot X_{kst} } } \right]\quad \forall t$$
(2)
$$T_{3t} = \mathop {\hbox{max} }\limits_{k} \left[ {\sum\limits_{L} {T_{kL} \cdot X_{kLt} } } \right]\quad \forall t$$
(3)
$$T_{4t} = \mathop {\hbox{max} }\limits_{L} \left[ {\sum\limits_{M} {X_{LMt} \cdot T_{LM} } } \right]\quad \forall t$$
(4)
$$T_{5t} = \mathop {\hbox{max} }\limits_{L} \left[ {\sum\limits_{N} {X_{LNt} \cdot T_{LN} } } \right]\quad \forall t$$
(5)
$$T_{6t} = \mathop {\hbox{max} }\limits_{i} \left[ {\sum\limits_{\lambda } {X_{\lambda it} \cdot T_{\lambda i} } } \right]\quad \forall t$$
(6)
$$T_{7t} = \mathop {\hbox{max} }\limits_{\lambda } \left[ {\sum\limits_{N} {X_{N\lambda t} \cdot T_{N\lambda } } } \right]\quad \forall t$$
(7)
$$T_{8t} = \mathop {\hbox{max} }\limits_{i} \left[ {\sum\limits_{M} {X_{Mit} \cdot T_{Mi} } } \right]\quad \forall t$$
(8)
$$\eta_{ivst}^{{\prime }} = X_{ivst} \left( {t_{ivt}^{{\prime }} + \frac{{O_{is}^{{\prime \prime }} }}{{V_{iv}^{{\prime }} }}} \right) + \sum\limits_{{s{\prime } = 1}}^{s} {X_{{ivs^{{\prime }} st}}^{{\prime }} } \left( {\theta_{{ivs^{'} t}}^{'} + \frac{{O^{\prime\prime\prime}_{{s^{{\prime }} s}} }}{{V_{iv}^{{\prime }} }}} \right)\quad \forall i,v,s,t$$
(9)
$$\theta_{ivst}^{{\prime }} = \eta_{ivst}^{'} + L_{ivs}^{'} \left[ {Y_{it} \cdot d_{st} + \left( {1 - Y_{it} } \right)\omega_{it} \cdot d_{st} + \, \left( {1 - Y_{it} } \right)\left( {1 - \omega_{it} } \right)d_{st} \cdot \left( {1 - \gamma_{st} } \right)} \right]\quad \forall i,v,s,t$$
(10)
$$(Y_{it} - 1)(1 - \omega_{it} ) \cdot NS_{it} = \sum\limits_{S} {\sum\limits_{V} {X^{\prime\prime\prime}_{ivst} } \cdot d_{st} } \cdot \gamma_{st} \quad \forall i,t$$
(11)
$$\left[ {X_{ivst} + \sum\limits_{s' = 1}^{s} {X_{{ivs^{'} st}}^{'} } = \sum\limits_{{s^{'} = 1}}^{s} {X_{ivss't}^{'} + X_{ivst}^{{\prime \prime }} } } \right]\quad \forall i,v,s,t$$
(12)
$$\sum\limits_{V} {\sum\limits_{S} {X_{ivst} = \sum\limits_{{b_{i} }} {A_{1I}^{{b_{i} }} } } } \quad \forall i,t$$
(13)
$$\left( {SP_{1} } \right) \cdot \sum\limits_{S} {\sum\limits_{V} {X_{ivst}^{{{\prime \prime \prime }}} } } \left[ {Y_{it} \cdot d_{st} + \left( {1 - Y_{it} } \right)\omega_{it} \cdot d_{st} +\, \left( {1 - Y_{it} } \right)\left( {1 - \omega_{it} } \right)d_{st} \cdot \left( {1 - \gamma_{st} } \right)} \right] \le \omega_{iv}^{'} \quad \forall i,t$$
(14)
$$Z_{it}^{'} = \left[ \begin{aligned} & \left( {Y_{it} \left( {\frac{{NS_{i(t - 1)} + \left( {Y_{i(t - 1)} - 1} \right)\left( {1 - \omega_{i(t - 1)} } \right)NS_{i(t - 1)} \left( {1 - \alpha_{i(t - 1)} } \right) + Q_{it} + NS_{it} }}{2}} \right)T \cdot h_{t} } \right) \hfill \\ &+ \left( {\left( {1 - Y_{it} } \right)\omega_{it} \left( {\frac{{NS_{i(t - 1)} + \left( {Y_{i(t - 1)} - 1} \right)\left( {1 - \omega_{i(t - 1)} } \right)NS_{i(t - 1)} \left( {1 - \alpha_{i(t - 1)} } \right) + Q_{it} }}{2}} \right)T \cdot h_{t} } \right) \hfill \\ &+ \left( {\left( {1 - Y_{it} } \right)\left( {1 - \omega_{it} } \right)\left( {\frac{{NS_{i(t - 1)} + \left( {Y_{i(t - 1)} - 1} \right)\left( {1 - \omega_{i(t - 1)} } \right)NS_{i(t - 1)} \left( {1 - \alpha_{i(t - 1)} } \right) + Q_{it} }}{2}} \right)T_{it}^{'} \cdot h_{t} } \right) \hfill \\ &+ \left( {Y_{it} - 1} \right)\left( {1 - \omega_{it} } \right)\left( {\frac{{\alpha_{it} \cdot NS_{it} }}{2} \cdot T_{it}^{{\prime \prime }} \cdot h_{t}^{'} } \right) + \left( {Y_{it} - 1} \right)\left( {1 - \omega_{it} } \right)\left( {\frac{{\left( {1 - \alpha_{it} } \right) \cdot NS_{it} }}{2} \cdot T_{it}^{{\prime \prime }} \cdot h_{t}^{{\prime \prime }} } \right) \hfill \\ &+ Q_{it} \cdot P_{i} \cdot \left( {1 + e_{i} } \right)^{t} + \sum\limits_{V} {\sum\limits_{S} {\left[ {\left( {X_{ivst} + X_{ivst}^{{\prime \prime }} } \right)O_{is}^{{\prime \prime }} \cdot C_{ivt}^{'} + X_{ivst} \cdot f_{iv}^{'} } \right] + \sum\limits_{S} {\sum\limits_{V} {\sum\limits_{{S^{'} }} {X_{{ivss^{'} t}}^{'} \cdot O_{{ss^{'} }}^{{{\prime \prime \prime }}} \cdot C_{ivt}^{'} } } } } } \hfill \\ \end{aligned} \right]\quad \forall i,t$$
(15)
$$Z_{it}^{'} \le u_{it} \quad \forall i,t$$
(16)
$$NS_{it} = NS_{i(t - 1)} - \left( {1 - \alpha_{i(t - 1)} } \right)NS_{i(t - 1)} \cdot \left( {1 - Y_{i(t - 1)} } \right)\left( {1 - \omega_{i(t - 1)} } \right) + Q_{it} - \sum\limits_{S} {\left( {M_{ist} + d_{st} } \right)} \cdot X_{ivst}^{{{\prime \prime \prime }}} \quad \forall i,t$$
(17)
$$NS_{it} \le N \cdot Y_{it} \quad \forall i,t$$
(18)
$$NS_{it} \succ \left( {Y_{it} - 1} \right) \cdot N\quad \forall i,t$$
(19)
$$d_{st} \le \left( {\sum\limits_{I} {\sum\limits_{V} {N \cdot X_{ivst}^{{{\prime \prime \prime }}} \cdot M_{ist} } } } \right) + K^{'} \quad \forall s,t$$
(20)
$$d_{st} \succ \left( {\sum\limits_{I} {\sum\limits_{V} {N \cdot X_{ivst}^{{{\prime \prime \prime }}} \cdot \left( {M_{ist} - 1} \right)} } } \right) + K^{'} \quad \forall s,t$$
(21)
$$NS_{it} \le \omega_{it} - 1\quad \forall i,t$$
(22)
$$NS_{it} \ge \left( {1 - \omega_{it} } \right)\left( { - N} \right)\quad \forall i,t$$
(23)
$$\left( {Y_{it} - 1} \right)\left( {1 - \omega_{it} } \right)NS_{it} = d_{it} \cdot T_{it}^{{\prime \prime }} \quad \forall i,t$$
(24)
$$d_{it} = \sum\limits_{S} {\sum\limits_{V} {\sum\limits_{{b_{s} }} {A_{2s}^{{b_{s} }} } \cdot X_{ivst}^{{{\prime \prime \prime }}} \cdot d_{st} } } \quad \forall i,t$$
(25)
$$d_{st} = \sum\limits_{k} {X_{skt} \cdot d_{kt} } \quad \forall s,t$$
(26)
$$T = T_{it}^{'} + T_{it}^{{\prime \prime }} \quad \forall i,t$$
(27)
$$\sum\limits_{s} {X_{skt} = 1} \quad \forall k,t$$
(28)
$$\sum\limits_{L} {X_{kLt} = 1} \quad \forall k,t$$
(29)
$$\sum\limits_{M} {X_{LMt} = \sum\limits_{{b_{L} }} {A_{3L}^{{b_{L} }} } } \quad \forall L,t$$
(30)
$$\sum\limits_{N} {X_{LNt} = \sum\limits_{{b_{L} }} {A_{3L}^{{b_{L} }} } } \quad \forall L,t$$
(31)
$$\sum\limits_{M} {X_{Mit} = \sum\limits_{{b_{i} }} {A_{1I}^{{b_{i} }} } } \quad \forall i,t$$
(32)
$$\sum\limits_{N} {X_{N\lambda t} = \sum\limits_{{b_{\lambda } }} {A_{6\lambda }^{{b_{\lambda } }} } } \quad \forall \lambda ,t$$
(33)
$$\sum\limits_{\lambda } {X_{\lambda it} = \sum\limits_{{b_{i} }} {A_{1I}^{{b_{i} }} } } \quad \forall i,t$$
(34)
$$\sum\limits_{{b_{i} }} {A_{1I}^{{b_{i} }} } \le 1\quad \forall i$$
(35)
$$\sum\limits_{{b_{s} }} {A_{2s}^{{b_{s} }} } \le 1\quad \forall s$$
(36)
$$\sum\limits_{{b_{L} }} {A_{3L}^{{b_{L} }} } \le 1\quad \forall L$$
(37)
$$\sum\limits_{{b_{M} }} {A_{4M}^{{b_{M} }} } \le 1\quad \forall M$$
(38)
$$\sum\limits_{{b_{N} }} {A_{5N}^{{b_{N} }} } \le 1\quad \forall N$$
(39)
$$\sum\limits_{{b_{\lambda } }} {A_{6\lambda }^{{b_{\lambda } }} } \le 1\quad \forall \lambda$$
(40)
$$\sum\limits_{I} {\sum\limits_{V} {\sum\limits_{{s^{'} }} {X_{ivst}^{{{\prime \prime \prime }}} \cdot X_{{ivs^{'} t}} } } } = \sum\limits_{{s^{'} }} {A_{2s}^{{b_{s} }} } \quad \forall s,t$$
(41)
$$\sum\limits_{S} {\sum\limits_{v} {X_{ivst} } } = \sum\limits_{S} {\sum\limits_{v} {X_{ivst}^{{\prime \prime }} } \quad } \forall i,t$$
(42)
$$X_{ivst}^{{{\prime \prime \prime }}} \le X_{ivst} + \sum\limits_{{s^{'} }} {X_{{ivss^{'} t}}^{'} + X_{ivst}^{{\prime \prime }} } \quad \forall i,v,s,t$$
(43)
$$SP_{2} \left( {\sum\limits_{M} {O_{Mit} + \sum\limits_{\lambda } {O_{\lambda it} } } } \right) + SP_{1} \left( {NS_{it} \cdot Y_{it} } \right) \le \omega_{i} \quad \forall i,t$$
(44)
$$\sum\limits_{S} {O_{kst} = } \sum\limits_{L} {O_{kLt} } \quad \forall k,t$$
(45)
$$\sum\limits_{k} {O_{kLt} \cdot \delta } \cdot \varepsilon = \sum\limits_{N} {O_{LNt} } \quad \forall L,t$$
(46)
$$\sum\limits_{k} {O_{kLt} \cdot \left( {1 - \delta } \right)} \cdot \varepsilon = \sum\limits_{M} {O_{LMt} } \quad \forall L,t$$
(47)
$$r \cdot \sum\limits_{L} {O_{LNt} = \sum\limits_{\lambda } {O_{N\lambda t} } } \quad \forall N,t$$
(48)
$$r^{'} \cdot \sum\limits_{N} {O_{N\lambda t} = \sum\limits_{I} {O_{\lambda it} } } \quad \forall \lambda ,t$$
(49)
$$\sum\limits_{L} {O_{LMt} } = \sum\limits_{i} {O_{Mit} } \quad \forall M,t$$
(50)
$$\sum\limits_{K} {O_{kLt} } \le \omega_{L} \quad \forall L,t$$
(51)
$$\sum\limits_{L} {O_{LMt} } \le \omega_{M} \quad \forall M,t$$
(52)
$$\sum\limits_{L} {O_{LNt} } \le \omega_{N} \quad \forall N,t$$
(53)
$$\sum\limits_{N} {O_{N\lambda t} } \le \omega_{\lambda } \quad \forall \lambda ,t$$
(54)
$$Q_{it} \le F_{it} \quad \forall i,t$$
(55)
$$NS_{i(t - 1)} - \left( {1 - \alpha_{i(t - 1)} } \right) \cdot NS_{i(t - 1)} \cdot \left( {1 - Y_{i(t - 1)} } \right) \cdot \left( {1 - \omega_{i(t - 1)} } \right) + Q_{it} \succ 0\quad \forall i,t$$
(56)
$$O_{KLt} \le X_{KLt} \cdot N\quad \forall K,L,t$$
(57)
$$O_{LMt} \le X_{LMt} \cdot N\quad \forall L,M,t$$
(58)
$$O_{LNt} \le X_{LNt} \cdot N\quad \forall L,N,t$$
(59)
$$O_{\lambda it} \le X_{\lambda it} \cdot N\quad \forall \lambda ,i,t$$
(60)
$$O_{N\lambda t} \le X_{N\lambda t} \cdot N\quad \forall N,\lambda ,t$$
(61)
$$O_{Mit} \le X_{Mit} \cdot N\quad \forall M,i,t$$
(62)
$$O_{Kst} \le X_{Kst} \cdot N\quad \forall K,s,t$$
(63)
$$\begin{aligned} A_{1I}^{{b_{i} }} ,A_{2s}^{{b_{s} }} ,A_{3L}^{{b_{L} }} ,A_{4M}^{{b_{M} }} ,A_{5N}^{{b_{N} }} ,A_{6\lambda }^{{b_{\lambda } }} ,X_{KST} ,X_{KLT} ,X_{LMT} ,X_{LNT} ,X_{\lambda iT} ,X_{N\lambda t} ,X_{Mit} , \hfill \\ X_{ivst} ,X_{ivst}^{{\prime \prime }} ,X_{ivst}^{{{\prime \prime \prime }}} ,X_{{ivs^{'} st}}^{'} ,Y_{it} ,\omega_{it} ,M_{ist} \in [0,1]\quad \forall i,s,v,k,L,M,N,t,\lambda \hfill \\ \end{aligned}$$
(64)
$$NS_{it} ,Q_{it} ,d_{st} ,\eta_{ivst}^{'} ,\theta_{ivst}^{'} ,O_{sKt} ,O_{kLt} ,O_{LMt} ,O_{LNt} ,Z_{it}^{'} \ge 0\quad \forall i,s,v,k,L,M,N,t.$$
(65)

The first objective function minimizes the sum of maximum time between the centers of two subsequent stage dedicated together. The second objective function of the model minimizes the cost of centers construction with a certain capacity, inventory costs, shortage (lost sale and backlog), production, fixed cost of transportation vehicle of plant i, and operational costs of centers. Constraint (1) identifies the maximum time between factories and their last allocated distribution center on the route of the vehicle of that plant at levels between the factories and distribution centers. Constraint (2) identifies the maximum time between the distribution centers and their allocated customers at levels between the distribution centers and customers. Constraint (3) identifies the maximum time between customers and their allocated collecting centers at levels between the customers and collecting centers. Constraint (4) identifies the maximum time between collecting centers and their allocated recovery centers at levels between the collecting centers and recovery centers. Constraint (5) identifies the maximum time between collecting centers and their allocated recycling centers at levels between the collecting centers and recycling centers. Constraint (6) represents the maximum time between plant i and its allocated supplier λ at levels between factories and suppliers.

Constraint (7) represents the maximum time between supplier λ and its allocated recycling centers at levels between suppliers and recycling centers. Constraint (8) represents the maximum time between plant i and its allocated recovery center M at levels between factories and recovery centers. Constraint (9) identifies the arrival time of vehicle ν of plant i to distribution center S at period t. Constraint (10) identifies the departure time of vehicle ν of plant i from distribution center S at period t. Constraint (11) means that the sum of shortages of dedicated distribution centers of plant i at period t is equal to the shortage at plant i at period t. Constraint (12) ensures the path continuity. If vehicle ν arrives a node, it must exit from it. Constraint (13) implies that vehicle of each plant at the start of its route only has one first visited distribution center. Constraint (14) implies that the amount of product transferred by vehicle ν of plant i must be at most equal to its capacity. Constraint (15) implies the costs of plant i, including inventory holding costs, shortage (lost sales and backlog), production, fixed cost of transportation vehicle of plant i, and transportation costs of plant i. Constraint (16) represents the maximum budget that is available for plant i at period t. Constraint (17) identifies the net inventory of plant i at the end of period t. Constraints (18) and (19) relate the net inventory of plant i at the end of period t with the binary variable Y it . Constraints (20) and (21) represent the relationship of distribution center S at period t with constant k .

Constraints (22) and (23) represent the relationship between the net inventory of plant i at the end of period t and binary variable w it . Constraint (25) implies that the demand of plant i is equal to the total demands of distribution centers dedicated to it. Constraint (26) means that the demand of distribution center s is equal to the total demands of its dedicated customers. Constraint (27) ensures that the total time under the shortage and inventory state at each period is T. Constraint (28) ensures that each customer is served only by one distribution centers. Constraint (29) ensures that each customer must be assigned to one collecting center. Constraint (30) means that if collecting center L is opened with capacity b L , then it must be assigned definitely to a recovery center. Constraint (31) implies that if collecting center L is opened with capacity b L , then it must be assigned certainly to a recycling center. Constraint (32) implies that if plant i is opened with capacity b i , then it must be assigned to a recovery center. Constraint (33) implies that if supplier λ is opened with capacity b λ , then it must be supplied with a recycling center. Constraint (34) implies that if plant i is opened with capacity b i , then it must be assigned certainly to a supplier λ. Constraint (35) implies that if plant i is opened, then it certainly assigned a capacity. Constraint (36) implies that if distribution center s is opened, then it certainly assigned a capacity. Constraint (37) implies that if collecting center s is opened, then it certainly assigned a capacity.

Constraint (38) identifies that if recovery center M is opened, then it certainly assigned a capacity. Constraint (39) identifies that if recycling center N is opened, then it certainly assigned a capacity. Constraint (40) identifies that if supplier λ is opened, then it certainly assigned a capacity. Constraint (41) implies that if distribution center s is opened, then it is supplied with a plant and that plant has certainly a first met distribution center in its vehicle route. Constraint (42) identifies that if plant i visits the first distribution center in its route to distribution centers, then it certainly visits the last one. Constraint (43) means that if distribution center s is supplied with plant i, then that center is certainly on the vehicle route of that plant (the first distribution center on the route, or the last distribution center on the route, or the first and the last distribution centers on the route, or between the first and the last distribution centers on the route). Constraint (44) is about the maximum warehouse space of plant i. Constraint (45) implies that the number of products that delivered to customer k is delivered to its assigned collecting center. Constraints (46) and (47) imply that a part of collected products at collecting center L is sent to the recycling center and the other part is sent to a recovery center.

Constraint (48) ensures the balance between entrance and outputs at recycling centers using a transformation factor. Constraint (49) ensures the balance between entrance and outputs at supplier λ using a transformation factor. Constraint (50) ensures the entrance and output balance at recovery centers using a transformation factor. Constraint (51) shows that collected products at collecting center L are at most equal to its capacity. Constraints (52), (53), and (54) show the capacity constraint of recovery, recycling, and supplier λ. Constraint (55) is about the maximum production quantity of plant i at period t. Constraint (56) means that the sum of production of plant i at each period with the net inventory of its previous period is positive. Constraints (57)–(63) show that if two centers at two consecutive levels are assigned together, then products, materials, or parts are transferred between them. Ultimately, constraints (64) and (65) represent the type of the variables.

Proposed solution methods

To show the applicability and validity of the presented model, we have solved a number of small-sized test problems by the ε-constraint method through a branch-and-bound module in the GAMS (General Algebraic Modeling System) software. Because the mentioned model is NP-hard, NSGA-II and MOPSO algorithms have been used to solve large-scale problems. To show the efficiency of the proposed algorithms, their results have been compared with the results obtained by the ε-constraint method in small-sized test problems. Notably, all the computations have been performed on a laptop with 2.09 GHz CPU and 1.92 GB RAM. Furthermore, the mentioned algorithms are coded in MATLAB R2009a.

Non-dominated sorting genetic algorithm (NSGA-II)

The initial population consists of a number of solutions generated randomly. Matrices are used to represent solutions. Each solution contains several matrices designed in accordance with model outputs. For example, for variable \(X_{{ijl_{1} t}}\), a four-dimensional matrix I × J × l 1  × T is defined. In the same way, matrices are defined for other outputs. In addition, after the generation of each solution, the constraints are checked and the solution is accepted if all constraints are satisfied, and otherwise, it is rejected. In the proposed algorithm, the objective value is used for fitness function to evaluation of solutions.

The selection strategy of parent population is done by the use of crowded tournament selection operator. In crowded tournament selection operator, solution i dominates solution j in the tournament if and only if one of the following conditions are met:

  1. 1.

    Solution i has a better rank.

  2. 2.

    Solutions i and j be of the same rank that solution i has a better crowd distance to solution j.

The crossover operator used in this algorithm is selected by a guideline matrix. This guideline matrix includes binary elements, and for each part, there is a separate chromosome with an equal dimension to that part. Thus, for each element of each part of chromosome, there is a corresponding element in guideline matrix. To produce a new offspring, if the corresponding element in guideline matrix is 1, then the related values of that element are replaced in two parents, otherwise, that element will be left unchanged. In proposed algorithm for mutation operator, a number of chromosome elements are randomly selected and their values are generated randomly.

The mechanism of Elitism operator is from lower fronts toward higher ones and among the solutions of one front is from larger crowd distance to smaller one. In the corrective procedure, the produced off springs are compared to the solutions in the last non-dominated front. If the produced offspring is dominated with none of the solutions of the last front, it is allowed to enter the new generation. Achievement to a certain number of repetitions has been considered as the stopping criterion.

Multi-objective particle swarm optimization (MOPSO)

The representation of the solutions is the same as the structure presented in the NSGA-II section. To evaluate existing solutions in the population and integrate the objective functions, the general procedure of the algorithm is as follows:

The new position and velocity of the particles are calculated by Eqs. (66) and (67), and with regard to the objective function, a competence value is assigned. This process continues to reach the stopping criterion, and ultimately, the best position found by the particles is presented as the solution:

$$X_{i}^{t + 1} \, = \,X_{i}^{t} \, + \,V_{i}^{t + 1}$$
(66)
$$V_{i}^{t + 1} \, = \,\omega V_{i}^{t} \, + \,\varphi_{1} r_{1} \left( {Pbest_{i}^{t} \, - \,X_{i}^{t} } \right) + \,\varphi_{2} r_{2} \left( {Gbest^{t} \, - \,X_{i}^{t} } \right).$$
(67)

Achievement to a certain number of repetitions has been considered as the stopping criterion.

Comparing factors of multi-objective evolutionary algorithms

  • Number of Pareto solutions (NPS) The number of non-dominated solutions shows the number of alternatives that can be reported to the decision maker.

  • Mean ideal distance (MID) This measure is a measurement of Pareto solutions closeness to the ideal solution (f1-Best and f2-Best).

  • Spacing metric (SM) This measure identifies the uniformity of the width of non-dominated solutions.

  • Quality metric (QM) The percent (rate) of the dominance of Pareto solutions of each algorithm indicate the solution quality of algorithms together.

Computational results

According to the given assumptions and parameters in the proposed mathematical model and the size of existing problems in the literature, some small-, medium-, and large-scale problems have been randomly defined. To solve the problem, meta-heuristic algorithms NSGA-II and MOPSO have been applied and to validate results of the proposed algorithms in small-size problems, they are compared to the results of ε-constraint method obtained by GAMS software. To increase the efficiency of these algorithms, a Taguchi method is used to tune the parameters.

Setting the parameters of the proposed meta-heuristics

To increase the efficiency of the proposed meta-heuristic algorithm, we set some of their input parameters by use of the Taguchi method. The levels of factors of NSGA-II and MOPSO algorithms are demonstrated in Table 1.

Table 1 Factors of NSGA-II and MOPSO algorithms with their levels

The required degrees of freedom for the algorithms corresponding to these four factors is 4 × 2 + 1 = 9. The most appropriate element for both NSGA-II and MOPSO algorithms is accordance with Table 2 that have necessary conditions for setting up algorithms parameters.

Table 2 Orthogonal array L

As it can be seen from Fig. 2, deviation reduction for this algorithm is when the parameters are set as follows: the population size is on level 3, the number of generation is on level 2, the crossover rate is on level 3, the and mutation rate is on level 1.

Fig. 2
figure 2

Chart of S/N rate of objective functions at different levels of NSGA-II algorithm factors

Values of S/N rate for different levels of MOPSO parameters are presented in Fig. 3. As obvious in the figure, deviation reduction in this algorithm is when its parameters are set as follows: the number of initial particles on level 1, the number of repetitions on level 2, the maximum velocity of particles on level 1, and the inertia weight on level 3.

Fig. 3
figure 3

Chart of S/N rate of objective functions at different levels of MOPSO algorithm factors

\(\phi_{1}\) and \(\phi_{2}\) are constants named cognitive and social parameters, respectively. In this study, the two parameters have been considered equal to 2.

Comparison of the results for small-sized problem

In this section, a problem has been created with two suppliers, two distributers, three customers, two collecting centers, two recycling centers, two recovery centers, and three capacity levels for each of the centers, three types of vehicles, and three period time. We consider the first objective function as a baseline and the epsilon value equal to 28.9. For validation of presented NSGA-II and MOPSO algorithms, the problem has been solved by ε–constraints method and two proposed algorithms and the obtained points in their final Pareto front have been compared. The result of this comparison is demonstrated in Fig. 4. As it can be seen, two algorithms have conformity with ε–constraints method at some points and for other points are not dominated that indicates the validity of the proposed algorithms.

Fig. 4
figure 4

Obtained Pareto front of ε-constraints, NSGA-II and MOPSO methods

Comparison of the results for the proposed algorithms

In total, 27 problems have been solved and their results, as presented in Tables 3, 4, and 5. The considered range of the parameters is as follows:

Table 3 Results of NSGA-II and MOPSO algorithms for small-sized problems
Table 4 Results of NSGA-II and MOPSO algorithms for medium-sized problems
Table 5 Results of NSGA-II and MOPSO algorithms for large-sized problems
  • Transportation time of products among all of the centers has been considered in the uniform range [1…100].

  • Required time for unloading has been considered in the uniform range [5…15].

  • Annual costs of opening centers for all centers have been considered in the uniform range [1…40].

  • Vehicles’ cost has been considered in the uniform range [3000…6000].

  • Centers’ operational costs have been considered in the uniform range [1…20].

  • Inventory holding cost has been considered in the uniform range [20…50].

  • Backlog cost has been considered in the uniform range [30…50].

  • Lost sale cost has been considered in the uniform range [50…100].

  • Customers’ demand has been considered in the uniform range [20…100].

  • The speed of vehicles has been considered in the uniform range [20…50].

  • Number of existed parts in a product has been considered 3.

  • Total centers’ capacity at all levels has been considered in the uniform range [1…1000].

  • Price increase factor for the operations at each center has been considered in the uniform range [10…30%].

  • The percent of existed parts in a product that is recyclable has been considered 0.5.

Results of the proposed algorithms according to NPS, MID, SM, and QM criteria are shown in Figs. 5, 6, 7, 8, 9, 10, 11, and 12. By comparing two algorithms according to the NPS criterion, it can be understood for medium- and large-size dimensions that in most cases, MOPSO algorithm has better performance than NSGA-II algorithm, especially for the growing scale of the problem. The average distance from the ideal point has a smaller value in NSGA-II algorithm that identifies its better performance to MOPSO algorithm. In comparison according to the SM criterion, the performance of NSGA-II algorithm is completely better for small size and is better for more than 60% for large-size problems to the MOPSO algorithm. From the comparison of the algorithms in the terms of QM criterion, it can be seen that MOPSO provides better solutions to in all problems, without exception.

Fig. 5
figure 5

Comparison of the algorithms according to the NPS evaluation criterion for small-sized problems

Fig. 6
figure 6

Comparison of the algorithms according to the NPS evaluation criterion for large-sized problems

Fig. 7
figure 7

Comparison of the algorithms according to the MID evaluation criterion for small-sized problems

Fig. 8
figure 8

Comparison of the algorithms according to the MID evaluation criterion for large-sized problems

Fig. 9
figure 9

Comparison of the algorithms according to the SM evaluation criterion for small-sized problems

Fig. 10
figure 10

Comparison of the algorithms according to the SM evaluation criterion for large-sized problems

Fig. 11
figure 11

Comparison of the algorithms according to the QM evaluation criterion for small-sized problems

Fig. 12
figure 12

Comparison of the algorithms according to the QM evaluation criterion for large-sized problems

For more results analysis, the expected value chart along with LSD distances has been presented for the two proposed algorithms in Figs. 13, 14, and 15 according to the NPS, MID, and SM criteria. The obtained results of MID criterion identify the existence of significant differences between them and statistical superiority of the MOPSO algorithm.

Fig. 13
figure 13

Expected value and LSD distances chart for proposed algorithms according to the NPS criterion

Fig. 14
figure 14

Expected value and LSD distances chart for proposed algorithms according to the MID criterion

Fig. 15
figure 15

Expected value and LSD distances chart for proposed algorithms according to the SM criterion

For a closer look at the results of two algorithms, we test the following hypothesis according to two SM and NPS criteria that their difference is not substantial. The t test is applied for this purpose.

Test 1: (in terms of NPS)

H 0 :

The average NPS of MOPSO = the average NPS of NSGA-II.

H 1 :

The average NPS of MOPSO < the average NPS of NSGA-II.

The statistic method of this test is as follows:

$$t_{^\circ } = \frac{{\overline{\text{NPS}}_{\text{MOPSO}} - \overline{\text{NPS}}_{\text{NSGA - II}} }}{{S_{p} \,.\,\sqrt {\frac{1}{{nX_{\text{MOPSO}} }} + \frac{1}{{nY_{\text{NSGA - II}} }}} }}\, = 2.02134.$$
(68)

The acceptance limits are as follows:

$$[ - t_{{\alpha ,nX_{\text{MOPSO}} + nY_{\text{NSGA - II}} - 2}} , + \infty )\, = \,[ - 1.6762\, + \infty )\,.$$

Because the statistic is in the acceptance region and we accept the null hypothesis at confidence level 95%. This emphasizes that the NPS average for MOPSO is statistically higher than NSGA-II. In other words, the number of non-dominated solutions of MOPSO method is more.

Test 1: (in terms of SM)

H 0 :

The average SM of MOPSO = the average SM of NSGA-II.

H1 :

The average SM of MOPSO < the average SM of NSGA-II.

The statistic method of this test is as follows:

$$t_{^\circ } = \frac{{\overline{\text{SM}}_{\text{MOPSO}} - \overline{\text{SM}}_{\text{NSGA - II}} }}{{S_{p} \,.\,\sqrt {\frac{1}{{nX_{\text{MOPSO}} }} + \frac{1}{{nY_{\text{NSGA - II}} }}} }}\, = 0.756.$$
(69)

The acceptance limits are as follows:

$$[ - t_{{\alpha ,nX_{\text{MOPSO}} + nY_{\text{NSGA - II}} - 2}} , + \infty )\, = \,[ - 1.6762\, + \infty )\,.$$

Because the statistic is in the acceptance region and we accept the null hypothesis at confidence level 95%. This emphasizes that the SM average for MOPSO is statistically higher than NSGA-II.

The charts and statistical analysis of two algorithms MOPSO and NSGA-II identify that in the considered problem, MOPSO is better than NSGA-II in the terms of NPS and QM criterions. On the other hand, NSGA-II is superior in the terms of MID and SM criterions.

Sensitivity analysis

To investigate the sensitivity analysis, the following two small- and large-sized test instances are considered to show the impact of parameter \(V_{iv}^{'}\) on the objective functions of the proposed model.

Instance

No. of suppliers

No. of plants

No. of DCs

No. of customers’ centers

No. of collecting centers

No. of recovery centers

No. of recycle centers

No. of period

1

5

6

8

10

8

6

5

2

2

10

15

40

70

35

12

10

2

Figures 16, 17 illustrate the sensitivity of the first and second objective functions on parameter \(V_{iv}^{'}\) (i.e., average speed of vehicle ν of plant i) for above two small- and large-sized instances, respectively. As shown in these figures, when \(V_{iv}^{'}\) (i.e., average speed of vehicle ν of plant i) is increased, the value of the first objective function (i.e., time) is decreased. By increasing \(V_{iv}^{'}\), the value of the second objective function (i.e., cost) is increased.

Fig. 16
figure 16

Sensitivity of the time and cost on parameter \(V_{iv}^{{\prime }}\) for small-sized instances

Fig. 17
figure 17

Sensitivity of the time and cost on parameter \(V_{iv}^{{\prime }}\) for large-sized instances

Conclusion

The proposed model represents a location–routing–inventory problem in a multi-period closed-loop supply chain with the consideration of shortage, price increase factor, arrival time to distribution centers, and departure time of them, so that the cost and maximum transportation time of the chain are minimized. The proposed model includes multiple producers, distribution centers, customers, collecting centers, recovery centers, and recycling centers. The percent of backlog and lost sales of the total shortage at each period is identified according to the predefined policies. Due to the NP-hard nature of the problem, NSGA-II and MOPSO algorithms have been applied and Taguchi approach has been used to increase the efficiency of these algorithms. A number of small-, medium-, and large-scale problems have been generated randomly. To evaluate the performance of the proposed algorithms, the results of produced small-size test problems with the results of ε-constraint method solved by the GAMS software. Finally, to identify the performance of the proposed algorithms, their performances were compared. The charts and statistical analysis of two algorithms (i.e., MOPSO and NSGA-II) identify that in the considered problem, MOPSO is better than NSGA-II in the terms of NPS and QM criterions. On the other hand, NSGA-II is superior in the terms of MID and SM criterions. Considering flexible time window, probabilistic nature for the input parameters, developing a model by considering all-unit and incremental discount policies, and applying and developing other meta-heuristic algorithms for large-scale multi-objective problems are suggested for future research.