Optimization of Resource Allocation
Optimization of Resource Allocation
net/publication/331989177
CITATIONS READS
2 70
1 author:
Ameer Ahmed
University Of Kufa
5 PUBLICATIONS 2 CITATIONS
SEE PROFILE
Some of the authors of this publication are also working on these related projects:
All content following this page was uploaded by Ameer Ahmed on 26 March 2019.
ABSTRACT
Resource allocation and leveling are of the top challenges in project management, due to the
complexity of projects. This research aims to develop an optimization model for resource
smoothing, so that.
The proposed model is formulated using C++ program for resource smoothing. The project
management software MS-Projects is adopted hereto perform resource leveling to facilitate
achieving the optimal solution.
The proposed model utilizes a system that depends on Genetic Algorithms (GAs) procedure built
in C++ program to find the optimum solution.
This research reach concludes that it is possible to smooth resources using Genetic Algorithms
program and compares then with MS-Project when the GA results are better than MS-Project.
Three case studies have been applied in this research and the application results come identical
with research objectives, to form the conclusion.
Then comes the recommendations regarding adopting and using the research results in
construction planning and project management. Further suggestions related to the research subject
are proposed for future works.
اﻟﺨﻼﺻﺔ
.ان ﺗﻌﻴﻴﻦ وﺗﺴﻮﻳﺔ اﻟﻤﻮارد هﻲ ﻣﻦ اآﺜﺮ اﻟﺘﺤﺪﻳﺎت ﻓﻲ ادارة اﻟﻤﺸﺮوع ﺑﺴﺒﺐ ﺗﻌﻘﻴﺪ اﻟﻤﺸﺎرﻳﻊ
ﻟﺘﺴﻮﻳﺔ اﻟﻤﻮاردC++ ﻟﻘﺪ ﺗﻢ ﺑﻨﺎء اﻟﻨﻤﻮذج اﻟﻤﻘﺘﺮح ﺑﺎﺳﺘﺨﺪام ﺑﺮﻧﺎﻣﺞ.ﻳﻬﺪف هﺬا اﻟﺒﺤﺚ اﻟﻰ ﺑﻨﺎء ﻧﻤﻮذج اﻣﺜﻞ ﻟﺘﺴﻮﻳﺔ اﻟﻤﻮارد
ﻳﻌﺘﻤﺪ اﻟﻨﻤﻮذج.( ﻻﺟﺮاء ﺗﺴﻮﻳﺔ اﻟﻤﻮارد ﻟﺘﺴﻬﻴﻞ اﻟﻮﺻﻮل اﻟﻰ اﻟﺤﻞ اﻻﻣﺜﻞMS-Project) وآﻤﺎ ﺗﻢ اﻋﺘﻤﺎد ﺑﺮﻧﺎﻣﺞ ﻻدارة اﻟﻤﺸﺎرﻳﻊ
.( ﻟﻠﺒﺤﺚ ﻋﻦ اﻟﺤﻞ اﻻﻣﺜﻞC++) اﻟﻤﻘﺘﺮح ﻋﻠﻰ اﺳﻠﻮب اﻟﺨﻮارﻣﻴﺎت اﻟﺠﻴﻨﻴﺔ ﺣﻴﺚ ﺗﻢ ﺑﻨﺎؤﻩ ﺑﺎﺳﺘﺨﺪام ﺑﺮﻧﺎﻣﺞ
وﻟﻘﺪ وﺟﺪ انMS-Project ﺗﻮﺻﻞ اﻟﺒﺤﺚ اﻟﻰ اﻣﻜﺎﻧﻴﺔ ﺗﺴﻮﻳﺔ اﻟﻤﻮارد ﺑﺎﺳﺘﺨﺪام اﻟﺨﻮارزﻣﻴﺎت اﻟﺠﻴﻨﻴﺔ وﻣﻘﺎرﻧﺘﻬﺎ ﻣﻊ ﺑﺮﻧﺎﻣﺞ
وﻃﺒﻘﺖ ﻧﺘﺎﺋﺞ اﻟﺒﺤﺚ ﻋﻠﻰ ﺛﻼث ﺣﺎﻻت درﺳﺖ وآﺎﻧﺖ ﻧﺘﺎﺋﺞ اﻟﺘﻄﺒﻴﻖMS-Projectﻧﺘﺎﺋﺞ اﻟﺨﻮارزﻣﻴﺎت اﻟﺠﻴﻨﻴﺔ اﻓﻀﻞ ﻣﻦ ﻧﺘﺎﺋﺞ
وﺗﻢ اﻟﺘﻮﺻﻞ اﻟﻰ ﻋﺪد ﻣﻦ اﻻﺳﺘﻨﺘﺎﺟﺎت آﻤﺎ وﺿﻌﺖ ﻋﺪد ﻣﻦ اﻟﺘﻮﺻﻴﺎت واﻟﻤﻘﺘﺮﺣﺎت ﺑﺸﺎن ﺗﺒﻨﻲ.ﻣﻄﺎﺑﻘﺔ ﻟﻤﺎ هﺪف اﻟﻴﻪ اﻟﺒﺤﺚ
.ﻧﺘﺎﺋﺞ اﻟﺒﺤﺚ ﻓﻲ ﺣﻘﻞ اﻟﺘﺨﻄﻴﻂ وادارة اﻟﻤﺸﺎرﻳﻊ آﻤﺎ وﺿﻌﺖ ﻋﺪد ﻣﻦ اﻟﻤﻘﺘﺮﺣﺎت ﻟﺒﺤﻮث ﻻﺣﻘﺔ ذات ﺻﻠﺔ ﺑﻤﻮﺿﻮع اﻟﺒﺤﺚ
929
Dr. Sawsan Rasheed Mohammed OPTIMIZATION OF RESOURCE
Ameer Ahmed Abdul Ameer ALLOCATION AND LEVELING USING
GENETIC ALGORITHMS
930
Number 4 Volume 17 August 2011 Journal of Engineering
OPTIMIZATION SCHEDULING Mx = ∑ [1*Resource Demandi)*1/2Resource
METHODS (MODELS) Demand1]
Modeling can be defined as the process of Mx = 1/2 ∑ (Resource Demandi)2 (1)
producing a model; model is a representation Where n is the working day number of the
of the construction and working of some projects finish date. Equation – to be a
system of interest. [Maria 1997] minimum becomes:
Modeling is one of the most powerful tools Mx = ∑ (Resource Demandi)2 (2)
that have ever been employed in various
research disciplines. Often it’s the typical GENETIC ALGORITHMS DESCRIPTION
way and some times the only way to conduct Genetic Algorithms are search algorithms
experiments on a wide range of systems of based on the mechanics of natural selection
various types. and natural genetics. They combine survival
- Linear Programming Model of the fittest among string structures with a
- Simulation Model structured yet randomized information
- Monte Carlo Simulation exchange to form a search algorithm with
- Genetic Algorithms Techniques some of the innovative flair of human search.
In every generation, a new set of artificial
RESOURCE SMOOTHING creatures (strings) is created using bits and
Resource smoothing attempts to reduce pieces of the fittest of the old; an occasional
peak requirements and smooth out period-to- new part is tried for good measure. While
period fluctuations in resource assignment randomized, genetic algorithms are no simple
without changing project duration. The random walk. They efficiently exploit
objective of resource leveling procedures is historical information to speculate on new
to schedule project activities so that the search points with expected improved
project duration does not exceed a specific performance.
limit and the variation in the projects demand The central theme of research on genetic
for a resource from one time period to algorithms has been robustness, the balance
another is held to a minimum. [Harris 1990] between efficiency and efficacy necessary for
The project managers' objective to hire the survival in many different environments. The
minimum number of resources, to reduce implications of robustness for artificial
resource fluctuation and to ensure better systems are manifold. If artificial systems
utilization of resources. Typical situations can be made more robust, costly redesigns
include full utilization of a rented piece of can be reduced or eliminated. If the higher
equipment that needs to be returned early, levels of adaptation can be achieved, existing
also reducing the number of skilled workers systems can perform their functions longer
who need to be hired for the job. Project and better. Designers of artificial systems –
managers have desired resource profiles that both Software and hardware, whether
they try to get their resource profiles to Engineering Systems, Computer systems, or
match. Business systems – can only marvel at the
A well-known heuristic algorithm is the robustness, the efficiency, and the flexibility
minimum moment algorithm that assumes of biological systems. Features for self-
limited project duration and unlimited repair, self-guidance, and reproduction are
resources [Hiyassat 2001]. The objective in the rule in Biological systems, whereas they
this algorithm is to minimize daily barely exist in most sophisticated artificial
fluctuations in resource use while keeping the systems.
total project duration unchanged. As a proxy Genetic Algorithms are now finding more
to this objective the Algorithm minimizes the widespread application in Business,
moment of the resource histogram around the Scientific, and Engineering circles. The
horizontal axis. [Harris 1978] reasons behind the growing numbers of
The moment MX is calculated by summing applications are clear. These algorithms are
the daily moments as follows: [Haider 1999] computationally simple yet powerful in their
improvement. Furthermore, they are not
931
Dr. Sawsan Rasheed Mohammed OPTIMIZATION OF RESOURCE
Ameer Ahmed Abdul Ameer ALLOCATION AND LEVELING USING
GENETIC ALGORITHMS
Mutation Selection
Crossove
932
Number 4 Volume 17 August 2011 Journal of Engineering
1 2 3 4 5 6 P
3 10 22 14 5 9 4
Legend:
X Gene position
Y Gene Value
933
Dr. Sawsan Rasheed Mohammed OPTIMIZATION OF RESOURCE
Ameer Ahmed Abdul Ameer ALLOCATION AND LEVELING USING
GENETIC ALGORITHMS
A1 A2 A3 A4 A5 A6 A7 A8 A9 A10
Parent 1
B1 B2 B3 B4 B5 B6 B7 B8 B9 B10 Parent 2
A1 A2 A3 A4 A5 B6 B7 B8 B9 B10 Offspring 1
B1 B2 B3 B4 B5 A6 A7 A8 A9 A10 Offspring 2
934
Number 4 Volume 17 August 2011 Journal of Engineering
e. from 0 to 0.1 and the mostly used The aim of this project is to get knowledge
values of mutation probability are the optimum resources to get the minimum
from 0.001 to 0.1. [Tarek 2000] ∑R2 for each project and the early start of
Stopping Criteria: There are two types of each activity which only has TF.
stopping criteria included in GAs. The first This work does not happen by isolated the
one is in state of meaning the value of activity from the other one because the
objective function, and the second is the activities is interfusion, therefore ∑R2 is
number of Offspring generations. The two cumulative.
types above can be used as a termination Any programmer sees this idea thought to
criterion for the GA process. [Tarek 1999] move the first activity and calculate ∑R2 and
then the second activity, this way is correct
BENEFITS OF GAS IN CONSTRUCTION and it is long. But in the event of using
GAs are particularly suited for Genetic Algorithm we will adapt this concept
Optimization problems in Construction and make the movement which depend on
Scheduling because: correct programming grammars used in our
a. They do not experience combinatorial program which is called cumulative test
explosion: [Que 2002] GAs perform procedure and relation movement.
well on problems whose complexity The Activities Features are as Follows:
increases exponentially with the a. Each activity has duration.
number of input Parameters. Such b. Each activity has early start that is
problems are called NP-Complete. important.
The Resource Leveling problem c. Each activity has total float that is
could be defined as a (NP-Complete) more important. Then we will make
problem. That is computational time the permutation and calculate the
which grows exponentially as the size fitness function (∑R2).
of the problem increases. [Son 1999] d. It’s noted there are critical activities
b. They are Robust: GA has the feature without movement and uncompatible
of robustness because of its ability to with the permutation because of the
evaluate many possible solutions total float is equal zero.
simultaneously and use the Every time in our project we are keep
Chromosome fitness to direct the generated the offsprings to get the best
search. cumulative resources of each day of project
duration. The visual C++ program illustrates
COMPUTER IMPLEMENTATION the optimum solution.
GAs procedure can be implemented on a
Visual C++ Program. APPLICABILITY OF GENETIC
C++ is more faster than any Programming ALGORITHMS TO RESOURCE
languages to reach the Optimal solution LEVELING
because it is deeply treat with computer and The minimum resource moment algorithm
upon of this feature it is object oriented. was improved using both Mx and My
Always C++ depends on specifying the resource moments. The moment Mx
object to get a specific class (or specific (Moment of the resource histogram about the
character) then create other target (object) x-axis) represents the resource fluctuation
from that specific character which have the and the moment My (Moment of the resource
same characters of that class. Each class histogram about y-axis) represents the
should have some functions, each of it do resource utilization. The minimum value of
special work depend on that variables. [De these two combined moments serves as a
Jon 1980] good indicator of efficiently utilized
The objective of our program of C++ is resources where fluctuations from period to
getting the minimum of MX, are equal ∑R2 another are avoided. The random activity
whereas R is the resource of each activity. priorities and the combined moments
The target of that is getting specific project.
935
Dr. Sawsan Rasheed Mohammed OPTIMIZATION OF RESOURCE
Ameer Ahmed Abdul Ameer ALLOCATION AND LEVELING USING
GENETIC ALGORITHMS
approach form the basis of the optimization resource fluctuations and resource utilization
process. [Tarek 1999] moments. This process is executed under
The detailed GA Procedure is outlined in unlimited resources Figure (7) illustrates
Figure (5) process chart of resource smoothing.
The optimization parameters associated
PROPOSED RESOURCE SMOOTHING with this process are outlined as follows:
SYSTEM a. Objective function which will
The proposed model comprises two main minimize the fluctuation and/or
sections: processing project data in MS and utilization moments;
optimizing resource leveling using genetic b. optimization variables which consist
algorithms program. of activity TF values, which range
Figure (6) illustrates process chart accepts integers between zero and the
diagram of the proposed model. maximum TF value obtained from
Microsoft project before applying
MINIMIZING RESOURCE MOMENTS resource smoothing;
The minimizing resource moments c. optimization constraints which state
objective represents the optimization of the that the project duration should be
resource smoothing procedure. Which equal to the project deadline.
involves the process of optimally minimizing
936
Number 4 Volume 17 August 2011 Journal of Engineering
d. START
1
User input of evaluation criteria (wts)
for project duration & moments),
population size, & No. of offspring
2
Initialize Scheduling Software
3
Save Initial Project Duration and moment
4
Generate population of random chromosome;
each chromosome has a value for the priority
of each project task
5
For each chromosome in the population:
Input its data to the software
Get project Duration & moments; &
Calculate the Chromosome's fitness
6
Evaluate the relative merit of each END
END Chromosome in the population and
determine the worst Chromosome
yes 12
Yes
14 7
Pick 2 Chromosomes at random with Is this the last
Is this the last No probability of being picked proportional
No Offspring
Offspring to their relative merits
8 11
13
Perform Crossover or mutation to
generate an Offspring Replace the worst
Discard the 9 chromosome with the
Offspring Offspring
Determine the fitness of the Offspring
chromosome, as in step 5
10
No Yes
937
Dr. Sawsan Rasheed Mohammed OPTIMIZATION OF RESOURCE
Ameer Ahmed Abdul Ameer ALLOCATION AND LEVELING USING
GENETIC ALGORITHMS
Start MS project
938
Number 4 Volume 17 August 2011 Journal of Engineering
Defining constraints
- Project duration dead line
- Critical activities
939
Dr. Sawsan Rasheed Mohammed OPTIMIZATION OF RESOURCE
Ameer Ahmed Abdul Ameer ALLOCATION AND LEVELING USING
GENETIC ALGORITHMS
940
Number 4 Volume 17 August 2011 Journal of Engineering
MODEL APPLICATION
From MS Project we get figure (9) and (10) network and a bar chart representation
show a hypothetical case study of 7 activities respectively.
in the form of activity on node (AON)
B E
A D G
C F
941
Dr. Sawsan Rasheed Mohammed OPTIMIZATION OF RESOURCE
Ameer Ahmed Abdul Ameer ALLOCATION AND LEVELING USING
GENETIC ALGORITHMS
Figure (11) illustrate the Resource Histogram before Smoothing where Mx = 353
Figure (12) illustrate resource Histogram after Smoothing in MS Project where Mx = 353
Table (2) show the information needed to GA Resource Smoothing System which get it from
MS Project before Smoothing and Table (3) show the information after Smoothing.
942
Number 4 Volume 17 August 2011 Journal of Engineering
943
Dr. Sawsan Rasheed Mohammed OPTIMIZATION OF RESOURCE
Ameer Ahmed Abdul Ameer ALLOCATION AND LEVELING USING
GENETIC ALGORITHMS
We conclude from the above that the MS because its small project where the Mx from
project made the activity D,F is critical where GA equal Mx from manual solution.
Mx = 353 but GA is made the activity C,F is It’s noted No. of peak and No. of changes
critical and activity D is still non-critical = 2 and highest peak = 7 from Ms results
where Mx = 341 and it is less than the while No. of changes and No. of peak = 1
calculated Mx from MS project and equal mx from GA results
from manual solution and the Histogram
944
Number 4 Volume 17 August 2011 Journal of Engineering
Figure (14) show resource smoothing histogram from GA results where Mx = 341
945
Dr. Sawsan Rasheed Mohammed OPTIMIZATION OF RESOURCE
Ameer Ahmed Abdul Ameer ALLOCATION AND LEVELING USING
GENETIC ALGORITHMS
946
Number 4 Volume 17 August 2011 Journal of Engineering
Engineering and Management ASCE, vol.
Harris, R. B., 1978, "Precedence and Arrow 125, No. 1.
Networking Techniques Press, London,
England. Tarek, H, 1999 "Optimization of
Construction Time-Cost Trade off Analysis
Hiyassat, A. M., 2001, "Applying Modified Using Genetic Algorithms", Canadian
Minimum Moment Method to Multiple Journal of Civil Engineer, Vol. 26.
Resource Leveling", ASCE, Journal of
Construction Engineering and Management, Tarek, H. 1999 "Optimization of Resource
vol. 127, No. 3. Allocation and Leveling Using Genetic
Algorithms", ASCE, Journal of Construction
Kevin, P. and Tarek, H., 2003, "Genetic Engineering and Management, Vol. 125, No.
Optimization for Dynamic project Control", 3.
ASCE journal of Construction Engineering
and Management, vol. 129, No.4. Tarek, S. A., 2000, "conjugation and
Controlled Mutations New Operatos in
Leu, S. and Yang, C. H.,1999, "GA-Based Genetic Algorithms", Ph. D. Thesis,
Multicriteria in Optimal Model for Computer Science and Information System,
Construction Scheduling", ASCE, Journal of University of Technology.
Construction Engineering and Management,
vol. 125, No. 6.
947