Abstract
The resource-constrained project scheduling problem is a widely studied problem in the literature. The goal is to construct a schedule for a set of activities, such that precedence and resource constraints are respected and that an objective function is optimized. In project scheduling literature, summary measures are often used as a tool to evaluate the performance of algorithms and to analyze instances and datasets. They can be classified in two groups, network measures describe the precedence constraints of a project, while resource measures focus on the resource constraints of the instance. In this manuscript we make an exhaustive evaluation of the summary measures for project scheduling. We provide an overview of the most prevalent measures and also introduce some new ones. For our tests we combine different datasets from the literature and generate a new set with diverse characteristics. We evaluate the performance of the summary measures on three dimensions: consistency, instance complexity and algorithm selection. We conclude by providing an overview of which measures are best suited for each of the three investigated dimensions.
Similar content being viewed by others
Change history
14 July 2023
A Correction to this paper has been published: https://doi.org/10.1007/s10479-023-05511-2
References
Bein, W. W., Kamburowski, J., & Stallmann, M. F. (1992). Optimal reduction of two-terminal directed acyclic graphs. SIAM Journal on Computing, 21(6), 1112–1129.
Coelho, J., & Vanhoucke, M. (2018). An exact composite lower bound strategy for the resource-constrained project scheduling problem. Computers & Operations Research, 93, 135–150.
Coelho, J., & Vanhoucke, M. (2020). Going to the core of hard resource-constrained project scheduling instances. Computers & Operations Research, 121(104), 976.
Cooper, D. F. (1976). Heuristics for scheduling resource-constrained projects: An experimental investigation. Management Science, 22(11), 1186–1194.
Dar-El, E. (1973). Malb-a heuristic technique for balancing large single-model assembly lines. AIIE Transactions, 5(4), 343–356.
Davies, E. (1973). An experimental investigation of resource allocation in multiactivity projects. Journal of the Operational Research Society, 24(4), 587–591.
Davis, E. W. (1975). Project network summary measures constrained-resource scheduling. AIIE Transactions, 7(2), 132–142.
De Reyck, B. (1995). On the use of the restrictiveness as a measure of complexity for resource-constrained project scheduling. Katholieke Universiteit Leuven, Departement Toegepaste Economische Wetenschappen.
De Reyck, B., & Herroelen, W. (1996). On the use of the complexity index as a measure of complexity in activity networks. European Journal of Operational Research, 91(2), 347–366.
Demeulemeester, E., Vanhoucke, M., & Herroelen, W. (2003). Rangen: A random network generator for activity-on-the-node networks. Journal of scheduling, 6(1), 17–38.
Demeulemeester, E. L., Herroelen, W. S., & Elmaghraby, S. E. (1996). Optimal procedures for the discrete time/cost trade-off problem in project networks. European Journal of Operational Research, 88(1), 50–68.
Dilworth, R. P. (1950). A decomposition theorem for partially ordered sets. Annals of Mathematics, 51(1), 161–166.
Elmaghraby, S. E., & Herroelen, W. S. (1980). On the measurement of complexity in activity networks. European Journal of Operational Research, 5(4), 223–234.
Guo, W., Vanhoucke, M., Coelho, J., et al. (2021). Automatic detection of the best performing priority rule for the resource-constrained project scheduling problem. Expert Systems with Applications, 167(114), 116.
Herroelen, W., & De Reyck, B. (1999). Phase transitions in project scheduling. Journal of the Operational Research Society, 50(2), 148–156.
Kaimann, R. A. (1974). Coefficient of network complexity. Management Science, 21(2), 172–177.
Kamburowski, J., Michael, D., & Stallmann, M. (1992). Optimal construction of project activity networks. In: Proceedings of the 1992 Annual Meeting of the Decision Sciences Institute, San Francisco, pp. 1424–1426.
Kao, E. P., & Queyranne, M. (1982). On dynamic programming methods for assembly line balancing. Operations Research, 30(2), 375–390.
Kolisch, R., & Sprecher, A. (1997). Psplib-a project scheduling problem library: Or software-orsep operations research software exchange program. European Journal of Operational Research, 96(1), 205–216.
Kolisch, R., Sprecher, A., & Drexl, A. (1995). Characterization and generation of a general class of resource-constrained project scheduling problems. Management Science, 41(10), 1693–1703.
Mastor, A. A. (1970). An experimental investigation and comparative evaluation of production line balancing techniques. Management Science, 16(11), 728–746.
Messelis, T., & De Causmaecker, P. (2014). An automatic algorithm selection approach for the multi-mode resource-constrained project scheduling problem. European Journal of Operational Research, 233(3), 511–528.
Pascoe, T. L. (1966). Allocation of resources cpm. Revue Francaise de Recherche Operationnele, 10(38), 31–31.
Patterson, J. H. (1976). Project scheduling: The effects of problem structure on heuristic performance. Naval Research Logistics Quarterly, 23(1), 95–123.
Schwindt, C. (1995). Progen/max: A new problem generator for different resource-constrained project scheduling problems with minimal and maximal time lags.
Smith-Miles, K., & van Hemert, J. (2011). Discovering the suitability of optimisation algorithms by learning from evolved instances. Annals of Mathematics and Artificial Intelligence, 61(2), 87–104.
Smith-Miles, K., & Lopes, L. (2012). Measuring instance difficulty for combinatorial optimization problems. Computers & Operations Research, 39(5), 875–889.
Sprecher, A., Kolisch, R., & Drexl, A. (1995). Semi-active, active, and non-delay schedules for the resource-constrained project scheduling problem. European Journal of Operational Research, 80(1), 94–102.
Tavares, L. V., Ferreira, J. A., & Coelho, J. S. (1999). The risk of delay of a project in terms of the morphology of its network. European Journal of Operational Research, 119(2), 510–537.
Thesen, A. (1977). Measures of the restrictiveness of project networks. Networks, 7(3), 193–208.
Van Eynde, R., & Vanhoucke, M. (2020). Resource-constrained multi-project scheduling: Benchmark datasets and decoupled scheduling. Journal of Scheduling, 23(3), 301–325.
Van Eynde, R., & Vanhoucke, M. (2021). New summary measures and datasets for the multi-project scheduling problem. European Journal of Operational Research
Van Eynde, R., & Vanhoucke, M. (2022). A reduction tree approach for the discrete time/cost trade-off problem. Computers & Operations Research, 143(105), 750.
Van Eynde, R., & Vanhoucke, M. (2022). A theoretical framework for instance complexity of the resource-constrained project scheduling problem. Mathematics of Operations Research, 47(4), 3156–83.
Vanhoucke, M. (2009). Measuring time: Improving project performance using earned value management (Vol. 136). Berlin: Springer.
Vanhoucke, M., & Coelho, J. (2018). A tool to test and validate algorithms for the resource-constrained project scheduling problem. Computers & Industrial Engineering, 118, 251–265.
Vanhoucke, M., & Coelho, J. (2021). An analysis of network and resource indicators for resource-constrained project scheduling problem instances. Computers & Operations Research, 132(105), 260.
Vanhoucke, M., Demeulemeester, E., & Herroelen, W. (2001). On maximizing the net present value of a project under renewable resource constraints. Management Science, 47(8), 1113–1121.
Vanhoucke, M., Coelho, J., Debels, D., et al. (2008). An evaluation of the adequacy of project network generators with systematically sampled networks. European Journal of Operational Research, 187(2), 511–524.
Acknowledgements
We acknowledge the support provided by the Special Research Fund (BOF grant no. DOC014-18 Van Eynde) and the National Bank of Belgium for providing the first author with a predoctoral fellowship. The computational resources (Stevin Supercomputer Infrastructure) and services used in this work were provided by the VSC (Flemish Supercomputer Center), funded by Ghent University, FWO and the Flemish Government - department EWI.
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Appendices
Appendix A: Calculation of measures
In this appendix we will illustrate all discussed measures on the example project of Fig. 6. It consists of 6 activities, the dummy activities and arcs are represented in dashed lines. Table 20 shows the additional information on the project and its activities.
Table 21 shows the values for all the network and resource measures for the example. In the remainder of the appendix, these calculations will be explained.
1.1 A.1 Network measures
This subsection explains the calculations for all network measures. For the measures AD, SA, LA and TF we will not discuss the exact formulas as it would lead us too far, we refer to Vanhoucke et al. (2008) for the details. To explain the general idea behind them we require the definition of progressive level \(\hbox {PL}_i\) and regressive level \(\hbox {RL}_i\) of an activity i. The \(\hbox {PL}_i\) is the number of activities on the longest path from the dummy start to i. The \(\hbox {RL}_i\) equals the length m of the network minus the number of activities on the longest path from i to the dummy end.
-
CNC: this measure takes the ratio of the number of non-dummy direct arcs and the number of non-dummy nodes, which amounts to \(\frac{3}{4}=0.75\).
-
OS: sum all non-dummy direct and transitive arcs and divide it by the theoretical maximum number of arcs, i.e. \(n(n-1)/2\). For the example, the OS equals \(\frac{3}{(4\cdot 3)/2} = 0.5\).
-
SP: calculate the length m of the longest path of non-dummy nodes in the network, in this network \(m=2\). Using the formula, \(\text {SP}=\frac{2-1}{4-1} = 0.33\).
-
AD: this indicator measures how equally the activities are distributed over the progressive levels. Because each progressive level has 2 activities, they are equally distributed, so AD=0.
-
SA: this indicator counts the number of short arcs in the network, a short arc being an arc (i,j) such that \(\hbox {PL}_i\) = \(\hbox {PL}_j\) - 1. In a network of 4 activities with 2 activities in the first progressive level, at least 2 short arcs have to be present. Furthermore, at most 4 short arcs can be present, i.e. by adding all arcs from activities 1 and 2 to 3 and 4. As there are 3 short arcs in this network, \(\text {SA} = \frac{3-2}{4-2} = 0.50\).
-
LA: this measure counts the number of long arcs, where all arcs that are not short are considered long. As all arcs in the network are short, \(\text {LA} = 0\).
-
TF: the TF indicator measures the float per activity i, the difference between its regressive and progressive level (\(\text {RL}_i - \text {PL}_i\)). As for each activity the progressive and regressive level are equal, it follows that \(\text {TF}=0\).
-
LE: counts the number of linear extensions or precedence feasible activity lists. For the example network, there are 5 possible linear extensions: 1234, 1243, 2134, 2143 and 2413. Note that because 2 is a predecessor of 3, any linear extension where 3 occurs before 2 is not valid. The maximum number is \(n!=24\), so \(\text {LE} = \frac{\log _{10}(5)}{\log _{10}(24)} = 0.51\).
-
W: looks at the size w of the maximum precedence feasible subset, which equals 2 in this network. Therefore, \(W=\frac{2-1}{4-1} = 0.33\).
-
\(\text {OS}^3\): count \(\mathcal {S}^2\) and \(\mathcal {S}^3\), i.e. the precedence infeasible subsets of cardinality 2 and 3. Recall from the calculation of OS that \(|\mathcal {S}^2|=3\). As the width of the network is 2, all subsets of size 3 are precedence infeasible, so \(|\mathcal {S}^3|= {4\atopwithdelims (){3}} = 4\). Therefore \(\text {OS}^3 = \frac{3 + 4}{6+4} = 0.7\).
-
\(\text {OS}^4\): the calculations are to \(\text {OS}^3\), but we also require \(|\mathcal {S}^4|\). As all subsets of size 3 are precedence infeasible, it follows that all subsets of size 4 will also be precedence infeasible, so \(|\mathcal {S}^4|={4\atopwithdelims (){4}} = 1\). It follows that \(\text {OS}^4 = \frac{3+4+1}{6+4+1} = 0.73\).
1.2 A.2 Resource measures
-
RF: as there is one resource type and all acitivities require that resource, it follows that \(\text {RF}=1\)
-
RU: the calculations are similar to those of RF. As each activity requires one resource type, \(\text {RU}=1\)
-
RC: the average resource demand is calculated over all activities, recall that the availability for the resource type is 10. Therefore, \(\text {RC}=\frac{5+8+7+3}{4\cdot 10} = 0.58\).
-
RS: looks at the resource unconstrained earliest start schedule, which is shown in Fig. 7. The peak demand \(r^{\max }_1\) is 13, while the minimum availability \(r^{\min }_1\) equals 8. With an availability \(a_k=10\), the RS equals \(\frac{10-8}{13-8}=0.4\).
-
\(\text {FS}^2_1\): count the number of feasible subsets of size 2. For the example, these sets are \(\{1,4\}\) and \(\{3,4\}\). As there can at most be 6 feasible subset of size 2 for a network with \(n=4\), it follows that \(\text {FS}^2_1= \frac{2}{6} = 0.33\).
-
\(\text {FS}^2_2\): the numerator remains the same as the previous measure, but the denominator changes. As there are 3 precedence feasible subsets of size 2 in the example, \(\text {FS}^2_2 = \frac{2}{3}=0.67\).
-
\(\text {FS}^3_1\): now we also incorporate the subset of size 3. There exist no feasible subsets of size 3 in the example, while the theoretical maximum is \({4\atopwithdelims (){3}} = 4\). It follows that \(\text {FS}^3_1 = \frac{2+0}{6+4}=0.2\).
-
\(\text {FS}^3_2\): has the same numerator as \(\text {FS}^3_1\), but the denominator changes to the number of precedence feasible subsets. As there exist no precedence feasible subsets of size 3 in the network, \(\text {FS}^3_2 = \frac{2+0}{3+0}=0.67\).
-
FE: set all activity durations to 1 and count the number of active schedules for this special case. For the example, 2 active schedules exist, they are shown in Fig. 8. The maximum number of active schedules for a project of 4 activities equals \(n!=24\), so the FE is equal to \(\frac{\log _{10}(2)}{\log _{10}(24)} = 0.22\).
Appendix B: Summary measures of datasets
This appendix provides additional information for all summary measures for all datasets used in this paper. Table 22 shows the ranges of the values per summary measure per dataset. Table 23 exhibits the standard deviation for each of the measures per dataset. This provides an indication of how dispersed the instances are within the range.
Appendix C: Effect of size on CPU-time in DC1
Figures 9 and 10 respectively exhibit the interaction between network or resource measures with instance size and their combined effect on the CPU time. Each row corresponds with one summary measure, each column with a specific instance size.
Rights and permissions
Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.
About this article
Cite this article
Van Eynde, R., Vanhoucke, M. & Coelho, J. On the summary measures for the resource-constrained project scheduling problem. Ann Oper Res 337, 593–625 (2024). https://doi.org/10.1007/s10479-023-05470-8
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10479-023-05470-8