Satisfiability Modulo Theories: An Efficient Approach for the Resource-Constrained Project Scheduling Problem

The Resource-Constrained Project Scheduling Problem (RCPSP) and some of its extensions have been widely studied. Many approaches have been considered to solve this problem: constraint programming (CP), Boolean satisfiability (SAT), mixed integer linear programming (MILP), branch and bound algorithms (BB) and others. In this paper, we present a new approach for solving this problem: satisfiability modulo theories (SMT). Solvers for SMT generalize SAT solving by adding the ability to handle arithmetic and other theories. We provide several encodings of the RCPSP into SMT, and introduce rcp2smt, a tool for solving RCPSP instances using SMT solvers, which exhibits good performance.

[1]  Mateu Villaret,et al.  A System for Solving Constraint Satisfaction Problems with SMT , 2010, SAT.

[2]  Toby Walsh,et al.  SAT v CSP , 2000, CP.

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

[4]  Philippe Baptiste Constraint-Based Schedulers, Do They Really Work? , 2009, CP.

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

[6]  Cesare Tinelli,et al.  Solving SAT and SAT Modulo Theories: From an abstract Davis--Putnam--Logemann--Loveland procedure to DPLL(T) , 2006, JACM.

[7]  Christian Artigues,et al.  Insertion techniques for static and dynamic resource-constrained project scheduling , 2003, Eur. J. Oper. Res..

[8]  Mario Vanhoucke,et al.  A Decomposition-Based Genetic Algorithm for the Resource-Constrained Project-Scheduling Problem , 2007, Oper. Res..

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

[10]  Rolf H. Möhring,et al.  Scheduling project networks with resource constraints and time windows , 1988 .

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

[12]  Albert Oliveras,et al.  Challenges in Satisfiability Modulo Theories , 2007, RTA.

[13]  Peter Brucker,et al.  A branch and bound algorithm for the resource-constrained project scheduling problem , 1998, Eur. J. Oper. Res..

[14]  U. Dorndorf,et al.  A Time-Oriented Branch-and-Bound Algorithm for Resource-Constrained Project Scheduling with Generalised Precedence Constraints , 2000 .

[15]  Mutsunori Banbara,et al.  Compiling Finite Linear CSP into SAT , 2006, CP.

[16]  Andrei Horbach,et al.  A Boolean satisfiability approach to the resource-constrained project scheduling problem , 2010, Ann. Oper. Res..

[17]  L. D. Moura,et al.  The YICES SMT Solver , 2006 .

[18]  Jan Van Damme,et al.  Project scheduling under uncertainty survey and research potentials , 2002 .

[19]  Erik Demeulemeester,et al.  Resource-constrained project scheduling: A survey of recent developments , 1998, Comput. Oper. Res..

[20]  Philippe Michelon,et al.  A constraint programming approach for the resource-constrained project scheduling problem , 2007, Ann. Oper. Res..

[21]  Toni Mancini,et al.  SAT as an Effective Solving Technology for Constraint Problems , 2006, ISMIS.

[22]  Rema Padman,et al.  An integrated survey of deterministic project scheduling , 2001 .

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

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

[25]  Albert Oliveras,et al.  On SAT Modulo Theories and Optimization Problems , 2006, SAT.

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

[27]  Philippe Laborie,et al.  Complete MCS-Based Search: Application to Resource Constrained Project Scheduling , 2005, IJCAI.

[28]  V. Maniezzo,et al.  An Exact Algorithm for the Resource-Constrained Project Scheduling Problem Based on a New Mathematical Formulation , 1998 .

[29]  Maria Luisa Bonet,et al.  Solving (Weighted) Partial MaxSAT through Satisfiability Testing , 2009, SAT.

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

[31]  Peter J. Stuckey,et al.  Explaining the cumulative propagator , 2010, Constraints.

[32]  Vasco M. Manquinho,et al.  Algorithms for Weighted Boolean Optimization , 2009, SAT.

[33]  Miquel Bofill Arasa,et al.  SIMPLY: a Compiler from a CSP Modeling Language to the SMT-LIB Format , 2009 .

[34]  Erwin Pesch,et al.  A branch-and-bound algorithm for the resource-constrained project scheduling problem , 2000, Math. Methods Oper. Res..

[35]  Armin Scholl,et al.  Computing lower bounds by destructive improvement: An application to resource-constrained project scheduling , 1999, Eur. J. Oper. Res..