Abstract
Project resource leveling, which is usually performed in the project planning phase, aims to minimize fluctuations in resource usage such that the project success probability is enhanced. The existing studies on resource leveling mainly assume a fixed project structure, i.e., the activities and precedence relationships are given in advance. However, in real-world projects, the project structure is usually flexible, i.e., not all activities are implemented, and the precedence relationships exist only between the activities that are implemented. Aiming at providing support for project managers to make effective resource leveling decisions when facing flexible project structures, we study the resource leveling problem with flexible structures (RLP-PS). We present a nonlinear integer programming model for the RLP-PS and a linearization method to transform the nonlinear model into a linear model. To efficiently solve the RLP-PS, we devise two problem-specific algorithms: a two-stage heuristic algorithm and a customized genetic algorithm. Based on the PSPLIB benchmark dataset, extensive computational experiments are performed to analyze the performances of our algorithms. The experimental results reveal the effectiveness and competitiveness of our algorithms.
Similar content being viewed by others
References
Ballestín, F., Schwindt, C., & Zimmermann, J. (2007). Resource leveling in make-to-order production: Modeling and heuristic solution method. International Journal of Operations Research, 4(1), 50–62.
Bandelloni, M., Tucci, M., & Rinaldi, R. (1994). Optimal resource leveling using non-serial dyanamic programming. European Journal of Operational Research, 78(2), 162–177.
Barták, R., Čepek, O., & Hejna, M. (2007). Temporal reasoning in nested temporal networks with alternatives. In International workshop on constraint solving and constraint logic programming (pp. 17–31). Springer, Berlin, Heidelberg.
Beck, J. C., & Fox, M. S. (2000). Constraint-directed techniques for scheduling alternative activities. Artificial Intelligence, 121(1–2), 211–250.
Belhe, U., & Kusiak, A. (1995). Resource constrained scheduling of hierarchically structured design activity networks. IEEE Transactions on Engineering Management, 42(2), 150–158.
Benjaoran, V., Tabyang, W., & Sooksil, N. (2015). Precedence relationship options for the resource levelling problem using a genetic algorithm. Construction Management and Economics, 33(9), 711–723.
Bianco, L., & Caramia, M. (2012). An exact algorithm to minimize the makespan in project scheduling with scarce resources and generalized precedence relations. European Journal of Operational Research, 219(1), 73–85.
Burgess, A., & Killebrew, J. B. (1962). Variation in activity level on a cyclical arrow diagram. Journal of Industrial Engineering, 13(2), 76–83.
Čapek, R., Šůcha, P., & Hanzálek, Z. (2012). Production scheduling with alternative process plans. European Journal of Operational Research, 217(2), 300–311.
Caramia, M. (2020). Project management and scheduling. Annals of Operations Research, 285(1), 1–8.
Chan, W.-T., Chua, D. K., & Kannan, G. (1996). Construction resource scheduling with genetic algorithms. Journal of Construction Engineering and Management, 122(2), 125–132.
Christodoulou, S. E., Ellinas, G., & Michaelidou-Kamenou, A. (2010). Minimum moment method for resource leveling using entropy maximization. Journal of Construction Engineering and Management, 136(5), 518–527.
Cooper, D. F. (1976). Heuristics for scheduling resource-constrained projects: An experimental investigation. Management Science, 22(11), 1186–1194.
Davari, M., & Demeulemeester, E. (2019). Important classes of reactions for the proactive and reactive resource-constrained project scheduling problem. Annals of Operations Research, 274(1), 187–210.
Davis, E. W. (1975). Project network summary measures constrained-resource scheduling. AIIE Transactions, 7(2), 132–142.
Demeulemeester, E. L. & Herroelen, W. S. (2002). Project Scheduling: A Research Handbook.
El-Rayes, K., & Jun, D. H. (2009). Optimizing resource leveling in construction projects. Journal of Construction Engineering and Management, 135(11), 1172–1180.
Gather, T., Zimmermann, J., & Bartels, J.-H. (2011). Exact methods for the resource levelling problem. Journal of Scheduling, 14(6), 557–569.
Gillies, D. W., & Liu, J.W.-S. (1995). Scheduling tasks with AND/OR precedence constraints. SIAM Journal on Computing, 24(4), 797–810.
Goldberg, D. E., Korb, B., & Deb, K. (1989). Messy genetic algorithms: Motivation, analysis, and first results. Complex Systems, 3(5), 493–530.
He, L., & Zhang, L. (2013). Dynamic priority rule-based forward-backward heuristic algorithm for resource levelling problem in construction project. Journal of the Operational Research Society, 64(8), 1106–1117.
Kellenbrink, C., & Helber, S. (2015). Scheduling resource-constrained projects with a flexible project structure. European Journal of Operational Research, 246(2), 379–391.
Kolisch, R., & Hartmann, S. (2006). Experimental investigation of heuristics for resource-constrained project scheduling: An update. European Journal of Operational Research, 174(1), 23–37.
Kolisch, R., & Sprecher, A. (1996). PSPLIB—a project scheduling problem library. European Journal of Operational Research, 96, 205–216.
Koulinas, G., & Anagnostopoulos, K. (2013). A new tabu search-based hyper-heuristic algorithm for solving construction leveling problems with limited resource availabilities. Automation in Construction, 31, 169–175.
Li, H., Zhang, X., Sun, J., & Dong, X. (2020). Dynamic resource levelling in projects under uncertainty. International Journal of Production Research, 1–21. https://www.tandfonline.com/doi/full/10.1080/00207543.2020.1788737
Li, H., & Demeulemeester, E. (2016). A genetic algorithm for the robust resource leveling problem. Journal of Scheduling, 19(1), 43–60.
Li, H., Hu, Z., Zhu, H., & Liu, Y. (2021). Preemptive resource leveling in projects. Economic Computation and Economic Cybernetics Studies and Research, 55(4), 51–68.
Li, H., Xiong, L., Liu, Y., & Li, H. (2018). An effective genetic algorithm for the resource levelling problem with generalised precedence relations. International Journal of Production Research, 56(5), 2054–2075.
Mavrotas, G. (2009). Effective implementation of the ε-constraint method in multi-objective mathematical programming problems. Applied Mathematics and Computation, 213(2), 455–465.
Neumann, K., Schwindt, C., & Zimmermann, J. (2012). Project scheduling with time windows and scarce resources: temporal and resource-constrained project scheduling with regular and nonregular objective functions. Springer.
Neumann, K., & Zimmermann, J. (1999). Resource levelling for projects with schedule-dependent time windows. European Journal of Operational Research, 117(3), 591–605.
Neumann, K., & Zimmermann, J. (2000). Procedures for resource leveling and net present value problems in project scheduling with general temporal and resource constraints. European Journal of Operational Research, 127(2), 425–443.
Peng, W., Zhang, J., & Chen, L. (2022). A bi-objective hierarchical program scheduling problem and its solution based on NSGA-III. Annals of Operations Research, 308(1), 389–414.
Ponz-Tienda, J. L., Salcedo-Bernal, A., & Pellicer, E. (2017a). A parallel branch and bound algorithm for the resource leveling problem with minimal lags. Computer-Aided Civil and Infrastructure Engineering, 32(6), 474–498.
Ponz-Tienda, J. L., Salcedo-Bernal, A., Pellicer, E., & Beniloch-Marco, J. (2017b). Improved adaptive Harmony Search algorithm for the resource leveling problem with minimal lags. Automation in Construction, 77, 82–92.
Rieck, J., Zimmermann, J., & Gather, T. (2012). Mixed-integer linear programming for resource leveling problems. European Journal of Operational Research, 221(1), 27–37.
Servranckx, T., & Vanhoucke, M. (2019). A tabu search procedure for the resource-constrained project scheduling problem with alternative subgraphs. European Journal of Operational Research, 273(3), 841–860.
Son, J., & Skibniewski, M. J. (1999). Multiheuristic approach for resource leveling problem in construction engineering: Hybrid approach. Journal of Construction Engineering and Management, 125(1), 23–31.
Tao, S., & Dong, Z. S. (2017). Scheduling resource-constrained project problem with alternative activity chains. Computers & Industrial Engineering, 114, 288–296.
Torabi Yeganeh, F., & Zegordi, S. H. (2020). A multi-objective optimization approach to project scheduling with resiliency criteria under uncertain activity duration. Annals of Operations Research, 285(1), 161–196.
Vanhoucke, M., & Coelho, J. (2016). An approach using SAT solvers for the RCPSP with logical constraints. European Journal of Operational Research, 249(2), 577–591.
Wu, I.-C., Borrmann, A., Beißert, U., König, M., & Rank, E. (2010). Bridge construction schedule generation with pattern-based construction methods and constraint-based simulation. Advanced Engineering Informatics, 24(4), 379–388.
Acknowledgements
This work was supported by the National Natural Science Foundation of China (Grant Number 71602106) and the Key Soft Science Project of Shanghai Science and Technology Innovation Action Plan (Grant Number 20692192400).
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.
Appendix: Calculation of the lower bounds
Appendix: Calculation of the lower bounds
Lower bound \({\varvec{l}}{{\varvec{b}}}_{{\varvec{i}}}\_{\varvec{M}}\). \(l{b}_{i}\_M\) is the lower bound of the objective function value of instance \(i\) in the most ideal situation. Specifically, for each instance \(i\), we consider only the mandatory activities, then the average usage of resource \(k\) at each time period is \({\overline{u}}_{k}= ({\sum }_{i\in M}{r}_{ik}\times {d}_{i})/\overline{d}\). This corresponds to the most ideal situation in resource leveling. In this case, the objective function value can be used as the lower bound \(l{b}_{i}\_\text{M}={\sum }_{k=1}^{K}{\sum }_{t=1}^{\overline{d}}{({\overline{u}}_{k})}^{2}\).
Lower bound \({\varvec{l}}{{\varvec{b}}}_{{\varvec{i}}}\_{\varvec{L}}{\varvec{a}}{\varvec{g}}{\varvec{r}}\). \(l{b}_{i}\_Lagr\) is obtained by applying Lagrangian relaxation to model M1. Specifically, we first relax M1 by moving its constraint (11) to the objective function (10) and the resulting new objective function is
where the multiplier \({\lambda }_{kt}\ge 0\), \(k=1,\dots ,K, t=1,\dots ,\overline{d }\). We further rewrite (A1) as:
Now we obtain the relaxed model LR(\(\lambda \)):
Minimize (20).
Subject to: (2)-(6), (8), (12).
Then \(l{b}_{i}\_Lagr\) is obtained by solving the Lagrangian dual of LR(\(\lambda \)) using the subgradient method (Bianco & Caramia, 2012). In each iteration, the Lagrangian multipliers are updated according to the following steps:
-
(a)
The subgradient values for each relaxed constraint related to resource \(k\) and time period \(t\) is determined as \({SG}_{kt}={\sum }_{i\in N}{r}_{ik}{\sum }_{\tau =\mathrm{max}\left\{{es}_{i},t-{d}_{i}+1\right\}}^{\mathrm{min}\left\{t,{ls}_{i}\right\}}{x}_{i\tau }-{\sum }_{h=1}^{{H}_{kt}}{y}_{kth}\).
-
(b)
The step \(ST=\beta ({Z}_{UB}-{Z}_{LB}^{*})/{\sum }_{k=1}^{K}\sum_{t=1}^{\overline{d}}S{G }_{kt}^{2}\), where the upper bound \({Z}_{UB}\) is obtained by using the GA to solve the same instance,\({Z}_{LB}^{*}\) is the current best lower bound that is obtained by solving LR(λ) with CPLEX, and \(\beta \) is a scaling factor with an initial value of 2. If \({Z}_{LB}^{*}\) is not improved after five consecutive iterations, the value of \(\beta \) is reduced to half of its current value.
-
(c)
The Lagrange multiplier \({\lambda }_{kt}=\mathrm{max}(0, {\lambda }_{kt}+ST\bullet {SG}_{kt})\).
The Lagrangian relaxation algorithm stops when any of the following conditions are met: 300 iterations, or 1800s, or \(\beta <0.0001\).
Rights and permissions
About this article
Cite this article
Li, H., Zheng, L. & Zhu, H. Resource leveling in projects with flexible structures. Ann Oper Res 321, 311–342 (2023). https://doi.org/10.1007/s10479-022-04797-y
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10479-022-04797-y