Extensive research works have been carried out in resource constrained project scheduling problem. However, scarce researches have studied the problems in which a setup cost must be incurred if activities are preempted. In this research, we investigate the resource constrained project scheduling problem to minimize the total project cost, considering earliness-tardiness and preemption penalties. A mixed integer programming formulation is proposed for the problem. The resulting problem is NP-hard. So, we try to obtain a satisfying solution using simulated annealing (SA) algorithm. The efficiency of the proposed algorithm is tested based on 150 randomly produced examples. Statistical comparison in terms of the computational times and objective function indicates that the proposed algorithm is efficient and effective.
Preemptive project scheduling problems are those in which the accomplishing of an activity is temporarily preempted and restarted afterwards. In the previous literature on preemptive project scheduling, preempted activities simply are resumed from the moment at which preemption occurred without any cost. However, this situation is not always true in reality. It is probable that, in some situations, a certain setup or delay cost should be considered.
The literature on solution approaches for the preemptive resource constrained project scheduling problem with weighted earliness-tardiness and preemption penalties (PRCPSP-WETPP) is scant. Of course, several papers have been devoted to machine scheduling considering preemption costs. Potts and van Wassenhove [
Vanhoucke [
Kaplan [
In this work the link between PRCPSP and WETPSP is investigated. Therefore, the contribution of this paper is threefold: first, a mixed integer programming formulation is developed for the resource constrained project scheduling problem of minimizing the total earliness-tardiness penalties and preemption costs. In this problem setting, when an activity is restarted after being interrupted, a constant setup penalty is incurred with no setup time. We call this problem PRCPSP-WETPP. This model is not considered in the past literature. Second, due to NP-hardness of the problem an efficient metaheuristic solution procedure based on SA is suggested for it. In contrast to classic SA, a relatively new intelligent neighborhood search algorithm is used in this research. Finally, the efficiency of the proposed method for the PRCPSP-WETPP is evaluated statistically.
The remainder of the paper is organized as follows. Section
The majority of previous research on project scheduling problems has investigated the problems without preemption. Although in some settings preemption is not practical, a modest degree of preemption can be accommodated in other instances. Preemption may be beneficial or harmful for the objective function. It is a well-known result in single machine scheduling theory that activity preemption may be harmful for the flow time of jobs. Whereas it is proven that preemption can reduce the make-span of a schedule in RCPSP [
As a rule, a preemptive problem is characterized by a complicated structure of its optimal solutions. When preemption is allowed at arbitrary times, the problem turns out to be intractable [
A nonregular objective function, which is attractive in just-in-time (JIT) environments, is the minimization of the earliness-tardiness (
In the literature of machine scheduling, different penalty schemes are studied. For example, Bülbül et al. considered only the last portion of a job may incur a penalty in a preemptive
The deterministic preemptive resource constrained project scheduling problem with weighted earliness-tardiness and preemption penalties (PRCPSP-WETPP) involves the determination of start/finish times of project activities for the minimization of the total earliness-tardiness and preemption penalties of the project subject to resource and precedence constraints. Subsequently, consider a project presented in an activity on node (AON) graph
The objective of the PRCPSP-WETPP is to schedule a number of activities, for minimization of the total costs of the project considering finish to start precedence relations with a time lag of zero, constrained resources, and a predetermined deadline. We use the following symbols for PRCPSP-WETPP:
In our formulation, 0-1 variables
Introducing the binary decision variables
subject to
The objective in (
In this section, a problem instance adapted from the Patterson set [
Problem instance for the PRCPSP-WETPP.
Optimal nonpreemptive schedule to the problem example.
The optimal preemptive schedule.
3-PARTITION is the first problem in the theory of graphs that was proven to be NP-hard in the strong sense. In the paper by Blazewicz et al. [
Simulated annealing (SA) is a metaheuristic method that is initially presented as a search algorithm for optimization by Kirkpatrick et al. [
Choosing an appropriate cooling scheme is vital for the performance of the SA. Geometric law
The description of SA reveals that a basic SA is generally very fast. Also, it does not use the history of the search process. This is one of the reasons why SA often outperforms the other search techniques. However, due to its simplicity, SA can be integrated into other metaheuristics successfully.
In this paper, a SA algorithm is designed to solve the above-mentioned problem. In this regard, the steps of the proposed algorithm are briefly looked into. In the sequel it is assumed that each original activity
In this paper, the activity-list (AL) is used to present a solution and a modified version of serial schedule generation scheme (SSGS) for translating a solution to a feasible schedule. The total cost criterion is a nonregular measure, that is, a measure which is not nondecreasing in activity finish time; so there is the danger of omitting optimal schedule by using the classic serial schedule generation scheme here. As a result, we apply a modified version of SSGS as follows.
The solution is represented by a vector with
A starting solution is created randomly by setting all activities on the AL without violating the resource and precedence constraints. The starting solution is generated as follows. First, an empty
An intelligent neighborhood of current solution is generated in the following procedure. A tardy list TL, is calculated which is defined as a set of activities that are scheduled to finish at later than due date forced by precedence or resource constraints. Tardy list (TL) contains the activities (with unit duration) that have tardiness with positive tardiness cost. One activity
The initial temperature (
In theory the SA procedure should be continued until the final temperature the value of the objective function has not decreased for a large number of consecutive trials; the number of accepted moves has become less than a certain small threshold for a large number of consecutive trials; a fixed priori number of trials have been executed; a maximal run time limit has been reached.
In the first two cases, the SA algorithm has a nondeterministic run time, whereas the last two cases are the cases of algorithms with a deterministic run time. In this paper, the last case is applied which is used in the literature in order to make a fair comparison between algorithms [
In order to evaluate the performance of the proposed SA for the PRCPSP-WETPP, a set of 150 instances are generated by the ProGen introduced by Kolisch et al. [
The parameters for the generated problem set.
Control parameter | Value |
---|---|
Number of nondummy activities ( |
20, 30, 40, 60, and 90 |
Unit earliness-tardiness penalty costs |
|
Preemption penalty |
|
Activity durations |
|
Number of start activities | 3 |
Number of end activities | 3 |
Maximum number of activity predecessors | 3 |
Maximum number of activity successors | 3 |
Coefficient of network complexity (CNC) | 1.5 |
Resource factor (RF) | 1 |
Resource strength (RS) | 0.5 |
Number of renewable resource types | 1, 2, and 3 |
Activity resource requirement (per period) |
|
Resource availability is assumed constant over time. For each number of activities 30 problems are generated. The resource factor (RF) reflects the average portion of resource demand per activity. The resource strength RS reflects the scarcity of the renewable resource. The unit earliness-tardiness penalty costs for each activity are generated randomly between 1 and 10. To generate the due dates of activities the method described by Vanhoucke et al. [
The efficiency of metaheuristics depends excessively on their parameters values. In this paper, SA control parameter values are selected through the computational experiments. The CPU-time limit is applied as stopping condition. It is observed that good results are obtained by indexing the CPU-time limit to the size of the problem, that is, use of the low CPU time for small size problems and the high CPU time for large scale ones. Consequently, after some experiments, the CPU-time limit was fixed to 50 milliseconds per activity. The experiments showed that the best value for SA temperature control parameter
The tuned values for
Number of activities | 20 | 30 | 40 | 60 | 90 |
---|---|---|---|---|---|
|
0.0043 | 0.0052 | 0.005 | 0.0047 | 0.0047 |
|
1.2 | 1.15 | 1.35 | 1.35 | 1.4 |
The proposed SA was coded in Borland C++ 5.02 and executed on a personal computer with an Intel Core 2 Dou, 2.5 GHz processor, and 3 GB memory. Since we could not find any algorithm for PRCPSP-WETPP, the proposed SA is compared with the optimal solution obtained by LINGO 11. The comparison results of the proposed algorithm with the optimal solution obtained by LINGO 11 (or the best obtained solution by the SA if LINGO is not able to solve the problem) are given in Table
Computational results of the LINGO and SA.
Number of activities | Number of resource types | Number of problems | LINGO | SA | |||
---|---|---|---|---|---|---|---|
NPO | ACNT-LINGO | NPM | ARD | ACNT-SA | |||
20 | 1 | 10 | 10 | 0.064 | 100 | 0.00% | 0.108 |
20 | 2 | 10 | 10 | 0.132 | 100 | 0.00% | 0.117 |
20 | 3 | 10 | 10 | 0.383 | 100 | 0.00% | 0.141 |
30 | 1 | 10 | 10 | 3.212 | 100 | 0.00% | 0.173 |
30 | 2 | 10 | 10 | 29.407 | 94 | 0.29% | 0.211 |
30 | 3 | 10 | 10 | 80.545 | 91 | 0.38% | 0.295 |
40 | 1 | 10 | 7 | 123.110 | 100 | 0.00% | 0.386 |
40 | 2 | 10 | 6 | 200.154 | 92 | 0.46% | 0.438 |
40 | 3 | 10 | 6 | 309.494 | 78 | 0.67% | 0.516 |
60 | 1 | 10 | 0 | — | 92 | 0.59% | 1.073 |
60 | 2 | 10 | 0 | — | 85 | 0.61% | 1.332 |
60 | 3 | 10 | 0 | — | 72 | 0.64% | 1.768 |
90 | 1 | 10 | 0 | — | 91 | 0.60% | 3.650 |
90 | 2 | 10 | 0 | — | 86 | 0.79% | 3.782 |
90 | 3 | 10 | 0 | — | 77 | 0.86% | 4.254 |
The following definitions are used in Table NPO: number of problems for which LINGO is able to solve optimally in 1000 sec; NPM: number of runs of problems for which SA has been able to solve optimally; ACNT-LINGP: average convergence time for LINGO (in seconds); ACNT-SA: average convergence time for the SA (in seconds); ARD: average relative deviation.
Relative deviation (RD) is defined as follows:
Table
In this section we evaluate the effect of preemption penalty and resources availability on optimal schedule. To this end, we resolve 60 problems with 20 and 30 nondummy activities for which LINGO was able to solve optimally. We extend the parameter settings, considering two levels for resources availability (constant and variable) and three levels for preemptions cost (low, medium, and high). The previously generated preemption penalties,
The effect of preemption cost and resource availability type.
Number of activities | Preemption cost | Resource availability | |||
---|---|---|---|---|---|
Constant | Variable | ||||
NOPR |
|
NOPR |
|
||
20 | Low | 87 | 391.65 | 91 | 375.18 |
20 | Medium | 68 | 427.13 | 74 | 450.62 |
20 | High | 33 | 476.97 | 35 | 507.12 |
30 | Low | 114 | 680.34 | 119 | 716.46 |
30 | Medium | 97 | 792.50 | 108 | 788.31 |
30 | High | 46 | 847.61 | 54 | 864.77 |
It is apparent from Table
In this paper, the preemptive resource constrained project scheduling problem with weighted earliness-tardiness and preemption penalties (PRCPSP-WETPP) is considered. The objective of this problem is to minimize the total cost of earliness-tardiness and preemption penalties subject to the precedence relations, resource constraints, and a fixed project deadline. This problem has not been studied ever before. The problem formulated as an integer programming model, and then a simulated annealing (SA) procedure proposed to solve it. To improve the efficiency of the proposed SA, the parameters were fine-tuned. In order to generalize the statistical results, a set of 150 test problems that include problems with 20, 30, 40, 60, and 90 nondummy activities with 1, 2, and 3 resource types are generated using the ProGen software package. The efficiency of the proposed algorithm on 150 test problems was evaluated with the results of the LINGO 11. From the computation results, we could clearly see that the SA algorithm could efficiently give robust solutions for the project scheduling problem measured by the ARD. However, results displayed that the average CPU time is an increasing function of the number of activities. Also, the number of resource types has a weak negative impact on the problem complexity, measured by the required CPU time. Also, the effect of preemption penalty and resource availability type is analyzed based on 60 test problems. It reveals that increasing cost of preemptions leads to preemptions being less attractive. This research helps managers to schedule their projects in order to minimize total project costs in just-in-time (JIT) environments when preemption is permitted with penalty. Extensions of this research might be of interest, such as studying the preemptive project scheduling combined with generalized precedence relation or multimode case.
The author declares that there is no conflict of interests regarding the publication of this paper.