Optimal project duration for resource leveling

Optimal project duration for resource leveling

Accepted Manuscript Optimal Project Duration for Resource Leveling Tankut Atan, Elif Eren PII: DOI: Reference: S0377-2217(17)30935-9 10.1016/j.ejor...

935KB Sizes 0 Downloads 65 Views

Accepted Manuscript

Optimal Project Duration for Resource Leveling Tankut Atan, Elif Eren PII: DOI: Reference:

S0377-2217(17)30935-9 10.1016/j.ejor.2017.10.022 EOR 14746

To appear in:

European Journal of Operational Research

Received date: Revised date: Accepted date:

1 December 2015 18 September 2017 10 October 2017

Please cite this article as: Tankut Atan, Elif Eren, Optimal Project Duration for Resource Leveling, European Journal of Operational Research (2017), doi: 10.1016/j.ejor.2017.10.022

This is a PDF file of an unedited manuscript that has been accepted for publication. As a service to our customers we are providing this early version of the manuscript. The manuscript will undergo copyediting, typesetting, and review of the resulting proof before it is published in its final form. Please note that during the production process errors may be discovered which could affect the content, and all legal disclaimers that apply to the journal pertain.

ACCEPTED MANUSCRIPT

Highlights • Provides and solves mixed-integer linear models for finding the smallest

CR IP T

project duration which optimally levels resources

• Discusses appropriate leveling metrics to be used with the problem • Provides heuristic methods for solving large scale problems

• Tests models and heuristic methods on benchmark problems and sam-

AC

CE

PT

ED

M

AN US

ple networks from the literature

1

ACCEPTED MANUSCRIPT

Optimal Project Duration for Resource Leveling Tankut Atan∗, Elif Eren

CR IP T

Industrial Engineering, I¸sık University, Turkey

Abstract

Resource leveling is important in project management as resource fluctu-

AN US

ations are costly and undesired. Typically, schedules with better resource profiles are obtained by shifting the activities within their float times using

the schedule of fixed duration found by Critical Path Method. However, if the project duration can be extended, it is plausible to find a schedule with

M

enhanced resource leveling since a longer duration allows for more float time for all activities. In this work, we relax the assumption of fixed durations

ED

in resource leveling formulations and investigate what the minimal project duration for the best leveled schedule should be. We provide mixed-integer linear models for several leveling objectives including the Release and Rehire

PT

metric. We show that not all metrics used for leveling under fixed durations may be appropriate when the project duration becomes a decision variable.

CE

Optimal solutions from smaller problems are used to find the magnitude of the extension needed and benefits obtained thereby. Since the problem is a

AC

NP-hard problem for which exact solutions cannot be obtained for large net-

works in reasonable time, we provide a greedy heuristic to be used with the ∗

t: +902165287152, f: +902167102872 Email address: [email protected] (Tankut Atan)

Preprint submitted to Elsevier

October 16, 2017

ACCEPTED MANUSCRIPT

Release and Rehire metric. Using an iterative framework, we also test the performance of a state-of-the-art heuristic algorithm from the literature on

CR IP T

our problem. Computational experiments indicate that the more the number of resources is increased, the less leveling benefits are gained from extending the project. The optimal project durations and extension benefits can also be significantly different for different metrics.

Keywords: Project scheduling, resource leveling, variable project duration,

AN US

mixed-integer linear programming, Release and Rehire metric 1. Introduction

Resource Leveling Problem (RLP) is the problem of adjusting activity start times in a project schedule such that the variation of resource utiliza-

M

tion over time is minimized while satisfying precedence constraints among activities. RLP is important since resulting daily resource usages from the

ED

timing of the activities have an impact on the cost of a project because of factors such as idle resource times, and release and rehire of temporary

PT

workforce. Thus, better leveled projects help reducing such costs. Normally, resource leveling literature concentrates on scheduling project

CE

activities with minimum fluctuations in resource usage or utilization for a fixed project duration. This fixed project duration is obtained by multiplying

AC

the duration found through the Critical Path Method (CPM) with a factor, usually between 1.0 and 2.0. Some activities may have predecessors, and they can start only after all of their preceding activities finish. Such precedence relationships among tasks force activities to start only within a time range between their Earliest Start Time (EST) and Latest Start Time (LST). Some 3

ACCEPTED MANUSCRIPT

activities are critical, i.e. their EST and LST are the same; they do not have any float time. But EST and LST of noncritical activities differ. Thus,

CR IP T

in RLP, noncritical activity start times are shifted within their float times so that the resource profiles are leveled best. Different objectives can be

used to measure how well a project is leveled. Depending on the measure chosen, different schedules may be obtained. Some examples of objectives

are minimizing sum of squares of daily usages, minimizing sum of absolute

AN US

(or just positive) deviations from daily target values, minimizing maximum daily usage, minimizing the total number of released and rehired workers.

It is possible that extending a project’s duration will give a better leveled project schedule since this additional time generates additional float time for all activities. While time extension may be desirable from a resource level-

M

ing perspective, a longer duration may not meet the project deadline, and can also have additional cost implications. However, when the number of

ED

resources cannot be easily changed over time and resource fluctuations have significant cost impacts, allowing a project extension with better leveling can

PT

be beneficial especially when the project deadline can still be met. In this work, we are interested in finding the minimal extended project duration that

CE

best levels the resource profiles. To that end, we allow the project duration to be variable rather than assuming that it is fixed as in the RLP literature so far. We answer several questions that arise from making the project du-

AC

ration variable: What metrics are proper to be used with a variable project duration when comparing leveling in resource profiles of different schedules? How can we find the duration for an optimally leveled schedule? How much improvement in resource profiles can be obtained by a project duration ex-

4

ACCEPTED MANUSCRIPT

tension? How far away is the smallest optimal duration from the duration found by CPM? Does the choice of fitness metric have a significant impact on

CR IP T

the optimal duration? How does the number of resources affect the duration extension? Answers to these questions can be useful to project managers in deciding a project schedule with a variable duration when resource leveling is important.

This paper is organized as follows. After reviewing relevant literature in

AN US

Section 2, we show that not all metrics used with fixed project durations are appropriate when the project duration is a decision variable in Section 3. Section 4 details an efficient mixed-integer linear model for solving RLP

with a fixed duration which is used in computational studies and also forms a basis for models in later sections. Section 4 also includes a new model for the

M

Release and Rehire metric under fixed duration. Section 5 gives new models for finding the optimal extended project duration. In the computational

ED

experiments, these models are used for finding exact solutions for smaller problems. Since large problems cannot be solved exactly in reasonable time,

PT

one needs heuristic approaches for solving large problems which are discussed in Section 6. Results of numerical experiments are reported in Section 7

CE

followed by the Conclusion.

AC

2. Previous Work Rieck and Zimmermann [15] review and discuss the exact methods for

RLP, and also provide an extensive computational study for several mixedinteger linear models with different objectives. The studies in Rieck and Zimmermann [15] complement the work in Rieck et al. [16] where some of 5

ACCEPTED MANUSCRIPT

the models in the later study have also been computationally tested. Rieck and Zimmermann [15] also investigate the Resource Overload Problem (ROP)

CR IP T

where the concern is leveling the resource profile so that only positive rather than all deviations from the targeted number of resources are penalized. Due to difficulties in finding an exact solution for larger networks, many

researchers developed heuristic algorithms for RLP. A review of these meth-

ods can be found in Christodoulou et al. [2]. The problem of minimizing

AN US

maximum daily usage, a common metric used in RLP studies, is known as

Resource Availability Cost Problem and Resource Investment Problem in project scheduling. Exact methods for this problem are discussed in Rodrigues and Yamashita [18] whereas Petegham and Vanhoucke [10] deal with heuristic methods for the same problem.

M

Few researchers dealt with extending the project duration beyond the CPM duration and looked on the effect of such extensions on resource pro-

ED

files. However, these studies only assume a predetermined extended duration and are not focused on finding the minimal duration that gives the best level-

PT

ing as in our study. Kim et al. [6] apply the Minimum Moment Heuristic for resource leveling (Harris [5]) to extended project durations and compare the

CE

resulting profiles to the resource profile obtained when the project duration is kept fixed at the CPM value. On a sample network with 12 activities, they obtain a better resource profile with a one day extension. Liao et al.

AC

[8] propose extension of project deadline with penalty as a possible topic for future study for RLP. Ponz-Tienda et al. [11] actually implement this idea in their adaptive genetic algorithm for RLP. Their algorithm also uses the Weibull distribution to guess the value of the optimal solution which is used

6

ACCEPTED MANUSCRIPT

as a termination criterion. Rieck et al. [16] and Rieck and Zimmermann [15] report computational results for their problem instances where the project

CR IP T

deadline has been increased from the CPM duration by a fixed factor. Their concern is how computation times are affected by these increases. Recently, Rahman and Elazouni [14] demonstrated on two sample networks, one with

30 and another with 120 activities, that enhanced resource leveling schedules are indeed possible by extending the project duration. They also provide a

AN US

genetic algorithm in which the CPM schedule is extended by a fixed amount

and the activities are scheduled within the new duration. The schedules obtained with extended duration were better leveled than the schedules obtained via the genetic algorithm using the CPM duration for the sample networks. All of their reported results were approximate solutions generated

M

with the genetic algorithm. In this work, we also provide the optimal solutions of the sample networks from Rahman and Elazouni [14] for certain

ED

extended durations.

Resource-Constrained Project Scheduling Problem (RCPSP) is a related

PT

problem where the minimum project duration that observes activity interdependencies and resource capacities is sought after. RCPSP has an ex-

CE

tensive literature which is not reviewed here since it is a different problem. In RCPSP, as opposed to RLP, resources are assumed to be constrained. Consequently, activities of which the sum of the resource requirements ex-

AC

ceeds the available resource capacities cannot be worked on at the same time in RCPSP. In RLP, however, activity start times can be adjusted as long as precedence constraints among activities are not violated. Furthermore,

RCPSP schedules are not necessarily well leveled since the goal in RCPSP

7

ACCEPTED MANUSCRIPT

is not to level resource usages but to finish as early as possible without exceeding resource capacities. In fact, Roca et al. [17] provide an evolutionary

makespan is minimized under scarce resources.

CR IP T

algorithm to solve a multi-objective problem where resources are leveled and

3. Leveling Metrics with Variable Project Duration

Let’s assume that a project with N (real) activities, and precedence rela-

AN US

tionships among the activities –as opposed to general temporal relationships where minimum and/or maximum time lags between the start times of ac-

tivities are present–has been scheduled using CPM method. Thus, earliest and latest start times that adhere to the precedence relationships have been obtained, and the minimum number of days to finish the project, D, has also

M

been determined. The project activities require R different resource types. We want to determine the minimal extended project duration that best levels

ED

the resource usages under a chosen metric while keeping the schedule feasible with regard to precedence relationships.

PT

There are several resource leveling metrics that can be used to measure how well resources are leveled in a project. In fixed duration RLP, some com-

CE

monly used examples are minimizing sum of squares of daily resource usages (classical resource leveling problem), minimizing sum of absolute (or positive)

AC

deviations of daily resource usages from daily target values, and minimizing maximum daily usage among others. In this work, we also investigate the Release and Rehire (RRH) metric. This metric has been introduced by El-Rayes and Jun [3] and it measures the total amount of resources that need to be temporarily released during low demand periods and rehired at a later stage 8

ACCEPTED MANUSCRIPT

during high demand periods. However, releasing and rehiring can be costly. Thus, the RRH metric is useful in projects where releasing and rehiring of

CR IP T

workforce is allowed. Even if releasing is not allowed, days with low resource usages are times when resources hired earlier in the project are sitting idly. Due to these cost implications, minimizing the number of releases and rehires can be important. Rahman and Elazouni [14] also used this metric in

their resource leveling study of extended projects. Kreter et al. [7] model

AN US

and investigate the Total Adjustment Cost Problem where the cost function is similar to RRH metric but only penalizes weighted positive adjustments in resource levels.

Not all metrics normally used under fixed duration scenarios are suitable for finding the optimal duration when one is also concerned about not ex-

M

tending the project duration too much. As shown next, minimizing sum of squares and minimizing maximum daily usage will favour longer durations

ED

to achieve smaller daily usage amounts. It is assumed that the daily resource usage of an activity is the same for all days. Our propositions and corollaries

PT

are only true for our problem setting with precedence relationships but not for general temporal relationships.

CE

Proposition 1. Under minimization of sum of squares of daily resource usages metric, an optimal project duration is obtained by scheduling the ac-

AC

tivities back-to-back with no overlaps. Proof. Say all activities are scheduled serially with no parallel processing. Take any two jobs with resource usages and durations of r1 , r2 , d1 , and d2 respectively. Let them overlap for t time periods. With no overlap the objective function penalty due to these two jobs is equal to d1 r12 + d2 r22 . 9

ACCEPTED MANUSCRIPT

When the activities overlap by t time periods, the penalties become (d1 −

t)r12 + (d2 − t)r22 + t(r1 + r2 )2 . After expanding, it can be seen that the new

CR IP T

penalties have an additional amount of 2tr1 r2 . Thus, an optimal duration is obtained with no activity overlaps by avoiding these additional penalties. Serial schedules with idle times between the activities will provide alternative optimal solutions but of longer durations.

Proposition 2. Under minimization of maximum daily resource usage met-

AN US

ric, an optimal project duration is obtained by scheduling the activities backto-back with no overlaps.

Proof. Trivial since the smallest maximum daily resource usage amount that can be achieved when scheduling activities is equal to the maximum daily us-

M

age of individual activities. Any activity overlap may increase this minimum. However, there can be alternative solutions with shorter durations as long as

ED

overlapping activities do not consume more resources than the activity with the maximum resource usage. Hence, the activity with maximum resource

PT

usage cannot overlap with another activity in these alternative solutions. Sum of absolute deviations from a given target daily resource usage is

CE

one of the commonly used RLP metrics which we investigate under variable project duration. The target values can be determined based on business

AC

conditions, or based on total resource usage of all activities and the project duration by finding the average resource utilization. Moreover, the target value can be kept equal to the target value found when scheduling the activities according to the CPM duration, or can be lowered as the project duration is extended. Solving RLP with this metric and ROP are similar 10

ACCEPTED MANUSCRIPT

problems. Proposition 3. While they will yield the same optimal solution under a fixed

CR IP T

project duration, solving RLP by minimizing the sum of absolute deviations from targets and ROP are not equivalent under variable project duration.

Proof. Let xt (yt ) denote the positive difference between total resource usages

at time t and a target value a when resource usage is above (below) the

AN US

target value. Let ri be the amount of resources used by activity i, and di be

the duration of activity i. Hence, the total resource usage by all activities P during the project will be equal to i ri di . From Figure 1, one can see that P P P t yt = Da − ( i ri di − t xt ). Hence, the objective value for the sum of P P absolute deviations becomes 2 t xt + Da − i ri di ; two times the objective

M

value of ROP plus a constant. However, since the constant term also includes

the project duration D, solving for the sum of absolute deviations and ROP

ED

are not equivalent under variable project duration.

x4

PT

x1

CE

y0

=

y3

AC

0

P

i ri di

a y6 D

Figure 1: Sum of absolute deviations and ROP

In the following sections, several exact models are given. Model 1 in

Section 4 is an efficient mixed-integer linear model for a fixed duration. With Model RRH in Section 4, we provide a mixed-integer linear model for the 11

ACCEPTED MANUSCRIPT

RRH metric.While Model 2 of Section 5 handles constant target values as the project duration is extended, Model 3 of Section 5 deals with changing

CR IP T

target values. 4. Integer Linear Models with Fixed Project Duration

When minimizing the weighted sum of absolute differences of daily re-

source usages from target values to find the best leveling, target values could

AN US

be chosen equal to the (rounded) average resource utilizations. RLP can be formulated as a discrete-time based integer linear model inspired by Pritsker et al. [12]. Rieck et al. [16] and Rieck and Zimmermann [15] provided an efficient such model for ROP. Thus, we use this model (Model 1) to obtain the sum of absolute deviations from target values of an optimal schedule as

M

the objective function results differ by only a constant under a fixed duration (see Proposition 3). The computational studies in Rieck et al. [16] and Rieck

ED

and Zimmermann [15] indicate that this formulation performs well. Model 1 is also used in our computational studies within an iterative solution ap-

PT

proach. Note that regardless of the model formulation, an exact approach will be limited to solving problems up to a certain size only. However, op-

CE

timal solutions for small problems obtained by exact methods give valuable insight to the problem at hand. Furthermore, they also help in understanding

AC

the quality of solutions generated by approximate algorithms. Thus, we will also attempt to solve benchmark problems exactly using formulations in our study. Next, the notation is followed by the model with fixed project duration. Note that two artificial activities with zero duration and zero resource usage have been added to the project network for modeling purposes to mark 12

ACCEPTED MANUSCRIPT

the beginning and the end of the project. One dummy activity precedes all real activities whereas another dummy activity follows all other activities.

CR IP T

These artificial activities have been numbered as 0 and N + 1. Also notice that there is no resource usage starting at time D since the project finishes at t = D. 4.1. Sets I = Project activities, i = 0, ..., N + 1.

AN US

K = Resources needed by activities, k = 1, ..., R. T = Days in the project, t = 0, ..., D. 4.2. Parameters

ESTi = Earliest start time (day) of activity i. These values are found via

M

CPM.

CPM.

ED

LSTi = Latest start time (day) of activity i. These values are found via

di = Duration of activity i in days.

PT

ri,k = Amount of resource k used daily by activity i.

CE

ak = Targeted daily usage for resource k. While it is assumed that these targets are the same for each day, the formulation can easily be changed to where target values differ from one day to another. Target values

AC

are assumed to be integer.

wk = Weight of resource k. D = Project duration. The duration is found via CPM. pi,j = 1 if activity j precedes activity i; 0 otherwise. 13

ACCEPTED MANUSCRIPT

4.3. Decision Variables z = The weighted sum of total daily resource usages exceeding targeted daily

CR IP T

resource usages. xt,k = The excess amount of resource k on day t when compared to the targeted amount (ak ). σt,i = 1 if activity i starts on day t; 0 otherwise.

AN US

4.4. MODEL 1

min z =

XX t
min(LSTi ,t)

X

ri,k

i

pi,j

t1 =max(ESTi ,t−di +1)

X

CE



tσt,i ≥ pi,j 

PT

ESTi ≤t≤LSTi

AC

σt1 ,i − ak ≤ xt,k

ED

X

M

subject to:

X

ESTj ≤t≤LSTj

X

ESTi ≤t≤LSTi

wk xt,k

(1)

k

ESTi ≤ t ≤ LSTi + di − 1, ∀k ∈ K 

tσt,j + dj 

σt,i = 1 ∀i ∈ I

(2) ∀i, j ∈ I, i 6= j

(3) (4)

σ0,0 = 1

(5)

xt,k ≥ 0 ∀t ∈ T , ∀k ∈ K

(6)

σt,i ∈ {0, 1} ∀t ∈ T , ∀i ∈ I

(7)

The objective function aims to minimize total weighted resource usage above the targeted daily resource usage amounts. Activities can only use a resource 14

ACCEPTED MANUSCRIPT

when they are active. The first part of Constraint (2) finds the daily resource usages by summing over activities on days that they are active. When the

CR IP T

resource usage on a given day is less than the target value, the LHS of Constraint (2) becomes negative and the respective xt,k will be set to zero.

Otherwise, xt,k will need to become positive. Constraint (3) enforces the

predecessor activities to finish before their successors start by making sure that the start time of an activity is greater than or equal to the finish times

AN US

of its predecessors. Constraint (4) states that an activity can only start

between its earliest and latest start times. Constraint (5) says that activity 0 is active at time t = 0. xt,k are nonnegative continuous variables whereas σt,i are binary variables.

M

4.5. Integer Linear Model for RRH Metric

As mentioned before, RRH is another metric we solve for as a RLP mea-

ED

sure. RRH is given for a single resource in El-Rayes and Jun [3]. To deal with multiple resource types with weights, we adjust the metric as follows.

PT

Here, ut,k represents the amount of resource k used on day t.

RRH =

X

CE

k

wk

0.5(u0,k +

D−2 X t=0

|ut,k − ut+1,k | + uD−1,k ) − max ut,k t
!

(8)

As the name suggests, RRH calculates the number of resources (workers)

AC

that are dismissed (released) before the project ends but then reused (rehired) during the project. Consider only one resource type and let the maximum resource usage during the project be equal to umax. Let I and J denote the resource level increases and decreases along the envelope of the resource profile. From Figure 2, we see that the the sum of increases and decreases in 15

ACCEPTED MANUSCRIPT

resource levels is equal to (I1 +I2 +I3 )+(J1 +J2 +J3 )+2(R1 +R2 ). But this is equal to 2(umax + R1 + R2 ). Thus, the total number of released and rehired

CR IP T

resources, R1 + R2 in Figure 2, is found by subtracting umax from half of the sum of total resource adjustments. Intuitively, thinking only of one resource,

the first part of Equation 8 gives the total number of increases by multiplying the total resource adjustments by 0.5. But each resource (worker) utilized (hired) in the project has to be first added to the project even when it is

AN US

not released until the end of the project. The number of these initial hires equals to the maximum resource usage. The rest of the increases are due to the rehires. Thus, one reaches at the number of resources that are dismissed

but then rehired by subtracting the maximum resource usage from the sum

R1

ED

I2

R2

I3

R1 R2

J1 umax J2 J3 D

Figure 2: RRH metric

CE

PT

I1 0

M

of all increases. A similar analysis applies to all resource types.

The RRH function is nonlinear. Firstly, there are absolute terms in the

AC

objective function. Moreover, the maximum daily resource usage is subtracted from the absolute sum of increases and decreases. The sum of absolute differences from a target level can be linearized with the help of two sets of nonnegative, auxiliary variables x and y by setting the difference between the daily resource usage and the target level equal to x − y. The first part of 16

ACCEPTED MANUSCRIPT

the RRH objective function can be handled this way. Normally the maximum of a discrete set of values can be linearized by defining a single new variable to

CR IP T

replace the maximum and specifying in the constraints that this new variable should be greater than each u (daily resource usage value) variable. However, due to the negative sign, the objective function becomes unbounded

with this linearization method since the larger the auxiliary maximum value gets the smaller the objective function becomes. Thus, additional (binary)

AN US

variables and constraints are needed to prevent the objective function from

becoming unbounded. Next, we only show additional parts/changes that are needed in Model 1 to accommodate RRH metric. 4.5.1. New Parameters

M

Mk = A large number that daily usage for resource type k cannot exceed. It can be set to the sum of resource type k usage of all activities.

ED

4.5.2. New Decision Variables

qt,k = 1 if daily resource usage for resource type k on day t is greater than

PT

usage on another day that is being compared to the usage on day t; 0 otherwise.

CE

ut,k = Amount of resource k used on day t. umaxk = the maximum daily resource usage for resource type k.

AC

yt,k = The shortage amount of resource k on day t when compared to the targeted amount (ak ).

17

ACCEPTED MANUSCRIPT

4.5.3. MODEL RRH

wk

0.5(u0,k +

D−2 X t=1

k

(xt,k + yt,k ) + uD−1,k ) − umaxk

subject to: min(LSTi ,t)

X

ri,k

i

σt1 ,i

t1 =max(ESTi ,t−di +1)

∀t ∈ T , ∀k ∈ K

AN US

ut,k =

X

ut,k − ut+1,k = xt+1,k − yt+1,k

(9)

(10)

∀t ∈ T , t < D − 1, ∀k ∈ K

(11)

ut1 ,k − ut2 ,k ≥ −Mk (1 − qt1 ,k ) ∀t1 , t2 ∈ T , t1 6= t2 , ∀k ∈ K

(12)

X

qt,k = 1 ∀k ∈ K

M

t

∀t ∈ T , ∀k ∈ K

ED

umaxk ≥ ut,k

(13) (14)

umaxk ≤ ut,k + Mk (1 − qt,k ) ∀t ∈ T , ∀k ∈ K

(15)

xt,k , yt,k ≥ 0 ∀t ∈ T , ∀k ∈ K

(16)

qt,k ∈ {0, 1} ∀t ∈ T , ∀k ∈ K

(17)

PT CE AC

!

CR IP T

min z =

X

ut,k ∈ Z+ 0

∀t ∈ T , ∀k ∈ K

umaxk ∈ Z+ 0

∀k ∈ K

(18) (19)

The first part of Equation (9) adds the increases and decreases in daily

resource usage levels together. The first day’s (increase) and last day’s (decrease) usage levels are added directly whereas intermediate increases and

18

ACCEPTED MANUSCRIPT

decreases are added via auxiliary variables calculated by Constraint (11). This sum is then multiplied by 0.5 to account only for increases. Then, the

CR IP T

maximum daily usage for resource type k is subtracted from the sum of increases. By using different weights for resource types one could distinguish

between more and less important (expensive) resource types. Constraint

(10) finds the daily resource usages. Constraint (11) replaces Constraint (2). Constraint (12) through Constraint (15) are introduced to handle the sub-

AN US

traction of the daily maximum usage. In Constraint (12) setting a specific

qt1 ,k to 1 indicates that the daily usage on day t1 is greater than or equal to the daily usage on t2 for resource type k. However, when qt1 ,k is set to 0, the equation becomes redundant. Due to Constraint (13) the model can set only one qt,k variable to 1. However, to guarantee the feasibility of the

M

constraint set in Constraint (12) the chosen day has to be one of the days with maximum usage. Constraint (14) says that the maximum daily usage

ED

value for resource type k has to be greater than or equal to the daily usages on all other days. Constraint (15) makes sure that umaxk is bounded by the

PT

actual maximum daily usage which results from scheduling the activities in the project. Since only the respective qt,k value that corresponds to when the

CE

maximum daily usage occurs will be set to 1, this constraint only becomes active for a day with maximum usage. For other days with equal or smaller

AC

usage values it is redundant. 5. Integer Models with Variable Project Duration In this section, we allow the project duration to be variable. Our objective

is to find the smallest project duration that results in the best resource profile 19

ACCEPTED MANUSCRIPT

for the chosen metric. The idea is that a better leveled resource usage can be obtained by lengthening the project and shifting certain activities forward

CR IP T

in time. In effect, longer duration increases the float times for each activity thus allowing more scheduling options to achieve a better leveled project.

First, we assume that the daily target resource levels do not depend on the project duration. For example, a manager may have already committed using

a certain number of resources on which the project duration has no impact.

AN US

Later, the model will be changed so that the targeted number of resources

depends on the project duration and is equal to the rounded average resource utilizations. Before moving to the formulations, some results are provided regarding the optimal schedule.

k ∈ K. P

i ri,k di

are constant. Note that the target levels can

ED

Proof. Trivial since

M

Proposition 4. The variable target levels ak are nonincreasing in D for all

PT

remain the same if rounding is applied. The largest target level for resource P k will be i ri,k di /DCP M , rounded if necessary.

Proposition 5. For the optimal project duration, there exists a schedule with

CE

no idle times.

Proof. The existence of an optimal solution with no idle times is dependent

AC

on the leveling metric chosen. Let S be a schedule of duration D with no idle times. Adding idle time to S does not change the daily resource usages on active days. When the target levels are kept the same, additional penalties incurred for the idle days will make the objective function value actually worse. With RRH, inserting idle times also worsens the objective function 20

ACCEPTED MANUSCRIPT

value by penalizing the sum of the daily usage just before and just after the idle times rather than only their difference if the idle times did not exist.

CR IP T

Hence, one can remove any idle time from a schedule to obtain at least as good of a schedule for both of these metrics. However, showing the existence of a schedule with no idle times is not as trivial with decreasing daily average resource utilizations as targets.

Let Sidle be an optimal schedule of length D+1 that includes one time unit

AN US

of idle time. Let S be a schedule of length D obtained by removing the idle time in Sidle . Thus, the daily resource usages are the same for both schedules

on active days; however, they may have shifted by a day. We will assume that the idle time occurs on the last day of Sidle for notational convenience. The daily target value for resource k in Sidle is i ri,k di

D

in S. Their difference equals

type k in schedule S are

P

i ri,k di . D(D+1)

M

P

ED

D−1 X

PT

t=0

ut,k −

P

CE

t=0

ut,k −

P

i ri,k di

D

i ri,k di (D+1)

whereas it is equal to

The total penalties for resource



i ri,k di

D

whereas for schedule Sidle they are D−1 X

P

P + i ri,k di . + D(D + 1) (D + 1) P

i ri,k di

AC

Comparing the penalty functions for S and Sidle , it can be seen that the

penalties can be lower by at most

P

i ri,k di D(D+1)

in schedule Sidle on days where

the daily resource usage is below the average in schedule S. On days where the daily resource usage exceeds or is equal to the average in schedule S a

21

ACCEPTED MANUSCRIPT

lower penalty is not possible. When one assumes that the maximum penalty savings are realized in Sidle on each day except the idle day, the upper bound P

r

d

CR IP T

i i,k i . But this is equal to the on the achievable decrease in penalties is D D(D+1)

additional penalty incurred on the idle day. Thus, the penalties for Sidle have to be at least as much as the penalties in S, and Sidle can not be optimal. In fact, the penalties of S and Sidle are only equal when all ri,k are zero. The same analysis is true for all resource types.

AN US

However, when the target values change according to rounded average

resource utilizations it is possible to have less penalties by inserting some idle time and increasing the project duration. A numerical example with two activities is shown in Figures 3, 4 and 5. In the example, the rounded average resource usage per day stays equal to 4 for up to 27 days, and then drops

M

to 3. However, this mathematical possibility which occurs when rounding is applied blindly does not make sense to apply in practice. An idle time can

ED

always be pushed to the end of a project thus allowing finishing a project earlier and incurring even less penalties by using the same target value. In

PT

the example, the penalties become only 5 by pushing the idle time to the end

CE

and finishing the project on day 25 with a target value of 3.

AC

r=4

0

4 r=3 5

20 Figure 3: CPM solution - Penalties = 30

22

27

ACCEPTED MANUSCRIPT

4 r=4

r=3 5

20

25 27

CR IP T

0

Figure 4: Extended solution with no idle time - Penalties = 20

3

r=3

20 22

AN US

0

r=4

27

Figure 5: Optimal solution - Penalties = 11

Note that when only overloads are penalized the idle times can also be

M

removed. Since the averages are decreasing (nonincreasing when rounded), the overload penalties cannot get better by adding idle times. On another

ED

note, when there are general temporal constraints which impose time lags among start times of activities (for example for allowing setups) then some idle time may exist. When the available number of resources is dictated

PT

by business conditions and changes with time, one also cannot assert the

CE

nonexistence of idle times.

AC

Corollary 1. The sum of activity durations is an upper bound on the optimal project duration. Proof. Since there is an optimal schedule with no idle times, the longest possible project duration in such a schedule occurs when all activities are done serially. 23

ACCEPTED MANUSCRIPT

In the following formulation, the project duration is made variable rather than keeping it fixed as in Model 1.

CR IP T

5.1. New Sets T = Days in the project, t = 0, ..., Dmax . 5.2. New Parameters

CPM.

AN US

DCP M = Project’s earliest possible finish time. This duration is found via

Dmax = Project’s latest possible finish time. This could be set to the sum of activity durations. M = a large penalty coefficient.

M

5.3. New Decision Variables

ED

z = The weighted sum of absolute deviations of total daily resource usages from targeted daily resource usages.

PT

D = Project duration.

fi = The starting day of activity i.

CE

φt,i = 1 if activity i is active on day t; 0 otherwise.

AC

bt = 1 if time t is after project’s finish time D; 0 otherwise. 5.4. MODEL 2

min z =

XX t

k

wk (xt,k + yt,k ) −

24

XX t

k

w k ak b t

(20)

ACCEPTED MANUSCRIPT

subject to:

X

ut,k =

∀t ∈ T , ∀k ∈ K ∀t ∈ T , ∀k ∈ K

ri,k φt,i

i

pi,j fi ≥ pi,j (fj + dj ) ∀i, j ∈ I, i 6= j ESTi ≤t t X

φt,i =

σt,i = 1 ∀i ∈ I

AN US

X

σt1 ,i

t1 =max(ESTi ,t−di +1)

∀t ∈ T , ∀i ∈ I, ESTi ≤ t

φt,i = 0 ∀t ∈ T , ∀i ∈ I, t < ESTi X

∀i ∈ I

tσt,i

M

fi =

ESTi ≤t

ED

fi ≥ ESTi

∀i ∈ I

(22)

(23)

(24)

(25) (26) (27) (28)

f0 = 0

(29)

σ0,0 = 1

(30)

fN +1 ≤ D

(31)

D ≥ DCP M

(32)

D ≤ t + M (1 − bt ) ∀t ∈ T

(33)

ut,k , xt,k , yt,k ≥ 0 ∀t ∈ T , ∀k ∈ K

(34)

PT CE AC

(21)

CR IP T

ut,k − ak = xt,k − yt,k

fi ∈ Z+ 0

25

∀i ∈ I

(35)

ACCEPTED MANUSCRIPT

(36)

σt,i ∈ {0, 1} ∀t ∈ T , ∀i ∈ I

(37)

bt ∈ {0, 1} ∀t ∈ T

(38)

D ∈ Z+ 0

CR IP T

φt,i ∈ {0, 1} ∀t ∈ T , ∀i ∈ I

(39)

In Model 2 references to LSTi have been removed. When the project duration is variable, it is not possible to determine the latest start times

AN US

for activities a priori since they are dependent on the project’s overall finish

time. The first term in the objective function determines the weighted sum of absolute deviations from the daily target resource usages over the project’s maximum possible duration, Dmax . Hence, the first term includes penalties

M

for times beyond the project’s actual finish time, D. The second term in the objective function removes those unnecessary penalties. Constraint (31)

ED

says that the last (dummy) activity should finish with the project’s finish time. Constraint (32) states that project should not finish earlier than the duration determined by its critical path. Constraint (33) determines days

PT

which are beyond the project’s finish time by setting the relevant bt variables to 1. Since the objective function value is decreased with every bt variable

CE

that is set to 1, the model will try to set D to a day as early as possible unless there is a tie in the objective function value of several durations. For

AC

days before the project’s finish time D, related bt variables cannot be set to 1 because the constraint will become infeasible.

26

ACCEPTED MANUSCRIPT

5.5. Variable Target Resource Levels When lengthening the project duration, it is also possible to allow the

CR IP T

target resource levels to be in line with the project duration and be equal to the average daily resource needs. Thus, the target levels will decrease as the project duration is extended. Making the target resource levels ak also a

decision variable leads to a nonlinear formulation with quadratic constraints

5.5.1. MODEL 3

AN US

and objective function.

When ak are positive integer variables, Model 3 is obtained which differs from Model 2 by the following constraints. Together with these new constraints, the objective function is now also quadratic due to the terms X

M

involving ak . ak ≥

ri,k di /D

i

ED

ak ∈ Z +

∀k ∈ K

∀k ∈ K

(40) (41)

Since ak are integer, Constraint (40) enforces the average daily resource

PT

usage on the RHS to be rounded up and used as a target value. This rounding can cause certain solutions that are actually optimal to be missed. These

CE

are solutions where some idle time exists in the schedule as discussed in Proposition 5. Thus, one could actually remove Constraint (40) from the

AC

formulation and leave it to the model to decide appropriate values for ak . Furthermore, the objective function which involves multiplication of integer valued variables with binary variables can easily be linearized.

27

ACCEPTED MANUSCRIPT

5.6. Variable Project Duration and RRH Metric When the best project duration is itself a decision variable, on top of

CR IP T

the changes to the constraints regarding D given in Model 2, the objective function also needs to change as follows to accommodate the RRH metric.

min z =

X

wk

0.5(u0,k +

Dmax X−1 t=1

k

(xt,k + yt,k )) − umaxk

!

(42)

AN US

The optimal project finish time with this formulation may not be set to the earliest possible time. To penalize setting the project’s finish time to a

later time than necessary, term D with a small coefficient should be added to the objective function. The small coefficient is needed for preventing the project finish time to be shortened at the expense of the RRH value.

M

Project finish time D is bounded by Dmax . Furthermore, Constraint (33)

RRH metric.

ED

and variables bt are not needed when the objective function involves the

PT

6. Heuristic Methods

Solving large problems with exact methods is impractical as our computa-

CE

tional experiments also indicated. Thus, one may need to resort to heuristic methods. In this section, a heuristic that only applies to RRH metric is

AC

provided first. Ballestin et al. [1] developed a population-based resource leveling procedure of the iterated greedy type for a fixed duration that can be applied to other metrics. To deal with variable duration, we implemented this state-of-the-art heuristic in an iterative framework. Next, we describe the heuristic algorithms. The results are reported in Section 7. 28

ACCEPTED MANUSCRIPT

6.1. Greedy Heuristic for RRH Metric For RRH metric, a new heuristic has been developed. First, an initial

CR IP T

solution is obtained by assuming that all activities will be scheduled serially. Thus, initially the project duration will be at its upper bound Dmax . During serial scheduling, the jobs are scheduled in an increasing (first pass) and

decreasing (second pass) order of their resource usages while preserving the precedence constraints. When an activity finishes, only jobs that have all of

AN US

their predecessors scheduled are considered for scheduling next. Among these activities the one with the smallest (largest) resource usage is chosen. The idea is that by sorting the activities by the amount of their resource usages the sum of jumps can be kept to a smaller value. In the second phase of the

algorithm, the initial solution is modified by randomly picking activities and

M

scheduling them within their float window at a time that provides a better RRH value. This process is repeated many times, and the best solution is

ED

reported. Note that the whole algorithm is applied twice: Once by ordering the activities in the initial solution in an increasing order of their resource

PT

usages, then in a decreasing order. The better solution is the final solution. The heuristic is detailed in Figure 6 and Figure 7. This heuristic results

CE

in a schedule with a relatively long duration that may make it difficult to use in practice. However, from a theoretical standpoint it provides an upper

AC

bound on the optimal solution. This algorithm provided the best solutions for the sample networks in Rahman and Elazouni [14]. Its results are also compatible with the solutions provided by using the heuristic algorithm by Ballestin et al. [1].

29

ACCEPTED MANUSCRIPT

AN US

CR IP T

Find the initial serial solution Set current time t = 0 Set nScheduled = 0 Let set of scheduled activities S = {} and set of unscheduled activities U S = {1, 2, ..., N } while nScheduled < nActivities for all activities in U S find activity a with 1) minimum 2) maximum resource usage such that all of a’s predecessors are in S Schedule a starting at time t Set t = t + durationa S = S ∪ {a}; U S = U S/{a} nScheduled = nScheduled + 1 end while Set bestRRH = RRH value of the resulting resource profile Set initial EST , LST , st, f t, and u values

M

Figure 6: Initial solution of greedy heuristic for RRH

6.2. Population-based Iterated Greedy Heuristic

ED

Ballestin et al. [1] developed a state-of-the-art heuristic for leveling projects with fixed durations. We adapt this heuristic for finding the optimal project

PT

duration with the best resource leveling by applying it iteratively starting from the duration found by CPM until the duration upper bound is reached.

CE

The flowchart is given in Figure 8. At each iteration, the LST of each activity is increased by one time unit and the heuristic is applied. The duration which

AC

leads to the best solution from all iterations is then reported. Observe that when a project deadline is extended beyond the duration found by CPM all activities become noncritical as their LSTs increase with extended duration. The population-based heuristic algorithm by Ballestin et al. [1] uses another heuristic developed by Neumann and Zimmermann [9] to generate an initial

30

CR IP T

ACCEPTED MANUSCRIPT

Figure 7: Phase 2 of the greedy heuristic for RRH

AC

CE

PT

ED

M

AN US

Set bestSoln = BIGN U M BER for trial = 1 to nT rials Set bestRRH = RRH value of the initial solution Set initial EST , LST , st, f t, and u values for change = 1 to k ∗ nActivities Let set of schedulable activities S = {1, 2, ..., N } and set of tabu activities T = {} Randomly pick an activity a from set S for t = EST (a) to LST (a) Calculate RRHt with a starting at t If RRHt < bestRRH set stN ew(a) = t else set stN ew(a) = t with probability p end t Remove the resulting idle times in the schedule if any Update EST , LST , st, f t, u values according to stN ew(a) S = S/{a}; T = T ∪ {a} Activities are kept in the tabu list for c consecutive changes after which they are added back to S end change If bestRRH < bestSoln set bestSoln = bestRRH end trial Report the solution corresponding to bestSoln

31

ACCEPTED MANUSCRIPT

population of feasible schedules (a feasible list with the start times of each activity). Next, a schedule is chosen from the population. The chosen sched-

CR IP T

ule is first destroyed by unscheduling some activities (destruction). Then, these unscheduled activities are put back into the schedule (new start times are determined) following a certain activity order (construction). The sched-

ule that is obtained after applying destruction and construction operators is further improved by using a simple descent method (local improvement).

AN US

The destruction-construction-improvement steps are repeated for a predeter-

mined number of iterations. The details of the algorithms can be found in Ballestin et al. [1] and Neumann and Zimmermann [9]. 7. Computational Studies

M

7.1. Experiments

For our numerical experiments we use problem sets in the PSPLIB [13]

ED

library. The library contains randomly generated 40 problem instances with 10, 15, 20, 30 and 50 activities each. There are different sets with 1, 3 and

PT

5 resource types. Since PSPLIB problems involve general temporal relationships rather than precedence relationships only, we adjusted our models

CE

to reflect those temporal relationships when solving the problems. Specifically, Constraint (3) and Constraint (23) no longer require exactly the total

AC

duration of preceding activities to elapse before the successors can begin. Differences in starting times were changed to the temporal lags specified in the input files. We used the sum of activity times as Dmax in the experiments although it may not be a valid upper bound since a project may have to take longer than the sum of the durations with temporal lags. When that oc32

CR IP T

ACCEPTED MANUSCRIPT

CE

PT

ED

M

AN US

Via CPM calculate activities’ ESTi and LSTi , and DCP M Set Dmax to the sum of activity durations Set Dbest = BIGN U M BER; zbest = BIGN U M BER for tFinish = DCP M to Dmax Generate an initial population P of schedules of size sP Set ztF inish = BIGN U M BER for iteration = 1 to nM axIterations Select a schedule S from the population Draw a uniformly distributed number µ between [0,1[ If µ < 0.5 then apply destruct-construct operator of type A to S else apply destruct-construct operator of type B to S 0 Apply a local-improvement algorithm to the resulting schedule S 00 Select the worst schedule S in the population 00 0 If zS 0 < zS 00 then replace S by S in P End Let ztF inish be equal to the metric value of the best schedule in P if ztF inish < zbest then zbest = ztF inish ; Dbest = tFinish Set LSTi = LSTi + 1 for all activities End Report Dbest and zbest

AC

Figure 8: Iterative framework for population-based iterated greedy algorithm

33

ACCEPTED MANUSCRIPT

curred for a few instances, we simply set the upper bound by adding enough extra time to the EST of the last dummy activity and increased Dmax . In the

CR IP T

implementation of the population-based iterated greedy algorithm the population size was set to 50, and the number of iterations were 1000. Gurobi 6.5

(Gurobi Optimization [4]) was used for optimally solving the mixed-integer models. Gurobi was chosen as it provides a state-of-the-art mixed-integer

linear and quadratic solver, and it is also free to use for academic purposes.

AN US

All model interfaces to Gurobi and algorithms were coded in Java. Exper-

iments were run on an Intel Core i5, 2.5 GHz computer with a RAM of 4 Gb.

Table 1: Average run times (seconds)

Model 2 1.17 3.29 6.54 17.94 55.21 60.16 170.87 315.84 651.21

M

1 3 5 1 3 5 1 3 5

ED

10 10 10 15 15 15 20 20 20

Model 3 (Linearized) 15.05 52.48 134.51 727.82 772.03 1814.93 3014.46 5261.58 9427.20

CE

PT

rlp rlp rlp rlp rlp rlp rlp rlp rlp

Model 1 0.02 0.05 0.10 0.19 0.24 0.23 0.32 1.94 2.94

AC

First we tried to solve benchmark problems exactly. While we could solve

all problem instances for Model 2 for up to 30 activities, most instances with 50 activities could not be solved within 6 hours, a time limit we have set for all problems. However, since RLP is NP-hard it is hardly surprising that problems become intractable after a certain size. As expected, the average 34

ACCEPTED MANUSCRIPT

run times increased with the number of activities, the number of resource types and the complexity of the models. Solving Model 3 and Model RRH

CR IP T

to optimality proved to be impractical as in many cases the time limits were exceeded. Average run times for Model 1, Model 2 and Model 3 (linearized)

with up to 20 activities are given in Table 1. In case of Model RRH, problems even with 10 activities were difficult to solve. When determining the best

duration with the RRH metric, we used an iterative approach where the

AN US

project duration was increased by 1 at each iteration and found the duration

with the best RRH value. For two sample networks with 30 and 120 activities from the literature, Model RRH was only solved for certain fixed durations to obtain as good of a solution as possible. Model RRH results were helpful in

in the sample networks.

M

measuring how well the heuristic algorithms are performing for RRH metric

As can be seen from Table 2 and Table 3, the leveling benefits obtained

ED

from extending the duration decrease when the number of resource types increases. Furthermore, the optimal durations get closer to the CPM duration

PT

when the number of resource types increases. Comparison of values in both tables shows that if daily target resource usages are updated according to

CE

the averages indicated by the project duration instead of keeping the target values the same regardless of the project duration, better leveling can be obtained at the expense of extending the project more. Table 4 suggests that

AC

with RRH metric the duration extensions needed to obtain the best leveled profile may be much more compared to other metrics but more leveling benefits can be achieved by extending the project. However, optimal solutions for larger problems could not be obtained so it may not be appropriate to

35

ACCEPTED MANUSCRIPT

make a generalization from this single result. Table 5 shows additional objective function value decreases for 10 activities with 3 and 5 resource types

CR IP T

when the problems are also run independently for each resource type and then the objective function values for individual resource types are added

up. Reported additional improvements are decreases over the optimal solution with variable project duration under the objective of minimizing the sum of deviations while keeping the target values constant. The comparison

AN US

shows that each resource type can actually be leveled much better had they not depended on each other. Thus, activities actually need to be scheduled

differently to optimize leveling of each resource type. But when resource types are optimized together, finding a common project duration and activity starting times from which all resource types can benefit becomes more

M

and more difficult with more resource types. Note that the optimal durations

expected.

ED

for each resource type were different for independent runs in most cases as

Table 2: Optimal average percent changes with same targets

PT

10 10 10 15 15 15 20 20 20

1 3 5 1 3 5 1 3 5

AC

CE

rlp rlp rlp rlp rlp rlp rlp rlp rlp

Average increase in duration 12.00 7.05 3.05 10.83 6.87 4.10 8.92 7.21 3.73

36

Average decrease in penalties 16.56 3.92 1.04 14.21 4.82 2.02 13.56 3.99 1.36

ACCEPTED MANUSCRIPT

Table 3: Optimal average percent changes with different targets

1 3 5 1 3 5 1 3 5

CR IP T

10 10 10 15 15 15 20 20 20

Average decrease in penalties 34.13 8.74 3.36 34.45 10.25 5.91 32.11 8.78 3.77

AN US

rlp rlp rlp rlp rlp rlp rlp rlp rlp

Average increase in duration 29.08 12.18 10.55 27.91 15.38 9.06 21.23 11.47 7.20

Table 4: Optimal average percent changes with RRH

M

Average increase in duration 64.59

Average decrease in penalties 48.71

ED

rlp 10 1

PT

Table 5: Averages of additional percent decreases by summing up independent solutions of each resource type

CE

rlp 10 3 rlp 10 5

Average additional decrease in penalties 12.73 14.09

AC

RRH results for the sample networks given in Rahman and Elazouni [14]

can be found in Table 6 and Table 7. Results for the genetic algorithm were taken from Rahman and Elazouni [14]. Note that optimal solutions for these networks for certain durations are also provided in these tables. Data for the sample networks and best solutions we obtained for them can be found 37

ACCEPTED MANUSCRIPT

in the Appendix. Heuristic methods in this work perform better than the genetic algorithm. While this could be related to many factors such as the

CR IP T

differences in the initial populations, it is important to mention that experimented duration extensions in the genetic algorithm are comparatively small and the solution space attainable by larger extensions is not explored. Results obtained by the use of the population-based iterated greedy algorithm

are given in Table 8, Table 9 and Table 10. The percent changes provided in

AN US

these tables are changes from values found by the heuristic using the CPM duration. An advantage of this heuristic is that it can be applied for any

chosen metric. While the RRH heuristic is fast, it is specifically designed for the RRH metric and cannot be applied to other metrics. The resulting project durations by both methods extend the projects considerably. Recall

M

that optimal solutions of problems with 10 activities and one resource type also had quite long extensions (Table 4). Such extensions may not be desir-

ED

able from a practical point of view. However, as can be seen from Tables 6 and 7 the RRH heuristic seems to provide good upper bounds. The improve-

PT

ments over the initial solution found by the heuristic are also significant. Table 11 compares results of population-based iterated greedy algorithm and

CE

the greedy RRH algorithm by using iterated greedy solution under CPM duration as a benchmark. The greedy RRH algorithm provides comparable benefits with shorter durations. As a note, experiments in Table 11 used

AC

problem instances obtained by changing the input data from PSPLIB rather than generating new data only with precedence relationships. Since PSPLIB data has general temporal lags, to generate instances with precedence relationships only, first backward arcs were removed from these networks. If the

38

ACCEPTED MANUSCRIPT

resulting networks still contained cycles, those instances were not used in the experiments. The numbers in parentheses in the first column of Table 11

CR IP T

show number of problem instances that were used from each problem set. Table 6: RRH values for sample network with 30 activities

Optimal

Genetic

Ballestin

27 21 20 18 16 16 11 11 8 7

36

27 29 27 27 29 29 29 29 26 26

M

AN US

36 50 50 29

Greedy (Initial)

12 (52)

-

16

ED

Project duration 51 52 53 54 55 56 57 58 59 60-70 67 74

PT

Table 7: RRH values for sample network with 120 activities

AC

CE

Project duration 162 163 166 265 292

Optimal (Best after four days) 89 (80, gap = 22%) -

Genetic

Ballestin

174

114 117 118 91

143

Greedy (Initial)

90 (123)

39

ACCEPTED MANUSCRIPT

Table 8: Average percent changes with Ballestin et al. (same targets)

1 3 5 1 3 5 1 3 5

Optimal found 35 35 33 23 24 35 15 18 25

CR IP T

10 10 10 15 15 15 20 20 20

Average decrease in penalties 16.62 3.85 1.32 12.98 4.51 2.14 10.99 3.50 1.48

AN US

rlp rlp rlp rlp rlp rlp rlp rlp rlp

Average increase in duration 10.75 7.90 3.14 10.57 6.71 7.38 12.65 9.22 5.58

ED

1 3 5 1 3 5 1 3 5

Average increase in duration 33.42 18.93 20.81 28.36 25.38 22.42 24.73 20.13 21.99

PT

10 10 10 15 15 15 20 20 20

Average decrease in penalties 35.45 11.15 6.18 33.38 11.49 7.43 29.52 9.17 6.29

AC

CE

rlp rlp rlp rlp rlp rlp rlp rlp rlp

M

Table 9: Average percent changes with Ballestin et al. (different targets)

40

Optimal found 26 9 1 4 4 2 9 3 0

ACCEPTED MANUSCRIPT

Table 10: Average percent changes with Ballestin et al. (RRH)

1 3 5 1 3 5 1 3 5

CR IP T

10 10 10 15 15 15 20 20 20

Average decrease in penalties 35.13 31.03 34.15 38.75 26.55 33.08 35.68 25.07 25.75

AN US

rlp rlp rlp rlp rlp rlp rlp rlp rlp

Average increase in duration 11.13 37.76 56.30 22.41 49.92 46.06 22.11 45.69 55.09

Table 11: Average percent decreases in objective value and increases in duration

M

zGreedy (%) 25.86 39.28 39.47 37.55 37.08 34.96 32.13 30.66 31.92

DB (%) 8.90 81.19 84.16 6.57 84.47 82.59 20.50 113.75 106.70

DGreedy (%) 11.10 51.77 55.56 18.56 59.27 50.93 29.57 54.44 53.63

AC

CE

zB (%) 25.00 40.94 44.19 44.84 40.13 41.85 45.83 36.16 37.30

ED

zBCP M 2.31 319.84 6619.93 5.16 491.65 6601.97 8.85 539.16 5249.80

PT

Set (Files) rlp 10 1 (29) rlp 10 3 (28) rlp 10 5 (38) rlp 15 1 (32) rlp 15 3 (23) rlp 15 5 (34) rlp 20 1 (33) rlp 20 3 (34) rlp 20 5 (28)

7.2. Iterative Solution Approach Rather than directly solving for the optimal duration with best leveling,

it is also possible to adapt an iterative approach where the fixed duration of a project is increased by one time unit until a duration upper bound is 41

ACCEPTED MANUSCRIPT

reached while solving a fixed duration model at each iteration. To that end, we solved Model 1 which deals with ROP at each iteration. To arrive at the

CR IP T

optimal sum of absolute deviations, we added related (weighted) constant terms to the solution of ROP (see Proposition 3). Furthermore, at each

iteration the best objective function value up to that iteration was used as

an upper bound (cutoff). When the duration upper bound is reached, the best objective function value from all iterations is reported together with

AN US

the corresponding duration as the optimal solution. Numerical experiments

indicate that, in general, the iterative approach with Model 1 is faster than the direct approach with Model 2. Thus, if problem sizes permit solving a problem exactly, using a fixed duration model iteratively should be preferred over solving Model 2 directly. It should be noted that when cutoff values are

M

not provided during the iterations, the direct approach becomes faster. For Model 3, it is much more convenient to use the iterative solution approach,

ED

and provide the calculated target values for each duration as parameters at each iteration. Run times for direct and iterative approaches can be found

AC

CE

PT

in Table 12 and Table 13.

42

ACCEPTED MANUSCRIPT

10 10 10 15 15 15 20 20 20

1 3 5 1 3 5 1 3 5

Iterative 0.43 0.91 1.78 6.15 12.63 11.80 104.95 146.31 261.83

AN US

rlp rlp rlp rlp rlp rlp rlp rlp rlp

Direct 1.17 3.29 6.54 17.94 55.21 60.16 170.87 315.84 651.21

CR IP T

Table 12: Average time comparison (seconds) between iterative and direct approaches (same targets)

10 10 10 15 15 15 20 20 20

1 3 5 1 3 5 1 3 5

Direct 15.05 52.48 134.51 727.82 772.03 1814.93 3014.46 5261.58 9427.20

Iterative 2.70 2.52 5.02 180.41 92.36 44.90 5395.46 1349.77 1056.57

AC

CE

PT

ED

rlp rlp rlp rlp rlp rlp rlp rlp rlp

M

Table 13: Average time comparison (seconds) between iterative and direct approaches (different targets)

8. Conclusion Under circumstances where resource level fluctuations are costly, cost re-

ductions in a project can be obtained by extending the project duration. In 43

ACCEPTED MANUSCRIPT

this article, we provided mixed-integer linear and quadratic models for several objectives to find the minimal duration with the best possible leveling

CR IP T

when activities with precedence relaionships are scheduled. These models were used to solve small benchmark problems from the literature to opti-

mality. To solve larger problems where an exact approach fails, we tested a

state-of-the-art heuristic on the benchmark problems under the variable du-

ration scenario. Furthermore, a new greedy heuristic for Release and Rehire

AN US

problems was developed. We also compared the direct approach for solving for the optimal duration against an approach where the project deadline is iteratively increased and a fixed duration Resource Leveling Problem is solved at each iteration. Some theoretical results regarding the optimal duration under different objectives were provided as well.

M

As indicated by our computational experiments sometimes even a moderate duration increase can bring about a significant improvement in resource

ED

profiles. Thus, when circumstances allow, a project manager can actually use this to her/his advantage, and obtain a project plan with a better resource

PT

profile and extended project duration. However, one has to be careful when choosing the measure for leveling. For example, the classical metric of sum-

CE

ming the squares of daily resource usages will result in the longest possible project duration. Furthermore, the amount of benefits obtained for different measures can be significantly different. Benefiting from better resource level-

AC

ing by extending the project duration becomes more difficult as the number of resources increases. This is due to the fact that often an improvement for one or more resource types is offset by the setbacks in other types.

44

ACCEPTED MANUSCRIPT

References [1] Ballestin, F., Schwindt, C., Zimmermann, J., 2007. Resource leveling

CR IP T

in make-to-order production: Modeling and heuristic solution method. International Journal of Operations Research 4 (1), 50–62.

[2] Christodoulou, S., Michaelidou-Kamenou, A., Ellinas, G., 2015. Heuris-

tic methods for resource leveling problems. In: Schwindt, C., Zimmer-

AN US

mann, J. (Eds.), Handbook on Project Management and Scheduling. Vol. 1. Springer, Switzerland, Ch. 18, pp. 389–407.

[3] El-Rayes, K., Jun, D., 2009. Optimizing resource leveling in construction projects. Journal of Construction Engineering and Management

M

135 (11), 1172–1180.

[4] Gurobi Optimization Inc., 2015. Gurobi Optimizer Reference Manual.

ED

URL http://www.gurobi.com

[5] Harris, R., 1990. Packing method for resource leveling (PACK). Journal

PT

of Construction Engineering and Management 116 (2), 331–350. [6] Kim, J., Kim, K., Jee, N., Yoon, Y., 2005. Enhanced resource level-

CE

ing technique for project scheduling. Journal of Asian Architecture and

AC

Building Engineering 4 (2), 461–466.

[7] Kreter, S., Rieck, J., Zimmermann, J., 2014. The total adjustment cost problem: Applications, models, and solution algorithms. Journal of Scheduling 17, 145–160.

45

ACCEPTED MANUSCRIPT

[8] Liao, T., Egbelu, P., Sarker, B., Leu, S., 2011. Metaheuristics for project and construction management - A state-of-the-art review. Automation

CR IP T

in Construction 20 (5), 491–505. [9] Neumann, K., Zimmermann, J., 1999. Resource levelling for projects

with schedule-dependent time windows. European Journal of Operational Research 117, 591–605.

AN US

[10] Petegham, V. V., Vanhoucke, M., 2015. Heuristic methods for the resource availability cost problem. In: Schwindt, C., Zimmermann, J. (Eds.), Handbook on Project Management and Scheduling. Vol. 1. Springer, Switzerland, Ch. 17, pp. 339–359.

[11] Ponz-Tienda, J., Yepes, V., Pellicer, E., Moreno-Flores, J., 2013. The

M

resource leveling problem with multiple resources using an adaptive ge-

ED

netic algorithm. Automation in Construction 29, 161–172. [12] Pritsker, A., Watters, L., Wolfe, P., 1969. Multi-project scheduling with

PT

limited resources: a zero-one programming approach. Management Science 16, 93–108.

CE

[13] PSPLIB, 2012. Project scheduling problem library. http://www.wiwi.tuclausthal.de/abteilungen/unternehmensforschung/forschung/benchmark-

AC

instances/, Single Mode Resource Levelling Problem, Testset 2.

[14] Rahman, M., Elazouni, A., 2015. Devising extended-duration schedules of enhanced resource leveling. Canadian Journal of Civil Engineering 42 (8), 552–562.

46

ACCEPTED MANUSCRIPT

[15] Rieck, J., Zimmermann, J., 2015. Exact methods for resource leveling problems. In: Schwindt, C., Zimmermann, J. (Eds.), Handbook

CR IP T

on Project Management and Scheduling. Vol. 1. Springer, Switzerland, Ch. 17, pp. 361–387.

[16] Rieck, J., Zimmermann, J., Gather, T., 2012. Mixed-integer linear pro-

gramming for resource leveling problems. European Journal of Opera-

AN US

tional Research 221, 27–37.

[17] Roca, J., Pugnaghi, E., Libert, G., 2008. Solving an extended resource leveling problem with multiobjective evolutionary algorithms. International Journal of Computational Intelligence 4 (4), 289–300. [18] Rodrigues, S., Yamashita, D., 2015. Exact methods for the resource

M

availability cost problem. In: Schwindt, C., Zimmermann, J. (Eds.), Handbook on Project Management and Scheduling. Vol. 1. Springer,

AC

CE

PT

ED

Switzerland, Ch. 17, pp. 319–338.

47

ACCEPTED MANUSCRIPT

Appendix A. Sample Networks

No

Activity Data

Predecessors

11

Aj,[2,10,17]

Ae,Ah

12

Al,[1,13,18]

Af,Ah

Ab

13

An,[4,20,22]

Ah

Ab

14

Ak,[2,10,19]

Ai,Aj

Ae,[3,11,13]

Ad

15

Aq,[2,28,29]

Aj,Ao

CR IP T

Table A.14: The best RRH solution obtained for the 30-activity network (duration=60, RRH=7)

Af,[2,15,11]

Ac

16

Am,[5,10,21]

Ak,Al

7

Ag,[1,10,13]

Ac,Ad

17

Ap,[5,10,26]

8

Ah,[3,10,14]

Ag

18

Ar,[3,20,26]

9

Ai,[2,11,16]

Ae,Af

19

10

Ao,[3,19,19]

Ag

20

Activity Data

Predecessors

1

Aa,[2,10,0]*

2

Ab,[4,10,2]

Aa

3

Ac,[1,13,10]

4

Ad,[4,10,6]

5 6

No

Activity Data

Predecessors

21

Av,[3,23,31]

Ap,Aq

22

Au,[3,10,36]

At

23

Aw,[1,17,37]

Aq,Ar,At

24

Ax,[5,10,39]

Aq,Ar,As,Au

25

Ay,[2,20,38]

Av,Aw

26

Ba,[1,10,44]

Aw,Ax

Am,Ao

27

Bd,[4,11,45]

Aw,Ax

Am

28

Bb,[2,12,49]

Ba

As,[3,15,34]

An,Ap

29

Bc,[4,10,51]

Ba

At,[5,10,31]

An,Ap

30

Be,[5,10,55]

Ay,Bd,Bb,Bc

AN US

No

AC

CE

PT

ED

M

*Activity name,[duration (days), resources (units/day), starting day]

48

ACCEPTED MANUSCRIPT

Table A.15: The best RRH solution obtained for the 120-activity network (duration=163, RRH=80)

Activity Data

Predecessors

No

Activity Data

Predecessors

No

Activity Data

Predecessors

CR IP T

No

Aa,[2,5,0]*

41

Bp,[4,5,57]

Bk,Bm

2

Ab,[3,5,20]

Aa

42

Bq,[2,5,61]

Bn,Bo,Bp

81

Df,[3,17,107]

Dd,De

82

Dg,[4,5,106]

Db,Dd

3

Af,[3,8,2]

Aa

43

Br,[5,5,63]

Bq

83

Dh,[2,9,114]

Dc,Dg

4

Ac,[1,15,15]

Ab

44

Bs,[1,10,68]

Bq

5

Ad,[4,5,5]

Ab

45

Bt,[1,5,68]

Br

84

Di,[1,5,110]

Dg

85

Dj,[5,5,111]

Di

6

Ag,[4,8,5]

Af

46

Bv,[3,11,70]

Br,Bs

7

Ae,[5,5,9]

Ad

47

Bu,[3,6,69]

Bs,Bt

86

Dk,[4,13,116]

Df,Di

87

Dl,[3,13,120]

De,Dj

8

Ah,[3,12,16]

Ac,Ag

48

Bw,[5,5,69]

Bs,Bt

88

Dm,[4,5,116]

Dh,Dj

9

Ak,[5,8,9]

Ag

49

Cb,[1,11,73]

Bv

89

Dn,[3,5,120]

Dm

AN US

1

10

Ai,[5,5,14]

Ae,Ag

50

Bx,[1,6,72]

Bu

90

Dq,[1,12,123]

Dl,Dm

11

Aj,[2,10,16]

Ac,Ae,Af

51

By,[2,6,73]

Bx

91

Do,[2,7,125]

Dn

Al,[2,8,14]

Ak

52

Cc,[4,5,74]

Bw,Bx

92

Dp,[4,5,123]

Dk,Dn

13

Am,[2,12,19]

Ah

53

Ce,[3,7,74]

Bx

93

Dt,[4,7,124]

Dn

14

An,[2,5,19]

Ai

54

Ca,[4,6,75]

By

94

Dr,[2,6,127]

Dp,Dq

15

Aq,[3,8,18]

Al

55

Cd,[2,5,78]

Cb,Cc

95

Ds,[3,5,127]

Dl,Do,Dp

16

Ao,[1,5,21]

Aj,Am,An

56

Cg,[3,7,77]

Ce

96

Dy,[3,7,128]

Dt

17

Ap,[1,17,21]

Aj,Ak,An

57

Cf,[5,5,80]

Ca,Cd

97

Du,[2,7,131]

Dq,Ds

18

Ar,[2,5,22]

Ao,Aq

58

Ch,[5,6,80]

Ca,Cd,Cg

98

Dv,[2,5,130]

Dq,Ds

19

As,[5,5,24]

Ar

59

Ci,[5,6,86]

Cf,Ch

99

Dw,[4,6,129]

Do,Dr

As

60

Cj,[4,5,85]

Cf,Cg

100

Eb,[3,7,133]

Dy

Ap,As

61

Ck,[1,8,85]

Cf,Cg

101

Dx,[3,5,132]

Dv

Au,[4,10,30]

ED

At,[5,5,29]

21

PT

20

M

12

22

Av,[1,9,29]

As

62

Cl,[4,7,86]

Cf,Ch

102

Ea,[1,7,135]

Du

23

Aw,[4,10,34]

Au

63

Cm,[3,11,91]

Ck

103

Ec,[5,6,133]

Dw

Ay,[5,5,34]

At,Av

64

Cn,[4,6,91]

Ci,Ck

104

Ed,[5,5,136]

Dx,Ea,Eb

25

Bc,[3,13,38]

Av

65

Co,[1,5,89]

Cj,Ck

105

Ee,[3,12,136]

Ea

26

Ax,[3,10,41]

Av,Aw

66

Cq,[4,7,90]

Ck,Cl

106

Eh,[2,6,138]

Ec

27

Bb,[2,5,39]

Ay

67

Cp,[5,5,90]

Co

107

Ef,[1,5,141]

Ed

28

Ba,[2,10,44]

Ax,Ay

68

Cs,[2,13,98]

Cn

108

Eg,[1,13,139]

Eb,Ee

29

Be,[2,5,41]

Bb,Bc

69

Ct,[1,6,95]

Cm,Cn,Co,Cq

109

Ei,[5,8,140]

Ee,Eh

30

Bd,[4,10,46]

Ba,Bc

70

Cu,[4,13,94]

Co,Cq

110

Ej,[1,8,145]

Ei

31

Bf,[5,5,43]

Be

71

Cv,[5,8,96]

Cq

111

Ek,[5,5,142]

Ef,Eh

32

Bh,[1,13,50]

Be

72

Cr,[1,5,95]

Cm,Cp,Cq

112

El,[4,10,146]

Ed,Eg

33

Bg,[3,5,48]

Bf

73

Da,[5,13,100]

Cu

113

Em,[4,5,147]

Ee,Ek

34

Bi,[2,13,51]

Bd,Be

74

Cw,[5,5,96]

Cr,Ct

114

En,[1,13,151]

El

35

Bj,[1,5,51]

Bd,Bg

75

Dc,[4,13,110]

Da

115

Eo,[1,8,150]

Ej,El

36

Bk,[1,13,53]

Bi

76

Cx,[1,8,101]

Cs,Cw

116

Ep,[5,5,151]

Em,Eo

37

Bl,[4,5,52]

Bh,Bj

77

Cy,[2,7,102]

Cw

117

Eq,[5,12,153]

Ej,Ek,El

38

Bo,[4,10,54]

Bi,Bj

78

Db,[5,5,101]

Cv,Cw

118

Es,[1,12,152]

El,Em

39

Bm,[1,5,56]

Bl

79

De,[2,17,105]

Cw,Da

119

Er,[3,5,156]

Ep

40

Bn,[3,7,58]

Bl

80

Dd,[1,7,104]

Cu,Cv,Cx,Cy

120

Et,[4,5,159]

Er,Eq,Es

AC

CE

24

49

*Activity name,[duration (days), resources (units/day), starting day]