1 Introduction

The increase of knowledge and consciousness of the buyers about the advantages of using environmental-friendly products in recent decades has prompted producers and executors to pay more attention to green supply chain management. Today, green supply chain managers in pioneering companies attempt to use green logistics and their environmental performance improvement as a strategic tool to achieve stable competitive advantage through making environmentally utility and satisfaction in the whole supply chain; they establish their goals based on three important issues: green design (product), green production (process), and product recovery (Boks and Stevels 2007). Green design is a multi-aspects district and needs different expertise contexts like environmental risk management, safety of product, pollution prevention, keep the resources and residue management (Srivastava 2007). Over the last two decades, many companies such as Kodak and Xerox have focused on remanufacturing and recovery activities and have achieved significant successes in this area (Üster et al. 2007).

Today, a reduction in the amount of packaging used in products has been considered as a goal by some companies like Wal Mart and Sisko to provide natural resources protection and cost savings. The industrial sector in developed countries, such as in United States, European Union and Japan, has been enforced to adopt green supply chains because of government regulation on environmental subjects (Abu Seman et al. 2012).

Successful acceptance and adoption of the reverse logistics relies on various inter-organization factors such as an obligation to conserve the environment, code of ethics and the existence of sponsors and/or policy makers with an obligation to adopt environmental-friendly policies (Richey et al. 2005; Murphy and Poist 2003). Lu and Bostel (2007) proposed four types of main reverse logistics networks included Directly Reusable Network (DRN), Remanufacturing Network (RMN), Repair Service Network (RSN) and Recycling Network (RN).

Traditional supply chain network design in the forward flow executes location, the determination of the capacity and the number of production, manufacture and distribution facilities, and the definition of the types of transportation communication and fittings (Fleischmann et al. 1997). In the reverse networks and closed-loop networks, other facilities such as collection centers, sorting centers and reprocessing centers are added to the existing facilities in the forward network. On the other hand, the reverse and forward network design separately causes the network sub-optimality according to the purposes of the supply chain (Baumgarten et al. 2003; Schultmann et al. 2006).

Many efforts to model and optimize the supply chain network design problems have been done. Most of them are based on single-objective such as costs minimization and/or profit maximization (Govindan et al. 2015). Therefore, recently, two or more distinctive objectives included objectives to conserve the environmental interests in addition to the objectives mentioned above are considered to design green supply chain networks.

According to the discussion mentioned in this research, a bi-objective nonlinear programming model is presented for a reverse and forward supply chain network. In the considered network, three echelons included production centers, distribution centers and customer zones in the forward flow and three echelons included collection/disassembly centers, recycling centers and disposal centers in the reverse flow have been regarded. The developed model is a multi-echelon, multi-product, and multi-period model.

The rest of the paper is organized as follows. Section 2 gives the relevant literature review. Section 3 introduces the problem description and the determination of assumptions. A bi-objective nonlinear programming model is developed for the considered problem in Sect. 4. Sections 5 and 6 present the proposed solution method, solve some sample problems and evaluate the results. Finally, Sect. 7 is devoted to conclusions and future works.

2 Literature review

Recently, there has been an increasing interest in reverse logistics due to growing environmental concern and economic opportunities related to cost savings and revenues of returned products (Entezaminia et al. 2016). In many industries, reverse logistics can be implemented as a sustainable and profitable business strategy to allow the improvement of futures sales and customer loyalty (Roghanian and Pazhoheshfar 2014).

In the real world, when both reverse and forward networks are integrated and considered together, then a closed-loop supply chain is created (Ramezani et al. 2013). According to this matter, Pishvaee et al. (2010) presented a bi-objective integrated logistics network design problem and proposed a memetic algorithm to solve it. Tarokh and Naseri (2012) studied a distribution network for a multi-echelon supply chain. They developed a mixed integer programming model and minimized the costs of the distribution network in the studied problem. They proposed a hybrid meta-heuristic method as a combination of Simulated Annealing and Genetic algorithms to solve the model. Alfonso-Lizarazo et al. (2013) presented a mathematical model in order to represent the dynamic interaction between flows in a closed-loop supply chain network. The objective function considered energy, cost and economic profits. Finally, the results were analyzed using proper statistical tools. Soleimani et al. (2013) developed a multi-echelon, multi-product, and multi-period model in a MILP structure. Their proposed model was solved by CPLEX optimization software and through a developed GA. Their results demonstrated the acceptable performances of the developed GA. Özceylan et al. (2014) developed a mixed integer nonlinear programming model that jointly optimized the strategic and tactical decisions of a closed-loop supply chain. The objective was to minimize costs. Pazhani et al. (2013) presented a two-objective network design problem for the multi-period, multi-product closed-loop supply chain in order to minimize the costs and maximize the efficiency. Their model was a two-objective MILP model to assist in the decision making on: (1) Operational/Location decisions for warehouses, combined facilities and manufacturing facilities, and (2) production and distribution of products between stages in supply chain. Soleimani and Kannan (2015) developed a deterministic multi-product, multi-echelon, multi-period model for a closed-loop supply chain network. They considered two meta-heuristic algorithms to develop a new elevated hybrid algorithm: the Genetic Algorithm and Particle Swarm Optimization. They investigated a case study to evaluate their proposed approach. El-Sayed et al. (2010) developed a stochastic model for the closed-loop network. In their paper, it was assumed that the demand was a non-deterministic parameter and the model was designed for a multi-product situation. They investigated uncertainty in demand, return and cost. Gaur et al. (2017) developed a closed loop supply chain model which is included two decision level: tactical and strategic. A mixed-integer nonlinear programming model is proposed then the model reformulate as a mixed integer linear model using augmented penalty approach. Finally, they applied a battery manufacturer as a case study to indicate model validation. Dondo and Méndez (2016) proposed a multi-echelon forward and reverse supply chain in operational level. In this paper, the forward and backward flows on a supply chain network according to greenness aspects are computed to minimize total costs. They used decomposition approach to find near optimal solution for the problem.

Furthermore, in several researches, greenness is considered as a measurement in supply chain objectives. Wang et al. (2011) studied a supply chain design problem according to the environment. In the design phase, they paid attention to the environmental investment decisions and developed a multi-objective model with the aim of minimizing the total cost and environmental effects. Comparison of the results of this model with the real numerical data demonstrated that their considered model can be used as a suitable tool for the green supply chain network programming. Giarola et al. (2011) proposed a MILP framework to optimize environmental financial performance indicators in a multi-period and multi-echelon biofuels supply chain. Because of the environmental rules importance for the green supply chain network, Yeh and Chuang (2011) presented a mathematical programming model with four criteria: cost, time, quality of product, and green evaluation degree. They proposed two multi-objective Genetic Algorithms based on Pareto archive to find optimal solutions. Jamshidi et al. (2012) combined total cost and environmental effect components in a multi-objective approach and used a memetic algorithm to solve it. Pishvaee and Razmi (2012) presented a fuzzy multi-objective model for a reverse supply chain problem with the aim of minimizing costs and environmental effect. The considered model was single-product and its efficiency was proved by a real-world instance. Ghayebloo et al. (2015) presented a two-objective model with the aim of maximizing the profit of the whole network as the first objective and maximizing the amount of total greenness such as components and products greenness as the second objective. Their supply chain included suppliers, assembly facilities, consumption centers (customers), disassembly facilities, and recycling centers. They compared the weighted sums method with the limited constraints method to investigate their proposed model. Zohal and Soleimani (2016) developed a multi-objective integer linear programming model to minimize costs and CO2 emission for a case study in gold industry and proposed a 7-layer integrated forward/reverse logistics network design. Then, in order to solve the model, an algorithm based on ant colony optimization was developed. The performance of the proposed algorithm has been compared with the optimum solutions of the LINGO software through various numerical examples. Further, they used a Taguchi method to calibrate the parameters of the algorithm. Tiwari et al. (2016) studied a closed loop green supply chain in semiconductor industries. They consider two conflict objective included maximizing total profit and minimizing pollution simultaneously. For this purpose, a hybrid model combining estimation of distribution algorithm and territory defined multi-objective algorithm is developed. Pedram et al. (2017) studied closed loop green supply chain including forward and reverse logistics. The proposed model considered uncertainty in demand, return products and theirs quality. To achieve this goal, a mixed integer linear programming model is developed. In order to solve the problem a scenario based approach are applied. They consider two main objectives contain maximizing profit and minimizing pollution. A tire case study is used to show model applicability. Soleimani et al. (2017) presented a new multi-objective green forward backward supply chain model under uncertainty. The forward supply chain includes supplier, manufacturers, distribution centers, customers and backward one contains return and recycling centers. A scenario analysis is used to solve the problem. They also develop a genetic algorithm to optimize total profit and reduction of lost working. Mohammed et al. (2017) proposed a multi-period closed loop green supply chain model. In this research, demand and return products are considered uncertain. A mixed integer linear programming is developed to minimize the total system cost. A robust approach is used to overcome the problem uncertainty.

According to the researches accomplished over the current issue, the main contribution of our work is to consider distinctive characteristics for the model presented in this paper, that is, the multi-product, multi-period integrated reverse and forward networks design, and finally, green design indicators and quality indicators as the most significant features for the development of final products. Furthermore, in the proposed model, some constraints are considered to determine the amount of paper and plastic consumption in the packaging of the products.

3 Problem definition

In this research, an integrated forward/reverse supply chain network is studied. It includes production centers (factories), distribution centers (warehouses) and customer zones in the forward flow and collection/disassembly centers, recycling centers and disposal centers in the reverse flow. As shown in Fig. 1, after producing the products in the factories, these products are delivered to the distribution centers (warehouses) and then transferred to customer zones. Because the considered model is multi-period, some final products in each period are held in distribution centers as inventory. Then, scrapped products are collected from customer zones. After disassembling them, two flows of components are made: (1) recyclable components which are sent to recycling centers; (2) disposable components which are sent to disposal centers. Two sets of indicators as green design of product and quality of product are proposed in order to present and develop the manufactured products in this network. The set of green design indicator includes a design for: (1) easier disassembly of product; (2) utilization of reusable (recyclable) raw materials (components); (3) utilization of environmental-friendly (safe disposal) raw materials (components). Also, the set of quality indicator includes: (1) utilization of good quality components in the production of products; (2) utilization of more persistent components with more longevity in the production of products. Furthermore, the model presented in this research is a bi-objective model that its first objective is to maximize total profit of the network and its second objective is to maximize the sum of the score of final products produced by green design indicators and quality indicators in the forward network and green scrap score of scrapped products collected and disassembled in the reverse network. Moreover, a new parameter as green scrap score for scrapped products is also considered. Because the score of final products of mentioned indicators is increasing during the periods, the scrap of products returned from customer zones has more environmental advantage in comparison with the previous periods. So, this matter is posed by dedicating the green scrap score to these products.

Fig. 1
figure 1

An integrated forward/reverse supply chain network

The basic assumptions of the proposed model are as follows:

  • The studied green supply chain network is multi-product and multi-period.

  • The number of production centers (factories), distribution centers (warehouses), customer zones, collection/disassembly centers, recycling centers and disposal centers is identified and their locations are fixed and known.

  • All parameters of the model are deterministic and definite.

  • All of the customers’ demands must be satisfied. In each period, customers’ demands for products change according to the set of green design indicator of product and the set of quality indicator of product. Moreover, all of the products returned from customers must be collected in the reverse flow.

  • As all demands must be satisfied, there is no need for production centers to keep inventory and they produce the amount needed.

  • As the transportation vehicles are the same, the average transportation cost of all types of recyclable and disposable components are identical. To forbid extra unnecessary indices the average selling price of all types of recyclable components, and the average disposal cost of all types of disposable components don’t rely on the type of recyclable and disposable components.

  • Average disposal cost of each unit of disposable component is included in transportation cost of components to disposal centers.

  • Purchasing cost of each unit of scrapped product from customer zones is assumed negligible.

  • The score of products in mentioned indicators is increasing during the periods.

  • The reverse flow is added to the network from period 2, because the return of the products is started from period 2. Then, the reverse logistics income and costs are added to the system from period 2.

  • Production centers, distribution centers, collection/disassembly centers, recycling centers, and disposal centers have a limited capacity.

  • There is not any initial inventory at the beginning of the planning horizon.

4 Proposed mathematical programming model

The following notations are used in the formulation of the proposed programming model to study the flow of an integrated forward/reverse network: Indices

F:

Set of production centers (f = 1, 2, …, F)

D:

Set of distribution centers (d = 1, 2, …, D)

C:

Set of customer zones (c = 1, 2, …, C)

M:

Set of collection/disassembly centers (m = 1, 2, …, M)

E:

Set of recycling centers (e = 1, 2, …, E)

O:

Set of disposal centers (o = 1, 2, …, O)

I:

Set of products types (i = 1, 2, …, I)

N:

Set of planning periods (n = 1, 2, …, N)

G:

Set of green design indicators of product (g = 1, 2, 3) which includes: easier disassembly of product, utilization of reusable raw materials and Utilization of environmental-friendly raw materials respectively

Q:

Set of quality indicators of product (q = 1, 2) which includes: utilization of good quality components in the production of products, utilization of more persistent components with more longevity in the production of products respectively

Parameters

Digqcn:

Demand of product i with green design indicator g and quality indicator q in customer zone c in period n

C1igqfn:

Production cost per unit of product i with green design indicator g and quality indicator q in production center f in period n

C2ifdn:

Transportation cost per unit of product i from production center f to distribution center d in period n

C3idcn:

Transportation cost per unit of product i from distribution center d to customer zone c in period n

C4icmn:

Transportation cost per unit of scrapped product i from customer zone c to disassembly center m in period n

C5men:

Average transportation cost per unit of recyclable component from disassembly center m to recycling center e in period n

C6mon:

Average transportation cost per unit of disposable component from disassembly center m to disposal center o in period n

C7igqmn:

Disassembly cost per unit of scrapped product i with green design indicator g and quality indicator q in disassembly center m in period n

C8igqdn:

Holding cost per unit of product i with green design indicator g and quality indicator q in distribution center d in period n

Rigfn:

Score of each unit of product i with green design indicator g in production center f in period n

\({\text{R}}_{\text{iqfn}}^{\prime }\):

Score of each unit of product i with quality indicator q in production center f in period n

ui:

Weight of each unit of product i with any green design indicator

(1 − ui):

Weight of each unit of product i with any quality indicator

\({\text{w}}^{\prime }\):

Weight factor (significant) for quality and environmental advantage in the forward network, in the second objective function

(1 − w′):

Weight factor (significant) for environmental advantage in the reverse network, in the second objective function

higqn:

Green scrap score of each unit of scrapped product i with green design indicator g and quality indicator q in period n

V1igqfn:

Capacity of the production of product i with green design indicator g and quality indicator q in production center f in period n

V2igqdn:

Capacity of distribution center d for the acceptance of product i with green design indicator g and quality indicator q in period n

V3igqmn:

Capacity of disassembly center m for disassembly of product i with green design indicator g and quality indicator q in period n

v4en:

Acceptance capacity of recycling center e in period n

v5on:

Acceptance capacity of disposal center o in period n

Pigqcn:

Selling price per unit of product i with green design indicator g and quality indicator q in customer zone c in period n

\({\text{p}}_{\text{en}}^{\prime }\):

Average selling price per unit of recyclable component in recycling center e in period n

wigq:

Average total number of components per unit of product i with green design indicator g and quality indicator q

γ1igqn:

Expected percentage of recyclable components obtained by disassembling scrapped product i with green design indicator g and quality indicator q in period n

\({\text{r}}_{{{\text{igqcn}}^{\prime } {\text{n}}}}\):

Return rate of scrapped product i in period n with green design indicator g and quality indicator q returned from customer zone c and period n

shi:

Maximum quota of paper consumption determined by government for packaging of each unit of product i

pli:

Maximum quota of plastic consumption determined by government for packaging of each unit of product i

cn:

Considered pecuniary penalty/cost discount per unit of more/less paper consumption than maximum quota determined by government in period n

kn:

Considered pecuniary penalty/cost discount per unit of more/less plastic consumption than maximum quota determined by government in period n

ρi:

Percentage of paper consumption in the first period for packaging of each unit of product i which determines minimum consumption in the last planning period (to keep the quality of packaging)

μi:

Percentage of plastic consumption in the first period for packaging of each unit of product i which determines minimum consumption in the last planning period (to keep the quality of packaging)

Decision variables

x1igqfn:

Quantity of product i with green design indicator g and quality indicator q produced in production center f in period n

x2igqfdn:

Quantity of product i with green design indicator g and quality indicator q transferred from production center f to distribution center d in period n

x3igqdcn:

Quantity of product i with green design indicator g and quality indicator q transferred from distribution center d to customer zone c in period n

x4igqcmn:

Quantity of scrapped product i with green design indicator g and quality indicator q transferred from customer zone c to disassembly center m in period n

x5igqmen:

Quantity of recyclable component obtained by disassembling product i with green design indicator g and quality indicator q transferred from disassembly center m to recycling center e in period n

x6igqmon:

Quantity of disposable component obtained by disassembling product i with green design indicator g and quality indicator q transferred from disassembly center m to disposal center o in period n

x7igqmn:

Quantity of product i with green design indicator g and quality indicator q disassembled in disassembly center m in period n

x8igqdn:

Inventory of product i with green design indicator g and quality indicator q in distribution center d in period n

yigqfn:

Quantity of paper consumption needed for packaging of each unit of product i with green design indicator g and quality indicator q in production center f in period n

zigqfn:

Quantity of plastic consumption needed for packaging of each unit of product i with green design indicator g and quality indicator q in production center f in period n

According to the notations presented above, the mathematical programming model to design the considered green supply chain network can be formulated as follows:

$$\begin{aligned} {\text{max Z}}_{ 1} = & \mathop \sum \limits_{{i = 1}}^{{I}} \mathop \sum \limits_{{g = 1}}^{{G}} \mathop \sum \limits_{{q = 1}}^{{Q}} \mathop \sum \limits_{{d = 1}}^{{D}} \mathop \sum \limits_{{c = 1}}^{{C}} \mathop \sum \limits_{n = 1}^{{N}} p_{igqcn} . {{x3}}_{{igqdcn}} \quad + \mathop \sum \limits_{i = 1}^{I} \mathop \sum \limits_{g = 1}^{G} \mathop \sum \limits_{q = 1}^{Q} \mathop \sum \limits_{m = 1}^{M} \mathop \sum \limits_{e = 1}^{E} \mathop \sum \limits_{n = 2}^{N} p^{\prime}_{en} .x5_{igqmen} \\ & - \;\mathop \sum \limits_{{i = 1}}^{{I}} \mathop \sum \limits_{{g = 1}}^{{G}} \mathop \sum \limits_{{q = 1}}^{{Q}} \mathop \sum \limits_{{f = 1}}^{{F}} \mathop \sum \limits_{{n = 1}}^{{N}} {{c1}}_{{igqfn}} . {{x1}}_{{igqfn}} \quad - \mathop \sum \limits_{{i = 1}}^{{I}} \mathop \sum \limits_{{g = 1}}^{{G}} \mathop \sum \limits_{{q = 1}}^{{Q}} \mathop \sum \limits_{{f = 1}}^{{F}} \mathop \sum \limits_{{d = 1}}^{{D}} \mathop \sum \limits_{n = 1}^{N} c2_{ifdn} . {{x2}}_{{igqfdn}} \\ & - \;\mathop \sum \limits_{{i = 1}}^{{I}} \mathop \sum \limits_{{g = 1}}^{{G}} \mathop \sum \limits_{{q = 1}}^{{Q}} \mathop \sum \limits_{{d = 1}}^{{D}} \mathop \sum \limits_{{c = 1}}^{{C}} \mathop \sum \limits_{n = 1}^{N} c3_{idcn} . {{x3}}_{{igqdcn}} \quad - \mathop \sum \limits_{{i = 1}}^{{I}} \mathop \sum \limits_{{g = 1}}^{{G}} \mathop \sum \limits_{{q = 1}}^{{Q}} \mathop \sum \limits_{{c = 1}}^{{C}} \mathop \sum \limits_{{m = 1}}^{{M}} \mathop \sum \limits_{n = 2}^{N} c4_{icmn} . {{x4}}_{{igqcmn}} \\ & - \; \mathop \sum \limits_{{i = 1}}^{{I}} \mathop \sum \limits_{{g = 1}}^{{G}} \mathop \sum \limits_{{q = 1}}^{{Q}} \mathop \sum \limits_{{m = 1}}^{{M}} \mathop \sum \limits_{{e = 1}}^{{E}} \mathop \sum \limits_{n = 2}^{N} c5_{men} . {{x5}}_{{igqmen}} \quad - \mathop \sum \limits_{{i = 1}}^{{I}} \mathop \sum \limits_{{g = 1}}^{{G}} \mathop \sum \limits_{{q = 1}}^{{Q}} \mathop \sum \limits_{{m = 1}}^{{M}} \mathop \sum \limits_{{o = 1}}^{{O}} \mathop \sum \limits_{n = 2}^{N} c6_{mon} . {{x6}}_{{igqmon}} \\ & - \;\mathop \sum \limits_{{i = 1}}^{{I}} \mathop \sum \limits_{{g = 1}}^{{G}} \mathop \sum \limits_{{q = 1}}^{{Q}} \mathop \sum \limits_{{m = 1}}^{{M}} \mathop \sum \limits_{{n = 2}}^{{N}} {{c7}}_{{igqmn}} . {{x7}}_{{igqmn}} \quad - \mathop \sum \limits_{i = 1}^{I} \mathop \sum \limits_{g = 1}^{G} \mathop \sum \limits_{q = 1}^{Q} \mathop \sum \limits_{d = 1}^{D} \mathop \sum \limits_{n = 1}^{N} c8_{igqdn} .x8_{igqdn} \\ & - \;\mathop \sum \limits_{{i = 1}}^{{I}} \mathop \sum \limits_{{g = 1}}^{{G}} \mathop \sum \limits_{{q = 1}}^{{Q}} \mathop \sum \limits_{f = 1}^{F} \mathop \sum \limits_{d = 1}^{D} \mathop \sum \limits_{n = 1}^{N} x2_{igqfdn} .c_{n} \left( {y_{igqfn} - sh_{i} } \right) \\ & - \;\mathop \sum \limits_{{i = 1}}^{{I}} \mathop \sum \limits_{{g = 1}}^{{G}} \mathop \sum \limits_{{q = 1}}^{{Q}} \mathop \sum \limits_{f = 1}^{F} \mathop \sum \limits_{d = 1}^{D} \mathop \sum \limits_{n = 1}^{N} x2_{igqfdn} .k_{n} \left( {z_{igqfn} - pl_{i} } \right) \\ \end{aligned}$$
(1)
$${\text{max Z}}_{ 2} { = }w^{\prime } . \left( {\mathop \sum \limits_{{i = 1}}^{{I}} \mathop \sum \limits_{{g = 1}}^{{G}} \mathop \sum \limits_{{q = 1}}^{{Q}} \mathop \sum \limits_{{f = 1}}^{{F}} \mathop \sum \limits_{{n = 1}}^{{N}} \left( {{{R}}_{{igfn}} .u_{i} {{ + R}}_{{igfn}}^{\prime } .\left( {1 - u_{i} } \right)} \right) . {{x1}}_{{igqfn}} } \right) +(1-w^{\prime }) . \left( {\mathop \sum \limits_{{i = 1}}^{{I}} \mathop \sum \limits_{{g = 1}}^{{G}} \mathop \sum \limits_{{q = 1}}^{{Q}} \mathop \sum \limits_{{m = 1}}^{{M}} \mathop \sum \limits_{{n = 1}}^{{N}} \left( {{{h}}_{{igqn}} .x7_{igqmn}} \right)} \right)$$
(2)
$$x1_{igqfn} = \mathop \sum \limits_{d = 1}^{D} x2_{igqfdn} \quad \forall i,g,q,f,n$$
(3)
$$x8_{igqd1} = \mathop \sum \limits_{f = 1}^{F} x2_{igqfd1} - \mathop \sum \limits_{c = 1}^{C} x3_{igqdc1} \quad \forall i,g,q,d$$
(4)
$$x8_{igqdn} = \mathop \sum \limits_{f = 1}^{F} x2_{igqfdn} - \mathop \sum \limits_{c = 1}^{C} x3_{igqdcn } + x8_{{igqd\left( {n - 1} \right)}} \quad \forall i,g,q,d,n = \left\{ {2, \ldots N} \right\}$$
(5)
$$\mathop \sum \limits_{f = 1}^{F} x2_{igqfdN} - \mathop \sum \limits_{c = 1}^{C} x3_{igqdcN} + x8_{{igqd\left( {N - 1} \right) }} = 0 \quad \forall i,g,q,d$$
(6)
$$\mathop \sum \limits_{f = 1}^{F} x2_{igqfd1} \ge \mathop \sum \limits_{c = 1}^{C} x3_{igqdc1} \quad \forall i,g,q,d$$
(7)
$$\mathop \sum \limits_{f = 1}^{F} x2_{igqfdn} + x8_{{igqd\left( {n - 1} \right)}} \ge \mathop \sum \limits_{c = 1}^{C} x3_{igqdcn} \quad \forall i,g,q,d,n = \left\{ {2, \ldots N - 1} \right\}$$
(8)
$$\mathop \sum \limits_{d = 1}^{D} x3_{igqdcn} = D_{igqcn} \quad \forall i,g,q,c,n$$
(9)
$$\mathop \sum \limits_{m = 1}^{M} x4_{igqcmn} = \mathop \sum \limits_{{n^{\prime} = 1}}^{n - 1} \mathop \sum \limits_{d = 1}^{D} r_{{igqcn^{\prime } n}} .x3_{{igqdcn^{\prime } }} \quad \forall i,g,q,c,n = \left\{ {2, \ldots N} \right\}$$
(10)
$$\mathop \sum \limits_{c = 1}^{C} x4_{igqcmn} = x7_{igqmn }\quad \forall i,g,q,m,n = \left\{ {2, \ldots N} \right\}$$
(11)
$$w_{igq} .x7_{igqmn} = \mathop \sum \limits_{e = 1}^{E} x5_{igqmen} + \mathop \sum \limits_{o = 1}^{O} x6_{igqmon} \quad \forall i,g,q,m, n = \left\{ {2, \ldots N} \right\}$$
(12)
$$\gamma 1_{igqn} .w_{igq} .x7_{igqmn} = \mathop \sum \limits_{e = 1}^{E} x5_{igqmen} \quad \forall i,g,q,m,n = \left\{ {2, \ldots N} \right\}$$
(13)
$$\mathop \sum \limits_{i = 1}^{I} \mathop \sum \limits_{g = 1}^{G} \mathop \sum \limits_{q = 1}^{Q} \mathop \sum \limits_{m = 1}^{M} x5_{igqmen} \le v4_{en} \quad \forall e,n = \left\{ {2, \ldots N} \right\}$$
(14)
$$\mathop \sum \limits_{i = 1}^{I} \mathop \sum \limits_{g = 1}^{G} \mathop \sum \limits_{q = 1}^{Q} \mathop \sum \limits_{m = 1}^{M} x6_{igqmon} \le v5_{on} \quad \forall o,n = \left\{ {2, \ldots N} \right\}$$
(15)
$$x1_{igqfn} \le V1_{igqfn} \quad \forall i,g,q,f,n$$
(16)
$$\mathop \sum \limits_{f = 1}^{F} x2_{igqfdn} + x8_{{igqd\left( {n - 1} \right)}} \le V2_{igqdn} \quad \forall i,g,q,d,n = \left\{ {2, \ldots N} \right\}$$
(17)
$$\mathop \sum \limits_{f = 1}^{F} x2_{igqfd1} \le v2_{igqd1} \quad \forall i,g,q,d$$
(18)
$$x7_{igqmn} \le V3_{igqmn} \quad \forall i,g,q,m,n = \left\{ {2, \ldots N} \right\}$$
(19)
$$y_{igqf1} \ge sh_{i} \quad \forall i,g,q,f$$
(20)
$$y_{igqfn} \le y_{{igqf\left( {n - 1} \right)}} \quad \forall i,g,q,f,n = \left\{ {2, \ldots ,N} \right\}$$
(21)
$$y_{igqfN} \ge \rho_{i} y_{igqf1} \quad \forall i,g,q,f$$
(22)
$$z_{igqf1} \ge pl_{i} \quad \forall i,g,q,f$$
(23)
$$z_{igqfn} \le z_{{igqf\left( {n - 1} \right)}} \quad \forall i,g,q,f,n = \left\{ {2, \ldots ,N} \right\}$$
(24)
$$z_{igqfN} \ge \mu_{i} z_{igqf1} \quad \forall i,g,q,f$$
(25)
$$x1_{igqfn} ,x2_{igqfdn} ,x3_{igqdcn} ,x4_{igqcmn} , x5_{igqmen} x6_{igqmon} ,x7_{igqmn} ,x8_{igqdn} ,y_{igqfn} ,z_{igqfn} \ge 0 \quad \forall i,g,q,f,d,c,m,e,o,n$$
(26)

The first objective function (1) is to maximize total profit of the network (total income minus total cost). Total income is obtained by selling the final products, recyclable components, and cost discount due to the proper paper and plastic consumption in the packaging of products. Also, the costs of the considered network design include production cost of products, transportation cost between facilities, holding cost, disassembly cost of scrapped products, pecuniary penalty due to the additional paper and plastic consumption in the packaging of products, and disposal cost put in transportation cost of disposable components to disposal centers. The second objective function (2) is to maximize the sum of the score of products produced with green design indicators and quality indicators in the forward network and the green scrap score of scrapped products disassembled in the reverse network. Constraint (3) indicates that all products produced in each production center (factory) must be transferred to all distribution centers (warehouses). Constraints (4) and (5) are the inventory of warehouses from the initial periods to the end of planning horizon. Constraint (6) indicates that the amount of inventory at the end of planning horizon must be zero. Constraint (7) states that the amount of input into distribution centers in the first period must be more than the amount of output from them. Constraint (8) states that, from period 2 to period N − 1, the sum of the amount of input into distribution centers and the inventory transferred from the previous period must be more than the amount of output from them. According to the assumption that all customers’ demands are satisfied, constraint (9) ensures that all products transferred from distribution centers to each customer zone are equal to the demand of that customer zone. Constraint (10) indicates that the quantity of scrapped products returned from each customer zone to disassembly centers in each period is the percentage of all products sent to that customer zone from the first period to the previous period of the considered period. Constraint (11) implies that all scrapped products transferred to the considered disassembly center must be equal to the disassembled scrapped products in that center. Constraint (12) states that all components obtained by disassembling the products in the considered disassembly center must be transferred to recycling and disposal centers. Constraint (13) states that the percentage of all components obtained by disassembling the scrapped products in the considered disassembly center is transferred to recycling centers as recyclable components. Constraints (14)–(19) demonstrate capacity limitation in the considered network facilities. Constraint (20) indicates the amount of paper consumption in the packaging of each unit of product in each production center in the first period of the planning horizon. Constraint (21) indicates the amount of paper consumption in the packaging of each unit of product in each production center from period 2 to the end of planning horizon. This amount must be descending. Constraint (22) indicates minimum amount of paper consumption in the packaging of each unit of product in each production center at the end of planning horizon. Constraint (23) indicates the amount of plastic consumption in the packaging of each unit of product in each production center in the first period of the planning horizon. Constraint (24) indicates the amount of plastic consumption in the packaging of each unit of product in each production center from period 2 to the end of planning horizon. This amount must be descending. Constraint (25) indicates minimum amount of plastic consumption in the packaging of each unit of product in each production center at the end of planning horizon. Constraint (26) enforces the non-negativity restriction on the decision variables.

5 Proposed solution methodology

Because of the complexity of supply chain models from computational point of view especially in large sizes, these problems are considered as Non-deterministic Polynomial-hard problems (Dimopoulos and Zalzala 2000). This is a constrained nonlinear-programming model which is hard to be solved analytically by an exact method. Moreover, the number of production and distribution centers, customer zones and product types affect the number of constraints. To check its hardness, all of the numerical examples are coded in Lingo software and after 7800 s none of them were computed. So, in comparison with other methods, meta-heuristic methods which can find close-to-optimum solutions in more proper time are usually used to solve these problems. Therefore, in order to solve the considered problem in this research, Multi-objective Particle Swarm Optimization (MOPSO) and Non-dominated Sorting Genetic (NSGA-II) meta-heuristic Algorithms are used to find Pareto-optimal solutions. These algorithms are well-known and their workability for different problems is proven. The reason of using two different meta-heuristic algorithms is that these two algorithms have not been used for a supply chain model identical to this research. SO, their output can be compared to verify their workability for the proposed model.

In the last two decades, various Evolutionary Algorithms (EAs) have been proposed and presented to solve multi-objective optimization problems. One of these algorithms is NSGA-II algorithm presented by Deb et al. (2002) as a population-based evolutionary algorithm to solve various problems and its efficiency in the generation of various Pareto-optimal solutions has been proved. Also, Multi-objective Particle Swarm Optimization (MOPSO) algorithm was presented by Coello Coello et al. (2004). A significant matter about Particle Swarm Optimization (PSO) algorithm is that this algorithm is naturally a continuous optimization algorithm. But in the current research, a discrete PSO approach presented by Kazemi and Tavakkoli-Moghaddam (2011) is used for multi-objective problems. In this approach, changing the particles position is done by crossover and mutation operators. It means that for each solution (particle) as a parent, three other solutions are generated as child and the best one is selected as the next position of a particle.

5.1 Solution representation

The first step in applying and implementing a meta-heuristic algorithm is to select an appropriate method for solution representations. Converting a solution from the solution space into a chromosome is named encoding and converting a chromosome into a solution from the solution space is named decoding. Then, a priority-based representation method according to a coding method used by Gen et al. (2006) for two-stage Transportation Problem (tsTP) solving is presented to represent the solution chromosomes of the current green supply chain problem. In the proposed method, for a transportation network composed of m sources and n depots, a feasible chromosome is considered as a (m + n) bit permutation. The values corresponding to each node is actually a priority given to that node to contribute to the construction of a transportation network tree. In this paper, the proposed chromosome will be considered for Multi-objective Particle Swarm Optimization (MOPSO) and Non-dominated Sorting Genetic (NSGA-II) in the goal of reaching a qualified output.

Because the proposed green supply chain includes five-stage, the structure of chromosomes is also composed of five segments. According to Fig. 1, the first segment is related to the first stage and shows the transportation network between production centers and distribution centers. The second segment is related to the second stage and demonstrates the transportation network between distribution centers and customer zones. The third segment is related to the third stage and displays the transportation network between customer zones and collection/disassembly centers. The fourth segment is related to the fourth stage and shows the transportation network between collection/disassembly centers and recycling centers. Finally, the fifth segment is related to the fifth stage and demonstrates the transportation network between collection/disassembly centers and disposal centers. In Fig. 2, a random sample of a chromosome is presented for the priority-based coding method in the current research in which the green supply chain has three production centers, two distribution centers, three customer zones, two collection/disassembly centers, two recycling centers and two disposal centers.

Fig. 2
figure 2

A random sample of a chromosome by priority-based coding method

The priority-based decoding method for converting a chromosome into a solution from the problem solution space in the current research is as follows:

Inputs:

ai:

capacity of sources in the forward flow (portable quantity from sources in the reverse flow)

 

bj:

demand on depots in the forward flow (receivable quantity in depots in the reverse flow)

 

cij:

transportation cost of one unit of product or components

 

cj:

holding cost in distribution centers for decoding the first segment of a chromosome or

  

   negative selling price during decoding the second segment of a chromosome or

  

   disassembly cost in disassembly centers for decoding the third segment of a chromosome or

  

   negative selling price in recycling centers for decoding the fourth segment or zero for

  

   decoding the fifth segment of a chromosome

 

ci:

production cost in production centers during decoding the first segment of a chromosome

  

   or holding cost in distribution centers during decoding the second segment of a chromosome

  

   or negative selling price in customer zones for decoding the third segment of a chromosome

  

   or disassembly cost in disassembly centers for decoding the fourth and fifth segments of a

  

   chromosome

 

ν:

chromosome

Output:

transportation network graph (xij)

Step 1:

put xij = 0; \(\forall\) i ∈ m, \(\forall\) j ∈ n

Step 2:

select a node with maximum priority; l = argmax{v(k),k ∈ m + n}

Step 3:

if l ∈ m, put j* = argmin{ci*j + cj, v(j + m) ≠ 0, j ∈ n} and i* ← l

   otherwise, put i* = argmin{cij* + ci, v(i) ≠ 0, i ∈ m} and j* ← l − m

Step 4:

put xi*j* = min{ai*, bj*}; bj* = bj* − xi*j* and ai* = ai* − xi*j*

Step 5:

if ai* = 0, v(i*) = 0; and

if bj* = 0, v(j* + m) = 0

Step 6:

during decoding the forward flow, if v(j + m) = 0, ∀ j ∈ n, stop; otherwise, return to step 2.

(during decoding the reverse flow, if v(i) = 0, ∀ i ∈ m, stop; otherwise, return to step 2).

It should be noted that in the chromosome of the current model, first, the second segment is decoded. Then, the first, third, fourth and fifth segments are decoded respectively. Also, the values of variables yigqfn and zigqfn are calculated by relations (20)–(25).

5.2 Crossover

Crossover operator applied in this research is the type of two cut points. In this crossover method, in each segment of two selected parent chromosomes, two cut points are selected randomly; so, each segment is divided into three parts. Therefore, children chromosomes are created by applying crossover operator on all segments of two parent chromosomes. According to Figs. 3, 4 and 5, for instance, we apply the two-point crossover operator only on the first segment of two parent chromosomes and show how to create the first segment of the first and second child. Similarly, these procedures are performed on the rest of the segments of parents’ chromosomes and finally the rest of the segments of children chromosomes are completed.

Fig. 3
figure 3

Step 1 representation for applying crossover operator

Fig. 4
figure 4

Step 2 representation for applying crossover operator

Fig. 5
figure 5

Step 3 representation for applying crossover operator

Consider the first segment of parents’ chromosome:

Step 1:

We randomly select two cut points for parents’ chromosome. Therefore, each parent is divided into three segments: left side, middle side, right side. Then, gens of the left side of the first parent are transferred to the left side of the first child. Similarly, the second child is also generated by the second parent.

Step 2:

For the middle side of the first child, gens of the second parent which are similar to gens of the left side of the first child are omitted. Then, among the rest of gens of the second parent, we start from the left and select gens based on the number of gens needed for the middle side of the first child. So, these selected gens are transferred to there. Similarly, the second child is also generated by the first parent.

Step 3:

Gens of the first parent which are similar to gens of the first child are omitted. Then, among the rest of genes of the first parent, we start from the left and select gens based on the number of gens needed for the right side of the first child. So, these selected gens are transferred to there. Similarly, the second child is also generated by the second parent.

5.3 Mutation

As shown in Fig. 6, in this research, mutation operator is the great displacement type. The performance of this operator is that two genes along each segment of the considered chromosome are randomly selected and the values of them are replaced with each other. According to the five-segment structure of the chromosome in this problem, mutation operator is applied on all segments of the parent chromosome. How to apply mutation operator on the first segment of the parent chromosome is shown in Fig. 6. This procedure is also done to the rest of the segments.

Fig. 6
figure 6

Great displacement mutation

5.4 Steps of the proposed NSGA-II algorithm

After determining a structure to represent the solution chromosomes of the problem, the first step of the algorithm is to generate initial population of solutions. Most of the population-based evolutionary meta-heuristic algorithms use a random approach to generate initial solutions. This approach is applied here. In the next step of the algorithm, generated population must be evaluated. In this step, first, generated chromosomes are converted into the equivalent solutions by described decoding methods. Then, each objective function is separately calculated to solutions. Finally, solutions ranking and putting them in various fronts based on the non-domination degree are done by the fast non-dominated sorting method. Also, crowding distance is calculated to solutions.

Among the solutions of each generation in NSGA-II algorithm, some of them are selected by the binary tournament selection method. In this method, two solutions are randomly selected from the population. Then, these two solutions are compared and the best one is finally selected. Selection criteria in NSGA-II algorithm are the rank of a solution and crowding distance related to the solution respectively. If the rank of a solution is less and its crowding distance is more, the solution is more optimum.

By the repetition of the binary selection operator on the population of each generation, a set of the members of that generation is selected to participate in crossover and mutation. Crossover procedure is executed on part of the set of selected members and mutation procedure is executed on the rest of the set; thus, a population of children is created through these two procedures. Then, this population is integrated with the main population. At first, the members of the new generated population are sorted in ascending order by the rank. But, the members of the population which have the same rank are sorted in descending order by crowding distance. The members from the head of the sorted list being equal to the number of the members of the main population are selected and the rest of the members of the population are omitted. The selected members make the population of the next generation. The mentioned cycle in this section is repeated until the termination condition is achieved and finally the members of the first front of the last generation are selected as the set of Pareto-optimal solutions.

5.5 Steps of the proposed MOPSO algorithm

Before pointing to the steps of MOPSO algorithm, it is necessary to introduce two notations used in it:

Pbesti:

The best positions in which particle i has been placed so far (Pareto-optimal archive of the best memory of particle i).

Gbest:

The best positions achieved by all particles’ experience (Pareto-optimal archive of the best overall memory of that generation).

All steps of MOPSO algorithm used in this research are explained here:

Step 1:

According to the number of initial population, solutions are randomly generated which show the position of each particle.

Step 2:

Each of the chromosomes of initial population is evaluated after decoding. Then, Pbesti as the best memory of particle i is put as the equivalent of current position of particle i.

Step 3:

The members of initial population are fronted based on their ranks and the members of the first front are saved as Pareto-optimal archive of the best overall memory of this generation.

Step 4:

Chance of the selection of each member of the first front as a selected member for applying crossover operator to generate the second child in the next step is calculated (Noori-Darvish et al. 2012).

Step 5:

For each members of initial population, three new solutions are generated as child and the best one is selected as the next position of a particle. The first child is created by crossing a particle with one of the members of its best memory archive (Pbesti). Because the considered problem is bi-objective, after comparing the new position of a particle with its best memory, none of these two positions may be superior to the other one in the next generations. Therefore, both of them are saved in that particle’s best memory archive and then, based on which members of this archive have more crowding distance, selected for crossing with the considered particle. The second child is created by crossing with one of the members of the current generation’s best overall memory archive (Gbest) and the third child is created by applying mutation on that particle (Kazemi and Tavakkoli-Moghaddam 2011).

Step 6:

Each particle’s best memory archive is updated by comparing that particle’s best memory archive with the new position of that particle.

Step 7:

After generating the new position for each members of initial population, the current generation’s best overall memory and the new position of all particles are fronted and the members of the first front are transferred to the next generation as updated current generation’s best overall memory Pareto-optimal archive.

Step 8:

If the termination condition of the algorithm is achieved, the last earned generation’s best overall memory is extracted as Pareto solutions obtained by this algorithm, otherwise return to step 4.

It should be noted that in the proposed algorithm in this research, no capacity restriction is enforced on the generations’ best overall memory Pareto-optimal archive. Hence, all best found solutions are kept and their chance of presence is not missed. Also, time is considered as the termination condition for both algorithms in order that both of them stop after passing the determined time.

5.6 Parameters setting of algorithms: Taguchi experimental design

Quality of a meta-heuristic algorithm extremely depends on the proper determination of its parameters. There are different methods for the determination of parameters in meta-heuristic algorithms. In this research, Taguchi experimental design has been used for parameters setting of developed algorithms (Taguchi 1986). After determining the number of experiments and how to combine parameters in each algorithm, by the selected array for each algorithm, algorithms are executed based on Taguchi design in the next stage. To compare and analyze the obtained results, it is necessary to introduce an indicator which can compare algorithms for various combinations of parameters. In this research, after providing the values of quality percent obtained by comparing the set of Pareto solutions of two algorithms in each combination of parameter, these values are given to MINITAB.14 software as inputs and analyzed by S/N indicator (ratio of signal to noise; signal indicates a desirable value and noise indicates a non-desirable value). The values of S/N ratios obtained for each level of parameter in each algorithm are depicted in Figs. 7 and 8. If the value of S/N is larger for a level of parameter, the algorithm has better performance in that level. According to the obtained results, tuned values for all parameters of algorithms are shown in Tables 1 and 2.

Fig. 7
figure 7

S/N ratios for different levels of parameters of NSGA-II

Fig. 8
figure 8

S/N ratios for different levels of parameters of MOPSO

Table 1 Tuned parameters for NSGA-II algorithm
Table 2 Tuned parameters for MOPSO algorithm

6 Computational results

To evaluate and compare the performance of the developed algorithms in this research, a scheme is used to generate the data for sample problems. As shown in Table 3, ten different sizes based on the number of periods, products types, production centers, distribution centers, customer zones, collection/disassembly centers, recycling and disposal centers are regarded for the problems; so, ten sample problems have been designed for testing. It should be noted that three predefined green design indicators and two predefined quality indicators are the same for all problems. Finally, test sample problems are solved by two proposed algorithms coded in MATLAB 7.0 on a Laptop Computer at Core i3-2.53 GHz with 4 GB of RAM and the performance of both algorithms are compared by special indicators of multi-objective problems.

Table 3 Structure of sample problems

The values of parameters used in the sample problems, except some parameters referred to specific reference, are generated randomly using uniform distributions specified in Tables 4, 5, 6, 7, 8, 9 and 10.

Table 4 Range of the values of some parameters used for sample problems
Table 5 Range of the values of some parameters used for sample problems
Table 6 Range of the values of parameters related to the score of product in the first problem
Table 7 Range of the values of parameter wigq
Table 8 Range of the values of parameter γ1igqn for the second problem
Table 9 Range of the values of parameter \(r_{{{\text{igqcn}}^{\prime } {\text{n}}}}\) for production period \({\text{n}}^{\prime } = 1\) for the second problem
Table 10 Range of the values of parameter \(r_{{{\text{igqcn}}^{\prime } {\text{n}}}}\) for production period \({\text{n}}^{\prime } = 2\) for the second problem
  • Reasonable procedure for generating data for parameters related to the score of product (referred to the score obtained by green design indicator (Rigfn) or quality indicator (\({\text{R}}_{\text{iqfn}}^{\prime }\)) for final products or the green scrap score (higqn) for scrapped products) is that it should be in [0, 1] and increases from a period to the next period. Because the considered problem is multi-period, the range ([0, 1]) is divided by the number of periods. Then, we start from the initial range for the first period and go on to reach the last range for the end of planning horizon. For example, consider the first problem with 9 periods; as mentioned above, 1/9 = 0.11. Therefore, the parameters related to the score of product in the first period are selected randomly using uniform distribution from (0.005, 0.11); then, the defined range is increased by the constant value 0.11 from each period to the next period. So, giving the values of the parameters in the first problem is according to the ranges specified in Table 6. It should be noted that the beginning of the range for the first period is not considered zero. Also, the values of these parameters for the rest of the problems are generated by the same procedure. Furthermore, the parameter related to the green scrap score is valued from period 2.

  • The value of parameter wigq for each type of product is selected randomly using uniform distribution from the ranges specified in Table 7.

  • The value of parameter γ1igqn must be increased from each period to the next period only based on the second green design indicator. Therefore, the value of this parameter is generated only based on this indicator and according to the calculation process of the score of product; the only difference is that this parameter isn’t valued in the first period. For example, consider the second problem with 10 periods. As mentioned above, 1/10 = 0.1. So, the value of this parameter in the second period is selected randomly using uniform distribution from (0.1, 0.2) and this defined range is increased by the constant value 0.1 from each period to the next period. Therefore, the values of this parameter in the second problem for different periods are based on data specified in Table 8. Also, the values related to this parameter based on the second green design indicator for the rest of the problems are generated by the same procedure. Furthermore, the value of this parameter for the rest of the indicators and all problems is selected randomly using uniform distribution from (0.05, 0.6) from the second period.

  • Parameter \({\text{r}}_{{{\text{igqcn}}^{\prime } {\text{n}}}}\) for production period \({\text{n}}^{\prime } = 1\) [the return of the products starts from period 2 (n = 2)] for the second problem is obtained randomly using uniform distribution from the ranges specified in Table 9. It shows that at the beginning of the planning horizon, the return rate in the primary periods is more than the end periods. But for production period \({\text{n}}^{\prime } = 2\) [the return of the products starts from period 3 (n = 3)], it is completely different, which means that the return rate in the primary periods is less than the end periods which shows the increase of the quality of products. Therefore, the value of the considered parameter for production period \({\text{n}}^{\prime } = 2\) is obtained randomly using uniform distribution from the ranges specified in Table 10. The same procedure is used for the rest of the production periods. For example, if \({\text{n}}^{\prime } = 3\), the return rate in the fourth period (n = 4) is obtained randomly using uniform distribution from (0.02, 0.06). We also use the defined ranges in Table 10 for the rest of the periods. Also, this procedure and these ranges are used for the rest of the problems.

6.1 Comparison indicators

The appropriate definition of criteria is very important to assess an algorithm. So, in this research, three quality indicators, namely Pareto front solutions, indicator of the distance (dispersion) between Pareto front solutions, and indicator of variety of Pareto front solutions have been used to compare the performance of two algorithms.

6.1.1 Quality indicator

Quality indicator has been proposed by Schaffer (1985). This indicator compares the quality of Pareto solutions obtained by each algorithm. Actually, this indicator fronts all Pareto solutions obtained by two algorithms and characterizes what percentage of the solutions of echelon (front) 1 belongs to each algorithm. The higher the percentage, the better the quality of the algorithm. The mean quality indicator achieved by three runs of each problem for two considered algorithms and total mean achieved by this indicator for both algorithms are reported in Table 11.

Table 11 Comparison of quality indicator for proposed algorithms (based on percentage)

6.1.2 Distance indicator

Distance indicator has been used by Srinivas and Deb (1994) and Coello Coello et al. (2007). This indicator helps to measure the uniformity in the distribution of Pareto points in the set of obtained Pareto solutions. Distance indicator is calculated as follows (Noori-Darvish et al. 2012):

$$SM = \frac{{\mathop \sum \nolimits_{i = 1}^{N - 1} \left| {\bar{d} - d_{i} } \right|}}{{\left( {N - 1} \right) \times \bar{d}}}$$
(27)

where di, Euclidean distance between the consecutive solutions in the set of Pareto solutions; \({\bar{\text{d}}}\), Mean distances; N, the number of solutions in the set of Pareto.

In comparing two algorithms, the smaller the distance indicator of an algorithm, the better that algorithm. The mean distance indicator achieved by three runs of each problem for two considered algorithms and total mean achieved by this indicator for both algorithms are reported in Table 12.

Table 12 Comparison of distance indicator for proposed algorithms

6.1.3 Variety indicator

Variety indicator has been used by Zitzler (1999). This indicator measures the distribution of the solutions in the set of obtained Pareto solutions. Its definition is as follows (Noori-Darvish et al. 2012):

$$D = \sqrt {\mathop \sum \limits_{i = 1}^{N} { \hbox{max} }\left( ||{x_{i} - y_{j}}|| \right)}$$
(28)

where \(||{x_{i} - y_{j}}||\), Euclidean distance between two Pareto solutions xi and yj; N, the number of objective functions.

In comparing two algorithms, the more variety of solutions in an algorithm, the better that algorithm. The mean variety indicator achieved by three runs of each problem for two considered algorithms and total mean achieved by this indicator for both algorithms are reported in Table 13.

Table 13 Comparison of variety indicator for proposed algorithms

According to the last row of Tables 11, 12 and 13 showing total mean achieved by quality, distance, and variety indicators of Pareto solutions for each algorithm, we conclude that NSGA-II algorithm has the best performance in quality and variety indicators and MOPSO algorithm has the better performance in distance indicator. Therefore, NSGA-II algorithm can generate more quality and various solutions in the considered problem. Users can choose one of them according to the indicator that is more proper for them. Moreover, users can choose one solution from the best rank that is gained via normalizing by \(\sqrt {(x_{i} - X)^{2} + (y_{i} - Y)^{2} }\) in which X and Y are the best amounts that are gained for the first and second objective function in the best rank and (xi,yi) are different solutions of the proposed rank.

7 Conclusion

Due to increasing importance of environmental issues in the supply chain network, this research presents a bi-objective nonlinear programming model in order to determine the flow of a green supply chain network with the aim of increasing total profit of the network and maximizing the sum of the score of products produced by green design indicators and quality indicators in the forward network and the green scrap score of scrapped products disassembled in the reverse network. In order to develop the products in the current model, two indicators about green design of a product and its quality for final products have been considered.

To solve the proposed model, Multi-objective Particle Swarm Optimization (MOPSO) and Non-dominated Sorting Genetic (NSGA-II) meta-heuristic Algorithms have been used with a priority-based coding method to represent the solution chromosomes. Because the appropriate selection of the values of parameters of algorithms is very effective to converge them on a good set of Pareto-optimal solutions, all parameters have been tuned by Taguchi Experimental Design method. Then, the performance of two algorithms has been investigated and compared for 10 sample problems by some special indicators of multi-objective problems. Computational results and solutions analysis based on the defined indicators showed that NSGA-II algorithm had the best performance in quality and variety indicators and MOPSO algorithm had the better performance in distance indicator. Therefore, NSGA-II algorithm can generate more quality and various solutions in the considered problem. It should be noted that in order to compare in the same condition, the comparison between algorithms was performed under the condition that the execution time of algorithms as the termination condition was considered the same for both algorithms.

To develop the current model and present new researches, we can add some strategic decisions such as the selection of production centers, distribution centers, and collection/disassembly centers to this problem. Furthermore, the parameters of the considered problem are deterministic. But in the real world, most of these parameters like demand are non-deterministic. So, a new problem can be presented by considering non deterministic parameters for this model. Also, in relation to the structure of the proposed algorithms, we can use the common method, that is, the introduction of two separate algorithms and a new hybrid algorithm as a combination of them.