SMT encodings for Resource-Constrained Project Scheduling Problems

Abstract The Resource-Constrained Project Scheduling Problem (RCPSP) is a paradigmatic scheduling problem where the activities of a project have to be scheduled while respecting a combination of precedence and resource constraints. Precedence constraints are relations between two activities stating that one cannot start until the other has ended, and resource constraints bound the amount of resources used by activities running simultaneously. Many generalizations of the RCPSP have been proposed in the literature, including multiple execution modes for the activities (MRCPSP), or time varying resource availabilities and demands (RCPSP/t). In this work we present Satisfiability Modulo Theories (SMT) formulations to solve the RCPSP, as well as its two variants MRCPSP and RCPSP/t. Although it is really natural to formulate resource constraints of RCPSP-like problems using the linear integer arithmetic (LIA) theory, we show how, by exploiting the information provided by the precedence relations, we can obtain compact and efficient encodings of resource constraints to Boolean Satisfiability (SAT) formulas. Using these SAT encodings instead of the LIA ones, turns to be crucial regarding efficiency. The method is adapted to encode resource constraints for the other two considered variants. In this adaptation, the method exploits not only precedences, but multiple execution modes or time varying resource availabilities and demands. Our experimental results show that the proposed encodings are more efficient than existing state-of-the-art exact solving techniques for the studied problems.

[1]  Albert Oliveras,et al.  A New Look at BDDs for Pseudo-Boolean Constraints , 2012, J. Artif. Intell. Res..

[2]  Nikolaj Bjørner,et al.  Z3: An Efficient SMT Solver , 2008, TACAS.

[3]  E. W. Davis,et al.  Multiple Resource–Constrained Scheduling Using Branch and Bound , 1978 .

[4]  Josep Suy Franch A satisfiability modulo theories approach to constraint programming , 2012 .

[5]  Roberto Sebastiani,et al.  Optimization in SMT with LA(Q) Cost Functions , 2012 .

[6]  Peter J. Stuckey,et al.  Lazy Clause Generation Reengineered , 2009, CP.

[7]  S. Louis Hakimi,et al.  On Path Cover Problems in Digraphs and Applications to Program Testing , 1979, IEEE Transactions on Software Engineering.

[8]  Túlio A. M. Toffolo,et al.  An integer programming approach to the multimode resource-constrained multiproject scheduling problem , 2016, J. Sched..

[9]  Olivier Roussel,et al.  New Encodings of Pseudo-Boolean Constraints into CNF , 2009, SAT.

[10]  Thomas A. Henzinger,et al.  Handbook of Model Checking , 2018, Springer International Publishing.

[11]  Richard M. Karp,et al.  A n^5/2 Algorithm for Maximum Matchings in Bipartite Graphs , 1971, SWAT.

[12]  Petr Vilím,et al.  Timetable Edge Finding Filtering Algorithm for Discrete Cumulative Resources , 2011, CPAIOR.

[13]  Bruno Dutertre,et al.  A Fast Linear-Arithmetic Solver for DPLL(T) , 2006, CAV.

[14]  Nysret Musliu,et al.  Personnel Scheduling as Satisfiability Modulo Theories , 2017, IJCAI.

[15]  Mateu Villaret,et al.  An Efficient SMT Approach to Solve MRCPSP/max Instances with Tight Constraints on Resources , 2017, CP.

[16]  Sharad Malik,et al.  Chaff: engineering an efficient SAT solver , 2001, Proceedings of the 38th Design Automation Conference (IEEE Cat. No.01CH37232).

[17]  Joao Marques-Silva,et al.  GRASP: A Search Algorithm for Propositional Satisfiability , 1999, IEEE Trans. Computers.

[18]  Kristofer Bengtsson,et al.  SMT Solvers for Job-Shop Scheduling Problems: Models Comparison and Performance Evaluation , 2018, 2018 IEEE 14th International Conference on Automation Science and Engineering (CASE).

[19]  Christian Artigues,et al.  A note on time-indexed formulations for the resource-constrained project scheduling problem , 2013 .

[20]  Tobias Philipp,et al.  A More Compact Translation of Pseudo-Boolean Constraints into CNF Such That Generalized Arc Consistency Is Maintained , 2014, KI.

[21]  Robert Pellerin,et al.  A survey of hybrid metaheuristics for the resource-constrained project scheduling problem , 2020, Eur. J. Oper. Res..

[22]  Albert Oliveras,et al.  DPLL(T) with Exhaustive Theory Propagation and Its Application to Difference Logic , 2005, CAV.

[23]  James H. Patterson,et al.  A Horizon-Varying, Zero-One Approach to Project Scheduling , 1974 .

[24]  Christian Artigues,et al.  Resource-Constrained Project Scheduling: Models, Algorithms, Extensions and Applications , 2007 .

[25]  Niklas Sörensson,et al.  Translating Pseudo-Boolean Constraints into SAT , 2006, J. Satisf. Boolean Model. Comput..

[26]  Rainer Kolisch,et al.  Local search for nonpreemptive multi-mode resource-constrained project scheduling , 1997 .

[27]  Avinash Malik,et al.  Satisfiability modulo theory (SMT) formulation for optimal scheduling of task graphs with communication delay , 2018, Comput. Oper. Res..

[28]  Andreas Schutt,et al.  Modelling and Solving Multi-mode Resource-Constrained Project Scheduling , 2016, CP.

[29]  Peter J. Stuckey,et al.  Explaining Time-Table-Edge-Finding Propagation for the Cumulative Resource Constraint , 2012, CPAIOR.

[30]  Peter Brucker,et al.  Complex Scheduling , 2006 .

[31]  Odile Bellenguez-Morineau,et al.  Methods to solve multi-skill project scheduling problem , 2008, 4OR.

[32]  Philip M. Wolfe,et al.  Multiproject Scheduling with Limited Resources: A Zero-One Programming Approach , 1969 .

[33]  Jacques Carlier,et al.  On linear lower bounds for the resource constrained project scheduling problem , 2003, Eur. J. Oper. Res..

[34]  Peter J. Stuckey,et al.  Solving RCPSP/max by lazy clause generation , 2012, Journal of Scheduling.

[35]  Marcel Mongeau,et al.  Event-based MILP models for resource-constrained project scheduling problems , 2011, Comput. Oper. Res..

[36]  Vasco M. Manquinho,et al.  Generalized Totalizer Encoding for Pseudo-Boolean Constraints , 2015, CP.

[37]  Armin Biere,et al.  Incremental Inprocessing in SAT Solving , 2019, SAT.

[38]  James H. Patterson,et al.  An Efficient Integer Programming Algorithm with Network Cuts for Solving Resource-Constrained Scheduling Problems , 1978 .

[39]  Rainer Kolisch,et al.  PSPLIB - A project scheduling problem library: OR Software - ORSEP Operations Research Software Exchange Program , 1997 .

[40]  Fan Xiao,et al.  Clause Vivification by Unit Propagation in CDCL SAT Solvers , 2020, Artif. Intell..

[41]  Petr Vilím,et al.  Failure-Directed Search for Constraint-Based Scheduling , 2015, CPAIOR.

[42]  Richard F. Hartl,et al.  On the efficient modeling and solution of the multi-mode resource-constrained project scheduling problem with generalized precedence relations , 2016, OR Spectr..

[43]  Sönke Hartmann,et al.  A survey of variants and extensions of the resource-constrained project scheduling problem , 2010, Eur. J. Oper. Res..

[44]  Rolf H. Möhring,et al.  Resource-constrained project scheduling: Notation, classification, models, and methods , 1999, Eur. J. Oper. Res..

[45]  Rainer Kolisch Serial and parallel resource-constrained project scheduling methods revisited: Theory and computation , 1994 .

[46]  Sönke Hartmann,et al.  Project scheduling with resource capacities and requests varying with time: a case study , 2013 .

[47]  Mario Vanhoucke,et al.  An experimental investigation of metaheuristics for the multi-mode resource-constrained project scheduling problem on new dataset instances , 2014, Eur. J. Oper. Res..

[48]  Sönke Hartmann,et al.  Time-Varying Resource Requirements and Capacities , 2015 .

[49]  Peter J. Stuckey,et al.  Why Cumulative Decomposition Is Not as Bad as It Sounds , 2009, CP.

[50]  Jan Karel Lenstra,et al.  Scheduling subject to resource constraints: classification and complexity , 1983, Discret. Appl. Math..

[51]  Rainer Kolisch,et al.  PSPLIB - a project scheduling problem library , 1996 .

[52]  Roberto Sebastiani,et al.  OptiMathSAT: A Tool for Optimization Modulo Theories , 2015, Journal of Automated Reasoning.

[53]  Steffen Hölldobler,et al.  A Compact Encoding of Pseudo-Boolean Constraints into SAT , 2012, KI.