A satisfiability and workload-based exact method for the resource constrained project scheduling problem with generalized precedence constraints
Introduction
Optimizing project scheduling is an important activity in virtually every field of knowledge because it can avoid a waste of time and resources, especially in big projects such as rocket launches, building hydro-electrical plants or oil and gas platforms (Pinedo, 2004). The resource constrained project scheduling problem (RCPSP) is a well-known combinatorial optimization problem that can be formally defined as follows. Let be the set of activities to be scheduled using a set of resources throughout a time horizon [0, T). Each activity j ∈ V has an execution time pj and it consumes a specific amount rij of resource at every time instant while it is being executed. For each resource there are Ri units available throughout the time horizon. Activities 0 and represent the beginning and end of the project, respectively, with and for all . The schedule should also respect activity precedences, which are represented by a directed graph . For each (j, l) ∈ A, let djl be the length of the arc and also the time lag from activity j to activity l. In this case, l must start at least djl time units after j starts and j must start at most time units after l starts. The objective is to minimize the makespan, that is, the time required to process all activities (or, alternatively, the completion time of the project).
Activities without predecessors will succeed 0, whereas those without successors will precede . The precedence relations imply that each activity j ∈ V has an associated early start time (ESj) and late finish time (LFj), thus meaning that j must be executed within the interval [ESj, LFj). In the classical RCPSP, only strict precedences are allowed, i.e., if (j, l) ∈ A then . As for the RCPSP with generalized precedence constraints (RCPSP/Max), a.k.a. RCPSP with minimal and maximal time lags, which is the variant studied in this paper, and non-positive cycles are allowed in G.
RCPSP and its variants are usually -hard as they generalize shop problems, such as open shop or job shop (Blazewicz, Lenstra, & Kan, 1983). Bartusch, Möhring, and Radermacher (1988) even showed that proving whether an instance has a feasible solution is -hard for the RCPSP/Max.
In this paper, we are interested in the exact solution of the RCPSP/Max and its particular cases (including the classical RCPSP) for which we provide several contributions:
- •
We propose three novel formulations based on the satisfability problem (SAT), which are used to check whether a solution is feasible for a given makespan value. The first one extends the formulation suggested in Horbach (2010), whereas the second one incorporates the concept of ordered-sets as in the constraint programming (CP)-based formulation of Schutt, Feydy, Stuckey, and Wallace (2013b). With the observations made on those formulations, we were able to devise new ideas that were compiled in a third formulation.
- •
We implement custom propagators for an existing SAT solver in order to generate clauses on demand so as to improve the solver efficiency when dealing with large number of clauses in the formulation.
- •
We introduce a workload-based approach with a view of reducing the domain of the decision variables, thus potentially reducing the solution space.
- •
We show how to combine the SAT and workload-based approaches in order to build a highly competitive exact method for the RCPSP/Max.
Extensive computational experiments involving various settings of the proposed method were carried out on RCPSP/Max and RCPSP benchmark instances, where almost all known optimal solutions were obtained and a number of open problems were solved to optimality for the first time, thus illustrating the efficiency and competitiveness of our approach.
The remainder of the paper is organized as follows. Section 2 presents a literature review on the existing exact methods for resource constrained scheduling. Section 3 describes the main contributions of this work, including the novel SAT formulations, the custom propagators, and the workload-based approach. Section 4 contains the results of the extensive computational experiments performed on benchmark instances. Finally, Section 5 brings the concluding remarks.
Section snippets
Literature review
In this section, we briefly review the existing literature on exact methods for resource constrained project scheduling problems, according to the type of approach: linear programming (LP), SAT and CP formulations.
Proposed method
In this section, we describe the exact method proposed to solve the RCPSP/Max (and its particular cases), which addresses the problem in two ways: destructive and constructive.
In the destructive approach, we reduce the feasibility RCPSP/Max to SAT, considering a hypothetical upper bound T′. If the reduction is feasible/satisfiable and a solution is found, then T′ (or the solution’s makespan) will be an upper bound on the optimal makespan. On the other hand, if the reduction is infeasible/
Computational experiments
Our procedures were coded in C++ and the experiments were conducted on an Intel Core i7 (3770 @ 3.40 GHz) with 12 GB of RAM and running Ubuntu Linux 14.04.3 LTS. MiniSAT 2.2.0 was used as a SAT solver (Eén & Sörensson, 2004). Only a single thread was utilized in our testing.
We have considered a total of 4470 benchmark instances, all publicly available in PSP (2018). For RCPSP/Max we have considered 2430 instances of groups UBO10, UBO20, UBO50, UBO100, UBO200, UBO500, j10, j20, j30, C and D,
Concluding remarks
In this paper, we studied the resource constrained project scheduling problem (RCPSP) with generalized precedence constraints (RCPSP/Max). In order to solve it, we proposed an exact method based on SAT formulations, custom propagators to be used within the SAT solver, and a workload-based approach for reducing the domain of the variables.
We have tested different versions of our method on the ProGen/max benchmark instances (Schwindt, 1995) for the RCPSP/Max. Such benchmark, which can be found in
Acknowledgments
We would like to thank the anonymous reviewers for the insightful comments that helped improving the quality of the paper. This research was partially supported by Conselho Nacional de Desenvolvimento Científico e Tecnológico (CNPq), grants 305223/2015-1, 428549/2016-0 and 306522/2016-0.
References (27)
- et al.
An almost optimal algorithm for unbounded searching
Information Processing Letters
(1976) - et al.
Scheduling subject to resource constraints: classification and complexity
Discrete Applied Mathematics
(1983) - et al.
Scheduling projects with labor constraints
Discrete Applied Mathematics
(2001) - et al.
Project scheduling with resource constraints: A branch and bound approach
European Journal of Operational Research
(1987) - et al.
Strong valid inequalities for the resource-constrained scheduling problem with uniform resource requirements
Discrete Optimization
(2008) - et al.
Event-based milp models for resource-constrained project scheduling problems
Computers & Operations Research
(2011) - et al.
Ip-based energetic reasoning for the resource constrained project scheduling problem
Electronic Notes in Discrete Mathematics
(2010) - et al.
Tight lp bounds for resource constrained project scheduling
OR Spectrum
(2004) - et al.
Constraint propagation and decomposition techniques for highly disjunctive and highly cumulative project scheduling problems
Constraints
(2000) - et al.
Scheduling project networks with resource constraints and time windows
Annals of operations Research
(1988)
A computing procedure for quantification theory
Journal of the ACM (JACM)
Constraint-propagation-based cutting planes: An application to the resource-constrained project scheduling problem
INFORMS Journal on Computing
An extensible sat-solver
Cited by (10)
Extensions of the resource-constrained project scheduling problem
2023, Automation in ConstructionAn updated survey of variants and extensions of the resource-constrained project scheduling problem
2022, European Journal of Operational ResearchCitation Excerpt :The model that is obtained from including minimal and maximal time lags into the RCPSP is often referred to as RCPSP with generalized precedence relations or as RCPSP/max. Ballestín, Barrios, and Valls (2011), Bianco and Caramia (2011b, 2012a), de Azevedo, Pessoa, and Subramanian (2021), and Schutt, Feydy, Stuckey, and Wallace (2013, 2015) consider this problem setting. Bagherinejad and Majd (2014), Ballestín et al. (2013), Barrios, Ballestín, and Valls (2011), Jedrzejowicz and Skakovski (2010), and Schnell and Hartl (2016) employ minimal and maximal time lags within the multi-mode RCPSP, which leads to the MRCPSP/max.
Optimization Strategies for Resource-Constrained Project Scheduling Problems in Underground Mining
2022, INFORMS Journal on ComputingDifferent Approaches of Evolutionary Algorithms to Multiple Objective RCPSP
2022, ACM International Conference Proceeding Series