New concepts for activity float in resource-constrained project management
Introduction
Although the notions of float and critical activity are key to analyzing project networks, float cannot be easily interpreted as the difference between the earliest start time (EST) and latest start time (LST) of an activity once resource limitations come into play. This leads to difficulties in network analysis, for example, when the critical path needs to be ascertained. The application of scheduling analysis depends on a good representation of the float of an activity and hence various methods have been proposed to calculate float [1], [2] and identify critical activities [1], [3], [4], [5], [6], [7].
Measures for calculating float to deal with resource-constrained projects have been explored by Raz and Marshall [1] and Bowers [2]. Raz and Marshall [1] used the classical definition of float and calculated it as the difference between the late schedule time and corresponding early schedule time. Since the standard notion of float is not unique, Bowers recognized that there were different schedules with identical completion time for a resource-constrained project, and float varied according to schedules. To resolve this, he redefined float into three types. However, Bowers’ notions of float were calculated as the difference between the EST and LST of all possible schedules. This is computationally prohibitive, since all possible schedules with identical durations must be found, while on the other hand, the difference between the EST and LST cannot capture the meaning of float for resource-constrained projects as we show in Section 2.
Recognizing that it was misleading to apply the traditional critical path method (CPM) to resource-constrained projects, Wiest [4] pursued a new representation of critical activities as a critical sequence in resource-constrained projects. A critical sequence is defined as the set of activities determined not only by topological ordering, but also by resource constraints. Different approaches have been developed to identify critical sequences [1], [3], [5], [6], [7]. The use of a critical sequence relies heavily on techniques used in the scheduling of resource-constrained projects, where activities identified as critical may be different for different schedules. This poses an inherent weakness in the approach.
In Goldratt [8], the idea of critical chain was proposed as a new approach for project scheduling, which is defined as a chain of activities satisfying both precedence and resource constraints. The chain of activities was critical in the sense that delaying any activities in the chain would delay the project. There is, however, little difference between the concepts of critical chain and critical sequence, both of which are schedule based, except for a form of buffer management. In critical chains, different feasible schedules might yield different critical chains, resulting in an activity being critical in one schedule, but not in another. Detailed discussions on critical chains can be found in the work by Raz et al. [9] and Herroelen and Leus [10].
In view of the need for a suitable method to identify critical activities for resource-constrained projects, Rivera and Duran [11] recently proposed the concepts of critical sets and critical clouds while pointing out the shortcomings of earlier approaches to identify critical activities. It turns out, however, that these definitions allow sets of critical activities to be left out, as shown in Section 2. Moreover, the exact algorithm proposed which uses these notions is unlikely to be practical for identifying all critical sets since even for medium-sized projects, there can be an exponential number of critical sets.
The resource-constrained project scheduling problem (RCPSP), first introduced by Wiest [4], is NP-hard in strong sense [12] and methods have been developed to tackle this problem. These include branch-and-bound methods [13], [14], [15], [16], [17], constraint-propagation-based cutting planes [18], heuristic X-pass methods [19], [20], [21], tabu search [22], [23], simulated annealing [24], [25] and genetic algorithms [26], [27], [28], [29]. A detailed survey on the methods for the RCPSP problem can be found in Demeulemeester and Herroelen [30], Kolisch and Padman [31], Kolisch and Hartmann [32], where a standard benchmark library, PSPLIB, was used to evaluate different methods [33].
A review of the limitations of current approaches for calculating float and critical activities is given in Section 2. New notions are proposed in Section 3 that address the limitations, and can be applied effectively to resource-constrained network project management. In Section 4, group float is defined, and a generalized definition of a critical set is given. In order to implement the new concepts, algorithms are developed in Section 5, and in Section 6, we discuss how critical sets and group sets can be found. In Section 7, float graphs illustrate how the new concepts can be used in managing projects. The ideas are developed further by the introduction of a negative float which complements the use of a float. Correspondingly, negative critical activity, negative group float, negative float set, negative critical set, and negative float graph are introduced. The idea of zero critical activity – which is both critical and negatively critical – is highlighted since it is particularly useful as a marker for activities to which project completion time is highly sensitive. For practical implementation of the analytical tools, algorithms developed to calculate float, critical sets and float sets are tested in numerical experiments described in Section 8. Our work is summarized in Section 9.
Section snippets
Limitations in current approaches
Although much effort has been made to interpret flexibility in resource-constrained projects, an effective definition remains unavailable. This can be attributed to the fact that there can be multiple schedules with the same project completion time. Float, as a measure of flexibility, cannot be appropriately defined based on a single schedule. Some researchers choose to represent float by extending the idea of the classical CPM, i.e., using the difference between the earliest EST and the latest
Float and critical activity
The notion of float was previously used in literature to measure scheduling flexibility associated with activities for traditional project networks. Taking the features of resource-constrained project into consideration, we redefine this notion with a broader scope. Definition 1 Float The float of an activity is defined as the amount of time that its duration can be extended without changing the completion time of the project.
In the case when there are no resource constraints, this is equivalent to the standard
Group float, critical set and float set
In practice, project managers are not just concerned with a specific activity. Usually, they are also concerned with a group of activities, and wish to know how long a set of activities can be delayed without affecting completion time. Although grouped activities have been studied by Rivera and Duranm [11] with the introduction of critical set and critical cloud, Example 2 showed these definitions were inadequate for discovering all critical sets. To address this shortcoming, we introduce the
Calculating the maximum float
In order to identify critical activities in a resource-constrained project defined in this work, the computation of the maximum float of an individual activity becomes necessary. As shown in Theorem 1, Float-RCPSP is NP-hard in the strong sense, so there can be no polynomial time algorithm to calculate the maximum float unless . However, for small project instances, we have found in our experiments that the exact value of maximum float is computable by a Float Search with Branch-and-Bound (
Finding group float and critical sets
Similar to float, group float can be calculated using the FSBB and FSSI algorithms. Here, the difference is that all the activities in the group must be delayed simultaneously. Changes are made to the FSBB and FSSI such that the parameters are set to (A,P,R,S,C), where S is the activity set and C is the delay vector discussed in Section 4. Detailed group float algorithms, called FSBB_GROUPFLOAT and FSSI_GROUPFLOAT, are provided in the Appendix.
It is useful to find all float sets and critical
Project depiction using a float graph
Methods have been developed to calculate the maximum float value of an activity and a set of activities. To give the project managers a graphical view of the flexibility of activities in a resource-constrained project, a float graph can be used. This is an undirected graph that depicts float and group float as labels of vertices and edges. Definition 6 Float graph A float graph is an undirected graph, where each represents an activity, and there is an edge if and only if the maximum group
Experimental study and analysis
In view of the NP-hardness of the Float-RCPSP, it is only possible to find maximum activity float (E-Float) for small projects. However, with the use of hypothesis testing and the meta-heuristic SA algorithm, it is possible to find the maximum possible float (H-Float) for large projects. Our numerical study is divided into three parts. We start in Section 8.1 by investigating the performance of a branch-and-bound algorithm for E-Float on the J30 test set of the PSPLIB [51], which contains 30
Conclusion and future research
New concepts of float and critical activity were developed in this work to address the limitations of current concepts available for planning resource-constrained projects. With these new measures of flexibility, namely float, group float, critical activity, critical set and the use of float graphs, projects with resource constraints can be managed more effectively. They allow the manager to focus on critical activities, handle activity duration uncertainty, select completion times to buffer
Acknowledgements
The authors would like to express their thanks to the anonymous referees whose comments and suggestions helped to improve the work.
References (52)
- et al.
Effect of resource constraints on float calculations in project network
International Journal of Project Management
(1996) Interpreting float in resource constrained projects
International Journal of Project Management
(2000)- et al.
Identifying the critical sequence in a resource constrained project
International Journal of Project Management
(1988) - et al.
On the merits and pitfalls of critical chain scheduling
Journal of Operations Management
(2001) - et al.
Critical clouds and critical sets in resource-constrained projects
International Journal of Project Management
(2004) - et al.
Scheduling projects subject to resource constraints: classification and complexity
Discrete Applied Mathematics
(1983) - et al.
A branch and bound algorithm for resource-constrained project scheduling problem
European Journal of Operational Research
(1998) - et al.
Lower bounds for resource-constrained project scheduling problems
European Journal of Operational Research
(2003) - et al.
A new efficient simulated annealing algorithm for the resource-constrained project scheduling problem and its multiple modes version
European Journal of Operational Research
(2003) - et al.
An integrated survey of deterministic project scheduling
OMEGA International Journal of Management Science
(2001)
Experimental investigation of heuristics for resource-constrained project scheduling: an update
European Journal of Operational Research
Semi-active, active, and non-delay schedules for the resource-constrained project scheduling problem
European Journal of Operational Research
On linear lower bounds for the resource constrained project scheduling problem
European Journal of Operational Research
Resource-constrained project scheduling: a survey of recent developments
Computers and Operations Research
Experimental evaluation of state-of-the-art heuristics for the resource-constrained project scheduling problem
European Journal of Operational Research
Justification and RCPSP: a technique that pays
European Journal of Operational Research
Project scheduling under uncertainty: survey and research potentials
European Journal of Operational Research
Some properties of schedules for large projects with limited resources
Operations Research
Is resource-constrained project management software reliable?
Cost Engineering
Criticality in resource constrained networks
Journal of Operations Research Society
Take the path that is really critical
PM Network
Critical chain
A critical look at critical chain project management
Project Management Journal
A branch-and-bound procedure for the multiple resource-constrained project scheduling problem
Management Science
New benchmark results for the resource-constrained project scheduling problem
Management Science
Scheduling resource-constrained projects competitively at modest memory requirements
Management Science
Cited by (16)
Multimode time-cost-robustness trade-off project scheduling problem under uncertainty
2022, Journal of Combinatorial OptimizationA Robust Optimization Scheduling for Carrier Aircraft Support Operation Based on Critical Chain Method
2019, IOP Conference Series: Materials Science and EngineeringMulti-mode Time-Cost-Robustness Trade-Off Project Scheduling Problem under Uncertainty
2019, Proceedings of the 2019 International Conference on Industrial Engineering and Systems Management, IESM 2019Minimum cost method for multiskilled resource scheduling
2019, International Journal of Engineering Research and TechnologyNegative total float to improve a multi-objective integer non-linear programming for project scheduling compression
2018, International Journal of Electrical and Computer EngineeringModels minimizing resource peak in resource leveling
2017, Xitong Gongcheng Lilun yu Shijian/System Engineering Theory and Practice