# A Method for Efficient Task Assignment Based on the Satisfaction Degree of Knowledge

Authors: Jiafu Su; Jie Wang; Sheng Liu; Na Zhang; Chi Li
Journal: Complexity
 (2020)

---

## Abstract

For the product R&D process, it is a challenge to effectively and reasonably assign tasks and estimate their execution time. This paper develops a method system for efficient task assignment in product R&D. The method system consists of three components: similar tasks identification, tasks’ execution time calculation, and task assignment model. The similar tasks identification component entails the retrieval of a similar task model to identify similar tasks. From the knowledge-based view, the tasks’ execution time calculation component uses the BP neural network to predict tasks’ execution time according to the previous similar tasks and the Task–Knowledge–Person (TKP) network. When constructing the BP neural network, the satisfaction degree of knowledge and the execution time are set as the input and output, respectively. Considering the uncertain factors associated with the whole R&D process, the task assignment model component serves as a robust optimization model to assign tasks. Then, an improved genetic algorithm is developed to solve the task assignment model. Finally, the results of numerical experiment are reported to validate the effectiveness of the proposed methods.


---

## Body

## 1. Introduction

Nowadays, manufacturing industries are facing challenges arising from continuous innovations, complex competition, and collaboration environment [1, 2]. “Advanced Manufacturing National Strategic Plan,” “Industry 4.0 Manufacturing,” and “Manufacturing 2025” all assert that the product Research and Development (R&D) is the most important competitive advantage of a country’s manufacturing industry. Due to the complexity of R&D, product R&D needs the collaborations among teams and employees with different knowledge fields and organizational backgrounds [3, 4]. For the effective collaborations, task assignment is the primary issue [5]. According to Alidaee et al. [6], task assignment refers to establishing correspondences between the set of tasks and the set of organizational units. Task assignment is one of the most important works in product R&D, which has direct effects on the operating efficiency of product R&D. A product R&D project always involves hundreds of tasks and the dependences among tasks. The efficient task assignment can reduce the design lead time and costs, while maintaining the quality of product [1]. Thus, the efficient task assignment is a key in the process of product R&D to achieve the operational competitive advantages.Task assignment is a decision problem of working process when the workloads and responsibilities about tasks are assigned among different organizational units, which will perform their own parts of a common project [7]. This paper aims to explore a type of task assignment problem under uncertainty. The problem is descripted as follows. There are n tasks T=T1,T2,T3,…Tn that need to be assigned to m R&D teams P=P1,P2,P3,…Pm during the process of product R&D. The objective is to minimize the final completion time of all tasks. The uncertainty means that tasks’ theoretical execution time is unknown or inaccurate, and the fluctuation of execution time is also uncertain in the future. For the above problem, this paper studies how to develop an efficient task assignment method, so as to minimize the final completion time of the task assignment plan when facing the uncertainty.For the decision of task assignment, the decision-makers should not only consider the theoretical execution time of tasks, but also incorporate the anticipation of uncertainty during the execution of task assignment plan. Dealing with the uncertainty can make task assignment plan with more robustness and stability [8]. Furthermore, in the knowledge economy age, knowledge is an important resource of product R&D [9, 10]. Thus, the knowledge and ability of teams are the key factors for task execution. Each team has certain knowledge and capabilities, and each task requires a specific knowledge and capability that is possessed by at least one of the teams. This implies that the match degree between task’s knowledge requirement and teams’ knowledge plays a vital role for the efficient task assignment. In view of this, this paper proposed a method system for efficient task assignment considering the satisfaction degree between task and knowledge. The method system includes three components, which are the similar tasks identification, tasks’ execution time calculation, and task assignment model. Firstly, the effective set of similar tasks is constructed based on the satisfaction degree of knowledge for tasks. Then, a BP neural network is built to predict the theoretical execution time for tasks based on a Knowledge-Task-Person (T-K-P) network. When it comes to assigning tasks, a robust task assignment model is proposed, which is applicable to situations with limited information about fluctuations of the execution time. The main contributions of this paper can be summarized as follows. Firstly, a knowledge-based method is proposed to predict the tasks’ execution time, which can overcome the shortcoming of the ambiguity and subjectivity of the manager’s decision. Secondly, a robust optimization model and a corresponding improved genetic algorithm are developed to settle the task assignment problem under uncertainty, which can protect decision-makers from the parameter ambiguity and stochastic uncertainty. Finally, a comprehensive method system for task assignment that incorporates knowledge and uncertainty is developed to make more effective and robust task assignment plans.The remainder of this paper is organized as follows. Section2 reviews related works about task assignment problem. Section 3 presents the efficient task assignment method system. In Section 4, an improved genetic algorithm is developed to solve the task assignment model. Section 5 describes the applications of the proposed methods and reports the numerical results of a real task assignment problem. The conclusion and future work are presented in Section 6.


## 2. Related Works

This paper focuses on the problem of task assignment considering knowledge satisfaction degree under uncertainty; thus, the works about task assignment, knowledge-based systems, uncertainty, and robust optimization methods are most relevant.The problem of task assignment is to assign tasks to a set of organizational units based on the premise that a project schedule is given. Guo et al. [11] presented a Best-Harmonically-Fit task assignment algorithm on multiple periodic resources to assign tasks by establishing the worst-case execution time. Aiming at the tree-structured task allocation problem (TSTAP), Liu et al. [12] formalized TSTAP with group multirole assignment (GMRA), and then obtained the more effective and efficient CPLEX solutions, which provided a viable and effective decision support to solve the complex TSTA problems. Zhu et al. [13] clarified the group role assignment problem (GRAP) and proposed an efficient algorithm to solve it based on the Kuhn–Munkres algorithm, which offers efficient enough solutions for the GRAP. Furthermore, Zhu et al. [14] formalized staff and task assignment problems on the basis of the environment by adapting the process to a GRA and proposing a novel algorithm based on the Kuhn–Munkres algorithm. Yi et al. [15] proposed a reliability-guaranteed task assignment and scheduling approach for heterogeneous multiprocessors, which included a timing constraint. Mendonça et al. [16] proposed a simple yet efficient distributed control algorithm to implement dynamic task allocation in a robotic swarm. However, they did not account for tasks’ execution time. Moreover, in the above works’, the task assignment models all assume that the task’ execution time is available. Obviously, it cannot reflect all the real situations of task assignment problem, especially for the complex product R&D project under uncertainty. Considering that the duration of a task carried out by different employees varies, Cheng and Chu [17] used the fuzzy system theory to represent the duration of each task by fuzzy numbers. Zhang and Su [18] used fuzzy variables to describe processing time by introducing a fuzzy triangular number, and they pointed that different teams vary in their knowledge and abilities, so the execution time is different for each team when they carry out each task. For the complex industrial manufacturing process, Li et al. [19] solved the task assignment optimization problem by establishing a dynamic process model and developing an improved quantum genetic algorithm with a heuristic principle.To better manage the schedule of product R&D project, the execution time of a task always needs to be estimated and obtained in advance. Traditionally, the execution time of task is determined by the project managers, who mainly make decisions by their subjective experience. To avoid the limitations of subjective experience in decision of task execution time, this work proposes a method to accurately calculate tasks’ execution time using knowledge-based systems. Nowadays, knowledge has been gradually considered as a significant resource of task execution to deal with more complex product R&D [20, 21]. Against this background, knowledge-based systems (KBSs) are increasingly used to help managers in their decision-making [22–24]. Roy et al. [25] presented a framework for optimizing task assignment in knowledge-intensive crowdsourcing and proposed an efficient adaptive algorithm to settle the task assignment problem. Lyu et al. [26] proposed a task assignment method based on fuzzy set theory and knowledge similarity, where each work unit’s knowledge is extracted from knowledge-based systems. Considering the issue that knowledge is not equal in task assignment of product development, Youling et al. [27] proposed a task assignment model based on bilateral matching of task and designer’s knowledge. In the above works, their task assignment decision all considered the match between task and knowledge, and provided useful approaches for task assignment from the view of knowledge base. Each stage in the product R&D requires certain knowledge, which can be effectively captured, modeled, and reused by knowledge-based systems to improve the quality of product R&D [28, 29]. Furthermore, the consideration of knowledge in task assignment problem is essential to enhance the efficiency and reliability of task execution, which can be used to estimate task’s execution time. Inspired by the above works, this paper plans to acquire tasks’ execution time regarding knowledge as a key factor.Uncertainties of task assignment arise naturally in many scenarios. For example, companies in industries of electronic products, software, and engineering services that do task-based work. Facing the increasingly complex product R&D project, it is common for differences between the plan and practice, and uncertainty is an important characteristic which exists throughout the R&D project [30]. Thus, the decision-makers must consider uncertainties when assigning tasks. Taking uncertainties into account can be done in two ways: chance-constrained optimization and robust optimization [7], which have been widely applied in the task assignment problems. Padulo and Liou [31] proposed a chance-constrained optimization method using min-max objectives and constraints. Zhen [7] proposed a stochastic programming model that copes with the arbitrary probability distributions of tasks’ random workload requirements, as well as a robust optimization model that is applicable to situations in which there is limited information available about probability distributions. Quintana-Amate et al. [28] introduced a green and robust optimization scheme based on the hose model by formulating the problem as a mixed-integer linear programming (MILP) problem. Robust optimization models can provide insights into the optimal solution and probabilistic guarantees of constraint violation [32, 33]. As a pioneer work, Ben-Tal and Nemirovski [34] developed the robust solutions (min-max/max-min objective) by integrating uncertainty sets and proposed an efficient algorithm to solve the convex optimization problems under data uncertainty. Equally important, Bertsimas and Sim [35] proposed a classic approach for robust linear optimization to reduce the price of robustness. Moreover, their work can offer full control on the degree of conservatism for constraints as data change. Following Bertsimas and Sim’s work, Büsing and D’Andreagiovanni [36] proposed a multiband uncertainty set with histogrm cardinality-constraints in robust optimization, and their work formulated the problem of separating a robustness cut as a min-cost flow problem which can be solved efficiently. Assavapokee et al. [37] presented a three-stage optimization algorithm to solve two-stage deviation robust decision-making problems under uncertainty. Carello and Lanzarone [38] used the robust optimization method to build a cardinality-constrained robust nurse-to-patient assignment model, which did not need to generate scenarios. Chen et al. [39] formulated a robust optimization model to solve the multiple unmanned aerial vehicles task assignment problem with parameter uncertainty. Golpra and Tirkolaee [8] introduced the robust optimization concept into the maintenance and repair tasks scheduling problem and developed a novel robust Bi-Objective Mixed-Integer Linear Programming model to deal with the uncertainty of the tasks duration.


## 3. The Efficient Task Assignment Method System

The proposed method system for efficient task assignment (ETA) is shown in Figure1. The ETA system contains three components, which are similar tasks identification, tasks’ execution time calculation, and task assignment model. Firstly, the ETA system starts with the identification of similar tasks according to the knowledge base. Once the similar tasks are identified, the satisfaction degree of knowledge can be determined by the historical data of previous tasks. On the basis of satisfaction degree of knowledge, tasks’ execution time can be calculated using the BP neural network. Then, a robust task assignment model considering uncertainty and a genetic algorithm are proposed to obtain the optimal task assignment scheme for the product R&D. The following sections will discuss the three components of the ETA system in detail:Figure 1
The efficient task assignment method system for product R&D.


### 3.1. Similar Tasks Identification

Traditionally, the execution time of tasks is determined by project managers who rely on their subjective experience, which will inevitably bring subjective limitations. The method proposed in this paper accounts for the similarity between a previous task and the current task, and it estimates the current task’s execution time using the information from similar historical tasks in knowledge base [40]. The knowledge base contains the execution time, the main needed knowledge, and the satisfaction degree of knowledge for each task. The similar tasks in the knowledge base can be identified by the Retrieving Similar Task (RST) model. Specifically, retrieving similar tasks is an important part of the process of estimating tasks’ execution time. Firstly, this work gets a set of previous tasks for the current task from the knowledge base and then calculates the similarity degree between each previous task and the current task and finally puts the task into the set of similar tasks when its similarity degree is greater than the threshold value. The specific steps of retrieving similar tasks are shown as follows:Step 1: Use relevant keywords to retrieve previous tasks that are similar to the current task according to the knowledge base, and then establish a set of previous tasks.Step 2: For each taskTi′ in the previous task set, calculate its similarity to the current task Ti using the following equation:(1)simTi,Ti′=ϕ×knowledgesimTi,Ti′+φ×workloadsimTi,Ti′,whereknowledgesim and workloadsim are the functions to calculate the similarity in knowledge and workload, respectively. ϕ and φ denote the weights of knowledgesim and workloadsim respectively, and ϕ+φ=1.(2)knowledgesim=∏j=1npjn,workloadsim=e−wl−1,0.5<wl<1.5,0,otherwise,wherepj denotes the similarity value on the j−th knowledge between the previous task and current task; wl denotes the relative ratio value of the current task’s workload compared with the previous task’s workload. The fuzzy evaluation sets of pj and wl are listed in Table 1.Step 3: Set the threshold valueη. When simTi,Ti′≥η, we put the task into the set of similar tasks of Ui; otherwise, the task is excluded from the similar tasks set.Table 1
Fuzzy evaluation sets ofpj and wl.
Similarity of knowledge
Quantized value
Relative workload
Quantized value
Best
0.9
More
>1.5
Good
0.7
A lot
1.25
Equal
0.5
Equal
1
Bad
0.3
Little
0.75
Worst
0.1
Less
<0.5


### 3.2. Tasks’ Execution Time Calculation

To calculate tasks’ execution time, Li et al. [41] proposed a knowledge-task network to describe the relationships between tasks and their associated knowledge. For most tasks, their knowledge requirements can be determined from the task description that is written in the project management manual. Tasks’ execution time is associated with the knowledge structure of the R&D team. Each team has different knowledge, skills, and abilities for the R&D task. In order to calculate tasks’ execution time by certain team more accurately, a method is proposed to incorporate the similarity between the knowledge structure of the R&D team and the knowledge needed by the task using the BP neural network.


#### 3.2.1. Constructing T-K-P Network

The T-K-P network (see Figure2) connects task, knowledge, and team. Each task has its required knowledge, and each team has its acquired knowledge. Suppose that all team are defined by the set of P=P1,P2,…Pm, all tasks are defined by the set of T=T1,T2,…Tn, and the knowledge are defined by the set of K=K1,K2,…Kh. Based on the above network, we assume Skαi represents the satisfaction degree of knowledge Kα of team Pk for task Ti.Figure 2
The T-K-P network.Then, we need to quantify the satisfaction degree of knowledge, and the value ofSkαi is rated by the R&D team members using fuzzy evaluation. The fuzzy evaluation sets are listed in Table 2.Table 2
The fuzzy evaluation sets of satisfaction degree of knowledge.
Satisfaction of knowledge
Quantized value
Best
0.9
Good
0.7
Equal
0.5
Bad
0.3
Worst
0.1


#### 3.2.2. Calculating Tasks’ Execution Times

The tasks’ execution times are determined by the satisfaction degree of knowledge. Although the relationships between the satisfaction degree of knowledge and tasks’ execution time are uncertain, the neural network method can be used to adjust their relationships to adapt to external changes. When it comes to a changing environment, the neural network is robust. So, the BP neural network method is used to predict tasks’ execution times in this work. The BP neural network (see Figure3) contains an input layer, a hidden layer, and an output layer, and we selected a single hidden layer in this work. The input is the satisfaction degree of knowledge, and the output is the task’s execution time.Figure 3
The topology diagram of BP neural network.The determination process of tasks’ execution times using BP neural network can be divided by the following specific procedures:(a)
Constructing the BP Neural Network. For the task assignment between task Ti and team Pk, the input of the BP neural network is knowledge satisfaction degree Skαi, and the output is task’s execution time tik. In this work, for ni input data and one output data, we set the structure of the neural network as ni−2ni+1−1 according to Hecht Nielsen rule. Moreover, considering the prediction error of different transfer functions, the Logsig function and the Purelin function are used as the activation functions for the hidden layer and output layer, respectively.(b)
Training the BP Neural Network and Predicting Tasks’ Execution Time. First, we select a number set of data for training and select the Trainscg function as the training function. Because the BP neural network falls into the local minimum when trained in batches, we added a momentum factor that feeds back the error signal, making the weights of neurons reoscillate. Finally, we choose the function of Sim to predict tasks’ execution time.


### 3.3. Task Assignment Model

#### 3.3.1. Notations

For ease of reading, Table3 lists the notations which are used in the task assignment model.Table 3
The notations.
T
i, Tj
Theith and jth task, respectively
P
k
Thekth team
K
α
Theath knowledge
f
i
The completion time of taskTi
MAX
i
f
i
The final completion time of all tasks
r
i
j
A binary variable denoting the order taskTi and Tj
x
i
k
A binary variable denoting whether taskTi is assigned to team Pk
s
i
,
s
j
The start time of taskTi and Tj, respectively
t
i
k
′
The practical execution time ofTi carried out by Pk
t
i
k
The theoretical execution time ofTi carried out by Pk
d
i
k
β
A binary variable denoting whetherTi is the β−th task that Pk can perform
E
k
β
The completion time of theβ−th task by Pk
ε
The random fluctuation variable
ξ
The disturbance variable
κ
The probability of violating a constraint


#### 3.3.2. The Task Assignment Model

In this work, we assume that each task is assigned to one team, and each team can be assigned with no tasks or several tasks. Moreover, each team can do no more than one task at once, and the tasks are carried out continuously. For the task assignment model, it has one objective, which is minimizing the final completion time. The mathematical model of the task assignment problem in this paper is described below.Objective function:(3)minMAXifi.Subject to the following constraints:(4)rij=0,or1,∀i,j,(5)xik=0,or1,∀i,k,(6)∑k=1mxik=1,∀i,(7)fi=si+∑k=1mxik×tik,∀i,(8)sj≥maxrijfi,∀i,j,(9)dikβ=0,or1,∀i,k,β,(10)∑i=1mdikβ≤1,∀k,β,(11)Ekβ≥Ekβ−1+tik,dikβ=1,∀k,β,i,(12)Ekβ=fi,dikβ=1,∀k,β,i,(13)Ek0=0,∀k.The objective (3) is to minimize the final completion time, where fi denotes the completion time of Ti. Constraint (4) ensures that the tasks have a certain order in the R&D process. The order is indicated by rij, and rij is a binary variable. If task Tj can begin after the completion of task Ti, rij=1; otherwise, rij=0. Constraints (5) and (6) ensure that a task Ti should be implemented by one team Pk during the R&D process. xik is a binary variable. If Ti is assigned to Pk, xik=1; otherwise, xik=0. Constraints (7) indicates that the finish time of Ti equals the start time si plus the practical execution time tik. Constraint (8) denotes that task Tj can begin after Ti is finished, and sj denotes the start time of Tj. Constraints (9) and (10) ensure that a team Pk can only perform one task at any moment. dikβ is a binary variable. If Ti is the β−th task that Pk can perform, dikβ=1; otherwise, dikβ=0. Constraint (11) ensures that the βth task can be carried out by team Pk only after finishing the β−1th task. Constraint (12) denotes that the completion time of the task equals to the time when the team have finished the task. Constraint (13) ensures that all teams are available at the initial time.In the process of task assignment for product R&D, there are some interference factors affecting tasks’ execution time such as urgent order inserting, task changes, and inadequate capability of team. These uncertainty factors can interfere with the execution of a task and cause deviations in the tasks’ execution time between the plan and the practice. Among these uncertain factors, there are factors that change regularly. Moreover, by investigating these factors’ changing regularity in task assignment, it can enhance the immunity to uncertain interference. Specifically, considering the execution time of task is an uncertain value and referencing the literature of Li and Ierapetritou [42], the relationship between the practical execution time tik and theoretical execution time tik′ can be described by the random fluctuation variable ε and the disturbance variable ξ, which can be denoted as tik=1+εξtik′. In this work, it is assumes that the disturbance variable ξ is consistent with a uniform distribution on [−1, 1], and its distribution function can be denoted as(14)Fξ=ξ−−11−−1=ξ+12,ξ=2Fξ−1.Then, supposeκ denotes the probability of violating a constraint, there is(15)Fξ=1−κ,ξ=1−2κ.Finally, the practical execution timetik can be obtained as(16)tik=1+ε1−2κtik′.


## 3.1. Similar Tasks Identification

Traditionally, the execution time of tasks is determined by project managers who rely on their subjective experience, which will inevitably bring subjective limitations. The method proposed in this paper accounts for the similarity between a previous task and the current task, and it estimates the current task’s execution time using the information from similar historical tasks in knowledge base [40]. The knowledge base contains the execution time, the main needed knowledge, and the satisfaction degree of knowledge for each task. The similar tasks in the knowledge base can be identified by the Retrieving Similar Task (RST) model. Specifically, retrieving similar tasks is an important part of the process of estimating tasks’ execution time. Firstly, this work gets a set of previous tasks for the current task from the knowledge base and then calculates the similarity degree between each previous task and the current task and finally puts the task into the set of similar tasks when its similarity degree is greater than the threshold value. The specific steps of retrieving similar tasks are shown as follows:Step 1: Use relevant keywords to retrieve previous tasks that are similar to the current task according to the knowledge base, and then establish a set of previous tasks.Step 2: For each taskTi′ in the previous task set, calculate its similarity to the current task Ti using the following equation:(1)simTi,Ti′=ϕ×knowledgesimTi,Ti′+φ×workloadsimTi,Ti′,whereknowledgesim and workloadsim are the functions to calculate the similarity in knowledge and workload, respectively. ϕ and φ denote the weights of knowledgesim and workloadsim respectively, and ϕ+φ=1.(2)knowledgesim=∏j=1npjn,workloadsim=e−wl−1,0.5<wl<1.5,0,otherwise,wherepj denotes the similarity value on the j−th knowledge between the previous task and current task; wl denotes the relative ratio value of the current task’s workload compared with the previous task’s workload. The fuzzy evaluation sets of pj and wl are listed in Table 1.Step 3: Set the threshold valueη. When simTi,Ti′≥η, we put the task into the set of similar tasks of Ui; otherwise, the task is excluded from the similar tasks set.Table 1
Fuzzy evaluation sets ofpj and wl.
Similarity of knowledge
Quantized value
Relative workload
Quantized value
Best
0.9
More
>1.5
Good
0.7
A lot
1.25
Equal
0.5
Equal
1
Bad
0.3
Little
0.75
Worst
0.1
Less
<0.5


## 3.2. Tasks’ Execution Time Calculation

To calculate tasks’ execution time, Li et al. [41] proposed a knowledge-task network to describe the relationships between tasks and their associated knowledge. For most tasks, their knowledge requirements can be determined from the task description that is written in the project management manual. Tasks’ execution time is associated with the knowledge structure of the R&D team. Each team has different knowledge, skills, and abilities for the R&D task. In order to calculate tasks’ execution time by certain team more accurately, a method is proposed to incorporate the similarity between the knowledge structure of the R&D team and the knowledge needed by the task using the BP neural network.


### 3.2.1. Constructing T-K-P Network

The T-K-P network (see Figure2) connects task, knowledge, and team. Each task has its required knowledge, and each team has its acquired knowledge. Suppose that all team are defined by the set of P=P1,P2,…Pm, all tasks are defined by the set of T=T1,T2,…Tn, and the knowledge are defined by the set of K=K1,K2,…Kh. Based on the above network, we assume Skαi represents the satisfaction degree of knowledge Kα of team Pk for task Ti.Figure 2
The T-K-P network.Then, we need to quantify the satisfaction degree of knowledge, and the value ofSkαi is rated by the R&D team members using fuzzy evaluation. The fuzzy evaluation sets are listed in Table 2.Table 2
The fuzzy evaluation sets of satisfaction degree of knowledge.
Satisfaction of knowledge
Quantized value
Best
0.9
Good
0.7
Equal
0.5
Bad
0.3
Worst
0.1


### 3.2.2. Calculating Tasks’ Execution Times

The tasks’ execution times are determined by the satisfaction degree of knowledge. Although the relationships between the satisfaction degree of knowledge and tasks’ execution time are uncertain, the neural network method can be used to adjust their relationships to adapt to external changes. When it comes to a changing environment, the neural network is robust. So, the BP neural network method is used to predict tasks’ execution times in this work. The BP neural network (see Figure3) contains an input layer, a hidden layer, and an output layer, and we selected a single hidden layer in this work. The input is the satisfaction degree of knowledge, and the output is the task’s execution time.Figure 3
The topology diagram of BP neural network.The determination process of tasks’ execution times using BP neural network can be divided by the following specific procedures:(a)
Constructing the BP Neural Network. For the task assignment between task Ti and team Pk, the input of the BP neural network is knowledge satisfaction degree Skαi, and the output is task’s execution time tik. In this work, for ni input data and one output data, we set the structure of the neural network as ni−2ni+1−1 according to Hecht Nielsen rule. Moreover, considering the prediction error of different transfer functions, the Logsig function and the Purelin function are used as the activation functions for the hidden layer and output layer, respectively.(b)
Training the BP Neural Network and Predicting Tasks’ Execution Time. First, we select a number set of data for training and select the Trainscg function as the training function. Because the BP neural network falls into the local minimum when trained in batches, we added a momentum factor that feeds back the error signal, making the weights of neurons reoscillate. Finally, we choose the function of Sim to predict tasks’ execution time.


## 3.2.1. Constructing T-K-P Network

The T-K-P network (see Figure2) connects task, knowledge, and team. Each task has its required knowledge, and each team has its acquired knowledge. Suppose that all team are defined by the set of P=P1,P2,…Pm, all tasks are defined by the set of T=T1,T2,…Tn, and the knowledge are defined by the set of K=K1,K2,…Kh. Based on the above network, we assume Skαi represents the satisfaction degree of knowledge Kα of team Pk for task Ti.Figure 2
The T-K-P network.Then, we need to quantify the satisfaction degree of knowledge, and the value ofSkαi is rated by the R&D team members using fuzzy evaluation. The fuzzy evaluation sets are listed in Table 2.Table 2
The fuzzy evaluation sets of satisfaction degree of knowledge.
Satisfaction of knowledge
Quantized value
Best
0.9
Good
0.7
Equal
0.5
Bad
0.3
Worst
0.1


## 3.2.2. Calculating Tasks’ Execution Times

The tasks’ execution times are determined by the satisfaction degree of knowledge. Although the relationships between the satisfaction degree of knowledge and tasks’ execution time are uncertain, the neural network method can be used to adjust their relationships to adapt to external changes. When it comes to a changing environment, the neural network is robust. So, the BP neural network method is used to predict tasks’ execution times in this work. The BP neural network (see Figure3) contains an input layer, a hidden layer, and an output layer, and we selected a single hidden layer in this work. The input is the satisfaction degree of knowledge, and the output is the task’s execution time.Figure 3
The topology diagram of BP neural network.The determination process of tasks’ execution times using BP neural network can be divided by the following specific procedures:(a)
Constructing the BP Neural Network. For the task assignment between task Ti and team Pk, the input of the BP neural network is knowledge satisfaction degree Skαi, and the output is task’s execution time tik. In this work, for ni input data and one output data, we set the structure of the neural network as ni−2ni+1−1 according to Hecht Nielsen rule. Moreover, considering the prediction error of different transfer functions, the Logsig function and the Purelin function are used as the activation functions for the hidden layer and output layer, respectively.(b)
Training the BP Neural Network and Predicting Tasks’ Execution Time. First, we select a number set of data for training and select the Trainscg function as the training function. Because the BP neural network falls into the local minimum when trained in batches, we added a momentum factor that feeds back the error signal, making the weights of neurons reoscillate. Finally, we choose the function of Sim to predict tasks’ execution time.


## 3.3. Task Assignment Model

### 3.3.1. Notations

For ease of reading, Table3 lists the notations which are used in the task assignment model.Table 3
The notations.
T
i, Tj
Theith and jth task, respectively
P
k
Thekth team
K
α
Theath knowledge
f
i
The completion time of taskTi
MAX
i
f
i
The final completion time of all tasks
r
i
j
A binary variable denoting the order taskTi and Tj
x
i
k
A binary variable denoting whether taskTi is assigned to team Pk
s
i
,
s
j
The start time of taskTi and Tj, respectively
t
i
k
′
The practical execution time ofTi carried out by Pk
t
i
k
The theoretical execution time ofTi carried out by Pk
d
i
k
β
A binary variable denoting whetherTi is the β−th task that Pk can perform
E
k
β
The completion time of theβ−th task by Pk
ε
The random fluctuation variable
ξ
The disturbance variable
κ
The probability of violating a constraint


### 3.3.2. The Task Assignment Model

In this work, we assume that each task is assigned to one team, and each team can be assigned with no tasks or several tasks. Moreover, each team can do no more than one task at once, and the tasks are carried out continuously. For the task assignment model, it has one objective, which is minimizing the final completion time. The mathematical model of the task assignment problem in this paper is described below.Objective function:(3)minMAXifi.Subject to the following constraints:(4)rij=0,or1,∀i,j,(5)xik=0,or1,∀i,k,(6)∑k=1mxik=1,∀i,(7)fi=si+∑k=1mxik×tik,∀i,(8)sj≥maxrijfi,∀i,j,(9)dikβ=0,or1,∀i,k,β,(10)∑i=1mdikβ≤1,∀k,β,(11)Ekβ≥Ekβ−1+tik,dikβ=1,∀k,β,i,(12)Ekβ=fi,dikβ=1,∀k,β,i,(13)Ek0=0,∀k.The objective (3) is to minimize the final completion time, where fi denotes the completion time of Ti. Constraint (4) ensures that the tasks have a certain order in the R&D process. The order is indicated by rij, and rij is a binary variable. If task Tj can begin after the completion of task Ti, rij=1; otherwise, rij=0. Constraints (5) and (6) ensure that a task Ti should be implemented by one team Pk during the R&D process. xik is a binary variable. If Ti is assigned to Pk, xik=1; otherwise, xik=0. Constraints (7) indicates that the finish time of Ti equals the start time si plus the practical execution time tik. Constraint (8) denotes that task Tj can begin after Ti is finished, and sj denotes the start time of Tj. Constraints (9) and (10) ensure that a team Pk can only perform one task at any moment. dikβ is a binary variable. If Ti is the β−th task that Pk can perform, dikβ=1; otherwise, dikβ=0. Constraint (11) ensures that the βth task can be carried out by team Pk only after finishing the β−1th task. Constraint (12) denotes that the completion time of the task equals to the time when the team have finished the task. Constraint (13) ensures that all teams are available at the initial time.In the process of task assignment for product R&D, there are some interference factors affecting tasks’ execution time such as urgent order inserting, task changes, and inadequate capability of team. These uncertainty factors can interfere with the execution of a task and cause deviations in the tasks’ execution time between the plan and the practice. Among these uncertain factors, there are factors that change regularly. Moreover, by investigating these factors’ changing regularity in task assignment, it can enhance the immunity to uncertain interference. Specifically, considering the execution time of task is an uncertain value and referencing the literature of Li and Ierapetritou [42], the relationship between the practical execution time tik and theoretical execution time tik′ can be described by the random fluctuation variable ε and the disturbance variable ξ, which can be denoted as tik=1+εξtik′. In this work, it is assumes that the disturbance variable ξ is consistent with a uniform distribution on [−1, 1], and its distribution function can be denoted as(14)Fξ=ξ−−11−−1=ξ+12,ξ=2Fξ−1.Then, supposeκ denotes the probability of violating a constraint, there is(15)Fξ=1−κ,ξ=1−2κ.Finally, the practical execution timetik can be obtained as(16)tik=1+ε1−2κtik′.


## 3.3.1. Notations

For ease of reading, Table3 lists the notations which are used in the task assignment model.Table 3
The notations.
T
i, Tj
Theith and jth task, respectively
P
k
Thekth team
K
α
Theath knowledge
f
i
The completion time of taskTi
MAX
i
f
i
The final completion time of all tasks
r
i
j
A binary variable denoting the order taskTi and Tj
x
i
k
A binary variable denoting whether taskTi is assigned to team Pk
s
i
,
s
j
The start time of taskTi and Tj, respectively
t
i
k
′
The practical execution time ofTi carried out by Pk
t
i
k
The theoretical execution time ofTi carried out by Pk
d
i
k
β
A binary variable denoting whetherTi is the β−th task that Pk can perform
E
k
β
The completion time of theβ−th task by Pk
ε
The random fluctuation variable
ξ
The disturbance variable
κ
The probability of violating a constraint


## 3.3.2. The Task Assignment Model

In this work, we assume that each task is assigned to one team, and each team can be assigned with no tasks or several tasks. Moreover, each team can do no more than one task at once, and the tasks are carried out continuously. For the task assignment model, it has one objective, which is minimizing the final completion time. The mathematical model of the task assignment problem in this paper is described below.Objective function:(3)minMAXifi.Subject to the following constraints:(4)rij=0,or1,∀i,j,(5)xik=0,or1,∀i,k,(6)∑k=1mxik=1,∀i,(7)fi=si+∑k=1mxik×tik,∀i,(8)sj≥maxrijfi,∀i,j,(9)dikβ=0,or1,∀i,k,β,(10)∑i=1mdikβ≤1,∀k,β,(11)Ekβ≥Ekβ−1+tik,dikβ=1,∀k,β,i,(12)Ekβ=fi,dikβ=1,∀k,β,i,(13)Ek0=0,∀k.The objective (3) is to minimize the final completion time, where fi denotes the completion time of Ti. Constraint (4) ensures that the tasks have a certain order in the R&D process. The order is indicated by rij, and rij is a binary variable. If task Tj can begin after the completion of task Ti, rij=1; otherwise, rij=0. Constraints (5) and (6) ensure that a task Ti should be implemented by one team Pk during the R&D process. xik is a binary variable. If Ti is assigned to Pk, xik=1; otherwise, xik=0. Constraints (7) indicates that the finish time of Ti equals the start time si plus the practical execution time tik. Constraint (8) denotes that task Tj can begin after Ti is finished, and sj denotes the start time of Tj. Constraints (9) and (10) ensure that a team Pk can only perform one task at any moment. dikβ is a binary variable. If Ti is the β−th task that Pk can perform, dikβ=1; otherwise, dikβ=0. Constraint (11) ensures that the βth task can be carried out by team Pk only after finishing the β−1th task. Constraint (12) denotes that the completion time of the task equals to the time when the team have finished the task. Constraint (13) ensures that all teams are available at the initial time.In the process of task assignment for product R&D, there are some interference factors affecting tasks’ execution time such as urgent order inserting, task changes, and inadequate capability of team. These uncertainty factors can interfere with the execution of a task and cause deviations in the tasks’ execution time between the plan and the practice. Among these uncertain factors, there are factors that change regularly. Moreover, by investigating these factors’ changing regularity in task assignment, it can enhance the immunity to uncertain interference. Specifically, considering the execution time of task is an uncertain value and referencing the literature of Li and Ierapetritou [42], the relationship between the practical execution time tik and theoretical execution time tik′ can be described by the random fluctuation variable ε and the disturbance variable ξ, which can be denoted as tik=1+εξtik′. In this work, it is assumes that the disturbance variable ξ is consistent with a uniform distribution on [−1, 1], and its distribution function can be denoted as(14)Fξ=ξ−−11−−1=ξ+12,ξ=2Fξ−1.Then, supposeκ denotes the probability of violating a constraint, there is(15)Fξ=1−κ,ξ=1−2κ.Finally, the practical execution timetik can be obtained as(16)tik=1+ε1−2κtik′.


## 4. The Improved Genetic Algorithm for Task Assignment Model

In this work, an improved genetic algorithm is proposed to settle the task assignment model. Genetic algorithm (GA) simulates the evolution rules for the survival of the fittest in the biological world. It can achieve global optimization through an efficient parallel search in a complex solution space, and the coding is simple and easy to operate [43–45]. For these reasons, we use GA to solve the task assignment problem. However, weak local search ability and early convergence are the two main defects of GA. Therefore, GA often needs to be improved for better search ability. Considering the fluctuations in the execution time during task assignment, this paper improves GA by introducing the binary set encoding and decoding mechanism of greedy algorithm, along with the improved fitness function to avoid local optimization and solve the model rapidly. The specific steps of the improved genetic algorithm for task assignment model in this work are shown in the following.


### 4.1. Chromosome Coding

As the input of the GA, one solution of the task assignment problem is one chromosome, which consists of a number of genes. In this chromosome, a gene is denoted by one tupleTi,Pk, which indicates that task Ti is assigned to team Pk. Thus, the two-dimensional array Sn2=Tx1,Py1,Tx2,Py2,…,Txn,Pyn is used to represent a chromosome.


### 4.2. Initial Population

The proposed method randomly generates the initial population based on the depth of the task. The population produced by this method can satisfy the constraint relationship among tasks and improve the efficiency of the algorithm.T=T1,T2,T3,…,Tn represents the set of tasks; R represents the structure matrix, which reflects the constraint relationship among tasks; P=P1,P2,P3,…,Pm represents the set of R&D teams; and S represents the assignment scheme. The steps of generating the initial population are shown as follows:(i)
Step 1: Calculate each task’s depth in setT according to the structure matrix R=rijn×n, and get the tasks’ depth set D=D1,D2,D3,…,Dn.(ii)
Step 2: Sequence the tasks according to their depth to achieve the task sequence denoted byTx1,Tx2,…,Txn.(iii)
Step 3: Assign a team to each task by randomly selecting fromP=P1,P2,P3,…,Pm to ultimately get the task assignment scheme S′n2=Tx1′,Py1′,Tx2′,Py2′,…,Txn′,Pyn′.(iv)
Step 4: Repeat steps 2–3n times to obtain the initial population.


### 4.3. The Decoding Mechanism

Decoding is a process that transforms chromosomes into solutions. We regard the first dimension of the two-dimensional array as an ordered sequence and decode them in accordance with the sequence. The specific implementation processes are described as follows: there are two prerequisites that should be met forPk to begin the execution of Tj. First, the tasks that precede Tj, that is task Ti, have been completed. Second, Pk is available. The plug-greedy algorithm is used to obtain the best possible start time with active scheduling [46]. Specifically, the best start time is the earliest start time under two premises, they are, the pretask Ti of Tj is done, and the team Pk is available. The best possible start time sj can be denoted as(17)sj=maxfi×rij,Ekβ−1.


### 4.4. The Fitness Function

Suppose thatTj is assigned to Pk, and it is operated in accordance with the best possible start time. Taking the random fluctuations in the execution time into account, the actual execution time can be denoted as tjk=1+εjk1−2κjktik′. Thus, the finish time fj can be obtained by the following equation:(18)fj=maxfi×rij,Ekβ−1+1+εjk1−2κjktik′.In this work, the minimum of the final completion time of all tasks is regard as the objective of task assignment model; thus, the fitness function of chromosomesX can be defined as(19)fitnessX=1maxjfj.


### 4.5. The Genetic Manipulations

In order to achieve the evolution of a population after generating the initial population, this work needs to implement the genetic manipulations, which can be divided into three steps, which are selection, crossover, and mutation.(a)
Selection. The roulette strategy is used as the selection strategy. The roulette strategy determines the selection probability for each individual according to its fitness; the shorter the completion time, the higher the individual fitness, and the larger the probability of being selected. In this way, it is conducive to the inheritance of excellent genetic individuals to the next generation, and it also contributes to the rapid convergence of the genetic algorithm.(b)
Crossover. The single-point crossover mode is used in this work. The crossover aims to generate a new task assignment scheme from the known schemes. For task assignment schemes Si and Sj, the crossover steps are as follows: (i) First, we generate a random integerp0≤p≤n and divide both schemes Si and Sj into two halves, where p is the cross-point.(ii) Second, we crossover the R&D team of the latter part ofSi and Sj, and then generate new individuals Si′ and Sj′,, which keeps the task sequence unchanged.(c)
Mutation. Mutation aims to maintain the diversity of the population to prevent premature convergence of the genetic algorithm. The steps of mutation are as listed follows:(i) First, we select an individual to mutate using the predefined mutation probability.(ii) Second, we generate a random integerp′0≤p′≤n that serves as the mutation position. At this position, the R&D team is reassigned by the roulette approach.The pseudocode and framework of the improved GA is given as follows.Algorithm 1: The pseudo code and framework of the improved GA.
Initialize parameters which include population size Popsize, selection ratePs, crossover rate Pc, mutation rate Pm, and the maximum number of iterations Maxgen.
Generate the initial population randomly.
Calculate each task’s depthD=D1,D2,D3,…,Dn,
forj from 1 to ndo
Sequence tasks according to tasks’ depth, and achieve the task sequenceTx1,Tx2,…,Txn
Assign the team to each task, and achieve the chromosomePop{j}
end for
while current generationCg < Maxgendo
forj from 1 to ndo
Decode it by greedy algorithm and calculate its completion timefj
Set the fitness function asfitnessX=1/maxjfj
end for
Rank the individuals’ fitness value, get the max (fitness) value Val
Save the result as the best solution of current generation yy (Cg) = Val
forj from 1 to ndo
Select individual by roulette wheel selection
Crossover individual by one-cut point crossover
Mutation individual
forj from 1 to ndo
if r and (0, 1) <Pmthen
Generate mutation positionp′0≤p′≤n
Reset individual at positionp′，generate new offspring
j⟵j+1
end if
end for
end while
Output the best solution


## 4.1. Chromosome Coding

As the input of the GA, one solution of the task assignment problem is one chromosome, which consists of a number of genes. In this chromosome, a gene is denoted by one tupleTi,Pk, which indicates that task Ti is assigned to team Pk. Thus, the two-dimensional array Sn2=Tx1,Py1,Tx2,Py2,…,Txn,Pyn is used to represent a chromosome.


## 4.2. Initial Population

The proposed method randomly generates the initial population based on the depth of the task. The population produced by this method can satisfy the constraint relationship among tasks and improve the efficiency of the algorithm.T=T1,T2,T3,…,Tn represents the set of tasks; R represents the structure matrix, which reflects the constraint relationship among tasks; P=P1,P2,P3,…,Pm represents the set of R&D teams; and S represents the assignment scheme. The steps of generating the initial population are shown as follows:(i)
Step 1: Calculate each task’s depth in setT according to the structure matrix R=rijn×n, and get the tasks’ depth set D=D1,D2,D3,…,Dn.(ii)
Step 2: Sequence the tasks according to their depth to achieve the task sequence denoted byTx1,Tx2,…,Txn.(iii)
Step 3: Assign a team to each task by randomly selecting fromP=P1,P2,P3,…,Pm to ultimately get the task assignment scheme S′n2=Tx1′,Py1′,Tx2′,Py2′,…,Txn′,Pyn′.(iv)
Step 4: Repeat steps 2–3n times to obtain the initial population.


## 4.3. The Decoding Mechanism

Decoding is a process that transforms chromosomes into solutions. We regard the first dimension of the two-dimensional array as an ordered sequence and decode them in accordance with the sequence. The specific implementation processes are described as follows: there are two prerequisites that should be met forPk to begin the execution of Tj. First, the tasks that precede Tj, that is task Ti, have been completed. Second, Pk is available. The plug-greedy algorithm is used to obtain the best possible start time with active scheduling [46]. Specifically, the best start time is the earliest start time under two premises, they are, the pretask Ti of Tj is done, and the team Pk is available. The best possible start time sj can be denoted as(17)sj=maxfi×rij,Ekβ−1.


## 4.4. The Fitness Function

Suppose thatTj is assigned to Pk, and it is operated in accordance with the best possible start time. Taking the random fluctuations in the execution time into account, the actual execution time can be denoted as tjk=1+εjk1−2κjktik′. Thus, the finish time fj can be obtained by the following equation:(18)fj=maxfi×rij,Ekβ−1+1+εjk1−2κjktik′.In this work, the minimum of the final completion time of all tasks is regard as the objective of task assignment model; thus, the fitness function of chromosomesX can be defined as(19)fitnessX=1maxjfj.


## 4.5. The Genetic Manipulations

In order to achieve the evolution of a population after generating the initial population, this work needs to implement the genetic manipulations, which can be divided into three steps, which are selection, crossover, and mutation.(a)
Selection. The roulette strategy is used as the selection strategy. The roulette strategy determines the selection probability for each individual according to its fitness; the shorter the completion time, the higher the individual fitness, and the larger the probability of being selected. In this way, it is conducive to the inheritance of excellent genetic individuals to the next generation, and it also contributes to the rapid convergence of the genetic algorithm.(b)
Crossover. The single-point crossover mode is used in this work. The crossover aims to generate a new task assignment scheme from the known schemes. For task assignment schemes Si and Sj, the crossover steps are as follows: (i) First, we generate a random integerp0≤p≤n and divide both schemes Si and Sj into two halves, where p is the cross-point.(ii) Second, we crossover the R&D team of the latter part ofSi and Sj, and then generate new individuals Si′ and Sj′,, which keeps the task sequence unchanged.(c)
Mutation. Mutation aims to maintain the diversity of the population to prevent premature convergence of the genetic algorithm. The steps of mutation are as listed follows:(i) First, we select an individual to mutate using the predefined mutation probability.(ii) Second, we generate a random integerp′0≤p′≤n that serves as the mutation position. At this position, the R&D team is reassigned by the roulette approach.The pseudocode and framework of the improved GA is given as follows.Algorithm 1: The pseudo code and framework of the improved GA.
Initialize parameters which include population size Popsize, selection ratePs, crossover rate Pc, mutation rate Pm, and the maximum number of iterations Maxgen.
Generate the initial population randomly.
Calculate each task’s depthD=D1,D2,D3,…,Dn,
forj from 1 to ndo
Sequence tasks according to tasks’ depth, and achieve the task sequenceTx1,Tx2,…,Txn
Assign the team to each task, and achieve the chromosomePop{j}
end for
while current generationCg < Maxgendo
forj from 1 to ndo
Decode it by greedy algorithm and calculate its completion timefj
Set the fitness function asfitnessX=1/maxjfj
end for
Rank the individuals’ fitness value, get the max (fitness) value Val
Save the result as the best solution of current generation yy (Cg) = Val
forj from 1 to ndo
Select individual by roulette wheel selection
Crossover individual by one-cut point crossover
Mutation individual
forj from 1 to ndo
if r and (0, 1) <Pmthen
Generate mutation positionp′0≤p′≤n
Reset individual at positionp′，generate new offspring
j⟵j+1
end if
end for
end while
Output the best solution


## 5. Numerical Experiments

In this section, we present a real case on product R&D task assignment decision for a partial segment of diesel fuel injection system, one of the R&D projects which are led by CA Technology Co., Ltd. It is adopted to illustrate the proposed methods in this paper. The project consists of 11 tasksT=T1,T2,T3,…,T11, and there are 5 R&D teams P=P1,P2,P3,P4,P5 available for the tasks. The task sequence chart is shown in Figure 4.Figure 4
The task sequence chart.


### 5.1. Experiments on Retrieving Similar Task

Suppose thatϕ=0.5, ϕ=0.5, and η=0.8. For task T1, we found 20 tasks that are similar with T1 from the knowledge base, and calculated their similarities to T1 using the proposed method. Furthermore, there are 11 tasks that meet the requirement, and we put these 11 tasks into the effective similar task set U1=T1,zz=1,2,…,11. The 11 similar tasks’ satisfaction degree of knowledge and execution time are shown in Table 4.Table 4
The effective similar task set forT1.
Task
S
i
1
k
S
i
2
k
S
i
3
k
S
i
4
k
Execution time
T
1,1
0.5
0.7
0.6
0.6
60
T
1,2
0.7
0.8
0.5
0.5
51
T
1,3
0.9
0.9
0.9
1
15
T
1,4
0.8
0.8
0.7
0.7
40
T
1,5
1
0.8
0.8
0.9
30
T
1,6
0.7
1
0.6
0.8
40
T
1,7
0.9
0.7
1
0.6
31
T
1,8
0.6
0.6
0.5
0.7
55
T
1,9
0.5
0.3
0.5
0.3
80
T
1,10
0.5
0.9
0.5
0.8
45
T
1,11
0.8
0.8
0.8
0.7
35Similarly, we can obtain similar effective task sets forT2∼T11 and put these sets into the entire effective similar task set J=Uii=1,2,…,11.


### 5.2. Experiments on Calculating the Execution Time

The BP neural network was run in MATLAB R2014a. Here, we set the momentum factor as 0.9, the learning rate as 0.05, the error target as10−5, and the maximum number of training as 200. For task T1, we selected 8 similar tasks’ data T1,11−T1,8 as the train set, and 3 similar tasks’ data T1,9−T1,11 as the test set to train and test the BP neural network. The train and test result of the 11 similar tasks are listed in Table 5.Table 5
The train and test result of the 11 similar tasks.
Sample
Actual value
Predictive value
Deviation
Train set
T
1,1
60
60.0004
−0.0004
T
1,2
51
51.0022
−0.0022
T
1,3
15
15.0042
−0.0042
T
1,4
40
39.9975
0.0025
T
1,5
30
29.9970
0.0030
T
1,6
40
39.9967
0.0033
T
1,7
31
30.9983
0.0017
T
1,8
55
55.0027
−0.0027
Test set
T
1,9
80
79.9992
0.0008
T
1,10
45
44.9956
0.0044
T
1,11
35
35.0051
−0.0051Table5 reveals that the improved BP neural network method is suitable to solve the problem of execution time prediction, whose deviation is within 1%. Figures 5–7 show the iteration chart, training chart, and regression chart, respectively, which show a good convergence performance.Figure 5
The iteration chart.Figure 6
The training chart.Figure 7
The regression chart.With the example forP1 and T1, there are 4 kinds of knowledge required by T1, and then estimate the execution time of P1 for T1 (see Table 5) using the trained BP neural network. In Table 6, it shows that the execution time of T1 by P1 is about 16. Moreover, we get that the execution time of T1 is relatively shorter compared with the 11 similar tasks, because the knowledge satisfaction degree of P1 is relatively higher.Table 6
The execution time ofP1 for T1
S
111
S
121
S
131
S
141
t
11
s
0.8
0.9
0.9
0.9
15.7082Furthermore, in order to investigate the influence of the required knowledge ofT1 on the execution time, the control variable method is used for analogous analysis. The influence of the satisfaction degree of knowledge on the execution time is shown in Table 7.Table 7
The influence of required knowledge on execution time.
S
111
S
121
S
131
S
141
t
11
s
0.8
0.9
0.9
0.9
15.7082
0.8
0.9
0.9
0.6
32.3823
0.8
0.9
0.6
0.9
40.1253
0.8
0.6
0.9
0.9
23.9871
0.5
0.9
0.9
0.9
29.1104From Table6, we can find that the 3rd required knowledge has the largest influence on the execution time of T1. Therefore, to improve the performance of T1, managers can improve the satisfaction degree of the 3rd knowledge by training team members with the 3rd knowledge or introducing people who are rich in the 3rd knowledge.Similarly, we can obtain the execution time of each team for each task use the above method. The prediction results for all 11 tasks are listed in Table8.Table 8
The execution time for all tasks.
t
i
k
s
T
1
T
2
T
3
T
4
T
5
T
6
T
7
T
8
T
9
T
10
T
11
P
1
15.71
23.24
40.21
45.11
46.99
16.38
29.84
30.19
24.79
38.15
55.28
P
2
24.65
15.33
79.69
60.29
35.82
40.07
25.16
55.68
30.85
25.09
46.85
P
3
50.15
39.74
60.41
48.94
25.17
18.77
15.03
50.16
26.92
45.13
60.19
P
4
37.89
18.06
30.88
39.18
31.76
25.15
38.36
39.04
24.05
70.66
26.07
P
5
23.12
67.64
56.77
24.15
40.33
49.80
32.76
16.58
30.31
29.69
37.77


### 5.3. Experiments on Optimizing Task Assignment

The improved genetic algorithm is applied to solve the task assignment problem. According to the size and complexity of the problem, the parameters are set asPopsize=100,Maxgen=50, where Popsize is the population size and Maxgen is the number of generations. We set the selection rate at 0.8, the crossover rate at 0.8, and the mutation rate at 0.1. Finally, we obtain the Gantt chart (see Figure 8) and the corresponding task assignment schemes (see Table 9). In Table 9, we can get that the optimal result of the task assignment problem is 155.56 according to theoretical execution time illustrated, and it is an efficient task assignment scheme which can give decision-maker satisfaction.Figure 8
Gantt chart for task assignment.Table 9
The task assignment scheme.
Task
Start time
Finish time
Execution time
Team
T
1
0
15.71
15.71
P
1
T
2
15.71
31.04
15.33
P
2
T
3
31.04
61.92
30.88
P
4
T
4
31.04
55.19
24.15
P
5
T
5
61.92
87.09
25.17
P
3
T
6
61.92
78.3
16.38
P
1
T
7
55.19
80.35
25.16
P
2
T
8
87.09
103.67
16.58
P
5
T
9
80.35
104.4
24.05
P
4
T
10
104.4
129.49
25.09
P
2
T
11
129.49
155.56
26.07
P
4


## 5.1. Experiments on Retrieving Similar Task

Suppose thatϕ=0.5, ϕ=0.5, and η=0.8. For task T1, we found 20 tasks that are similar with T1 from the knowledge base, and calculated their similarities to T1 using the proposed method. Furthermore, there are 11 tasks that meet the requirement, and we put these 11 tasks into the effective similar task set U1=T1,zz=1,2,…,11. The 11 similar tasks’ satisfaction degree of knowledge and execution time are shown in Table 4.Table 4
The effective similar task set forT1.
Task
S
i
1
k
S
i
2
k
S
i
3
k
S
i
4
k
Execution time
T
1,1
0.5
0.7
0.6
0.6
60
T
1,2
0.7
0.8
0.5
0.5
51
T
1,3
0.9
0.9
0.9
1
15
T
1,4
0.8
0.8
0.7
0.7
40
T
1,5
1
0.8
0.8
0.9
30
T
1,6
0.7
1
0.6
0.8
40
T
1,7
0.9
0.7
1
0.6
31
T
1,8
0.6
0.6
0.5
0.7
55
T
1,9
0.5
0.3
0.5
0.3
80
T
1,10
0.5
0.9
0.5
0.8
45
T
1,11
0.8
0.8
0.8
0.7
35Similarly, we can obtain similar effective task sets forT2∼T11 and put these sets into the entire effective similar task set J=Uii=1,2,…,11.


## 5.2. Experiments on Calculating the Execution Time

The BP neural network was run in MATLAB R2014a. Here, we set the momentum factor as 0.9, the learning rate as 0.05, the error target as10−5, and the maximum number of training as 200. For task T1, we selected 8 similar tasks’ data T1,11−T1,8 as the train set, and 3 similar tasks’ data T1,9−T1,11 as the test set to train and test the BP neural network. The train and test result of the 11 similar tasks are listed in Table 5.Table 5
The train and test result of the 11 similar tasks.
Sample
Actual value
Predictive value
Deviation
Train set
T
1,1
60
60.0004
−0.0004
T
1,2
51
51.0022
−0.0022
T
1,3
15
15.0042
−0.0042
T
1,4
40
39.9975
0.0025
T
1,5
30
29.9970
0.0030
T
1,6
40
39.9967
0.0033
T
1,7
31
30.9983
0.0017
T
1,8
55
55.0027
−0.0027
Test set
T
1,9
80
79.9992
0.0008
T
1,10
45
44.9956
0.0044
T
1,11
35
35.0051
−0.0051Table5 reveals that the improved BP neural network method is suitable to solve the problem of execution time prediction, whose deviation is within 1%. Figures 5–7 show the iteration chart, training chart, and regression chart, respectively, which show a good convergence performance.Figure 5
The iteration chart.Figure 6
The training chart.Figure 7
The regression chart.With the example forP1 and T1, there are 4 kinds of knowledge required by T1, and then estimate the execution time of P1 for T1 (see Table 5) using the trained BP neural network. In Table 6, it shows that the execution time of T1 by P1 is about 16. Moreover, we get that the execution time of T1 is relatively shorter compared with the 11 similar tasks, because the knowledge satisfaction degree of P1 is relatively higher.Table 6
The execution time ofP1 for T1
S
111
S
121
S
131
S
141
t
11
s
0.8
0.9
0.9
0.9
15.7082Furthermore, in order to investigate the influence of the required knowledge ofT1 on the execution time, the control variable method is used for analogous analysis. The influence of the satisfaction degree of knowledge on the execution time is shown in Table 7.Table 7
The influence of required knowledge on execution time.
S
111
S
121
S
131
S
141
t
11
s
0.8
0.9
0.9
0.9
15.7082
0.8
0.9
0.9
0.6
32.3823
0.8
0.9
0.6
0.9
40.1253
0.8
0.6
0.9
0.9
23.9871
0.5
0.9
0.9
0.9
29.1104From Table6, we can find that the 3rd required knowledge has the largest influence on the execution time of T1. Therefore, to improve the performance of T1, managers can improve the satisfaction degree of the 3rd knowledge by training team members with the 3rd knowledge or introducing people who are rich in the 3rd knowledge.Similarly, we can obtain the execution time of each team for each task use the above method. The prediction results for all 11 tasks are listed in Table8.Table 8
The execution time for all tasks.
t
i
k
s
T
1
T
2
T
3
T
4
T
5
T
6
T
7
T
8
T
9
T
10
T
11
P
1
15.71
23.24
40.21
45.11
46.99
16.38
29.84
30.19
24.79
38.15
55.28
P
2
24.65
15.33
79.69
60.29
35.82
40.07
25.16
55.68
30.85
25.09
46.85
P
3
50.15
39.74
60.41
48.94
25.17
18.77
15.03
50.16
26.92
45.13
60.19
P
4
37.89
18.06
30.88
39.18
31.76
25.15
38.36
39.04
24.05
70.66
26.07
P
5
23.12
67.64
56.77
24.15
40.33
49.80
32.76
16.58
30.31
29.69
37.77


## 5.3. Experiments on Optimizing Task Assignment

The improved genetic algorithm is applied to solve the task assignment problem. According to the size and complexity of the problem, the parameters are set asPopsize=100,Maxgen=50, where Popsize is the population size and Maxgen is the number of generations. We set the selection rate at 0.8, the crossover rate at 0.8, and the mutation rate at 0.1. Finally, we obtain the Gantt chart (see Figure 8) and the corresponding task assignment schemes (see Table 9). In Table 9, we can get that the optimal result of the task assignment problem is 155.56 according to theoretical execution time illustrated, and it is an efficient task assignment scheme which can give decision-maker satisfaction.Figure 8
Gantt chart for task assignment.Table 9
The task assignment scheme.
Task
Start time
Finish time
Execution time
Team
T
1
0
15.71
15.71
P
1
T
2
15.71
31.04
15.33
P
2
T
3
31.04
61.92
30.88
P
4
T
4
31.04
55.19
24.15
P
5
T
5
61.92
87.09
25.17
P
3
T
6
61.92
78.3
16.38
P
1
T
7
55.19
80.35
25.16
P
2
T
8
87.09
103.67
16.58
P
5
T
9
80.35
104.4
24.05
P
4
T
10
104.4
129.49
25.09
P
2
T
11
129.49
155.56
26.07
P
4


## 6. Conclusions

Aiming at the task assignment problem under uncertainty, this paper develops a method system for task assignment from the knowledge-based perspective, which contains three main components: similar tasks identification, tasks’ execution time calculation, and task assignment model. First, this work proposes a model to calculate tasks’ execution time based on the T-K-P network and BP neural network, which accounts for the relationship between knowledge satisfaction degree and tasks’ execution time. This method helps decision-makers to predict the execution time of each team more objectively and effectively. Second, this paper proposes a task assignment model considering uncertainty, and an improved genetic algorithm to deal with the fluctuations in the execution time of tasks. When assigning tasks, we consider the degree of fluctuation and the probability of violating a constraint of task’s execution time, and the results reflect the proposed method can effectively solve the task assignment problem and obtain the satisfied task assignment scheme. The proposed method can provide a helpful support to help decision-makers assign product R&D tasks efficiently. However, there are some limitations for this study. For example, we did not consider that the explicit knowledge and implicit knowledge may have more subtle influences on the task’s execution time. This problem may be more applicable and interesting for real task assignment issue. It will also be our research direction in the future. Furthermore, in the future work, we will investigate more real instances of product R&D task assignment to further deepen the efficient task assignment method system and broaden its application range.



---

*Source: 3543782-2020-09-03.xml*