Scatter search for project scheduling with resource availability cost Jia-Xian Zhu
Introduction Project scheduling – resource constrained project scheduling problem (RCPSP). – resource availability cost problem (RACP). (Mohring, 1984) – The both problem is NP-hard. (Blazewicz et al., 1983), (Mohring, 1984) Difference between the RCPSP and the RACP – The RACP time for completing the project is limited and the resources are unlimited at a non-decreasing discrete cost function. – The RCPSP involves minimizing the cost of the resources required to complete the project by a specified deadline. This paper addresses the RACP.
Introduction The objective of this paper is to develop solution procedures based on the scatter search methodology (Glover, 1977, 1988; Laguna and Marti’, 2003) for the RACP. Computational experiments – For medium and larger size instances – For small problems The performance of the proposed procedures is tested against optimal solutions generated by cutting plane procedure from Demeulemeester (1995), and upper and lower bounds from Drexl and Kimms (2001).
References review The RCPSP recent reviews about exact methods and heuristics can be found in Herroelen et al. (1998), brucker et al. (1999), Kolisch and Hartmann (1998) and Hartmann and Kolisch (2000). The authors are not aware of heuristics developed for the RACP in the literature.
The resource availability cost problem d i duration of activity i. r ik units of resource type k. A t the set of activities in progress during the time interval (t-1,t]. Dthe project deadline. C k (a k )a discrete non-decreasing cost function associated with the availability a k of resource type k. a k resource availability values. f i the finish times of the activities.
The resource availability cost problem
12 activities m = 3 resource types D = 18
Improvement heuristic for the RACP The improvement heuristic is composed of two phases: – Feasibility (Phase 1) – improvement (Phase 2) RSBF is hybrid multi-pass method that combines random sampling within a backward-forward scheduling method. (Tormos and Lova, 2003)
Improvement heuristic for the RACP Phase 1 is applied – The amount of available resources is increased. Phase 2 consists of decreasing the amount of available resources, one type at a time, by one unit. Slake elimination procedure (SEP) – MaxRes k Then the resource availability of resource k is reduced to MaxRes k (the maximum per period requirement of resource k).
Improvement heuristic for the RACP For this project, a_sol = (2,2,2) is likely infeasible. Phase 1 of the improvement heuristic is applied. (Phase 1 procedure)Phase 1 procedure – Since activities 6, 9, and 11 have the largest value of S i - LS i, we randomly select activity 9. (go to table)go to table – Activity 9 is r 9,1 =2, r 9,2 =2, r 9,3 =1. Activity 9 – The resource availabilities are increased to a’=(2+2,2+2,2+1)=(4,4,3). The resource slack of type 2 is eliminated with the SEP. – generation a new solution a_sol = a’ =(4,2,3).
Improvement heuristic for the RACP This solution is feasible and Phase 2 is started. (Phase 2 procedure)Phase 2 procedure – Iteration 1: current solution: a_sol=(4,2,3) a’=(4-1,2,3)=(3,2,3) - RSBF generates a feasible schedule with start times shown in the last row of Table.Table Apply the SEP => a_sol=(2,2,3) – Iteration 2: current solution: a_sol=(2,2,3) a’=(2-1,2,3)=(1,2,3) - infeasible schedule a’=(2,2-1,3)=(2,1,3) - infeasible schedule a’=(2,2,3-1)=(2,2,2) - infeasible schedule
Improvement heuristic for the RACP Pseudocode of the improvement heuristic.
Improvement heuristic for the RACP
Scatter search Scatter search is an evolutionary method proposed by Glover (1977,1998). – Hard combinatorial. – Non-linear optimization problems. The following parameters are used in the remaining of our discussion: – PSizesize of the set of diverse solutions generated by the Diversification Generation Method. – b size of the reference set (RefSet) – b 1 size of the high-quality subset of RefSet – b 2 size of the diverse subset of RefSet – MaxSolmaximum number of solution evaluations – λ,gparameters used in the Diversification Generation Method.
Scatter search Scatter search method
Scatter search Diversification generation method Let [Z k 0,Z k g ) be an interval of integers containing the possible values of resource availability of type k. Suppose this interval is divided in g sub-intervals [Z k 0,Z k 1 ), …, [Z k i-1,Z k i ), …, [Z k g-1,Z k g ). Frequency matrix stores the number of times the a_sol k variable assumes a value in the sub-interval [Z k i,Z k i+1 ). A sub–interval is then selected with probability inversely proportional to its frequency in M.
Scatter search Procedure to generate diverse solutions. Feasible: Z k g =λ*a_sol k Infeasible: a_sol k >Z k g Z k g =λ*a_sol k
Scatter search Reference set update – The subset of quality solutions (RefSet1) contains the b 1 best solutions, as evaluated by the objective function. – The subset of diverse solutions (RefSet2) consists of b 2 diverse solutions. The initial RefSet – The b 1 best solutions that belong to P. – The b 2 elements from P that maximize the minimum distance to RefSet. There are two main aspects that must be considered when updating the RefSet. – The timing of the update. Static update Dynamic update – Choosing the criteria for adding to and deleting elements from RefSet. Quality and diversity (QD) Quality (Q) The subset generation methods proposed in the template by Glover (1998). – Four types of subset are generated: ST1, ST2, ST3 and ST4.
Scatter search Combination with path relinking
Scatter search
Procedure to generate neighbors.
Scatter search
Multi-start heuristic The main steps of the multi-start heuristic are: – Step1. Generate resource values, a_sol k,k=1,…,m. – Step2. Apply the improvement heuristic. – Step3. Repeat steps 1 and 2 until the number of evaluated solutions reaches MaxSol. Two versions of the multi-start heuristic were developed. – Random multi-start (RMS) Step1. from a discrete uniform distribution U[l k,u k ]. – Frequency-based multi-start (FMS) Step1. from the diversification generation method.
Generation of problem instances Instance with four resources and 30, 60, 90 and 120 activities are directly obtained from the PSPLIB. The remaining instances were generated with Progen (Kolisch et al., 1995). Two important parameters for Progen – the network complexity (NC) reflects the average number of immediate successors of an activity. – Resource factor (RF) varies between 0 and 1, reflecting the density of the different resource types needed by an activity. If RF=1, Each activity requires all m types of resources. RF=0 indicates that activities do not require any type of resources.
Generation of problem instances D the deadline for the project. DF the deadline factor. EF i the earliest finishing time of activity i. D = DF * max EF i Following parameters values for RF and NC: – RF: 0.25, 0.5, 0.75 and 1.0. – NC: 1.5, 1.8 and 2.1. – DF: 1.1, 1.2 and 1.3. The stopping criterion MaxSol for the scatter search and multi- start method is the maximum number of evaluated solutions. – MaxSol = m * n 2 * 25
Generation of problem instances Run 144 instances (3 RF, 3 DF, 3 NC, 4 activities). Twelve scatter search versions were generated by combining the following factors: – Three values for (b 1,b 2 ): (5,5), (7,3) and (3,7) – RefSet update: Static or Dynamic – RefSet update criterion: QD or Q. The scatter search version (7,3)/Dynamic/QD, with parameters PSize=10, g=10 and λ=1.9, dominates all other versions in terms of mean gap and maximum gap. – gap=100(SSV-Best)/(Best).
Computational results for set 1 To compare the performance of the best scatter search version (SSD - scatter search with dynamic update) with two multi-start heuristics: FMS and RMS. Run another 144 instance (4 RF, 1 DF, 3 NC, 4 activities, 3 resources).
Computational results for set 1 Performance of SSD and FMS with respect to the number of resources.
Computational results for set 1 Average computational time (in seconds).
Computational results for set 1 Classification of best solutions found with SSD.
Computational results for set 2 The performance of the scatter search version SSD is compared to upper bounds, lower bounds and exact solutions. Optimal solutions are generated with a cutting plane algorithm proposed by Demeulemeester (1995), with time limit of 600 seconds. – If an optimal solution cannot be found within this time limit then the resulting infeasible solution represents a lower bound for the problem. Lower and upper bounds for the RACP are also obtained by a Lagrangean relaxation and column generation methods proposed by Drexl and Kimms (2001).
Computational results for set 2 Performance of scatter search in the 30- activity and 20-activity sets.
Computational results for set 2 Average computational time for 30-activity and 20-activity sets. (in seconds)
Computational results for set 2 Distribution of instances by interval gaps for 30-activtity and 20-activity sets.
Conclusions Scatter search obtained better or equal results than the multi-start heuristics. The results of the extensive experimentation show that this method is capable of providing high-quality solutions to fairly large instances of the RACP in reasonable computational time.
Improvement heuristic for the RACP Applying the improvement heuristic to the example.
Improvement heuristic for the RACP Applying the improvement heuristic to the example.