1.INTRODUCTION
A resource constrained project scheduling problem (RCPSP) is a problem of scheduling a set of activities that should be sequenced in order to determine the optimal starting and finishing times of activities under resource constraint (Knyazeva et al., 2015). It is a popular NPhard optimization problem and various searching methods, including exact methods, heuristic and metaheuristic procedures, have been proposed to solve this problem on the wide variety of assumptions (Ghoddousi et al., 2013). In a general classification, RCPS models can be categorized into two classes: deterministic scheduling and nondeterministic scheduling. Most of the presented models in the literature focus on deterministic scheduling. Comprehensive review of these models can be found in Artigues et al. (2013), Brucker et al. (1999), Abdolshah (2014), Kis (2005), Kolisch and Padman (2001) and Kolisch (2013).
Due to the uniqueness of some projects, providing exact estimations for activities durations and resources consumptions as well as availability of resources at project initialization stage may not be possible. In such situations, uncertain scheduling methods could help project managers. RCPS models can be categorized into three classes in terms of uncertainty type: stochastic scheduling, fuzzy scheduling and hybrid (fuzzystochastic) scheduling. It has been claimed that fuzzy set theory is more appropriate to model uncertainty associated with parameters such as time, resource availability, resource consumption and etc. In practice, regarding lack of information about activities, values of the project parameters are often estimated by project managers and experts in the form of linguistic variables. These type of information might be best modeled by fuzzy numbers instead of probabilistic ones. Literature of fuzzy RCPSP is very rich. The model presented by Pan and Yeh (2004) is one of the fuzzy mathematical optimization models in which a fuzzy multi objective model was presented to formulate multimode resource constrained project scheduling problem. Lai and Li (1999) and Hussein and AboSinna (1995) utilized fuzzy dynamic programming to model fuzzy RCPS problem. Fu and Wang (1996) proposed single objective and multi objective models to deal with resource allocation problems in fuzzy environment.
Considering the order of complexity in RCPS problems, it has been proved that these problems belong to the class of NPhard problems (Knyazeva et al., 2015; Jozefowska et al., 2000; Leon and Balakrishnan, 1995). So, in the optimization models, by increasing number of the project activities, activities performing mode or number of resources, the required time to solve the problem rises sharply. Therefore, the heuristic and metaheuristic methods can be used efficiently to tackle this problem. One of the metaheuristic solution approaches to solve fuzzy RCPS problem was presented by Pan and Yeh (2003). They used simulated annealing algorithm to solve this problem. Ji and Yao (2017) presented an uncertain project scheduling model in which both duration times and resources allocation times are uncertain. They developed an uncertain multiobjective optimization model in which minimization of total cost and overtime were considered as objective functions. Knyazeva et al. (2015) presented a fuzzy heuristic approach to obtain a near optimal solution in a reasonable computational time for RCPS problem in fuzzy environment. Also, Leu et al. (1999) utilized genetic algorithm to solve fuzzy RCPS problems. Ma et al. (2016) considered the RCPS problem with renewable resource constraints in uncertain environment, in which activities durations were estimated by belief degrees. They used a hybrid approach based on genetic algorithm and 99method based uncertain simulation to obtain the quasioptimal schedule. Afruzi et al. (2013) considered a multimode resource constrained discrete time–cost tradeoff problem and developed an adjusted fuzzy dominance genetic algorithm (AFDGA) to solve proposed model. Kaveh et al. (2016) utilized two new metaheuristic algorithms known as charged system search (CSS) and colliding body optimization (CBO) to solve fuzzy resource constrained project scheduling problem (FRCPSP). Meng and Wang (2013) discussed a resource constrained project scheduling problem considering fuzzy nature of data in uncertain environment and presented a solution approach using artificial immune algorithm. Hapke et al. (1997) developed an approach based on Pareto simulated annealing (PSA) to solve fuzzy RCPS problems. Xu and Feng (2014) presented a multi objective multimode RCPS model for large scale construction projects in fuzzy random environment. They considered cost, weighted makespan and quality as objectives and used a combinatorial priority based hybrid particle swarm optimization algorithm to solve developed model. Kim et al. (2003) developed a hybrid genetic algorithm with fuzzy logic controller to solve the resource constrained project scheduling problem. They used fuzzy logic controller to design genetic algorithm operators. Masmoudi and Hait (2013) provided an approach to keep uncertainty at all steps of modelling and solving procedure and considered two project scheduling techniques: resource constrained scheduling and resource leveling problem (RLP) in fuzzy environment. They presented a greedy algorithm and a genetic algorithm to solve FRCPSP and FRLP, respectively. Long and Ohsato (2008) developed a fuzzy critical chain method for project scheduling under resource constraints. The method consists of developing a desirable deterministic schedule under resource constraints and adding a project buffer to the end of the schedule to deal with uncertainty. Hapke and Slowinski (1996) proposed a heuristic model to deal with fuzzy RCPS problems by combining priority rules and fuzzy numbers ranking methods. In this model, they assumed duration of each activity is uncertain, whereas resource availability and resource demand of each activity are crisp. While in many projects in the real world, these two parameters, resource availability and resource demand of each activity, are uncertain, too. The research and development projects are among the cases in which the two mentioned parameters are widely uncertain. Yousefli et al. (2008) proposed a heuristic model to deal with these types of RCPS problems. Their approach was based on fuzzy decision making in fuzzy environment concept. In fuzzy decision making in fuzzy environment, not only the parameters but also the decision variables are considered uncertain. So, the purpose of solving problem under this concept is to calculate optimal possibility distributions of the objective functions as well as the decision variables. By contrast, in crisp optimization problems or deterministic decision making in fuzzy environment, the main focus is on finding optimum values for the objective function and the decision variables. In another attempt, Ghazanfari et al. (2008) developed a new approach to solve possibilistic time costtrade off problems in which decision variables had triangular possibility distributions. Ke and Liu (2010) considered a project scheduling problem with fuzzy activities durations and presented three types of fuzzy models to solve this problem. Moreover, fuzzy simulation and genetic algorithm were integrated to design a hybrid intelligent algorithm to solve developed fuzzy models. Bhaskar et al. (2011) proposed a heuristic method, for resource con strained project scheduling problem with fuzzy activities durations.
In this paper, a mathematical model for fully fuzzy resource constrained project scheduling is proposed. In this model the duration of each activity, the resource availability and the resource demand of each activity are considered to be uncertain and are defined by fuzzy numbers. Regarding the uncertainty of all parameters, and considering the concept of “fuzzy decision making in fuzzy environment” (Tanaka et al., 2000; Yousefli et al., 2008; Guo and Tanaka, 1996; Ghazanfari et al., 2007), activities schedule (start time and finish time of each activity) is calculated in the form of fuzzy numbers. This type of scheduling gathers all possible situations that could occur in future and helps project managers to make proper decisions. Due to the complexity degree of the presented model, a fuzzy ant colony optimization (FACO) algorithm is extended as a solution approach to tackle the projects with numerous activities. FACO is an extension of ACO in which a fuzzy numbers ranking method is employed to construct fuzzy solutions and also to evaluate created solutions.
This paper is organized as follows. In second section, a fuzzy number ranking method which is used in this paper is introduced and third section consists of the proposed model for fully fuzzy resource constrained project scheduling problem. The solution approach based on fuzzy ant colony algorithm is presented in fourth section. Some numerical examples will be discussed in the fifth section to illustrate the flexibility of the proposed model and efficiency of the developed solution approach. Finally, in the last section, conclusions will be remarked.
2.CHENG’S FUZZY NUMBERS RANKING METHOD
In this paper the fuzzy numbers ranking method presented by Cheng (1998) is employed to formulate fuzzy RCPS model and also to extend ant colony optimization algorithm to fuzzy environment. Cheng (1998) proposed a fuzzy numbers ranking method based on calculating centroid point $\left(\overline{{x}_{0}},\text{\hspace{0.17em}}\overline{{y}_{0}}\right)$ of a fuzzy number $\tilde{A}$. Consider fuzzy number $\tilde{A}$ is denoted by [a_{1}, a_{2}, a_{3}] . The membership function of fuzzy number $\tilde{A}$ can be expressed by:(1)
Where ${\mu}_{\tilde{A}}^{L}\left(x\right):\text{\hspace{0.17em}}\left[{a}_{1},\text{\hspace{0.17em}}{a}_{2}\right]\to \text{\hspace{0.17em}}\left[0,\text{\hspace{0.17em}}1\right]$ is a continuous and strictly increasing function. Also, ${\mu}_{\tilde{A}}^{R}\left(x\right):\text{\hspace{0.17em}}\left[{a}_{2},\text{\hspace{0.17em}}{a}_{3}\right]\to \text{\hspace{0.17em}}\left[0,\text{\hspace{0.17em}}1\right]$ is a continuous and strictly decreasing function. So, inverse functions of both of them do exist and are denoted by ${g}_{\tilde{A}}^{\text{L}}\left(y\right)$ and ${g}_{\tilde{A}}^{\text{R}}\left(y\right)$, respectively. Herein, we describe Cheng’s method for triangular fuzzy numbers through following steps:

Step 1: Centroid point $\left(\overline{{x}_{0}},\text{\hspace{0.17em}}\overline{{y}_{0}}\right)$ calculation
For triangular fuzzy number $\tilde{A}=\left[{a}_{1},\text{\hspace{0.17em}}{a}_{2},\text{\hspace{0.17em}}{a}_{3}\right]$, the membership function can be written as follows:(2)
$${\mu}_{\tilde{A}}\left(x\right)=\{\begin{array}{ll}\frac{x{a}_{1}}{{a}_{2}{a}_{1}}\hfill & {a}_{1}\le x\le {a}_{2}\hfill \\ 1\hfill & \text{\hspace{1em}}x={a}_{2}\hfill \\ \frac{{a}_{3}x}{{a}_{3}{a}_{2}}\hfill & {a}_{2}\le x\le {a}_{3}\hfill \end{array}$$(2)The inverse functions of ${\mu}_{\tilde{A}}^{L}\left(x\right)$ and ${\mu}_{\tilde{A}}^{R}\left(x\right)$ are ${\text{g}}_{\tilde{A}}^{\text{L}}\left(y\right)=\left({a}_{2}{a}_{1}\right)y+{a}_{1}$ and ${\text{g}}_{\tilde{A}}^{\text{R}}\left(y\right)={a}_{3}\left({a}_{3}{a}_{2}\right)y$, respectively. The centroid point $\left(\overline{{x}_{0}},\text{\hspace{0.17em}}\overline{{y}_{0}}\right)$ for a fuzzy number $\tilde{A}$ is defined as follows:
$$\begin{array}{l}{\overline{x}}_{0}\left(\tilde{A}\right)=\frac{{\displaystyle {\int}_{{a}_{1}}^{{a}_{2}}[x\text{\hspace{0.17em}}{\mu}_{\tilde{A}}^{\text{L}}\left(x\right)]dx}+{\displaystyle {\int}_{{a}_{2}}^{{a}_{3}}[x\text{\hspace{0.17em}}{\mu}_{\tilde{A}}^{\text{R}}\left(x\right)]dx}}{{\displaystyle {\int}_{{a}_{1}}^{{a}_{2}}{\mu}_{\tilde{A}}^{\text{L}}\left(x\right)dx}+{\displaystyle {\int}_{{a}_{2}}^{{a}_{3}}{\mu}_{\tilde{A}}^{\text{R}}\left(x\right)dx}}\\ {\overline{y}}_{0}\left(\tilde{A}\right)=\frac{{\displaystyle {\int}_{0}^{1}[\text{y\hspace{0.17em}}{\text{g}}_{\tilde{A}}^{\text{L}}\left(y\right)]dy}+{\displaystyle {\int}_{0}^{1}[y\text{\hspace{0.17em}}{\text{g}}_{\tilde{A}}^{\text{R}}\left(y\right)]dy}}{{\displaystyle {\int}_{0}^{1}{g}_{\tilde{A}}^{\text{L}}\left(y\right)dy}+{\displaystyle {\int}_{0}^{1}{g}_{\tilde{A}}^{\text{R}}\left(y\right)dy}}\end{array}$$(3)For triangular fuzzy numbers, Eq. (3) can be simplified as:(4)

Step 2: Ranking function calculation
The ranking index is the distance between the centroid point $\left(\overline{{x}_{0}},\text{\hspace{0.17em}}\overline{{y}_{0}}\right)$ and original point which can be expressed as:(5)

Step 3: Fuzzy numbers ranking
For any triangular fuzzy numbers ${\tilde{A}}_{i}$ and ${\tilde{A}}_{j}$, Cheng’s method presents the following properties:(6)
$$\begin{array}{l}\text{1)if\hspace{0.17em}}R\left({\tilde{A}}_{i}\right)R\left({\tilde{A}}_{j}\right),\text{\hspace{1em}then\hspace{1em}}{\tilde{A}}_{i}{\tilde{A}}_{j}\\ \text{2)if\hspace{0.17em}}R\left({\tilde{A}}_{i}\right)=R\left({\tilde{A}}_{j}\right),\text{\hspace{0.17em}\hspace{0.17em}\hspace{0.17em}then\hspace{1em}}{\tilde{A}}_{i}={\tilde{A}}_{j}\\ \text{3)if\hspace{0.17em}}R\left({\tilde{A}}_{i}\right)\left({\tilde{A}}_{j}\right),\text{\hspace{1em}\hspace{0.17em}\hspace{0.17em}then\hspace{1em}}{\tilde{A}}_{i}{\tilde{A}}_{j}\end{array}$$(6)
3.FULLY FUZZY RESOURCE CONSTRAINED PROJECT SCHEDULING
The problem that is discussed in this paper is a project scheduling problem under resource constraint, in which duration and resource demand of each activity as well as resource availability are uncertain and are depicted in the form of triangular fuzzy numbers. Minimization of makespan is the criteria which should be optimized under resource and precedence relationship constraints and fuzzy goal programming concept is used to solve it. In this paper, the concept of fuzzy decision making in fuzzy environment, which has rarely been used by researchers, is employed. Nature of fuzzy decision making in fuzzy environment allows us to directly consider the uncertainty associated with the parameters in final decisions. The assumptions of this model are as follows:

1: Duration of each activity is estimated by triangular fuzzy number.

2: Resources demands of each activity are estimated by triangular fuzzy numbers.

3: Availability of each resource is uncertain and it is depicted in the form of triangular fuzzy number.

4: Each activity is performed in one prescribed way (mode).

5: Activities are shown in nodes in a precedence network.
The parameters and the decision variable of the model are as follows:
Parameters:

$e{\tilde{s}}_{i}$ : Earliest start time of i^{th} activity

$l{\tilde{s}}_{i}$ : Latest start time of i^{th} activity

C_{k} : The cost per unit of k^{th} resource

${\tilde{r}}_{ik}$ : The amount of resource k demanded by activity i

${\tilde{d}}_{i}$ : Duration of activity i

S_{i} : Set of activities that immediately begin after activity i

${\tilde{a}}_{k}$ : Available amount of resource k

$\tilde{T}$ : Estimation of project makespan

K : Number of renewable resources

n : Number of activities (first and last activities are dummy)

$F{\tilde{S}}_{ij}$ : Time lag between activities i and j
Variable:
${x}_{i\tilde{t}}=\{\begin{array}{ll}1\hfill & \text{Ifactivityistartsinuncertaintime\hspace{0.17em}\hspace{0.17em}}\tilde{t}\hfill \\ 0\hfill & \text{Otherwise}\hfill \end{array}$
The developed model for resource constrained project scheduling problem in fuzzy environment is as follows:
S.t.
The objective function (7) minimizes makespan of the project. Eq. (8) guarantees exactly one start time is assigned to each activity. Eq. (9) shows the precedence relationship between activities. Eq. (10) is the constraint on resources availability.
$e{\tilde{s}}_{i}$ and $l{\tilde{s}}_{i}$ should be obtained using heuristic methods such as the model developed by Yousefli et al. (2008).
Here, each period of time is shown as a triangular fuzzy number $\tilde{t}=\left(t\alpha ,\text{\hspace{0.17em}}t,\text{\hspace{0.17em}}t+\beta \right)$ and it means “approximately t^{th} time period.” t is mean value and α and β are left and right deviations, respectively. In this paper, without loss of generality, α and β are considered equal to 1. Also, the start time of project is (0, 0, 0). To solve the proposed model using fuzzy goal programming concept, an uncertain aspiration level for objective function must be obtained. This aspiration level could be asked of the decision maker or can be obtained using heuristic methods such as the one proposed by Yousefli et al. (2008). The obtained aspiration level for objective function (7) is named $\tilde{T}$. Therefore, the objective function (7) could be rewritten as follows:
Relations (9), (10) and (11) are fuzzy inequalities, the righthand sides and the lefthand sides of which are combinations of fuzzy variables and fuzzy numbers. Therefore, the decision vector must be determined in a way that constraints are satisfied and obtained uncertain value for the objective function is smaller than or equal to the aspiration level. To achieve these goals, the fuzzy numbers ranking method, discussed in the second section, is used. In other words, to satisfy constraints, the following equations must be met.(12)(13)
For the objective function it could be written:(14)
In case of the aspiration level being crisp, $R\left(\tilde{T}\right)$ should be replaced by T. Due to this fact that the objective function has cost nature, it should be obtained in a way that its value be as smaller as possible than the aspiration level. Therefore, ${d}_{\tilde{T}}$ is defined as follows:(15)
So, the objective function must be maximization of the ${d}_{\tilde{T}}$ and model (7)(10) should be rewritten as follows:
Having model (16) solved, optimum values of start and finish times of each activity as well as project makespan are calculated as triangular fuzzy numbers. Consider resulted fuzzy makespan is denoted by $\tilde{M}=\left({M}^{L},\text{\hspace{0.17em}}{M}^{M},\text{\hspace{0.17em}}{M}^{R}\right)$, which could be shown schematically as Figure 1.
As it is illustrated in Figure 1, project duration might take different values with different degrees of possibility (π (.)∈[0,1] ). For instance, makespan may be equal to M_{0} with possibility degree of π(M_{0}). Also, when project manager wants to know the possibility degree for having the makespan within the interval [M_{1}, M_{2}], following equation could be used (Zimmermann, 2011):
Such analysis on fuzzy results could help project managers to have a proper knowledge about several situations which may occur for the project duration in future.
Model (16) is a fuzzy binary nonlinear programming problem that hardly could be solved with common mathematical methods. So, a metaheuristic method using ant colony optimization algorithm is developed in next section to deal with complexity of the proposed model.
4.FUZZY ANT COLONY OPTIMIZATION ALGORITHM
In an ACO algorithm, firstly, the parameters values and the initial pheromone trails are set and then, the algorithm builds solutions using a state transition rule. In each iteration online and offline pheromone update rules are utilized and the process continues until a stopping criterion is reached. The ACO algorithm which is developed to solve model (16) presents fuzzy solution instead of crisp schedule. In other words, a fuzzy ant colony optimization (FACO) algorithm is developed to solve fully fuzzy RCPS model. The pseudo code of FACORCPSP algorithm is given below:
Initialize all parameters and the pheromone trails
Loop
Create the fuzzy schedule using the state transition rule
Apply the online pheromone update rule
Continue until all ants present a complete fuzzy schedule
Evaluate all solutions using fuzzy numbers ranking method and keep the best one
Apply the offline pheromone update rule
Continue until the stopping criterion is reached
4.1.State Transition Rule
Each ant generates a complete feasible fuzzy project schedule. This is done using parallel schedule generation method. To construct a solution, artificial ants choose activities sequentially to be added to existing subschedule until all activities are scheduled. In order to select the activities, the ants use η_{i} as local heuristic information and τ_{ij} as pheromone trails. Here, for each activity i, local heuristic information is related to activity duration (${\tilde{d}}_{i}$), so that the activity with shortest process time has more chance to be selected by ants. Therefore, η_{i} has inverse relation with ${\tilde{d}}_{i}$. So, fuzzy durations should be compared in order to rank activities. For this aim, fuzzy numbers ranking method described in section 2 could be helpful. Following equation calculates η_{i} using Cheng (1998) index:(18)
In order to balance the exploitation of good solutions and the exploration of the feasible space, state transition rule shown below is employed for solution construction process, where activity p is selected to be performed following its immediate predecessor i in the schedule.(19)(20)
Where a and b are control parameters that adjust relative weights of the pheromone and the local heuristic, respectively. 0 < q_{0} < 1 is a predetermined constant and q is a random number uniformly generated between 0 and 1, which is a parameter that determines the relative importance of exploitation versus exploration. When q ≤ q_{0}, exploitation of available knowledge about the problem (local heuristic knowledge for choosing activities) and learned knowledge memorized in form of pheromone trails are used, whereas q > q_{0} favors more random exploration.
4.2.Pheromone Updating
The pheromone value determines the probability of selecting an activity to be added to the schedule and to assign given resources to selected activity. Pheromone values are updated via two stages: online and offline updating phases. The goal of online updating phase is to increase pheromone intensity of the selected move to support exploration. Eq. (21) updates pheromone online, after an ant constructs a solution.
Where, ρ ∈[0,1] is the proportion of pheromone evaporation and τ_{0} represents the initial pheromone intensity. After all ants followed the selection process and thus, constructed a complete fuzzy schedule, the pheromone trails are updated offline. Depending on makespan presented by each ant, the corresponding pheromone trails are changed. The offline trail update can formally be expressed as follows:
where, best $\Delta {\tau}_{ij}^{best}$ is the amount of pheromone trail added to old ${\tau}_{ij}^{old}$ by the best ant. All ants present fuzzy makespan as total length of the project. Therefore, fuzzy solutions should be compared and ranked to determine the best ant. Chang’s index introduced in section 2 could be employed for this purpose. Also, as it is shown in Eq. (22), Chang’s index should be used to calculate best $\Delta {\tau}_{ij}^{best}$ based on the fuzzy makespan presented by the best ant.
5.NUMERICAL EXAMPLES
To illustrate efficiency of the fully fuzzy RCPS model and the solution approach developed here, some numerical examples are presented in this section. The ant colony algorithm is coded in MATLAB software and was run using an Intel Core i5 2.40GHz PC with 4.0 GB RAM. Parameters in this algorithm are set as follows:
First example is a project with 9 activities (first and ninth activities are dummy). Details of the activities are given in Table 1.
First column shows activities numbers and the immediate predecessors of each activity are presented in second column. Based on these columns, the precedence network which is depicted in Figure 2 is constructed. Also, activities fuzzy durations are shown in column 3. In this example, three types of resources are considered and activities resource demands are shown through last three columns. Availability of each resource and aspiration level of makespan are presented in last two rows.
The developed fuzzy ACO algorithm is applied to the example and results are shown in Table 2.
As it is shown in Table 2, start and finish times of each activity are calculated in uncertain form as triangular fuzzy numbers. It means that a fuzzy scheduling is presented to the project manager and he/she could have a wide perspective to different situations that might occur to project activities in future. As it is shown in Figure 3, different durations might be obtained as a makespan (M) for different project situations. It should be emphasized that all durations in support set of the makespan (M ∈[47, 52] ) are optimum; while each of them has its own possibility degree for occurrence. For example, the possibility of makespan being smaller than or equal to 48 days can be calculated using Eq. (17) as follows:
Such analysis gives helpful and illustrative information to project manager which could be valuable for him / her to make better and more effective decisions.
As it was mentioned before, RCPSPs belong to NPhard problems. It means that the time required to solve the problem increases very quickly as the size of project grows. So, it seems CPU time could be a proper index to assess efficiency of the developed FACO algorithm. To illustrate the efficiency of presented solution approach, some examples with different sizes are solved and the results are reported in Table 3 and Table 4. Table 3 includes different sample projects with 8 to 240 activities that all of them use just one resource. These examples are generated randomly and CPU time for each problem is recorded.
As it is shown in Table 3, CPU time for medium and large scale problems seems to be rational and it proves that performance of the developed FACO could be acceptable.
Table 4 shows another set of problems which need two resources. As same as Table 3, projects are considered with different number of activities and CPU times are reported.
As it is shown in Table 4, processing times for medium and large scale problems are acceptable. So, it can be concluded that the developed fuzzy ACO could efficiently schedule projects with numerous activities.
6.CONCLUSION
In real world situations, project parameters are uncertain due to the variations such as weather conditions, resource availability and etc. Regarding these variations, employing deterministic approaches in project scheduling results in an increase in scheduling risk. Therefore, uncertain project scheduling has more stability against environmental variations. In this paper, a fuzzy mathematical model has been proposed to formulate fuzzy resource constrained project scheduling problem, in which activities durations, resource availability and resource demands are uncertain. Also, to solve presented FRCPS model, a fuzzy ACO algorithm has been developed to deal with large scale projects and its efficiency was illustrated by some numerical examples with different number of activities and resources. As it is discussed before, presented model and solution approach are applications of fuzzy decision making in fuzzy environment concept in field of project scheduling. This concept could also be used to deal with other project scheduling models such as fuzzy timecost trade off models, fuzzy earned value management and etc.