Introduction and problem description

In production systems with low level of automation and high number of employees task assignment is a relevant process to secure planned outcomes. The matching of employees and tasks (or workstations) require a description of requirements such as necessary qualifications. Even in an ideal setup where all employees hold all possible qualifications it can be assumed that due to varying level of competencies the overall outcome differs. The task of assigning the optimum regarding a possible target (e. g. performance) is known as the job assignment problem [1]. The general problem of assigning the best fit is the exponentially growing amount of combinations, which is caused by the factorial of possible combinations. In a production system with five employees there are \(c = 5! = 120\) combinations. Adding five more employees leads to a system with \(c = 10! = 3.628.800\) possible combinations. This effect known as combinatorial explosion is a well known problem in many research areas such as biology, chemistry and computer sciences [2]. Combinatorial explosion leads to an exponentially increasing amount of possible solutions for an optimization problem and is responsible for long calculation times. Transferring this to a production system makes it difficult to find the best fit for job assignments in environments with many employees. To narrow the search space for possible solutions, boundary conditions can be implemented. The criteria used for this investigation are qualification and individual performance. Each employee is evaluated for each task or workstation by differentiating between mandatory qualifications and an evaluation of efficiency based on a scale from 75 to \(120\%\), whereas \(100\%\) is the equivalent of an average employee with normal performance. In this scenario an employee without a mandatory qualification has an efficiency level equal to 0. A production system with n employees and m tasks has a performance matrix with the dimension \(n \times m\). By using combinatorial analysis methods the assignment of jobs can be processed. The purpose of this paper is to compare two basic methods regarding costs and benefits with the goal of providing an optimum for the employment based on performance. For companies the knowledge about consequences of erroneously located employees can lead to a higher understanding of drivers for positive and negative outcomes.

State of the art

Employee deployment

The main characteristic of employee deployment is the assignment of available workforce to activities or organizational units at a certain time [3]. At the current stage, the assignment of workforce to tasks is managed subjectively by opinion or experience of respective managers [4]. Therefore, several human and organizational factors that impact the work performance and thus the cost efficiency of the employee deployment, are not considered comprehensively. Existing systems and professional solutions do not prioritize human resources by a target system of such influential factors, but rather consider short term cost efficiency as an essential condition [5]. The world of work in production transforms due to the emergence of new trends such as resource scarcity and new technologies. As a result, values like flexibility, transparency and autonomy become more relevant [6]. This changes the view of employees as a production factor and directs the focus onto employees as a complex resource with characteristics and influential factors such as goals, desires and emotions that determine the performance of the workforce [7, 8]. For that reason, the deployment of this complex resource requires new strategies in order to consider a broader target system of factors. With the advent of technological advances new methods for the optimization of employee assignment, that do not only consider economic factors, but also allow to involve human factors, emerge.

Assignment problem and its variations and methods

This section discusses the (linear) assignment problem as a fundamental problem in operations research, that is implemented across many branches [9]. There are several forms of the linear assignment problem, which vary depending on the context of use. The assignment problem and its variations are generally subordinate to operations research, and are usually sub-categorized under the combinatorial optimization, which is a specific subarea of operations research. Depending on the forms and conditions of variations, the respective assignment problems are assigned to the subdivisions of the combinatorial optimization, such as linear optimization or the transportation theory. There are several variations of the assignment problem, such as the Generalized Assignment Problem [10], Linear Bottleneck Assignment problem [11], the Quadratic Assignment problem [12] or the Weapon-Target Assignment problem [13] depending on the context of use. The classification of the assignment problem in the overall context thus varies. The classical assignment problem is considered a special class of linear optimization problems and a variation of the transportation theory. Under this consideration several linear methods, such as the simplex method and its derivations as well as the primal-dual Hungarian method are existent to solve the assignment problems and some of its variations [14, 15]. However, the assignment problem becomes a discrete optimization problem for positive integer values and can be solved heuristically by approximation methods, such as the Greedy method [14]. These methods can be categorized under Exact method, Heuristic techniques as well as Hybrid methods. In addition, further categorization of the Heuristic techniques can be made, for instance, local search based (e.g. Greedy) or population search based (e.g. Particle Swarm Optimization) [9]. The Particle swarm optimization (PSO) combines local and global search methods and is characterized by globally distributed particles that move within the search space, with the goal to achieve the optimal position. Salman et al. [16] have adapted the PSO technique to the assignment problem and concluded that the PSO provides a viable method. Beside the large number of problem variations and solving method variations, several classifications regarding the classical assignment problem addressing the graph and output size are existent. Ramshaw and Tarjan [17] demonstrate three derivatives of the assignment problem, based on the output size and graph structure. In addition, the terms balanced and unbalanced bipartite graph describe an assignment problem with either the same number of elements \(n (employees) = m (tasks)\) (balanced graph) or an unequal number of elements \(n (employees) \ne m (tasks)\) (unbalanced graph) [17]. All these variations, derivations and solutions are based on the fundamental goal of the classical assignment problem, that is mathematically defined as

$$\begin{aligned} \sum \limits _{i=1}^n\sum \limits _{j=1}^m c_{ij} x_{ij} \; \rightarrow \text {min}, \end{aligned}$$
(1)

with

$$\begin{aligned} \sum \limits _{i=1}^n x_{ij}= & {} 1,\ \ j=1, \ldots ,m, \end{aligned}$$
(2)
$$\begin{aligned} \sum \limits _{j=1}^m x_{ij}= & {} 1, \ \ i=1, \ldots ,n, \end{aligned}$$
(3)

where \(x_{ij}\) is the occupancy of a task by a employee. Each entry can take values of 0 or 1. The goal of the traditional assignment problem is to find in a bipartite graph, an assignment or matching of a known size, in which the sum of values of the edges is a minimum. Taking the mathematical description into account, \(c_{ij}\) describes the cost or effectiveness of assigning the i-th employee to the j-th task. Equations (2) and (3) demonstrate that each employee needs to be assigned to only one task and vice versa [9]. Adapting the assignment problem to the context of employee deployment, the new goal of the problem dealt by, is to achieve the maximum performance value instead of the minimum costs.

Therefore, this paper presents two methods in order to provide optimal solutions for the average performance (\(P_{best}\)) achieved by the deployment of the employees. The discrete assignment problem hereby considers a bipartite graph weighted with performance values that are determined by the productivity of the employees at each workstation or task. In this paper the Brute Force algorithm as an exact method is selected in order to provide the optimal solution for the assignment problem that can be compared to the proposed alternative Greedy Algorithm as heuristic method. Due to its simplicity, it can be assumed that the Greedy method provides the potential basis to be adapted efficiently for specific assignment problems. For this reason, the hereby modified assignment problem is solved heuristically with an alternative Greedy algorithm (AGA) that covers the fundamental principles of the classical Greedy algorithm.

Conceptualization of optimization algorithms

Due to the necessity to further develop exiting methods, the following section provides basic knowledge about the proposed algorithms. Furthermore, information regarding the necessary initialization and shared information for both algorithms will be explained.

Boundaries and initialization

The initialization step for both algorithms includes the generation of a square matrix. The values of the matrix are generated randomly and represent the performance of each employee that is determined by the efficiency. This requires the actual productivity of each employee. In comparison to the planned productivity for the task, the performance of the employee can be evaluated. Due to data restrictions the procurement with this specific data can be an issue. Thus, this papers focuses on the value which can be added to employment decisions if the required data is available. The used values are integer percentage performance values and are set to zero when they are below a certain performance limit. The general productivity can be calculated by comparing input and output of a process [8]. Transferred to tasks within production systems, the input can be described as time and the output as completed tasks e.g. produced products.

$$\begin{aligned} Productivity = \frac{Output}{Input} = \frac{Completed\ Tasks}{Time} \end{aligned}$$
(4)

As shown in Eq. (4) the productivity can be calculated based on the provided information of the task. To evaluate the performance of an employee, the productivity can be compared with a plan-productivity which is based on the performance of an average employee with normal performance [18].

$$\begin{aligned} Performance = \frac{Actual\ Productivity}{Planned\ Productivity} \end{aligned}$$
(5)

Equation (5) describes the formula for calculating the degree of performance based on established methods for evaluating workplaces [19, 20]. Transferred to this application, the range to evaluate the individual performance of employees ranges from 75 to \(120\%\) whereas \(100\%\) is the equivalent of an average employee with normal performance. For the proposed methods the productivity limit is equal \(75 \%\), which is a threshold value due to the goal of providing minimum qualified employees for the production system. Therefore, all productivity values below \(75 \%\) in the matrix are set to 0 in order to eliminate the possibility to assign workforce with an insufficient productivity value to a workplace. In order to avoid disruptions in the assignment process of the AGA, the condition is added that at least two employees can potentially work at one workstation and that one employee has the skills to be assigned to at least two workstations. The target value is the average performance value of the deployment situation. This means, the average performance (\(P_{best}\)) within the production system is the object of optimization. Furthermore, for both algorithms implemented in this paper, a continuously updating \(P_{best}\) value is generated that represents the highest achievable productivity value at the end of the computing process of each algorithm. Moreover, each algorithm has a specific adaptation to its initialization step. The Brute Force Algorithm generates n! permutations of possible assignment combinations \(B(i\rightarrow n!)\), whereas the AGA generates an array that provides the information whether an employee is already assigned.

Brute Force algorithm

Fig. 1
figure 1

Model of the Brute Force algorithm

The Brute Force method is a widely known optimization method for small search areas. It is based on the principle of calculating all possible solutions for a specific problem to find the highest or lowest possible outcome. Therefore, the bigger the search space the higher is the amount of needed calculation power due to an increase in possible outcomes. This is based on the previously described combinatorial explosion problem. The exponentially growing amount of possible combinations lead to an exponential growth of calculation time. Thus, the Brute Force method is limited to a specific amount of combinations which means in this scenario to a limited amount of employees. Nevertheless, the Brute Force algorithm is a valid method in limited scenarios, because of the fact that it always finds the best possible solution. The Brute Force method which is used in this paper is shown in Fig. 1. After initializing the parameters, the algorithm proceeds to generate n! permutations based on the number of employees n. Each permutation is transferred into a \(n \times m\) matrix with one value in each row and column depending on the value in the permutation. Afterwards all elements \(> 0\) inside the \(n \times m\) matrix are set equal to one. When generating the permutations as well as the B(i) matrix repeatedly the calculation time is constant for this part. Because the rows represent an employee and the columns a task the \(n \times m\) matrix displays the employee allocation. Each employee gets assigned to a task which means the matrix represents the job allocation. Further the allocation matrix is multiplied with the qualification/individual performance matrix. Thus, the resulting matrix visualises the distribution of the outcome of each tasks. The average value of all n values gives an insight into the average performance of the production system. Due to the sense of a Brute Force algorithm, this calculation needs to be done for n! combinations. This leads to a loop in which the \(P_{best}\) stands for the highest average performance for all already calculated variations. After n! calculations \(P_{best}\) is definitely the highest possible average outcome of the productions system. Further information can be gained from the loop and the allocation of the combination with the highest average can be presented. For the purpose of this investigation, the maximum amount of employees is limited to 10 due to limited resources. The motivation of using the Brute Force algorithm for allocating employees to tasks is to use it as the basis for further comparisons. Optimization algorithms require a quality criterion in order to provide a possibility to evaluate the outcome. Therefore, the solution of the Brute Force algorithm is used as quality criterion in order to evaluate the result of the AGA.

An alternative Greedy Algorithm

Fig. 2
figure 2

Model of an alternative Greedy Algorithm

The AGA is a combination of the Greedy principle and the well-known n-queens problem, which has been introduced by Bezzel in [21]. The n-queens problem is a combinatorial problem that is defined by the placement of n non-attacking queens on an \(n \times n\) chessboard [21]. Current research shows several methods, such as Brute Force, Backtracking and Permutation Generation algorithms that provide the amount of possible combinations to solve the n-queens problem [22]. However, Wirth [23] presents an alternative Backtracking method that is recursive and proceeds to allocate queen-figures in successive columns starting with column i of n maximum columns. When adapting Wirth’s recursive Backtracking algorithm to the proposed employee allocation problem, new constraints have to be set. These constraints are based on the Greedy Algorithm, which starts with the best combination of the matrix. The classic Greedy Algorithm provides a value that is at least \(50 \%\ (K=0.5)\) of the optimal solution [24].

$$\frac{{P_{{best}} \left( {classic\;Greedy} \right)}}{{P_{{best}} \left( {Optimal\;solution} \right)}} \ge \;K.$$
(6)

The proposed AGA seeks to provide better solutions while keeping the beneficial aspects of the classic Greedy Algorithm, such as high computing speed [24]. The main objective of the proposed method is to allocate employees to workstations, whereby the performance of each employee depends on the workstation accordingly. For that reason, each column represents a workstation and each row in the \(n \times m\) Matrix represents an employee. Two main constraints, shown in the program flow chart (Fig. 2), define the allocation procedure of the proposed Backtracking Algorithm:

(a) Select the highest available value in the column.

(b) Do not select a value equal to 0 in any column.

Concerning these two constraint, a third constraint is necessary in order to avoid allocation problems occurring in case the last available values for the last columns are equal to 0. The third constraint defines the Backtracking character and is described as follows:

(c) If after considering (a) and (b) no solution is found, go back \((n-1)\), set the selected highest available value as “not free” and apply condition (a) again.

This eliminates the possibility of an employee with an insufficient performance value being allocated to a workstation. With the application of all stated conditions, the AGA allocates the employees with the highest available performance value to the respective workstation while successively prioritizing the workstations. Thus, the first workstation is staffed with the highest prioritization, while the last workstation has the lowest priority.

Exemplary calculation

Table 1 Benefits of algorithms: performance coverage (K), amount of combinations with higher results (A) and ratio of A to valid combinations (R) for \(w=1000\) calculations
Table 2 Cost of algorithms: computing time t for alternative Greedy Algorithm (AGA) and Brute Force algorithm (BF) for \(w=1000\) calculations
Fig. 3
figure 3

Procedure of calculation process

The comparison is based on generating a random performance matrix with each new calculation process. This simulates a different unit of workforce or different organizational set up. For the purpose of this paper, the P-matrix is randomly generated by an initial algorithm but can be based on a real set of employees within a production system. This requires a process to evaluate the performance of the employees but can be simplified by using a specific scale. By multiplying the randomly generated performance matrix with the deployment matrix, the obtained matrix displays the resulting assignment of each employee and the performance value at the respective task. To generate various results and therefore a representative mathematical model, the procedure for each algorithm has been repeated 1000 times \((w=1000)\). The process as shown in Fig. 3 shows that each repetition w generates a random performance \(n \times m\) square matrix P. For the purpose of this paper, the amount of employees is equal to the amount of tasks (\(n=m\)). Hereby, n represents the amount of employees and m tasks. Afterwards both algorithms calculate their optimal result for the average performance within the production system and save them into a \(w \times 2\) matrix, which is \(Q(i,\textit{model})=P_{best}(i,\textit{model})\), whereby \(\textit{model}=1\) is the AGA and \(model=2\) the Brute Force. In addition, the computing time of each algorithm for each calculation process is saved for further comparison into another matrix \(T(i,\textit{model})=t_{i,\textit{model}}\). The abort criterion occurs when variable i, which counts \(i=i+1\) with each repetition, is equal to w. In this program flow chart the general initialization step combines both initialization steps of the algorithms. Furthermore, the calculation process is performed for the number of employees from five to ten employees. Hereby, the number of employees is limited to ten not only due to the significantly high computational time, but also due to the limits of the working memory. The results of \(w = 1000\) calculations are compared within two tables (Tables 1 and 2). The calculation was processed with a varying amount of employees in the production system, to simulate a comparison within differing production systems.

Table 1 compares the benefits of the algorithms by displaying the performance in comparison. Therefore, K describes the ratio between the highest result of both algorithms.

$$\begin{aligned} K= \frac{P_{best}(AGA)}{P_{best}(BF)} \end{aligned}$$
(7)

The variable A is the amount of combinations with higher results than the result proposed by the AGA.

$$\begin{aligned} A = \sum \limits _{i=1}^w x_{i} \end{aligned}$$
(8)

with

$$\begin{aligned} x_i = \left\{ \begin{array}{ll} 1 &{} \ P_{best, i}(BF) > P_{best, i}(AGA) \\ 0 &{} \ \, \text {otherwise} \\ \end{array} \right. \end{aligned}$$
(9)

And R describes the ratio of the amount of combinations with higher results to the amount of valid combinations.

$$\begin{aligned} R = \frac{{A}}{Valid\ Combinations} \end{aligned}$$
(10)

Table 2 compares the costs of the algorithms in terms of calculation time.

Results and discussion

This chapter discusses the main results achieved by comparing the optimal solution with the heuristically obtained solution. Objects of this comparison are the maximal computed performance of each algorithm, the calculation time as well as the coverage value K of the proposed AGA and the amount of combinations that would provide a higher overall performance value than the heuristically obtained performance value. The results of the exemplary calculation show distinct differences within the results. Table 1 indicates that the coverage of the \(P_{best}\) of each algorithm is constant over an increasing amount of employees. By determining the coverage based on the best possible outcome provided by the Brute Force algorithm, the AGA reaches up to \(100 \%\) coverage. The average over \(w = 1000\) calculations with different amount of employees is \(\sim 97 \%\). The Brute Force algorithm always provides the best combination with the highest result but also shows the span of possible and valid results. It can be assumed that there is a varying amount of combinations between the provided solutions of the two algorithms. This amount of combinations with higher results than the result of the AGA (A) increases with more employees but decreases in comparison to the maximum amount of valid combinations. Especially when the coverage is lower, a higher amount of combinations can be expected. The comparison of costs and benefits of the two algorithm is based on the quality of the result (benefit) and the calculation time (cost). The exponentially increasing calculation time of the Brute Force algorithm is a result of the already described combinatorial explosion. Due to the nature of the Brute Force algorithm the quality of the provided outcome is the best optimum of the combinatorial problem. Whereas the computing time of the Brute Force algorithm increases exponentially, the computing time of the AGA increases low but steady. This can be explained due to the structure and method of the AGA. In direct comparison to the BF, the result of the AGA reaches an average of \(\sim 97 \%\) of the optimum which is considered as a high quality outcome. By comparing the calculation times (Table 2) the discrepancy is considered as an enormous difference. Therefore, the comparison shows the coverage of the outcome is high which means the outcome of the AGA is nearly as good as the outcome of the Brute Force algorithm. By considering the calculation time as the costs of applying the algorithms, the Brute Force turns out to be the inferior algorithm. Thus, the minimal discrepancy of the outcome does not justify the huge difference in calculation time. The ratio between additional expenses and quality of outcome supports the conclusion that the Brute Force algorithm may serve the highest possible outcome but considering the effort it is definitely the inferior algorithm. When calculation time is not an issue (e.g. within research purposes) the Brute Force algorithm can be used as a valid algorithm for comparing purposes within certain parameters. The Brute Force method is limited to the effect of combinatorial explosion. Within practical applications the AGA turns out to be a valid method in terms of providing viable solutions with minimal effort.

Limitations

In order to affirm the obtained results in Sect. 4 and validate the proposed AGA an extended research regarding the implementation of the AGA is necessary. Even though the maximum of \(10\times 10\) performance matrix provides viable results, it does not show the limits of the proposed AGA. Therefore, it is uncertain how the AGA behaves in larger production systems and at what point the combinatorial explosion occurs. The calculation times indicate that the time of AGA is not limited to an increasing amount of employees. Besides, it would be interesting to analyse the differences in the output when implementing the AGA onto a divided production system (e.g. \(50\times 50\) matrix divided into 25 \(10\times 10\) matrices) rather than on a large matrix (e.g. \(50\times 50\)). Another major limitation of the proposed AGA is the successive prioritization of the assignment by columns, i.e. workstations. This leads to a situation in which the last workstations are occupied by the remaining employees and thus not prioritized on the same level as the first workstations. However, this limitation might be used strategically in order to arrange a value-oriented order of workstations, so that high-value workstations with high added value are prioritized more than low-value workstations. The Brute Force algorithm, on the other hand, prioritizes over all workstations equally. Furthermore, the final major limitations of this paper is the criteria under which the employees are assigned to their respective task/workstation. In the exemplary calculation (4) the assignment problem considers exclusively the performance value of each employee based on once productivity at each workplace. The difficulty of the Brute Force algorithm in a case, where more criteria are considered in order to assign the employees is restricted by its early combinatorial explosion. The AGA on the other hand has shown appropriate results in a short computing time, thus provides a potential basis to adapt this algorithm to a larger target system that does not only include the employees’ performance or productivity, but also considers other influential human- and production-related indicators. Therefore, it is essential to not only investigate the AGA in terms of problem size, but also regarding an advanced input data model.

Conclusion

A comparison of two basic optimization methods to assign available and valid workforce to tasks or workstations is the central work of this paper. Its results are intended for optimized employee deployment within production systems. Although the alternative Greedy algorithm (AGA) does not guarantee the optimal solution, it is reliably close to the optimum. Considering the need for a quality criterion when providing results with an optimization algorithm, the shown results describe the reliability of the results provided by the AGA. In the proposed exemplary calculation the model shows values that are at average \(\sim 97 \%\) of the optimal solution independent from the amount of employees, which is a remarkable improvement in contrast to the classic Greedy Algorithm. The significant advantage of the AGA is the much shorter computing time compared to the Brute Force Algorithm. This results in a high scalability of this optimization method. Furthermore, the AGA retains a comparable flexibility due to the included backtracking method. This flexibility combined with the significantly high scalability leads to the conclusion, that the proposed AGA can be a promising candidate to complex employee deployment situations within production systems. After considering the compared algorithmic methods, it can be stated that the proposed AGA offers tangible advantages and potential for further development and implementation. The Brute Force method reaches its limits due to an increasing amount of employees in the system. The importance of this research is defined by the increasing digitalization as well as the emerging trends that influence the employee deployment in production systems. This paper sets the basis for further investigation of combinatorial optimization methods in the context of employee deployment in production systems and could lead to an algorithmic method that makes use of the advantageous characteristics of existing methods. This might result in an applicable assistant system that meets recently arising HRM requirements in the digital era and regards the workforce as a complex resource.