Skip to main content
Log in

Solving RCPSP/max by lazy clause generation

  • Published:
Journal of Scheduling Aims and scope Submit manuscript

Abstract

We present a generic exact method for minimizing the project duration of the resource-constrained project scheduling problem with generalized precedence relations (Rcpsp/max). This is a very general scheduling model with applications areas such as project management and production planning. Our method uses lazy clause generation, i.e., a hybrid of finite domain and Boolean satisfiability solving, in order to apply no-good learning and conflict-driven search to the solution generation. Our experiments show the benefit of lazy clause generation for finding an optimal solution and proving its optimality in comparison to other state-of-the-art exact and non-exact methods. In comparison to other methods, our method is able to find better solutions faster on the Rcpsp/max benchmarks. Indeed, our method closes 573 open problem instances and generates better solutions in most of the remaining instances. Surprisingly, although ours is an exact method, it outperforms the published non-exact methods on these benchmarks in terms of the quality of solutions.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3

Similar content being viewed by others

Notes

  1. In the literature, Rcpsp/max is also called as Rcpsp with temporal precedences, arbitrary precedences, minimal and maximal time lags, and time windows.

  2. Conflict sets are set of activities for which their execution might overlap in time and violate at least one resource constraint if they are executed at the same time.

  3. Results from Schwindt (1998a) are taken from Dorndorf et al. (2000)

  4. The missing propagators are not available in the G12 Constraint Programming Platform.

  5. No machine details are given in Oddi and Rasconi (2009).

  6. The paper (Schwindt 1998a) was not accessible for us, so that here the reported results are taken from Cesta et al. (2002).

References

  • Aggoun, A., & Beldiceanu, N. (1993). Extending CHIP in order to solve complex scheduling and placement problems. Mathematical and Computer Modelling, 17(7), 57–73.

    Article  Google Scholar 

  • Ballestín, F., Barrios, A., & Valls, V. (2011). An evolutionary algorithm for the resource-constrained project scheduling problem with minimum and maximum time lags. Journal of Scheduling, 14, 391–406. doi:10.1007/s10951-009-0125-9.

    Article  Google Scholar 

  • Bartusch, M., Möhring, R. H., & Radermacher, F. J. (1988). Scheduling project networks with resource constraints and time windows. Annals of Operations Research, 16(1), 199–240.

    Article  Google Scholar 

  • Bellman, R. (1958). On a routing problem. Quarterly of Applied Mathematics, 16(1), 87–90.

    Google Scholar 

  • Blazewicz, J., Lenstra, J.K., & Rinnooy Kan, A.H.G. (1983). Scheduling subject to resource constraints: classification and complexity. Discrete Applied Mathematics, 5(1), 11–24.

    Article  Google Scholar 

  • Brucker, P., Drexl, A., Möhring, R., Neumann, K., & Pesch, E. (1999). Resource-constrained project scheduling: notation, classification, models, and methods. European Journal of Operational Research, 112(1), 3–41.

    Article  Google Scholar 

  • Cesta, A., Oddi, A., & Smith, S. F. (2002). A constraint-based method for project scheduling with time windows. Journal of Heuristics, 8(1), 109–136.

    Article  Google Scholar 

  • Davis, M., & Putnam, H. (1960). A computing procedure for quantification theory. Journal of the ACM, 7, 201–215.

    Article  Google Scholar 

  • Davis, M., Logemann, G., & Loveland, D. (1962). A machine program for theorem proving. Communications of the ACM, 5(7), 394–397.

    Article  Google Scholar 

  • De Reyck, B., & Herroelen, W. (1998). A branch-and-bound procedure for the resource-constrained project scheduling problem with generalized precedence relations. European Journal of Operational Research, 111(1), 152–174.

    Article  Google Scholar 

  • Dorndorf, U., Pesch, E., & Phan-Huy, T. (2000). A time-oriented branch-and-bound algorithm for resource-constrained project scheduling with generalised precedence constraints. Management Science, 46(10), 1365–1384.

    Article  Google Scholar 

  • Fest, A., Möhring, R. H., Stork, F., & Uetz, M. (1999). Resource-constrained project scheduling with time windows: a branching scheme based on dynamic release dates (Technical Report 596). Technische Universität Berlin.

  • Feydy, T. (2010). Constraint programming: improving propagation. PhD thesis, The University of Melbourne.

  • Feydy, T., Schutt, A., & Stuckey, P. J. (2008). Global difference constraint propagation for finite domain solvers. In S. Antoy & E. Albert (Eds.), Proceedings of principles and practice of declarative programming—PPDP 2008 (pp. 226–235). New York: ACM

    Google Scholar 

  • Feydy, T., Somogyi, Z., & Stuckey, P. J. (2011). Half reification and flattening. In J. H. M. Lee (Ed.), Lecture notes in computer science: Vol. 6876. Proceedings of principles and practice of constraint programming—CP 2011 (pp. 286–301). Berlin: Springer.

    Chapter  Google Scholar 

  • Ford, L. R., & Fulkerson, D. R. (1962). Flows in networks. Princeton: Princeton University Press.

    Google Scholar 

  • Franck, B., Neumann, K., & Schwindt, C. (2001). Truncated branch-and-bound, schedule-construction, and schedule-improvement procedures for resource-constrained project scheduling. OR Spektrum, 23(3), 297–324.

    Article  Google Scholar 

  • Herroelen, W., De Reyck, B., & Demeulemeester, E. (1998). Resource-constrained project scheduling: a survey of recent developments. Computers & Operations Research, 25(4), 279–302.

    Article  Google Scholar 

  • Horbach, A. (2010). A boolean satisfiability approach to the resource-constrained project scheduling problem. Annals of Operations Research, 181, 89–107.

    Article  Google Scholar 

  • Huang, J. (2007). The effect of restarts on the efficiency of clause learning. In M. M. Veloso (Ed.), Proceedings of artificial intelligence—IJCAI 2007 (pp. 2318–2323).

    Google Scholar 

  • Kolisch, R., Schwindt, C., & Sprecher, A. (1998). Publishers, chap benchmark instances for project scheduling problems. In Project scheduling: recent models, algorithms and applications (pp. 197–212). Dordrecht: Kluwer Academic.

    Google Scholar 

  • Le Pape, C. (1994). Implementation of resource constraints in ILOG Schedule: a library for the development of constraint-based scheduling systems. Intelligent Systems Engineering, 3(2), 55–66.

    Article  Google Scholar 

  • Marriott, K., & Stuckey, P. J. (1998). Programming with constraints: an introduction. Cambridge: MIT Press.

    Google Scholar 

  • Moskewicz, M. W., Madigan, C. F., Zhao, Y., Zhang, L., & Malik, S. (2001). Chaff: engineering an efficient SAT solver. In Design automation conference (pp. 530–535). New York: ACM.

    Google Scholar 

  • Neumann, K., & Schwindt, C. (1997). Activity-on-node networks with minimal and maximal time lags and their application to make-to-order production. OR Spektrum, 19, 205–217.

    Article  Google Scholar 

  • Oddi, A., & Rasconi, R. (2009). Iterative flattening search on RCPSP/max problems: recent developments. In A. Oddi, F. Fages, & F. Rossi (Eds.), Lecture notes in computer science: Vol. 5655. Recent advances in constraints (pp. 99–115). Berlin: Springer.

    Chapter  Google Scholar 

  • Ohrimenko, O., Stuckey, P. J., & Codish, M. (2009). Propagation via lazy clause generation. Constraints, 14(3), 357–391.

    Article  Google Scholar 

  • Project duration problem RCPSP/max (2010). http://www.wior.uni-karlsruhe.de/LS_Neumann/Forschung/ProGenMax/rcpspmax.html.

  • PSPLib (2010). Project scheduling problem library. http://129.187.106.231/psplib/.

  • Schutt, A., Feydy, T., Stuckey, P. J., & Wallace, M. G. (2009). Why cumulative decomposition is not as bad as it sounds. In I. P. Gent (Ed.), Lecture notes in computer science: Vol. 5732. Proceedings of principles and practice of constraint programming—CP 2009 (pp. 746–761). Berlin: Springer.

    Chapter  Google Scholar 

  • Schutt, A., Feydy, T., Stuckey, P. J., & Wallace, M. G. (2011). Explaining the cumulative propagator. Constraints, 16(3), 250–282.

    Article  Google Scholar 

  • Schwindt, C. (1995). ProGen/max: a new problem generator for different resource-constrained project scheduling problems with minimal and maximal time lags (WIOR 449). Universität Karlsruhe, Germany

  • Schwindt, C. (1998a). A branch-and-bound algorithm for the resource-constrained project duration problem subject to temporal constraints (WIOR 544). Universität Karlsruhe, Germany

  • Schwindt, C. (1998b). Verfahren zur lösung des ressourcenbeschränkten projektdauerminimierungsproblems mit planungsabhängigen zeitfenstern. Aachen: Shaker.

    Google Scholar 

  • Smith, T. B., & Pyle, J. M. (2004). An effective algorithm for project scheduling with arbitrary temporal constraints. In D. L. McGuinness & G. Ferguson (Eds.), Proceedings of artificial intelligence—AAAI 2004 (pp. 544–549). Cambridge: AAAI Press/MIT Press.

    Google Scholar 

  • Stuckey, P. J., García de la Banda, M. J., Maher, M. J., Marriott, K., Slaney, J. K., Somogyi, Z., Wallace, M. G., & Walsh, T. (2005). The G12 project: mapping solver independent models to efficient solutions. In M. Gabbrielli & G. Gupta (Eds.), Lecture notes in computer science: Vol. 3668. Proceedings of logic programming—ICLP 2005 (pp. 9–13). Berlin: Springer.

    Google Scholar 

  • Tsang, E. (1993). Foundations of constraint satisfaction. San Diego: Academic Press.

    Google Scholar 

  • Walsh, T. (1999). Search in a small world. In Proceedings of artificial intelligence—IJCAI 1999 (pp. 1172–1177). San Mateo: Morgan Kaufmann.

    Google Scholar 

Download references

Acknowledgements

We are thankful to the reviewers for their helpful comments and suggestions. NICTA is funded by the Australian Government as represented by the Department of Broadband, Communications and the Digital Economy and the Australian Research Council through the ICT Centre of Excellence program.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Andreas Schutt.

Electronic Supplementary Material

Below is the link to the electronic supplementary material.

(PDF 147 kB)

Rights and permissions

Reprints and permissions

About this article

Cite this article

Schutt, A., Feydy, T., Stuckey, P.J. et al. Solving RCPSP/max by lazy clause generation. J Sched 16, 273–289 (2013). https://doi.org/10.1007/s10951-012-0285-x

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10951-012-0285-x

Keywords

Navigation