Abstract

Activity floats are vital for project scheduling, such as total floats which determine the maximum permissible delays of activities. Moreover, activity paths in activity networks present essences of many project scheduling problems; for example, the time-cost tradeoff is to shorten long paths at lower costs. We discovered relationships between activity floats and paths and established a float-path theory. The theory helps to compute path lengths using activity floats and analyze activity floats using paths, which helps to transmute a problem into the other simpler one. We discussed applications of the float-path theory and applied it to solve the time-cost tradeoff problem (TCTP), especially the nonlinear and discrete versions. We proposed a simplification from an angle of path as a preprocessing technique for the TCTP. The simplification is a difficult path problem, but we transformed it into a simple float problem using the float-path theory. We designed a polynomial algorithm for the simplification, and then the TCTP may be solved more efficiently.

1. Introduction

A project is defined by a set of “real” activities and a set of immediate precedence relations. Based on this, DuPont company and Kelley and Walker [1] created activity networks to represent projects, such as CPM networks. The temporal analysis of the activity network resulted in the definition of several parameters, not the least important among which are the earliest and latest start and finish-time of an activity, which gave rise to the concept of activity floats. There are four such floats—total float, free float, safety float, and interference float [25]. These floats play an important role in two issues of central concern to managers: resource allocation and activity scheduling, since floats gave a measure of the flexibility in scheduling the activities during the project execution without delaying the project completion time [5].

In this paper, we researched the activity floats from the view of length instead of time and discovered their new properties—there are close relationships between floats and paths in activity networks. For example, the total float of an activity is equal to the difference between length of the critical path and length of the longest path passing the activity. The properties cause the activity floats and paths to be represented by each other, and we summarized them as a float-path theory. Paths are vital research subjects in most types of networks, and the activity network is no exception. Activity paths present essences of many project scheduling problems. For example, the essence of the time-cost tradeoff is to compress long paths to a required length at the lowest cost. The classic Fulkerson [6] algorithm is to compress the critical path and the compression in each step is determined by free floats of noncritical activities. Solving different problems needs considering different types of paths, and it may be difficult to find some types of paths. The float-path theory provides a new approach for path problems, that is, replacing finding paths by computing activity floats, even analyzing paths when changing the network’s structure (such as adding, removing, or flipping arcs).

In this paper, we considered the application of the float-path theory to a classic project scheduling problem—time-cost tradeoff problem (TCTP), especially the nonlinear continuous and discrete versions. The continuous TCTP was proposed by Kelley [7] and contains linear and nonlinear TCTP. The nonlinear TCTP is more realistic but difficult than the linear one, and the nonlinear time-cost curve is a main research objective. The more general form of the time-cost curve was analyzed by Panagiotakoplos [8] and Moder et al. [9] following the earlier studies of the concave time-cost curve by Falk and Horowitz [10] and convex time-cost curve studies of others [1115]. Their main ideas for the nonlinear TCTP were to approximate the nonlinear function by using a piecewise linear function and then solve the problem by computing the linear function. Later some other authors further developed the approaches [4, 16] and proposed new ones, for example, decision support model [17]. In addition to researching the time-cost curve, several heuristic algorithms are used to solve the nonlinear TCTP [1823]. Discrete TCTP (DTCTP), the most difficult of the TCTPs, was proposed by Panagiotakoplos [8] and Harvey and Patterson [24]. De et al. [25] proved that the problem was strong nondeterministic polynomial-time hard (NP-hard). Many scholars designed heuristic algorithms for the problem. Skutella [26] first designed an approximation algorithm for the DTCTP, and some recent heuristic algorithms for the problem have been reported [2734]. Akkan et al. [27], in particular, proposed a simplification for the problem, and their main approach was to compute path lengths, especially the shorter paths in the network. But the workload of directly computing all path lengths in a network is incredible, and the effect of this simplification may be not perfect. In addition, several exact methodologies are used to solve the problem with small-scale, including mathematical programming [35], dynamic programming [36, 37], branch and bound procedure [38], and robustness measures [23, 39].

We considered the large-scale nonlinear continuous TCTP and DTCTP from the idea of equivalent simplification. Simplification has a much larger benefit for the problems. For the nonlinear TCTP, narrowing the duration interval of an activity allows a more detailed approximation of the piecewise linear function to its nonlinear function. The measure can improve the effect and accuracy of solving the problem. The effectiveness of simplification will be more prominent to the DTCTP. The number of schemes of the DTCTP will increase exponentially as the scale of the problem increases, which causes the increase of the computation greatly. Conversely, in case of reducing activities, the number of schemes will decrease exponentially. Hence the simplification may cause a large-scale DTCTP to be solved using exact algorithms.

The float-path theory applies to the simplification. For instance, a target of the simplification is to remove paths shorter than the required length. There are numerous paths but fewer activities in a large-scale network. We can use the float-path theory to replace the computing path lengths by computing activity floats and remove numerous redundant paths by removing several activities. This is similar to the effect of the analytic geometry, which substitutes quadratic functions for complex cone curve. Based on the float-path theory, we designed a polynomial algorithm to simplify the TCTPs. The preprocessing technique may help to solve the TCTP and other project scheduling problems.

2. Time Parameter in a CPM Network

2.1. Time Parameter of Node

In a CPM network (activity-on-arc representation), let nodes and be the start and terminal nodes of the network, and let denote the duration of the activity , and and are the earliest and latest times of the node ; then let , and let , , Length of the critical path, , in the network is

2.2. Activity Float

The activity floats mainly include total, free, safety, and interference floats and are described below in relation to an activity .

Total Float. The total float () is defined as It denotes the maximum permissible delay of the activity without delaying the project duration.

Free Float. The free float () is computed as It denotes the maximum permissible delay of the activity when all its succeeding activities start as early as possible and all its preceding activities finish as early as possible.

Safety Float. The safety float () is defined by It denotes the maximum permissible delay of the activity when all its preceding activities start as late as possible and all its succeeding activities finish as late as possible.

Interference Float. The interference float () is computed as If the interference float is positive, then it describes the maximum permissible delay when all its succeeding activities start as early as possible and all its preceding activities finish as late as possible. In case it is negative, the IF is the minimum required shortening of the duration of the activity to allow all its succeeding activities to finish as early as possible and all its preceding activities to finish as late as possible.

3. Float-Path Theory in a CPM Network

Float-path theory reflects the property of the CPM network structure, and it mainly contains the relationships between activity floats and path lengths. We summarize them in the following theorems.

Theorem 1. Suppose is a path from the node to node ; then its length, , is where and .

Proof. See Appendix A.

Theorem 2. For any node, , its earliest time, , is equal to length of the longest path, , from the start node (1) of the network; that is, and its latest time, , is equal to the difference between length of the critical path, , and length of the longest path, , from it to the end node of the network; that is,

Proof. See Appendix B.

Corollary 3. For any node, , the free float, , of any activity on the longest path from the start node (1) of the network to it is equal to 0; that is, and the safety float, , of any activity on the longest path from it to the end node of the network is also equal to 0; that is,

Proof. See Appendix C.

Theorem 4. For any activity, , its total float, , is equal to the difference between length of the critical path, , and length of the longest path, , passing it; that is,

Proof. See Appendix D.

Theorem 5. For any activity, , its free float, , is equal to the difference between length of the longest path, , passing its end node and length of the longest path, , passing it; that is,

Proof. See Appendix E.

Theorem 6. For any activity, , its safety float, , is equal to the difference between length of the longest path, , passing its start node and length of the longest path, , passing it; that is,

Proof. It is similar to the proof of Theorem 5.

Theorem 7. For any activity, , its interference float, , can be represented as follows: add an arc with length , and is equal to the value of that length of the longest path, , passing the arc once minus length of the critical path of the old network, and minus double duration of the activity ; that is, If and , the equation is still correct after flipping the arc .

Proof. See Appendix F.

The float-path theory helps to solve many path problems by transforming the computations of path lengths into the computations of activity floats. For example, according to Theorem 2 and Corollary 3, we can find the longest path from the start node to any node and the longest path from any node to the end node ; according to Theorem 4 and Corollary 3, we can find the longest path passing any activity; and according to Theorem 7, we can analyze paths when changing the network’s structure (e.g., adding or flipping arcs).

4. Application of the Float-Path Theory to TCTP

4.1. The TCTP

Assume in a CPM network that denotes the duration of each activity and , where denotes the cost of duration () and is a monotonic decreasing function, and denotes the time of each node and denotes project duration that . The continuous TCTP can be formulated as follows ( denotes the required project duration):

And assume that and , respectively, denote the duration and cost of mode of each activity , and if then for all . The DTCTP can be formulated as follows:

In an activity network, the project duration is equal to the length of the critical path; therefore in solving the TCTP the solution is to make all the paths no longer than the required length at a minimum total cost.

4.2. Principles of Equivalent Simplification of the TCTP

We first consider reducing the scale of the problem and propose Proposition 8 of the equivalent simplification in combination with the CPM network.

Proposition 8. If all activities choose their longest durations and a path is no longer than , then in all cases the path will be no longer than so that can be eliminated from our consideration in solving the TCTP. Therefore, the path can be removed. However, because removing a path may cause the removal of other paths, keeping paths longer than is essential when removing the shorter ones.

However, it is difficult to directly implement the proposition, and we simplify it to Proposition 9.

Proposition 9. If all activities choose their longest durations and the longest path passing one activity is no longer than , then in all cases all paths passing the activity will be no longer than . Thus, the activity is a redundant activity and can be removed, and its optimal duration is the cheapest duration.

Furthermore, we consider simplifying parameters of each activity and propose Propositions 10~12 of the equivalent simplification.

Proposition 10. If activity chooses a duration and the longest path passing the activity is longer than , even if all the other activities choose their shortest durations, then it will in all cases make the project duration longer than , and is not the optimal solution. On this basis, is a redundant duration of the activity which is called redundant-long duration and can be removed.

Proposition 11. If one activity chooses a duration, the longest path passing the activity will be no longer than , even if all other activities choose their longest durations; therefore, in all cases the duration is unable to make project duration longer than , and one names it as short duration.

Proposition 12. For all the short durations of an activity , the total cost will be lower when choosing the cheapest duration compared to other choices; therefore, the minimum total cost will not be realized when using the short durations other than , and the other durations are not optimal solutions. Thence, these short durations are redundant durations of the activity and can be removed. One names them as redundant-short durations.

4.3. Equivalent Simplification of TCTP Using the Float-Path Theory

Theorems 13~15 describe how to determine the redundant objectives.

Theorem 13. Let each activity choose the longest duration ; then compute its total float and the project duration . If , then the activity is a redundant activity.

Proof. See Appendix G.

Theorem 14. Let each activity choose its shortest duration ; then add an assistant activity with duration , and compute the total float . If , then each duration meeting is a redundant-long duration of the activity .

Proof. See Appendix H.

Theorem 15. Let each activity choose its longest duration , and compute its total float and project duration T. If and , then each duration meeting is a short duration of the activity . Except for the cheapest short duration for an activity, the others are redundant-short durations.

Proof. See Appendix I.

4.4. Algorithm of Equivalent Simplification of the TCTP

Suppose there are nodes in a corresponding CPM network for a given project, indicated by , with the start and terminal nodes marked as and ; then we can simplify the TCTP of the project as follows.

Step 1. Add assistant activity with duration .

Step 2. Let of each activity , and compute time parameters.

Step 3. Remove duration of activity that is longer than .

Step 4. Let of each activity , and compute time parameters.

Step 5. Remove activity whose .

Step 6. For duration of each remaining activity which is no longer than , preserve the longest one and remove the others.

Proof. See Appendix J.

The complexity of the algorithm is , where indicates quantity of activities (see Appendix K). The effectiveness of the algorithm depends on the comparisons among the length of the critical path, the length of the longest path passing each activity, and the required length . For example, when most paths are much shorter than the critical path (e.g., most activities have large total floats), or the difference between and the length of the critical path is small, the simplification may be more effective because it may remove more activities.

After the equivalent simplification of the network G, the remaining network is marked as . The optimal solution of the TCTP can be solved using the network : the optimal duration of each activity in the network can be obtained by using existing algorithms, such as the algorithms in References; for each redundant activity in Steps 5 and 6 of the simplification, its duration is unrelated to so that the optimal duration is the current longest (cheapest) one for the minimum total cost.

5. Illustration

5.1. Equivalent Simplification of the Nonlinear Continuous TCTP

The detailed information for a project with 116 activities is shown in Table 1 (the cost unit is dollar and time unit is day). The start-time of any activity is no earlier than the finish-time of its immediate predecessor activity, and the cost function of each activity’s duration is nonlinear and monotonically decreasing. How do we simplify the problem and improve the effect and accuracy of the solution if the demand is to shorten the project duration to 520 () at a minimum cost?

We use our algorithm to simplify the nonlinear time-cost tradeoff problem as follows.

Step 1. Represent the project as a CPM network based on Table 1 (let ), and assist activity with duration .

Step 2. Let of each activity , and compute time parameters, as in Figure 1.

Step 3. For activity , remove duration longer than ; that is, remove duration interval , and let ; similarly, remove duration interval of activity , duration interval of activity , duration interval of activity , duration interval of activity , duration interval of activity , duration interval of activity , duration interval of activity , duration interval of activity , duration interval of activity , duration interval of activity , duration interval of activity , duration interval of activity , duration interval of activity , duration interval of activity , duration interval of activity , and duration interval of activity .

Step 4. Let , and compute time parameters, as in Figure 2.

Step 5. Remove activities whose , as in Figure 3.

Step 6. There are no durations shorter than of each remaining activity in Figure 3; therefore we could not remove them.

After the equivalent simplification, a network is acquired (Figure 4). Obviously, network is much simpler than the old network (Figure 1), and duration intervals of many remaining activities are significantly narrowed.

Next we further solved the nonlinear TCTP that computed the optimal durations of activities using the mathematical model in Section 4.1 and intelligent algorithm software, such as LINDO. The experiment was performed on a PC (1 CPU, Intel 2.0 GHz, 1 G RAM) using the Windows XP operating system.(i)We first solved the problem without simplification and obtained the project cost of 749,351,200. The computation time was ~30 min.(ii)And then we solved the problem after the simplification and obtained the project cost of 749,106,282, which is 2,449,108 cheaper than the former. The computation time was ~2 sec, which is also much faster than the former.

This experiment further tests and verifies that the equivalent simplification could improve the effect and accuracy of the solution of the nonlinear continuous TCTP.

5.2. Equivalent Simplification of the DTCTP

The detailed information for a project with 88 activities is shown in Table 2 (similarly, the cost unit is dollar and time unit is day). The start-time of any activity is no earlier than the finish-time of its immediate predecessor activity, and each activity has three time-cost modes. If the project must be finished within 385 () at a minimum cost, then the amount of schemes is . What is the equivalent simplification to improve scheduling effect?

Step 1. Represent the project as an activity network based on Table 2 (let each activity choose mode 1), and assist activity with duration .

Step 2. Let of each activity , and compute time parameters, as in Figure 5.

Step 3. For activity , remove modes 2 and 3 whose durations are longer than ; similarly, remove modes 2 and 3 of activity , mode 3 of activity , modes 2 and 3 of activity , mode 3 of activity , and modes 2 and 3 of activity .

Step 4. Let each activity in Figure 5 choose the mode with the longest duration from its remaining modes, and compute time parameters, as in Figure 6.

Step 5. Remove activities whose , as in Figure 7.

Step 6. There are no durations shorter than within the remaining modes of each activity in Figure 7; therefore we could not remove them.

Network is obtained by the above simplification and shown in Figure 8, and brackets around each activity denote its choice of time-cost modes. It is much simpler than Figure 5, and the amount of schemes is only . The optimal scheme is easily determined using any computer and algorithm.

6. Conclusion

A project can be represented by using an activity network, and the activity floats and activity paths in the network are important to solve many project scheduling problems. For example, for resource leveling, the range of adjusting each activity is determined by its float; and for time-cost tradeoff, a key step is to compress long paths to required lengths. In conventional thinking, activity floats and paths are separate, and all floats are easy to compute but many paths are difficult to find. However, we discovered that there are close relationships between activity floats and paths, and paths and their lengths can be represented by floats. For instance, the total float can be used to compute length of the longest path passing an activity; the free float and safety float can be used to find required paths between two nodes; and the interference float can be used to compute path lengths when changing the network’s structure (adding or flipping arcs). Based on these, we established the float-path theory, which helps to simplify path problems.

We use the float-path theory to solve a classic project scheduling problem—the time-cost tradeoff problem, especially the nonlinear continuous and discrete (strong NP-hard) versions. Due to the difficulty, we first simplify the problem rather than designing algorithms to solve it directly. The simplification is to remove redundant activities and redundant durations (time-cost mode) of nonredundant activities, which need to compute enormous path lengths. We used the float-path theory to transform the simplification into computations of some activity floats and designed a polynomial algorithm. Complexity of the algorithm is and indicates the amount of activities. After the simplification, the old problem may be solved more effectively using current algorithms.

Appendices

A. Proof of Theorem 1

In a CPM network, the length, , of a path from a node to a node is .

According to (5), Assume ; then

According to (6), Assume ; then

Assume an activity , and . According to (4), then

Assume a node , and ; then

Therefore, (8) is proved. This completes the proof.

B. Proof of Theorem 2

For any node in a CPM network, according to (1), we can summarize that and further deduce by iteration that And According to (2), we can summarize that and further deduce by iteration that Therefore, (9) and (10) are proved. This completes the proof.

C. Proof of Corollary 3

For any node , according to (1) and (8), And according to (9), ; then that is, According to (1) and (5), therefore Equation (11) is proved.

According to (3) and (8), And according to (10), ; then that is, According to (2) and (6), therefore Equation (12) is proved. This completes the proof.

D. Proof of Theorem 4

For any activity in a CPM network, according to (4), . Substitute (9) and (10) in the above equation; then Therefore, (13) is proved. This completes the proof.

E. Proof of Theorem 5

For any activity in a CPM network, according to (5), . Substitute (9) in the above equation; then Therefore, (14) is proved. This completes the proof.

F. Proof of Theorem 7

For any activity in a CPM network, according to (7), . Substitute (9) and (10) in the above equation; then If we add an arc with length , then the longest path passing the arc once is , and its length is . Hence and indicates the critical path in the old network before adding the arc .

In addition, if and , then according to Corollary 3, and . Hence and will be existent when flipping the arc . After flipping the arc , the longest path passing the arc will appear; that is, , and its length is . Therefore, and indicates the critical path in the old network before flipping the arc . Equation (16) is proved. This completes the proof.

G. Proof of Theorem 13

Since each activity has a duration , all paths in the network get to their longest lengths. For the activity , according to Theorem 1, If , namely, , then . Therefore, the longest path passing the activity has a length . According to Proposition 9, the activity is redundant. This completes the proof.

H. Proof of Theorem 14

Since each activity chooses duration , all paths in the network get their shortest lengths. The project duration is equal to the length of the critical path , and the assistant activity with a duration is added; therefore . According to Theorem 1, . If the duration of the activity is prolonged by , namely, then also will be correspondingly prolonged by and then equal to the same length as and will be a new critical path. In this case the project duration remains .

But if is still prolonged, this will prolong the critical path, and the project duration will be longer than . Since all other activities choose their shortest durations, it is inevitable that once the activity meets , and the project duration is longer than . According to Proposition 10, the duration is a redundant-long duration of the activity . Obviously, the precondition of an existing redundant-long duration is . This completes the proof.

I. Proof of Theorem 15

Since each activity chooses duration , all paths in the network get their longest lengths. For an activity , according to Theorem 1, If , namely, , then . Therefore, the longest path passing the activity has a length .

According to Proposition 11, if the duration of the activity is shortened to a value that makes the longest path shorter than , then it is a short duration of the activity. Therefore, if one wants to make , the duration of the activity needs to be shortened by at least , which means that the duration is a redundant-short duration of the activity . Obviously, the precondition of an existing short duration is . According to Theorem 1, ; thence and additionally Thus, if and , the duration is a short duration of the activity . According to Proposition 12, except for the cheapest duration, all the other short durations of the activity are redundant-short durations. This completes the proof.

J. Proof of Algorithm in Section 4.4

(1) Remove Redundant-Long Duration of Each Activity. Using Step 1, the assistant activity with is added to ensure project duration in the process of simplification. Using Step 2, the time parameters of each node and the project duration in the CPM network are computed when all activities choose their shortest durations. According to Proposition 10 and Theorem 15, for any activity , the duration is its redundant-long duration. Therefore, Steps  1~3 can be used to remove redundant-long duration of each activity.

(2) Remove Redundant Activity. The time parameters of each node and the project duration are computed by using Step 4 when each activity chooses its current longest duration . According to Proposition 10 and Theorem 13, if an activity meets , then it is redundant activity and can be removed. Therefore, Steps  4~5 can be used to identify and remove all redundant activities.

(3) Remove Redundant-Short Activity of Each Remaining Activity. According to Proposition 12 and Theorem 15, for a remaining activity , durations meeting are its short durations, and except for the longest one, the others are redundant-short durations and can be removed. Therefore, Step 6 can be used to remove the redundant-short duration of the remaining activities.

(4) Consider Whether the Simplification Needs to Be Repeated. After removing the redundant-short duration, we need to consider whether new redundant duration appears for each remaining activity or whether it is the appearance of new redundant activity.

According to Step 6, the shortest duration of each remaining activity meets , . We let the algorithm run again for the second round simplification.

(1) First, Consider the Redundant-Long Duration. According to Proposition 10, the redundant-long duration of an activity is determined by the shortest durations of the other activities on the longest path passing it. Thence, a new redundant-long duration of the activity may appear only when the shortest durations of these activities become longer.

Assume , and if , then . It means that the shortest duration of the activity does not change and cannot lead the other activities having a new redundant-long duration. But if , then . This means that the shortest duration of the activity becomes longer and may lead the other activities on the path passing it to have new redundant-long durations. But according to Proposition 11, now is the cheapest short duration of the activity . When the activity chooses the duration, the longest path passing it is still no longer than , even if all other activities choose their current longest durations. In other words, although the shortest duration of activity becomes longer, any path passing it will be no longer than when the activity in all cases chooses the current shortest duration. According to Proposition 10, all activities on these paths will not have new redundant-long durations. Similarly, it is the same for other remaining activities. Therefore, new redundant-long duration will not appear in the second round simplification.

Similarly, when assuming , new redundant-long duration of any activity will also not appear.

(2) Then Consider Redundant Activity and Redundant-Short Duration. Each activity will not have a new redundant-long duration such that the longest duration of each remaining activity is still after repeating Steps  2~3. Therefore, after repeating Step 4, the values , , , and are the same as the corresponding ones in the first round simplification. Each remaining activity is nonredundant in the first round simplification; thus is still met in the second round simplification. All remaining activities are still nonredundant activities.

Similarly, assume , for a remaining activity ; its shortest and longest durations are and , and its total floats and are unchanged. According to Step 6, is unchanged and the extreme duration of the activity is Thence, the extreme duration of each activity is unchanged and new redundant-short duration will not appear.

Similarly, when assuming , a new redundant-short duration of any activity will also not appear.

According to above analysis, a new redundant objective does not appear after the second round simplification. The network cannot be simplified further using the algorithm. Similarly, the result will be the same after more simplification rounds; therefore the algorithm needs to be run only once to remove all redundant objectives. This completes the proof.

K. Complexity of Algorithm in Section 4.4

Suppose there are activities in the network. In Steps 2 and 4, time parameters and of each node need to be computed using the CPM algorithm and the complexity is . In Step 3, the extreme value of the redundant-long duration of each activity needs to be computed in order to remove redundant-long duration; thence the complexity is . In Step 5, the total float of each activity needs to be computed and compared with ; thus the complexity is . In Step 6, the extreme duration of each remaining activity needs to be computed to determine redundant-short duration; thus the complexity is . Since the algorithm only needs to run once, its complexity is .

Conflict of Interests

The authors declare that there is no conflict of interests regarding the publication of this paper.

Acknowledgments

The paper is supported by the Natural Science Foundation of China (no. 71171079) and the Soft Science Research Base of Water Security and Sustainable Development of Jiangxi Province in China.