Simplifying Multiproject Scheduling Problem Based on Design Structure Matrix and Its Solution by an Improved aiNet Algorithm

Managing multiple project is a complex task involving the unrelenting pressures of time and cost. Many studies have proposed various tools and techniques for single-project scheduling; however, the literature further considering multimode or multiproject issues occurring in the real world is rather scarce. In this paper, design structure matrix DSM and an improved artificial immune network algorithm aiNet are developed to solve a multi-mode resource-constrained scheduling problem. Firstly, the DSM is used to simplify the mathematic model of multi-project scheduling problem. Subsequently, aiNet algorithm comprised of clonal selection, negative selection, and network suppression is adopted to realize the local searching and global searching, which will assure that it has a powerful searching ability and also avoids the possible combinatorial explosion. Finally, the approach is tested on a set of randomly cases generated from ProGen. The computational results validate the effectiveness of the proposed algorithm comparing with other famous metaheuristic algorithms such as genetic algorithm GA , simulated annealing algorithm SA , and ant colony optimization ACO .


Introduction
With widespread availability of the Internet, large-scale distributed projects in manufacturing, production, and others are becoming popular.Project scheduling plays an important role in project management.Scheduling involves the allocation of the given resource to projects to determine the start and completion times of the detailed activities 1 .There may be multiple contending for limited resources, which makes the solution process more complex.
The allocation of scarce resources then becomes a major objective of the problem and several compromises have to be made to solve the problem to the desired level of near-optimality.Traditional tools, such as Gantts, critical path method CPM , and the program evaluation and review technique PERT , have serious limitations for project activity scheduling in practice.Furthermore, they are applied to only one project at a time.In many practical environments where project scheduling is an important activity, resources are constrained in number and more than one project is active at any one time.Besides, the activities have multiple execution scenarios reflecting different ways of performing them , each scenario possibly having a different impact on the activity duration, the costs associated with it, and its resource requirements 2 .Multiple activity modes give rise to several types of trade-offs between a the activity duration and its use of resource time/resource trade-off , b the activity duration and its cost time/cost trade-off , and c the quantity and combination of resources employed by the activity resource/resource trade-off .Consequently, we have a more realistic model, which is the resource-constrained project scheduling problem with multiple execution modes.
In this paper, we take up a challenge to introduce design structure matrix DSM to simplify precedence constraints existing in multi-project scheduling.Then, an improved artificial immune network algorithm aiNet approach is presented to solve the multimode resource-constrained multiproject scheduling problem MRCMPSP .The remainder of the paper is organized as follows.Section 2 is a literature review.Section 3 describes the MRCMPSP problem and its conceptual model is proposed.Section 4 defines our approach to simplify MRCMPSP based on DSM.Section 5 introduces an improved aiNet algorithm to solve the MRCMPSP.Section 6 details the problem instance generator and reports the computational experiments.Concluding remarks are made in Section 7, along with a discussion about further research.

Related Works
The RCMPSP is a generalization of the resource-constrained project scheduling problem RCPSP .It has been shown by Bła żewicz et al. 3 that the RCPSP, as a generalization of the classical job shop scheduling, belongs to the class of NP-hard optimization problem.The RCMPSP and its extensive form MRCMPSP, as a generalization of the RCPSP, are therefore also NP-hard.
RCPSP has aroused a strong interest of academic scholars firstly, and there are many studies involving the scheduling of a single project.For example, Stinson et al. 4 , Christofides et al. 5 , Demeulemeester and Herroelen 6 , and others presented a branch and bound approach to solve the problem and the differences among them lie in branch schemes as well as elimination rules and other details.Montoya-Torres et al. 7 proposed a novel genetic algorithm for the RCPSP and an alternative representation of the chromosomes using a multi-array object-oriented model was developed in order to take advantage of programming features in most common languages for the design of decision support systems.The approach was tested on sets of standard problems and its performance is superior to that of other heuristic algorithms.Xu et al. 8 illustrated how to combine the idea of rollout with priority rule heuristics and justification for the RCPSP, and examined the resulting solution quality and computational cost.They presented empirical evidence that these procedures are competitive with the best solution procedures described in the literature.In addition, Mobini et al. 9 and Ziarati et al. 10 designed the artificial immune algorithm AIA and bee algorithm BA in order to solve RCPSP, respectively, where AIA is inspired by vertebrate immune system and BA by intelligent behaviors of honey bees.The results that have been obtained using a standard set of instances, after extensive experiments, proved to be very competitive in terms of number of problems solved to optimality.
Most of the heuristics methods used for solving RCMPSP belong to the class of priority rule-based methods.Several approaches in this class have been proposed in the literatures.Priority-based heuristics developed a schedule by adding one activity at a time to that schedule.A priority rule specifies, for a set of activities that are eligible to be scheduled at a particular point in the algorithm, the one to be placed on the schedule next.The priority values for each activity can be based on a number of factors, including activity duration, the difference between early and late start times, and the number of successor activities.For example, Wiley et al. 11 developed a method utilizing the work breakdown structure WBS and the Dantzig-Wolfe decomposition to generate feasible aggregate level multi-project program plans and schedules.The Dantzig-Wolfe procedure provided a means of generating interim solutions and their appropriate funding profiles.The decision maker may then choose any one of these solutions besides the optimal solution based upon his/her own experience and risk tolerance.Lova and Tormos 12 analyzed the effect of the two components of a heuristics based on priority rules-schedule generation scheme and priority rule-over two measures of performance-mean project delay and multi-project duration increase.They then considered two approaches: single-project and multi-project.The study carried out was allowed to conclude the superior performance of the parallel schedule generation scheme in the context of multi-project scheduling.Unlike researches mentioned above, Browning and Yassine 13 conducted a comprehensive analysis of 20 priority rules on 12,320 test problems generated to the specifications project, activity-, and resource-related characteristics.They found several situations in which widely advocated priority rules performed poorly.
However, heuristics methods converge slowly and are easy to be immersed in a local optimum; therefore, other researchers make use of computation for biological engineering to solve RCMPSP.For example, Kim et al. 14 studied a hybrid genetic algorithm with fuzzy logic controller to solve the RCMPSP.The proposed new approach was based on the design of genetic operators with fuzzy logic controller through initializing the revised serial method which outperforms the nonpreemptive scheduling with precedence and resource constraints.Kumanan et al. 15 proposed the use of a heuristic and a genetic algorithm for scheduling a multi-project environment with an objective to minimize the makespan of the project.The proposed method was validated with numerical examples and was found competent.
Furthermore, Joglekar and Ford 16 integrated a traditional control-theory-based derivation of optimal resource allocation and a system dynamics model.They used the control theory model to derive an optimal allocation policy, which they described with a resource allocation policy matrix.The matrix was useful in explaining differences in project performance and developing an intuitive understanding of the characteristics and impacts of different allocation policies.The results showed that and how foresighted policies can improve schedule performance without increasing the total amount of resource.Lambrechts et al. 17 built a robust schedule that met the project deadline and minimized the schedule instability cost.They described how stochastic resource breakdown can be modeled, which reaction was recommended, when resource infeasibility occurred due to a breakdown, and how one can protect the initial schedule from the adverse effects of potential breakdowns.The computational results showed that protection of the baseline schedule, coupled with intelligent schedule recovery, yielded significant performance gains over the use of deterministic scheduling approaches in a stochastic setting.Additionally, Adhau et al. 18 proposed a novel distributed multiagent system using auctions-based negotiation approach for resolving the resource conflicts and allocating multiple different types of shared resource amongst multiple competing projects.The proposed approach can solve complex large-sized multi-project instances without any limiting assumptions regarding the number of activities, shared resource or the number of projects.In addition, this approach further allowed random project release-time of projects which arrived dynamically over the planning horizon.
In contrast to these researches mentioned above, activities may be performed in more than one mode for MRCMPSP.If the activities select different modes, their execution durations and resource requirements will be changed at the same time.It means the optimal scheduling plan will also be changed.General heuristic methods or intelligent algorithms usually need enough time to seek an optimal plan and are easily immersed in a local optimum.Due to these reasons, we introduce an improved aiNet algorithm, which is more suitable for solving the MRCMPSP.In addition, how to deal with precedence constraints and resource ones is important and difficult in project scheduling.In this paper, we adopt design structure matrix DSM to identify precedence relationships among activities and then determine the activities in an eligible set a set of activities eligible to be scheduled at the current time during the scheduling of multi-projects in order to simplify constraints and the more detailed process will be discussed in Section 4.

Problem Description
The scheduling of multiple projects that share a common pool of resources can be carried out with two approaches: multi-project or single-project 19 .Using activity-on-node AON network representation, in the former, every project is considered with its corresponding "start" and "end" dummy activities.In the latter, projects are artificially merged together into a single project by the addition of two dummy activities: "start" and "end" of the single project.To obtain a feasible schedule of multi-project we can choose one of the two approaches as shown in Figure 1.Although the start and end dummy activities are not required to solve the scheduling problem, they have been added to formally describe the problem network.
When the multi-project approach is used, the time objective to be minimized is the mean project delay that is calculated with the expression min where α i denotes the weight of the ith project and I represents the number of projects.F i is completion time of project i. CP i is the resource unconstrained critical path length of project i. Obviously, minimizing this criterion is equivalent to minimizing the mean resourceconstrained completion time of the projects.When the single-project approach is used, the time objective to be minimized is the multi-project duration increase that can be calculated as follows:  where the parameters used in 3.2 are the same as 3.1 , and minimizing this criterion is equivalent to minimizing the makespan.

Conceptual Model of the Problem
The problem consists of the number of projects I, and the following assumptions are taken into consideration.
1 Activity i may be performed in any one mode j.Each job will have a specific mode and must be finished without changing mode.
2 Activity i cannot start unless all of its predecessors have been completed.
3 There are only renewable resources and nonrenewable ones are not considered.
4 Activity preemption is not allowable.
5 It is hypothesized that all projects are executed concurrently and precedence constraints among different projects are not considered.
6 Because time-to-market of products determines whether development process is successful, we can assume that the objective is to minimize the completion time of all projects but not a certain project.Due to this reason, we can adopt single-project approach to solve the problem.
Formally, the problem and the conceptual model will be described as follows.The considered problem consists of I parallel projects, each project i 1, . . ., I being composed of J i activities ij, j 1, . . ., J i .Activity ij in project i may be performed in one of the modes m 1, . . ., M ij .Each activity, once performed in a specific mode, must be finished without changing the mode.The activities are interrelated by two kinds of constrains.One is precedence constraints, and the other is resource constraints.While being processed, activity ij in project i performed in mode m requires q ijmr units of renewable resource type r 1, . . ., R during each period of its nonpreemptive duration d ijm .Each resource type r has a fix and limit available amount Q r .In addition, the optimal objective of the problem is to make the makespan shortest through finding out activity mode distribution scheme and feasible starting time of activity.Therefore, the model of MRCMPSP can be described as follows: The objective function 3.3 seeks to minimize the performance measure.A constraint 3.4 imposes the precedence relations between activities, and a constraint 3.5 limits the resource demand imposed by the activities being processed at time t to the available capacity.It means the number of available resources will change according to the completion and starting time of activities.Finally, a constraint 3.6 forces the finish times to be nonnegative.

Design Structure Matrix Modeling for Multiprojects
As a popular representation and analysis for system modeling, the design structure matrix DSM 20 provides a simple, compact, and visual representation of a complex system that supports an innovative solution to the decomposition and integration problems 21 .It had been widely applied as the basis of product development 22 and design iteration 23 .
Currently, there are many researches using DSM to analyze RCPSP but few for MRCMPSP.In this paper, we use DSM to find out the activities in an eligible set so as to simplify constraints 3.4 .If a project contains a large number of activities, information flows among activities described by matrix form are not only easy to be realized by computer but also compact and visual.
In general, the DSM approach is used only for single-project modeling.In this paper, we propose multi-project modeling approach based on DSM through introducing partitioning operation of DSM.In a multi-project environment, if each project is taken as an independent block, the whole process consisting of I parallel projects may be indicated by I blocks, where relationships among blocks are resource conflicts existing in activities between different projects.For example, Figures 2 a , 2 b , 2 c , and 2 d represent four independent projects, respectively, and none of the information constraints exist in different projects.Let capital A, B, C, and D denote these four projects, where each project consists of 5, 4, 6, and 4 activities, respectively.Figure 2 e represents DSM model of multi-project, where character symbol "C" indicates that there exist resource conflicts among projects.For example, the element in seventh row, second column denotes there exists resource competition between activity A 2 in project 1 and activity A e Multiproject model based on DSM

Simplification of MRCMPSP Model
During the scheduling of multi-projects, some activities will not be performed concurrently due to resource constraints and precedence ones.In this circumstance, precedence constraints among activities should be satisfied firstly so as to determine an eligible activity set.And then, resource conflicts that possibly occurred in this eligible set should be identified in order to decide the activity priority values, issued from the select priority rule.Therefore, the following sections will give a simplifying approach of precedence constraints and the activity priority values, respectively.

Simplification of Precedence Constraints
There exist both precedence constraints and resource ones for multi-project scheduling problem.As a result, activities should compete for limited resources at the premise of satisfying precedence constraints.Furthermore, owing to multi-project environment, resource conflicts among activities contain two situations.One is conflicts between different projects; the other is inside a project.For the former, because we assume that there exist no precedence constraints among different projects, resource conflicts will not occurr unless activities belonging to different projects share the same resource and its usage amount exceeds the available one at the current time.For the latter, there exist both precedence constraints and resource ones among activities inside a project, therefore, precedence constraints should be satisfied firstly and then resource ones.The concrete process for identifying resource conflicts between activity ij and jk can be described as follows: 1 set up DSM model of multi-project as shown in Figure 2 and use partitioning and banding operations to each block. 2 Construct an eligible activity set, EJ, an activity set being executed, BJ, and an activity set completed, FJ, where EJ can be generated through DSM.That is to say, if activity satisfies DSM ij, : K ∈ FJ from a row, we can obtain ij ∈ EJ or ij / ∈ EJ.Similarly, we can determine whether activity jk belongs to EJ.In doing so, EJ can be determined.3 Identify resource conflicts between activities ij and jk.If it exists, perform activities according to priority value; if not, they can be performed concurrently and add the activities that are to be scheduled to BJ. 4 If activities ij, and jk have been fulfilled, update EJ, BJ, and FJ.Determine the next activity set which will possibly cause resource conflicts and repeat the process till all of activities have been fulfilled.Due to these steps, identification approach of resource conflicts can be shown in Pseudocode 1.

Determination of Priority Value of Resource Competition
The same resource can be used by more activities, which will cause resource competition among different activities.It is necessary to use the activity priority value, issued from the select priority rule to obtain the selection probabilities.It is known that many activity priority rules exist.The priority of each activity is subject to many factors, for example, the activity schedule, resources needed, the required earliest or latest beginning time, the number of immediate follow-up activities, and so forth.Different priority setting rules based on these factors will bring different computation performance.A total of 18 priority rules reported from literatures 24, 25 are listed in Table 1.
In this paper, we only select four representative rules such as maximum duration MaxDur , maximum resource requirement MaxRR , Early Start Time EST , and maximum number of immediate successors MaxSuc .This is because clonal selection of aiNet algorithm has a great ability of local searching.However, the objective of the problem is to minimize the whole multi-projects duration.The effects of scarce resources on project duration should be minimized; therefore, the weights of each of project should be considered.

An Improved Artificial Immune Network Algorithm (aiNet) for
Solving MRCMPSP

Improved Strategy of aiNet Algorithm
In artificial immune system AIS , a newly developed biological computing technology that draws inspiration from vertebrate immune system has become a powerful information processing and problem-solving paradigm in both the scientific and engineering fields with great developmental potential.Researches indicate that AIS is also a kind of stochastic and parallel search method like GA and is an efficient approach to combinatorial optimization problem.So far, AIS has been applied to the traveling salesman problem TSP , multiobjective optimization, indirect path synthesis, the scheduling problem, capacitor placement, and assembly line balancing with encouraging results.Artificial immune network aiNet for short algorithms and models are originally proposed to perform information compression and data clustering based on Artificial immune system AIS theory.Opt-aiNet, a modified version of artificial immune network model specially designed for multimodal function optimization presented by Castro and Timmis 26 , has been demonstrated to have powerful multimodal searching ability as well as good stabilization.In this paper, an improved aiNet searching method for MRCMPSP is adopted based on opt-aiNet, and the new meanings of some terms redefined are shown in Table 2.It is notable that the fitness means the makespan of the multi-projects and the affinity denotes the difference between two potential scheduling schemes which will be described in Section 5.2.2.In addition, the stopping criterion has also been revised in order to avoid the early convergence in original algorithm.The detailed flow of the revised algorithm for MRCMPSP cannot be expatiated here for length limitation.
The scheme of the improved aiNet searching method for MRCMPSP, including the nine steps above, is shown in Figure 3.

Operational Definitions with Specific Details
As discussed earlier, the objective of the MRCMPSP is to schedule the activity such that precedence and resource constraints are satisfied and the makespan of the multi-projects is to be minimized.In order to illustrate the solution procedure of aiNet for MRCMPSP, network cell representation, population initialization, individual evaluation, clonal mutation operator, parameter tuning and so on will be described in the following sections.

Network Cell Representation
The key issue in the implementation of aiNet approach is encoding the antibody of a solution and its representation.In this paper, after extensive experimentation a direct problem representation for the MRCMPSP itself is used as a chromosome as shown in Table 3.
Complete information of a schedule for the MRCMPSP consists of an activity priority rule, activities, and their corresponding modes in each individual project.The activity priority rule is randomly chosen from the rules such as maximum duration, maximum resource requirement, early start time, and maximum number of immediate successors.For example, priority i /P 11 /M α represents that activity 1 in project 1 is executed in mode α and its activity priority rule is i when existing resource conflicts.

Population Initialization
The proposed aiNet approach deals with an antibody of individual strings.Currently, random techniques or heuristic procedure to generate initial solution has been used in general.However, it has been found that the performance of the aiNet approach with randomly start solutions is superior to that from pre-selected starting solutions.In addition, random initial solutions are helpful to effectively diverse the search space.Therefore, randomly generating an initial solution is adopted in this paper.

Individual Evaluation
Individual evaluation adopts affinity as well as fitness, where fitness function is evaluated according to a problem-specific objective function and affinity is used to get rid of similar individuals. (

1) Fitness Computation
Fitness is developed as follows.The steps involved are as follows: initially set the day as one and select all the activities in the projects to be done in that particular day.Allocate the available resource as per the rank in the chromosome.If the resources are not available to perform some activities then postpone those activities.Suppose the same resource is required to perform multiple activities in a project then decide which activity should be processed first according to one of the activity priority rules described in Section 4.2.2.After the end of the first day, increase the day to the next day and perform the same until completion of all activities of all projects.The concrete steps are shown in Figure 4. (

2) Affinity Comparison
Different individual corresponds to different schedule.Activity states in a project are decided by activity priority rule priority i and execution mode M α ; therefore, the affinity of two individuals X 1 and X 2 can be expressed as shown in formula 5.1 , where λ is a scale factor and it represents the difference between activity priority rule and execution mode: 5.1

Parameter Tuning
The parameters affecting the performance of aiNet approach are selected after initial experiments and past experience.Traditionally, these parameters are not determined independently since it is an issue of complex combination optimization.In the aiNet approach, there are three main user-defined parameters, namely, N number of individuals to be selected for cloning , N c number of clones generated and d the amount of low-affinity individual to be replaced .These three parameters mainly affect the convergence speed and the computational complexity as well as its ability to perform multi-modal searches.In this paper, we chose 50% of the total individuals for cloning.This is because parameter N strongly influences the size of the population.The larger the value of N, the higher the computational cost to run the algorithm.Therefore, 50% looks to be more appropriate and economical.Further, the parameter N c is used to find local optimums, which should be not too larger or too smaller.The higher the value of N c , the faster the occurrence of the convergence in terms of generations.However, the computational time per generation increases linearly with N c .At the same time, the lower value of N c may reduce computational time per generation but difficult to converge to the global optimum.As a result, we chose smaller N c in the early iterations but larger one in the later iterations.In addition, the parameter d is introduced to maintain the diversity in the population.In general, the value of d increases, and the algorithm reaches nearer to the optimal.However, when d approaches 1, the algorithm is the same as random searching.Thus, we set d at 20% for this paper.

Clonal Mutation Operator
Clonal selection plays an important role in adaptive evolution of the population.In essence, the objective of clonal selection is to generate a population of solutions near the solution candidate and then search in the neighborhood space.In other words, clonal selection enhances the local search by enlarging the search scope.In this paper, the clonal mutation procedure is as follows.Firstly, generate N c clonal individuals.Then, execute mutation operator shown in Table 4. Finally, select the best individual from clone the ones.

New Solution Generation
With an appropriate proportion, the operators described above can procedure a new generation: A produce G 1 schedules after clonal selection.
B wipe off G 2 similar schedules after negative selection operator using affinity comparison.
C generate G 3 new schedules according to proportion at random: , with G indicating the number of schedules in one generation.

Numerical Example
To illustrate the effectiveness of the algorithms described in this paper to solve MRCMPSP, we used a set of standard test problems systematically constructed by the project generator ProGen, which has been developed by Kolisch et al. 27 .They are available in the Project Scheduling Problem Library PSPLIB from the University of Kiel.The concrete steps are not described in detail due to the length limitation of the paper, and related parameters include a problem size I, the number of activities J 1 of project i, and the complexity of project i, the total number of renewable resource types R. In this research, I 4, R 3, and complexity 1.5.In addition, we also assume that the number of activities in each project is 18, 21, 16, and 17, respectively.Each availability of renewable resource is 13, 10, and 14, respectively, and detailed information about projects is not listed due to length limitation of the paper.DSM is introduced to model multi-project process, and the result is shown in Figure 5 after partitioning and banding algorithms.
The parameters of aiNet used to solve MRCMPSP are shown in Table 5.Through calculation, the result is shown in Figure 6.After 60 iterations, minimum fitness reduces to 67 units and average fitness generates more fluctuation due to introducing new individuals.It means that immune network still search new solutions.The schedule including activity priority values and execution modes by the proposed method is given in Table 7. Furthermore, Figure 7 gives the curve of network individuals with the number of iterations.We can see from Figure 7 that the number of network individuals keeps its stability between 55 and 65.That is to say, the algorithm no longer finds out the better solution.This variation process agrees with variation curve corresponding to minimum fitness in Figure 6, which further verifies the effectiveness and robustness of aiNet algorithm.The comparison of the proposed algorithm with other heuristics approaches is given in Figure 8.The proposed aiNet approach is better than the heuristics approach with four different priority rules.

More Computational Simulation Experiments
In order to compare the performance of the aiNet algorithm with other heuristic algorithms, extensive experiments to test the algorithm have been illustrated in this section.The multiproject test problems consist of 2, 4, and 10 single projects generated by Kolisch et al. 27 .The number of activities in a project is 30, 60, 90, and 120, respectively.For each problem type, we generated 20 instances.Each activity can use up to four resources and have three modes.To generate the multi-project instances the single project problems were randomly selected network complexity and resource factor.Table 6 shows the combinations of the number of single projects used for the problem.
Setting parameters is a key issue to influence the performance of the algorithm.In order to get the most out of the aiNet algorithm, parameter tuning mentioned in Section 5.2.4 was implemented on a set of randomly selected multi-project problems.Table 8 shows results obtained by the various algorithms on the problem subsets.The proposed algorithm is compared with other approaches, including genetic algorithm GA , simulated annealing 1 12       project delays and lower total makespan obtained by the four approaches for all the problems are also compared, which show that our approach is obviously better than AIS and SA for all the problems but a little worse than ACO when the problem size is small.In addition, when the number of schedules increases, our approach still searches for the optimum but others are hardly influenced by it.This is because our approach introduces operations such as network compression, parameter tuning, and negative selection which are helpful to maintain the diversity of individuals.However, our algorithm may spend more computation time.There are two reasons causing this result: one is that clone selection may occupy more time in order to find out the local optimum; the other is that the new individuals are introduced to replace the more similar ones so as to find out the global optimum.

Discussions
From the examples mentioned above, the effectiveness of the aiNet method is verified and the following advantages of the aiNet-searching method for solving the multi-mode resourceconstrained multi-project scheduling problem can be summarized.

Powerful Global Search Capability
The aiNet-searching method, similar to that of the evolution strategies and artificial neural networks, is based on local search intertwined with global search.In each iteration, a population of individuals is optimized locally through affinity proportional mutation; the global search is implemented by the population evolution operation; the network compression operation and the constant introduction of new randomly generated individuals help to keep the diversity in population.The satisfactory results obtained in a large number of experiments have demonstrated the powerful global search capability as well as the robustness of the aiNet-searching method in solving MRCMPSP despite of the uncertainty in algorithm.

Simplicity and High Speed
In the aiNet-searching method, there is no encoding of individuals required, a direct problem representation is directly used in iterations; there is also no need to use gradient method and mutation operation is directly performed according to individual fitness.In addition, despite of the powerful search capability, the basic operations adopted in aiNet-searching method are only mutation, evaluation, and network compression, which are very easy to be implemented in computer.By simplifying the parameters relevant to MRCMPSP, the number of parameters used for project scheduling problem decreases and, hence, reduces the dimensions of searching space, simplifying the problem and computational complexity.

More Candidate Solutions with Large Diversity
The two most important characters of the aiNet-searching method are that the dynamically adjusted optimum population size through metadynamics diversity introduction and network compression.Namely, some of the similar individuals are eliminated to avoid redundancy when the population reaches a stable state; then a number of new randomly generated ones are added to current population, this strategy leads to the large diversity between candidate solutions found.Besides, it should be noted that when the improved aiNet algorithm is used to solve MRCMPSP, the ideal condition for convergence is that, after several times of iteration, the number of network individuals should not change, indicating that the immune network reach to stabilization and the algorithm cannot go further to find better local solutions.But in real tests, the activity mode selection, which has great impact on its execution cycles and priority, makes the complexity of problem solving exponentially rise with the increase of the number of activity execution modes.For example, for a multi-project scheduling problem containing activities no more than 100 and average number of activity modes no more than 3, the number of configuration schemes for all activities in different modes may be as high as 3 100 and it is unlikely to go over all the schemes using any algorithms.Due to this reason, if the number of network individuals fluctuates in a certain range during several times of iteration, it will mean that the algorithm meets the convergence conditions.

Conclusions
In this paper, an improved artificial immune algorithm used to solve MRCMPSP is put forward.Firstly, the mathematic model of MRCMPSP is set up.Secondly, the DSM method is adopted to simplify the mathematic model of MRCMPSP so as to improve quality and quantity of candidate solutions.And then, operations including clonal selection, negative selection, and network compression are used to realize the local searching, and global searching which will assure that the algorithm has a powerful searching ability and also avoids the possible combinatorial explosion.Subsequently, a set of case studies are given to test the searching ability of the algorithm.The results show that it is efficient and effective comparing to others.
Future works may include the following two aspects: 1 how to use aiNet algorithm to solve multiobject scheduling problem such as time, cost, and resource utilization rate; 2 the vast majority of the research efforts in project scheduling assume complete information about the scheduling problem to be solved and a static deterministic environment.However, in the real world, project activities are subject to considerable uncertainty.As a result, how to introduce risk management strategies to solve project scheduling problem in a dynamic environment is another area that needs to be investigated in future.

Figure 2 :
Figure 2: Design structure matrix modeling for multi-project.

Figure 3 :
Figure 3: Scheme of the improved aiNet searching method for MRCMPSP.

Figure 4 :
Figure 4: The evaluation process of an individual.

Figure 5 :
Figure 5: The DSM model of multi-projects.

Figure 6 :
Figure 6: Convergence of makespan with the number of generations.

Figure 7 :
Figure 7: Relationship between individuals and generations.

Figure 8 :
Figure 8: Comparison of schedules generated by the proposed aiNet and other existing approaches.

PSEUDOCODE 1 :
FJ then ij, jk belong to EJ if q ijr + q ikr > Q r then resource conflict exists between ij and ik else there are no resource conflicts between ij and ik 3 if activities between projects if q ijr + q ikr > Q r then resource conflict exists between ij and ik else there are no resource conflicts between ij and ik 4 update EJ, BJ and FJ if there are no activities needed scheduling process finished, otherwise go on.5 end Pseudocodes of identification process of resource conflicts.

Table 1 :
Priority rules used for activity selection.

Table 2 :
New meaning of the terms in general aiNet-searching method.

Table 3 :
Direct problem representation of a schedule.

Table 5 :
Set parameters of aiNet.SA , ant colony optimization ACO , and artificial immune system AIS , in view of the average project delay APD and lower total makespan LTM of multi-project.In this table, the first column indicates the problem subset.The second column shows the number of schedules, which is used as the stopping criterion.The third to the fifth columns represent the averages of APD and LTM from various algorithms.From Table8, it is seen that out of 12 subsets, the aiNet algorithm is superior to others when the problem size is larger.The average

Table 6 :
Problem instances for the MRCMPSP problem subset.
NOI: no. of instances; I: no. of projects; J i : no. of activities of project i; M: no. of the modes the activity has; R: resources each activity can use.

Table 7 :
Optimal activity schedules generated by the proposed aiNet approach.

Table 8 :
Comparison of performance obtained by different algorithms.