multidirectional scheduling scheme in resource-constrained project schedulingproblem

12
Multidirectional Scheduling Scheme in Resource-Constrained Project Scheduling Problem Hamid R. Yoosefzadeh, 1,2 Hamed R. Tareghian, 1 Mohammad H. Farahi 1 1 Faculty of Mathematical Sciences, Ferdowsi University of Mashhad, Mashhad, Iran 2 Department of Mathematical Sciences, Payam Noor University, Tehran, Iran Received 22 April 2012; revised 12 November 2013; accepted 12 November 2013 DOI 10.1002/nav.21565 Published online 23 December 2013 in Wiley Online Library (wileyonlinelibrary.com). Abstract: In 2000, Klein showed that bidirectional scheduling schemes (bidss) outperform single-directional scheduling schemes (e.g., forward or backward schemes). In 2010, Yoosefzadeh, et al. [J Math Model Algor 9 (2010), 357–373] showed that depending on the nature of the problems and also the type of priority rules used, schedules produced by a so-called tridirectional scheduling scheme (trdss) yields shorter makespans when compared to forward, backward, and even bidss. Since the justification technique is applied in many of the state-of-the-art algorithms nowadays, we show that the tuned version of the trdss outperforms the double justification technique. Moreover, we investigate the circumstances under which the trdss is more probable to generate schedules with shorter makespans. To this end, we introduce a new measure of resource requirements and their distributions, namely total amount of overflows. Our analytical as well as empirical investigations show that when the new measure is increased, it is more probable to obtain schedules with shorter makespans using the trdss. © 2013 Wiley Periodicals, Inc. Naval Research Logistics 61: 44–55, 2014 Keywords: scheduling schemes; resource complexity measures; double justification technique; tridirectional scheduling scheme 1. INTRODUCTION AND BACKGROUND The resource constrained project scheduling problem (RCPSP) is a strongly NP-hard optimization problem, reflect- ing the fact that no known algorithm exists to optimally solve the RCPSP in polynomial time [3]. Based on many fac- tors such as type of precedence relations between activities (minimum or maximum time lags), whether preemption of activities is allowed or not, whether the resource availability per unit of time is constant or variable, different versions of the RCPSP can be defined. The RCPSP that is considered in this article is described as follows: the project is depicted as an activity on node network with N activities. Each activity j has a constant duration d j . Preemption of activities is not allowed, that is, activities are executed without any interruptions. The precedence relations between activities are minimum finish to start control, that is, each activity can be started, if and only if all its precedent activities are finished. Activity j uses u jr units of resource type r , (j = 2, ... , N 1; r = 1, ... , |R|). The availability of resources a r (r = 1, ... , |R|) per unit of time is constant. Nodes 1 and N of the network project are Correspondence to: H.R. Yoosefzadeh (usefzadeh.math@ pnu.ac.ir) zero-duration zero-resource dummy nodes that depict the start and the end of the project, respectively. The objective is to minimize the project’s makespan. There are two main approaches to solve the RCPSP. Exact methods are mainly based on mathematical programming (e.g., [4] and [16]), dynamic programming (e.g., [14]). How- ever, for larger instances, these methods take an enormous amount of time and are not practically applicable. The sec- ond approach consists of heuristics: single-pass, multipass and sampling methods [7], genetic algorithms (e.g., [11] and [21]), simulated annealing (e.g., [12] and [17]), tabu search (e.g., [12] and [13]), the artificial immune system (e.g., [1]), or miscellaneous heuristics (e.g., [2] and [15]) are among the heuristic and metaheuristic methods used to solve the RCPSP. A schedule corresponds to a point s (with i-th component s i , the start time of activity i and s 0 = 0, the start of the project), and it is said to be feasible if it is compatible with both the precedence constraints and the resource constraints. Priority rules are the main part of heuristics/metaheuristic methods (see e.g., [7]). They are also used by commercial project scheduling software packages [5]. Priority rules are usually classified in three groups: network-based rules (e.g., short- est processing time or SPT rule), critical path-based rules (e.g., earliest starting time or EST rule), and resource-based © 2013 Wiley Periodicals, Inc.

Upload: mohammad-h

Post on 24-Mar-2017

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Multidirectional scheduling scheme in resource-constrained project schedulingproblem

Multidirectional Scheduling Scheme in Resource-Constrained ProjectScheduling Problem

Hamid R. Yoosefzadeh,1,2 Hamed R. Tareghian,1 Mohammad H. Farahi1

1Faculty of Mathematical Sciences, Ferdowsi University of Mashhad, Mashhad, Iran

2Department of Mathematical Sciences, Payam Noor University, Tehran, Iran

Received 22 April 2012; revised 12 November 2013; accepted 12 November 2013DOI 10.1002/nav.21565

Published online 23 December 2013 in Wiley Online Library (wileyonlinelibrary.com).

Abstract: In 2000, Klein showed that bidirectional scheduling schemes (bidss) outperform single-directional scheduling schemes(e.g., forward or backward schemes). In 2010, Yoosefzadeh, et al. [J Math Model Algor 9 (2010), 357–373] showed that dependingon the nature of the problems and also the type of priority rules used, schedules produced by a so-called tridirectional schedulingscheme (trdss) yields shorter makespans when compared to forward, backward, and even bidss. Since the justification technique isapplied in many of the state-of-the-art algorithms nowadays, we show that the tuned version of the trdss outperforms the doublejustification technique. Moreover, we investigate the circumstances under which the trdss is more probable to generate scheduleswith shorter makespans. To this end, we introduce a new measure of resource requirements and their distributions, namely totalamount of overflows. Our analytical as well as empirical investigations show that when the new measure is increased, it is moreprobable to obtain schedules with shorter makespans using the trdss. © 2013 Wiley Periodicals, Inc. Naval Research Logistics 61: 44–55,2014

Keywords: scheduling schemes; resource complexity measures; double justification technique; tridirectional scheduling scheme

1. INTRODUCTION AND BACKGROUND

The resource constrained project scheduling problem(RCPSP) is a strongly NP-hard optimization problem, reflect-ing the fact that no known algorithm exists to optimallysolve the RCPSP in polynomial time [3]. Based on many fac-tors such as type of precedence relations between activities(minimum or maximum time lags), whether preemption ofactivities is allowed or not, whether the resource availabilityper unit of time is constant or variable, different versions ofthe RCPSP can be defined. The RCPSP that is considered inthis article is described as follows: the project is depicted as anactivity on node network with N activities. Each activity j hasa constant duration dj . Preemption of activities is not allowed,that is, activities are executed without any interruptions. Theprecedence relations between activities are minimum finishto start control, that is, each activity can be started, if and onlyif all its precedent activities are finished. Activity j uses ujr

units of resource type r , (j = 2, . . . , N − 1; r = 1, . . . , |R|).The availability of resources ar (r = 1, . . . , |R|) per unit oftime is constant. Nodes 1 and N of the network project are

Correspondence to: H.R. Yoosefzadeh ([email protected])

zero-duration zero-resource dummy nodes that depict thestart and the end of the project, respectively. The objective isto minimize the project’s makespan.

There are two main approaches to solve the RCPSP. Exactmethods are mainly based on mathematical programming(e.g., [4] and [16]), dynamic programming (e.g., [14]). How-ever, for larger instances, these methods take an enormousamount of time and are not practically applicable. The sec-ond approach consists of heuristics: single-pass, multipassand sampling methods [7], genetic algorithms (e.g., [11] and[21]), simulated annealing (e.g., [12] and [17]), tabu search(e.g., [12] and [13]), the artificial immune system (e.g., [1]),or miscellaneous heuristics (e.g., [2] and [15]) are among theheuristic and metaheuristic methods used to solve the RCPSP.A schedule corresponds to a point s (with i-th component si ,the start time of activity i and s0 = 0, the start of the project),and it is said to be feasible if it is compatible with both theprecedence constraints and the resource constraints. Priorityrules are the main part of heuristics/metaheuristic methods(see e.g., [7]). They are also used by commercial projectscheduling software packages [5]. Priority rules are usuallyclassified in three groups: network-based rules (e.g., short-est processing time or SPT rule), critical path-based rules(e.g., earliest starting time or EST rule), and resource-based

© 2013 Wiley Periodicals, Inc.

Page 2: Multidirectional scheduling scheme in resource-constrained project schedulingproblem

Yoosefzadeh, Tareghian, and Farahi: Multidirectional Scheduling Scheme 45

rules (e.g., greatest resource demand rule) [6]. In spite ofthe considerable role priority rules play on the quality of thescheduling schemes, there are conflicting results on the pri-ority rules performance, as projects, resources, activities, andother characteristics vary. Many studies have been conductedto show that the performance of any priority rule depends onthe chosen objectives (see [10] and [19]).

Two types of schedule generation schemes have been pro-posed, namely the serial scheduling scheme (SSS) and theparallel scheduling scheme (PSS) [7]. Both SSS and PSSgenerate feasible schedules. For decades, many improve-ment procedures for such heuristics have been proposed. Forinstance, in 2000, Klein proposed bidirectional schedulingscheme (bidss) to improve the performance of single direc-tional scheduling schemes, namely forward and backwardscheduling schemes (see [6]). In 2005, Valls et al. showedthat a technique called justification can improve the solu-tion obtained by a schedule generator [20]. A schedule canbe left, right, or double justified. In left-justification, all theactivities of a schedule are pulled as far toward time zeroas possible, whereas in right-justification all the activitiesof a schedule are pushed as far toward an upper bound onthe project’s makespan. In double justification (DJ), initiallya right-justification is applied to the schedule followed bya left-justification. In 2010, Yoosefzadeh et al. proposed anew scheduling scheme, the so called tridirectional sched-uling scheme (trdss) that produces schedules with shortermakespans depending on the problems’ structure and alsothe priority rules used [22].

In this article, we propose an improved version of the trdss(tuned trdss) that outperforms the DJ of a schedule. Our analy-ses of the results confirm the superiority of the tuned trdssover the DJ technique. We also investigate the circumstancesunder which the trdss is more probable to generate scheduleswith shorter makespans. For this purpose, we propose a newcomplexity measure of resource requirements and their dis-tributions, namely total amount of overflows (TAO). In manyapplications, it is important to generate a schedule withinseconds, so it is not possible to employ a series of heuris-tics and select the best generated solution from among them.Hence, need for a simple predictor to guide the choice of theheuristic.

In devising resource measures for projects, usually twopoints are taken into consideration. First, such measuresshould reflect the density of the resources being used by theactivities [e.g., resource factor (RF)], and second they shouldmeasure the density of the coefficient matrix reflected by theavailability of resources [e.g., resource strength (RS)]. In thisarticle, we show that resource measures such as the RS do notreflect the true nature of the project’s complexity. Therefore,we introduce a new measure called TAO. Using the new mea-sure, we show that the more the total amount of the overflowsof an instance, the more probable it is to obtain a schedulewith shorter makespan using the trdss.

The rest of the article is structured as follows: In Section2, the bidss and the trdss are briefly described via a simpleexample. Based on the results obtained by our investigationson effects that the structure of the problem has on the qualityof the solutions, the trdss is modified to allow more activi-ties to be shifted. This improves the quality of the solutionsand also reduces the effect of the priority rules on the qualityof the solutions. The corresponding results together with theresults of the tuned trdss and also the results of the DJ tech-nique are discussed in this section. In Section 3, initially theneed for a new measure of resource requirements and theirdistributions is justified and then the new measure is intro-duced. Moreover, using the new measure, the circumstancesunder which the trdss is more probable to generate scheduleswith shorter makespans are elaborated. Finally, the summaryand conclusions are presented in Section 4.

2. MULTIDIRECTIONAL SCHEDULINGSCHEMES

In this section, we briefly describe the bidss, the trdss,the tuned version of the trdss, and finally the DJ technique.To facilitate understanding of the conceptual differencesbetween the bidss and the trdss, we solve a simple example byeach scheduling scheme. Note that in the implementation ofthe scheduling schemes with different directions, the PSS isused (for more details see e.g. [7]). In this study, we adopt thecomplete list of the static priority rules which are used in [22].

2.1. Bidirectional Scheduling Scheme

The bidss of Klein improves the quality of the solutions incomparison to the single-direction scheduling schemes-sidss(e.g., forward, backward) [6]. The bidss consists of two mainphases: the initialization phase and the interlinking phase. Inthe initialization phase, activities are scheduled in forwardand backward directions simultaneously. At any schedulingtime τf , forward subschedule consists of activities that haveall their predecessors completed provided no violations ofresource constraints occur. The backward subschedule, atthe scheduling time τb, consists of activities that have alltheir successors already planned without any violations ofresource constraints. Activities that are eligible in both sched-uling directions are scheduled either in forward or backwardsubschedule according to a predefined tie-breaking rule. Inthe interlinking phase, the backward subscheduled activitiesare left shifted to interlink the two subschedules and obtainthe complete schedule (see [6] for more details).

EXAMPLE 1: Consider the project of Fig. 1. The activ-ity numbers are denoted inside the nodes. The durationsand the requirements for the single renewable resource are

Naval Research Logistics DOI 10.1002/nav

Page 3: Multidirectional scheduling scheme in resource-constrained project schedulingproblem

46 Naval Research Logistics, Vol. 61 (2014)

Figure 1. Project network of Example 1.

denoted above and below the corresponding nodes, respec-tively (Activities 1 and 10 are dummies). The single resourceis available with a1 = 7 units per period. Figure 2 shows theschedule generated by the PSS using the latest starting time(LST) as the priority rule. The makespan of this scheduleis 20.

We now solve Example 1 by the bidss. Figure 3a showsthe forward and the backward subschedules generated by thebidss. The complete schedule is shown in Fig. 3b. To generatethe forward and the backward subschedules using the samenotation as [22], we have ESf

(τf = 0

) = {3, 5, 4, 2} andalso ESb (τb = 34) = {9, 8, 7}. In each iteration, an activityj ∈ ESf ∪ ESb is selected according to the value of its LSTand is scheduled in the direction for which it is available (i.e.,forward or backward). Those activities that are available inboth directions are scheduled according to a predefined tie-breaking rule. In other words, they are scheduled as forward iftheir starting time is nearer to the beginning of the project andthey are scheduled as backward otherwise. Activity 3 is for-ward scheduled, whereas Activity 9 is backward scheduled.Again Activity 5 is forward scheduled and Activity 8 is back-ward scheduled. As soon as Activity 4 is forward scheduled,the first iteration ends. Therefore, the scheduling times andalso the corresponding eligible sets need to be updated, henceESf

(τf = 4

) = {2, 6} and ESb (τb = 31) = {7}. In the next

Figure 2. Schedule obtained by the PSS.

Figure 3. (a) The forward and the backward subschedulesobtained by the bidss. (b) The complete schedule obtained by thebidss.

iteration, Activity 2 is forward scheduled, whereas Activity7 is backward scheduled. In the next iteration, Activity 6 isavailable in both directions. However, using the tie-breakingrule, it is forward scheduled (Fig. 3a). To obtain the com-plete schedule, the activities of the backward subscheduleare left shifted in the order of their starting times (Fig. 3b).The makespan of the complete schedule is 19.

2.2. Tridirectional Scheduling Scheme

In the trdss, activities are scheduled in three directions [22].As in the bidss, some activities are forward scheduled, andsome others are backward scheduled. However, activities thatare eligible to be scheduled in either forward or backwarddirection are now scheduled in midway. In the next stage,activities from the midway subschedule and the backwardsubschedule are considered for left shifting, respectively (see[22] for more details). To illustrate, we solve Example 1 bythe trdss using LST as the priority rule as follows:

To generate the forward, the midway, and the backwardsubschedules, we now have ESf

(τf = 0

) = {3, 5, 4, 2},ESm (τm = 0) = { }, and ESb (τb = 34) = {9, 8, 7}. In eachiteration, an activity j ∈ ESf ∪ESm∪ESb is selected accord-ing to the value of its LST and is scheduled in the direction forwhich it is available. Activity 3 is forward scheduled, whereasActivity 9 is backward scheduled. At the same schedulingtime, Activities 5 and 4 are forward scheduled and Activity

Naval Research Logistics DOI 10.1002/nav

Page 4: Multidirectional scheduling scheme in resource-constrained project schedulingproblem

Yoosefzadeh, Tareghian, and Farahi: Multidirectional Scheduling Scheme 47

Figure 4. (a) The forward, the midway, and the backward sub-schedules obtained by the trdss. (b) The complete schedule obtainedby the trdss.

8 is backward scheduled. In the next iteration, Activity 2 isforward scheduled. As a result Activities 6 and 7 become eli-gible in both directions, and as such are scheduled in midwaysubschedule (Fig. 4a). Now that all activities are scheduled intheir corresponding subschedules, we need to shift the activ-ities in the midway and in the backward subschedules to theleft, respectively. The complete schedule is shown in Fig. 4b.As it can be seen the makespan is now 17 (two units shorterthan the bidss). Incidentally, the schedule obtained by thetrdss is optimal.

PROPOSITION: Suppose that in the interlinking phaseof an x-directional scheduling scheme (x-dss) where x ≥ 2,as x increases, more activities are being shifted. Further-more, assume that in the interlinking phase by increasingthe number of activities that are left shifted, the project’smakespan is shortened. Then, the percentage of improvedmakespans using x-dss is more than the percentage ofimproved makespans using y-dss (x > y) as the size of theproject (number of activities) increases.

PROOF: See Appendix A. �

OBSERVATION 1: Any technique used in a schedulinggeneration scheme that allows more activities to be shifted(justified) prepares the ground for improving the makespanof the schedule. This is more evident in the trdss than thebidss (see Section 3).

2.3. Tuned Trdss

Before examining the circumstances under which thetrdss is more probable to generate schedules with shortermakespans, we modify the trdss to enhance its performance.

Based on Observation 1 and in order to allow moreactivities of the schedule to be shifted, the trdss is tunedsuch that more activities are scheduled in the midwayand/or in the backward subschedules. For ease of refer-ence, we call this version of the trdss, tuned trdss. Inthe tuned trdss, we multiply the priority values calculatedfor each activity by a suitable coefficient. To illustrate,let Rforward = (v (1) , v (2) , . . . , v (N)) and Rbackward =(v′ (1) , v′ (2) , . . . , v′ (N)

)contain the priority values calcu-

lated for each activity in the forward and in the backwardsubschedules, respectively (N is the number of project’sactivities). Then by applying α × Rbackward (α > 0), one cancontrol (increase or decrease) the number of activities thatare eventually shifted to the left in the interlinking phase. Toincrease the priority of the backward eligible activities, selectα < 1 when the priority rules with minimum values (e.g., SPTrule) are used, and select α > 1 when the priority rules withmaximum values (e.g., LPT rule) are used.

In Tables 1 and 2, we increase the number of activitiesthat are being shifted to the left subschedule using differ-ent values of α > 0. Table 1 displays the relation between thenumber of left shifted activities and the performance of thetuned trdss versus the trdss on the J90 and the J120 sets ofthe Kolisch’s benchmark instances. Our analysis shows thatfor α ≥ 1.8 or α ≤ 0.2, the percentages of the left shiftedactivities in the interlinking phase are approximately thesame.

Under the SPT rule for instance, when the percentage of theleft shifted activities in the interlinking phase varies between(100 − 37.5) = 62.5% and (100 − 1.3) = 98.7%, the percent-age of optimal solutions increases between 503.1 and 1110%and the percentage of best solutions increases between 256.3and 512.3%, respectively.

The relative deviations of the solutions obtained by thetrdss and the tuned trdss from the optimal solutions and thebest solutions are given in Table 2. The results show thatincreasing the number of left shifted activities is beneficial,that is, it reduces the relative deviations from both the numberof optimal solution and also the best solutions. For instance,as the number of left shifted activities vary between 62.5 and98.7% under the SPT rule, the relative deviations from theoptimal solution and the best solutions of the trdss versusthe tuned trdss vary between 20.9 and 70.4% and 10.2 and44.9%, respectively.

Hence, as the number of left shifted activities in the inter-linking phase increases, the performance of the tuned trdssimproves. These results are in line with Observation 1. It isworth noting that the separation of activities into different

Naval Research Logistics DOI 10.1002/nav

Page 5: Multidirectional scheduling scheme in resource-constrained project schedulingproblem

48 Naval Research Logistics, Vol. 61 (2014)

Table 1. Performance of the tuned trdss versus the trdss (number of optimal and best solutions).

Priority rules α A B C α A B C α A B C

LPT 1.2 38.9 +437.2 +222.7 1.4 11.8 +869.1 +394.8 ≥1.8 2.4 +1020 +404.1SPT 0.8 37.5 +503.1 +256.3 0.6 13 +891.6 +401.0 ≤0.2 1.3 +1110 +512.3MIS 1.2 41.6 +118.9 +95.7 1.4 19.1 +321.4 +157.3 ≥1.8 1 +335.7 +159.2MTS 1.2 39.8 +85.7 +40.5 1.4 22.4 +146.4 +84.9 ≥1.8 12.7 +192.9 +149.6GRPW 1.2 32.7 +47.4 +17.7 1.4 28 +152.6 +38.8 ≥1.8 7.1 +242.1 +34.0GRPW* 1.2 40.7 +23.5 +28.9 1.4 23 +79.4 +65.7 ≥1.8 9.8 +141.2 +137.7EST 0.8 36.7 +66.7 +61.5 0.6 20.2 +213.3 +111.7 ≤0.2 7.4 +333.3 +122.6EFT 0.8 47.8 +15.4 +14.9 0.6 39.1 +92.3 +73.8 ≤0.2 3.4 +407.7 +138.8LST 0.8 43.2 +32.4 +17.3 0.6 18.8 +97.1 +86.4 ≤0.2 2.4 +141.2 +150.0LFT 0.8 42.6 +14.3 +12.7 0.6 17.2 +114.3 +102.1 ≤0.2 1.8 +148.6 +178.8MSLK 0.8 32.7 +21.6 +21.0 0.6 16.1 +89.2 +45.2 ≤0.2 2.5 +100.0 +31.5GRD 1.2 35.3 +91.7 +27.8 1.4 29.3 +108.3 +41.2 ≥1.8 3.1 +241.2 +65.0WRUP 1.2 32.4 +101.3 +41.2 1.4 19.7 +233.7 +55.9 ≥1.8 0.8 +353.5 +81.9

A: % of activities in the forward subschedule (those activities that are not shifted in the tuned trdss).B: % improvement in number of optimal solutions that is obtained by the tuned trdss in comparison to the trdss.C: % improvement in number of best solutions that is obtained by the tuned trdss in comparison to the trdss.

subschedules is the other important factor that enhances thequality of the solutions (see [22] for more details).

The results of Tables 1 and 2 show that the α’s value needsto be selected as extreme as possible.

2.4. Double Justification Technique

Since the justification technique is applied in many of thestate-of-the-art algorithms nowadays, in this section we studythe performance of the tuned trdss and the so-called DJ ofValls et al. [20]. We show that the tuned trdss outperformsDJ technique. The DJ technique essentially consists of twostages. In the first, all the activities of a feasible schedule areshifted to the right to obtain a feasible backward schedule. Inthe second stage, new forward feasible schedule is obtainedagain by shifting all the activities to the left (see [20] for moredetails).

In Table 3, Column A denotes the percentage of activitiesthat remain in the left subschedule (forward subschedule) inthe tuned trdss (α’s are the same as column 10 of Table 1).In other words, these are the activities that are not shifted atall. Column B and Column C denote the percentage improve-ment of the tuned trdss over the DJ with respect to the numberof instances solved to optimality and number of best solu-tions obtained, respectively. With reference to Table 3 andconsidering MTS as the priority rule, when nearly 12.7% ofactivities remain in the forward subschedule, the tuned trdsssolves 24.2% more instances to optimality in comparison tothe DJ technique. However, under the same circumstances,the number of instances that the tuned trdss solves and obtainsbetter solutions than the DJ technique improves by 185.6%.Finally, Columns D and E of Table 3 display the results of ouranalysis regarding the instances that neither the tuned trdss

Table 2. The relative deviations of the results in Table 1.

Priority rules α A D E α A D E α A D E

LPT 1.2 38.9 −19.4 −8.8 1.4 11.8 −48.6 −24.7 ≥1.8 2.4 −67.5 −35.4SPT 0.8 37.5 −20.9 −10.2 0.6 13 −55.4 −30.7 ≤0.2 1.3 −70.4 −44.9MIS 1.2 41.6 −25.3 −7.6 1.4 19.1 −54.0 −17.3 ≥1.8 2 −55.8 −19.8MTS 1.2 39.8 −18.9 −6.1 1.4 22.4 −41.2 −13.2 ≥1.8 12.7 −52.2 −17.8GRPW 1.2 32.7 −16.9 −4.8 1.4 28 −32.4 −9.2 ≥1.8 7.1 −45.0 −11.2GRPW* 1.2 40.7 −6.2 −2.6 1.4 23 −31.1 −7.7 ≥1.8 9.8 −50.0 −15.1EST 0.8 36.7 −27.2 −8.7 0.6 20.2 −52.6 −15.3 ≤0.2 7.4 −55.3 −16.2EFT 0.8 47.8 −6.3 −2.2 0.6 39.1 −29.6 −9.0 ≤0.2 3.4 −60.1 −18.5LST 0.8 43.2 −9.5 −2.8 0.6 18.8 −34.3 −11.3 ≤0.2 2.4 −45.6 −18.0LFT 0.8 42.6 −6.8 −1.5 0.6 17.2 −41.3 −11.1 ≤0.2 1.8 −51.8 −18.9MSLK 0.8 32.7 −13.8 −4.3 0.6 16.1 −35.5 −8.7 ≤0.2 2.5 −41.0 −8.8GRD 1.2 35.3 −21.2 −5.6 1.4 29.3 −29.5 −11.4 ≥1.8 3.1 −50.1 −17.1WRUP 1.2 32.4 −19.0 −5.8 1.4 19.7 −31.3 −16.0 ≥1.8 1.8 −62.6 −22.7

A: % of activities in the forward subschedule of the tuned trdss (those activities that are not shifted).D: % relative deviations from the optimal solutions.E: % relative deviations from the best solutions.

Naval Research Logistics DOI 10.1002/nav

Page 6: Multidirectional scheduling scheme in resource-constrained project schedulingproblem

Yoosefzadeh, Tareghian, and Farahi: Multidirectional Scheduling Scheme 49

Table 3. Performance of the tuned trdss versus the DJ technique.

Priority rules α A B C D E

LPT ≥1.8 2.4 +5.1 +78.9 −7.8 −17.1SPT ≤0.2 1.3 +3.2 +85.6 −14.0 −13.2MIS ≥1.8 2 +4.7 +47.5 −0.3 −6.6MTS ≥1.8 12.7 +24.2 +185.6 −31.3 −25.9GRPW ≥1.8 7.1 +3.4 +99.4 −2.2 −12.2GRPW* ≥1.8 9.8 +22.4 +173 −32.7 −24.5EST ≤0.2 7.4 +3.2 +113.3 −8.0 −16.2EFT ≤0.2 3.4 +8.2 +135.3 −18.7 −18.4LST ≤0.2 2.4 +22.4 +194.8 −33.5 −27.2LFT ≤0.2 1.8 +27.9 +181.8 −38.6 −28.3MSLK ≤0.2 2.5 +21.3 +183.5 −33.3 −20.1GRD ≥1.8 3.1 0 +52.5 −2.2 −6.6WRUP ≥1.8 1.8 +4.8 +196.0 −22.1 −26.2

A: % of activities in the forward subschedule of the tuned trdss.B: % improvement in number of optimal solutions that is obtainedby the tuned trdss vs. the DJ technique.C: % improvement in number of best solutions that is obtained bythe tuned trdss vs. the DJ technique.D: % relative deviations from the optimal solutions.E: % relative deviations from the best solutions.

nor the DJ technique have solved to optimality. First, we aver-age the deviations of the solutions obtained by the tuned trdssand the DJ technique from the optimal solutions. Second, wecalculate the percentage of relative deviations of the tunedtrdss with respect to the DJ technique. Column D of Table 3depicts the corresponding results. For instance, with respectto the LFT rule, 38.6% of instances solved by the tuned trdsshave lower deviations from the optimal solutions than the DJtechnique. Column E shows similar analysis but with respectto the best solutions obtained. The results indicate that evenfor the instances that were not solved to optimality, the tunedtrdss produces lower deviations from the optimal and the bestsolutions in comparison to the DJ technique.

Incidentally, we solved the project of Fig. 1 by the tunedtrdss. We observed that for values of α ≤ 1, the perfor-mance of the tuned trdss was the same as the trdss, that is,the makespan was 17. However, when the same project wassolved by the DJ technique, the makespan increased to 19.

OBSERVATION 2: By properly tuning the trdss, it is suf-ficient to apply only one justification to some of the activitiesinstead of applying DJ to all the activities and the dependencyof the scheduling schemes on the priority rules is decreased.

3. COMPLEXITY MEASURES OF RESOURCEREQUIREMENTS

In this section, we initially justify the need for a new mea-sure of resource requirements and their distributions and thenintroduce the new measure that we call TAO (see Section

3.3.2). To this end, we base our investigations on two dif-ferent sets of benchmark instances, that is, the Kolisch andthe Alvarez-Tamarit benchmarks that are compiled in [8].Regarding our investigations, both benchmarks’ instancesproduce similar results. For the sake of brevity, we onlypresent the results obtained by the first benchmark instances.However, in Appendix B, some results obtained using thesecond benchmark instances are also presented and brieflydiscussed. In the sequel, we first present our results on theperformance of the trdss and show that even for instanceswith larger number of activities, the trdss generates sched-ules with shorter makespans when compared to the schedulesgenerated by the bidss. This is in line with the conclusionsreached by Yoosefzadeh et al. in [22]. We then use the newmeasure to study the behavior of the solutions obtained bythe trdss.

3.1. Quality of the Solutions

Let us examine the performance of the bidss and the trdsson more extensive benchmark problems than used in [22]. Weuse the bidss and the trdss to solve the J90 and the J120 setsof the first benchmark problems. As in [22], the number ofinstances solved to optimality, the number of best instances,and the average relative deviation from the optimal solu-tion and the best solutions obtained are the four comparisonmeasures. Columns A and B of Tables 4 and 5 display the per-centage of relative improvement of the trdss over the bidss.These are computed as

(opttrdss − optbidss

) × 100/optimaliand (besttrdss−bestbidss) × 100/bestbidss respectively, whereoptx and bestx indicate the number of optimal and best solu-tions obtained by the x (x∈trdss, bidss), respectively. In addi-tion, optimali indicates the number of optimal solutions thatexist for the instances with i activities (i ∈ {J90, J120}). Therelated results are given in Tables 4 and 5.

Let’s take a closer look at for example, Table 4. With theEST rule as the priority rule, the trdss solves 2.94% moreinstances to optimality when compared to the bidss. Thisvalue increases to 6.62% under the WRUP rule as the prior-ity rule. The percentage of relative improvement with respectto the number of best instances shows similar trend (see Col-umn B). Under the GRPW rule, the number of best solutionsobtained by the trdss is 34.3% more than the bidss. Note thatwhen the WRUP rule is used as the priority rule, this valueimproves to 45.9%. Table 5 shows similar results for the J90.

Columns C and D of Tables 4 and 5 depict the average devi-ations from the optimal solutions and also the best solutionsfor the J120 and the J90, respectively. With reference to Table4, the range of average deviations from the optimal and thebest solutions is, respectively, 0.12 and 13.37% (see ColumnC) and 0.18 and 10.91% (see Column D) in favor of the trdss.The displayed results in Columns C and D of Tables 4 and 5show that irrespective of the priority rule used, the solutions

Naval Research Logistics DOI 10.1002/nav

Page 7: Multidirectional scheduling scheme in resource-constrained project schedulingproblem

50 Naval Research Logistics, Vol. 61 (2014)

Table 4. Performance of the trdss versus the bidss for the J120.

Priority rules A B C D

LPT 0 +5.8 –0.12 –0.34SPT 0 +0.5 –4.4 –0.18MIS +2.2 +16.1 –6.87 –3.97MTS +0.74 +16.8 –2.1 –3.65GRPW +0.74 +34.3 –3.72 –7.43GRPW* 0 +16.4 –5.19 –5.35EST +2.94 +33.9 –3.64 –6.35EFT +1.47 +30.2 –3.32 –5.27LST +3.68 +24.7 –4.32 –8.38LFT +2.94 +22.8 –9.29 –7.52MSLK +2.94 +27 –8.69 –7.27GRD 0 +32.5 –2.82 –5.67WRUP +6.62 +45.9 –13.37 –10.91

A: % improvement in number of optimal solutions that is obtainedby the trdss versus the bidss.B: % improvement in number of best solutions that is obtained bythe trdss versus the bidss.C: % relative deviations from the optimal solutions that is obtainedby the trdss versus the bidss.D: % relative deviations from the best solutions that is obtained bythe trdss versus the bidss.

obtained by the trdss have always lower average deviationsfrom the optimal and the best solutions, respectively.

Comparing the given results in Columns C and D Tables 4and 5, it is observed that as the size of the project (number ofactivities) is increased, the solutions’ quality is also improvedas measured by their average deviations from the optimal andthe best solutions, respectively. Note that the total number of

Table 5. Performance of the trdss versus the bidss for the J90.

Priority rules A B C D

LPT +0.57 +6.2 −1.11 −1.66SPT +0.28 +0.6 −0.69 −0.29MIS +1.7 +4.6 −2.74 −2.37MTS +2.82 +9.8 −6.70 −5.41GRPW +0.28 +14.8 −9.37 −8.01GRPW* +4.8 +12.1 −10.44 −7.15EST +1.7 +15.8 −6.84 −6.4EFT +1.7 +12.7 −4.81 −3.88LST +2.5 +10.8 −6.30 −8.63LFT +0.28 +3.5 −0.27 −0.49MSLK +2.5 +8.8 −1.31 −5.29GRD +1.13 +14.8 −3.98 −6.08WRUP +1.98 +12.5 −2.96 −7.13

A: % improvement in number of optimal solutions that is obtainedby the trdss versus the bidssB: % improvement in number of best solutions that is obtained bythe trdss versus the bidss.C: % relative deviations from the optimal solutions that is obtainedby the trdss versus the bidss.D: % relative deviations from the best solutions that is obtained bythe trdss versus the bidss.

Figure 5. The value of V1 with respect to different priority rules.[Color figure can be viewed in the online issue, which is availableat wileyonlinelibrary.com.]

optimal solutions for the benchmarks of the J90 and the J120are 354 and 136 instances, respectively.

We now address the issue regarding the computational effi-ciency of the bidss and the trdss. To study the computationalrequirements of the trdss over the bidss, we analyze the ele-mentary operations performed and also the time required bythe trdss and by the bidss to solve the complete sets of J60,J90, and J120 of Kolisch’s benchmark under different pri-ority rules. For different priority rules, the vertical axis ofFig. 5 corresponds to V1, the ratio of the number of elemen-tary operations used by the trdss to the number of elementaryoperations used by the bidss to solve the complete sets of J60,J90, and J120, respectively. Our analysis shows that irrespec-tive of the priority rule used, the trdss requires nearly 26% (onaverage) less elementary operations than the bidss (V1 aver-aged over all the priority rules yields 0.74). Figure 6 showsV2, the ratio of the computational time required by the trdssto the time required by the bidss to solve the complete setsof J60, J90, and J120 of Kolisch’s benchmark under differentpriority rules.

It is evident that irrespective of the priority rule used, thetrdss requires nearly 38% (on average) less computationaltime than the bidss (V2 averaged over all the priority rulesyields 0.62).

On the basis of the results presented in Tables 4 and 5, it isinteresting to study the behavior of the solutions obtained byeach of the scheduling schemes more closely to determine thecircumstances under which obtaining better schedules (withshorter makespans) with the trdss is more assured. To thisend, a comprehensive study is carried out and is explained inthe following sections.

Figure 6. The value of V2 with respect to different priority rules.[Color figure can be viewed in the online issue, which is availableat wileyonlinelibrary.com.]

Naval Research Logistics DOI 10.1002/nav

Page 8: Multidirectional scheduling scheme in resource-constrained project schedulingproblem

Yoosefzadeh, Tareghian, and Farahi: Multidirectional Scheduling Scheme 51

Table 6. The effect of the number of resource peaks and the RS’s levels on the solutions’ qulaity.

Instance name RS bidss trdss No. of peaks Instance name RS bidss trdss No. of peaks

J9013-7 0.2 141 141 1 J902-5 0.5 100 100 1J909-1 0.2 121 121 1 J906-6 0.5 100 100 1J905-6 0.2 95 94 2 J906-8 0.5 75 72 2J9021-4 0.2 119 118 3 J9030-1 0.5 102 102 3J9037-7 0.2 145 140 5 J9034-1 0.5 86 84 3J901-9 0.2 80 83 1 J9038-2 0.5 81 80 5J1201-4 0.2 108 108 4 J1204-1 0.5 95 94 3J12058-5 0.2 131 133 1 J1205-10 0.5 92 92 2J12042-3 0.2 116 115 2 J12025-5 0.5 100 100 1J12057-5 0.2 202 200 5 J12025-6 0.5 96 94 4J1202-2 0.2 82 82 3 J12040-5 0.5 103 104 1

3.2. Solutions Behavior

As the results of Tables 4 and 5 indicate, the rate of theimprovements in the solutions’ quality yielded by the bidssand the trdss is variable. This is due to some influential factorsthat affect the performance of these scheduling schemes. Westudy the behavior of the solutions’ quality when affected bysome of these factors. A number of studies have shown thatthe density of the coefficient matrix reflected by the availabil-ity of resources measured by the RS and average number ofdifferent resource types required by the activities measuredby the RF are among the most important parameters that con-trol the complexity of an instance of the RCPSP with respectto resources and hence affect the quality of the solutions (seee.g. [3, 9, 13, and 17]). In addition, we introduce a new mea-sure of resource requirements that plays an important role inthe study of the solutions’ behavior.

3.3. Influence of the Resource Parameter

Complexity measures affect the performance of the sched-uling schemes (see e.g., [7] and [19]). In this article, weare looking for a resource measure that expresses the rela-tion between the resource demand of the activities and theresource availability and also evaluates the longitudinal dis-tribution of resource requirements across the problem’s dura-tion and can guide us to decide under what circumstances, it ismore probable to obtain better schedules with the trdss insteadof the bidss. Average resource loading factor (ARLF ∈ R)

is a measure of resource usage distribution. ARLF identifieswhether the bulk of a project’s total resource requirements arein the front or in the back half of its critical path duration andalso identifies the relative size of the disparity. Projects withARLF < 0 are front-loaded in their resource requirements andprojects with ARLF > 0 are back-loaded. For the project withARLF ≈ 0, the resource distributions in the front or back halfof its critical path duration are approximately the same [18].But ARLF does not reflect whether the restricted resourceavailability imposes a constraint at all. In other words, the

total resource demand of activities that are being performedconcurrently may not exceed the availability of resources. Inaddition, ARLF only compares the bulk of the resource usagein the first half with the second half of the project’s life span.Hence, it does not serve our purpose. We next consider RS asdefined in (1); a measure of project complexity with regardsto the availability of resources (for more details, see [6, 7and 9]):

RSr = ar − umaxr

kpeakr − umax

r

; r = 1, . . . , |R| (1)

where umaxr and k

peakr (r = 1, . . . , |R|) are defined as follows:

umaxr = Max

{ujr |j ∈ J

},

kpeakr = Max

⎧⎨⎩

∑j∈A(t)

ujr |t = 0, . . . , LB − 1

⎫⎬⎭

where

A (t) ={j ∈ J

∣∣∣ESTj ≤ t < EFTj

}.

(kpeakr is maximum requirement of resource r, when all the

activities are scheduled to start at their ESTs) and LB indi-cates the makespan of the early schedule, that is, each activitystarts at its earliest staring time.

It is clear that if ∃r ∈ R; ar < umaxr , then no feasible

schedule exists. In cases where ar ≥ kpeakr in respect of all

resource types, the early schedule is optimal.Our empirical studies show that RS when is used solely

does not serve our purpose. Table 6 shows the makespansof different benchmark instances when solved by the bidssand the trdss. It is evident that when the level of RS isfixed, no regular trend is observed in the performance of thescheduling schemes. For instance, with respect to J12042-3,when RS = 0.2, higher directional scheduling schemes yieldshorter makespans. However, with respect to J12058-5, whenRS = 0.2, the situation is reversed.

Naval Research Logistics DOI 10.1002/nav

Page 9: Multidirectional scheduling scheme in resource-constrained project schedulingproblem

52 Naval Research Logistics, Vol. 61 (2014)

Table 7. Effect of the RS’s levels on the number and the amount of overflows.

J90 J120

First benchmark RS: 0.2 RS: 0.5 RS: 0.7 RS: 0.2 RS: 0.5

Min ψ 48 17 6 48 23Max ψ 287 163 72 369 248Min η 3 0.92 0.3 3.5 1.4Max η 95.7 25.1 12.6 98.4 53.7

Considering (1), it is clear that RS depends among oth-ers on the value of resource peak (i.e., k

peakr ) and not on the

number of resource peaks during the life span of the projectinstance. In other words, two instances with the same levelof RS may not necessarily have the same number of resourcepeaks. Columns 5 and 10 of Table 6 show the number ofresource peaks in each instance. It can be seen that for thesame level of RS, problems may have different number ofresource peaks. For instance, J9037-7 has five resource peaks,whereas J9013-7 has only one resource peak.

Could not the number of resource peaks which is some-what reflected in our proposed resource measure, that is, TAO(see Definition 1 and Section 3.3.2) have an effect on theperformance of the scheduling schemes? And if so, couldit serve our purpose? To answer these questions, we con-sider resource peaks and some of their characteristics in moredetails. We first give a formal definition of a related conceptcalled resource overflow.

DEFINITION 1: Let ESTj

(EFTj

)be the earliest start-

ing (finishing) time of activity j. For any resource r ∈R, let ωr(t) := ar − ∑

j∈A(t) ujr , in which A (t) ={i ∈ J |ESTi ≤ t < EFTi}. When ωr(t) < 0, we say thatan overflow with respect to resource r has occurred at time t.

It is clear that in an instance, if the number of over-flows is greater than zero, then the set of resourcepeaks is a subset of overflows set, because k

peakr =

max {−ωr(t)|t = 0, . . . , LB − 1} where r ∈ R and LB isthe lower bound for the instance.

Using Definition 1, we will investigate the effect of thetotal amount of resource overflows (see Section 3.3.2) on theperformance of the scheduling schemes. To this end, we beginwith a formal definition of the number of overflows.

3.3.1. Number of Overflows

By Definition 1, the number of overflows of an instance,ψ can be easily determined by:

ψ =∑r∈R

LB−1∑t=0

χr (t) (2)

where

χr (t) ={

1 ωr(t) < 0

0 o.w.

Table 7 shows that the J90 and the J120 instances havea variable number of overflows for fixed levels of RS. Thenumber of overflows ψ , is obtained from the early sched-ule of each instance. We consider three levels of RS = 0.2,RS = 0.5, and RS = 0.7 for the J90 and two levels of RS = 0.2and RS = 0.5 for the J120. As it can be seen, for the J90, thevalue of ψ varies in the interval [48, 287] for RS = 0.2; itvaries in the interval [17, 163] for RS = 0.5; and it varies inthe interval [6, 72] for RS = 0.7. Similarly, for the J120, thevalue of ψ varies in the intervals [48, 369] and [23, 248] forRS = 0.2 and RS = 0.5, respectively. The data show an inverserelation between the level of RS and the minimum and themaximum value of ψ . As the level of RS decreases, the min-imum and the maximum number of overflows increase. Inother words, as expected, the more complex the problem is(i.e., as RS → 0), the higher is the value of the number ofoverflows.

3.3.2. Total Amount of Overflows

Using Definition 1, the TAO for any instance is calculatedas

η =∑r∈R

LB−1∑t=0

ω+r (t) /LB (3)

where

ωr+ (t) =

{−ωr (t) ωr (t) < 0

0 o.w..

And LB is the makespan of the early schedule for theinstance.

As an example, consider the characteristics of the net-work that is depicted in Fig. 1; that is, RS = 0.2, umax

1 = 5,k

peakr = 13, LB = 13, and a1 = 7, hence by (3) we have

η = 1.31.

Naval Research Logistics DOI 10.1002/nav

Page 10: Multidirectional scheduling scheme in resource-constrained project schedulingproblem

Yoosefzadeh, Tareghian, and Farahi: Multidirectional Scheduling Scheme 53

Table 8. Different values of η for the same value ofψ .

Instance ψ η Instance ψ η

J902-3 31 3.0 J1203-4 48 3.6J902-4 1.3 J1204-10 5.3J9011-1 48 3.0 J1201-2 109 12.3J9011-3 6.25 J1201-4 14.65J9038-2 56 4.9 J12027-1 134 35.6J9038-4 3.8 J12028-4 14.3J9041-7 236 27.8 J12033-2 174 27.5J9041-8 30.7 J12033-8 35.4J904-5 89 22 J12026-3 240 32.3J9022-8 5.3 J12026-8 24.2

It is interesting to note that even when the values of ψ arethe same, instances may have different η′s values. With ref-erence to Table 8, it can be seen that for example, instancesJ12033-2 and J12033-8 both have ψ = 174, whereas η = 27.5for J12033-2 and η = 35.4 for J12033-8.

Now, we study the relation between the TAO, η (and alsothe number of overflows, ψ) and the level of RS and showthat it is not easy to deduce one from the other.

From (1) and letting r ∈ R, we have:

kpeakr = umax

r + ar − umaxr

RSr

If ηr = ∑LB−1t=0 ω+

r (t) /LB is the TAO with respect toresource r, then there is a coefficient like cr subject to:

ηr = kpeakr × cr =

(umax

r + ar − umaxr

RSr

)× cr

Let ϕ1 (r) = cr .umaxr and ϕ2 (r) = cr .ar then

ηr =(

ϕ1 (r) + ϕ2 (r) − ϕ1 (r)

RSr

)(4)

And there is a coefficient like c′r subject to,

ψr = c′r × ηr ⇒ ψr = c′

r ×(

ϕ1 (r) + ϕ2 (r) − ϕ1 (r)

RSr

)(5)

where ψr = ∑LB−1t=0 χr (t) is the number of overflows with

respect to resource r.From (4) and (5), it is evident that ηr and ψr are a function

of RSr and also there is a somewhat inverse relation betweenthem and the value of RSr . This relation is linear only whenϕ1(r), ϕ2(r), and c′

r are constant. This inverse relation is alsodepicted in Table 7; where for J90 or J120 instances, as RS→ 0, the values of ψ and also the values of η are increased.For example, in J90 of Table 7, the values of η varies in theintervals [0.26, 12.61], [0.92, 25.1], and [3.01, 95.66], forRS = 0.7, RS = 0.5, and RS = 0.2, respectively.

Figure 7. Effect of the levels of TAO on the J90 with RS = 0.2,RS = 0.5, and RS = 0.7. [Color figure can be viewed in the onlineissue, which is available at wileyonlinelibrary.com.]

The effect of the TAO on the solutions’ quality (the proba-bility of improvement, i.e., generating schedules with shortermakespans) with respect to the J90 and the J120 instanceswhen solved by the bidss (dashed lines) and the trdss (solidlines) is displayed in Figs. 7 and 8, respectively. Note that inFig. 7, the level of RS varies from 0.2 to 0.7 and in Fig. 8 thelevel of RS varies from 0.2 to 0.5.

For each resource type r ∈ R, let

η′r := ηr/

(kpeakr − ar

) ⇒ η′r ∈ [0, 1]

Therefore, the value of TAO for the instance p is obtainedas follows:

ηp = 1

|R|∑r∈R

η′r (6)

We divide the possible domain of the TAO’s values intofour intervals as follows:

Figure 8. Effect of the levels of TAO on the J120 with RS = 0.2and RS = 0.5. [Color figure can be viewed in the online issue, whichis available at wileyonlinelibrary.com.]

Naval Research Logistics DOI 10.1002/nav

Page 11: Multidirectional scheduling scheme in resource-constrained project schedulingproblem

54 Naval Research Logistics, Vol. 61 (2014)

TAO1 = {p ∈ P |0 < ηp < 0.35

}TAO2 = {

p ∈ P |0.35 ≤ ηp < 0.6}

TAO3 = {p ∈ P |0.6 ≤ ηp < 0.8

}TAO4 = {

p ∈ P |0.8 ≤ ηp ≤ 1.0}

Considering Figs. 7 and 8, the following observations arenoted:

• As the level of TAO decreases, the performancecurves (with the same level of RS) converge tozero, meaning that both scheduling schemes performequally well. Note that for the instances where theTAO is equal to zero (i.e., η = 0), there is no differ-ence between the performance of the bidss and thetrdss, since when η = 0, then we have:

∀r , ∀t ; ωr(t) = ar −∑

j∈A(t)

ujr ≥ 0 ⇒ ∀rar ≥ kpeakr

that is, there is no resource limitation and both sched-uling schemes generate active schedules. Hence, thescheduling schemes perform equally well and theearly schedule is optimal.

• The performance curves of the two schedulingschemes diverge as the level of TAO increases foreach level of RS. For instance, for the first level ofTAO, that is, TAO1, when RS = 0.2, the vertical dif-ference between the two curves for the J90 is 0.02and for the J120 is 0.18. However, for the forth levelof TAO, that is, TAO4, when RS = 0.2, the differencebetween the two curves for the J90 is 0.31and for theJ120 is 0.35.

4. SUMMARY AND CONCLUSIONS

In many applications, it is important to generate a sched-ule within seconds, so it is not possible to employ a series ofheuristics and select the best generated solution from amongthem. Hence, needs for a simple predictor to guide the choiceof the heuristic. To this end, we presented a variant of thetrdss called tuned trdss and reported on an extensive numeri-cal study designed to assess its performance. We also showedthat the tuned trdss outperforms the DJ technique. Moreover,we introduced a new complexity measure of resource require-ments and their distributions, called TAO. We used this newmeasure to predict when the trdss is likely to outperformthe bidss. The availability of such a measure is important,because in some applications with hundreds of activities asolution needs to be found within a second, with no timeto carry out various schemes. We observed that there is asomewhat inverse relation between the values of TAO andthe RS’s values. We showed that when the level of TAO is

Figure 9. Effect of the levels of TAO on the performance of thetrdss and the bidss.

increased, it is more probable to obtain a schedule with shortermakespan with the trdss. We also observed that as the levelof TAO decreases, both scheduling schemes perform equallywell (irrespective of the level of RS). This is more evident ininstances with the level of RS ≥ 0.7. Therefore, at such cir-cumstances, one can either use the bidss or the trdss. Finally,our analyses on the computational requirements of the trdssshowed that the trdss is computationally more efficient thanthe bidss.

APPENDIX A

PROOF OF PROPOSITION 1: Suppose that the priority rule when usedin a scheduling scheme, divides the activities of the project P as follows:

Percentages of the activities in the forward and the other subschedules ina w-dss are denoted by % Actf w and % Actrw , respectively. Assume x > y,therefore for x-dss and y-dss we have

%Actry < %Actrx . (7)

Suppose that Pi and Pj are two projects with

|Pi | < |Pj | (8)

The notation |P | indicates the size of project P. Define Ki and Kj asfollows:

Ki := %Actrx × |Pi | − %Actry × |Pi |Kj := %Actrx × |Pj | − %Actry × |Pj |.

Therefore,

Kj − Ki = %Actrx × (|Pj | − |Pi |) − %Actry × (|Pj | − |Pi |

)= (|Pj | − |Pi |

) × (%Actrx − %Actry

).

(9)

Now by (7) and (8), from (9) we have

Kj − Ki > 0 ⇒ Kj > Ki ,

that is, difference between the shifted activities in x-dss and y-dss increasesif the size of the project increase, thus by considering the conditions of theproposition and also the definitions of Kiand Kj , the percentage of improved

Naval Research Logistics DOI 10.1002/nav

Page 12: Multidirectional scheduling scheme in resource-constrained project schedulingproblem

Yoosefzadeh, Tareghian, and Farahi: Multidirectional Scheduling Scheme 55

makespans in x-dss in comparison to y-dss (where x > y) increases, if the sizeof the project increases. �

APPENDIX B

In the following, we present a small sample of the results obtained when weapplied our proposed scheduling scheme (the trdss) to the Alvarez-Tamarit’sbenchmark instances (second benchmark). In this benchmark, the instancesare more constrained with respect to resources. However, the results obtainedare similar to the results of the Kolisch’s benchmarks. For the sake of brevity,we only present the results related to the effect of the level of TAO.

We group the instances with 103 activities into four TAO levels as before(see Section 3.3.2). With reference to Fig. 9, it can be seen that similar tothe Kolisch’s instances, as the level of TAO increases, the probability of thetrdss performing better than the bidss improves.

REFERENCES

[1] R. Agarwal, M.K. Tiwari, and S.K. Mukherjee, Artificialimmune system based approach for solving resource con-straint project scheduling problem, Int J Adv Manuf Technol34 (2007), 584–593.

[2] R. Akbari, V. Zeighami, and K. Ziarati, Artificial Bee colonyfor resource constrained project scheduling problem, Int J IndEng Comput 2 (2011), 45–60.

[3] J. Blazewicz, J.K. Lenstra, and A.H.G. Rinnooy Kan, Sched-uling subject to resource constraints: Classification and com-plexity, Discrete Appl Math 5 (1983), 11–24.

[4] J. Damay, A. Quilliot, and E. Sanlaville, Linear program-ming based algorithms for pre-emptive and non-pre-emptiveRCPSP, Eur J Oper Res 182 (2007), 1012–1022.

[5] W. S. Herroelen, Project scheduling: Theory and practice, ProdOper Manag 14 (2005), 413–432.

[6] R. Klein, Bidirectional planning: Improving priority rule-based heuristics for scheduling resource constrained projects,Eur J Oper Res 127 (2000), 619–638.

[7] R. Kolisch, Serial and parallel resource constrained projectscheduling methods revisited: Theory and computation, Eur JOper Res 90 (1996), 320–333.

[8] R. Kolisch, Library for project scheduling problems, Availableat: http://www.om-db.wi.tum.de/psplib/main.html.

[9] R. Kolisch, A. Sprecher, and A. Drexl, Characterization andgeneration of a general class of resource constrained projectscheduling problems, Manag Sci 41 (1995), 1693–1703.

[10] I. Kurtulus, Multiproject scheduling: Analysis of schedulingstrategies under unequal delay penalties, J Oper Manag 5(1985), 161–172.

[11] J.J.M. Mendes, J.F. Goncalves, M.G.C. Resende, A randomkey based genetic algorithm for the resource constrainedproject scheduling problem, Comput Oper Res 36 (2009),92–109.

[12] M. Mika, G. Waligóra, and J. Weglarz, Simulated annealingand Tabu search for multimode resource-constrained projectscheduling with positive discounted cash flows and differentpayment models, Eur J Oper Res 164 (2005), 639–668.

[13] N.H. Pan, M.L. Lee, and K.Y. Chen, “Improved Tabu searchalgorithm application in RCPSP,” in: Proceedings of theInternational Multi-Conference of Engineers and ComputerScientists, Hong Kong, 2009, pp. 18–20.

[14] R. Petrovic, Optimization of resource allocation in projectplanning, Oper Res 16 (1968), 559–586.

[15] R.-M. Chen, Particle swarm optimization with justificationand designed mechanisms for resource-constrained projectscheduling problem, Expert Syst Appl 38 (2011), 7102–7111.

[16] A.S. Chaleshtari and S. Shadrokh, A branch and bound algo-rithm for resource constrained project scheduling problemsubject to cumulative resources, World Acad of Sci, Eng Tech- WASET 62 (2012), 27–32.

[17] S.K. Shukla, Y.J. Son, and M.K. Tiwari, Fuzzy-based adap-tive sample sort simulated annealing for resource constrainedproject scheduling, Int J Adv Manuf Technol 36 (2008),982–995.

[18] T.R. Browning and A.A. Yassine, A random generator ofresource constrained multi project network problems, J Sched13 (2010), 143–161.

[19] T.R. Browning and A.A. Yassine, Resource-constrained mul-tiproject scheduling: Priority rule performance revisited, Int JProd Econ 126 (2010), 212–228.

[20] V. Valls, F. Ballest, and S. Quintanilla, Justification andRCPSP: A technique that pays, Eur J Oper Res 165 (2005),375–386.

[21] M. Vanhoucke, V. Van Peteghem, A genetic algorithm forthe preemptive and non-preemptive multimode resource-constrained project scheduling problem, Eur J Oper Res 201(2010), 409–418.

[22] H.R. Yoosefzadeh, H.R. Tareghian, and M.H. Farahi, Tridi-rectional scheduling scheme: Theory and computation, J MathModel Algor 9 (2010), 357–373.

Naval Research Logistics DOI 10.1002/nav