Abstract
In collaborative product development project plan phase, a reasonable allocation plan can shorten project duration. Static scheduling is a useful way to obtain the allocation result. Matching degree and resource categories are introduced into the standard model of multi-mode resource-constrained project scheduling problem to reflect the resource characteristics including three aspects: (1) human resource is different from technology resource, (2) different technology resources will influence project duration, and (3) technology resource quantities also influence duration. Aimed at two static scheduling models, simple genetic algorithm and two-layer parthenogenetic algorithm are designed. Finally, a case study was presented to validate the method.
Introduction
In recent years, as the advanced development mode, collaborative product development plays a significant role for improving product competitiveness. To shorten the market cycle of new product, decrease design cost, and improve innovation degree, collaborative product development emphasizes collaboration of various professional fields, various departments, or various enterprises. At the plan phase of collaborative product design project, it is necessary to get the reasonable task start time and resource allocation plan, the product progress of which can be controlled efficiently and the minimum duration can be obtained. Resource-constrained project scheduling problem (RCPSP) is one of classical scheduling methods. So far, the optimal model is standard; scholars focus on constraint researches and algorithm efficiency, including deterministic algorithm—branch-and-bound method—and intelligence algorithm—genetic algorithm (GA).1,2 As an important branch of RCPSP, multi-mode resource-constrained project scheduling problem (MRCPSP) concerns about resource categories. In MRCPSP, resource can be classified as three categories: renewable resource, non-renewable resource, and dual resource.
In this article, the scheduling problem in product development project has been studied in consideration of resource category based on the idea of MRCPSP. Compared to the current researches, designers are not taken as resource, because they are the main part of the project with initiative, autonomy, and collaboration. Nothing is more important than designers in product development project, because cognitive behaviors and creative activities of designers impact the development process, and designers improve the product value by their own creativity, analysis, evaluation, and design. Thus, matching degree has been introduced into the model of the article to reflect the designers’ influence. Meanwhile, renewable resource including hardware and software has been considered. Two situations have been taken into account in the article: one is single category of resource and another is multi-category resource. In first situation, resources can be interchangeable and the task occupation is unknown, and the second situation is opposite. Based on these problems, two scheduling conditions with different resource categories considering matching degree have been analyzed. The two models have been solved by simple genetic algorithm (SGA) and two-layer parthenogenetic algorithm (PGA) to shorten the duration with the optimal start time and allocation plan of designers, tasks and resources.
The rest of the parts are as follows: section “Related works” is the related works; sections “Single category of resource” and “Multi-category resource” are models and algorithms, respectively; section “Application examples” is application case and section “Conclusion” is the conclusion.
Related works
RCPSP is one of the classical scheduling methods. Models are almost standard, based on researches of Brucker and Hartmann, the optimization objectives of these models are usually cost and duration, and the constraints include time lags, deadlines, and resource constraints. MRCPSP is the extension of RCPSP. Researches are carried out aimed at algorithm effectiveness including solving validity and speed. Shou Yongyi and his colleagues from ZheJiang University in China are the typical team of RCPSP, and they proposed several advanced algorithms to solve resource-constrained scheduling problems including multi-project scheduling and preemptive scheduling, such as hybrid particle swarm optimization algorithm and advanced GA, which can improve the efficiency and reduce project duration.3–5 Compared with Shou, Koulinas et al. 6 introduced hyper-heuristic particle swarm optimization algorithm aimed at classical RCPSP, which is more general not only in preemptive scheduling. Damak et al. 7 used an approach of difference evaluation to obtain optimal scheduling plan; Shi et al. 8 proposed project management based on critical chain and a mixed-intelligence algorithm for multi-RCPSP; Valls et al. 9 also designed an efficient hybrid GA; Jing et al. 10 designed a method for resource-constrained multi-project scheduling based on greedy strategy. The above researches can improve algorithm efficiency to solve RCPSP. However, such references mainly refer to engineering, and collaborative product development project is scarcely involved. In engineering project, a person is taken as a regular resource and allocated with other resources, which is different from collaborative product development project. In order to reflect the designers’ influence in the project, some scholars have considered the human resource by developing MRCPSP models. For instance, Luo and colleagues11,12 enable flexible resource describing designers by using skill-matching matrix. Simultaneously, algorithm improving is still the key point in MRCPSP.13–15 The typical studies include those of Messelis and De Causmaecker 16 and Beßsikci et al. 17 Tommy Messelis has designed automatic algorithm searching tool, which can improve the efficiency of MRCPSP model; Umut Beßsikci has designed two-layer GA to solve multi-mode problem.
In the above algorithms, the person in the project is rarely referred because it is allocated as the ordinary resource. Meanwhile, ordinary resources are not classified. However, during the process of collaborative product development, the person is a kind of special resource. Compared with the ordinary design resource such as software and hardware, the person has more agility, and different combinations of designer, task, and ordinary resource will bring different duration of the project. Thus, during the process of resource allocation, the designer must be separated out as special resource. The matching degree of designers, tasks, and resources must be differentiated to judge its effect for the object of scheduling. Based on this point, scheduling problem of collaborative product development is not only about constrained resource but also about multi-mode problem. Although there have existed several algorithms for multi-mode resource-constrained problem, collaborative product development processes are relatively lacking. Thus, matching degree and resource categories were considered in multi-mode static scheduling problem. Because ordinary resource has its own features: variable ordinary resources have variable effect on duration; ordinary resource quantities also influence duration.
Single category of resource
Single category is fit for the situation that all the resources can be interchangeable. That is to say, all the resources belong to one category such as hardware or software. For example, in a collaboration project (referred in Zhang et al. 18 ), there are five computers with various performances such as running speed. Any computer can execute each task. However, the performance will impact the efficiency, and a complex task will delay because of resource occupation with poor performance. Simultaneously, designer has no longer been taken as a common resource in this article. Thus, static scheduling of single-category modeling to (1) resource limitation, (2) resource category is unique, (3) resource occupation is unknown, (4) resource is interchangeable, and (5) designer is not a resource.
Problem description
Suppose the designer set of some design project is
Then, for the scheduling problem, there are two kinds of decision variables
The objective is the minimum product duration with the constraints of designer, resource, and the start time
s.t.
Here, equation (4) is the resource limitation; equation (5) shows that one task was only executed by one person; equation (6) shows that at the same time, one person can only do one task; equation (7) shows that at the same time, one task can only use one resource,
ti can be calculated by formula (9)
Model resolution
SGA is adopted to resolve the model; the steps are shown as follows:
Step 1: initial population and code design
The chromosome coding in this article includes two parts: person execution list and resource occupation list as shown in Figure 1. Generally, the algorithm has adopted stochastic ways to generate initial population.

Chromosome coding.
Every gene is the serial number of person or resource. n is the number of tasks, and the length of a chromosome is 2n. This coding method can satisfy constraint (5).
Step 2: decoding
The objective of decoding is abstracting person execution list and resource occupation list as shown in Figure 2.

The decode process.
Step 3: fitness function and constraint solution.
In this article, objective function is set as fitness function
Aimed at the constraints in the model, there are three methods to resolve the constraints:
Code design: using coding to resolve constraint (5).
Penalty function: introducing penalty factor M into
Resolve constraints in calculation process: time sequence constraint (8) can be resolved in calculation process. Every chromosome is a solution including designers and resource allocation; when the allocation is settled, the chromosome is eliminated if its time sequence is not fit for constraint (8).
Step 4: genetic operation
In this part, classical genetic operations select, crossover, and mutate are done.
Step 5: termination condition
This algorithm will terminate if it satisfies either of the following conditions:
Reach the given maximum iteration times.
Satisfy
Step 6: the algorithm process can be described as in Figure 3.

Pseudocode of algorithm (single-category model).
Multi-category resource
In multi-category condition, the resources belong to different categories. Different types such as math software, simulation software, and hardware are taken into consideration. One task usually needs multi-category resources and the category requirements are generally known. In addition, resource quantities also influence project duration. For example, three computers compute faster than two in large-scale computing or simulation. Therefore, resource quantities (resource intensity) must be considerate. Thus, multi-category resource static scheduling is aimed at the following situations: (1) resource is limited, (2) resource category is diversified, (3) resource occupation category is known but the quantities are unknown, (4) resource is not interchangeable, and (5) designer is not a resource.
Problem description
Compared to single-category situation, the problem can be modified as follows:
Resource set is
The objective is the minimum product duration with the constraints of designer, resource, and the start time
and the main constraints are as follows
Here, equation (13) is the total quantity of every technology resource,
Equations (18) and (19) are used to calculate
Here, if
Model resolution
To solve the above model, PGA 19 is adopted in this article and the steps are listed as follows:
Step 1: initial population and code design
The coding includes two layers: sequence code in the outer layer (designer list) and matrix code in the inner layer (resource allocation and intensity), as shown in Figure 4.

Coding of two-layer PGA.
For the outer layer, n is the task quantity, and the number in every gene is the sequence number of designer. The coding method of the outer layer is the same as the signal category resource. But for the inner layer code, the number in every gene column means the requirement number of some resource. Here, “0” means that the task does not need the resource g is the total number of resource categories.
Step 2: decoding
The outer decoding is to extract designer list; the method is the same as the signal category resource static scheduling model resolution. And the inner code does not need decoding.
Step 3: genetic operate
In order to do gene recombination, some operators are designed: (1) single-point gene inverse operator

(a) Single-point gene inverse operator, (b) single-point gene mutation operator, (c) commutating of gene row, and (d) mutation operator of gene row.
For the outer,
Step 4: fitness function and constraints resolution
Objective function is set as fitness function
The constraint resolution methods are the same as the signal category resource scheduling, and the fitness function can be modified as equation (20)
Here,

Pseudocode of algorithm (multi-category model).
Application examples
Single-category resource
To validate the model, some motor design project in China is taken as the application background. This project includes seven designers (P1–P7), 12 design tasks (P1–P12), and four categories design resources (R1–R4, quantities of every resource are set as 1 for simple calculation). The project flowchart is shown in Figure 7.

Collaborative product development project flowchart.
Task standard execution time and matching degrees are shown in Tables 1–4.
Task standard execution time.
Matching degree of task and designer.
Matching degree between task and resource.
Matching degree of designer and resource.
Algorithm convergence curve and design-task allocation are shown in Figures 8 and 9, respectively, by resolving the model.

Algorithm convergence curve.

Designer allocation and time flowchart.
From Figure 8, the project duration is 61.26 days; this value is obtained when iteration times equal to 40 and iteration ends at 99 when this value lasts 59 times. The task-resource allocation is shown in Table 5.
Resource allocation.
From Figure 9 and Table 5, designer, task, and resource plan can be obtained. The correctness of the algorithm is validated from the following aspects with all the matching degrees set as 1:
Absolute product duration: when all the matching degrees are set as 1, the duration is 64 calculated by GA, which is same as the result by Critical path method (CPM).
Relative product duration: compared with 61.26, 64 is longer because the matching degree 1 is relatively lower than the values in Tables 2–4.
Based on the comparison, matching degree impacts the project duration remarkably and the algorithm is correct.
Multi-category resources
Aimed at multi-category resources, the initial parameters should be modified. The quantity of every resource is as follows: 3, 4, 3, and 3, respectively; the maximum time shortage
Resource demands of each task.
After resolution, the designer-task allocation and resource occupation are as shown in Figure 10 and Table 7, respectively.

Allocation of person-task.
Quantity of resources.
From Figure 10, the duration is 67.23, and resource quantity is shown in Table 7. A same approach is used to validate the correctness of algorithm with setting matching degree as 1. Because of the resource intensity, the product duration is 63.1.
Conclusion
Compared to common engineering project, the resource has three characteristics in collaborative product development project: (1) human resource is different from technology resource, (2) variable technology resources have variable effect on the duration, and (3) technology resource quantities also influence duration. Based on the above points, the research in this article has introduced multi-mode modeling method, considering designer-task-resource matching degree and resource intensity. Thus, two static scheduling problems are analyzed in this article based on different resource categories.
Although the case study shows that the proposed approach can really be a useful tool to obtain the reasonable plan with the minimum duration, there are still limitations in the approach. This case study is carried out only in unchangeable resources in multi-category environment. It should be extended to the interchangeable resources by adding constraints.
Based on this work, more work can be done in the future, such as algorithm efficiency analysis with others. Next, new models should support resolving more complicated problems such as designers’ collaboration.
Footnotes
Academic Editor: Michal Kuciej
Declaration of Conflicting Interests
The author(s) declared no potential conflicts of interest with respect to the research, authorship, and/or publication of this article.
Funding
The author(s) disclosed receipt of the following financial support for the research, authorship, and/or publication of this article: This work was based on research work supported by the National Natural Science Foundation of China under grant No. 71171019, the Fundamental Research Funds for the Central Universities under grant No. FRF-TP-14-055A2, and the Program for China Postdoctoral Science Foundation under grant No. 2013T60064.
