The Resource Leveling Problem With Multiple Resources Using An Adaptive Genetic Algorithm. Ponz (2013)
The Resource Leveling Problem With Multiple Resources Using An Adaptive Genetic Algorithm. Ponz (2013)
http://hdl.handle.net/10251/36586
Ponz Tienda, JL.; Yepes Piqueras, V.; Pellicer Armiñana, E.; Moreno Flores, J. (2013). The
Resource Leveling Problem with multiple resources using an adaptive genetic algorithm.
Automation in Construction. 29(1):161-172. doi:10.1016/j.autcon.2012.10.003.
http://dx.doi.org/10.1016/j.autcon.2012.10.003
Copyright
Elsevier
Title Page
Ponz-Tienda, J.L.
Yepes, V.
Pellicer, E.
Moreno-Flores, J.
*Manuscript
Click here to view linked References
Abstract
Resources management ensures that a project is completed on time and at cost, and that its
quality is as previously defined; nevertheless, resources are scarce and their use in the activities
of the project leads to conflicts in the schedule. Resource leveling problems consider how to
make the resource consumption as efficient as possible. This paper presents a new Adaptive
Genetic Algorithm for the Resource Leveling Problem with multiple resources, and its novelty
lies in using the Weibull distribution to establish an estimation of the global optimum as a
termination condition. The extension of the project deadline with a penalty is allowed, avoiding
the increase in the project criticality punishing the shift of activities. The algorithm is tested
with the standard Project Scheduling Problem Library PSPLIB, and a complete analysis and
benchmarking test instances are presented. The proposed algorithm is implemented using VBA
for Excel 2010 in order to provide a flexible and powerful decision support system that enables
practitioners to choose between different feasible solutions to a problem, and in addition it is
easily adjustable to the constraints and particular needs of each project in realistic environments.
1. Introduction
Project management is the process of the coordination and integration of activities in an
efficient and effective manner using limited resources. It consists of linking resources to their
respective deliverables and assembling them into the whole project [1]. Resource management
is an intrinsic element of project management [2,3,4]; resource management ensures that the
project is completed on time and at cost and that the quality is as previously defined [5,6,7].
This is even more necessary for project-based companies such as contractors [3,8,9]. In fact,
project scheduling problems are one of most important problems that practitioners deal with in
scheduling, especially when they need to achieve the most efficient resource consumption
without increasing the prescribed makespan of the project.
However, because resources are scarce, the use of resources in the activities of the project
leads to conflicts in the schedule [10]. Project scheduling problems comprise not only resource-
constrained problems but also resource leveling problems, among others [11]. These two kinds
of problem consider resource consumption in two different ways: in the former it is seen as a
constraint, and in the latter the problem is to make it as efficient as possible. Even though these
two approaches may seem similar, they are conceptually different. Both have been widely
studied by researchers and applied by practitioners, although these two groups are unaware of
the differences between the approaches and the serious limitations imposed by the heuristics
used in the commercial software.
These two problems are defined as non-deterministic polynomial-time hard (NP-hard)
problems [12]. The first approach is a regular problem known as the Resource Constrained
Project Scheduling Problem; its objective is to reduce the makespan without exceeding the
constraints of resource availability [13,12]. The second, known as the Resource Leveling
Problem (from now on, RLP) is a non-regular problem; its objective is to achieve the most
efficient resource consumption without increasing the prescribed makespan of the project
[14,12]. The two problems can be combined together as a multi-objective optimization problem,
but there is always one main objective (usually the makespan); the other objective (usually the
efficient resource consumption) is secondary.
Nevertheless, conventional analytical and heuristic methods are neither flexible nor
productive when solving the RLP [15]. Some reasons for this inefficiency are, on the one hand,
that exact procedures simplify the real problems so are not useful at offering optimal solutions
with acceptable computational effort [16] and, on the other hand, that heuristics offer solutions
which are far from optimal, so that it is necessary to apply metaheuristic algorithms to complex
and realistic projects [17]. Recently, important approaches have been made by researchers to
improve the efficiency of resource consumption, proposing different heuristics which are
applicable to small projects; simple examples try to show the merits of a particular algorithm,
without establishing clear criteria for a performance comparison between the different
algorithms [18].
Following this line of work, Liao et al. [11] proposed some ideas to advance the RLP in
realistic environments; these authors made several proposals for the development or the
improvement of the RLP. Regarding resources allocation, these authors proposed the use of a
decision support system to assist project managers, as well as the development of benchmarking
tests for performance assessment and comparison [11]. Concerning resources leveling, they
suggested the use of multiple resources allowing the extension of the project deadline with a
penalty [11]. We take these proposals as challenges to be overcome in this paper, contributing a
little to the corpus of knowledge in this field.
Therefore, in this paper we present an Adaptive Genetic Algorithm (AGA) for the RLP
with multiple resources allowing the extension of the project deadline with a penalty; for this
purpose, we use the Weibull distribution as a termination condition, establishing an estimation
of the global optimum. The proposed algorithm is tested with the standard “project scheduling
problem library” (PSPLIB) [18], presenting a complete set of benchmarking tests. A decision
support system is also used in order to implement this algorithm. Without loss of generality, we
consider the classical resource leveling objective function: the total squared utilization cost for a
given schedule.
The remainder of this paper is organized as follows. Section 2 provides the classification
and formulation of the RLP. Section 3 details the different solving procedures: exact, heuristic,
and metaheuristic algorithms with the new use of the Weibull distribution as a termination
condition. Section 4 describes the algorithm proposed for the RLP with multiple resources.
Computational results and the benchmarking test are explained in Section 5. Finally,
conclusions are drawn.
Once we have the elements that compose the problem, a general formulation could be:
k
Minimize å c f éër ( S , t )ùû
i =1
i i (10)
subject to:
SS finish £ T (11)
SSi + di + g ij £ SS j , for all i which are successors to j (12)
uij £ aij (13)
where g ij is the lead/lag between i and j
Having done this, the choice of the function f , which defines the criterion for the
optimization of the resources consumption, provides different ways of solving the problem. In
the case of the RLP, the optimization criterion focuses on getting the resource consumption as
level as possible. Consequently, a suitable choice of f could be:
( uit - ait )
2
T
f éë ri ( S , t ) ùû = å (14)
t =1 T
And Eq. (10) turns into:
( uit - ait )
2
k k T
Minimizeå ci × f éë ri ( S , t ) ùû =åå ci (15)
i =1 T i =1 t =1
Next, we can simplify the problem by taking into account the following:
1. ci = 1,for all 1 £ i £ k
2. ait = a,for all 1 £ i £ k and for all 1 £ t £ p
And then Eq. (15) becomes:
( uit - a )
2
k T
Minimizeåå (16)
i =1 t =1 T
As the minimum depends neither on how far the variable is shifted nor on the constant
values, we can take a = 0 and T = 1 :
k T
Minimize åå u
r =1 t =1
rt
2
(17)
The objective function expressed in Eq. (17) is known as a minimum squares optimization,
and was introduced by Burgess and Killebrew [19] in a heuristic algorithm in which the near-
optimality is determined by the schedule with the minimum total sum of the squares of resource
consumption for each period, as illustrated in Fig. 1. Other measures for the objective function
are the Minimum Moment (MOM) proposed by Harris [20], and more recently the entropy-
maximization proposed by Christodoulou et al. [21], using the maximality and sub-additivity
properties of the entropy function.
T T
Fig. 1 Initial åu
t =1
kt
2
= 10.669; levelled åu
t =1
kt
2
= 6.477
To compare the leveling effectiveness between different projects, we use the Resource
Improvement Coefficient (RIC) developed by Robert Harris [20], a measure that is independent
of the total resource demand and is given by Eq. (18). The RIC relates the variation of a
selected resource histogram to an ideal resource histogram which is a rectangle-shaped resource
histogram (the ideal leveled schedule corresponds to a RIC value of one):
T
T × å ut 2
t =1
RIC = 2
(18)
æ ö T
ç å ut ÷
è t =1 ø
A different kind of non-regular objective function for Eq. (14) can be considered if the
objective function to be optimized represents the Net Present Value Problem. In this case, the
objective function represents the net present value of the project, which is to be maximized, and
this is used in practice when expensive resources have to be purchased.
3. Solving Procedures
The previous conceptual linear programming cannot be solved directly, because there is no
easy way to translate the set S , used in Eq. (10), into a linear programming formulation. Other
linear programming formulations have to be used in order to be able to specify the resource
constraints in a correct and solvable form.
The most efficient formulations are based on integer and binary programming, and can be of
two kinds, depending on whether the decision variables establish the period of execution or the
finishing time of the activities.
The first formulation for the Resource Leveling Problem in the multi-mode case is based on
a set of binary decision variables x jst [22] that establish the period in which the activities are
finished:
ì1, if job j is finished in mode s at the end of period t ü
x jst = í ý,
î0, otherwise þ (19)
for j Î J , s Î M j ,and t Î éë ES j + d j , , LFj ùû
The variables x jst can only be executed in one mode, and are defined over the interval
between the earliest and latest finishing times (the delimiting periods) of the activities of the
project. These limits are established using the traditional forward and backward pass
calculations for the unconstrained problem.
The vector SS of Starting Scheduled period for each activity is defined by:
Pj
æ LFj ö
SS j = å ç å t ×x jst - d js ÷ (20)
ç
s =1 è t = EF j
÷
ø
The objective function to minimize the minimum total sum of the squares of resource
consumption for each period is:
2
æ R Pj LF j
T ö
Minimize åå ck × ç å å urst × å x jst ÷ (21)
ç jÎE(t ) s=1 ÷
k =1 t =1 è q = EF j ø
Subject to:
Pj LF j
ååx
s =1 t = EF j
jst = 1 for j Î J (22)
Pj LF j Pj LF j
å å (t - d ) × x
s =1 t = EF j
js jst -g ij - å å t ×x
s =1 t = EF j
ist ³ 0 for j Î J and i Î Pj (23)
å å
s =1 t = ES j +1
x jst = d j for j Î J (28)
t
d js × ( x jst - x j ,t +1 ) - å x jsq £ 0 for j Î J , s Î M j ,and t Î éë ES
S j + 1,, , LFj - 1ùû (29)
q = ES j +1
t -1
di × x jst - g ij - å
q = ES j +1
xist £ 0 for j Î J , i Î Pj , s Î M j ,and t Î éë ES j + 1, , LFi ùû (30)
The objective function in Eq. (27) minimizes the total sum of the squares of resource
consumption for each period. Eq. (28) ensures that each activity is executed for d j time units.
The execution of the activities without pre-emption is modeled in Eq. (29). The precedence
constraints are given in Eq. (30). Finally, Eq. (31) specifies that the decision variables are
binary. Easa [24] proposed a different binary integer formulation, preserving the precedence
constraints by limiting the shifting of the activities to the free float, which must be equal to or
greater than zero.
The Resource Leveling Problem is NP-Hard even if only one resource is considered [25,12].
The time complexity function is of the order of O ( q n ) with q being a positive constant. The
universe of schedules for an instance is:
J Mj
ÕÕ ( Ht
j =1 s =1
js + T - mkp + 1) (32)
with Ht js being the total float of the activity j processed in mode s , T the prescribed makespan,
mkp the makespan for the resource unconstrained problem (RUPSP or resource relaxation of
the RCPSP) and M j the execution modes of activity j .
If the prescribed makespan is established to be equal to the makespan for the RUPSP and
only one execution mode is considered, Eq. (32) can be simplified to:
J
Õ ( Ht
j =1
js + 1) (33)
4. An Adaptive Genetic Algorithm (AGA) for the RLP with multiple resources
Genetic Algorithms (GAs) [49] are stochastic search techniques based upon the principles
of Darwinian evolution, and simulate biological evolution. Basically, a collection of candidate
solutions (initial population) is manipulated (evolved) through a number of iterations
(generations). A candidate solution, called a chromosome or individual, is represented by a set
of integer values (genes).
In the RLP, the most usual representation for encoding a candidate solution is the vector
SS of Starting time Scheduled for each activity [15]:
individuali = {SSi1 , SSi 2 , , SSij , , SSiiJ } (34)
The initial population is generated randomly by heuristic constructive algorithms, and the
quality of individuals is evaluated and ranked using Eq. (10) as a fitness function. In the RLP the
fitness function can be any of the performance measures: the minimum moment [20], the
minimum squares (Eq. 17), the RIC (Eq. 18) or the entropy function [21].
The initial population ( P ) evolves, under a set of cyclic genetic operators. First, two
parents are randomly selected, based on their fitness values (a mechanism is used to ensure that
a solution with a better fitness has a higher chance of being selected as a mate). One or more
point crossovers divides the parents into different sub-parts, generating, by recombination, two
children or offspring ( P ' ) as new candidate solutions. Some genes of the offspring can mutate
producing different offspring ( P '' ), adding them to the population and reducing the population
by selection. The previous algorithm can be structured as follows:
begin :
P ¬ Generate InitialPopulation()
Evaluate( P)
Do
P ' ¬ Recombine( P)
P '' ¬ Mutate( P ')
Evaluate( P '')
P ¬ Select ( P ''È P ')
Loop until termination condition is met
end
4.1. The formulation for the AGA
The formulation used to solve the RLP with the proposed AGA is based on an integer
programming formulation with decision variables d j that represents the shifting of the initial
early start ( ES j ) of each activity using the traditional forward and backward pass calculations
for the resource unconstrained problem.
The vector SS of Starting time Scheduled (not period) for each activity is defined by:
SS j = d j + ES j (35)
The objective function to minimize the minimum total sum of the squares of resource
consumption for each period is:
2
R T æ ö J
Minimize åå ck × ç å ukt ÷ + e × å d j + r × DT (36)
ç jÎE (t ) ÷
k =1 t =1 è ø j =1
Subject to:
d j + ES j - (d i + ESi + di + g ij ) ³ 0 for j Î J and i Î Pj (37)
ES finish £ T + DT (38)
d j ³ 0 and integral for j Î J (39)
Consequently, the individuals are encoded as follows:
{
individuali = d i1 , d i 2 , , d ij , , d iiJ } (40)
The objective function Eq. (36) minimizes the total sum of the squares of resource
consumption for each period. The precedence constraints are given in Eq. (37). The prescribed
makespan, as the maximum project duration, is preserved by Eq. (38) and, finally, Eq. (39)
specifies that the decision variables are non-negative integer values.
The objective function in Eq. (36) has been improved by “punishing” the minimum total
sum of the squares, ensuring a better solution with the lower shifting and consequently
increasing the float of the activities. Besides this, Eq. (36) has been completed by allowing an
extension ( DT ) of the project deadline ( T ) or the prescribed makespan, with penalty ( r ). To
avoid undermining the main objective e must be very small; we recommend a value such that
the sum of the total float for all the activities multiplied by e is less than one, as expressed in
Eq. (41):
J
e × å Totalfloat j < 1 (41)
j =1
1
Loop until termination condition is met
end
Due to the conditions of the problem, it is very difficult to establish a general rule for the
feasibility range. The best performance values have been obtained with values for the feasibility
lower range equal to 10% ( Flr = 0.1 ) and for the feasibility upper range equal to 35%
( Fur = 0.35 ).The effect on the evolution process with different values for the feasibility lower
and upper ranges can be seen in Fig. 2:
Fig. 2 Effect of different values for the feasibility lower and upper ranges
The problem we want to solve is to determine the distribution that Ln follows, in particular
at the limit of large samples, and the asymptotic behavior of the random variable Ln . Fisher and
Tippet [48] solved this problem based on the so-called Stability Postulate: The distribution of
the largest (smallest) value in samples of size N ´ n will tend to the same asymptotic expression
as the distribution of the largest (smallest) value in samples of size n , since the largest (smallest)
of the minimums of N samples of size n is the same as the minimum of the sample of
size N ´ n . Consequently the asymptotic distribution must be the same for both cases.
Since a linear transformation does not change the form of the distribution, the Stability
Postulate can be formulated as:
F n ( x ) = F ( an x + bn ) (45)
Solving this functional equation for F , the Weibull distribution for the smallest value is
obtained as:
ì
b
æ x -g ö
-ç ÷
ï h
, if x > g
W ( x) = í1 - e
è ø
(46)
ï
î0, if x £ g
with h , b > 0 and where g is called the location parameter, h the scale parameter, and b the
shaper parameter.
1
Taking logarithms:
b
æ 1 ö æ x -g ö
log ç ÷=ç ÷ (49)
è 1 - F ( x) ø è h ø
Taking logarithms again:
æ æ 1 öö
log ç log ç ÷ ÷ = b log ( x - g ) - b log (h ) (50)
è è 1 - F ( x) ø ø
Changing the variables:
æ æ 1 öö
y = log ç log ç ÷ ÷ ; z = log ( x - g ) (51)
è è 1 - F ( x) ø ø
Eq. (49) becomes:
y = b z - b log ( x - g ) (52)
which can be seen to be a linear regression problem in the variables y and z ;
d (g ) = s yz2 (g ) / (s z2 (g )s y2 )
2
(53)
The value of g that minimizes Eq. (53), g 0 , is found using derivation techniques. In this
way we get the regression for the best correlation between y and z :
y = az + b (54)
Comparing Eq. (51) with Eq. (53) we get:
b = a; -b log (h ) = b (55)
which allows us to compute the other parameters b and h .
Finally, the termination conditions for the proposed AGA are:
ì# iteration = established number of iterations
ï
or í BB £ Objective Bound , where BB is the better bound obtained
ïW ( BB) = P ( x £ BB ) £ 0.001, where W is the Weibull distribution
î
And then the adaptive procedure in pseudocode is as follows:
begin :
P ¬ Generate InitialPopulation()
Evaluate( P)
Compute Weibull Bound (WB = ëêg ûú ) with InitialPopulation()
f = 1; e = 0
Do
P ' ¬ Recombine( P)
P '' ¬ Mutate( P ')
Evaluate( P '')
if feasibility in last g generations is out of range adjust mutprob and maxmut :
if feasibility < Flr; maxmut - = f;mutprob- = e
if feasibility >Fur; maxmut += f;mutprob+ = e
P ¬ Select ( P ''È P ')
Loop until termination condition is met
end
1
infinity. For each sample of size n, a location parameter (g n ) is obtained, in such a way
that lim g n = g . So there is a monotonous subsequence g nk ; ( k = 1, 2,3, ) , either increasing or
n ®¥
decreasing, that tends to g when k goes to infinity. Then, by performing a heuristic search for
such a monotonous subsequence of samples of size n1 = 32 , n2 = 64 , n3 = 96 , we obtain the
following results step by step:
First: We choose three samples of feasible solutions of sizes 1´ n,2 ´ n,3 ´ n , ( S1 , S2 , S3
respectively), n being the number of jobs of the instance j30_1, in a random way, for example,
the S 2 sample:
S 2 ={7863, 8115, 7905, 7931, 7983, 8151, 7969, 7957, 8113, 8077, 7803, 7903, 8055,
8163, 8193, 8127, 8145, 7963, 8051, 7959, 7733, 8151, 8005, 7767, 7883, 7937, 7939, 7877,
7945, 8001, 7745, 7811, 7949, 7865, 8043, 8161, 8033, 7763, 8039, 8259, 7881, 8129, 7993,
8187, 7957, 8019, 7921, 7965, 8057, 7985, 8137, 7989, 7981, 7999, 8003, 7775, 8171, 8081,
7969, 8193, 7855, 7953, 8075, 7975}
Second: From S1 , S2 , S3 , we calculate the density and distribution functions:
Nx
; F ( x) = å f ( x) ; (from Eq. (46) and Eq. (47)).
f ( x) =
n X £x
Fig. 3 Approach to the Weibull distribution for W32 ,W64 and W96
Fourth: if the algorithm finds a value for BB (Better Bound) which satisfies the
inequalities Wn ( BB) = P ( x £ BB ) £ 0,001; n = 32,64,96 , then it stops.
W32 (7549) = 0.000017 £ 0.001; where BB=7549
W64 (7549) = 0.000036 £ 0.001; where BB=7549
W96 (7549) = 0.000313 £ 0.001; where BB=7549
1
Table 2 GA parameters (2)
The AGA is programmed with VBA (visual Basic for applications) for Excel 2010,
applying a matrix algorithm for the RUPSP (the resource relaxation of the RCPSP), as can be
seen in Fig. 4 [54,55]. We have used a computer with an Intel Core i7 processor, 3.6Gh of
velocity and 8 GB of RAM with an average time consumed for the j30 set of 15 seconds with
1000 iterations.
The main statistics of the best improvement values found over the initial value of the
measure function (total sum of the squares of resource consumption for each period) are shown
in Table 3:
Table 3 Test statistics
The complete information about the benchmarking test can be downloaded from the
“Benchmarking for Resource Leveling Problem (PSPLIB j30, j60, j120)”,
(https://docs.google.com/spreadsheet/ccc?key=0AgisRN826029dHdEZmNDbmxBZDI1QmZN
SGQ4a1VhY3c), with the initial and leveled value for all the analyzed instances, the
improvements and the vector SS of Starting time Scheduled for each activity.
The correlation values obtained as a function of the logarithm of the time complexity and
the initial value of the measure function for the solved instances are shown in Table 4, Fig.5 and
Fig.6:
Table 4 Test correlation
Fig. 5 Correlation ( rxy ); Improvement over logarithm of the time complexity O ( q )
n
The results obtained in the test instances show that there is a significant positive correlation
between the improvement and the logarithm of the time complexity O ( q n ) , but that this is not
statistically significant when compared with the initial sum of the squares.
This is due to the fact that algorithmic complexity is determined by the slack in the tasks,
and, in the majority of cases, if the slacks are regularly distributed over the geometry of the
graph they will provide a greater number of feasible solutions to the problem, and consequently
a greater improvement capacity.
The heuristic does not differ significantly between the forward and backward scheduling
schemes, but a forward-backward scheme presents significant improvements compared with the
single direction scheduling scheme. The improvement of the forward-backward scheme with
respect to case of the single direction scheme is constant, and it seems not to be related to the
time complexity or the number of tasks. However, comparing the values obtained from the
application of the AGA and the analyzed heuristics, the improvement over the best heuristic
significantly increases with the number of tasks of the problem.
6. Conclusions
The Resource Leveling problem (RLP) is a non-regular problem whose objective is to
achieve a resource consumption which is the most efficient possible, without increasing the
1
prescribed makespan of the project. Conventional analytical and heuristic methods are neither
flexible nor productive when solving the RLP. Exact procedures are not useful for offering
optimal solutions with acceptable computational effort; and, on the other hand, heuristics offer
solutions which are far from the optimal so that it is necessary to apply metaheuristic algorithms
for complex and real projects in realistic environments.
In this paper:
1. We describe the complete state of the art of the RLP, proposing different binary and
integer mathematical formulations and incorporating modifications and improvements
on previous contributions.
2. We propose an Adaptive Genetic Algorithm (AGA) for the RLP with multiple resources
allowing the extension of the project deadline with a penalty.
3. We propose the use of the three-parameter Weibull distribution as a termination
condition for the metaheuristic, with location parameter g or the Weibull Bound ( WB )
as an estimation of the global optimum.
The previous contributions have been tested with the standard “project scheduling problem
library” (PSPLIB), presenting a complete set of benchmarking tests solved with only the most
usual and common parameters to provide clear criteria for comparison between the different
algorithms. To prove the merits of the proposed algorithm, the results we obtained have been
compared with the most common heuristic procedures and with a more efficient forward-
backward scheduling scheme. The proposed AGA is always better than the heuristics, especially
for the most difficult problems with 120 jobs.
The proposed AGA for the RLP has been implemented with VBA for Excel 2010 to provide
a flexible and powerful decision support system that enables practitioners to choose between
different feasible solutions to a problem, and that is in addition easily adjustable to the
constraints and particular needs of a project in a realistic environment. This contribution is a
tool that can be applied in a direct and simple way by practitioners; besides, it can serve as a
starting point for specialists in order to develop user-friendly and practical computer
applications to provide realistic and good solutions for production and project management.
The use of the Weibull distribution was applied following a heuristic process. Its
improvement is proposed as a future research field, searching for a bound ( e > 0 ) in such a way
that the inequality g n - g £ e , "n ³ N0 holds for all sample sizes n greater than a given
size N 0 ; the exact parameter would therefore be in the interval g n - e £ g £ g n + e .
Another important area for future research is the consideration of the graph density as a new
variable in the computational test, to determine its influence on the optimization and the
correlation between the other variables.
Acknowledgments
This study was partially funded by the Spanish Ministry of Science and Innovation
(research project BIA2011-23602).
References
[1] J. Turner, "Do you manage work, deliverables or resources?," International Journal of
Project Management, vol. 18, no. 2, p. 83–84, 2000.
[2] E. Goldratt, Critical Chain, North River Press, Inc., Great Barrignton, MA, 1997.
[3] I. Clark and T. Colling, "The management of human resources in project management-
led organizations," Personnel Review, vol. 34, no. 2, p. 178–191, 2005.
[4] J. Turner, "Towards a theory of project management: the nature of the project,"
International Journal of Project Management, vol. 24, no. 1, p. 1–3, 2006b.
1
[5] F. Karaa and A. Nasr, "Resource management in construction," Journal of Construction
Engineering and Management, vol. 112, no. 3, p. 346–357, 1986.
[6] M. Park, "Model-based dynamic resource management for construction projects,"
Automation in Construction, vol. 14, no. 5, p. 585–598., 2005.
[7] J. Turner, "Towards a theory of project management: the functions of project
management," International Journal of Project Management, vol. 24, no. 3, p. 187–189,
2006a.
[8] J. Söderlund and K. Bredin, "HRM in project-intensive firms: changes and challenges,"
Human Resource Management, vol. 45, no. 2, p. 249–265, 2006.
[9] M. Huemann, A. Keegan and J. Turner, "Human resource management in the project-
oriented company: a review," International Journal of Project Management, vol. 25, p.
315–323, 2007.
[10] S. Al-Jibouri, "Effects of resource management regimes on project schedule,"
International Journal of Project Management, vol. 20, p. 271–277, 2002.
[11] T.W. Liao, P.J. Egbelu, B.R. Sarker and S.S. Leu, "Metaheuristics for project and
construction management - A state-of-the-art review," Automation in Construction, vol.
20, no. 5, p. 491–505, 2011.
[12] K. Neumann, C. Schwindt and J. Zimmermann, Project Scheduling with Time Windows
and Scare Resources, Springer,Berlin, 2003.
[13] W. Herroelen, B. de Reyck and E. Demeulemeester, "Resource-constrained project
scheduling: a survey of recent developments," Computers & Operations Research, vol.
25, no. 4, p. 279–302, 1998.
[14] K. Brinkmann and K. Neumann, "Heuristic procedures for resource-constrained project
scheduling with minimal and maximal time lags: the resource-levelling and minimum
project-duration problems," Journal of Decision Systems, vol. 5, p. 129–156, 1996.
[15] S.S Leu, C.H. Yang and J.C. Huang, "Resource leveling in construction by genetic
algorithm-based optimization and its decision support system application," Automation
in Construction, vol. 10, p. 27-41, 2000.
[16] S. Hartmann, "Project scheduling with multiple modes: a genetic algorithm," Annals of
Operations Research, vol. 102, p. 111-135, 2001.
[17] P. Jaśkowski and A. Sobotka, "Scheduling construction projects using evolutionary
algorithm," Journal of Construction Engineering and Management, vol. 132, no. 8, p.
861-870, 2006.
[18] R. Kolisch and A. Sprecher, "PSPLIB - A project scheduling problem library,"
European Journal of Operational Research, vol. 96, p. 205-216, 1996.
[19] A. Burguess and J. Killebrew, "Variation in activity level on a cyclic arrow diagram,"
The Journal of Industrial Engineering, vol. 13, p. 76-83, 1962.
[20] R. Harris, Precedence and Arrow Networking Techniques for Construction, Wiley, New
York, 1978.
[21] S. E. Christodoulou, G. Ellinas and A. Michaelidou-Kamenou, "Minimum moment
method for resource leveling using entropy maximization," Journal of Construction
Engineering and Management, vol. 136, no. 5, p. 518-527, 2010.
[22] A.A.B. Prisker, L.J. Watters and P.M. Wolfe, "Multiproject scheduling with limited
resources: a zero-one programming approach," Management Science, vol. 16, p. 95-
108, 1969.
[23] L. Kaplan, "Resource-constrained project scheduling with preemption of jobs,"
Unpublished Ph. D. Thesis, University of Michigan, 1988.
[24] F. Ballestin, C. Schwindt and J. Zimmermann, "Resource leveling in make-to-order
production: modeling and heuristic solution method," International Journal of
Operations Research, vol. 4, no. 1, p. 50-62, 2007.
[25] S.M. Easa, "Resource leveling in construction by optimization," Journal of Construction
Engineering and Management, vol. 115, no. 2, p. 302-316, 1989.
[26] H. Ahuja, Construction Perfomance Control by Networks, Wiley, New York, 1976.
1
[27] M. Bandelloni, M. Tucci and R. Rinaldi, "Optimal resource leveling using non-serial
dynamic programming," European Journal of Operational Research, vol. 78, no. 2, p.
162-177, 1994.
[28] J. Rieck, J. Zimmermann and T. Gather, "Mixed-integer linear programming for
resource leveling problems," European Journal of Operational Research, vol. 221, no. 1,
p. 27-37, 2012.
[29] N. Agin, "Optimum seeking with branch and bound," Management Science, vol. 13, no.
4, p. B176-B185, 1966.
[30] K. Neumann and J. Zimmermann, "Procedures for resource leveling and net present
value problems in project scheduling with general temporal and resource constraints,"
European Journal of Operations Research, vol. 127, no. 2, p. 425-443, 2000.
[31] M. Mutlu, A branch and bound algorithm for resource leveling problem, Middle East
Technical University, Ankara (Turkey), 2010.
[32] T. Gather, J. Zimmermann and J.H. Bartels, "Exact methods for the resource levelling
problem," Journal of Scheduling, vol. 14, no. 6, p. 557–569, 2011.
[33] M. Hariga and S.M. El-Sayegh, "Cost optimization model for the multiresource leveling
problem with allowed activity splitting”. Journal of Construction Engineering and
Management, vol. 137, no.1, p. 56-64, 2011.
[34] P. Burman, Precedence Networks for Project Planning and Control, McGraw Hill,
London, 1972.
[35] R. B. Harris, "Packing method for resource leveling (PACK)," Journal of Construction
Engineering and Management, vol. 116, no. 2, p. 331-350, 1990.
[36] J. Martinez and P. Ioannou, "Resource leveling based on the modified minimum
moment heuristic," Civil and Building Engineering, p. 287-294, 1993.
[37] M. Hiyassat, "Modification of minimum moment approach in resource leveling,"
Journal of Construction Engineering and Management, vol. 126, no. 4, p. 278-284,
2000.
[38] V.A. Jeentra, O.V. Ksishnaiah Chetty and J. Prashanth Redy, "Petri nets for project
management and resource leveling," International Journal of Advanced Manufacturing
Technology, vol. 16, p. 516-520, 2000.
[39] T. Hegazy, "Optimization of resource allocation and leveling using genetic algorithms,"
Journal of Construction Engineering and Management, vol. 125, no. 3, p. 167-175,
1999.
[40] J. Roca, E. Pugnaghi and G. Libert, "Solving an extended resource leveling problem
with multiobjetive evolutionary algorithms," World Academy of Science, Engineering
and Technology, vol. 46, p. 712-723, 2008.
[41] J. Son, and M. Skibniewski, ”Multiheuristic approach for resource leveling problem in
construction engineering: hybrid approach,” Journal of Construction Engineering and
Management, vol. 125, no. 1, p. 23-31, 1999.
[42] H. Alsayegh and M. Hariga, "Hybrid meta-heuristic methods for the multi-resource
leveling problem with activity splitting," Automation in Construction, vol. 27, p. 89-98,
2012.
[43] G. K. Koulinas and K. P. Anagnostopoulus, "Construction resource allocation and
leveling using a threshold accepting based hyperheuristic algorithm," Journal of
Construction Engineering and Management, vol. 138, no. 7, p. 854-863, 2012.
[44] A. Mingozzi, V. Maniezzo, S. Ricciardelli and L. Bianco, "An exact algorithm for the
resource-constrained project scheduling based on a new mathematical formulation,"
Management Science, vol. 44, no. 5, p. 714-729, 1998.
[45] I. Paya-Zaforteza, V. Yepes, F. González-Vidosa and A. Hospitaler, "On the Weibull
cost estimation of building frames designed by simulated annealing," Meccanica, vol.
45, p. 693-704, 2010.
[46] A. Carbonell, V. Yepes and F. González-Vidosa. “Automatic design of concrete vaults
using iterated local search and extreme value estimation,” Latin American Journal of
Solids and Structures (accepted, in press).
1
[47] W. Weibull, "A statical distribution function of wide applicability," Journal of Applied
Mechanics, vol. 18, no. 3, p. 293-297, 1951.
[48] R. Fisher and L. Tippett, "Limiting forms of the frequency distribution of the largest or
smallest member of a sample," Mathematical Proceedings of the Cambridge
Philosophical Society, vol. 24, p. 180-190, 1928.
[49] J. Holland, Adaptation in Natural and Artificial Systems, University of Michigan Press,
Ann Arbor, 1975.
[50] M. Mahdavia, M. Fesangharyb and E. Damangirb, "An improved harmony search
algorithm for solving optimization problem," Applied Mathematics and Computation,
vol. 188, no. 2, p. 1567-1579, 2007.
[51] C. Lin, "An adaptive genetic algorithm based on population diversity strategy," Third
International Conference on Genetic and Evolutionary Computing, Guilin, China, 2009.
[52] M. Srinivas and L. Patnaik, "Adaptive probabilities of crossover and mutation in genetic
algorithms," IEEE Transactions on Systems, Man and Cybernetics, vol. 24, no. 4, p.
656-667, 1994.
[53] R. Kolish, A. Sprecher and A. Drexl, "Characterization and generation of a general class
of resource-constrained project scheduling problems," Management Science, vol. 41,
no. 10, p. 1693-1703, 1995.
[54] J. L. Ponz-Tienda, J. Belloch-Marco, C. Andrés-Romano and D. Gil-Senabre, "A matrix
algorithm for the RUPSP non spliting allowed," Revista de la Construcción, vol. 10, no.
2, p. 90-103, 2011.
[55] J.L. Ponz-Tienda, Gestión de Proyectos con Excel 2010, Anaya Multimedia (in
Spanish), Madrid, 2011.
[56] R. Álvarez-Valdés and J.M. Tamarit, "Heuristic algorithms for resource-constrained
project scheduling: a review and empirical analysis," in: R. Skovinski and J. Weglarz
(Eds.), Advances in Project Scheduling, p. 113-134, 1989.
1
Figure 1
T T
Fig. 1 Initial åu
t =1
kt
2
= 10.669; leveled åu
t =1
kt
2
= 6.477
Figure 2
8500
10%-15%
8300 30%-35%
8100
50%-55%
10%-35%
7900
7700
7500
7300
7100
6900
6700
6500
Fig. 2 Effect of different values for the feasibility lower and upper range
Figure 3
10.00%
15.00%
20.00%
25.00%
30.00%
35.00%
40.00%
45.00%
50.00%
0.00%
5.00%
1.00E+00
1.00E+05
1.00E+10
1.00E+15
1.00E+20
1.00E+25
1.00E+30
1.00E+35
1.00E+40
1.00E+45
1.00E+50
1.00E+55
1.00E+60
1.00E+65
1.00E+70
1.00E+75
1.00E+80
1.00E+85
1.00E+90
1.00E+95
1.00E+100
1.00E+105
1.00E+110
1.00E+115
1.00E+120
1.00E+125
1.00E+130
1.00E+135
1.00E+140
Fig. 5 Correlation ( rxy ); Improvement over logarithm of the time complexity
j30
1.00E+145
1.00E+150
j60
1.00E+155
O ( qn )
1.00E+160
1.00E+165
j120
1.00E+170
1.00E+175
Figure 6
50.00%
45.00%
40.00%
35.00%
30.00%
25.00%
20.00%
15.00%
10.00%
5.00%
j30 j60 j120
Lin(j30) Lin(j60) Lin(j120)
0.00%
0
100,000
200,000
300,000
400,000
500,000
600,000
700,000
800,000
900,000
1,000,000
1,100,000
1,200,000
1,300,000
1,400,000
Fig. 6 Correlation ( rxy ); Improvement over initial sum of the squares
Figure 7
30.000% 27.858%
28.000%
26.000%
23.099%
24.000%
AGA
22.000%
20.742%
Bw Fw
20.000% 18.452% 18.014%
Forward
18.000%
14.652% Backward
16.000%
14.000%
12.000%
10.000%
Table 1
GA parameters (1)
Totaljobs Popsize Elitesize Crosspoints mutprob Fur
Flr
j 30 32 32,64,96 0.1 1 0.1 15% 35%
j 60 62 62,124,186 0.1 1 0.1 15% 35%
j120 122 122,244,366 0.1 1 0.1 15% 35%
Table 2
Table 2
GA parameters (2)
e Ck ; k = {1, 2,3, 4} T , DT r instances max iterations
j 30 0 1 RUPSP, 0 0 480 1000
j 60 0 1 RUPSP, 0 0 480 2000
j120 0 1 RUPSP, 0 0 480 3000
Table 3
Table 3
Test statistics
Average Deviation % values
m s Min value Max value m ± 2s
j 30 18.45% 0.07176 4.41% 42.33% 96.04%
j 60 23.10% 0.07483 7.57% 48.24% 95.42%
j120 27.86% 0.06737 11.25% 47.74% 96.25%
Table 4
Table 4
Test correlation
Over complexity Over initial
O ( qn ) Sum of the squares
j30 j60 j120 j30 j60 j120
Covariance 0.146 0.301 0.556 -449.025 -2295.646 -854.354
Pearson ( rxy ) 0.544 0.544 0.583 -0.213 -0.341 -0.040
rxy2 29.578% 29.624% 33.962% 4.544% 11.609% 0.160%
Table 5
Table 5
Heuristic results vs. proposed AGA
j30 j60 j120
Parallel forward scheme 12.645% 15.314% 17.208%
Parallel backward scheme 12.641% 15.530% 17.496%
Fw-Bw scheme 14.652% 18.014% 20.742%
AGA 18.452% 23.099% 27.858%