Uploaded by artyairvania

VKPaul-Talha-ResourceLeveling

advertisement
See discussions, stats, and author profiles for this publication at: https://www.researchgate.net/publication/357517234
Resource Leveling Using Genetic Algorithm
Article · January 2022
CITATIONS
READS
0
58
2 authors, including:
Virendra Kumar Paul
School of Planning and Architecture New Delhi
93 PUBLICATIONS 256 CITATIONS
SEE PROFILE
Some of the authors of this publication are also working on these related projects:
Resilience of Critical Infrastructure in the Extreme Weather Events-(UKIERI), 2019 View project
All content following this page was uploaded by Virendra Kumar Paul on 02 January 2022.
The user has requested enhancement of the downloaded file.
Resource Leveling Using Genetic Algorithm
Mohd Talha Khan1, Dr.Virendra Kumar Paul2
ABSTRACT:
Resource leveling is the process that ensures resource demand does not exceed resource availability[6].
Thus, the resource leveling defines the minimum resources that would be just sufficient to complete the
project on time. The goal of resource leveling is to minimize the incremental demands beyond
availability that cause fluctuations of resources.
The main drawback of existing scheduling methods is that they do not address the issue of resource
dependencies in working out the project schedule . Genetic Algorithm is a search heuristic that mimics
the process of natural evolution[7]. In this paper an attempt is made to develop a model of resource
leveling incorporating optimization technique of genetic algorithm. It also identifies the potential of
genetic algorithm in solving resource leveling problems and overcome the drawbacks of the
conventional resource leveling techniques.
Keywords:Resources, Resource Leveling, Optimisation, Genetic Algorithm, VBA
1
General Introduction
Few enterprises can remain competitive in a business environment without effectively managing the
cost of resources. In practice, common scheduling techniques (such as CPM and PERT) have proven to
be helpful only when the project deadline is not fixed and the resources are not constrained by either
availability or time. Since this is not practical even for small-sized projects, several techniques have been
studied to modify scheduling results on account of practical considerations. Resources for activities in a
construction project are limited in the real-life world. Therefore, resource levelling is of immense
importance to construction project management to avoid wastage and shortage of resources on a
construction project. [2]
Resource allocation, sometimes referred to as constrained-resource scheduling, aims to reschedule
project tasks so that a limited number of resources can be efficiently utilized while keeping the
unavoidable extension of the project to a minimum. On the other hand resource leveling attempts to
reduce the sharp fluctuations among the peaks and valleys in the resource histogram while maintaining
the original project duration. [2]
The main limitations of existing scheduling methods, whether precise or heuristic, is the fact that they
fail to solve complex practical problems effectively and do not allow for consideration of realistic
conditions. This paper presents an approach that integrates resource leveling with the genetic algorithms
the group of metaheuristic methods to overcome the limitations of the existing methods.[3]
1-Master’s degree student, Dept. of BEM, SPA, New Delhi, India
2-Professor, Dept of BEM, SPA, New Delhi, India
1
2
Resource unconstrained scheduling (Resource Leveling)
Resource leveling describes the process of reducing the fluctuations in resource usage over the project
duration.The challenge in resource leveling problems is to make the resource requirements as uniform
as possible and to force resource utilization to conform to a desired predetermined resource distribution
in order to meet the project reuirements. The task becomes even more challenging as the demand for the
different resources vary throughout the project duration and as project activities progress at different
rates. In addition, the availability (i.e., maximum limits) of the required resources could be constrained
by uncontrolled factors such as remote location of the project, competition with other major projects in
the project area, and similar factors [1].
2.1
Resource Histogram
This is a popular planning tool because it gives a good visual presentation which is easy to assimilate
and understand. The prerequisites for resource histogram are:
i) For early start bar chart it is assumed that the planner wishes to start all activities as soon as possible
and keep the activity float for flexibility; and,
ii) Once the resource requirement has been added to the early start bar chart the requirements are
summed by moving forward through the bar chart one day at a time to give total resource required per
day.
The total daily resource requirements are then plotted vertically to give the resource histogram. It is
important to note that separate resource histograms are required for different trades (see Fig.1) [1].
3
Importance of resource based scheduling
In an actual project scenario construction resources like crew sizes, equipment and materials are
limited. Thus assumption of having unlimited resources in the traditional CPM technique is not feasible.
There are Two tyes of problems that arise in developing a resource constrained project schedule. It is
not necessary that a critical path of the schedule is feasible, because one or more resources might be
needed by many other activities, it could be the case that the shortest project duration identified by the
critical path scheduling calculation is impossible.
Fig 1. Resource usage
sour(((pattern
2
Finding a feasible or possible schedule is the first problem in resource constrained scheduling. In the
course of optimizing resource allocation, the schedule repeatedly changes and along with the daily
demands of resources. Therefore, the objective of project managers is to optimize both the allocation as
well as leveling aspects of resources. [4]
3.1
Peculiarity of scheduling problems
Handling large data volume for scheduling a project is a major problem. In addition to this, Wall
(1996) has identified the following inherent difficulties for scheduling problems. [9]
i) Based on the choice of the representation and nature or complexity of the scheduling problem, the
ssearch space requirement for the best solution could be considerable. Also, a generalized approach
towards the problem rather than the specific problem could add to the complexity [9].
ii) Based on the representation and the modeling assumptions, there may be a situation that a feasible
solution to a scheduling problem does not exist. For example, if all resources are available as constant
per period amounts and there are no restrictions on tasks or resources, a project surely have a feasible
schedule. At the very worst, one is required to extend the project until all tasks are completed [9].
The issues discussed above addresses the complexity of the scheduling problem, and the need for a
robust solution.
4
Genetic Algorithm
A Genetic Algorithm (GA) is a procedure used to find approximate solutions to search problems
through application of the principles of evolutionary biology. Genetic algorithms use biologically
inspired techniques such as inheritance, mutation, and recombination, or crossover. The GA consists of
an iterative process that evolves a working set of individuals called a population toward an objective
function, or fitness function [8].
The evolution usually starts from a population of randomly generated individuals and is an iterative
process, with the population in each iteration called a generation. In each generation, the fitnessof every
individual in the population is evaluated; the fitness is usually the value of the objective function in the
optimization problem being solved. The fittest individuals are stochastically selected from the current
population, and each individual's genome is modified to form a new generation. The new generation of
candidate solutions is then used in the next iteration of the algorithm. Often, the algorithm terminates
when either a maximum number of generations has been produced, or a satisfactory fitness level has
been reached for the population.[8]
GA employs the following key concepts to explain solution evolution:
i. Crossover – Exchange of genetic material (substrings) denoting rules, structural components,
features of a machine learning, search, or optimization problem.
ii. Selection – The application of the fitness criterion to choose which individuals from a population
will go on to reproduce.
iii. Replication–The propagation of individuals from one generation to the next.
iv. Mutation–The modification of chromosomes for single individuals.
3
Fig 2. Diagramatic view G.A Proecess [7]
4.1
Rationale for use of Genetic Algorithm
Ample successful applications related to GA have deen described in literature, but there also exist a
considerable number of examples in which GAs perform poorly. There are, however no direct answers
to the question of potential applications where GA is a superior tool. Many researchers share the
intuitions that wherever the space to be searched is large, GA is not known to be perfectly smooth and
unimodal (i.e., consists of a single smooth "hill"). On the other hand, if the fitness function is noisy, and
the task does not require a global optimum to be found, GA will have a good chance of being competitive
with or surpassing other "weak" methods (methods that do not use domain−specific knowledge in their
search procedure). A GA's performance will depend very much on details such as the method used for
encoding candidate solutions, the operators used, the parameter, and the particular criteria for success
[5].
5
Application of GA in construction industry and IT tools
The artificial intelligence (AI), attempts to understand intelligent entities as well as construct them. .
AI has produced many significant and impressive products so far. GA solutions are useful for
multidimensional optimization problems in which the chromosome can encode the values for different
variables being optimized [10].
GA applications specific to construction as[10]:
a) Genetic Algorith for construction space management
b) Construction Robot Fleet Management System Prototype
c) Site-Level Facilities Layout Using Genetic Algorithms.
d) Genetic Algorithms for Construction Site Layout in Project Planning
e) Application of genetic algorithm in scheduling
The information tools that enable GA include, Matlab, Visual Basic Application in Excel, Excel Plug
ins and come specific Programming Languages.
6
Resource Leveling using Genetic Algorithm
Typically, in real-world network analysis, each activity has associated with it some resources (such
as men, machinery, materials, etc.). As mentioned before that, in calculating the minimum overall project
completion time, no consideration was given to resource restrictions.
4
Typically, two different types of resource restricted problems are considered, i. Resource
smoothing (also known as resource levelling) problems, and ii. Resource constrained (also known as
resource allocation) problems[11]. However the Resource Constrained problem is not within the scope
of this study.
For application of GA in the problem of resource leveling, it is desired to meet the minimum overall
project completion time of “T” weeks (hence implying that the times at which critical activities occur
are fixed).It is desired to start all non-critical activities at their earliest possible start times and the
precedence relationship of any activity can not be violated. The approach of delaying the non-critical
activities to achieve a smooth/uniform resource profile without delaying the project duration has been
employed in this paper to demonstrate the application in the following sections.
7
Formation of Objective function
For achieving the above approach to problem in a strategic manner an objective function is decided
as:
Deviation = (Rt-R)2
Eq.(1)
where, Rt is cumulative resource usage at any time T, and R is Desired resource level. The objective is
to minimize the above deviation to achieve a smooth resource profile. The logic behind using squared
deviations as the function to be minimized is that the squared term will discriminate against unusually
large deviations. However, in essence, there is no established procedure to guide as to what the objective
function in resource smoothing should be.
7.1
Constraints to the problem
The constraints that are worked out and incorporated in the problem while modeling using genetic
algorithm are:
i) The precedence relationship is maintained and can not be altered,
ii) The total duration is fixed, i.e: Critical activities can not be delayed,
iii) Noncritical activities can not be delayed beyond their available slack, and
iv) Non negativity constraint, i.e: duration of any activity can not be negative.
7.2
Representation of the problem
For the above problem it is suggested to have different start times for different non critical activities and
try to search for the best combination which gives the smoothest profile. Representation of the problem
is the most crucial step in using genetic algorithm technique and can impact the results to every extent.
Diagrammatic representation is shown below of the representation of the problem (see Fig.3).
5
7.3
Fig 3. Representation of the problem in G.A
format
6
Optimization Procedure
The optimization procedure is formed by integrating the GA with an approach of resource leveling
explained above. The algorithm computational steps were performed in MS-Excel. The steps were partly
coded in Visual Basic Application in excel and a plugin of excel to solve GA is used. The steps include:
Step-1 Input project information in the given input table and the required details filled in an interacitve
input window,
Step-2 Initialize the calculation,
Step-3 Generate a population (random) of solution, and evaluate the population as per the fitness
function (objective function),
Step-4 Apply GA operators and checks for the minimal fitness function,
Step-5 Pick up the best solutions and then repeat from step-3 until the desired result is achieved or
time is out, and
Step-6 Use solution to plot the resource histogram and the modified activity time can be create the
schedule.
7.4
Flow chart of resource leveling using GA
Fig. 4 shows the Flow Chart used to solve the problem of resource leveling in the model.
8
Illustrative Example
Fig.4. Flowchart of
resource leveling using
GA
Table 1 shows the activity information of the illustrative example of a scheduling problem used for
presenting GA application in the steps as mentioned above. The example used here has 18 activities with
the information of durations, predecessors and slack availability is shown in the tabulation. This data
has been imported to the model from Microsoft project and then the resource requirement is input. The
problem used for the above purpose is a real life construction problem and the resource which is used
for leveling is the crew(man power), although for exemplary purpose only one resource is used for
leveling with the constraint that the model can accommodate only upto 5 resources and can be extended
further for incorporating more resources.
7
Table 1. Activity Information
The non critical activities are shifted and different combinations of early start times are tried and the
objective function is minimized.
Table 2. Activity information with resource usage
Fig 6. Network diagram
Fig 7. Gant Chart of the activities
8
It is evident from the resource histogram in the Fig.8 that the resource usage is fluctuating and it
varies from 14 to a maximum of 33. Since this fluctuation can be detrimental for the cost of the project
and such fluctuation can hinder the success specially of huge and complex projects.
Now for leveling the resources, the model is run with the set parameters and constraint as explained
earlier. The model creates a random population of early start times of the non critical activities and
checks for the minimum deviation, refer to “Eq.1 to create a smoothening of the profile.
R
E
S
O
U
R
C
E
U
S
A
G
E
P
E
R
D
A
Y
Duration (Days)
Fig 8. Resource Histogram Before Leveling
After implementing the proposed technique on a construction project it is noted that results are improved,
the new profile smoothens the resource usage as compared to the previous profile as can be observed in
the Fig.9. If the desired profile is not reached, the project manager can further smoothen it by changing
GA parameters or time/resources trade off can be made. Also, a minimum extension in the project
duration can be found restricting the resource usage to a desired limit, which, however, is not with in the
scope of this paper. The parameters which can be altered for further smoothening are mutation
probability, cross-over probability and the size of the population.
The results of the resource leveled profile are shown in Fig.9 and the modified data of activity
information can be used to create a new network diagram and Gant chart. However the time duration of
the project remains the same. It can be seen from the histogram in Fig.9 that the maximum resource
requirement is reduced to 27 and fluctuation is also lowered.
R
E
S
O
U
R
C
E
U
S
A
9
9
Conclusion
The main challenges in doing resource leveling was:
I. Precedence relationship cannot be violated.
II. Optimum results are desired since there is a huge search space and many combinations are
available.
III. Activities shifted should be within the available slack of the activity to unalter the project
duration.
IV.
Project duration is fixed although a different approach can be used when the duration is not fixed
and resources are fixed to a certain limit, so a minimum extension of project duration is desired
provided that the resource profile is smoothen.
From the above results it can be seen that the fluctuations is reduced after the application of the proposed
model, however further enhancement can be done as genetic algorithm randomizes the data and it
searches for the best result within the search space. The above model reduces the efforts of trying a very
large number of combinations of different times for which an activity can be shifted and selecting the
optimal or best solution from the above. GA approach gives user optimized results with better accuracy
and with huge reduction effort and time.
The model can be further extended to include the resource allocation problem to give project
managers more flexibility in terms of cost effectiveness because many a times restricting the project
duration does not offer the best solution and the problem can be viewed from a different perspective.
Due to time constraints the research was restricted to one aspect of the problem and it explores the
opportunity for improvement in the prevailing scheduling techniques and can be further enhanced.
10
References
i)
Senouci, A.B., and Eldin, N.N., “Use of Genetic Algorithm in Resource Scheduling of Construction Project”,
Journal of Construction Engineering and Management,ASCE, 11, 2004.
ii)
Haezy, T, “Optimization of Resource Allocation and Resource Levelling using Genetic Algorithms”, Journal
of Construction Engineering and Management,ASCE, 1999.
iii)
Jaskowski, P., and Sobotka, A., Scheduling Construction Projects Using evolutionary algorithm, J. Constr.
Eng. Manage., 2006.
iv)
Arun S.S., Construction Scheduling using Non–Traditional Optimization, IIT Guwahati, India 2005
v)
Melanie, M., An Introduction to Genetic Algorithms, , 1998, MIT Press.3]
vi)
https://courses.worldcampus.psu.edu/welcome/pmangt/samplecontent/520lesson08/lesson08_07.html,
(accessed on 28/May/2013)
vii)
http://en.wikipedia.org/wiki/Genetic_algorithm
(accessed on 28/May/2013)
viii)
http://myreaders.info/html/artificial_intelligence.html.
(accessed on 28/May/2013)
ix)
http://lancet.mit.edu/mwall/phd/thesis/thesis.pdf
(accessed on 28/May/2013)
x)
http://osp.mans.edu.eg/elbeltagi/AI%20Introduction.pdf
(accessed on 28/May/2013)
xi)
http://people.brunel.ac.uk/~mastjjb/jeb/or/netres.html
(accessed on 28/May/2013)
11
View publication stats
Download