In the Multi-Skill Resource-Constrained Project Scheduling Problem, we struggle to create the final project schedule as cheap or/and short as possible. The schedule can be modified by changing resources assigned to the given task. Based on these statements, the MS-RCPSP could be described as follows.

In MS-RCPSP set of tasks is given. Every task is described by its start time and duration. Consequently, its finish time could also be obtained. There is a precedence relation between the tasks, which determines which tasks must be completed before a given task can be started.

Furthermore, the set of resources that can be assigned to tasks is defined. The salary rate describes every resource. Thus the cost of performing the same task could be varied depending on the assigned resource and its salary rate. The resource also is defined by the skills it owns (e.g. developer, tester, analyst) that are additionally described by the familiarity levels.


General schema of constraints of MS-RCPSP

Tasks can be performed by capable resources. Capable resource is a one that has specified skill type with the familiarity level no lower than it is required by given task. It means that every task also is described by the skill that is required to be performed and if resource does not own that specified skill, it cannot be assigned to given task.


Tasks' required levels of skills

The MS-RCPSP problem is similar to Software Project Scheduling Problem.
Proposed MS-RCPSP problem statement is slightly different than classical RCPSP that can be found in the literature. Firstly, cost aspect has been added – transformation to multi-criteria optimization problem. Secondly, in MS-RCPSP not every task is required to have predecessors. Thus, no dummy finish and start tasks have been introduced. What is more, resources are not described by units used to define what part of resource’s time it spends on given task. In our model, the resource can be assigned to only one task in given time. Assigning more than one task to given resource in overlapping period of time causes conflicts that have to be resolved by shifting one of conflicted tasks’ start time just after the finish time of another conflicted task. Finally, skills domain has been introduced, to make our approach closer to real-world applications in project management.


Visualisation: critical path of given schedule

Morover, problem can be considered as mulicriteria optimisation problem: (1) schedule duration optimisation and (2) schedule cost realisation. To make easy comparision to other scientific work we developed and published: benchmark dataset instances, tools (validator, visualisator) and Java library -- details in section download.html and library.

The MS-RPCPS problem formally, more about references works and citations -- references section.