*3.1. Representation of the Problem*

In the proposed network representation (Figure 1), the assignment of activities to operators is defined by the elements *wi*,*<sup>j</sup>* of the matrix **W** that represent the *i*th activity assigned to the *j*th operator. Instead of the direct optimisation of these *Na* × *No* elements, a sequence *N<sup>π</sup>* = *Na* + *No* − 1 is optimised, where *Na* represents the number of activities and *No* denotes the number of operators.

The concept of sequence-based allocation is illustrated in Figure 3, where the horizontal axis represents the fixed order of the operators *oj* and the vertical axis stands for the activities *ai* , where *π*(*i*) represents the index of the activity by the *i*th sequence number. The ordered activities are assigned to the operators by *No* − 1 boundary elements, represented as *aπ*(*i*) = ∗, which ensure that the next activity in the sequence is assigned to the following operator.

**Figure 3.** Illustration of the sequencing method. The activities are separated into the different groups of activities that are assigned to different operators.

#### *3.2. Handling Precedence Constraints*

In addition to these three objectives of the simulated production line, a so-called soft limit is also defined, which is the amount of the unaccomplished precedence of the activities (*A*- ). This limitation of the order with regard to the activities is stored in the multilayer network.

The completion of a task is a precondition for the start of another because tasks depend on other tasks. The *π* sequence has some constraining condition and cannot be entirely arbitrary. The precedence graph is used to represent these dependencies in SALBP [1,35,36]. Figure 4 shows a problem from a well-known example by Jackson [37] with *Na* = 11 tasks, where task 7 requires tasks 3–5 to be completed directly (direct predecessor) and task 1 indirectly (indirect predecessor). The precedence graph can be described by matrix *A*- (*i*, *j*), *i*, *j* = 1, 2, ... , *Na*, where *A*- (*i*, *j*) = 1 if task *i* is the direct predecessor of task *j*, otherwise, it is 0 [32]. The precedence graph is partially ordered if tasks cannot be performed in parallel. It must be determined whether a permutation *π* = (*π*1, *π*2, ... , *πNa* ) is feasible or not according to the precedence constraint.

Based on the transitive closure *A*∗ of *A*- , *π* is feasible if *A*∗(*pj*, *pi*) = 0, ∀*i*, *j*, *i* < *j*; otherwise, *π* is infeasible [32]. A sub-sequence (*πi*, *πi*+1, ... , *πj*), where *i* < *j* of *π*, can be defined by *π*(*i*:*j*). For example, a feasible sequence *π* of the precedence graph in Figure 4 is *π* = (1, 4, 3, 2, 5, 7, 6, 8, 9, 10, 11) and *π*(2:4) = (4, 3, 2) is a sub-sequence of *π*.

**Figure 4.** Precedence graph of the example problem taken from Jackson [32,37].

As will be presented in the next subsection, the key idea of the algorithm is that it determines the interchangeable sets of activity pairs and uses these in the guided simulated annealing optimisation.

*3.3. Sequence-Based Activity Grouping and Operator Assignment*

The optimization algorithm is shown in Algorithm 1 and consists of the following steps:

	- **–** SA II (embedded in SA I): in the case of a specific sequence, the activities are assigned to the operators by optimizing the location of the boundary elements in sequence *π* as has been presented in Figure 3, so SA I uses a cost function that relates to the optimal assignment.

**Algorithm 1:** Pseudocode of the proposed SA-ALB algorithm

**Input:** *s*,*e*, *Time*, *Precedence* **Output:** *π*, *Q*(*π*) **Annealing:** *maxiter*, *T*, *Tmax*, *Tmin*, *mmax*, *mmin* **<sup>1</sup>** *α* = ( *Tmin Tmax* )1/*maxiter*, *<sup>T</sup>*<sup>1</sup> <sup>=</sup> *Tmax* **<sup>2</sup>** *α<sup>m</sup>* = ( *mmin mmax* )1/*maxiter*, *<sup>m</sup>*<sup>1</sup> <sup>=</sup> *mmax* **<sup>3</sup> Begin <sup>4</sup>** *T* = *Tmax*; *Tmax* = maximum value of temperature **<sup>5</sup>** while *T* < *Tmin*; *Tmin* = minimum value of temperature **6 <sup>7</sup>** Generate initial sequence *π*, which satisfies the constraints **<sup>8</sup>** Generate initial placement of the boundary elements **<sup>9</sup>** Evaluate the cost function *Q*(*π*), as functions (5), (6) and (7) **<sup>10</sup> for** *i* = 1 *to maxiter* **do 11 <sup>12</sup>** Select randomly one interchangeable activity pair **<sup>13</sup>** Interchange the activities and evaluate the new solution by implementing SA II that optimizes the placement of the boundary elements in this sequence **<sup>14</sup>** // SA II is working with the same principle as this main SA I **15 <sup>16</sup>** *NewQ*(*πnew*) = *Q*(*πnew*) **<sup>17</sup>** Δ = *Q*(*πnew*) − *Q*(*π*) **<sup>18</sup> if** Δ < 0 **then <sup>19</sup>** *π* = *πnew* **<sup>20</sup>** *Q*(*π*) = *Q*(*πnew*) **<sup>21</sup> else <sup>22</sup> if** *random*() < *exp*( <sup>−</sup><sup>Δ</sup> *<sup>T</sup><sup>i</sup>* ) **then <sup>23</sup>** *π* = *πnew* **<sup>24</sup>** *Q*(*π*) = *Q*(*πnew*) **<sup>25</sup>** *Ti*+<sup>1</sup> = *αT<sup>i</sup>* , *mi*+<sup>1</sup> = *αim<sup>i</sup>* **<sup>26</sup> End**

#### **4. Case Study**

This study was inspired by an industrial case study of wire harness manufacturing, where operators work with several tools that perform different activities at workstations to manufacture cables. The problem assumes that it is possible to improve the manufacturing efficiency if the resources, activities, skills and precedence are better designed.

The development of the proposed line-balancing algorithm is motivated by a development project which was defined to improve the efficiency of an industrial wire harness manufacturing process [38]. In this work, a subset of this model is used which consists of 24 activities, five operators, six skills and eight pieces of equipment.

The elementary activity times that influence the line balance were determined based on expert knowledge [39] (see Table 2).

A more detailed description of the activities, pieces of equipment and skills can be found in Tables 2–6.


**Table 2.** List of the elementary activities that should be allocated in the line balancing problem.

The following tables give a more detailed description of the activities, equipment (Table 3) and skills (Table 4) which are involved in the proposed case study. Furthermore, the activity–equipment (Table 5) and activity–skill (Table 6) connectivity matrices show the requirements of the given base activity.

**Table 3.** List of equipment that should be allocated in the line balancing problem.



**Table 4.** Description of skills that should be used in the studied production process.

**Table 5.** Activity–equipment matrix that defines which equipment are required to perform a given activity.


**Table 6.** Activity–skill matrix that defines which skills are required to perform a given activity.



The tables illustrate that the practical implementation of line balancing problems is also influenced by how much equipment is needed for the designed production line and how many skills should be learnt by the operators.

All the collected information is transformed into network layers, as shown in Figure 5. The top of the figure shows the bipartite networks that represent the details of the assignments, while the bottom of the figure represents the tree layers of the network that define the activity–operator, skill–operator, and equipment–operator assignments. As can be seen, this representation is beneficial as it shows how similar operators, skills and equipment can be grouped into clusters.

**Figure 5.** Illustration of the skill–operator and equipment–operator assignments after line balancing.

Although this is not shown in the figure, the weights of the edges represent the costs or benefits of the assignments. The final form of the network is formed based on a multi-objective optimisation of the sets of active edges.

As some of these objectives are difficult to measure, we utilised the proposed AHP-based method to convert the pairwise comparisons of the experts into weights of criteria. The structure of the decision problem is represented in Figure 6. As this figure illustrates, the AHP is used to compare difficult to evaluate equipment and skill assignment costs and the importance of the objectives. The pairwise comparison was performed by a process engineer, and the resulting comparison matrices can be found in Tables 7–9. Based on the analysis of the the eigenvalues of these matrices [25], we found that the evaluations were consistent.

Since the activities cannot be performed in parallel, a precedence graph defines the most crucial question, namely whether a permutation of sequence *π* is feasible. Based on the transitive closure of the adjacency matrix of the graph, the interchangeable sets of activities can be defined as depicted in Figure 7.

The result of the optimization is shown in Figure 5, which illustrates that the five operators assigned to different skills and pieces of equipment.

The reliability and the robustness of the proposed method are evaluated by ten independent runs of the optimisation algorithm to highlight how the stochastic nature of the proposed method influences the result, as well as showing the effect of the number of operators on the solutions. The aim of the analysis of the independent runs was to estimate the variance of the solutions caused by the stochastic nature of the process and the optimisation algorithm. The sample size of such repeat studies can be determined based on the statistical tests of the estimated variance. In our analysis, we found that ten experiments were sufficient to get a proper estimation of the variance (which is in line with the widely applied ten-fold cross-validation concept).

**Figure 6.** Analytic hierarchy process (AHP) used to solve a decision problem.

**Table 7.** AHP TOP matrix that shows the relative importance of the objectives. It can be seen that, in this pair-wise comparison, the skill-related cost is evaluated as being twice as important as the equipment-related costs.



**Table 8.** AHP equipment matrix that shows the relative importance of the equipment.

**Table 9.** AHP skill matrix that shows the relative importance of the skills.


**Figure 7.** Possible path (**left**), precedence (**middle**) and transitive closure (**right**) of the activities (the unmarked pairs are interchangeable).

Figure 8 presents the different time, skill and equipment-related objectives in the case of different operators. As the results show, the increase in the number of operators decreases the efficiency of the utilisation of the tools and skills (this trend is the main driving force for forming manufacturing cells). The process can be well balanced in the case of 3–5 operators; e.g., in the case of five operators, in one of the best solutions, the balancing objectives are a time cost of 94.3%, training cost of 75.0% and equipment cost of 72.8%. Figure 9 shows the different total activity times of each operator during the simulation. In this case, the station times do not differ greatly, and the result is optimal [10]. The proposed algorithm was implemented in MATLAB and is available on the website of the authors (www.abonyilab.com/about-us/software-and-data); interested readers can make further comparisons, and the proposed problem can serve as a benchmark for constrained multi-objective line balancing.

Based on the simple modification of the code, the algorithm can be compared to classical simulated annealing-based line balancing; this comparison demonstrates that the main benefit of the proposed constrained handling is the acceleration of the optimisation. At the same time, the application of the inner-loop-based assignment significantly reduces the variance and increases the chance of obtaining improved line balancing results.

**Figure 8.** Boxplot of time, skill and equipment-related objectives for different independent runs of the algorithm and with different numbers of operators.

**Figure 9.** Comparison of the operators' activity times.

#### **5. Conclusions**

We proposed an assembly line balancing algorithm to improve the efficiency of production systems by the multiobjective assignment of tasks to operators. The optimisation of this assignment is based on a multilayer network model that provides information about the activity times, constraints and benefits (objectives) of the assignments, where the layers of the network represent the skills of the operators, the tools required for their activities and the precedence constraints of their activities.

The training and equipment costs as well as the precedence of the activities are also taken into account in the activity–operator layer of the network. As these costs and benefits are difficult to evaluate, the analytic hierarchy process (AHP) technique is used to quantify the importance of the criteria. The optimisation problem is solved by a multi-level simulated annealing algorithm (SA) that efficiently handles the precedence constraints thanks to the proposed problem-specific representation.

The proposed algorithm was implemented in MATLAB and the applicability of the method demonstrated with an industrial case study of wire harness manufacturing. The results confirm that multilayer network-based representations of optimisation problems in manufacturing seem to be potential promising solutions in the future.

The main contribution of the work is that it presents tools that can be used for the efficient representation of expert knowledge that should be utilised in complex production management problems. The proposed multilayer network-based representation of the production line supports the incorporation of advanced (ontology-based) models of production systems and provides an interpretable and flexible representation of all the objectives of the line balancing problem.

The AHP-based pairwise comparison of the importance of the nodes, edges and complex paths of this network can be used to evaluate the objectives of the optimisation problems. The integration of the network-based knowledge representation and the AHP-based knowledge extraction makes the application of the proposed methodology attractive in complex optimisation problems.

**Author Contributions:** L.N., T.R. and J.A. developed the methodology and software; L.N. prepared the original draft; J.A. reviewed and edited the manuscript. All authors have read and agreed to the published version of the manuscript.

**Funding:** This research was supported from the Higher Educational Institutional Excellence Program 2019 the grant of the Hungarian Ministry for Innovation and Technology (Grant Number: NKFIH-1158-6/2019). Tamás Ruppert was supported by the project 2018-1.3.1-VKE-2018-00048–Development of intelligent Industry 4.0 solutions of production optimization in existing plants and the ÚNKP-19-3 New National Excellence Program of the Ministry of Human Capacities.

**Acknowledgments:** The authors are grateful for the valuable comments and suggestions offered by the anonymous reviewers.

**Conflicts of Interest:** The authors declare no conflicts of interest.
