ArticlePDF Available

Resource-constrained project scheduling: Notation, classification, models, and methods

Authors:

Abstract

Project scheduling is concerned with single-item or small batch production where scarce resources have to be allocated to dependent activities over time. Applications can be found in diverse industries such as construction engineering, software development, etc. Also, project scheduling is increasingly important for make-to-order companies where the capacities have been cut down in order to meet lean management concepts. Likewise, project scheduling is very attractive for researchers, because the models in this area are rich and, hence, difficult to solve. For instance, the resource-constrained project scheduling problem contains the job shop scheduling problem as a special case. So far, no classification scheme exists which is compatible with what is commonly accepted in machine scheduling. Also, a variety of symbols are used by project scheduling researchers in order to denote one and the same subject. Hence, there is a gap between machine scheduling on the one hand and project scheduling on the other with respect to both, viz. a common notation and a classification scheme. As a matter of fact, in project scheduling, an ever growing number of papers is going to be published and it becomes more and more difficult for the scientific community to keep track of what is really new and relevant. One purpose of our paper is to close this gap. That is, we provide a classification scheme, i.e. a description of the resource environment, the activity characteristics, and the objective function, respectively, which is compatible with machine scheduling and which allows to classify the most important models dealt with so far. Also, we propose a unifying notation. The second purpose of this paper is to review some of the recent developments. More specifically, we review exact and heuristic algorithms for the single-mode and the multi-mode case, for the time–cost tradeoff problem, for problems with minimum and maximum time lags, for problems with other objectives than makespan minimization and, last but not least, for problems with stochastic activity durations.
A preview of the PDF is not available
... The scheduling domain is divided into distinct areas such as process execution scheduling in operating systems and scheduling of workforces in a construction project. The scheduling problem of this paper belongs to a scheduling category named resource-constrained project scheduling problem (RCPSP; see [7,8,18] for an extensive overview). RCPSP is concerned with finding schedules for resourceconsuming tasks with precedence constraints in a fixed time horizon, such that the makespan is minimized [18]. ...
... In[5] an additional third argument to Cumulatives, Op ∈ {≤, ≥} is defined. We omit it throughout our work and always set Op = ≤.8 Throughout the paper, lower-case characters are used to represent constants and upper-case characters are used to represent variables. ...
Preprint
Testing cyber-physical systems involves the execution of test cases on target-machines equipped with the latest release of a software control system. When testing industrial robots, it is common that the target machines need to share some common resources, e.g., costly hardware devices, and so there is a need to schedule test case execution on the target machines, accounting for these shared resources. With a large number of such tests executed on a regular basis, this scheduling becomes difficult to manage manually. In fact, with manual test execution planning and scheduling, some robots may remain unoccupied for long periods of time and some test cases may not be executed. This paper introduces TC-Sched, a time-aware method for automated test case execution scheduling. TC-Sched uses Constraint Programming to schedule tests to run on multiple machines constrained by the tests' access to shared resources, such as measurement or networking devices. The CP model is written in SICStus Prolog and uses the Cumulatives global constraint. Given a set of test cases, a set of machines, and a set of shared resources, TC-Sched produces an execution schedule where each test is executed once with minimal time between when a source code change is committed and the test results are reported to the developer. Experiments reveal that TC-Sched can schedule 500 test cases over 100 machines in less than 4 minutes for 99.5% of the instances. In addition, TC-Sched largely outperforms simpler methods based on a greedy algorithm and is suitable for deployment on industrial robot testing.
... Variants of PSP are introduced in the literature to involve these sources of complexities. For example, Resource-Constrained PSP (RCPSP) involves resource unavailability, which imposes a limitation on the resource of each activity at different time frames (Brucker et al., 1999;Herroelen et al., 1998;Pellerin et al., 2020;Hartmann and Briskorn, 2022). Time-Constrained PSP (TCPSP) (Guldemond et al., 2008), a.k.a. ...
Preprint
The Multi-mode Resource Availability Cost Problem (MRACP) optimizes resource availability to minimize usage costs and is a recent project scheduling problem variant. The Multi-Mode On-Site Workshop Availability Cost Problem (MOSWACP) extends MRACP by introducing spatial constraints for On-site Workshops (OSWs) at construction sites. MOSWACP aims to determine the optimal availability level, installation, and dismantling times for OSWs while scheduling activities within spatial and resource limitations. A novel Mixed-Integer Linear Programming (MILP) model is developed, and a metaheuristic algorithm, the Electron Radar Search Algorithm (ERSA), is proposed to solve large-scale instances. ERSA, enhanced with problem-specific operators, outperforms CPLEX in large instances and outperforms Simulated Annealing (SA), Genetic Algorithm (GA), and Particle Swarm Optimization (PSO). An actual case study demonstrated significant cost savings using the proposed model. The results and conclusions highlight the effectiveness of the ERSA approach in managing complex project scheduling challenges.
... LPT would schedule them as ba c, since it does not consider future dependencies, while the optimal order is acb. This challenge falls under resource-constrained project scheduling, an NP-hard problem (Brucker et al., 1999;Hartmann & Briskorn, 2022). ...
Preprint
Full-text available
Large language models (LLMs) use function calls to interface with external tools and data source. However, the current approach to LLM function calling is inherently synchronous, where each call blocks LLM inference, limiting LLM operation and concurrent function execution. In this work, we propose AsyncLM, a system for asynchronous LLM function calling. AsyncLM improves LLM's operational efficiency by enabling LLMs to generate and execute function calls concurrently. Instead of waiting for each call's completion, AsyncLM introduces an interrupt mechanism to asynchronously notify the LLM in-flight when function calls return. We design an in-context protocol for function calls and interrupts, provide fine-tuning strategy to adapt LLMs to the interrupt semantics, and implement these mechanisms efficiently on LLM inference process. We demonstrate that AsyncLM can reduce end-to-end task completion latency from 1.6x-5.4x compared to synchronous function calling on a set of benchmark tasks in the Berkeley function calling leaderboard (BFCL). Furthermore, we discuss how interrupt mechanisms can be extended to enable novel human-LLM or LLM-LLM interactions.
... The academic literature on exact optimization methods for GPSPs is immensely rich. Wellknown surveys from the scheduling track include those of Graham et al. [19], Brucker et al. [8] and Hartmann and Briskorn [20]. In a recent book by Artigues et al. [2] a very thorough survey of GPSP is presented, including a computational study that compares existing methodologies on benchmark instances. ...
Preprint
We study a Lagrangian decomposition algorithm recently proposed by Dan Bienstock and Mark Zuckerberg for solving the LP relaxation of a class of open pit mine project scheduling problems. In this study we show that the Bienstock-Zuckerberg (BZ) algorithm can be used to solve LP relaxations corresponding to a much broader class of scheduling problems, including the well-known Resource Constrained Project Scheduling Problem (RCPSP), and multi-modal variants of the RCPSP that consider batch processing of jobs. We present a new, intuitive proof of correctness for the BZ algorithm that works by casting the BZ algorithm as a column generation algorithm. This analysis allows us to draw parallels with the well-known Dantzig-Wolfe (DW) algorithm. We discuss practical computational techniques for speeding up the performance of the BZ and DW algorithms on project scheduling problems. Finally, we present computational experiments independently testing the effectiveness of the BZ and DW algorithms on different sets of publicly available test instances. Our computational experiments confirm that the BZ algorithm significantly outperforms the DW algorithm for the problems considered. Our computational experiments also show that the proposed speed-up techniques can have a significant impact on solution time. We provide some insights on what might be explaining this significant difference in performance.
... According to the standard notation, classification for the RCPSP is PS|prec|C max [14]. A project can be described as follows: There is a set of activities V = {0, . . . ...
Preprint
In the paper, a parallel Tabu Search algorithm for the Resource Constrained Project Scheduling Problem is proposed. To deal with this NP-hard combinatorial problem many optimizations have been performed. For example, a resource evaluation algorithm is selected by a heuristic and an effective Tabu List was designed. In addition to that, a capacity-indexed resource evaluation algorithm was proposed and the GPU (Graphics Processing Unit) version uses a homogeneous model to reduce the required communication bandwidth. According to the experiments, the GPU version outperforms the optimized parallel CPU version with respect to the computational time and the quality of solutions. In comparison with other existing heuristics, the proposed solution often gives better quality solutions.
Article
From the business standpoint, predictability of the resources and time required for successful project completion is one of the key aspects of software development. This estimate significantly impacts project implementation and its outcomes – underestimation often leads to failures. An implementation schedule is one of the key ingredients of software development project estimation. Over recent years, the software development business has become even more competitive which, in turn, has imposed more demanding requirements on estimates – the more accurate an estimate is, and the less working time is spent on its preparation, the higher chance to overperform the competitors. This is why automation of such a manual assignment as project implementation schedule preparation is a relevant scientific and technical task. The current article is devoted to a method of building a software development project tasks implementation schedule. The project is supposed to be done by a scrum team with non-differentiated specializations. The resource constraints are expressed as balancing of the task effort estimates and the project team development capacity for each of the sprints. In order to unify measurement of software development productivity, a "normalization" approach is applied. The order of adding tasks to a schedule considers dependencies between the tasks and utilizes the List Scheduling method. As the method's outcomes, a set of feasible project implementation schedules is produced. Over a feasible schedule, a fine objective function is defined. This objective function minimizes the project team's idle time assuming that such idle time in the beginning of the project is "worse" than in its ending. Being applied along with the Multi-Stage Estimation method, the method proposed in the current article allows to reduce the working time spent by experts on preparation of estimates. Because of its simplicity, the software implementation of the current method version can be done without writing source code – a spreadsheet editor can be used instead. The priority ways of the further evolution of the method are the following: supporting of scrum teams with differentiated and mixed specializations; transition from a normalized project implementation schedule to the "full" one considering the project tasks' lifecycle and the structure of software developers' working time.
Preprint
In this paper Hybrid Ant Colony Optimization (HAntCO) approach in solving Multi--Skill Resource Constrained Project Scheduling Problem (MS--RCPSP) has been presented. We have proposed hybrid approach that links classical heuristic priority rules for project scheduling with Ant Colony Optimization (ACO). Furthermore, a novel approach for updating pheromone value has been proposed, based on both the best and worst solutions stored by ants. The objective of this paper is to research the usability and robustness of ACO and its hybrids with priority rules in solving MS--RCPSP. Experiments have been performed using artificially created dataset instances, based on real--world ones. We published those instances that can be used as a benchmark. Presented results show that ACO--based hybrid method is an efficient approach. More directed search process by hybrids makes this approach more stable and provides mostly better results than classical ACO.
Chapter
This chapter discusses the Just in Time (JIT) manufacturing tool, analyzing its concept and evolution, its importance, and the benefits it offers when implemented correctly, as well as the barriers that are faced when putting it into practice. Similarly, some basic activities that must be considered at the time of implementation are indicated. In addition, a bibliometric review of the JIT concept in the industry is conducted, identifying the authors, institutions, and countries that generate the most scientific papers or are most cited. Finally, a structural equation model was presented to quantify the relationship between JIT and social and environmental sustainability. The results were validated with information from 411 responses to a survey applied to the Mexican maquiladora industry, and the direct effects were estimated to validate the three established hypotheses. Finally, a sensitivity analysis of the model is reported, in which the probabilities of the analyzed variables occurring in isolation, jointly, and conditionally are reported.
Chapter
The resource-constrained project scheduling problem (RCPSP) may be formulated as follows: Given are n activities 1,…, n and r renewable resources 1,…, r. A constant amount of R k , units of resource k is available at any time. Activity i must be processed for p i time units, where preemption is not allowed. During this time period a constant amount of r ik units of resource k is occupied. The values R k , p i and r ik , are supposed to be non-negative integers. Furthermore, finish-start precedence relations are defined between the activities. The objective is to determine starting times S i for the activities i= 1,…, n in such a way that ■ at each time t the total resource demand is less than or equal to the resource availability for each resource type, ■ the given precedence constraints are fulfilled, and ■ the makespan is minimized, where is the completion time of activity i.
Chapter
Resource-constrained project scheduling involves the scheduling of project activities subject to precedence and resource constraints in order to meet the objective(s) in the best possible way. The area covers a wide variety of problem types. The objective of this paper is to provide a survey of what we believe are the important recent developments in the area. Our main focus will be on the recent progress made in and the encouraging computational experience gained with the use of optimal solution procedures for the basic resource-constrained project scheduling problem (RCPSP) and important extensions. We illustrate how the branching rules, dominance and bounding arguments of a new depth- first branch-and-bound procedure can be extended to a rich variety of related problems: the generalized resource-constrained project scheduling problem, the resource-constrained project scheduling problem with generalized precedence relations, the preemptive resource-constrained project scheduling problem, the resource availability cost problem, and the resource-constrained project scheduling problem with various time/resource(cost) trade-offs and discounted cash flows.
Article
Projects with minimum and maximum time lags between the start of different activities (i.e. there are schedule-dependent time windows) play an important role in practice. Unfortunately, maximum time lags have been discussed in literature very rarely and only recently. However, maximum time lags (in addition to minimum ones) are needed to model a variety of practical requirements such as deadlines for subprojects or individual activities, simultaneous or non-delay execution of several activities, time-varying resource requirements, time windows for resources, scheduling of make-to-order production, and resource allocation in process-determined industry (cf. Neumann and Schwindt 1995, 1997).