Genetic Algorithm-based Task Allocation in Multiple Modes of Human-Robot Collaboration Systems with Two Cobots

In this paper, we introduce a human-robot collaboration (HRC) mold assembly cell to cope with small-volume mold production and reduce the risk of musculoskeletal disorders (MSDs) on a human worker during manual mold assembly operation. Besides, the wide variety of types and weights of the mold components motivated us to design an HRC system that consists of two robots. Therefore, we propose two collaboration modes for HRC systems using two robots and develop a task-allocation model to demonstrate the application of these collaboration modes in the mold assembly. The task-allocation model assigns a task based on the task characteristics and capability of agents in the collaboration cell. First, we decompose the assembly operation into functional actions to analyze the characteristics of tasks. Then, we obtain the agent assignment preference based on task characteristics and capability of agents using the analytic network process. Finally, we apply the genetic algorithm in the final task allocation to minimize assembly time, use of a less capable agent, and ergonomic risk. This paper contributes to expanding the HRC system with two robots in the mold assembly to allow the execution of a greater diversity of tasks and improve the assembly time and MSD risk level for the human worker.


Introduction
Automated manufacturing is shifting towards an intelligent manufacturing concept with the introduction of the Industry 4.0 strategy [1]. In other words, manufacturing operations require high flexibility and adaptability of automation systems to deal with the rapid changes in customer demand, products, and processes [2]. However, traditional automated systems using industrial robots are inflexible to adapt to a dynamic manufacturing environment. Although traditional automated systems have high performance in mass production, they are not suitable for implementation in low-volume production. Frequent changes in demand increase the cost and technical limitations owing to changes in the layout and robot programming for new products and the integration of safety systems. Therefore, human-robot collaboration (HRC) systems have become a potential solution for improving production performance from the aspect of quality and flexibility in automated operations.
Most of the industries implemented the common single robot HRC (1H:1R) system, where one human collaborates with one robot. Single-robot HRC systems have been implemented mostly in electronic and automotive part assembly, but the HRC system remains unusual in traditional heavy industries such as the mold industry. The mold-making industry is a common traditional manufacturing industry that has increased the use of automated equipment to survive during the evolution of Industry 4.0. However, mold assembly has traditionally been performed manually because it requires personnel with a comprehensive understanding of the mold structure. The mold assembly is the most critical step in the mold-making process to ensure the functionality of a mold. Every mold is unique and customized according to the technical requirements provided by the customer. Furthermore, the tight tolerance within the mold and the variety of mold components increases the complexity of automating the assembly operation. Owing to these factors, the flexibility and adaptability of human workers are necessary for mold assembly. However, manual operation leads to the possibility of fatigue and human error because of heavy material handling and repetitive motion with force exertion during the mold assembly. These activities during the mold assembly increase the risk of musculoskeletal disorders (MSD) on the human worker. Hence, the application of an HRC system that Noname manuscript No. (will be inserted by the editor) consists of a human and a collaborative robot (cobot) is a potential solution in the mold assembly. The integration of a cobot solves the human ergonomics problem and ensures the safety of a human worker [3]. At the same time, the assistance provided to the human by a cobot improves the quality of production and provides flexibility to the HRC work cell to cope with small-volume production in the mold-making industry [4]. In other words, the application of the HRC system ensures configurability and adaptability, especially in small-scale production, and reduces the need for physical strength in operators [5].
Recently, more robot manufacturers expanded collaborative robot solutions by increasing the payload capability of collaborative robots. Application of HRC in heavy industries can be designed by using one cobot with a high payload. However, the dimension and weight of the cobot increase with the payload capability. In other words, a cobot with a higher payload requires a wider workspace and usually, it must be installed on the floor. Even though we can consider a cobot with a high payload to take over all weighthandling tasks in the mold assembly, but heavy robot weight and fixed installation limit the reconfiguration of the HRC assembly cell to cope with the wide variety and size of mold structure. Also, the variety of tasks required to handle different components in-mold assembly, such as lift and place a plate, pick, and insert pin-shaped components, insert a pin with force and tighten screws, require frequent changes of the tool on the robot in the case of implementing single robot with high payload. If we consider the lower robot payload, then, the weight-handling task needs to be executed by a human and cobot simultaneously. However, it is not sufficient to eliminate the ergonomic risk in the human. Therefore, we decide to use two-cobot with lower payload in the HRC mold assembly operation to trade-off the weight-handling using a high payload cobot with the reconfiguration capability and reduce the frequency of tool changes on cobots during the mold assembly.
Before the task allocation, the potential automated or collaborative tasks are determined based on the ergonomic assessment. Most of the existing research related to HRC task allocation considered the resource availability and robot suitability, such as reachability [6,7] and payload [8]. Those potential tasks that cannot be performed by the robot due to limitations in robot suitability are usually assigned to the human worker. However, this kind of task allocation may not be able to eliminate the MSD risk in humans. The common single cobot HRC assembly cell has only three alternative agents which are human, cobot, or a human with a robot. Whereas the implementation of the two-cobot HRC assembly cell proposed in this study has six alternative agents which are human, cobot 1 or 2, a human with cobot 1 or 2, or cobot 1 with cobot 2. This means that the task allocation for two-cobot HRC operation is more complex than the common due to the capability of each agent and the tool availability on each cobot. Therefore, the main objective of this study is to develop a task-allocation model by considering the mold assembly task characteristics and the resource, i.e., the agent's capability to perform a task. We first decompose the tasks into functional actions and group the actions into nine categories based on the component's geometric, tolerance and action required. Subsequently, we analyze the characteristics and capability of the agent to determine the agent assignment preference for each category using the analytic network process (ANP). We then develop a genetic algorithm (GA)-based task allocation that aims to optimize the processing time, ergonomic risk, and capability of agents that perform tasks. The contribution of this paper is the three-level GA-based task allocation that can be implemented in different HRC modes. In the case study, we applied the developed task-allocation model to 1H:1R and two types of 1H:2R HRC mold assembly setups to compare the performance of the different HRC modes with the manual assembly.
The background and related research of this study is presented in section 2. Section 3 proposes three different tworobot HRC collaboration modes, whereas section 4 explains the consideration of task characteristics and agent capability in the task allocation model and the description of GA-based task allocation. Section 5 presents the application of the proposed task allocation in different collaboration modes. Finally, Section 6 concludes this paper and discusses the future work.
2 Related research 2.1 Multi-human and multi-robot collaboration system HRC assembly systems have been implemented in various sectors such as the automotive and aircraft [9][10][11][12], electronics [13], and mechanical assembly industries [14]. Most of the existing studies related to HRC systems considered sequential or simultaneous collaborations between one human and one robot in an assembly cell or an assembly line. However, only a few researchers have focused on multi-robot or multi-human collaboration systems. Chen et al. [15] presented a subtask allocation of a two-layer box assembly by one human with one robot assembly cell and extended the application to one human with two-robots assembly. The main limitation in their study was they did not consider the collaboration between the two robots. Tsarouchi et al. [7] conducted a case study on the sealing of refrigerator operation with two humans and two robots. In their study, the robots executed the task with the guidance of the humans. Another case study conducted by Tsarouchi et al. [16] considered placement of the hydraulic pump using one human and two robots HRC system where the robots were controlled by the gesture of the human. However, both case studies did not consider the collaboration between humans and robots on the same task. Bogner et al. [17] proposed an application of an HRC system consisting of three humans and a robot for the printed circuit board production. In contrast, a collaboration among a human and three cobots is implemented in the HRC assembly station by Malik et al. [18]. In addition to the application of multi-robots and multi-humans, collaboration among a dualarm robot and three humans has also been proposed in the HRC assembly station of Ding et al. [19]. The tasks executed by the robots in this research were to pick and place the parts to the human. However, more variety of collaborative tasks that can be performed by the agents in the multi-human or multi-robot need to be studied to expand the practical implementation of the HRC system in various industries.
Multi-human or multi-robot HRC systems are more complex than single human-robot systems because more alternatives for agents which are human and robots to work with each other. Therefore, the roles of agents and collaboration modes in the multi-human or multi-robot collaboration system must be defined to ensure the safety and smoothness of the collaborative operation. Wang et al. [14] classified an HRC scheme based on agent multiplicity and the initiative of agents. They defined agent multiplicity as single, multiple, or team and the agents can be active, supportive, or inactive during the collaboration. Although a few research related to multihuman or multi-robot HRC systems have been proposed, the collaboration modes and agents' roles during a practical assembly operation are yet to be defined. Besides, the existing research did not consider all possibilities of collaboration in the proposed multi-robot HRC assembly. However, the collaborations of different agents in a multi-robot HRC system have different levels of task execution capability. Furthermore, the types of tasks considered in the existing research are limited because the tool change on the robot was not considered. Thus, in this study, we consider collaboration among all agents that available within the one human and two robots HRC mold assembly cell. Tool change on both robots will be considered to widen the variety of tasks that can be executed by the robots. We also present two different collaboration modes which are multi-station and flexible modes for the two-cobot HRC application in the case study.

Task allocation in HRC systems
Task allocation focuses on the assignment of the task to a certain resource, whereas task scheduling focuses on assigning different tasks to each resource over time. This study focuses on task planning and allocation of multi-robot HRC systems in the mold assembly. Before the implementation of the HRC system, we need to identify the need for an HRC system in manual operation and perform task and resources analysis of the defined HRC system.

Task and resource analysis in HRC assembly
Reduction of human work fatigue and attention during the assembly operation is one of the main purposes to implement the HRC system [15,18]. Therefore, most of the research identified the potential collaborative tasks in the HRC system based on the assessment of the ergonomic factors. There are many ergonomic assessment methods used in existing research to evaluate manual work such as the National Institute for Occupational Safety and Health (NIOSH) regulations [8] and Rapid Upper Limb Assessment (RULA) [20]. These tasks with high ergonomic risk to the human are the potential tasks to be assigned to the robot to reduce the MSD risk to the human worker. Bruno and Antonelli [13] classified the tasks into four classes, which are executable only by a human, executable only by a robot, executable only by human or robot, or executable mandatorily by both a human and a robot. Then, the tasks are assigned to resources based on the availability of resources. Li et al. considered parts, human, and robot characteristics in the disassembly task allocation. They allocated parts that required high flexibility and difficult to disassemble to humans and parts that required repeatability, heavy loading, and toxicity to the robot [21]. Mateus et al. [22] decomposed the assembly operation into six levels that start from an operation, subassembly, task, function, function stage, and motion levels using the information from a CAD model. Then, a resource capability assessment is performed to identify the supporting role of the operators. Heydaryan et al. [20] applied the analytic hierarchy process (AHP) to identify the potential of HRC for each task and Hierarchical Task Analysis (HTA) to allocate operational tasks to humans and robots. However, AHP is not suitable to be applied in the HRC mold assembly because there is a relationship among the criteria used to decide the agent to be assigned. Malik and Bilberg [23] identified the automated potential for gear wheel assembly based on the physical features of components and its task description. However, they did not consider the collaboration of human and robot as the resources in the assembly. The criteria used in the existing research for resource suitability analysis are the workspace factor, human factors, the capability of the robot, and part characteristics. Workspace factors refer to the HRC work floor space [24] and layout analysis [25]. Human factors include ergonomic assessment, human muscle strain [7], and human fatigue [20][21][22]. For the analysis of a robot's capability, the criteria included are the robot's reachability [7,24] and the robot's payload [5]. Part characteristics affect the resource suitability in terms of weight and dimension [26].
In the previous research, the capability analysis of humans and robots was separated. However, the capability of humans with the robot also needs to be evaluated since there is a possibility of collaboration of humans with a robot in the HRC system. Therefore, we categorize the agent available into a human, robot, human with a robot, and robot with a robot to analyze the capability of these alternatives. In this paper, we divide the analysis criterion into skill and part requirements, where the skill requirement indicates the skill needed to perform the task and the part requirement indicates the part characteristics that must be handled in each task. Furthermore, most of the methodologies in the existing research focus on assigning only one suitable resource for a task, and tool changes on the robot are not considered. If the resource is unavailable to perform the assigned task, then there will be a delay in production. Besides, tasks that cannot be performed by the robot will be assigned to the human. In this paper, we consider all the agents available for the operation and evaluate the capability of these agents for task execution. Then, we generate the agent preference for task allocation using the ANP. The agent preferences are ranked based on the task characteristics and agents' capabilities.

Application of Genetic Algorithm (GA) in HRC task allocation model
Task allocation is an optimization problem based on the defined multi-objectives. GA algorithm is widely used in multiobjective task allocation problems with proven performance from the aspects of time savings and efficiency [27][28][29]. Therefore, HRC-related research also applied GAs to the task allocation problem of the HRC systems. Bänziger et al. [30] focused on optimizing the waiting time and traveling distance in HRC automotive assembly lines. Dalle Mura and Dini [31] aimed to minimize the cost, number of skilled workers, and energy load variance in an assembly line. Weckenborg et al. [32] developed a hybrid GA-based cobot allocation and human workload distribution to minimize cycle time. In their study, they assigned tasks to the stations in an assembly line and decide on the stations where the robots will be allocated. Their result showed that the allocation of robots to certain stations increased the productivity of the assembly line. Besides, Chen et al. presented a GA-based subtask allocation to a human or a robot for the HRC assembly cell to minimize the time cost and operational cost [15]. They measured the performance of the implemented HRC system based on waiting time, production time, mean flow time, and cost.
Reduction of cost and assembly time are the common objectives in the existing research. However, the capability of the human, robot, and their collaboration, as well as the ergonomic risk factor need to be considered in the HRC task allocation. Therefore, in this study, we consider the processing time, tool change time, ergonomic assessment score, and capability of an agent to perform a task in the GAbased task-allocation model. We use the GA to optimize the total assembly time, assignment of capable agents, and ergonomic risk in the HRC mold assembly operation.

Consideration of task characteristics and capability of agents in the task-allocation model
As mentioned in the literature review, most of the HRC systems implemented are common single-cobot HRC systems, and task allocation is based on the reachability and payload of the cobot, ergonomic risk factor, and resource availability. However, we propose a 1H:2R HRC system to match the requirements of the mold assembly operation. The assignment of tasks to the agent alternatives in different collaboration modes is more complicated because each alternative has a capability level to perform a functional action. Fig. 1 illustrates the task-allocation model for the proposed HRC system. At Level 1, we decompose the mold assembly operation based on the Bill of Material (BOM) into functional actions and categorize the functional actions into nine categories (Section 3.1). At Level 2, we analyze the characteristics of functional actions in the mold operation to generate a list of agent preferences for each category of functional action using Analytic Network Process (ANP). The agent preference represents the capability ratio of an agent to perform a functional action. This list will be input to the GA with the functional action processing time of agents to execute the final task allocation (Section 3.2). Then, Level 3 is the implementation of the GA algorithm to allocate functional actions to agents based on processing time, tool change time, and ergonomic risk score (Section 4).

Task decomposition
The proposed task-allocation model for the HRC system starts with the task decomposition of the assembly operation into sub-assemblies (Level 1). Fig. 2 describes the task decomposition of a two-plate mold assembly. Each subassembly is decomposed into a series of tasks based on the bill of material. A task consists of a series of functional actions that are required to assemble a component. A functional action is defined as the action performed by an agent on a specific part [34].
A two-plate mold assembly operation is composed of core and cavity sub-assemblies. The core and cavity subassemblies are decomposed into thirteen tasks with thirty-one functional actions and six tasks with 13 functional actions, respectively. For example, the 'Assemble location ring' is one of the tasks in cavity sub-assembly. To complete this task, we need to lift and position the location ring on the sprue. Because the location ring is fixed using screws, we also need to pick and insert screws and then tighten the screws. Therefore, the 'Assemble location ring' task has a total of three functional actions. We categorized functional actions into nine types based on the action on the part, tolerance, and force exertion required for functional action to evaluate these functional actions using ANP (Table 2). Types A, B, and C are functional actions of the lift and position plate with rough, fair, and tight tolerance, respectively. Pick and locate components with fair and tight tolerance are categorized into types D and E. We consider the guide pin, sprue, ejection pin and other similar parts as components. Types F and G are the functional actions related to screw handling. Functional actions with force exertion are categorized into types H and I.

Generation of agent's capability ratio for functional action using ANP
At Level 2, we analyze the characteristics of each functional action categories that obtained from Level 1, then use ANP to generate the capability ratio of each alternative to executing certain functional actions. The capability ratio is defined as the preference index of an agent to execute a functional action. We evaluate the skill and part requirements of each functional action type, as listed in Table 2. We also analyze the capability of agents based on the same requirements. The part characteristics include the positioning tolerance and the weight of the part to be assembled in a functional action. The skill requirement consisting of ergonomic risk assessment score based on RULA, level of force exertion and supporting requirement of the functional action. Although all the tasks are executable of the human, but if the ergonomic risk score is high on certain task, it will lower the capability ratio of the human to execute the task. In this paper, we use ANP instead of AHP because the criteria in the HRC system influence each other, and hence, affect the task allocation for an agent. In this study, we use the SuperDecisions software developed by the Creative Decisions Foundation [33].
The designed ANP network consists of four clusters: assignment, part, skill, and alternative clusters (Fig. 3). The assignment cluster has a node that indicates the functional action type. Skill and part clusters are the criteria that indicate the characteristics of the functional action as well as the capability of agents [34]. Hence, the assignment cluster affects part and skill clusters. The part cluster consists of tolerance and weight nodes, and the skill cluster consists of ergonomics, force, and support nodes. Among the nodes in part and skill clusters, positioning tolerance affects force and support, and part weight affects the ergonomic factor. In this paper, we focus on the HRC assembly cell that consists of one human and two cobots (1H:2R). Therefore, the alternative cluster indicates the agents available in the collaboration mode for functional action assignment has nodes that represent human, robot, human with robot and two robots. The part and skill characteristics affect the assignment of functional actions and selection of agent. At the same time, the capability of an agent affects the fulfillment of characteristics which indicates how well the agent handles these characteristics. A human worker performs better in functional actions that requires support and tight positioning tolerance, but weak in force exertion and heavyweight handling. Human with robot agent is preferable for tight positioning tolerance of a heavy component. Single robot is suitable for positioning light component at tight tolerance position and screw-tightening, but the heavyweight handling capability is limited by the robot payload. Two robots are preferred to handle heavyweight, but not preferable for action that requires support due to the tool limitation. Therefore, there are two ways in which skills and alternatives clusters indicate these relationships.
The output of the ANP is the ANP synthesized priority preference index of each agent in executing the functional action. The ANP synthesized priority is then normalized to a range from zero to one using the min-max normalization formula. The normalized value is defined as capability ratio which represent the agent preference index for each functional action that will be input to GA task allocation algorithm. Table  1 shows the calculation example of the capability ratio for "Lift and position plate with rough tolerance" functional action. In this paper, we aim to maximize the assignment of functional action to capable agent. Therefore, we exclude the agent with least capability ratio (zero) from the agent alternatives. Refer to Table 1, capability ratio of single cobot (R) for the functional action equal to zero, hence it is excluded from the agent list. Table 2 summarizes the agent preferences and its respective capability ratio for the nine categories of the functional actions that explained in Section 3.1.

Mathematical model
The two-plate mold assembly consists of tasks that can be performed by K agents. All tasks are processed in a predetermined order given in the assembly operation. A total of Ai functional actions is required to complete the task. The assumptions are as follows. 1. The tasks are independent and strictly follow the predetermined assembly sequence, i.e. (j+1)th functional action only can be executed after jth functional action has been completed. 2. Each functional action can only be performed by an agent. 3. The only setup time is the time required for changing an end-effector by the robot itself when necessary. The time for end-effector change is set as 15 s and is excluded in the processing time.
We first introduce the following notation to formulate our task assignment problem mathematically. Three objectives can be achieved in this task-allocation model. First, we aim to minimize the total assembly time for assembling a two-plate mold. Second, we must maximize the capability of agents that are assigned to all tasks [34]. Third, minimize MSD risk on the human worker. The first objective is as follows: ), for all k, j=1, 2, …, N ≥ ( +1 + ), for all k, j = 1, 2, …, N (4) ∑ 4 =1 = 1, for all k, j = 1, 2, …, N (5) = 0 or 1, for all k, j=1, 2, …, N Constraint (1) defines the calculation of the assembly time of each functional action j, which is the sum of processing time and the setup time of functional action j. The processing time of functional actions by human are collected from the practical assembly operation, while the processing time by cobot or human with cobot are simulated using Visual Components simulation software. The setup time follows Assumption 3 as explained above. As the processing time depends on the agent k that executes the action, constraint (2) indicates that the agent with the shortest processing time is selected to minimize the total assembly time. The setup time described in the assumptions is defined in constraint (3), where the setup is required when the tool used in the current functional action is different from that used in the previous action. Constraint (4) implies the (j+1)th functional action can only be executed after jth functional action has been completed. The assumption that a functional action can only be assigned to an agent is represented by Constraint (5).
The second objective in this paper is to maximize the capability of agents to perform all tasks. In other words, we aim to assign the functional action to the agent with a higher capability to execute the action. This is to avoid the assignment of a functional action to a less capable agent that can cause errors, delays, and ergonomic injury during execution.
Constraint (7) defines the capability ratio of the agent k to perform the functional action j. Capability ratio is defined as the preference index of an agent to execute a functional action ( Table 2). The agent's capability for functional action j is the maximum capability among all the agents available. We calculated the capability ratio of each functional action by using min-max feature scaling on the value from ANP analysis as explained in Section 3.2. The value is between 0 and 1 and must not be less than zero ( > 0) because we excluded the agent with least capability in the assignment of a functional action, as stated in constraint (8). The capability ratio of the operation is the sum of the capability ratio of each functional action, c_j, corresponding to the assigned agent.
The third objective is to minimize MSD risk on the human worker during mold assembly. As mold assembly operations involve mainly the use of the upper limbs, we decided to use RULA to evaluate MSD risk in this study. Besides, RULA is easy to implement without any complex calculation; hence, RULA is used to identify manual tasks with high MSD risk scores. In the RULA guidelines, the scores are rated from 1 to 8 in ascending order of MSD risk as stated in Constraint (9).

Implementation of GA
Our task-allocation model aims to achieve three objectives. Minimization of the cycle time per unit mold is the common objective in most task-allocation problems [34]. In this paper, we also aim to minimize the assignment of functional actions to an agent with low capability and to minimize MSD risk to the human worker during the mold assembly operation. These objectives are related. The cycle time for each functional action depends on the agent who executes the functional action. Assignment of a functional action to an agent with higher execution capability may cause delays owing to tool change and the speed of the agent. In contrast, an assignment of a functional action to an incapable agent will cause malfunction of the cobot or stoppage during the assembly operation. Hence, we must optimize these objectives to execute an assembly operation using the capable agents within an optimum cycle time. GAs have been widely applied for solving this type of multiobjective optimization problem to find the best trade-off between multiple competing objectives. GAs are flexible and easy to apply with a reduced computational time because they do not require any complex formulation. The GA provides the optimal solution by random searching associated with selection, crossover, and mutation operations through a set of candidate solutions [35]. We programmed the GA for our task-allocation model using the Python programming language. Once we obtain the priority ranking of agent assignment for types of functional actions listed in Table 1, we perform assignment of each functional action to an agent using a GA. Fig. 4 shows the chromosome structure of the GA. The number of genes in the chromosome equals the number of functional actions N to be executed in a sub-assembly operation. The sequence of genes represents the sequence of functional actions. Each gene indicates the agent allocated to each functional action. The agent who has zero capability ratio for a task is excluded at the generation of random initial population.
The fitness function f of each chromosome with the three objectives described previously is defined as: Because our problem is a minimization problem, a lower fitness value f means a higher level of fitness. We set the weights value using the Analytic Hierarchy Process (AHP) priority calculator [36]. Table 3 shows the result from the AHP priority calculator based on the relative importance among three objectives. The weights of each objective are defined as , , and , where = 0.6, = 0.3 and = 0.1. The first objective is to minimize the assembly time of the assembly operation. Assembly time is defined as the sum of the processing time and tool change time of each functional action j in the assembly operation. If the functional action j is assigned to an agent that consists of a robot, we must identify the tool that is attached to the robot to check whether it requires changing. A tool change time will be added if the tool attached to the robot is different from the tool that is required to perform the function action j. Equation (11) represents the normalized fitness value of cycle time minimization which is calculated based on min-max scaling method.
The second objective is to maximize the capability of each agent to execute the assigned functional action. The normalized fitness value of the maximization of capable agent assignment is the ratio of the sum of capability ratio of each functional action to the sum of the maximum capability ratio of whole operation. As the maximum of a functional action, j is equal to 1.0, the sum of the maximum is equal to the total number of functional actions in an operation, N. The normalized fitness of second objective, is calculated based on min-max scaling method. However, we program our GA as minimization of all objectives; hence, we converted the equation into a minimization problem by one minus the normalized fitness value: In other words, the objective can be explained as minimizing the assignment of functional actions to an incapable agent which is represented by Equation (12).
The third objective is to minimize the MSD risk, i.e., minimize the RULA score in each functional action. Equation (13) shows the normalized fitness of MSD risk minimization, which is calculated based on min-max scaling method. The maximum sum of RULA score of each functional action j is the sum of RULA score of the manual mold assembly, r h j, where all functional actions are performed by the human worker:

Fig. 5 Crossover example
After pilot runs, we set the GA parameters as follows: the population size is 200 and the number of generations is 500. First, we randomly generate the initial population. As one of the objectives is to minimize assignment to an incapable agent, we need to eliminate the selection of the incapable agent during the generation of the initial population. We perform this step by removing the agent with zero capability ratio from the list of genes that input to the generation of the initial population. In this paper, we use tournament selection to select the fittest candidates from the current generation and pass them to the next generation. At each generation, we chose 10 individuals from the population at random. The best individual from the tournament with the lowest fitness value is selected for the crossover because our problem is a minimization problem. Then, we apply the K-point crossover, where K is the number of breakpoints between each task. In other words, K equals the number of tasks minus one. For example, six tasks are consisting of 13 functional actions in the cavity sub-assembly; hence, K is equal to 5. Because the crossovers are performed based on the tasks, the rule that we set for eliminating an incapable agent during the initial population generation is still valid during the crossovers (Fig. 5). The crossover probability is set as 1.0, which means that all offspring are made by crossover. Swap mutation is applied to exchange two genes that randomly selected in the same individual with a mutation rate of 0.001.

Case study
In this paper, we focus on the implementation of multistation 1H:2R(M) and flexible 1H:2R(F) collaboration modes in the mold assembly. We collected the processing time data for manual two-plate mold assembly operation from a practical mold assembly video on YouTube [37]. The processing time of functional actions by the cobot and the collaborative operation were collected by simulating the actions using Visual Components. The dataset of the processing time, capability ratio, and MSD risk score by the alternative agents in performing functional actions are summarized and input to the developed GA model. Table 4 summarizes the agent alternatives for the collaboration modes proposed in this paper. H represents the human worker; R1 and R2 represent cobots 1 and 2, respectively; C1 and C2 represent the collaboration between a human and cobots 1 and 2, respectively; and J represents the collaboration of both cobots.
After we obtained the result from the GA model, we simulated the task allocation using Visual Components. The purpose of the simulation was to evaluate the assembly time and human utilization of the task allocation result. Therefore, detailed robot programming was excluded from the simulation model. The other evaluation criteria for the entire HRC mold assembly operation, such as average capability ratio and average MSD risk score, were calculated based on the agent assigned to each functional action. We simulated the same mold type to compare the implementation of 1H:1R and proposed a multi-station and flexible collaboration mode in the mold assembly. As the HRC layout design is not included in this paper, we assume that the parts, cobots, and humans are located based on the reachability of the human and cobots. Also, we assumed that there were parts that exceeded the payload of cobots in the simulation. We used three types of end-effectors in this case study: suction gripper (V), finger gripper (F), and screwdriver (S). The suction gripper is used to lift and place a flat-shaped part such as a plate. The finger gripper is used to pick and place parts with smaller dimensions such as the core and pin. The screwdriver is used to insert and tighten a screw. The tools to be attached to each cobot in different collaboration modes are listed in Table 5.
In the simulation, we used the Universal Robot UR10, which had a payload of 10 kg and reachability of 1300 mm. The moving speed of the cobot was set at 100 mm/s. A low cobot moving speed was set to ensure the safety of the human worker during the simulation of the HRC assembly operation. The dynamic cobot speed adjustment is another scope of HRC-related research and hence, it is not within the scope of this study. The two-plate mold consists of a total of seven types of parts in the cavity sub-assembly and fourteen types of parts in the core sub-assembly.  Fig. 6(a) shows the simulation model of the 1H:1R mold assembly. Both core and cavity sub-assemblies are assembled in the same cell, which consists of one human and one cobot. The tools available for the cobot are located on the left-hand side of the cobot. In the multi-station collaboration mode (1H:2R(M)), each robot works on different sub-assemblies at its assembly area, and the human assists each cobot during the operation. Fig. 6(b) shows the simulation model of the 1H:2R(M) mold assembly cell. We considered each station as the common 1H:1R work cell during task allocation. Then, we assigned core and cavity subassemblies to each station. As we separated the 1H:2R(M) into two 1H:1R work cells, we had three agents available for each work cell which are human (H), single cobot (R1 or R2), and human with each cobot (C1 or C2). In other words, we ran the same GA developed for the 1H:1R cell for the core and cavity sub-assemblies for each station, respectively. All the tasks assigned to the cobot in the 1H:1R cell are performed sequentially by the same cobot, but the robot tasks in the core and cavity sub-assemblies are performed by each cobot of the stations. Table 6 lists the partial result of the GA-based task allocation for the 1H:2R(M) assembly cell. The list of full results is attached in the supplementary material. Fig. 7 illustrates the complete result of the developed task-allocation model for the 1H:1R mold assembly cell. Fig. 8 illustrates the complete result of the developed task-allocation model for the human and cobots 1 and 2 in the 1H:2R(M) mold assembly cell. FA1 to FA13 are functional actions in the cavity sub-assemblies. FA14 to FA44 are functional actions in the core sub-assemblies. From the result of the task-allocation model for 1H:1R and 1H:2R(M), we observed that the finger gripper was not used during the HRC mold assembly. In other words, the task that required the finger gripper if it was executed by the cobot was assigned to the human. The cobot executed this kind of task with the same or longer processing time than humans. A total of 34 out of 44 functional actions were assigned to the agents with a capability ratio greater than 0.90. The rest of the functional actions were assigned to agents with lower capability ratios, but they had shorter processing times. Therefore, this shows that the developed model assigned this kind of task to the human to minimize the processing time and tool change time and maximize the capability of the agent assigned to a task. The flexible collaboration mode (1H:2R(F)) has an advantage over other modes in handling parts with heavyweight and large dimensions by assigning the task to both cobots. Even though humans can collaborate with cobots to handle heavy parts in multi-station collaboration modes, humans still face certain levels of MSD risk caused by heavy part handling during the collaboration. The allocation of heavy part handling to both cobots can fully eliminate the MSD risk on the human worker. Moreover, the use of two cobots in the same work cell can reduce the frequency of tool change on each cobot by installing different types of endeffectors on each cobot. In addition to reductions in tool change, a wider variety of tasks, from pick and place to screw tightening, can be performed by each cobot using different end-effectors. The alternative agents and alternative tools attached to cobots in the 1H:2R(F) collaboration mode are listed in Tables 4 and 5. Fig. 9 shows the simulation model of the 1H:2R(F) mold assembly cell. We assumed that the core and cavity sub-assemblies were assembled at the same 1H:2R(F) work cell. As stated previously, a functional action is defined as the action to be performed on a part by an agent. Therefore, we positioned the parts based on the reachability of the assigned agents for each functional action. The parts to be handled by both cobots were positioned between the cobots. Also, the parts to be handled by the human or the cobots were positioned in front of the human and cobots. The tools for each cobot were located beside each cobot for tool change operation. Table 7 lists the partial result of the GA-based task allocation for cavity subassembly in the 1H:2R(F) work cell. The list of full results is attached in the supplementary material. Fig. 10 illustrates the complete result of the developed task-allocation model for the human and cobots 1 and 2 in the 1H:2R(F) mold assembly cell.
From the result, 5 out of the 45 functional actions were assigned to agents with a capability ratio lower than 0.4. In contrast, the rest of the functional actions were assigned to agents with a capability ratio higher than 0.8. Although the five functional actions were assigned to those agents with lower capability ratios, the ergonomic risk levels were lower than those with a higher capability ratio.  where ℎ is processing time of task that executed by human. If task 1 is not assigned to human, then 1 ℎ = 0.  Table 8 compares the performance of the manual with 1H:1R, 1H:2R(M), and 1H:2R(F) HRC mold assembly operation. The performance evaluation criteria are assembly time, average capability ratio, average MSD risk score, and human utilization. The assembly time and human utilization were extracted from the simulation models. All three HRC mold assembly cells showed a reduction in the assembly time compared with the manual mold assembly. Among the HRC cells, the 1H:2R(M) cell assembled the mold in the shortest time, whereas 1H:2R(F) took the longest time to assemble the mold. The 1H:2R(M) assembly had the shortest assembly time because the cavity and core sub-assemblies were assembled simultaneously at the two stations. Both 1H:1R and 1H:2R(F) assembly cells assembled the sub-assemblies sequentially. The assembly time of the 1H:1R assembly cell was 20 s longer than the assembly time of the 1H:2R(F) assembly cell. The longer assembly time was due to the tool change. In the 1H:2R(F) assembly cell, other tasks can be executed by another cobot when the tool change is being performed. However, in the 1H:1R assembly cell, tasks can only be performed once the tool changes are executed. Since all tasks are executable by the human and only one agent in manual cell, the capability ratio of the manual mold assembly equals to 1. However, with the consideration of ergonomic risk factor in the HRC mold assembly cell, the capability ratio of human to execute heavy weight handling and force exertion tasks will be reduced.
Furthermore, the results show that the implementation of HRC mold assembly cells reduced human utilization. The reduction of human utilization means that less human attention is required during the assembly operation. In other words, the human fatigue level can be reduced over the working period. The 1H:2R(M) assembly cell had the highest human utilization among the HRC assembly cells. The reason was that humans were required in both sub-assembly stations that operated simultaneously. The high human utilization means low utilization (< 12%) of both cobots in the 1H:2R(M) assembly cell. Such a low cobot utilization indicates that the 1H:2R(M) collaboration mode was not suitable to be implemented in the mold assembly. The imbalance in task assignment in 1H:2R(M) was caused by the difference in the number of functional actions in the cavity (13 functional actions) and core (31 functional actions) sub-assemblies. In contrast, the human utilization of the 1H:2R(F) assembly cell (54.87%) was the lowest. In the 1H:2R(F) assembly cells, more functional actions were assigned to the cobots, which reduced human utilization. The main objective of implementing HRC system is to improve the human working condition that includes safety and workload. In our study, the robot utilization of all types of collaboration modes were lower than 50%, but the existing result of HRC system also gave the similar outcome. Zhang et al. [38] implemented adaptive schedule with changing human capability in a HRC assembly and the human utilization in their study was between 52% to 66%, which mean 34% to 48% of robot utilization. The task balancing model in mid-heavy HRC assembly that presented by Dianatfar et al. [39] gave the human utilization which ranged from 53.34% to 56.85% that indicated that the robot utilization ranged from 43.15% to 46.66% based on different interaction level. Therefore, the result of human utilization in our study was considered acceptable in the implementation of HRC system especially the 1H:2R(F) collaboration mode (54.87%).
The MSD risk of 1H:2R(F) was the lowest among the HRC mold assembly cells. This was because collaboration between two cobots was used instead of collaboration between humans and a cobot in heavy material handling. The reduction in average MSD risk can be explained further by the results in Table 9. Table 9 summarizes the number of tasks for ergonomic risk levels in the different collaboration modes. The results show that the number of tasks with medium and high risk was reduced in the HRC mold assembly cell, and the number further reduced in the 1H:2R(F) mold assembly cell. Besides, the number of tasks with negligible and low risks showed an opposite trend. We can conclude that the implementation of HRC in the mold assembly effectively reduced the average ergonomic risk in the manual mold assembly.

5.2.2
Multi-objective ANP-GA-based task allocation versus AHP-based task allocation Our GA-based task allocation model utilized the capability analysis using ANP method. We compared the performance of our model with task allocation model that used AHP to define potential of HRC for each task and assigned tasks to human and robot using HTA [20]. The criteria used to evaluate the HRC performance are assembly time, capability ratio and MSD risk score (Table 10). Besides, we also compared our multi-objective model with AHP single objective model. The model that only aimed to minimize the assembly time had the shortest assembly time but performed worst with regards to the capability ratio and MSD risk among all models. In contrast, the capability maximization model that assigned all the functional actions to the most capable agents had the longest assembly time.  Table 11 lists the comparison of processing time and MSD risk level for the functional actions FA21, FA28, and FA38 in the 1H:2R(F) collaboration if these actions were executed by the most capable agent (highest capability ratio) with our task allocation result. The most capable agents for FA21 and FA28 were the human, but our model assigned these functional actions to the Cobot 2. This can be explained by the MSD risk on the human. The most capable agent has the same processing time as the assigned agent. However, the execution of the actions by the assigned agents eliminated the MSD risk in humans by assigning them to the cobot. For FA38, despite the negligible MSD risk when both cobots executed the action, the action was assigned to the collaboration of the human and cobot 2. The reason for this assignment was that tool change was required on cobot 1 to execute FA38. Since we set the higher weight to the assembly time in our multi-objective GA minimization model, the agent that does not required tool change was assigned to minimize the assembly time. Therefore, the results in Tables  10 and 11 showed that our ANP-GA multi-objective model optimize the assembly time, capability ratio, and MSD risk in the two-cobot HRC mold assembly operation. Furthermore, we included finger gripper as one of the end-effector options on both cobots in the 1H:2R(F) assembly cell, but the GAbased task allocation model did not assign task that requires finger gripper to the cobot 1. For the 1H:1R assembly cell, the task was not assigned to the cobot. In other words, those tasks were assigned to the human worker in 1H:1R. Therefore, we can reduce the investment cost on purchasing the finger gripper during the setup of the HRC assembly cell.

Conclusion
This paper has demonstrated the application of different collaboration modes for two HRC systems in the mold assembly operation. We have presented two different HRC collaboration modes for two-cobot HRC systems, namely multi-station, and flexible modes. We have also proposed a three-level taskallocation model to achieve optimization in the assembly time, capability of the agent, and ergonomic injury risk in the mold assembly operation. The levels in the task-allocation model include task decomposition, agent assignment priority analysis using ANP, and task allocation using the GA. In the developed GA, we added the tool change time into the processing time by identifying the attached tool and tool required for action execution. In addition to processing time, we also considered the capability of the agent to execute an action and the ergonomic evaluation score in the developed GA. Furthermore, we included a constraint for selecting the agent during the generation of a random population to avoid functional action assignment to the least capable agent.
Although this study was at conceptual stage with simulation, the improvement in the cycle time, ergonomic factor, and human utilization in the collaboration modes presented proved the possibility of HRC application in the mold assembly. The main contribution of this paper is the optimization of assembly time, agent capability, and ergonomic factor using the GA based on task characteristics and agent capability analysis using ANP. Furthermore, the different combination of agents in the 1H:2R collaboration modes and tool change consideration enables the handling of wide variety of mold assembly tasks that require weight handling and accuracy at the same time. The outcome of this study can be used in the mold assembly operation to determine the configuration of the HRC assembly cell before implementation in real practice. The 1H:2R(F) configuration gave better results than 1H:1R and manual configuration in improving the human working condition and assembly time.
In the future, we will improve the GA by considering the layout design and the change in the human fatigue level to increase the practical application in real mold assembly operations. Besides, an experimental 1H:2R HRC assembly cell with the integration of computer vision system will be developed to recognize the parts and manual tasks during operation to improve the safety features and efficiency of the HRC operation.

Availability of data and material
The data and materials support the findings of this paper is available from the corresponding author upon a reasonable request.

Code availability
The code used to support the findings of this paper is available from the corresponding author upon a reasonable request.

Conflict of interest
The authors declare no competing interests.

Consent for publication
The Authors agree to transfer the non-exclusive publication rights to Springer and he warrants that his/her contribution is original and that he/she has full power to make this grant.
Consent to participate Not applicable. Ethics approval Not applicable. Figure 1 Task-allocation model for the HRC system Task decomposition of a two-plate mold assembly (notation: FA -functional action) Figure 3 ANP network for agent preference [34]     Simulation model for 1H:2R(F) mold assembly  IJAMTSupplementaryResult.xlsx