Abstract
At the time of commonplace automation, robotization and the rapid development of IT, high qualifications of employees have become the critical element of every industry system. This follows from their limited availability, frequently high costs of procurement and possible employee absenteeism. Moreover, the concept of Industry 4.0 will transform current industry employees into knowledge employees. This is due to the fact that hard and routine tasks will be executed by robots and computers. This constitutes change in the required employee competences. Unfortunately, the aspect of management and configuration of employee competences is often overlooked in industrial practice. In response to the existing problem, the article puts forward the original model of employee competence configuration which is a basis for responses to numerous questions of managers of production processes, both general ones, e.g., Do we have a sufficient set of competences to execute a production schedule? as well as detailed ones, e.g., Which and how many competences are missing? etc. An important novelty of the presented model is the possibility of its application with both proactive and reactive questions. Due to the discrete and combinatorial nature of the problem under consideration, the use of mathematical programming methods was limited only to small data instances. Therefore, a proprietary dedicated genetic algorithm was proposed to solve this problem, which turned out to be extremely effective. The use of this genetic algorithm has enabled finding a solution depending on the instance data up to 70 times faster than by use of the mathematical programming.
Similar content being viewed by others
![](https://media.springernature.com/w215h120/springer-static/image/art%3A10.1007%2Fs12525-020-00442-3/MediaObjects/12525_2020_442_Fig1_HTML.png)
Avoid common mistakes on your manuscript.
1 Introduction
Problems with planning, scheduling, and the control and allocation of resources are the primary issues that should be taken into account and solved during the production control [15, 16, 20]. They occur in production with a job-shop, flow-shop, open-shop and project-type organization [11]. They refer to automated and flexible manufacturing systems as well as to smart manufacturing [23]. In diverse forms and scopes, they are also present in logistics, distribution, transport, supply chain, planning of classes at universities, etc. Literature devoted to this issue is very extensive (Section 2). A number of tools and IT systems have been developed to help and optimize decisions in the area of planning, scheduling and allocation of usually constrained resources in production control. The most interesting systems of this class of APS (Advances Planning Scheduling) systems include: Asprova APS, DSX, Preactor APS, etc. (https://www.g2.com/categories/advanced-planning-and-scheduling-aps, Accessed April 042021) as well as other dedicated systems and algorithms [23]. The result of the operation of such systems is a plan/schedule of task completion over time, allocation of tasks to specific machines/work stations/CNC machines, vehicles, etc. In more advanced systems, there is also a possibility of allocating tasks to constrained additional resources such as, e.g., tools, employees, software, etc. and a possibility of a dynamic change of schedule, reception of an answer to the what-if question in case of changes in task performance or machine unavailability.
In the modern production processes, which are characterized by a significant degree of automation, robotization and saturation with state-of-the-art IT technologies, especially in smart manufacturing, the problem of constrained production resources is no longer as crucial as it used to be for the production systems of past generations. The critical resources in modern production systems are employees who have high and specialist competences, qualifications, and experience, etc. This follows from the fact that very often they cannot be replaced with technological solutions. An additional problem related to this type of resource (i.e., employee competence) is its slight availability on the market, high costs and risk of employee absence during completion of the industrial process.
The paper proposes a model of configuration, selection and allocation of employee competence for process performed according to a pre-defined plan/schedule. Thus, the proposed model may be used to support decisions within the scope of selection, configuration and supplementation of the set of available employee competences in the production/distribution/organizational process, both in a proactive and reactive mode (Section 3). In particular, it allows for finding answers to a number of questions, both general and detailed, such as: Do we have a sufficient set of competences to execute a pre-set plan/production schedule? Which and how many competences are missing? Which and how many competences will be missing if specific employees are absent? etc. Moreover, the proposed model can be used to support decisions both in a proactive and reactive way.
The main contributions of this work are: (a) the original mathematical model of the problem used in the proactive and reactive approach, (b) the AMPL implementation model, (c) the structure of data for the modeled problem in Graph NoSQL Database, and above all (d) an original method of solving the modeled problem in the form of a dedicated genetic algorithm. The modifications concerned the introduction to the algorithm of the presolving procedure and the original method of representing the modeled problem.
The rest of the article is organized in the following way. Section 2 provides a literature overview of the problem of staff allocation in scheduling problems. Section 3 provides a comprehensive description of the modeled problem, including illustrative example, mathematical model, scope of decision support, etc. Implementation methods and computational examples are given in Section 4. The final section is a summary and conclusions.
2 Literature review
The issue of allocating employees to tasks pending execution, project stages, work positions, etc. is most often formulated in literature as employee timetabling or staff scheduling [10, 13]. Such problems refer to finding work timetables for an organization’s staff which allow for performance of a specific set of orders, services, projects, etc. There are a number of varieties of this problem such as university timetabling problem, nurse scheduling problem (NSP), crew scheduling problem, etc. The examined problems may differ by objective functions, constraints, etc., as well as by computational complexity. In practice, on account of the discrete and combinatorial character of the above-listed issues, these are most frequently NP-hard problems.
In industrial practice, the problem of allocation of employees is usually analyzed in the context of classic problems of planning and scheduling, such as machine scheduling problem, also known as operation problem [1, 6, 24]. The machine scheduling problem is common in the machine, electronic, IT and automotive industry, etc.
Both of the optimization problems listed above, namely employee allocation and machine scheduling, are most often analyzed together and consist in the allocation of employees to machines/work positions with the aim of performing a given production schedule. The literature is dominated by an approach consisting in sequential solving of both problems, i.e., first the employee/personnel allocation problem is solved and subsequently, relying on the received solution, the machine scheduling problem is tackled. Such approach usually results in finding sub-optimal solutions for the entire issue (an optimum solution for the first problem does not guarantee an optimum solution for the second one). There are also integrative approaches where both problems are solved jointly. Such approaches were proposed, for example, in [33, 7, 8]), where employees were treated as an additional resource indispensable to service machines and handle tasks, and where the problem of scheduling with additional constraints was solved.
Both accurate and approximate methods are used to solve integrated problems. The most promising accurate methods include hybrid approaches integrating mathematical programming methods and constraint programming [3, 26, 27]. As far as approximate methods are concerned, these are dedicated heuristics and meta-heuristics [2, 24]. A significant drawback of integrative approaches is their inability to handle the increase in the dimension of the modeled problem, which results in a higher number of decision variables and constraints, and this in turn significantly increases the time of solving the modeled problem.
Very interesting approaches have been proposed in relation to Industry 4.0 in [19, 21], which confirm the transformation of employee competences from performing simple tasks to knowledge-based activities including technical, transversal and contextual skills.
The approach proposed by the authors, as opposed to the integrative and sequential approach, allows solving a problem with smaller dimensions. This is due to the fact that it is not necessary to solve the scheduling problem, but only to determine the required employee competences (whether the company has them, which are missing, etc.) necessary to perform the tasks according to given schedule. This is justified, because in practice the contracting authority often imposes a predetermined schedule for the implementation of projects, production or transport tasks. Additionally, in the proposed approach we examine employee competence (which can be multidimensional and multilevel) and not simple permissible or impermissible allocations of employees to specific tasks. The presented approach also makes it possible to indicate which competences and which employees should be supplemented with them.
The proposed implementation methods turned out to be more effective and flexible than the methods of mathematical programming usually applied to such problems [5, 9, 18]. This concerned both the hybrid approach (Section 4.1) and the dedicated genetic algorithm (Section 4.2) developed by the authors. The particular effectiveness of this genetic algorithm resulted from the application of a dedicated presolving procedure. In the available literature on the application of evolutionary methods to solve discrete combinatorial problems [17, 31, 32], this is a unique solution.
3 Problem description
The problem of configuring employee competence in the industrial or organizational system may be formulated as follows: a specific set of tasks (projects), K, is to be performed. In order to perform a k task, k∈K one of the employees i from the I set has to be allocated to it (i∈I). For the k task to be performed by the i employee, the employee must have adequate competence. Various types of constraints may be imposed on tasks k∈K and employees i∈I, specific for a given case (these constraints do not affect the methodology of solving the basic problem). The most important constraints of the modeled problem include constraints specifying:
-
Work time limit of employee i∈I.
-
Task performance schedule.
-
Sequence of task performance, which usually follows from an imposed schedule, even though there may be additional determinants.
-
A situation in which not every employee i∈I can perform every task k∈K.
-
A situation in which every employee i∈I may have a specific number of competences (limit).
-
Time for performance of a set of tasks resulting from a schedule or additional determinants.
The main question to which the answer is sought in a problem formulated in this manner is as follows: Is the set of employee competences held by us sufficient to execute the tasks according to the pre-defined schedule? In order to illustrate the problem of employee competence configuration, an illustrative example is given- Example 1.
3.1 Ilustrative example
Example 1
A company is analyzed that has a production system with a job-shop type organization which consists of three different machines (M1...M3). The company employs 10 employees to service them (i1..i10). Employees may have six different types of competences (e1..e6). Table 1 presents the competence held by every employee (1 means that the employee has the given competence).
Four orders are to be performed (o1..o4). Order o1 order consists of four tasks: k1, k2, k3, k4, order o2 consists of four tasks k5, k6, k7, k8, order o3 consists of three tasks k9, k10, k11 whereas order o4 consists of four tasks k12, k13, k14, k15. In total, there are 15 tasks k to be performed. A task performance schedule is given and thus tasks on machines M1, M2 and M3, which is shown in Fig. 1.
Competence that is required for performance of individual tasks for an illustrative example is presented in Table 2 (1 specify the required competences to perform the task).
Attention: If, for example, the e1 and e5 competence is required for the k1 task (in Table 2 marked with 1), this means that the allocated employee must have both types of such competence.
By combining the data from Tables 1 and 2, information is procured as to which employee can perform which task. Table 3 shows the possible allocation of employees to specific tasks as part of individual orders. Figure 2 presents all possible allocations of employees to tasks, whereas Fig. 3 shows both employees’ competences, as well as possible allocations for performance of individual tasks. Figures are presented in the form of graphs generated from the Neo4j database, where data visible in Tables 1, 2 and 3 is presented (https://neo4j.com/).
Figure 4 presents a Gantt chart which shows one of the possible allocations of employees to tasks that guarantees performance of the set of tasks according to a pre-defined schedule (Fig. 1). The proposed example is also a basis for a positive answer to the question: Do we have a sufficient set of competences to execute a set of tasks in line with the pre-defined schedule? The allocation from Fig. 4 was generated by the operator based on data from Tables 1, 2 and 3. This required multiple adjustments, certain dexterity and the operator’s experience, as well as time calculated in minutes. In a number of practical cases, such manual allocation does not guarantee success, whereas the number of iterations and changes increases quickly along with growth of dimensions of the analyzed problem. In such (manual) mode, it is hard to quickly find answers to other decision-making questions presented in Table 4. Therefore, a mathematical model was proposed for configuration of employee competences (Section 3.4) which allows for it.
Sample allocation of employees to tasks for Example_1 generated by the operator, compliant with competences held and a pre-defined schedule (Fig. 1)
3.2 Unavailability of employees
A significant aspect of the analyzed problem of employee competence configuration is the fact that the i (i∈I) employees may be unavailable due to various causes (e.g., sick leave, quarantine, planned holiday leave, training, etc.). Assume that, uj denotes the case of unavailability of selected employees (e.g. u1 = {i3, i7} means that we are analyzing a case where the i3, i7 employees are unavailable, whereas if u2 = {i3} it denotes a case where the i3 employee is unavailable, where i3, i7 ∈ I, etc.). U denotes a set of all such analyzed (interesting to us) cases of employee unavailability uj∈U. It is easy to calculate that if we have 10 employees and if we examine all possible absences of an individual employee, the U set will comprise 10 elements, if we want to account for all possible absences of two employees, the U set will comprise 45 or 55 elements if we also take individual absences into account, etc. In operating practice, a situation where the U set has to be taken into account with elements specifying absence of random two, three, four, etc. employees happens very rarely. Most frequently, there are absences of individual employees resulting from holiday leave, trainings or sudden events such as accidents, illness, etc. Nevertheless, for example, to ensure robustness of the schedule of task performance to employee absenteeism (lack of specific competence), the U set has to account for all possible absences of employees, which results in a significant increase in the number of its elements. Given the limited number of available employees which results in limited availability of employee competence, the p probability of execution of a set of tasks with the occurrence of certain cases of employee unavailability was determined. Such probability was determined with the use of Definition_1.
Definition_1
The set of unavailability cases has the form of U = {u1, u2, …, uLK}, wherein LK is the number of all elements in the set U. The L parameter specifies the number of elements from the U set for which performance of a set of tasks will not be possible (L = 0 means that when any case of unavailability of uj takes place, tasks will be performed; L = 3, means that when three cases of unavailability of uj occur (e.g., if a situation u3 or u7 or u11, etc. occurs), tasks will not be executed. On the other hand, if another case of unavailability of uj occurs, tasks will be performed. The L parameter may be converted to the p probability of task execution with the L unavailability of elements from the U set. The mode of calculation of the p probability is presented with the use of formula (f1).
3.3 Scope of decision support
In reference to the presented issue of employee competence configuration, numerous questions can be formulated to which the decision-maker has to find an answer in planning and scheduling processes. These are both general and detailed questions. Obviously, they refer to the aspect of employee competence. The most important of them are presented in Table 4.
Such presentation of the problem and formulation of constraints allows for using the proposed model of the problem (Section 3.4) to assist the decision-making process both in a proactive and a reactive mode. In a proactive mode, the model allows for selection of such competences of individual employees that guarantees execution of a pre-defined set of tasks according to a specified schedule, in spite of the absence of any employee, any two employees, etc. In such mode, it is possible to receive answers to questions Q5 – Q8 (Table 4). A reactive mode model may also be used if during the execution of tasks or at the moment of commencement of their execution, information is received about the absence of specific employees. In this mode, it is possible to receive answers to questions Q1 – Q4 (Table 4). Obviously, many of these questions may also be posed during processes of production, distribution, etc. with the pre-defined schedule at any T moment.
3.4 Mathematical model of the employee competence configuration problem
Based on the premises presented in Section 3, a formal model of the employee competence configuration problem (1)...(10) was proposed. It was formulated as BIP (Binary Integer Programming). Indices, parameters and decision variables of the models are presented in Table 5, whereas a description of the significance and the function of individual constraints is in Table 6. The formula of the model objective function depends on the Q1..Q8 question to which an answer is sought. For example, in order to receive an answer to questions Q1 and Q4, no objective function is required, but only fulfilment of the model’s constraints. For question Q2, the objective function (9) determines the minimum number of new competences that the employees must accomplish. For other questions, the objective function may have a slightly different form than (9).
In practice, the proposed model can be the basis for building a decision support system for managers in the area of production and/or distribution of any form of organization. Such a system may support the manager in making decisions regarding real situations, such as: (a) Whether to proceed with the execution of the order(s) based on the resources available?, (b) Should training be organized for employees in order to obtain specific competences?, (c) How to plan a budget related to supplementing employees’ competences?, (d) How to organize a team of employees so that they can carry out orders in the event of their absence? etc.
4 Methods and techniques
Due to the nature of the modeled problem (BIP-Binary Integer Programming), the MP (Mathematical Programming) environment seems natural to solve it. There are many MP solvers on the market such as: CPLEX, LINGO, S.C.IP, Gurobi etc. Unfortunately, due to the combinatorial nature of the problem and high computational complexity (NP-hard problem), their effectiveness is limited to problems of small size. Therefore, to model and solve the problem of competence configuration, a modified version of the proprietary hybrid approach was proposed [26, 27], which integrates methods and techniques of mathematical programming and constraint logic programming (CLP) in one integrated framework. For the presented problem, this framework has been supplemented with the dedicated genetic algorithm. The general framework diagram for this approach is shown in Fig. 5. The presented framework makes it possible to model and solve the problem of employee competence configuration using three alternative ways: (a) classical mathematical programming, (b) hybrid approach and (c) dedicated genetic algorithm. In the computational experiments, all three above methods were compared (Section 4.3). Section 4.1 describes the proprietary hybrid approach. The description of the dedicated genetic algorithm is presented in section 4.2.
For the implementation of the proposed integrated framework (Fig. 5), the following tools and environments were used: AMPL modelling language (https://ampl.com/), Neo4j (Graph NoSQL database) into which the data instances of the modeled problem (parameters, obtained outcomes, etc.) were uploaded, GUROBI mathematical and constraint programming solver (http://www.gurobi.com/, Accessed April 042021) and C++ for dedicated genetic algorithm.
4.1 Hybrid approach (b)
A proprietary hybrid approach was proposed as an alternative way of solving the modeled problem. [25, 28]. This approach uses presolving, which is the transformation of the modeled problem. The transformation is performed with constrained logic programming (CLP) methods and problem data instances. The obtained model after transformation is characterized by a smaller number of decision variables and constraints. Additionally, some of the constraints are simplified. This results in a significant reduction in the size of the solution space, which shortens the solution time. The model after transformation is solved using mathematical programming methods [26].
4.2 Dedicated genetic algorithm (c)
A dedicated genetic algorithm was proposed as a new way of solving the modeled problem. Compared to the classical genetic algorithm, it has been supplemented with the presolving procedure, specialized problem representation (Fig. 6), (Section 4.2.1), repair function (Section 4.2.2) .
4.2.1 Presolving procedure
The idea of presolving procedure is presented in Figs. 7, 8, while its location in the genetic algorithm is shown in Fig. 10. This procedure performs two functions simultaneously. On the one hand, it enables the generation of a specialized problem representation with the coding shown in Fig. 6 through direct constraint handling. On the other hand, by eliminating unacceptable allocation and exclusion, the size of the potential solutions is reduced. More precisely, to obtain chromosomes (individuals) with such coding, based on data and, all possible combinations of tasks were generated for each employee that he can perform during the implementation of a given schedule due to his competences. Each such combination of tasks was given a unique number/code No(i) and is the largest inseparable set of tasks to be performed due to a given schedule. For example, for employee i = 7, a list of combinations of tasks to be possible performed by him is presented in Table 7. The proposed representation and coding method (Fig. 6) ensures that each chromosome meets constraints (2), (3), (4), (5), i.e., the employee performs only those tasks for which he is competent. Practically, the rest of the constraints apart from (1) in the proposed coding method are also satisfied.
Each employee is assigned a No (i) code that specifies which tasks they can perform, and a set of all employees with assigned codes is a way to execute the Ex(m) schedule; a set of all such ways is one of the acceptable solutions to the configuration problem. The algorithm which is the basis of the presolving procedure is shown in Fig. 8.
4.2.2 Repair function
Unfortunately, the proposed coding (Fig.6) does not guarantee that the constraint (1) will be met. Therefore, a repair function has been developed to ensure that they are met. The function determines which tasks have not been allocated and then checks if there are employees who could perform them. If there are such employees, tasks are assigned to them. If this is not possible, a penalty for inadmissibility of the chromosome |(individual) is set. The detailed algorithm for repair function is presented in Fig. 9. The evaluation function was based on an assessment of each chromosome in terms of costs. Usually, these were the costs of the necessary changes or supplements to employee competences (Cost_Chang). In the case of impossibility to execute orders, a penalty was also added.
4.2.3 Genetic operators
Individuals are subject to genetic operations adapted to the presented problem, i.e., tournament selection, one-point crossover and uniform mutation. Tournament selection ensures proper selection pressure and prevents premature genetic algorithm convergence. On the other hand, crossover and mutation introduce appropriate diversity into the population. The genetic algorithm terminates when it reaches the number of iterations set by the program user or an additional stop criterion defined by the lack of improvement in the quality of the best individual in the population in the next 50 generations. For the proposed representation and genetic operators thus generated, the genetic algorithm is started according to the diagram in Fig. 10.
4.3 Computational examples
In order to verify the proposed mathematical model (section 3.4) and implementation, a number of calculation experiments were conducted. The experiments were carried out in two phases. At the first phase for the instance of data from the illustrative example Example_1 (Section 3.1), experiments in three series were performed S1..S3. In the second phase of the experiments, the efficiency of the proposed model and implementation thereof was analyzed.
Series S1 refers to a reactive approach, whereas series S2 and S3 refer to a much more interesting and more complex proactive approach. Table 8 presents details of experiments for individual series, i.e., which questions from Table 6 were taken into account in individual implementations for every series. In S1 it was analyzed whether the held set of competences is sufficient to perform a set of tasks according to the pre-defined schedule (Fig. 1).
Implementation of the model allowed for finding all permissible allocations of employees to tasks which guarantees their execution according to the pre-defined schedule and gives a positive answer to the Q1 question. One of such allocations in the form of a Gantt chart is presented in Fig. 11.
In the second series of experiments (S2), the impact of the absence of a random employee and two random employees was examined on the execution of tasks according to the pre-defined schedule (Fig. 1). In this series, implementation of the model taking into account various versions of the Q4 question and the Q5 and Q6 questions was used. In both cases of absence, all possible permissible allocations of employees to tasks that guaranteed execution of the pre-defined schedule were found. In the first case, there were 10 such allocations (Fig. 12), whereas in the second 45. Figure 13 presents four permissible allocations of employees to tasks selected out of 45. For other data instances where the number of competences is insufficient to meet the schedule, implementation of the model from this series allows for finding an answer to questions Q6.
The third series of experiments (S3) refers to a situation where the impact of the absence of three random employees is examined. For the illustrative example Example_1 it is possible to generate 120 of such allocations. The proposed implementation of the model included questions Q4, Q5, Q6. It turned out that the answer to the Q4 was negative if the p = 1 probability was taken into account. There were six cases of unavailability of u1..u6, which were presented in Table 9. For such cases it is impossible to generate the permissible allocation of employees to tasks, i.e., such allocation that would allow for performance of these tasks according to the pre-defined schedule (Fig. 1).
Obviously, one may venture saying that the answer to the Q4 question is positive, yet with the probability of 0.95 ((120–6)/120 ≈ 0.95). Figure 14 presents three sample Gantt charts, the upper for the u1 unavailability and the bottom two for permissible allocations.
In order to guarantee performance of a schedule with the p = 1 probability, it was necessary to adequately supplement competences. Table 10 presents a modified set of employee competences in relation to the configuration from Table 2. It was received by finding an answer to the Q5 question. New competences that had to be acquired by adequate employees in order to guarantee performance of the schedule were marked in red and bold in the table (Q6). Table 11 presents the new modified possible allocations of employees to tasks that allow for performance of the schedule in the absence of three random employees. Figure 15 presents allocation of employees to tasks in case of the unavailability u1 which after supplementation of competences in line with Table 10 became a permissible allocation.
Allocation of employees to tasks in the absence of three (u1 from Table 9) after change of competence
In the second stage of experiments, model implementation efficiency was examined. The experiments were carried out with the use of an integrated framework (Fig. 5), which enables three methods of implementing the modeled problem: (a) mathematical programming, (b) hybrid approach and (c) dedicated genetic algorithm.
Two versions of the model were selected for the experiments. The first with the question Q4 (reactive example) and the second with the question Q5 (proactive example). Table 12 presents the received results for the Q4 question for a single u, whereas Table 13 presents results for the Q5 question encompassing a sub-set amounting to 80 cases of unavailability of employees u. For all implementations (a), (b), (c), ten experiments were performed for data instances which differed by the number of K tasks, E number of competences, P employees, etc.
It is easy to note that the hybrid approach allows for a reduction of decision variables in the model by approx. 40–60% in relation to the MP approach.
As for the computation time, both methods (b) and (c) turned out to be extremely effective and shorten the time of calculations in case of the Q4 question (reactive approach) up to 70 times, whereas in case of the Q5 question (proactive approach) up to 8 times in implementation (b) and up to 25 times in implementation (c) in relation to implementation (a). This is greatly significant in the reactive approach where decisions should practically be made on-line. For the more demanding proactive case, the use of the hybrid approach and dedicated genetic algorithm allows significant reduction in solution time. When analyzing the obtained results in more detail (Tables 12 and 13), it is clear that the application of the MP-based approach (a) is ineffective both in the reactive (Q4) and the proactive (Q5) case. It can also be seen that methods (b) and (c) make it possible to obtain a solution in an acceptable time. Especially for larger data instances (Fig. 16), the use of the dedicated genetic algorithm (c) is more promising. This is due to the fact that the computation time does not increase as much with the increase in the size of the data instance as it is in the case of the hybrid approach (b).
Computation times of individual methods for a proactive approach (Q5-Table 13)
5 Conclusions
The proposed model of employee competence configuration may provide a basis to support decisions related to selection and supplementation of the competences of employees engaged in the production process, feasibility tests of a pre-defined production schedule, and to ensure the robustness of the performance of a production schedule to employee absenteeism, holiday planning and employee training, etc. In addition, the model allows you to find the allocation of employees with specific competencies for tasks. Due to the mode of problem formalization and implementation in AMPL (Appendix), it may be solved in an environment of mathematical programming, such as LINGO, SCIP, CPLEX, Gurobi, (https://en.wikipedia.org/wiki/List_of_optimization_software), etc., which confirms its significant universality. Application of the dedicated genetic algorithm to its implementation is very efficient, as was shown during the computational experiments (Table 13, Fig. 16). This efficiency results from the proposed dedicated presolving procedure of the modeled problem (Fig. 8) and the appropriate handling of constraints (repair function, method of coding, etc.).
In the course of further work, implementation of the Q7 and Q8 questions is planned, along with the possibility of finding answers to all questions at any moment of T time of schedule performance. Extension of the model is also planned, consisting in introduction of work time limitations of individual employees, as well as a possibility of undertaking performance of tasks partially executed by other employees and fuzzy logic mechanisms [34]. Another area of model extension will consist in introduction of costs of use of employees with specific competences. In future research, it is planned to use the proposed model or its modified versions for project management [22], assembly lines [14], transportation [4], supply chain management [12] and teacher management [29, 30].
References
Abedinnia H, Glock C, Schneider M, Grosse E (2017) Machine scheduling problems in production: a tertiary study. Comput Ind Eng 111:403–416
Ahmadi-Javid A, Hooshangi-Tabrizi P (2017) Integrating employee timetabling with scheduling of machines and transporters in a job-shop environment: a mathematical formulation and an anarchic society optimization algorithm. Comput Oper Res 84:73–91
Artigues C, Gendreau M, Rousseau L, Vergnaud A (2009) Solving an integrated employee timetabling and job-shop scheduling problem via hybrid branch-and-bound. Comput Oper Res 36:2330–2340
Bocewicz G (2014) Robustness of multimodal transportation networks. Eksploatacja i Niezawodność–Maintenance and Reliability 16(2):259–269
Bouajaja S, Dridi N (2017) A survey on human resource allocation problem and its applications. Oper Res Int J 17:339–369. https://doi.org/10.1007/s12351-016-0247-8
Brucker P, Qu R, Burke E (2011) Personnel scheduling: models and complexity. Eur J Oper Res 210:467–473
Daniels R, Mazzola J (1994) Flow shop scheduling with resource flexibility. Oper Res 42:504–522
Daniels R, Mazzola J, Shi D (2004) Flow shop scheduling with partial resource flexibility. Manag Sci 50:658–669
Dasović B, Galić M, Klanšek U (2020) A survey on integration of optimization and project management tools for sustainable construction scheduling. Sustainability 12:3405. https://doi.org/10.3390/su12083405
Ernst A, Jiang H, Krishnamoorthy M, Sier D (2004) Staff scheduling and rostering: a review of applications, methods and models. Eur J Oper Res 153:3–27
Framinan JM, Leisten R, García RR (2014) Manufacturing scheduling systems. An Integrated View on Models, Methods and Tools. Springer-Verlag London, https://doi.org/10.1007/978-1-4471-6272-8
Grzybowska K (2019) Reconfiguration to renovation in a sustainable supply chain. Burduk A., Chlebus E., Nowakowski T., Tubis A., Intelligent Systems in Production Engineering and Maintenance, Part of the Advances in Intelligent Systems and Computing book series (AISC, volume 835), Springer Nature Switzerland AG, 761–770
Hassannayebi E, Zegordi SH, Yaghini M, Amin-Naseri MR (2017) Timetable optimization models and methods for minimizing passenger waiting time at public transit terminals. Transp Plan Technol 40(3):278–304. https://doi.org/10.1080/03081060.2017.1283156
Janardhanan MN, Li Z, Bocewicz G, Banaszak Z, Nielsen P (2019) Metaheuristic algorithms for balancing robotic assembly lines with sequence-dependent robot setup times. Appl Math Model 65:256–270. https://doi.org/10.1016/j.apm.2018.08.016
Khojasteh Y (2016) Production control systems. A Guide to Enhance Performance of Pull Systems, Springer Japan. https://doi.org/10.1007/978-4-431-55197-3
Kopanos GM, Puigjane L (2019) Solving large-scale production scheduling and planning in the process industries. Springer Nature Switzerland AG. https://doi.org/10.1007/978-3-030-01183-3
Lee CKH (2018) A review of applications of genetic algorithms in operations management. Eng Appl Artif Intell 76:1–12. https://doi.org/10.1016/j.engappai.2018.08.011
Panik MJ (2018) Linear programming and resource allocation modeling. Wiley
Panos F, Paraskevi T, Vassilis G (2018) Industry 4.0: required personnel competences. International scientific conference industry 4.0, at Varna, Bulgaria
Pinedo ML (2009) Planning and scheduling in manufacturing and services. Springer-Verlag New York, https://doi.org/10.1007/978-1-4419-0910-7
Prifti L, Knigge M, Kienegger H, Krcmar H (2017) A competency model for "Industrie 4.0" employees. Wirtschaftsinformatik (WI) 2017, at St. Gallen, Switzerland
Relich M (2017) Identifying project alternatives with the use of constraint programming. Advances in Intelligent Systems and Computing 521:3–13
Rossit DA, Tohmé F, Frutos M (2019) Industry 4.0: Smart scheduling. Int J Prod Res 57(12):3802–3813. https://doi.org/10.1080/00207543.2018.1504248
Schulze M, Zimmermann J (2018) Staff and machine shift scheduling in a German potash mine. J Sched, 1–22. IFAC ADCHEM Shenyang, Liaoning, China, 2017, July 25-27, 2018 161
Sitek P, Wikarek J (2016) A hybrid programming framework for modeling and solving constraint satisfaction and optimization problems. Sci Program, vol. 2016, Article ID 5102616, 13 pages. https://doi.org/10.1155/2016/5102616
Sitek P, Wikarek J (2018) A multi-level approach to ubiquitous modeling and solving constraints in combinatorial optimization problems in production and distribution. Appl Intell 48:1344. https://doi.org/10.1007/s10489-017-1107-9
Sitek P, Wikarek J (2019) Capacitated vehicle routing problem with pick-up and alternative delivery (CVRPPAD): model and implementation using hybrid approach. Ann Oper Res 273:257–277. https://doi.org/10.1007/s10479-017-2722-x
Sitek P, Wikarek J, Nielsen P (2017) A constraint-driven approach to food supply chain management. Ind Manag Data Syst 117:2115–2138. https://doi.org/10.1108/IMDS-10-2016-0465
Szwarc E., Bach-Dąbrowska I., Bocewicz G. (2018) Competence management in teacher assignment planning. In: Damaševičius R., Vasiljevienė G. (eds) Information and Software Technologies. ICIST 2018. Communications in Computer and Information Science, vol 920. Springer, Cham https://doi.org/10.1007/978-3-319-99972-2_37
Szwarc E, Wikarek J, Gola A, Bocewicz G, Banaszak Z (2020) Interactive planning of competency-Driven University teaching staff allocation. Appl Sci 10:4894. https://doi.org/10.3390/app10144894
Touat M, Bouzidi-Hassini S, Benbouzid-Sitayeb F, Benhamou B (2017) A hybridization of genetic algorithms and fuzzy logic for the single-machine scheduling with flexible maintenance problem under human resource constraints. Appl Soft Comput 59:556–573, ISSN 1568-4946. https://doi.org/10.1016/j.asoc.2017.05.058
Yassine AA, Mostafa O, Browning TR (2017) Scheduling multiple, resource-constrained, iterative, product development projects with genetic algorithms. Comput Ind Eng 107:39–56. https://doi.org/10.1016/j.cie.2017.03.001
Ernst AT, Jiang H, Krishnamoorthy M, Sier D (2004) Staff scheduling and rostering: A review of applications, methods and models, European J Oper Res 153(1):3–27
Arkadiusz Gola, Grzegorz Kłosowski (2019) Development of computer-controlled material handling model by means of fuzzy logic and genetic algorithms. Neurocomputing 338:381–392
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher’s note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Appendix
Appendix
1.1 Implementation model of Employee Competence Configuration Problem in AMPL
![figure a](http://media.springernature.com/lw685/springer-static/image/art%3A10.1007%2Fs10489-021-02594-x/MediaObjects/10489_2021_2594_Figa_HTML.png)
![figure b](http://media.springernature.com/lw685/springer-static/image/art%3A10.1007%2Fs10489-021-02594-x/MediaObjects/10489_2021_2594_Figb_HTML.png)
![figure c](http://media.springernature.com/lw685/springer-static/image/art%3A10.1007%2Fs10489-021-02594-x/MediaObjects/10489_2021_2594_Figc_HTML.png)
Rights and permissions
Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article's Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article's Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://creativecommons.org/licenses/by/4.0/.
About this article
Cite this article
Wikarek, J., Sitek, P. Proactive and reactive approach to employee competence configuration problem in planning and scheduling processes. Appl Intell 52, 3445–3464 (2022). https://doi.org/10.1007/s10489-021-02594-x
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10489-021-02594-x