4.1. Displaying the Answer in Multi-Objective Genetic Algorithm
In this research, a multi-objective genetic algorithm or Non-dominated Sorting Genetic Algorithm (NSGAII algorithm) is used to solve the three-objective model of this research. The objective functions of the proposed model include minimizing resource consumption, minimizing resource idleness, and minimizing project time. Displaying the answer includes how to draw the answer according to the variables of a model. According to the present problem, which is a multi-objective problem, several objectives are drawn in the form of a chromosome and each decision variable is considered as a gene in this chromosome.
The two objective functions have the nature of integers and the third objective function has the nature of permutation. Therefore, the type of chromosomes used includes integer and permutation chromosomes. Because the variables in the objective functions are of integer type and permutation, the sample of chromosomes that includes the values of resource consumption in the first and second objective functions is as follows:
The first objective function is the minimizing the resource consumption.
Table 5 is an example that Display of the integer answer vector for the amount of resource consumption in the first objective function.
The second objective function is the minimizing the unemployment of resources.
Table 6 is an example that Display of the integer answer vector for the amount of resource idleness in the second objective function.
As it can be seen, the two mentioned chromosomes are integers that can be repeated in every cell, and the Arithmetic method is used for the operation of Crossover and mutation according to the nature of their integers. However, when determining the sequence of performing activities in a specific order, a permutation chromosome should be used. The permutation chromosome for the third objective function in the present research is as follows:
The third objective function is the minimizing the total project time.
Table 7 is an example that Display of the permutation answer vector for optimal sequence of activities of a project in the third objective.
As can be seen, it is not possible to repeat the numbers in the above chromosome because it is permutative and each index in each cell is a sign of performing an activity and shows the sequence of activities. In order to update the above chromosome, crossover, and single-point mutation operations are used. In this way, only two genes are moved with each other so that the updating process takes place. In single-point mutation, a gene is randomly selected and a change is made in it so that the act of mutation is simulated. Finally, after obtaining the best values for the objective functions, that value is placed in the best category and the repetition of the algorithm continues with the end of the determined repetition.
Also, regarding how to deal with unjustified answers, it should be said that the penalty method is used. In order to solve invalid answers, penalty methods and optimal correction of the answer are used. In such a way that if any value in a limit is violated and exceeds the set limit, a penalty is considered in the objective function for that decision variable. Moreover, in the method of optimal modification of the solution using MATLAB software (R2018b), the maximum value of integer variables is equal to the parameter on the right side of the specified limit.
4.2. Analysis
In this section, the findings are analyzed. First, the validation of the model is completed, and then the effect of demand, renewable resources, upper and lower bounds of delivery, and finally uncertainty on the objective functions are investigated. In
Table 8, the dimensions of the model are first introduced and then its solution has been completed in different dimensions, the results of which are presented below. The numerical examples presented are based on the research of Ramos et al. [
16], Mejia et al. [
9], and Liu et al. [
17].
As it can be seen in
Table 8, 20 examples are presented, and based on these 20 examples, the model is validated in such a way that in each example, an increase in dimensions is created compared to the previous example, and naturally this increase should be lead to an increase in the values of the objective functions and calculation time. The result of solving the model in different dimensions is presented in
Table 9.
The results of solving the model show that in each example there has been a change and actually an increase compared to the previous problem. In order to better analyze, the graphs of the effect of increasing dimensions on resource consumption, resource idleness, total project time, and problem-solving time are used.
As shown in
Figure 1, with the increase in dimensions, resource consumption also increases.
As shown in
Figure 2, with the increase in dimensions, resource idleness also increases.
As shown in
Figure 3, with the increase in dimensions, the total project time also increases.
As shown in
Figure 4, with the increase in dimensions, the calculation time also increases.
As it can be seen, all three objective functions as well as the calculation time have increased due to the increase in dimensions, which is the logical result of solving the model in different dimensions, and therefore, based on this, it can be said that the model has the necessary validity. In the following, the effect of renewable resources will be investigated. Considering that renewable resources are considered constrained in this research, therefore, the effect of this restriction on the objective functions should be shown. In
Table 10, this review is shown in quantitative and percentage form.
In the following, the effect of renewable resources, demand, and upper and lower bounds on all three objective functions is investigated. Due to lack of space, in the following, only the relevant Figures are presented and only the table of renewable resources described in the previous section is presented.
Figure 5 shows the effect of renewable resources on the objective functions. According to the information in table number 10, this diagram was obtained. In fact, by reducing the amount of renewable resources, the percentage of changes is shown in the Number of Pre-empted Activities, Resource Consumption, Resource Idleness, and Project Total Time.
As can be seen, the reduction in renewable resources increases the project completion time by 30%, and the reason for this is that due to the lack of resources, more activities are pre-empted. This pre-emption can be seen up to a 40% increase in activities. Although the blue graph shows that this increase is up to 60% at first and then less than 40%. On the other hand, the idleness of resources also increases due to this pre-emption in activities, but the consumption of resources decreases due to the decrease in the number of renewable resources, and this objective function is the only decreasing objective function due to the increase in renewable resources.
Figure 6 shows the effect of demand on the objective functions. In fact, by increasing the demand for resources, the percentage of changes is shown in the Number of Pre-empted Activities, Resource Consumption, Resource Idleness, and Project Total Time.
Figure 6 shows the effect of demand on objective functions. In this section, it is assumed that the demand for resources will increase, this will cause more activities to be pre-empted, because the increase in demand generally leads to a decrease in the available resources, and in fact, the same effect as
Figure 5, which shows renewable resources is repeated here. On the other hand, the project completion time increased due to more pre-emptions, but the idleness of resources decreased slightly due to the increase in demand. Resource consumption also increases. Therefore, the demand has a negative effect on the total project time and the consumption of more resources due to the effect it has on the pre-emption of activities.
Figure 7 shows the effect of increasing the upper bound on the objective functions. In fact, by increasing the upper bound, the percentage of changes is shown in the Number of Pre-empted Activities, Resource Consumption, Resource Idleness, and Project Total Time. In
Figure 7, the maximum delivery time has increased, which increases the total project time, while it has no effect on pre-emption activities, that is, it does not increase it, and on the other hand, it does not cause idleness of resources.
In
Figure 7 and
Figure 8, the upper and lower bounds, which are one of the innovations of the present research that considers the time window, are analyzed. In the lower bound, the minimum delivery time of activities and projects is proposed, while in the upper bound, the maximum is desired. In
Figure 7, the maximum delivery time has increased, which increases the total project time, while it has no effect on pre-emption activities, that is, it does not increase it, and on the other hand, it does not cause idleness of resources. However, it increases resource consumption. While the lower bound, which is the minimum delivery time, if it is reduced, i.e., the requirement for early delivery, causes an increase in the activities with partial pre-emptions, and as a result, the consumption of resources also increases. As a result, the idleness of resources is reduced, and the total time is also reduced. The interesting thing to note is that in case of reduction in renewable resources, the idleness of resources will be affected more than other things. However, in the case of increasing demand and decreasing the lower bound, the number of pre-empted activities shows the greatest reaction. The increase in the number of pre-empted activities affects the project time, but it is the result of increasing the consumption of resources, decreasing the available resources, and increasing the demand.
In the following, uncertainty will be investigated. The activity time parameter is considered a scenario parameter that is considered under three optimistic, medium, and pessimistic scenarios. In this section, the aim of the research is to find out whether different scenarios have an effect on the goals or not. The results are presented in
Table 11.
Figure 9 is designed based on the information in
Table 11. It shows the Project Total Time under three scenarios.
Figure 10 is designed based on the information in
Table 11. It shows the Resource consumption under three scenarios.
Figure 11 is designed based on the information in
Table 11. It shows the idleness of resources under three scenarios.
Based on
Figure 9,
Figure 10 and
Figure 11, it can be seen that the time of different scenarios can have an effect on the project completion time, that is, under the optimistic scenario, the project completion time is less than the middle and pessimistic scenarios, even with an increase in the time of activities. It was expected. However, regarding the consumption of resources, there is not much difference between the existing scenarios, although the optimistic scenario is still better than the other two scenarios. The two middle and pessimistic scenarios do not show much difference in terms of resource consumption.
Figure 11 shows the idleness of resources under different scenarios, which shows the difference between the three scenarios, and of course, the optimistic scenario is better than the other two scenarios. Therefore, apart from the consumption of resources, it should be said that different scenarios cause changes in the values of the objective functions.