The optimization of the time-cost tradeoff problem in projects with conditional activities using of the multi-objective charged system search algorithm (SMOCSS)

The appropriate planning and scheduling for reaching the project goals in the most economical way is the very basic issue of the project management. As in each project, the project manager must determine the required activities for the implementation of the project and select the best option in the implementation of each of the activities, in a way that the least final cost and time of the project is achieved. Considering the number of activities and selecting options for each of the activities, usually the selection has not one unique solution, but it consists of a set of solutions that are not preferred to each other and are known as Pareto solutions. On the other hand, in some actual projects, there are activities that their implementation options depend on the implementation of the prerequisite activity and are not applicable using all the implementation options, and even in some cases the implementation or the non-implementation of some activities are also dependent on the prerequisite activity implementation. These projects can be introduced as conditional projects. Much researchs have been conducted for acquiring Pareto solution set, using different methods and algorithms, but in all the done tasks the time-cost optimization of conditional projects is not considered. Thus, in the present study the concept of conditional network is defined along with some practical examples, then an appropriate way to illustrate these networks and suitable time-cost formulation of these are presented. Finally, for some instances of conditional activity networks, conditional project time-cost optimization conducted multiobjectively using known meta-heuristic algorithms such as multi-objective genetic algorithm, multi-objective particle swarm algorithm and multi-objective charged system search algorithm.


Introduction
One of the main issues that the project manager must define is the planning and the scheduling of the project in order to achieve project goals (services, designs, programs, etc.) in the most economical way using the accurate and suitable resources and facilities (human resource, machines, materials, budget, programs, policies, etc.).In other words, project managers are looking for delivering projects in the least possible time and cost.These two objectives are in conflict with each other, as decreasing project time requires more resources and as a result spending more cost.Given the variety of implementation options for each activity, there are several options for completing the project that are not preferred to each other and are known as Pareto solutions (Hindelang, T.J., et al 1979. Elmaghraby, S.E. 1993. Feng, C.W., et al 1997).On the other hand, studying the planning methods and examining the actual projects at hand in construction, industry, etc. we confront with other activities in the project activity network that their implementation or non-implementation depend on its prerequisite activity and the implementation of an activity depends on the prerequisite activity implementation and are not applicable using all the implementation options.For example, in the stage of plastering joinery of the building if a prepared covering wall (such as Knauf) is used, whitewash step can be eliminated.In such projects, while the project manager has the authority of the implementation or non-implementation of an activity and the method of implementation, he is not able to select the appropriate process accurately in the planning stage and cannot draw a precise CPM network of activities and the absolute run time for the project.Then, the project manager, based on the time-cost optimization chooses whether an activity should be implemented or eliminated, thus in such a case, drawing conditional network of activities is essential in planning stage.
In the present research, the concept of conditional network is defined along with some practical examples and then a proper solution is provided for the illustration of these networks and appropriate time-cost formulation.Finally, for some instances of conditional activity networks, conditional project time-cost are optimized using three known meta-heuristic algorithms, also known as multi-objective genetic algorithm (Zheng, D.X.M., et al, 2004. Daisy X.M., et al, 2005), multi-objective particle swarm optimization algorithm (Coello Coello, C.A., et al, 2004. Carlos A., et al, 2002) and multi-objective charged particle system algorithm (Kaveh A., et al, 2010 (a, b, c).Sharbatdar M.K., et al, 2016).The results showed that all of the algorithms are capable of finding all of the dominant possible solutions, but in terms of relative implementation time, multi-objective charged system search (SMOCSS) algorithm is better than the other algorithms applied in this paper.

Conditional activity network
The main factor for the creation of a network is providing the features and specifications of substances, tools, materials that the project manager has the authority of selecting it.In other words, in conditional projects the project manager should consider relating conditional statements to the existence or nonexistence of a conditional activity and the practical options of each conditional activity of the project appropriately and optimally in terms of time and cost.Thus, he should consider that the existence or nonexistence of a special option in one activity and even the existence or nonexistence of an activity depends on the implementation of its prerequisite activity (or even its prior activities).For the further clarification of conditional networks concept, we continue the discussion providing two examples of actual projects with this subject.

Example 1: Industrial scientific projects
In advanced scientific projects the phenomenon of shielding against harmful radiations and harmful substances and is very important and plays a vital role.In one special kind of shield metal plates or high-density sheets of glass or a type of prepared fiber can be used and in the junction stage for metal plates a special adhesive in special condition or screws and rivets with special technology or special welding can be used, while for glass sheets welding technology is not possible, also in prepared fiber the junction stage is eliminated.Thus, the project manager will illustrate a network for the time-cost optimization of these activities a part of which is presented in fig. 1.

Example 2: Construction projects
In the construction projects many cases can be found in which illustrating project activities in planning stage leads to a conditional activity network.Among them are the following (Butterfield. D. 2011. McCabe. G.B., et al, 2003): -In most of the buildings, first, the wall is refinished (plaster and whitewash) and then it is decorated (painting, etc.).But using wall covering as one of the implementation options in the refinish (activity) stage can lead to the elimination of decorating activity.
-Using Knauf in the activities related to the wall will eliminate refinish activities.
-In most kitchens in the refinishing stage tiling is performed and then, for decorating cabinets are used, but using wall covering and MDF cabinets, tiling is removed.
-The use of false ceiling in the refinishing stage of the ceiling leads to the elimination of plastering, whitewashing and painting.
-In large scale projects the selection of one special implementation option can even affect a subnetwork.For example, the activities of a girder skeleton building are different from the activities related to the implementation of piles and blocks.

Illustrating conditional activity networks
In the start of the planning of a project it is essential to define the tasks or activities that should be performed in that project and their dependencies must be determined.Thus, network display of a project is one of the primary steps in planning and is the foundation and the basis of other planning activities.In order to prevent any vagueness in the illustration of conditional activity networks, we provide some rules as follows, which stem in the concepts of conditional activity networks: Rule 1): As in the activity on nodes (AON) networks (Levin.R. 1980), activities are displayed as nods with solid lines (in the form of square or rectangle or circle or oval) and the connections and dependencies in between are displayed using vectors with solid lines (straight or broken or curved lines).In the nods, each of which representing a special activity, a number or Latin letter(s) is written as an attribute of that activity.
Rule 2): The activity in the starting of the vector is the prerequisite of the activity in the ending of the vector.
Rule 3): Each network has only one starting activity and one ending activity.

Rule 4):
The existence of rings in conditional activity networks is not acceptable.
Rule 5): Conditional activities are activities that their implementation affects the implementation options of at least one of the network activities or their implementation options are affected by the implementation of at least one of the prior activities.Conditional activities are shown with knots with dotted lines.Thus, in a conditional activity network there are at least two knots with dotted lines.

Rule 6):
As discussed in the previous sections a conditional activity can affect its next activity (activities) in two ways: First effect: leads to the elimination of some of their implementation options.
Second effect: leads to the elimination of one or more of the next activities.
To show the first effect method, the related number of each of the implementation options of the conditional activity is written in the knot and in front of each, the implementation options of the prerequisite activity that eliminates those implementation options are written.For example, see fig.2: activity is implemented with its third implementation option, E activity is not practical with its first implementation option and only one implementation option (E2) will be available.So, if C activity is implemented with its second implementation option, E activity cannot be implemented with its second implementation option and only one implementation option will be available (E1).
In order to show the second effect, like the first effect method, implementation options of the conditional activities and the implementation options affecting the prerequisite activity are written in the knot.For example, suppose activity network of fig. 3.According to the conditional activity network of fig.3, A, B, C, D, F activities are implementable with all their implementation options, but E activity has conditional limitations in the implementation method and is depended on the implementation of C activity.In the implementation method of E activity, we are confronted with the following conditions:  If C activity is implemented with its first implementation option (C1), E activity is implementable with both of its implementation options (E1, E2).
 If C activity is implemented with its second implementation option (C2), E activity is implementable only with its first implementation option (E1).
 If C activity is implemented with its third implementation option (C3), E activity is not implementable with any of its implementation options (E1, E2) and actually E activity is eliminated.

The time-cost formulation of conditional activity networks
As the time-cost formulation in TCTP issues (Feng, C.W., et al, 1997. Zheng, D.X.M., et al, 2004. Daisy X.M., et al, 2005) does not include the effect of the method of implementation of an activity on other activities and their implementation options in unconditional projects, this formulation cannot be used directly in conditional projects and must be revised.In order to better understand the conditional activities network, suppose fig. 4 as a hypothetical example that its implementation activities are shown in table 1.In the activity network of the above example for each of the activities one of its implementation options cannot be selected and time and cost of the path cannot be calculated as some of the paths are not practical due to their nature and activity network and their conditional inherence, that the following items can be mentioned as an example: Existence of such paths in the conditional activity networks causes the complexity of timecost trade off problem, in a way that the non-recognition of those leads to the non-recognition of optimized path set and even in some cases leads to the elimination of some of the optimal practical solutions.So, the first step in time-cost optimization of conditional activity networks, is the elimination of unauthorized paths from all of the implementation paths of the project and determining authorized paths.For this purpose, we define mu parameter for each of the activities Contractual as follows: First contract: For all of the unconditional activities and the activities that their implementation options are not derived from the previous activities' implementation this parameter equals to 1 (one).For example, in the conditional activity network of fig.4: Second contract: For the conditional activities considering the conditionality of the activity, this parameter equals 1 for authorized modes and for unauthorized ones it equals zero.For example, in the conditional activity network of fig.4: By determine the parameter value of mu for each of the activities, authorized and unauthorized paths can be determined easily.For this purpose and for the simplicity the next parameter is defined as Mu as the product of mu values for all of the activities: Finally, a path is authorized that its Mu value equals 1, otherwise, the path is unauthorized and should be eliminated from the project implementation path set.The efficiency of the introduced parameters are observable in the paths below for the conditional activity network of fig. 4. a) Example of unauthorized path: Now, by solving the problem of eliminating the unauthorized paths from the implementation paths of the conditional activity network, the appropriate formulation of time-cost optimization for these networks could be described as follows: where T parameter shows total time and C parameter shows total project implementation cost and is defined as follows: where, ti (k) : shows the time of i activity in the implementation mode with its kth implementation method.
xi (k) : is the 0, 1 variable indicator of i activity and xi (k) =1 if the ith activity is implemented with its kth implementation method and xi (k) =0 if the ith activity is not implemented with its kth implementation method.Thus the total indicator of each of the activities' variable equals 1.
Lk: indicates the sequence of the activities in the kth path and L={ Lk| k=1, 2, …, m}, in which m represents the number of authorized paths in project network and L is the set of authorized paths of project implementation in which Mu=1.
A: activities implemented in the authorized project paths.
dci (k) : represents the direct cost of the ith activity in the kth implementation method.
ici (k) : represents the indirect cost in time unit of the ith activity in the kth implementation method.

Presenting the results of time-cost optimization of conditional activity networks
The conditional activity networks are introduced in the previous section and their necessity was discussed providing some examples, also the illustration method of such projects and their time-cost formulation was presented.In this section, some instances of conditional activity networks are solved using heuristic algorithms and the results are compared in terms of implementation time and the number of Pareto solutions, as in the previous section.

Example 1:
The first example designed for this case is the example of fig. 4 which includes three conditional activities in which A, B, C, D, G activities are practical with all of their implementation options, but E and F activities have conditional limitations as follows:  If C activity is implemented with its first implementation option (C1), E and F activities are practical with all of their modes.
 If C activity is implemented with its second implementation option (C2), F activity is practical with all of its modes, but E activity is only implementable with its first mode (E1) and selecting the implementation option of E2 is unauthorized.
 If C activity is implemented with its third implementation option (C3), E activity is implementable with its second mode (E2) and E1 implementation option is unauthorized.Also, F activity is not practical in any of its modes, i. e. this activity will be eliminated.This example is solved with three meta-heuristic algorithms of NSGA-II, MOPSO and SMOCSS and the results were compared in terms of relative implementation time and the number of solutions in the dominant solution set.As it is presented in table 2 all of these algorithms are capable of finding all of the possible dominant solutions in all of three discussed examples in this section, but in terms of relative implementation time SMOCSS algorithm is much better than the other old algorithms.Pareto solution set resulted from SMOCSS algorithm of the example 1 is presented in fig. 5 and table 3.  Example 2: The second example of conditional activity network, which is presented in fig.6, is important in terms of the simultaneous selection of two implementation options of two independent activities which leads to the elimination of one (or more) of the implementation options of the next activities.For example, if D activity is implemented with its second implementation option (D2) and F activity is implemented with its first implementation option (F1), G activity is not implementable with its first implementation option (G1).In time-cost optimization of these networks, paths which are not complying with the conditional rules are eliminated from the authorized paths of the project.As it is observable from fig. 6, in the conditional activity network of the example 2, A, B, C, D, E, F, H, J activities are implementable with all of their implementation options, but G and I activities have limitations as follows:  If D activity is implemented with its second implementation option (D2) and F activity is implemented with its first implementation option (F1), G activity is not implementable with its first implementation option (G1).
 If D activity is implemented with its third implementation option (D3) or F activity is implemented with its second implementation option (F2), G activity is not implementable with its second implementation option (G2).
 If D activity is implemented with its first or third implementation options (D1 or D3) G activity is not implementable with its third implementation option (G1).
 If D activity is implemented with its second implementation options (D2), I activity is not implementable with its first implementation option (I1).
 If E activity is implemented with its first implementation options (E1) I activity is not implementable with its second implementation option (I2).
According to the mentioned explanations about the limitations in the method of finishing the project related to the second example, selecting some of the project implementation paths is not possible and in the optimization process these paths are eliminated.Implementation options of the activities related to this example is presented in table 4.     As it is observable from fig. 8, in the conditional activity network of the example 3, A, B, C, D, E, F, H, J, K activities are implementable with all of their implementation options, but I, G, F activities have conditional limitations as follows:  If D activity is implemented with its first implementation option (D1) I, G, F activities with all their implementation options will be eliminated. If D activity is implemented with its second implementation option (D2) I activity is not implementable with its first implementation option (I1).
The implementation options of activities related to this example is presented in table 6.

Conclusion
In this paper, by studying planning methods and examining the actual projects at hand in construction, industry, etc. and observing some conditional activities in projects, the conditional activity network is introduced that is a new type of planning and scheduling method of project planning.Then, for illustrating such networks combined rules of illustrating knot and vector networks with some new rules, that are stemmed in the conditional activity networks, for preventing from any vagueness.Then, for time-cost formulation in TCTP problems of conditional projects, a new parameter was defined for the elimination of unauthorized paths from all the project implementation paths and determining authorized paths.
Finally, some examples of conditional activity networks were designed and solved by using of meta-heuristic algorithms and the results were compared in terms of implementation time and the number of Pareto solutions.The results of time-cost optimization of conditional networks in the examples showed that all of the applied algorithms are capable of finding all of the dominant solutions, but SMOCSS algorithm is better than NSGA-II and MOPSO algorithms in terms of relative implementation time.

Fig. 1 :
Fig.1: a part of conditional activity network related to the industrial scientific projects example.

Fig. 2 :
Fig.2: illustrating conditional network with two conditional activities.According to the mentioned rules, it is observed that in the fig.2C activity with three implementation options and E activity with two implementation options are conditional activities, in a way that the implementation of C activity creates limitations in the implementation of E activity and the first implementation option of E activity (E1) is practical when C activity is implemented with its first or second implementation option and if C

Fig. 3 :
Fig.3: the implementation method of the prerequisite activity can lead to the elimination of a number of implementation options of an activity or even the elimination of that activity.

Fig. 4 :
Fig.4: conditional activity network with three conditional activities.Table 1: implementation options of the conditional activity network fig.4.Cost Ti Op Pr No Cost Ti Op Pr No 2250 1750 1500 6 8 10

Fig. 5 :
Fig.5: Pareto set for the conditional activity network of the example 1.

Fig. 7 :
Fig.7: Pareto solution set of the conditional activity network of the example 2.
example for the conditional activity network (fig.8), the method of implementation of an activity simultaneously influences several activities, in a way that the implementation of D activity with its first implementation option (D1) leads to the elimination of F, G and I activities.

Fig. 8 :
Fig.8: the example 3, conditional subnetwork of the conditional activity network with four conditional activities.
for the conditional activity network of the third example resulted from SMOCSS algorithm is presented in fig.9 and table 7.

Fig. 9 :
Fig.9: Pareto solution set of the conditional activity network of the example 3.

Table 2 :
the number of dominant solutions and the relative implementation time of the algorithms in solving conditional activity networks.

Table 3 :
the values of time and cost in the Pareto set of the conditional activity network of the example 1.

Table 4 :
implementation options of the conditional activity network of the example 2.Pareto solution set for the conditional activity network of the second example resulted from SMOCSS algorithm is presented in fig.7and table 5.

Table 5 :
the values of time and cost in the Pareto set of the conditional activity network of the example 2.

Table 6 :
implementation options of the conditional activity network of the third example.

Table 7 :
the values of time and cost in the Pareto set of the conditional activity network of the example 3.