Abstract
Resource-constrained project scheduling has been a significant and practical problem in recent decades. In this research, besides previous assumptions and models regarding scheduling, the reliability function with a novel approach is included in the model. A new look at the project scheduling problem is pursued by studying the probability of access to renewable resources. The mentioned problem programming model is a mixed nonlinear mathematical model that uses the properties of an exponential function to become a linear programming model, exact optimization software is used to solve it in smaller dimensions, and a genetic algorithm is used to solve it in NP-hard dimensions. The algorithms and statistical analysis results at a 95% confidence level show the proper performance of the genetic algorithm; therefore, this algorithm is more efficient for the proposed model. Using the provided mathematical model, this research leads to decreasing time and lags, decreasing costs, and increasing reliability in multimode activities.
1. Introduction
Certainly, the issue of resource-constrained project scheduling is one of the most widely used scheduling issues; other scheduling problems are a subset of this issue [1]. The problem of resource-constrained project scheduling seeks a suitable sequence for performing activities of a project so that constraints such as project network precedence constraints and various types of resource constraints in the project are provided simultaneously, and certain measurement criteria including project implementation time, implementation cost, and number of lagged activities are optimized. These types of problems are of great importance in scientific and practical dimensions [2].
Projects in many countries play a very important role in national development and economic recovery. Economic growth in such countries is due to the implementation of projects. In general, projects carried out at the national level have large dimensions, and large budgets must be allocated for their implementation. Therefore, optimal management has led to successful project implementation, increased revenues, and reduced costs. Therefore, this management must be done carefully and correctly [2]. The issue of project scheduling has been limited in the subject literature. These constraints are mainly considered as resource type and are known as resource-constrained project scheduling problem (RCPSP). In the classic version, RCPSP aims to provide an optimal schedule for the sequence of activities under resource constraints so as to minimize project execution time. The resources used in the classic version are considered as the renewable type [3].
In the last decade, the issue of project scheduling has been studied and developed from various aspects. These developments cover various aspects of this issue. Providing different linear and nonlinear models for this problem, single-state or multistate and intermittent or non-intermittent activities, existence of resources of different types (in most cases renewable and nonrenewable resources), various objective functions, and certainty or uncertainty of the parameters of the problem are considered from different dimensions of the problem [1].
The main contributions of this research are as follows:(i)In the RCPSP model provided in this research, in addition to previous assumptions and constraints, reliability is considered as a new and practical concept.(ii)We express the probability of the availability of renewable resources by maximizing reliability, and as a result, the associated constraints are added to the model.(iii)The model considers multiobjective functions of cost, time, and reliability.(iv)Constraints associated with reliability have led to the nonlinearity of the model, which is eventually presented as a linear model.(v)Since the scheduling optimization model has its complexities with limited resources, in this research, the genetic metaheuristic algorithm will be used to solve the proposed mathematical model.(vi)The obtained optimal solutions will be compared with the final solutions of the exact method.
2. Literature Review
Various models have been developed to solve project scheduling problems and divided into several different branches. Kolisch et al. [3] have proposed a fuzzy critical chain method for resource-constrained project scheduling in conditions of uncertainty and have used project buffer to cope with uncertainty. Pan et al. [4] investigated resource-constrained project scheduling. Instead of using the traditional tabu search method and other methods based on artificial intelligence, this paper uses the improved tabu search method to modify the initial response generation method instead of the traditional method. Chen and Askin [5] used a combination of genetic algorithms and simulated annealing to solve the simultaneous multiproject scheduling problem and investigated the performance of the proposed method in three different case studies. Kyriakidis et al. [6] used mixed-integer linear programming models to formulate single-state and multistate project scheduling problems and the resource-task network approach used in scheduling problems to represent. Paraskevopoulos et al. [7] used the event view display approach considering the constraints that may occur in the process due to the use of activity lists and random number methods. They used the scatter search-based algorithm equipped with an adaptive iterated local search technique to solve the problem.
Bruni et al. [8] investigated the resource-constrained project scheduling in situations where the duration of activities is uncertain and used independent random variables with a known distribution function to indicate the possibility of uncertainty in the duration of activities, that is, used the possible planning framework in the form of possible common constraints. Finally, according to the level of confidence considered by the decision-maker, problems with a different number of activities were examined. It was proved to be better controlled by dealing more strictly with uncertainty.
Pan et al. [4] addressed the resource-constrained project scheduling problem; instead of using the traditional tabu search method and other methods based on artificial intelligence, they used the improved tabu search method by modifying the initial response generation method. We can also refer to cases that have simultaneously studied the problem of portfolio selection and scheduling. For example, we can refer to studies conducted by [5, 9]. But the point is that most of these studies have mainly focused on the selection aspect and less on the potential effects of different procurement strategies and annual budgets on resource allocation. For example, in the first planning year/period, the company may have a certain number of cranes. This number will decrease or increase in the following year/period according to the desired policies.
For this reason, Liu et al. [10] provided an optimization model using constraint planning for selection problems and scheduling with time-dependent constraints and proposed a general model for maximizing the total profit of the selected research and development construction projects. Issues such as relationships and incompatibilities between projects have also been considered. However, all the assumptions are related to certain conditions, the projects are considered in a single set, and the details of the activities are not considered in the review. It is noteworthy that the scheduling problem in the case of time-dependent resources was raised by Tautenhahn et al. [11], in which the amount of access to resources changes over time.
Bouleimen et al. [12] provide an efficient simulated annealing algorithm for a resource-constrained problem with different modes to do the job. The objective is to minimize the duration of the project. They used two common loops in the simulated annealing method and a project search mode. Other approaches have been proposed in project planning and design in addition to the issues that concern the minimization of project completion time. Cash flow management is one of these views that will bring benefits such as cost control and profit for contractors. For example, Liu et al. [10] used constraint planning to maximize the net present value of project cash flows.
Tirkolaee et al. [13] carried out a study on the multiobjective optimization of resource-constrained project scheduling in multimode context. They used Pareto-based algorithms. The problem objectives included maximizing net present value and minimizing time to complete activities. They used nonlinear programming that solved numerical problems using the GAMS-BARON solver and the Epsilon constraint method. Balouka et al. [14] provided a robust optimization approach to the resource-constrained project scheduling problem. New Benders’ cuts led to new selections and allocations of resources. Uncertain sets of parameters also depend on the selection of modes. Chakrabortty et al. [15] provided the multimode resource-constrained project scheduling problem using the variable neighborhood search metaheuristic method. They provided a near-optimal quick solution to the proposed problem. Tao et al. [16] provided resource-constrained project scheduling with alternative project structures. In their research, an AND-OR network was presented for the problem, and the two-objective mixed-integer linear programming of the problem with a balance between cost and total profit was provided. To solve the problem, a two-objective genetic method and tabu search were used. In their paper, Xie et al. [17] presented an optimization model for scheduling projects under uncertainty of activity cost. Their method helps a device obtain accurate answers to the problem, and a hybrid approach and genetic algorithm are used. Yuan et al. [18] modeled a multiobjective project scheduling problem with fuzzy activities. The proposed interval values are considered of execution time for activities as fuzzy theory. Also, is the collaborative evaluation framework with a self-adaptive mechanism and the self-adaptive selection process.
More recent related research in this area includes research conducted by [19–21]. However, resource-constrained problems have been used in many problems. In project scheduling problems, a set of activities is considered by observing the sequence of performing them, and restrictions on access to renewable and nonrenewable resources and different modes of activities are considered in the model studied in that research.
Saad et al. [22] solved the resource-constrained project scheduling problem using a quantum-based genetic algorithm. The optimal solution to RSPSP problems requires a balance between discovery/extraction, diversity, and intensification. With this viewpoint, the evolutionary method of genetics can improve the population and the quality of solutions. It investigates the performance of a quantum-based genetic algorithm and can be used for resource-constrained scheduling problems. The quantum-based genetic algorithm is similar to the classical genetic algorithm, but the updated and initial populations are implemented using quantum situations. Bulavchuk et al. [23] used a genetic algorithm based on algebraic methods for RCPSP. They used resource constraints and a criterion for net present value. Furthermore, acceptable schedules were found by solving linear equations. In the genetic algorithm used in their research, multivariate vectors were used to describe individuals in the population. Their computational results and research findings show the efficiency of the genetic algorithm. Asadujjaman et al. [24] used a secure genetic algorithm to solve the resource-constrained project scheduling problem based on NPV. They used a combined genetic method with a secure algorithm to improve the performance of all components. The performance of the IGA algorithm used was improved by adding variables based on local search and backward implementation. Table 1 shows a summary of the literature review.
In the RCPSP model provided in this research, in addition to previous assumptions and constraints, reliability is considered as a new and practical concept, in the sense that we express the probability of the availability of renewable resources by maximizing reliability, and as a result, the associated constraints are added to the model. The model considers multiobjective functions of cost, time, and reliability. Constraints associated with reliability have led to the nonlinearity of the model, which is eventually presented as a linear model. Since the scheduling optimization model has its complexities with limited resources, in this research, the genetic metaheuristic algorithm will be used to solve the proposed mathematical model. The obtained optimal solutions will be compared with the final solutions of the exact method. This section reviews the main research works on resource-constrained project scheduling problem. Section 3 provides the modeling of the problem, its constraints, variables, and parameters. In Section 4, we provide numerical examples and solve them in LINGO software and genetic metaheuristic algorithm and compare the results obtained from both methods. In the last section, we provide conclusions and suggestions for future research.
3. Problem Modeling
First, to express the basic model in the RCPSP, we define the sets, variables, and parameters used in this research. In this research, we want to investigate the resource-constrained project scheduling in several periods, including several activities with several different modes for each activity. Project resources are also divided into renewable and nonrenewable. Decisions made after solving the mathematical model include whether or not to start an activity in a particular situation and the need or no need for a renewable resource with a certain amount in a situation where a certain amount of it was initially available in the project. Additionally, in this problem, the duration of each activity in the project will be specified. Finally, the minimum amount of lags in the scheduling project is calculated in the optimal state after determining the problem decisions. It should be noted that the main objective of this problem is to minimize the number of lags in project scheduling for existing activities and, at the same time, to make the said decisions optimally.
3.1. Sets
I: Set of activities. M: Set of available modes. K: Set of renewable resources. L: Set of nonrenewable resources. T: Set of periods.
3.2. Parameters
: Total cost. : Lags. : Reliability. : Time. : Number of the K renewable resources on the tth day. : Units required from the Kth renewable resource (). : Number of Kth renewable sources. : Units required from the Lth nonrenewable resource (). : Number of Lth nonrenewable resources. : Reliability (probability of availability) of the Kth renewable resource to the required number on the tth day. : Probability of availability of Kth renewable resource. : The upper limit of the Kth renewable resource. : The lower limit of the Kth renewable source. : Cost per unit of renewable resource. : Cost per unit of nonrenewable resource on all days and all consumable resources available.
3.3. Variables
if activity i starts in state m and at time t.
if the kth renewable resource on the tth day is needed as in a situation where there is generally enough of from that resource at the beginning of the project.
: Duration of performing activity i in state m.
In the following, we explain the objective function and constraints of the basic model of the resource-constrained project scheduling problem:
The objective function (1) is expressed as the minimum lags. Constraint (2) shows the sequence of performing activities considering their prerequisite constraints with lag = 0. Constraint (3) guarantees that each activity is performed in one mode and at a time by spending the resources to perform that activity in the same particular model. Constraints (4) and (5) indicate the limitation of access to renewable and nonrenewable resources (the definition of variables is given at the end of the model).
In the following, the model studied in this research considers the reliability functions that have been investigated to the possibility of accessibility of renewable resources. Subsequent constraints have also been added to the model and are described below.
The nonlinear multiobjective RCPSP model is as follows:
The objective function is expressed as a multiobjective function of cost minimization, time lag minimization, and reliability maximization. Constraints (9) and (10) are the basic constraints (RCPSP), as described earlier. Constraint (11) indicates the required number of the kth renewable resources on the tth day. Constraint (12) states that the number of kth renewable resources on the tth day is less than the total number of the kth renewable resources. Constraint (13) is the inherent constraint of the kth renewable resource, which is confined between the upper and lower limits. Constraint (14) is the inherent constraint of access to nonrenewable resources. Constraint (15) is related to the reliability of the project and expresses the possibility of accessibility and selection of renewable resources from existing resources with the binomial distribution. Constraint (16) shows the total time lags. Constraint (17) represents the project’s total cost, which is the sum of the costs of renewable and nonrenewable resources. Constraint (18) indicates the total reliability of the project; for example, the reliability of a renewable resource is obtained from the probability of its accessibility at time 1, …, .
This multiobjective model is nonlinear due to constraints (15) and (18). We used exponential function properties to linearize it and added the variable to the model according to the definition given in the introduction of the variables.
Linearization is as follows:
Linear multiobjective RCPSP model is as follows:
Finally, the single-objective model to minimize lags is provided below.
Linear single-objective RCPSP model is as follows:
4. Solution Method (Genetic Algorithm)
4.1. Early Population
To use genetic methods, the first step is to create an early population called a chromosome. Since this method is affected by population size, this parameter should be considered as one of the basic parameters in this method. If this population is too small, this method will not be able to produce qualified answers, and if this population is large, the solution time of this method will be very long, and as a result, this method will take more time. To determine the effective population size, the two main parameters of intersection rate and mutation rate must be adjusted accordingly.
4.2. Selection
There are two different methods for selecting parents in the genetic method. A percentage of parents are selected through a competition approach, and the rest are selected from the best practical solutions of current generations. The second method ensures the characteristics of qualified solutions that are passed on to the next generation. In addition, this method provides more accuracy and prevents the rapid convergence of the genetic method.
4.3. Genetic Operators
The production process in the genetic algorithm is performed using cross operators and mutations on selected parents. Cross operators combine the characteristics of two parents. Several types of these operators are offered for different issues. In the genetic algorithm, the mutation operator prevents the rapid convergence of genetic responses. To perform a mutation in a genetic algorithm, two cells are randomly selected, and then their values are swapped.
4.4. Adaptive Uniform Mutation
For this operator, the nonlinear function , with respect to iterations, is created to control the probability and amplitude of the mutation for each particle. This function is updated in each iteration based on the following method:
T represents the maximum repetition times. According to this equation, the value of decreases with increasing iterations. If is higher than a random number between 0 and 1, the current particle mutation is calculated as follows. First the K elements are randomly selected from this particle, and then the values of these elements are re-quantified in the search space. The value of K is followed as an integer calculated to control the amplitude of the mutation:
4.5. Local Learning Strategy
Local learning strategy is a local method based on differential learning to study areas with sparse solutions in each space to enhance the performance of the algorithm. In this method, first of all, the best solution is selected by Xbest as the base vector. Then, based on Xn1 and Xn2, two random solutions are set as differential vectors. In the last step, by adding the difference between Xn1 and Xn2 to the base vector Xbest, the new answer is obtained as follows:
This process is repeated until N new solution is generated. F is the scale factor for improving the variety of new solutions, ranging from 0.1 to 0.9.
5. Solving the Problem and Providing Numerical Results
This section will solve the single-objective problem using LINGO software and a genetic metaheuristic algorithm. The optimal values of the model costs obtained in this software and the genetic metaheuristic approach are compared. First, we design numerical examples as follows.
According to Table 2, it is clear that with increasing the dimensions of the numerical problem, the number of activities, the number modes, the number renewable and nonrenewable resources, and the number of working days as the number of planning periods also increase. Thus, we solve the problem in each of the ten different dimensions.
The values of the functions obtained from the exact method in LINGO software and the genetic approach are reported in Table 3. It can be concluded that in numerical examples with small dimensions, the exact method performed better than the genetic algorithm. For numerical examples 1, 2, and 3, the costs obtained from the exact method are less than those from the genetic method. On the other hand, in numerical examples with high dimensions and from example number 3 onwards, it can be seen that the genetic metaheuristic approach performed better in optimizing costs than the exact method. In addition, it can be seen that from numerical example 7 onwards, the exact method is not able to solve the problem. In this case, the genetic approach is more appropriate. Furthermore, in the right column, the difference in the optimality of the objective functions of the two methods can be seen.
Figure 1 shows the amount of change in the objective function in both the genetic method and the LINGO software. It is observed that with an increasing dimension of the problem, the performance of the genetic algorithm improves compared to LINGO software. From numerical example 7 onwards, using the genetic algorithm is better, and it can be used to solve large-dimension problems.

Figure 2 shows how to schedule project activities. This figure is related to numerical problem 3 with six activities. Activity 1 lasted four working days, activity 2 lasted two working days, activity 3 lasted five working days, activities 4 and 5 lasted two working days, and activity six did not require considerable time and was completed on the eighth day. This scheduling is performed according to the amount of renewable and nonrenewable resources available.

Figure 3 is the amount of optimization of the final objective function in each iteration of the genetic algorithm. By performing each iteration of the algorithm, an attempt is made to optimize the value of the objective function, and in the last iteration, i.e., iteration 50, the optimal value of the objective function obtained from the genetic algorithm is obtained.

After providing the results of problem-solving in LINGO software and the genetic approach to validate and test the proposed model, we analyze the numerical sensitivity. In this way, by changing each of the parameters of the lower limit of the renewable source, we analyze the cost of each unit of the renewable resource, the cost of each unit of the nonrenewable resource, and the model behavior and amount of change in objective function using the genetic metaheuristic approach.
Figure 4 shows that the amount of network costs increases with increasing the lower limit of the renewable resource. By changing this parameter from 4 to 10, objective functions increase constantly. When this value increases to 12, the amount of costs increases at a higher rate.

Figure 5 shows that the amount of network costs increases as the unit cost of the renewable source increases. By changing this parameter from 6 to 16, the objective function increases with a constant trend. When this value increases from 16 to 28, the amount of costs increases at a lower rate.

Figure 6 shows that network costs increase as the unit cost of the nonrenewable resource increases. By changing this parameter from 3 to 23, the objective function increases with a constant trend.

Moreover, in the genetic metaheuristic approach, we examine the amount of change in the optimal objective function by increasing the number of iterations of the algorithm. It is clear that as the number of iterations of the algorithm increases, the value of the objective function or the cost of the scheduling problem improves. Figure 7 shows the amount of change in the objective function with an increasing number of iterations of the genetic algorithm.

6. Conclusion
In this research, the resource-constrained project scheduling is raised; in addition to previous assumptions and models regarding scheduling, the reliability function is added to the mathematical model; and by investigating the probability of access to renewable resources, the project scheduling problem is investigated from a probabilistic point of view. The expressed problem planning model is a mixed nonlinear mathematical model that has been converted into a linear programming model using the properties of the exponential function. It should be noted that the use of this method for linearization of the model has been little investigated in the literature. Moreover, to solve the proposed problem, two exact methods in LINGO software and a genetic metaheuristic algorithm in MATLAB software are used to analyze the performance of both methods in solving the problem with different dimensions. After solving the problem, we concluded that in smaller dimensions, LINGO software leads to more optimal answers, while in medium and large dimensions, the genetic algorithm has shown better performance. In addition, from numerical example numbers 7 to 10, LINGO software has not solved the problem.
On the other hand, to validate the designed model, we performed numerical analysis of the parameters of the lower limit of the renewable resource, the cost of each unit of the renewable resource, and the cost of each unit of the nonrenewable resource and investigated the model behavior and amount of change in objective function using the genetic metaheuristic approach. It was inferred that with increasing all three mentioned parameters, the value of the objective function had an ascending trend. On the other hand, the amount of optimality of the target function was also analyzed by increasing the number of iterations of the genetic algorithm. It was observed that by increasing the number of iterations of the genetic algorithm, the value of the objective function becomes more optimal.
For future research in resource-constrained project scheduling, uncertain data in the problem can be used, and some parameters can be considered uncertain. Robust optimization, fuzzy planning, or probabilistic planning can also control uncertainty. In this way, the values of the objective function in certain and uncertain modes can be compared. Furthermore, more powerful metaheuristic algorithms such as gray wolf optimization or particle swarm optimization can be used in a resource-constrained project scheduling problem. The performance of different methods can be compared.
Data Availability
The data that support the findings of this study are available from the corresponding author upon reasonable request.
Conflicts of Interest
The authors declare that they have no conflicts of interest.