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]