A combinatorial particle swarm optimization for solving multi-mode resource-constrained project scheduling problems
Introduction
Resource-constrained project scheduling problems (RCPSP) involve assigning jobs or tasks to a resource or set of resources with limited capacity, in order to meet some predefined objective. Many different objectives are possible and they depend on the goals of the decision maker, but the most common of them is to find the minimum makespan, i.e. the minimum time to complete the entire project. Thereby, technological precedence constraints have to be observed as well as limitations of the renewable resources required to accomplish the activities. Once started, an activity may not be interrupted. Consequently, we have a more realistic model which is the resource-constrained project scheduling problem with multiple execution modes.
The multi-mode resource-constrained project scheduling problem (MRCPSP) is a NP-hard problem which has been widely studied in the literature. The activities of a project not only have to be scheduled in order to minimize the project makespan but also they are subject to precedence constraints and limited availability of the resources. Moreover, each activity can be performed in one out of several modes, which consists in a different combination of resource requirements and duration (Elmaghraby [1]).
Several different techniques have been proposed to solve this problem. However, as shown by Sprecher [2] and Sprecher and Drexl [3], exact methods are unable to find optimal solutions for projects with more than 20 activities and three modes per activity when they are highly resource-constrained. Heuristic methods have become the alternative, and the last generation of them, the metaheuristics, are being successfully applied to this problem. Hence, in practice, heuristic algorithms to generate near-optimal schedules for larger projects are of special interest.
Several heuristic procedures for solving the MRCPSP have been proposed in the literature: Drexl and Grünewald [4] suggested a regret-based biased random sampling approach. Slowinski et al. [5] described a single-pass approach, a multi-pass approach, and a simulated annealing algorithm. Kolisch and Drexl [6] presented a local search procedure.
Özdamar [7] proposed a genetic algorithm based on a priority rule encoding. Bouleimen and Lecocq [8] suggested a simulated annealing heuristic. Sprecher and Drexl [3] developed a branch-and-bound procedure which is, according to the results obtained by Hartmann and Drexl [9], the currently most powerful algorithm for exactly solving the MRCPSP. Sprecher and Drexl [3] suggested using it as a heuristic by imposing a time limit. Finally, Boctor [10], [11] presented heuristics for multi-mode problems without non-renewable resources.
PSO simulates the behaviours of bird flocking. Suppose the following scenario: a group of birds are randomly searching for food in an area. There is only one piece of food in the area being searched. All of birds do not know where the food is. But they know how far the food is in each iteration. So what is the best strategy to find the food? The effective one is to follow the bird that is nearest to the food.
PSO developers learned from this scenario and used it to solve the optimization problems. In PSO, each single solution is a “bird” in the search space. We call it “particle”. All the particles have fitness values that are evaluated by the fitness function to be optimized, and have velocities that direct the flying of the particles. The particles fly through the problem space by following the current optimum particles. A new application of PSO for solving combinatorial optimization problems has been developed, such as single machine total weighted tardiness problems by Tasgetiren et al. [12], permutation flowshop scheduling problem by Tasgetiren et al. [13] and Liao et al. [14]. Salman et al. [15] have already solved the task assignment problem by the discrete particle swarm optimization but they have just rounded off the values. Zhang et al. [16] provided an alternative methodology to solve the MRCPSP by utilizing the features of PSO. The results of this PSO algorithm will be used to validate our results.
In this paper, we take up a challenge to apply a new combinatorial particle swarm optimization (CPSO) algorithm to solve a large variety of combinatorial optimization problems, namely the multi-mode resource-constrained project scheduling problem using integer values.
The remainder of the paper is organized as follows. Section 2 describes the MRCPSP problem. Section 3 defines the classical PSO algorithm. Section 4 focuses on the proposed combinatorial PSO (CPSO). In Section 5, we adapt our combinatorial PSO to the MRCPSP problem. In Section 6, we describe how the local search optimization can optimize the sequences associated to particles. Experimental results and comparisons are reported in Section 7. Finally, Section 8 concludes the paper.
Section snippets
Problem description
In a multi-mode RCPSP (MRCPSP), given the estimated work content for an activity, a set of allowable execution modes can be specified for the activity execution. Each mode is characterized by a processing time and amount of a particular resource type for completing the activity. For example, one worker might finish a job in 10 h (mode 1), whereas two workers might finish the same activity in 5 h (mode 2). The product of the duration of the activity and the amount of the resource type needed is
PSO algorithm
PSO introduced by Kennedy and Eberhart [17] is one of the most recent and hopeful evolutionary metaheuristics, which is inspired from the swarming behaviour of animals and human social behaviour.
Scientists found that the synchrony of animal’s behaviour was through maintaining optimal distances between individual members and their neighbours. Thus, velocity plays the important role of adjusting each other for the optimal distance. Furthermore, scientists simulated the scenario in which birds
Proposed combinatorial PSO (CPSO)
In this paper, we propose an extension of PSO algorithm to solve the combinatorial optimization problem with integer values.
Combinatorial PSO essentially differs from the original (or continuous) PSO in some characteristics.
CPSO algorithm for solving MRCPSP
As we can see, the MRCPSP consists of two different sub-problems: the assignment of modes to tasks and then the scheduling of these tasks in order to minimize the makespan of the project.
The combinatorial PSO will deal with the first problem to generate an assignment of modes to activities which is called particle. A local search will optimize the sequences when a new assignment is made.
In this section, we take advantage of the CPSO to solve the MRCPSP. Clearly, the discrete particle needs to
Local search optimization
Starting from an arbitrary initial solution, this method seeks to obtain better solutions, by carrying out series of local modifications, which leads to a monotone decrease of the objective function. This procedure permits the scheduling of tasks in order to optimize the sequence associated to each particle. The initial sequence associated to each particle at time 0 is randomly generated. In fact, to each task j we assign the following probability pj:where succj is the number
Implementation and experimental results
The proposed CPSO algorithm for the MRCPSP problem was implemented in C++ programming language on Dell desktop PC with Intel Pentium 4 and 3.2 GHz processors.
In 2003, Bouleimen and Lecocq [8] and more recently, in 2006, Zhang et al. [16] have solved the MRCPSP with the simulated annealing algorithm and the PSO algorithm respectively, implemented on Pentium 100 MHz processors. To make a fair comparison with their results, we must compute our CPU time with respect to our processor capacity. Since
Conclusion
To conclude, we recall that, in this work, we investigated the multi-mode resource-constrained project scheduling problem. Since our problem is NP-Hard and composed of more than 20 tasks, we have adopted the particle swarm optimization (PSO) to solve it, our objective was the minimization of the makespan. For this purpose, we have proposed a combinatorial particle swarm optimization, that we have called CPSO. This procedure has been fruitful in the assignment of different modes to the
References (18)
- et al.
Multi-mode resource-constrained project scheduling by a simple, general and powerful sequencing algorithm
European Journal of Operational Research
(1998) - et al.
DSS for multiobjective project scheduling subject to multiple-category resource constraints
European Journal of Operational Research
(1994) A new and efficient heuristic for scheduling projects with resource restrictions and multiple execution modes
European Journal of Operational Research
(1996)- et al.
Particle swarm optimization algorithm for makespan and total flowtime minimization in the permutation flowshop sequencing problem
European Journal of Operational Research
(2007) - et al.
A discrete version of particle swarm optimization for flowshop scheduling problems
Computers & Operations Research
(2007) - et al.
Particle swarm optimization for task assignment problem
Microprocessors and Microsystems
(2002) Activity Networks: Project Planning and Control by Network Models
(1977)- et al.
Nonpreemptive multi-mode resource-constrained project scheduling
IIE Transactions
(1993)
Cited by (286)
A data-driven meta-learning recommendation model for multi-mode resource constrained project scheduling problem
2023, Computers and Operations ResearchIntegrated multi-project planning and scheduling - a multiagent approach
2022, European Journal of Operational ResearchMulti-mode project portfolio selection and scheduling in a build-operate-transfer environment
2022, Expert Systems with ApplicationsA matheuristic approach to the multi-mode resource constrained project scheduling problem
2021, Computers and Industrial EngineeringBi-objective robust project scheduling with resource constraints and flexible activity execution lists
2021, Computers and Industrial Engineering