learngraphtheory.org

Interactive Graph Theory Learning

Guest User

Using app without sign in

Algorithm Selection

This algorithm requires a directed graph. Check Settings tab to configure.

RCPSP (Resource-Constrained Project Scheduling)

Schedules project tasks while respecting both precedence constraints and global resource limits.

Time: NP-hard (Heuristic: O(V² × T))
Space: O(V × T)
Use Case: Real-world project scheduling where resources (workers, equipment) are limited.

Algorithm Execution

Select an algorithm and generate steps to begin visualization

About RCPSP (Resource-Constrained Project Scheduling)

The Resource-Constrained Project Scheduling Problem (RCPSP) schedules project activities subject to both precedence constraints and limited renewable resources such as workers, machines, or budget per period. Unlike CPM, which assumes unlimited resources, RCPSP is strongly NP-hard.

How it works

Priority-rule heuristics build schedules with the serial or parallel schedule generation scheme: activities are inserted at the earliest time where precedence and resource availability both hold, ordered by rules like most total successors or minimum slack. Exact approaches use branch and bound with resource-based lower bounds, and metaheuristics, notably genetic algorithms with activity-list encodings, dominate on the standard PSPLIB benchmarks.

Applications

RCPSP drives construction crew and equipment scheduling, software team sprint planning under staffing limits, maintenance shutdown scheduling in refineries, and production planning in make-to-order manufacturing. It is the canonical bridge between graph algorithms and industrial operations research.

Read the full article: Operations Research and Graph Theory

Related algorithms: Critical Path Method (CPM), PERT (Program Evaluation and Review Technique), Topological Sort

Interactive Controls
Basic Actions
Double Click → Add Node
Drag → Move Nodes
Shift + Click → Connect Nodes
Right Click → Context Menu
Advanced
Ctrl + Click → Multi-Select
Delete Key → Remove Selected
Double Click Edge → Edit Weight
Ctrl + Drag → Pan View

Zoom Controls

100%
Nodes: 4
Edges: 4