1 Introduction

A classical supply chain refers to a broad set of activities associated with the transformation and flow of goods, services and information from the main source to customers (see [18]). Supply chain management includes the design of networks while determining positions of actors, optimizing amount of product flows between echelons and decreasing transportation costs. Network design process includes the location of facilities such as plants, distribution centers and retailers, design of the network configuration and satisfaction of customer demands (see [1, 11, 14, 32, 34]). There exists a rich scientific literature on the supply chain network design problem (SCND). Many mathematical models and heuristic algorithms have been developed to solve the SCND. These have gradually evolved from simple interchange schemes to more sophisticated metaheuristics, sometimes combining exact methods. Several survey articles have comprehensively reviewed and classified this rich literature from different perspectives. For a wealth of information on this topic, the reader is referred to the survey articles of [2, 19, 20, 24, 25, 28, 35] and the recent book of [36].

Assigning tasks to workstations while satisfying precedence relations between tasks and cycle time restrictions to optimize a performance measure is called as the assembly line balancing problem (ALB). This problem, in general, arises in the last stage of production processes. General performance of entire production systems is affected by the productivity level of assembly lines. The minimization of the number of workstation is generally considered as the performance measure. Three basic constraints of the ALB are as follows. The first one is the assignment constraints, i.e., each task must be assigned to one workstation. The second one is the precedence relations constraints, i.e., all precedence relations must be satisfied. The final one is the cycle time constraints, i.e., workstation workload must not exceed the cycle time. The workload is equal to the sum of the processing times of tasks in the related workstation. An assembly line consists of several successive workstations where assembly operations are performed for a particular product. The smallest portion of an assembly operation is called as task. Completion time, i.e., cycle time, of tasks in the workstations constitutes the largest work content of assembly lines. Cycle time depends on the product demand during a planning horizon. The objective is to assign all given tasks with respect to precedence and cycle time constraints while minimizing the number of workstations required. The first known formulation of the ALB has been made by Salveson [31]. This problem was later referred as the simple ALB by Baybars [7] which considers a single straight assembly line for only one type of product. Similar to the SCND, this problem has also been intensively studied in the literature. In recent years, many exact, heuristic and metaheuristic methods have been applied for solving the ALB (see [5]). For further details on the ALB and on its variants, the reader is referred to the survey articles of [6, 8, 9, 12, 15, 29, 33].

Gen et al. [13] studied the two-stage SCND and developed a priority-based genetic algorithm. The method includes several new decoding and encoding procedures, and a new crossover operator. Paksoy et al. [26] introduced the SCND with ALB (SCNDALB). The authors simultaneously consider both the SCND and the simple ALB first time in the literature. They formally defined the problem and proposed a mixed-integer nonlinear programming formulation to solve it. The objective minimizes the total cost of supply chain network and assembly operations. The authors conducted computational experiments on a small-size instance to demonstrate the effectiveness of the formulation. Paksoy and Özceylan [27] later introduced the SCND with U-type ALB. The study differs from [26] by considering U-type assembly line instead of straight one. The authors developed a nonlinear mixed-integer mathematical model and presented the results conducted on a small-size numerical example. Several scenarios were also created to analyze the problem and to provide several insights. Hamta et al. [16] considered the SCNDALB with demand uncertainty. The authors proposed a two-stage mixed-integer stochastic programming formulation which primarily based on two levels: strategic location decisions, as well as optimizing the SCNDALB with demand uncertainty. They combined a sample average approximation and several sampling procedures within the method. The results on new generated instances showed that the stochastic model yields better solutions than the deterministic model. The authors indicated that uncertainty is an important part of the formulation which can improve the quality of solutions. Yolmeh and Salehi [37] studied the SCNDALB under demand uncertainty. The authors developed a mixed-integer nonlinear programming formulation based on two-stage stochastic programming method and an outer approximation method. Their results showed the efficiency of the proposed method. Hamta et al. [17] later proposed a bi-level programming model to solve the SCNDALB with push-pull strategy where decisions such as production amount and inventory level of each component in manufacturers are made. The authors first tested the performance of the method on a numerical example and then conducted computational experiments on several problem instances.

To our knowledge, this brief review shows that the SCNDALB has already been solved only by Paksoy et al. [26] on a small-size instance. We believe there exists merit for the development of a metaheuristic capable of efficiently solving the problem for larger-size instances within short computation times. This paper studies and analyzes the joint impact of assembly line balancing in a two-echelon supply chain. It makes three main scientific contributions. Our first contribution is to develop an evolutionary algorithm (EA). Our second contribution is to carry out computational experiments on generated instances ranges from small to large sizes. Our third contribution is to provide managerial insights in order to gain a deep understanding into the interactions between the components of the problem.

The remainder of this paper is structured as follows. Section 2 provides a general description of the problem and the mathematical formulation. Section 3 contains a detailed description of the metaheuristic. Computational experiments and analyses are presented in Sect. 4, followed by conclusions and managerial insights in Sect. 5.

2 Problem definition and modeling

In the SCNDALB, one considers a multi-echelon supply chain with multiple manufacturers, components, assemblers, customers, multiple period time horizons and with a set of products to be manufactured or assembled, as well as assembly lines with stations. The problem consists of designing a network to minimize the total transportation costs between echelons for each period and the total fixed costs of stations in assemblers while determining the assignments of tasks to assembly lines. The supply chain network design and assembly line balancing problems are integrated through using cycle times which is the required time to complete a given process. Figure 1 illustrates the problem.

Fig. 1
figure 1

An illustration of the SCNDALB. a Supply chain network. b A straight and single assembly line

The main assumptions of the problem are as follows. The first four assumptions are commonly used for the SCND in the literature, while the others are the general assumptions of the ALB.

  • Each customer has a positive demand which must be fully satisfied, i.e., shortages are not allowed.

  • Customer demands and transported materials are divisible such as in the case of gas or liquid products.

  • The material flow is only allowed between two sequential echelons, i.e., from manufacturers to assemblers or from assemblers to customers.

  • Each manufacturer and assembler have a limited capacity.

  • Assembly lines produce one type of product which consists of several components.

  • Each assembler has a variable cycle time.

  • Operators travel times are considered zero.

  • Work-in-process inventory is not allowed.

  • A task cannot be split, and all tasks must be processed.

  • The precedence relations of the problem are known.

  • Any task can be processed at any station.

  • Each process of the tasks has same costs.

  • The task process time is independent of the station, and they are not sequence dependent.

  • Serial lines are considered which have no feeder or parallel subassembly lines.

  • Process times are additive at any station.

  • Each model of a single product is processed on a specifically designed line.

2.1 Notations

We now present the indices, sets, parameters and decision variable of the formulation as follows.

Indices:

  • m: index of manufacturers.

  • a: index of assemblers.

  • c: index of customers.

  • p: index of periods.

  • irs: index of tasks.

  • j: index of workstations.

Sets:

  • M: number of manufacturers.

  • A: number of assemblers.

  • C: number of customers.

  • P: number of periods.

  • K: number of components.

  • J: number of stations.

  • N: number of tasks.

  • L: set of tasks that precedes from a task.

  • \((r,s) \in L\): a precedence relationship; r is an immediate predecessor of s.

Parameters:

  • \(t_i\): completion time of task i (time units).

  • \(W_{\mathrm{time}}\): working time in period p (time units).

  • \(a_{\mathrm{mkp}}\): capacity of manufacturer m for component k in period p (units).

  • \(b_{\mathrm{ap}}\): capacity of assembler a in period p (units).

  • \(u_{\mathrm{cp}}\): demand of customer c in period p (units).

  • \(C_{\mathrm{map}}\): unit cost of shipping from manufacturer m to assembler a in period p (monetary units (MU)).

  • \(C_{\mathrm{acp}}\): unit cost of shipping from assembler a to customer c in period p (MU).

  • \(D_{\mathrm{ma}}\): distance between manufacturer m and assembler a (distance units).

  • \(D_{\mathrm{ac}}\): distance between assembler a and customer c (distance units).

  • O: fixed cost to open a station in the assembly line in all periods (MU).

Variables:

  • \(X_{\mathrm{makp}}\): amount shipped from manufacturer m to assembler a for component k in period p.

  • \(Y_{\mathrm{acp}}\): amount shipped from assembler a to customer c in period p.

  • \(V_{\mathrm{aijp}}\): if task i is assigned to workstation j for assembler a in period p be equal to 1, and to 0 otherwise.

  • \(Z_{\mathrm{ajp}}\) if a task assigned to workstation j for assembler a in period p be equal to 1, and to 0 otherwise.

  • \(CT_{\mathrm{ap}}\): cycle time for assembler a in period p.

2.2 Mathematical formulation

A nonlinear mixed-integer programming formulation of [26] for the SCNDALB is shown below:

$$\begin{aligned} \displaystyle \hbox {(SCNDALB) Minimize}&\sum _{m \in M} \sum _{a \in A} \sum _{k \in K} \sum _{p \in P} X_{\mathrm{makp}} D_{\mathrm{ma}} C_{\mathrm{map}} + \sum _{a \in A} \sum _{c \in C} \sum _{p \in P} Y_{\mathrm{acp}} D_{\mathrm{ac}} C_{\mathrm{acp}} \end{aligned}$$
(1)
$$\begin{aligned}&+ \sum _{a \in A} \sum _{j \in J} \sum _{p \in P} Z_{\mathrm{ajp}} O \end{aligned}$$
(2)

subject to

$$\begin{aligned} \sum _{a \in A} X_{\mathrm{makp}} \le a_{\mathrm{mkp}}\quad&m \in M, k \in K, p \in P \end{aligned}$$
(3)
$$\begin{aligned} \sum _{c \in C} Y_{\mathrm{acp}} \le b_{\mathrm{ap}}\quad&a \in A, p \in P \end{aligned}$$
(4)
$$\begin{aligned} \sum _{a \in A} Y_{\mathrm{acp}} \ge u_{\mathrm{cp}}\quad&c \in C, p \in P \end{aligned}$$
(5)
$$\begin{aligned} \sum _{m \in M} X_{\mathrm{makp}} - \sum _{c \in C} Y_{\mathrm{acp}} = 0\quad&a \in A, k \in K, p \in P \end{aligned}$$
(6)
$$\begin{aligned} \sum _{j \in J} V_{\mathrm{aijp}} = 1\quad&a \in A, i \in N, p \in P \end{aligned}$$
(7)
$$\begin{aligned} \sum _{j \in J} V_{\mathrm{arjp}} - \sum _{j \in J} V_{\mathrm{asjp}} \le 0\quad&a \in A, (r,s) \in L, p \in P \end{aligned}$$
(8)
$$\begin{aligned} \sum _{i \in N} t_i V_{\mathrm{aijp}} \le CT_{\mathrm{ap}}\quad&a \in A, j \in J, p \in P \end{aligned}$$
(9)
$$\begin{aligned} CT_{\mathrm{ap}} = W_{\mathrm{time}} / \sum _{c \in C} Y_{\mathrm{acp}}\quad&a \in A, p \in P \end{aligned}$$
(10)
$$\begin{aligned} \sum _{i \in N} V_{\mathrm{aijp}} - J Z_{\mathrm{ajp}} \le 0\quad&a \in A, j \in J, p \in P \end{aligned}$$
(11)
$$\begin{aligned} X_{\mathrm{makp}}, Y_{\mathrm{acp}}, CT_{\mathrm{ap}} \ge 0\quad&m \in M, a \in A, k \in K, c \in C, p \in P \end{aligned}$$
(12)
$$\begin{aligned} V_{\mathrm{aijp}}, Z_{\mathrm{ajp}} \in \{0,1\}\quad&a \in A, i \in N, j \in J, p \in P. \end{aligned}$$
(13)

The first term of the objective function (1) represents the total transportation costs of the first and second echelons for each period. The second term of the objective function (2) reflects the total fixed operating costs of stations in assemblers for each period.

Constraints (3) limit the total quantity of components shipped from manufacturers to assemblers. Constraints (4) enforce that the total quantity of product shipped from assemblers to customers cannot exceed the capacity of assemblers for each period. Constraints (5) satisfy the customer demand for all products for each period. Constraints (6) state that the total quantity of components shipped from manufacturers to assemblers must be equal to the total quantity of shipped products from assemblers to customers for each period. Constraints (7) ensure that each task is assigned to exactly one station in all assemblers for each period. Constraints (8) state the precedence relationship by assigning task r as an immediate predecessor of task s in all assemblers for each period. Constraints (9) guarantee that cycle time for a station cannot be exceeded for each period. Constraints (10) ensure that for all periods the cycle time is equal to the total working time which is divided by the total quantity of products. Constraints (11) state that if any task assigns to station j, it is in use for each assembler and for each period. Constraints (12) and (13) define the domains of the decision variables.

3 Description of the evolutionary algorithm

This section describes the EA to solve the SCNDALB. The EA builds on several powerful evolutionary-based metaheuristic algorithms (see [3, 4, 10, 13, 2123]).

The general structure of the EA is sketched in Algorithm 1. Initialization procedure generates the initial population (line 1). Two parents are selected (line 3) through a binary tournament process, and a crossover operation creates a new offspring C (line 4). The mutation procedure is applied to offspring C (Line 5). Each task is then assigned to assembly lines (line 6). Offspring C is then inserted into the population (line 7). As new offsprings are added, the population size \(n_a\) which is limited by \(n_p + n_o\), changes over the iterations. The constant \(n_p\) denotes the size of the population initialized at the beginning of the algorithm, and the constant \(n_o\) denotes the maximum allowable number of offsprings that can be inserted into the population. If the population size \(n_a\) reaches \(n_p+ n_o\) at any iteration, then a survivor selection mechanism is applied (line 8). When the number of \(\varpi\) iterations without improvement in the incumbent solution is reached, the EA terminates (line 9).

figure a

The remainder of this section introduces the main components of the EA. Representation and evaluation of the solution are given in Sect. 3.1. Section 3.2 presents the initialization of the population, the selections of parent solutions, a segment-based crossover operator and mutation procedure. Finally, the assembly line balancing procedure is described in Sect. 3.3.

3.1 Representation and evaluation

We adapted the priority-based encoding of [13] for the SCNDALB to represent our solutions within the population. A solution consists of priorities of first echelon including manufacturers and assemblers, and second echelon including assemblers and customers. A solution is a single-dimensional array, and numbers in there represent the priority of each node. The length of this array is equal to the total number of echelons. We generate the transportation tree on a given solution by sequential arc appending between levels. Assemblers are first opened to satisfy customer demands where each tasks are assigned to stations. Manufacturers are then shipped required components to assemblers. The fitness value of each solution is calculated by using Eqs. (1) and (2). These fitness values are used to select survivors during the algorithmic iterations. An illustration of the priority-based encoding is given in Fig. 2. In priority-based encoding, each chromosome in the population consists of two parts. The first part represents transportation tree between manufacturers and assemblers, and the second part represents transportation tree between assemblers and customers. In Fig. 2, we consider the problem that has four feasible manufacturers, three feasible assemblers and four customers. As it can be seen in Fig. 2, the first and second parts of chromosome consist of seven digits. We first decode the second part of chromosome since the total demand of customers has to be satisfied by assemblers. We simultaneously obtain transportation tree on this stage and decision related with which assemblers will be opened. We then obtain transportation tree on the first stage considering assemblers which were opened in the second stage. To satisfy the demand of assemblers, required numbers of manufacturers opened in this stage. For further implementation details on representation and evaluation, the reader is referred to [13].

Fig. 2
figure 2

An illustration of the priority-based encoding

3.2 Genetic operators

The EA randomly generates the initial population. It randomly selects two parents from the population through a binary tournament to yield offspring C and keeps a parent having the best fitness value. Two parents then undergo to the segment-based crossover operator which aims to preserve good gene segments of both parents. Each echelon of offspring C is randomly selected with equal chance over echelons of parents. These crossover operators use a binary mask where its length is equal to the total number of echelons. To transfer the genetic materials from parents to offspring C, binary variables 0 and 1 are used, while 0 implies the first parent and 1 implies the second parent will transfer its genetic materials to the offspring C. An illustration of the segment-based crossover operator is given in Fig. 3a.

Population diversity plays a significant role in the efficient management of solutions. A segment-based mutation procedure is applied to offspring C where the priorities of two nodes are replaced to diversify the solution. The mutation operator first randomly selects an echelon using a binary mask as in the crossover operator, then randomly selects two nodes from this echelon, and finally exchanges their priorities with using swap method. An illustration of the segment-based mutation operator is given in Fig. 3b.

Fig. 3
figure 3

An illustration of the crossover and mutation operators. a Crossover b Mutation

The EA uses the survivor selection method (see [2123]) to ensure the diversity of the population and to preserve the best solutions. The EA starts with an initial population of size \(n_p\), and after each iteration an offspring is added to the population. When the current population size \(n_a\) reaches the maximum allowable size \(n_p + n_o\), the survivor selection mechanism is put in place. This mechanism then selects \(n_p\) and discards \(n_o\) individuals from the population. The removal of \(n_o\) individuals is based on their fitness value where the best individuals are protected.

3.3 Assembly line balancing

When the cycle time for each period is determined, each task must be assigned to the stations in assemblers. We used a similar procedure to [30] to allocate tasks which includes two steps. In step 1 (Fig. 4a), we first randomly order each task and then transform it into a feasible solution according to a precedence relationship. In step 2 (Fig. 4b), we divide and assign the tasks to stations considering the cycle time.

Fig. 4
figure 4

An illustration of assembly line balancing. a Ordering procedure. b Division procedure

4 Computational experiments and analyses

This section presents the results of computational experiments. All computational experiments are conducted on a server with Intel Xeon 2.6 GHz processor. The EA is coded in C++.

4.1 Data sets and experimental settings

Evolutionary algorithms use a set of correlated parameters. We have conducted several experiments to further fine-tune these parameters. Following these tests, the following parameter values were used in our experiments: Since one offspring is generated by crossover and mutation operators at each generation, the crossover rate is set to 1, and the segment-based mutation is applied to offspring with the probability of 0.5. An initial population of size \(n_p = 50\), and the maximum number of allowable offsprings in the population \(n_o = 50\).

Benchmark data sets for the SCNDALB were generated by considering a similar procedure to [26]. In total, we generated 20 benchmark instances which consist of suppliers, assemblers and customers. In assemblers, we consider a single-model eight-task assembly line of [26] and the precedence diagram is shown in Fig. 5 where the task times range from two to six minutes.

Fig. 5
figure 5

Precedence diagram [26]

Manufacturers produce seven different components and transport them to assemblers to produce end-products. When the assemble process is finished in assemblers, end-products are transported to customers. For each period, the distances between suppliers to assemblers and assemblers to customers, and unit transportation costs were randomly generated in the range [250, 600] and [0.1, 0.3], respectively. Components capacities of manufacturers for each period and for each component were randomly generated in the range [6000, 8000]. Capacities of assemblers and demand of customers were randomly generated in the range [4000, 7000] and [1200, 1600], respectively. Fixed cost to open a station in the assembly line in all periods is fixed to 100 (MU). Total number of periods, components, stations and tasks are two, seven, eight and eight, respectively.

4.2 Validation tests

We have conducted preliminary experiments on benchmark instances which are generated by Paksoy et al.  [26] to assess the accuracy and the quality of the EA. To this end, we have compared the solution values of the EA with the optimal values obtained by Paksoy et al. [26]. The authors considered a single-model eight-task assembly line balancing problem (see Fig. 5) and the following data \(M=4, C=4, P=2, K=7, J=6, N=8, O=0.3\) MU, a period is 3 months or 12 weeks, and 5 working days in a week with 8 working hours in 1 day. In total, W time = 12 × 5 × 8 × 60 = 28,000 min.

We first solved the base instance of POG12 ([26]) and present its results in Table 1. These results clearly indicate that the EA yields optimal solution on this instance within short computation time.

Table 1 Results of validation test on the base instance

We have conducted additional validation tests on Scenario A of POG12. In this scenario, the authors five times decreased and five times increased the customer demand ranges between 5 and 25 %. The results are presented in Table 2. As in the base case, the EA is able to find optimal solutions on most of the instances within short computation time. The results of validation tests clearly show that the EA is highly effective on the SCNDALB.

Table 2 Results of validation tests on Scenario A of [26]

4.3 Results obtained on the test instances

This section presents the results obtained by the EA on 20 new generated benchmark instances. Table 3 presents the results for each instance where the columns display the number of manufacturers (|M|), number of assemblers (|A|), number of customers (|C|), total number of opened stations in periods 1 and 2, total transportation costs in periods 1 and 2, total cost and time (s). In these instances, for manufacturers, assemblers and customers, |M|, |A| and |C| range from four to 140, two to 130 and four to 140, respectively. Table 3 indicates that total number of opened stations, total transportation costs and total costs increases from instance 1 to instance 20. Solution times also follow similar magnitude which ranges from 1.97 seconds to 217.32 seconds.

Table 3 Results on the benchmark instances

4.4 Comparison of classical and integrated approaches

This section comparatively analyzes the classical approach in the literature and our integrated approach for solving the problem. In the classical approach, we first solve the SCND and yield a result about the amount shipped from a manufacturer to an assembler. We then determine the cycle time value of the assembly line in related assembler depending on this amount, i.e., the outputs of the SCND are used as inputs for the ALB. Integrated approach means the SCNDALB. We conduct experiments on five instances, SCNDALB-1, SCNDALB-2, SCNDALB-3, SCNDALB-4 and SCNDALB-5. Table 4 presents the results of this comparative analysis. It can be clearly seen from Table 4 that the SCNDALB, i.e., integrated approach, has cost advantage over the classical approach. On average, the total cost is decreased by \(-\)4.88 %. The computation times are similar magnitude.

Table 4 Results of comparative analysis

4.5 The effect of variations in customer demand

In this section, we analyze the effect of variations in customer demand. To this end, we have conducted experiments using four different versions of the customer demand. In these tests, we decrease the customer demand by 30 and 15 %, and increase it by 15 and 30 %. The experiments were conducted on selected five instances SCNDALB-1, SCNDALB-5, SCNDALB-10, SCNDALB-15 and SCNDALB-20. Dev\(_{\mathrm{TC}}\) (%) and Dev\(_{\mathrm{OS}}\) (%) show the percentage deviation, between no-change case and change case, in total cost and in number of opened stations, respectively.

Looking at the results in Table 5, it is clear that total cost is decreased when the customer demand is decreased, and total cost increased when the customer demand increased. When we decrease the demand by 30 and \(15\,\%\), the average decrease in total cost is \(-\)28.38 and \(-\)14.80 %, respectively. When we increase the demand by 15 and 30 %, the average increases in total cost are 16.44 and 37.22 %, respectively. These results indicate that demand increase results in transportation of more products from manufacturers to customers via assemblers. Reversely, demand decrease results in transportation of less products to customers. We observe a similar situation in the total number of opened stations. Increase in demand decreases the cycle time in each assembler and results in opening new assembly stations for to satisfy this additional customer demand. When we increase the demand by 15 and 30 %, the average number of opened stations is increased by 6.96 and 12.80 %, respectively. When we decrease the demand by 30 and 15 %, the average opened stations decreased by \(-\)20.26 and \(-\)8.11 %, respectively. Again, these results show that variations in customer demand directly affect the number of opened stations in assemblers and transportation costs between manufacturers, assemblers and customers.

Table 5 The effect of decreasing and increasing customer demand

4.6 The effect of variations in manufacturer capacity

We now investigate the effect of variations in manufacturer capacity. To do so, we have conducted experiments using four different versions of the manufacturer capacity. We decrease them by 30 and 15 %, and increase them by 15 and 30 %. As in Sect 4.5, the experiments were conducted on the same five instances.

Table 6 presents the results of this experiment. When we decreased manufacturers capacity by 30 %, on average the total cost is decreased by 2.07 %. However, on average the total cost is increased by 1.93 % when we decreased manufacturers capacity by 15 %. Similarly, on average the total cost increased by 1.50 and 4.20 %, when we increased manufacturers capacity by 15 and 30 %, respectively. These results indicate that change in the total cost ranges from \(-2.07\) to 4.20 %, which is not as high as Table 5. We can conclude that variations in manufacturer capacity do not have the same effect on total cost as variations in customer demand. Our results also show that when we decrease the capacity by 30 and 15 %, on average the number of opened stations in assemblers are decreased by 6.19 and 1.97 %, respectively. On the other hand, when we increase the capacity by 15 and 30 %, on average opened stations are increased by 3.93 and 5.71 %, respectively. These results indicate that the number of opened stations in assemblers follows a similar pattern to the variations in manufacturer capacity.

Table 6 The effect of decreasing and increasing manufacturer capacity

4.7 The effect of variations in assembler capacity

This section analyzes the effect of variations in assembler capacity. To this end, we have conducted experiments on selected five instances using four different versions of the assembler capacity. We decrease their capacity by 30 and 15 %, and increase by 15 and 30 %.

Table 7 shows the effect of decreasing and increasing assembler capacity. When we look at the percentage deviation in the total cost, it is clear that we reach similar results as in Table 6. When we decrease the assemblers capacity by 30 %, on average the total cost is increased by 6.53 %. On the other hand, the total cost is decreased by 1.05, 0.43 and 2.12 %, when we decrease the capacity by 15 %, increase by 15 and 30 %, respectively. As in Table 6, variations in assembler capacity do not have the same effect on total cost as variations in customer demand. Table 7 shows that when we decrease the capacity by 30 %, on average number of opened stations in assemblers are decreased by 5.23 %. On the other hand, when we decrease the capacity by 15 % and increase by 15 and 30 %, on average opened stations are increased by 1.61, 9.53 and 11.37 %, respectively. These results indicate that the number of opened stations decrease, when we decrease the assembler capacity by 30 %. However, it does not follow the same pattern for 15 % decrease.

Table 7 The effect of decreasing and increasing assembler capacity

5 Conclusions and managerial insights

We have studied, analyzed and investigated the joint impact of assembly line balancing in a two-echelon supply chain network. We have developed an evolutionary algorithm (EA) to solve the problem. We have carried out computational experiments and analyses in order to gain a deep understanding into the interactions between the components of the problem. We have derived managerial insights by investigating the effect of various problem components on total cost and number of opened stations in assemblers. In what follows, we summarize our main conclusions.

Our algorithm is able to solve small- to large-size instances, with up to 140 manufacturers and customers, and with up to 130 assemblers, within reasonable computation times. The EA yields the highly competitive solutions on benchmark instances of [26] within short computation time. Our comparison between the classical and integrated approaches clearly shows that the SCNDALB has cost advantage over the classical approach. The analyses quantify the benefits of using the integrated approach.

In supply chain network, as expected, our experimental results indicate that customer demand increase results in transportation of more products from manufacturers to customers via assemblers and customer demand decrease results in transportation of less products to customers. We have also shown that variations in manufacturer capacity and in assembler capacity do not have the same effect on total cost as variations in customer demand.

We have demonstrated that increase in customer demand decreases the cycle time in each assembler and results in opening new assembly stations for to satisfy this customer demand. Our results shows that the number of opened stations in assemblers follows a similar pattern to the variations in manufacturer capacity. However, when we decrease the assembler capacity by 30 %, the number of opened stations decreases, but it does not follow the same pattern for 15 % decrease. These analyzes show that variations in customer demand, in assembler capacity or in manufacturer capacity, directly affect the number of opened stations in assemblers and transportation costs between manufacturers, assemblers and customers.

Our results depend on the parameter values used in the experimental design. Beyond our computational experiments, we indicate the importance of the availability of our method which is capable of analyzing the trade-offs between assembly line balancing and two-echelon supply chain network design. Further studies should focus on to improve the assembly line balancing process of the metaheuristic algorithm by using new and effective heuristic procedures to gain some cost benefits.