1. INTRODUCTION
The project scheduling is the most commonly studied problems in the field of project management. Quality and execution of the project largely depends on the scheduling before performing the project. In addition to, scheduling before performing the project can be affected to the some competitive issues such as: delivery on time, reactive scheduling, performing of the project. One of the widely method for project scheduling is critical path method (CPM). But the major obstacle of this method is the absence of consideration resource constraints, while the resource constraint is one of the most effective factors on project scheduling. Therefore one of the suggested method, the resource constrained project scheduling (RCPSP) was introduced. The Project scheduling problem with resource constraint was presented by Wiest (1962). Multimode resource constrained project scheduling Problem (MRCPSP) is generalized of RCPSP. In these problems each activity can perform in several modes. Nonrenewable resources can be considered beside the renewable resource. The first solution of these problems is proposed by Słowiński (1980). These problems are NPHard (Blazewicz et al., 1983). Besides, Sprecher and Drexl (1998) illustrated that multimode resource constraints project scheduling can’t be solved with large size with respect to the nonrenewable resource in the reasonable time. The exact method including branch and bound, linear programing, branch and cut are proposed by researchers (Słowiński, 1980;Speranza and Vercellis, 1993;Zhu et al., 2006). But due to the low efficiency of these methods in solving cases with big size and complex, the metaheuristic algorithms are used frequently. The objective functions are considered in these problems including minimizing the makespan, the cost of project, maximizing the NPV, timecost tradeoff. One of the most common nonmonetary criteria is the minimum of the makespan. Bianco and Caramia (2012) considered scheduling problem without resource constraint in order to minimize the makespan and proposed an exact algorithm to solve it. Cheng et al. (2015) solved the MRCPSP with nonpreemptive activity with the aim of minimizing the makespan by branch and bound algorithm and compared the result to the preemptive case.
Having regard to the cash flow in the project scheduling, the Net present value becomes to a significant criteria. Cash flow in the project was introduced by Russell (1970) for the first time. The cash flows according to the four model including lump sum payment; payment at activity completion times, payment at equal time intervals and progress payment are paid. Vanhoucke et al. (2003) considered progress payment model in project scheduling with discounted cash flows and they solved it by branch and bound. Mika et al. (2005) proposed multimode resource constraint problem scheduling with discount cash flows. They considered four payments model and used simulated annealing and Tabu search algorithms for solving the model. Chen et al. (2010) proposed Ant colony algorithm for multimode resource constraint with discounting cash flows. Wiesemann et al. (2010) considered uncertainty cases in order to maximize NPV. In this model cash flows and durations of each activity have an occurrence probability and solved by branch and bound algorithm. He et al. (2012) solved project payment scheduling by Tabu search and Simulated annealing with the aim of maximizing the NPV where each activity can be executed in several modes.
2. LITERATURE REVIEW
There have been different researches considering MRCPSP problems that could be categorized in makespan minimization (Damak et al., 2009;Deblaere et al., 2011;Afshar et al., 2013), Cost minimization (Ranjbar et al., 2012;Khalilzadeh, 2012), NPV(net present value) minimization (Bey et al., 1981;Kazaz and Sepil, 1996) and multi objective optimization (Afshar et al., 2007;Ke et al., 2009).
Creemers et al. (2015) considered uncertainty cases in project scheduling to maximize the Net present value. In this model the activities have stochastic duration. Based on relevant studies, this paper presents the MRCPSP in order to minimize the NPV and makespan simultaneously. Moreover the time limit for the availability of renewable resource and payment based on progress payment is considered. The rest of this paper is as follows: In section 2, the problem describes. Section 3, presents the model of this study. Section 4, explains the solution approach. Section 5, shows the computational experiment. Finally, the last section presents the conclusions.
Balouka et al. (2015) expressed that most of current works in multimode resourceconstrained project scheduling consider value for optimization parameter, yet it’s more sufficient if optimization perform in value, cost and time simultaneously. Researchers also performed some numeric examples to demonstrate proposed model.
Liu et al. (2017) proposed a new approach with decomposition on time windows. Proposed model contain making feasible subspaces for activities and using four different strategies for picking activities and a developed version of serial scheduling scheme. Based on results, proposed model perform better than other two algorithms.
On the basis of uncertainty theory, Zhao and Ke (2017) performed an uncertain recourseconstrained project scheduling problem (URCSP) programming with uncertain activity durations and NPV maximization of project’s cash flow instead of minimizing makespan in classic RCPSP literature.
Zoraghi et al. (2017) emphasized that material ordering in both quantity and time aspects, could be effective on optimization of MRCPSP problems. So researchers considered bonus and penalty policies in programming and developed a MRCPSMO (Multi Mode Resources Constrained Project Scheduling with Material Ordering) model and used PSO(Particle Swarm Optimization)GA(Genetic Algorithm), GAGA(Genetic Algorithm Genetic Algorithm) and SAGA(Simulated Annealing Genetic Algorithm) as the model is NPhard and results revealed that PSOGA(Particle Swarm Optimization Genetic Algorithm) performs better than the other two algorithms.
3. PROBLEM DESCRIPTION
The problem studied in this paper is the multimode resource constrained aimed to minimize the net present value of costs and makespan. The project involves j = 1, 2, …, n activity where activities 1 and J are dummy activities that are described in an activityonnode (AON) network G = (V, E) where the node (V) represents the activity and E represents the finish to start precedence relation. These relations enforce that activity j only can started after all of its predecessors P_{j} are completed. Each activity j can be executed in one of several feasible modes by the set ${M}_{j}=1,\hspace{0.17em}\dots ,\hspace{0.17em}M.$ The duration activity j in mode m, d_{jm} is assumed to be a discrete without preemption. Let R ={1, 2, …, K} the set for renewable resource, we considered its availability per period. The activity j needs r_{jmk} unit of resource for performing in mode m. Also it needs cash flow cf_{jm} for completed. These cash flows are occurred based on progress payment. The amounts of payment P_{p} are computed as partial completed activity at the end of payment period. In addition, renewable reresources have available time and due date where cannot use these resources before the available time. Also, using these resources after due date is permitted by paying tardiness penalty cost. The objective is to determine a set of nondominated scheduling and also to assign executive mode for each activity regarding two objective function with given constraints.
4. MODEL STATEMENT
As mentioned in pervious section, the cash flows are paid base on progress payment. In this model, the payments are paid at equal regular time (T). This means at the end of each payment period (T, 2T, …, lT), the value of these payments are computed. This value are calculated based on the partial accomplishment of all activity during period [tT, t].
Figure 1 displays the simple scheduling of three activities. The variable s_{j} shows the start time of activity, ${d}_{1}=20,\hspace{0.17em}{d}_{2}=13,\hspace{0.17em}{d}_{3}=50$ shows duration of each activity and considered the cash flows cf_{1} = cf_{2} = cf_{3} = 100 are required for performing each activity. So the value of payment can compute as follows:
t_{1} = 20: At the end of the first payment period (t_{p} = 20), 10% of activity 1 has been accomplished (y_{1} = 2/20), the activity 2 hasn’t started yet and 2% of activity 3 has been completed. Thus, the sum of all payments in the first payment period is as follows:
t_{2} = 40: At the end of second payment period (t_{p} = 40), the remaining work (18/20 = 9%) of activity 1 has been completed, activity 2 performed during second payment period and 40% of activity 3 accomplished. So the value of payment is computed as follows:
t_{3} = 60: In this period only activity 3 has been continued. Thus the value of payment is as follows:
t_{4} = 80: Finally, in this period activity 3 has been completed and the payment is calculated as follows:
In this paper, the model of Vanhoucke et al. (2003) is developed. By the model of Vanhoucke et al. (2003) activities lie in 2 payment periods. While some of the activities due to their longer durations can be laid in more than 2 payment periods.
According to the concepts in Table 1, and above mentioned, the mathematical model is presented as follows:
s.t:
The objective function (1), represents the minimization of the net present value, which includes two parts: cash flows and net present value of tardiness penalty costs of renewable resource. In the first part, the net present value of cash flows is calculated. Where the cash flows with respect to the partial work completed of all activity at the end of payment period are calculated. The rest of the objective function (1), computed the net present value of tardiness penalty costs of each renewable resource. The objective function (2), represents the total time of project and should be minimized. Equation (3), ensures that each activity can performed only in one mode and exactly start in one time. Constraint (4), shows the precedence relationships. Constraint (5), shows the quantity of resource k for activity j is performing in mode m. Inequality (6), ensure the starting times of all activity should be greater than or equal to the availability time of their corresponding resources. Constraint (7), shows release time of renewable resource k. Equation (8), represents the starting time of each activity. Equation (9), shows the amount of payment that occurred in the equal time interval T. Equation (10), represents the portion of work completed of activity j is performing in mode m during review period [tT, t]. Equations (11), and (12), denote the domain of the variables.
5. NONDOMINATED SORTING GENETIC ALGORITHM (NSAGII)
In the optimization problem typically the main goal of optimizing is determined the optimum point (minimum or maximum) of the objective function. But in some cases, several objective functions must be optimize simultaneously that often some of these objective functions are in the conflict with each other. In these situations, the optimal function is generally defined as the weighted linear combination of objective functions, so the problem solved as before. But this way have three obstacles such as 1) how to define the objective function combination, 2) how to determine its weights and 3) loss of some optimal points. Therefore, we have to offer a new definition of optimal point that covers all of the criteria. So the concept of Paretooptimal solution offered. In this case, we can find a set of solutions so that they are better than the other solutions in the search space. These set of solutions are named Paretooptimal solution and another solution are named dominated solutions. In the nondominated solution, all of the solutions are optimal and choosing one point between these optimal solution set are corresponding to the priority and circumstances. Hence in this paper, nondominated sorting genetic algorithm (NSGAII) is considered. The NSGAII (Goldberg, 1989) revised version of the first NSGA algorithm and advanced by Deb et al. (2002). The solution finding procedures with NSGAII are as follows:
5.1 Data Gathering and Selection of Parameters
At the first, the prerequisite parameters of the model such as number of objective function, decision variable, precedence relationship, number of renewable resource and the amount of availability, number of mode for each activity with its duration and requirement resource, cash flows for executive activity, tardiness penalty costs of resources, their availability time and due date, and discount rate are defined. Then, the parameters of algorithm including population size, number of generations, probability of crossover and mutation should be set up.
5.2 Encoding of a Solution
The solutions are demonstrated by the chromosomes which are composed of two parts: (1) the order of activity list; and (2) the mode assignment list for activity performing. The first part of chromosomes shows the order of activity list according to precedence relationship and resource constraint. In this list, each activity in each situation can appear only after all its predecessors and requirement resources are available for performing. The second part of the list shows the mode selected for performing the activity. Figure 2, shows these structures for six activities. Based on the constraints of problem the initial populations with size N are made up.
5.3 Crossover and Mutation Operations
By applying crossover operation, numbers of child are determined. Based on the crossover rate, some chromosomes are selected through the initial population randomly. In this paper, arithmetic crossover is used. Figure 3, shows this crossover. Then, a random number between (0, 1) created. By this number, weighted sum occurred between two selected chromosomes and new chromosome is created. Mutation operation applies to the mode assignment list of activity. A mutation operator adds a unit Gaussian distributed random value to the whole chromosome. The new genes value is clipped if it falls outside of the userspecified lower or upper bounds for that gene. This mutation operator can only be used for integer and float genes.
5.4 Combination of Population
In each iteration, initial population and child population produced by crossover and mutation operation should be integrated together. Then, create archive set.
5.5 Forming Pareto Front
The objective functions are calculated for all members of archive set. Then, sorting the members based on nondominated front and assigned front number to them.
5.6 Calculating Crowding Distance
Since the members are selected according to the front number and crowding distance, the crowding distance is calculated for the archive members as follows:
Where k is the number of objective functions and i is the members of archive set. f^{max} and f^{min} are maximum and minimum value of objective function. f_{(k,i+1)} is kth objective function of (i+1)th solution and f_{(k,i1)} is kth objective function of (i1)th solution. The greater value for this parameter leads to divergence and the better range to the population.
5.7 Create Next Generation
The next generation of size N from combined population is produced by using front number and crowding distance. According to this, if two members selected in different front number, the member with lower (the solutions in the lower front number are nondominated and optimal) front number will be selected. Otherwise, if the front numbers are the same, then the member with the larger crowding distance will be chosen. With this action the diversification of solution is better.
The above steps till the termination condition continuous. The termination condition defined as (1) setting up maximum iteration (2) not entering a new solution to the optimal front after repeated deterministic iteration.
6. NONDOMINATED ROULETTE GENETIC ALGORITHM
NRGA and NSGA are basically the same in many aspects like population generation, crossover, mutation and nondominated solution detection. Yet there is an important difference in picking chromosomes for operations like crossover and mutation. NSGA normally uses binary torment selection for deciding which chromosomes from which frontiers to be chosen for operations.
NRGA uses roulette wheel process for choosing frontiers and probability for each chromosome to be picked, calculate as below
f_{i} Indicates distance in this research and it means that chromosomes with bigger distance from others in a frontier, have a bigger chance to be chosen for operations. This logic is based on the fact that diversity in chromosome structures, could make better or even mutated answers in next generations of algorithm.
7. ANALYSIS RESULTS
After developing model, to determine the effectiveness of the proposed model and also to evaluate the performance of suggested algorithms, 4 groups of standard problems from “project scheduling problem library” with the activity size of j12, j18, j32 and j52 have been selected randomly.1) Each group involves 5 instances and therefore 20 instances solved by each algorithm. Extra parameters for these instances, which do not exist in simple MRCPSP and are obligatory for our model, have been generated randomly with respect to the resource types. These parameters including availability time, due date and tardiness penalty cost per unit of time are set between range (1, 10), (1, 30) and (5, 9) respectively. Table 2 shows a description of the instance used from PSPLIB. Also the file name, the number of activities and the number of modes for each activity are mentioned too.
7.1 Comparison Metrics for Evaluating Algorithms
In this paper, four metrics are used for evaluating algorithms includes:

Mean ideal distance (MID): By applying this metric, the distance between nondominated solution and ideal point is calculated. Whatever this metric is lower, the algorithm has better performance (Zitzler and Thiele, 1998). If f_{1best} and f_{2best} are ideal points, this metric can be calculated as the follows:
Where n is number of nondominated solution.

Diversification metric (DM): By calculating this metric according to equation (15), the spread of the solutions are determined. The higher DM indications better algorithm (Zitzler, 1999).

Spacing metric (SM): Based on this metric, the uniformity of nondominated solution spread is calculated. The lower SM is favorable (Srinivas and Deb, 1994). This metric is defined by:
Where d_{i} is the Euclidean distance between consecutive solutions in the found nondominated solutions, and d ̅ is the average of these distances.

Number of nondominated solutions (NOS): This metric shows the number of nondominated solution that each algorithm can be fined. The higher NDS shows better algorithm (Schaffer, 1985)
The performance of the proposed algorithm is evaluated by four metrics. The Obtained value of these metrics for 20 instances is described in Table 3. As shown in Table 3, the NSGAII optimal solutions are better than the NRGA. According to the mean ideal distance, the NSGAII has better performance in 85% cases. The obtained solution from this algorithm has a higher closeness to the ideal point. Based on spacing metric, the NSGAII can achieve to the solution set with the lower SM in 55% and also can find more nondominated solutions. The lower SM shows more uniformity of these nondominated solutions. For example, we can revert to the obtained results of 12, 16 and 20 instances.
Figure 4, shows the nondominated solutions obtained from algorithms for eight problems which selected randomly from 20 instances. In the most cases the solutions obtained from the NSGAII can dominate the solution obtained by the NRGA algorithm.
Finally, according to mentioned metrics and Figure 4, we can conclude the better performance of NSGAII algorithm in comparison to the NRGA algorithm.
8. Conclusion
In this paper, a biobjective model for the MRCPSP is presented and the NPV and makespan are minimized concurrently. Besides of the common constraint of these kinds of problems, the availability constraint for the renewable resource is also considered. Further, the payments are based on the equal time intervals and the values of these payments are related to the partial accomplishment activities at the end of payment periods. In order to solve the proposed model as a multiobjective model, two metaheuristic algorithms including NSGAII and NRGA, were proposed. This has been done by selecting problems from PSPLIB for testing the proposed model of this research. The performances of these algorithms are evaluated by four metrics. The obtained results illustrate that the NSGAII can achieve to the lower MID and SM indicators in the 85% and 55% cases respectively. Furthermore, this algorithm can obtain more nondominated solutions.