Co-evolutionary particle swarm optimization algorithm for two-sided robotic assembly line balancing problem

Industries utilize two-sided assembly lines for producing large-sized volume products such as cars and trucks. By employing robots, industries achieve a high level of automation in the assembly process. Robots help to replace human labor and execute tasks efficiently at each workstation in the assembly line. From the literature, it is concluded that not much work has been conducted on two two-sided robotic assembly line balancing problems. This article addresses the two-sided robotic assembly line balancing problem with the objective of minimizing the cycle time. A mixed-integer programming model of the proposed problem is developed which is solved by the CPLEX solver for small-sized problems. Due to the problems in non-polynomial--hard nature, a co-evolutionary particle swarm optimization algorithm is developed to solve it. The co-evolutionary particle swarm optimization utilizes local search on the global best individual to enhance intensification, modification of global best to emphasize exploration, and restart mechanism to escape from local optima. The performances of the proposed co-evolutionary particle swarm optimization are evaluated on the modified seven well-known two-sided assembly line balancing problems available in the literature. The proposed algorithm is compared with five other well-known metaheuristics, and computational and statistical results demonstrate that the proposed co-evolutionary particle swarm optimization outperforms most of the other metaheuristics for majority of the problems considered in the study.


Introduction
Manufacturing companies extensively use assembly lines and the assembly process is considered to be one of the critical processes in manufacturing systems. 1,2 Different layout types (traditional straight line, Ushaped, two-sided, and parallel) have been widely utilized in industries based on the size and type of products. 3 For assembly of large-sized volume products, for example, cars, trucks, and buses utilize twosided assembly lines. When compared with traditional straight assembly lines, two-sided assembly line provides several advantages such as shorter assembly line length, reduced throughput time, less material handling, and lower cost of tools and fixtures. 4 In a two-sided assembly line, different assembly tasks are performed on the same product item in parallel at both (left and right) sides of the line. 5 Assembly lines can be of manually operated, automated, or of mixed design. Due to the tedious and repetitive nature of tasks performed in assembly lines, robots have replaced human labor and this helps in improving both the speed of assembly and quality of the products assembled. 6 Robots can be programmed to employ them for performing different types of tasks in assembly systems and these are called robotic assembly lines. Balancing assembly lines have, due to their prevalence in industry, become a critical process that aims at allocating work (task) to the workstations in such a manner that all workstations have an equal amount of task assigned to them. Most existing research is devoted to solving simple assembly line balancing (SALB) problems with different objective functions. 7,8 In the case of robotic assembly lines, an efficient balanced assembly line is very necessary since the investments in such assembly line are high and are typically based on long-term strategic decision. 9 Robotic assembly line balancing (RALB) problems are an extension of SALB problems. 6 RALB aims mainly at assigning tasks to the workstations and allocating the best fit robot to each workstation in such a way the productivity is improved. The two main types of RALB problems addressed by researchers are as follows: type-I RALB and type-II RALB. 6 Type-I RALB mainly aims at minimizing the number of workstations in an assembly line when cycle time is fixed and type-II RALB mainly aims at minimizing the cycle time when the number of workstations is fixed. 2 Researchers have classified assembly line balancing (ALB) problem in the category of non-polynomial (NP) hard. 10 Due to this nature of the problem, researchers have over the years proposed different techniques to solve ALB problems. A detailed literature overview of different techniques used to solve two-sided ALB and RALB is given in the following. The twosided ALB problem is initially proposed by Bartholdi. 4 Since then different techniques such as exact methods, heuristic, and metaheuristics methods have been proposed to solve this type of problem. Wu et al. 11 develop a branch-and-bound algorithm to optimize the twosided ALB and test the proposed model on well-known problems from the literature. Xiaofeng et al. 12 develop a branch-and-bound algorithm to solve the two-sided ALB problem with an objective of minimizing the length of the assembly line. A heuristic procedure named group assignment is proposed by Lee et al. 13 to maximize the work relatedness and the work slackness with little or any loss in cycle time and the number of workstations. Different metaheuristics have been proposed to solve the balancing problem in two-sided assembly lines. Kim et al. 5 propose a genetic algorithm (GA) to solve this type of problem. Tabu search algorithm, simulated annealing (SA) algorithm, particle swarm optimization (PSO), and bee algorithm have been proposed to solve different objectives in two-sided ALB problems. [14][15][16][17] The literature mentioned so far mainly deals with single model problems. A few researchers have focused on mixed and multi-model two-sided ALB problems and used metaheuristics to solve these problems. 18,19 The RALB problem is first addressed by Rubinovitz and Bukchin 20 who later proposed a branch-and-bound algorithm 21 to balance the robotic assembly line. Levitin et al. 6 propose to use GAs to solve RALB problem with the objective of minimizing the cycle time (type-II RALB). Gao et al. 9 develop a 0-1 integer programming problem for solving type-II RALB problem and also propose a hybrid genetic algorithm (hGA) to solve the proposed problem. Yoosefelahi et al. 22 propose a multi-objective model for RALB to minimize the cycle time, robot setup costs, and robot costs. They propose a new mixed-integer linear programming model to solve the problem and also propose three versions of multi-objective evolution strategies (MOES). Recently, Nilakantan et al. 2 and Nilakantan and Ponnambalam 23 use PSO algorithm to solve two types of layout of RALB problems and test the models on benchmark problems. In the case of two-sided assembly line with robotic systems with a mixed model, Aghajani et al. 24 propose a SA-based approach with an objective of minimizing the cycle time.
Although researchers have focused on two-sided ALB problems and RALB problems, the literature review suggests that very limited number of researchers focus on the two-sided robotic assembly line balancing problem (TRALB). Note that TRALB problems with the objective of minimizing cycle time as these types of assembly lines are widely used in a number of industries and optimizing this objective is a very critical process. Hence, the main focus of this article is to optimize cycle time of a TRALB problem. This article mainly presents four contributions to this research field: (1) A new TRALB (type-II TRALB) problem is proposed and a set of benchmark problems are generated. (2) A mathematical model for the proposed problem is presented and CPLEX solver is applied to obtain the optimal solutions for small-sized problems. (3) Co-evolutionary particle swarm optimization (C-PSO) as a metaheuristic method is developed to solve the proposed problem due to its NP-hard nature. The proposed C-PSO utilizes local search on the global best individual, modification of global best, and restart mechanism to emphasize intensification and exploration. (4) Solutions obtained using the proposed metaheuristic are compared with other well-known metaheuristic algorithms. From this study, it could be seen that the proposed metaheuristic algorithm performs better than other metaheuristic algorithms for most of the problems.
The remainder of this article is organized as follows. Section ''Problem description and mathematical model for TRALB'' presents the mathematical model and assumptions considered. In section ''C-PSO algorithm,'' a detailed implementation of the proposed metaheuristic algorithm is presented. Section ''Computational results'' presents the comparative study of the computational results and in section ''Managerial implications and conclusion,'' the findings of this research are concluded.

Problem description and mathematical model for TRALB
In this section, problem is described along with the assumptions considered in this study. Mathematical model of the addressed TRALB problem is discussed in detail.

Problem description and assumptions
Two-sided robotic assembly lines are usually utilized to produce high volume products, in which robots rather than human beings perform the tasks. This line has great ramifications in industry, such as car assembly, since it has larger flexibility in the face of diverse customers' demands by pre-programming the robots. This line can also preserve the quality of the assembled products since the robots can perform the tasks continually without the worries of fatigue.
In this line, the mated-stations are connected together with a material handling system and each mated-station comprises two facing workstations. A two-sided robotic assembly line is illustrated in Figure 1. In the given figure, there are four robots and eight tasks assigned to two stations in the two-sided assembly line. There are three types of assembly tasks which are to be performed at each workstation (L-type tasks, R-type tasks, and E-type tasks). L-type (R-type) tasks must be allocated to the left (right) side of a mated-station, whereas E-type tasks can be allocated to either side. Each workstation is allocated with a robot to perform the assigned tasks.
TRALB consists of two sub-problems: ALB and robot allocation. In the ALB, all the tasks must be assigned to workstations while satisfying the precedence relationship constraint, direction constraint, and cycle time constraint. In robot allocation, the best fit robot is allocated to each workstation to perform the assigned tasks optimizing one criterion. The assumptions considered for the proposed problem are listed as follows: 1. The assembly line is designed for a unique model of a single product. 2. The operation time of a task depends on the type of the assigned robot and it is deterministic. 3. Each workstation is allocated with one robot and the number of workstations is equal to the number of available robots. 4. Each task can be performed by any robot and each robot can be allocated to any workstation. 5. The setup times between tasks are ignored. 6. No work-in-process inventory is considered.

Notations
The following notations are used for the proposed problem.
Indices i, h, p: Tasks j, g: Mated-stations k, l: A side of the line; k = 1, left side 2, right side n (j, k): Station of mated-station j at side k R: Robot type Parameters nt: Number of tasks nm: Number of mated-stations nr: Number of robots I: Set of tasks, I = {1, 2, . ,i, . ,nt) J: Set of mated-stations, J = {1, 2, . ,j, . ,nm) R: Set of robot types, r = {1, 2, . ,j, . ,nm} t ir : Processing time of task i by robot r. AL: Set of tasks with left direction, AL 4 I AR: Set of tasks with right direction, AR 4 I AE: Set of tasks either direction, AE 4 I P 0 : Set of tasks that have no immediate predecessors P(i): Set of immediate predecessors of the task i Pa(i): Set of all predecessors of the task i Sa(i): Set of successors of tasks i S(i): Set of immediate successors of the task i c: Large positive number C(i): Set of tasks whose operation directions are opposite to that of task i :

PC:
Set of pairs of tasks and predetermined stations for positional constraint PZ: Set of pairs of tasks for positive zoning constraint NZ: Set of pairs of tasks for negative zoning constraint SC: Set of pair of tasks for synchronism constraint

Decision variables CT:
Cycle time x ijk : 1, if task i is assigned to mated-station j at side k; 0, otherwise y rjk : 1, if robot r is assigned to mated-station j at side k; 0, otherwise t f i : Finishing time of task i Indicator variables z ip : 1, if task i is assigned earlier than task p in the same station; 0, otherwise

Mathematical formulation of TRALB
A mathematical model for TRALB problem with an objective of minimizing cycle time is developed below with the objective of minimizing the cycle time based on the notations and the considered assumptions X k2K(i) The objective function (1) minimizes the cycle time. Constraint (2) ensures that each task is allocated exactly a side of one mated-station. Constraint (3) is the precedence constraint and constraint (4) is the cycle time constraint. Constraints (5)-(7) control the sequence-dependent finishing time. For a pair of task i and h, if h is an immediate predecessor of i on a same mated-station, then constraint (5) becomes active and it is reduced to t f i À t f h ! P nr r = 1 t ir Á y rjk . If a pair of task i and task h has no precedence relations and they are allocated to one same station, then constraints (6) and (7) become active. If task i is assigned earlier than task p, then constraint (6) becomes active and it is reduced to t f p À t f i ! P nr r = 1 t pr Á y rjk . Otherwise, constraint (7) becomes active and it is reduced to (8) ensures that the finishing time of task i is larger than or equal to the operation time of task i. Constraint (9) guarantees that only one robot is allocated to each station and constraint (10) enforces that each robot can be assigned to only one station. Constraint (11) handles the positional constraint. Constraints (12) and (13) deal with the positive zoning constraint and the negative zoning constraint, respectively. Constraints (14) and (15) enforce that each pair of tasks in the synchronism constraint is allocated to the opposite sides of a same mated-station with the same starting time.

C-PSO algorithm
The ALB problem is a well-known NP-hard problem. The proposed problem also falls under this category due to additional constraints. Hence, a metaheuristic based on PSO is proposed to solve them. Researchers have extensively implemented PSO algorithm (a population-based stochastic optimization technique developed by Kennedy and Eberhart 25 to solve ALB problems). The social behavior of bird flocking and fish schooling when they are in search of food serves as inspiration for the development of PSO. The major advantages of using PSO 26 compared to other metaheuristics are as follows: ease of implementation, robustness, and very few parameters to be fine-tuned for achieving the results. However, PSO algorithm may easily get trapped in a local optimum when tackling complex problems. 27 In this article, concept of co-evolution is incorporated to the standard PSO to suit the problem and is termed as C-PSO algorithm that is used to evaluate the problem addressed in this article.
The proposed C-PSO consists of two sub-swarms and each sub-swarm tackles one sub-problem. The two sub-swarms evolve alternately and only one sub-swarm evolves each time, while the other is kept fixed. To evaluate the individuals of a sub-swarm, the best individual of the other sub-swarm is taken as the context vector and then a solution can be constructed. The fitness of the individual and the context vector is regarded with the fitness of these individuals. Once each objective is calculated, the population can proceed with the evolution mechanism of PSO. Cooperative mechanisms of co-evolutionary algorithms are used and three improvement strategies are proposed: local search for the global best solution, modification of global best, and restart mechanism. Detailed implementations of the strategies are presented in the following section.

Solution representation
Nilakantan et al. 2 develop a task permutation-oriented encoding and decoding procedure for the robotic assembly line, and the robot which can finish the tasks with smallest time is selected. This method is practicable only for one-sided assembly line problems and this method will be very complex to be used in solving twosided ALB problems. This is due to the fact that in two-sided assembly line, there is an interference of the tasks on two sides of mated-station which cannot be ignored and the robots that can finish the tasks with smallest time need to be decided as a pair of two robots. Therefore, it is complex to obtain the best combinations for robots on each mated-station.
Hence, in this article, a new way of representing the solution is presented and it is described as follows: taking the first mated-station as example, 2nm 3 (2nm 2 1) combinations should be checked before selecting the best combination with smallest operation time. Therefore, two vectors m p and l p are utilized for task permutation and robot assignment, respectively, where p(p 2 f1, 2, . . . , PSg) is a solution in the population. An example for a 12-task problem with initial cycle time of 8 time units is depicted in Figure 2.
The vector l p determines the assignment of robots and each element represents a station. For instance, the number in the first position is 3 and thus, robot 3 is allocated to the first station (the left side of the first mated-station). The vector m p determines the task permutation and each element indicates a task. Task 3 is in the first position, and therefore, task 3 has highest priority and is allocated first. Once the two vectors are determined, the detail assignment of all the tasks is done using a decoding procedure which is explained as follows. Note that the cycle time constraint in Step 1 can be violated for the last mated-station so as to obtain a feasible solution and the largest finishing time of mated-stations is taken as current cycle time: Step 1: Decide whether assignable task exists and a task is assignable while satisfying constraints (2-8).
Step 2: If no assignable task exists, this procedure ends. Otherwise, execute Step 3. //Station selection mechanism Step 3: Obtain assignable task set for both sides and then execute Step 4.
Step 4: If only one side has an assignable task, this side is selected and go to Step 6. Otherwise, execute Step 5.
Step 5: Select the side with smaller ending time or select the left side by default when the capacities of both sides are equal. Then, execute Step 6. //Task selection mechanism Step 6: Delete tasks which result in idle times when there are tasks which can be operated at the earliest start time of the current station.
Step 7: Select the assignable task which is the former position of task permutation and then execute Step 1.
The improved decoding has mainly two features: station selection mechanism and task selection mechanism. The station selection mechanism selects the side with large capacity, which can lead to better balance of the two sides. The selection of the left side by default can reduce the search space to a large extent. The task selection mechanism deals with sequence-dependent idle times and guarantees that the tasks are assigned without generating idle times being selected at first.

Population evolution
Due to the discrete attribute of the ALB problem, the original PSO which is designed for continuous optimization problem cannot be applied directly. A transformation is necessary, and there are many methods published, including the random key method in Bean 28 and the method used by Nilakantan et al. 2 This article develops a simple population updating mechanism, which is described with the following two expressions for task permutation and robot assignment, respectively where h(m p ) or h(l p ) means the self-modification, g(h(m p ), m GBest ) or g(h(l p ), l GBest ) means updating positions to global best solution, g(h(m p ), m LBest ) or g(h(l p ), l LBest ) indicates updating positions to local best solution. These three operations respond to the initial velocity, moving to global best and moving to local best, respectively. Rand() is a random number between 0 and 1, and c is an acceleration coefficient within (0,1). h (*) is achieved with swap operator or insert operator and g (*, *) can be realized with crossover operator. In this article, the insert operator, swap operator, and two-point crossover operator are applied to h(m p ), h(l p ), and g (*,*), respectively, after testing insert operator, swap operator, one-point crossover operator, and two-point crossover operator. An example of two-point crossover operator for task permutation is depicted in Figure 3. After executing positions update, the greedy acceptance is applied to preserve the better one between new solution and incumbent one. This greedy acceptance is helpful to overcome prematurity and preserve the diversity of the population.

Local search for the global best
It is clear that the two sub-swarms interact through the global best, and the quality of global best affects the quality of the final solution to a large extent. Thus, a strong local search method is developed and it is executed only when a new global best is obtained. This local search permits the variation of only task permutation or robot assignment and also allows the variation of both task permutation and robot assignment. This allowance of modification of two vectors simultaneously can increase the search space to a large extent. The termination criterion is set as an iteration time fixed to the square of the number of tasks so that there is a large possibility for each task being allocated to all the possible positions. The procedure for the local search is presented in Figure 4.

Modification of global best and restart mechanism
The C-PSO algorithm is easily trapped into local optima if the current global best remains unchanged. To obtain a new global best, other particle in the population or a restart mechanism must be employed. This article develops two methods, called modification of global best and restart mechanism.
In the modification of global best, an individual in one sub-swarm cooperates with a neighborhood of the best individual of the other sub-swarm. For vector m p , a new solution is obtained by cooperating with m 0 GBest applied with a swap operator. After all the individuals in this sub-swarm for task permutation are tested, an individual in the other sub-swarm cooperates with m 0 GBest applied with the insert operator. This procedure can further explore the neighborhood of global best solution and the search space of other solutions. In fact, the similarity of global best and other individuals grows with each iteration and the above procedure can expand the search space. The modification of global best is applied when the global best has not been improved in ''u'' iterations and it continues only when a new global best solution is obtained.
If the modification of global best cannot further improve the global best, restart mechanism is utilized. It consists of two steps: replacing the repeated individual with a random generated vector and selecting the best combination (m p , l p ) 8p 2 f1, 2, . . . , PSg as the current global best. After involution, some repeated individuals may arise and thus, these individuals are replaced with a random generated vector. For the new global best, all combinations (m p , l p ) are tested and the best one is selected, which guarantees the quality of new global best. After generating a new global best, the local search in section ''Local search for the global best'' can be applied to further improve the quality of the global best. The restart mechanism is utilized only when global best has not been improved in u 0 iterations.

Overall procedure of the C-PSO
The proposed C-PSO is improved to solve the investigated problem with the incorporation of a restart mechanism and the modification of the best solution. The procedure of the C-PSO is depicted in Appendix 1.
Here, PS is the size of each sub-swarm, u is the number of iterations before carrying out restart mechanism procedure, and u is the number of iterations before executing modification on the best solution.

Computational results
This section aims at testing the performance of the proposed co-evolutionary algorithm and carries out a comprehensive comparison with different methods. First, the details of the benchmark problems and the metaheuristic algorithms are explained. In the later part of this section, details of the parameter calibration are presented. Then, the experimental results are described in detail and the performance of the proposed algorithm is compared with other algorithms using statistical techniques. Apply swap operator to robot assignment once; If (Rand () <0.5) Apply insert operator to task permutation once; Endif Apply greedy acceptance

Experimental design
Since there is limited literature dealing with two-sided robotic assembly lines, a set of benchmark cases are generated based on the well-known benchmark problems of two-sided ALB problems. Seven problems are modified from the original TRALB problems to suit the proposed problem. The details of the seven problems used are presented in Table 1.
P9, P12, and P16 are classified as small-sized problems and P24, P65, P148, and P205 are categorized as large-sized problems. The seven problems cover all the benchmark problems on two-sided ALB problem and there are several cases with different numbers of matedstation for each problem. The precedence diagrams and the preferred directions of tasks are taken from the literature directly. To fit to the proposed problem in the article, the operation time of task i by robot r is randomly generated between [t i 3 0.8, t i 3 1.2], where t i is the original published operation time in the abovementioned literature. Due to space constraints, the operation times of tasks by robots are not presented and they are available upon request.
To test the performance of the proposed C-PSO, five other competitive algorithms are selected, including PSO algorithm, a GA, 29 artificial bee colony (ABC) algorithm, 30 SA algorithm, 31 and a co-evolutionary genetic algorithm (C-GA). 29 PSO algorithm shares the same procedure as the C-PSO except for utilizing best individual of the other sub-swarm, and PSO has only one swarm. GA and ABC also have only one swarm, while C-GA has two sub-swarms and utilizes the best individual of the other sub-swarm for population evolution. GA, ABC, SA, and C-GA are selected since they have been applied to solve ALB problems, and they have been utilized to solve the problem with two subproblems, namely ALB and sequencing problems. All the algorithms are carefully re-implemented and a test campaign among them is carried out with three different stopping times (t = nt 3 nt 3 r ms, r = 10, 20, 30) on the seven problems. The termination criteria are set based on the computational time for decoding once which can be with multiple nt 3 nt approximately. This expression guarantees that the times of decoding are similar for different cases and three different termination criteria can make the result comparison more reasonable. All the algorithms are coded in C++ programming language on the platform of Microsoft Visual Studio 2012. The proposed algorithms are tested on computers with Intel(R) Core2(TM) CPU 2.33 GHZ and 3.036 GB RAM. All the programming is available upon request from readers.

Calibration of the algorithms
This section determines the best combination of parameters and shows the effectiveness of the improvement strategies in section ''C-PSO algorithm,'' including the local search for the global best solution, modification of global best, and restart mechanism. The C-PSO has five more parameters: the particle number in each swarm, the number of swarms, the acceleration coefficient (c), the consecutive iterations for modification of global best (u), and the consecutive iterations for restart mechanism (u). Based on preliminary experiments, the possible values of parameters are set as follows: particle number in each swarm with three levels (20, 40, and 60); number of swarms at three levels (4, 6, and 8); c at four levels (0.4, 0.5, 0.6, and 0.7); u at four levels (20, 50, 100, and 200); and u at four levels (20, 40, 60, and 80). All these levels result in a total of 3 3 3 3 4 3 4 3 4 = 576 different configurations and more configurations arise if three improvement strategies are considered.
To avoid tremendous computational time, other factors are fixed first and three improvements are tested: with or without utilization of the local search, with or without utilization of modification of global best, and with or without application of restart mechanism. To avoid over-calibration, one case of the largest problem (P205 with six mated-stations) is selected and each combination tests this case five times. Note that the combination of parameters for the largest case can be applied to the small-sized problem with the cost of large computational times. In the experiments, the algorithms with different parameters can obtain similar results for small-sized problems with the computational time increasing. Once these experiments are finished, the relative percentage increase (RPI) is applied to transfer the experimental data. The expression RPI = (Sol some À Sol best )=Sol best 3 100 is utilized to calculate the RPI, where Sol some is the solution by an algorithm for one case and Sol best is the best solution among all the algorithms for the same tested case. The multifactor analysis of variance (ANOVA) technique 32 is proposed to analyze these RPI values and select the best parameter combination after checking three hypotheses (independence of the residuals, homogeneity of variance, and normality of the residuals). As for the ANOVA results, the p value is an important factor Large-sized 205 Lee et al. 13 and the effect of different levels is significantly different statistically if the p value is less than a predetermined number (0.05 is set in this article). All the p values for three improvements are less than 0.05, and thus, they have important effect on the improved C-PSO. Based on the ANOVA results, the local search has the smallest p value, which suggests the local search has the most important effect on the final fitness. The mean plot of local search is depicted in Figure 5(a) with 95% Tukey's honest significant difference (HSD) confidence intervals. The mean plot suggests that the C-PSO with local search performs better than the one without local search. The mean plot of restart mechanism which achieves the second smallest p values is also plotted in Figure 5 It is observed that the restart mechanism can improve the performance of C-PSO statistically. Consecutively, the modification of the global best can also improve the performance of C-PSO. All the experimental results demonstrate the efficiency of the three improvements for C-PSO.
More experiments are carried out to select the best combination for five more parameters, and ANOVA technique is also applied to analyze the final results. The final combination used in this article is as follows: particle number in each swarm is 40, swarm number is 6, c = 0.5, u = 40, and u = 50.

Comparison of computational results among algorithms
This section details the campaign of experiments and analyzes the computational results. A total of 39 cases of the 7 problems are solved by each algorithm, and a total of 20 independent runs are performed for each case. The proposed problem is tested on the well-known metaheuristics such as GA, ABC, SA, and PSO. The proposed model is also tested on CPLEX optimization solver and it could be seen that optimal solution could be achieved only for the small-sized problems (P9, P12, and P16) and in the case of large-sized problems, CPLEX could not solve them due to longer computational time. The RPI (RPI = (Sol some À Sol best )= Sol best 3 100) is applied to transfer the computational results obtained through these metaheuristics and CPLEX. For small-sized problems, results obtained using the CPLEX solver are taken as Sol best . For large-sized problems, Sol best is the best solution among all algorithms within 20 times' run when r = 30 since there is no optimal solution available using CPLEX solver. The average RPI values of each problem for 20 runs are reported in Table 2, and the results for three termination criteria are all reported.
From Table 2, it is observed that the C-PSO performs well for all the cases regarding to the overall RPI values and it outperforms the others under all three termination criteria. If one focuses on the computational results with at r = 10, it can be seen that the first smallest overall RPI value belongs to C-PSO which is only 1.47% at r = 10, the second smallest RPI value belongs to PSO which is 1.52%, and the third smallest one corresponds to C-GA which is 2.52%. C-PSO obtains the smallest RPI values for the three small cases and largest-size case. GA, ABC, and SA show much worse overall RPI values, and the cooperative method C-GA obtains better results, which demonstrate the effectiveness of the cooperation for TRALB problems.
For other two termination criteria, r = 20, 30, it can be seen that all the algorithms can improve their results with more computational time, but SA as a local search method can improve only a little. The proposed C-PSO again achieves better overall RPI value than the other four methods. Based on the results in Table 2, it is reasonable to state that the proposed C-PSO method is a highly effective method for solving TRALB problems.
In order to show the interaction between the computational time and algorithms, a multifactor ANOVA test is carried out. The CPU times and the algorithms are set as two factors. To have a better picture, important four algorithms are compared; PSO, GA, C-GA, and C-PSO, and ANOVA results show that there is a significant difference among the two factors. The mean plots of the interaction of the two factors are plotted in Figure 6. It can be observed that the C-PSO outperforms the other three methods clearly for all three termination criteria.
The best results obtained by all metaheuristics for all the problem cases are reported and compared. Detailed results obtained for different cases for each problem are presented in Table 3. Table 3 also reports the optimal solutions (OPT) by CPLEX and the best results by algorithms at nt 3 nt 3 30 ms. In the case of the smallsized problems, all metaheuristic algorithms can obtain optimal solutions and they utilize much less computational time. However, CPLEX is not able to solve the large-sized problems while the near-optimal results obtained using the metaheuristic within acceptable computational time are presented.
The proposed C-PSO obtains the best results for almost all problems. In addition, the C-PSO obtains best results for almost all large-sized cases. Specifically, the C-PSO obtains best results for 22 cases of P65, P148, and P205, and C-GA obtains best results for one case of P65, P148, and P205. If the C-PSO is removed, PSO ranks second in the number of cases obtaining best result and the C-GA ranks third. The above comparison further demonstrates the exploration capacity of the C-PSO, PSO, and C-GA and also proves the superiority of the C-PSO over other methods regarding to the best cycle time.
To explain the superiority of the C-PSO, a detailed comparison is carried out on the evolution process on P205 with six mated-stations. Note that the restart mechanism for PSO and C-PSO is not employed in this case.
To obtain a better picture, parts of the algorithms are reported in Figure 7(a) and (b). Figure 7(a) depicts the best cycle time, and Figure 7(b) depicts the average results of the population. In Figure 7(a), it is observed that C-PSO outperforms the others from the beginning to the end of 1400 s and it can obtain better results with increasing computational time. The C-GA can also find better best solution, whereas the GA and ABC can improve a little or not improve after reaching 600 s. These results prove that the C-PSO has stronger capacity of finding a new best solution. In Figure 7(b), it seems that the PSO and ABC can converge fast, whereas there are also large deviations of the average results for GA, C-GA, and C-PSO. Nevertheless, this conclusion can be criticized due to the co-evolutionary mechanism for the C-GA and C-PSO. As mentioned in section ''C-PSO algorithm,'' the best individual of one sub-swarm is taken as the context vector to evaluate the individuals of the other sub-swarm. Once a new best individual is obtained, the best individual for one sub-swarm is updated and the combination of this new best individual of one sub-swarm and most of the individuals from the other sub-swarm may have poor performance resulting in a large average cycle time. However, if the best individual is fixed, the C-PSO can convergence within 300 s (0-300 s) for the first time, within 100 s (300 s-400 s) for the second time, etc. The PSO, on the contrary, takes more than 400 s (0-400 s) for convergence. Based on the results, it can be concluded that the C-PSO can converge fast once the new global best solution is found. As a matter of fact, the high efficiency of C-PSO results from two aspects: co-evolutionary mechanism and three improvements especially designed for TRALB on the C-PSO. This article utilizes two vectors, task permutation vector and robot assignment vector, to obtain a feasible solution. The co-evolutionary algorithm is more practical for optimizing several vectors simultaneously, and thus, the C-PSO outperforms the PSO. This conclusion is further proved by the advantage of C-GA over original GA. The C-PSO outperforms the C-GA in three aspects, namely the local search for the global best solution, modification of global best, and restart mechanism. The performance of C-PSO mainly depends on the quality of global best individual, and thus, the local search is developed to emphasize the intensification and obtain a high-quality global best solution. The modification of global best further explores the neighborhoods of the global best solution and the main feature is that an individual in one sub-swarm cooperates with a neighborhood of the best individual resulting in a much larger search space. The restart mechanism is utilized to avoid this algorithm trapped into local optima. These three improvements lead to the higher performance of the C-PSO over the C-GA.

Managerial implications and conclusion
Robotic assembly lines are being extensively used by industries due to the benefits such as flexibility and quality of the product. Two-sided assembly lines are being used mainly in automobile industries where large quantities of the same products are assembled. Optimizing cycle time is an important task in assembly lines and to the author's knowledge, there has been no work reported on optimizing cycle time for two-sided robotic assembly lines. This article presents a new type of TRALB problem with an objective of minimizing the cycle time. Optimizing cycle time is an important problem in manufacturing and industry would like to minimize the cycle time to improve productivity and reduce the production cost and throughput time. The proposed model in this article has significant managerial implications. Since the implementation of two-  sided robotic assembly line is a cost-intensive process, usage of this proposed model can help the managers or decision-makers at the industries to estimate the resources required for this type of assembly line configuration and their corresponding performance. This study will also help in balancing the resources required and performance of the TRALB. This proposed model can also help for better planning and control of activities in different scenarios.
Since this proposed problem falls in the category of NP-hard problem, a metaheuristic algorithm based on PSO approach is proposed. Co-evolution concept is incorporated to the standard PSO and new strategies to suit the problem are presented. Simulation experiments are conducted on seven modified benchmark data and the obtained results are compared with other well-known metaheuristic algorithms such as GA, PSO, and ant bee colony optimization. From the experimental study, it can be concluded that the proposed C-PSO algorithm obtains better solutions in terms of cycle time and computation time for most of the cases. Results obtained by CPLEX solver are also presented and it could be seen that the CPLEX could find optimal solutions for small-sized problems and the results obtained using C-PSO approach achieve optimal or near-optimal solutions for most of the problems.
In future work, realistic problems can be addressed to eliminate the gap between scientific research and practical implementations by considering more constraints in real application. New methods are also interesting to solve the multi-objective two-sided robotic assembly balancing problem, and the multi-objective cooperative co-evolutionary algorithm may be a good choice. The two-sided robotic assembly line with mixed and multi-models can also be proposed. Another research avenue is the ALB with both robotics and human beings which have great ramifications in industry.

Declaration of conflicting interests
The author(s) declared no potential conflicts of interest with respect to the research, authorship, and/or publication of this article.