0% found this document useful (0 votes)
28 views

A Genetic Algorithm For Optimal Job Scheduling and Load Balancing in Cloud Computing

Cloud Computing is a new concept for pool of virtualized computer resources. There are many approaches available to improve the job scheduling and load balancing in cloud environment. However, this research focused on the Job scheduling in cloud computing environment at Virtual Machines level by considering their bandwidth and RAM size. Three (3) traditional scheduling techniques are employed (min-min, max-min, and suffrage) to find the minimum completion time possible for a given job(s) for

Uploaded by

A A Mahmoud Yola
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
28 views

A Genetic Algorithm For Optimal Job Scheduling and Load Balancing in Cloud Computing

Cloud Computing is a new concept for pool of virtualized computer resources. There are many approaches available to improve the job scheduling and load balancing in cloud environment. However, this research focused on the Job scheduling in cloud computing environment at Virtual Machines level by considering their bandwidth and RAM size. Three (3) traditional scheduling techniques are employed (min-min, max-min, and suffrage) to find the minimum completion time possible for a given job(s) for

Uploaded by

A A Mahmoud Yola
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

International Journal of Engineering & Technology, 7 (3.

28) (2018) 290-294

International Journal of Engineering & Technology


Website: www.sciencepubco.com/index.php/IJET

Research paper

A Genetic Algorithm for Optimal Job Scheduling and Load


Balancing in Cloud Computing
Zarina Mohamad1*, Aminu Abdulkadir Mahmoud1, Wan Nur Shuhadah Wan Nik1, Mohamad Afendee Mohamed1,
Mustafa Mat Deris2
1Faculty of Informatics and Computing, Universiti Sultan Zainal Abidin, Besut Campus, Terengganu, Malaysia
2Faculty of Computer Science and Information Technology, Universiti Tun Hussien Onn Malaysia, Johor, Malaysia
*Corresponding author E-mail: [email protected]

Abstract

Cloud Computing is a new concept for pool of virtualized computer resources. There are many approaches available to improve the job
scheduling and load balancing in cloud environment. However, this research focused on the Job scheduling in cloud computing environ-
ment at Virtual Machines level by considering their bandwidth and RAM size. Three (3) traditional scheduling techniques are employed
(min-min, max-min, and suffrage) to find the minimum completion time possible for a given job(s) for each Virtual Machine (VM). The
Genetic Algorithm (GA) is applied after the job scheduling is completed for load balancing and to attained the Quality of Service (QoS)
required by properly utilizing the resources available. A CloudSim simulator is used to test the efficiency of the proposed technique. We
found that the proposed technique called Random Make Genetic Optimizer (RMGO) can minimize the makespan as compared to classi-
cal job scheduling techniques.

Keywords: Job Scheduling; Load Balancing; Cloud Computing; Genetic Algorithm.

netic Algorithm (GA) is used for load balancing phase. Simulation


1. Introduction shows that the proposed technique improves of makespan.
The rest of the paper is organized as follows: Section 2 discusses
Cloud Computing is a model of providing resources and capabili- on the related works. The proposed technique is discussed in Sec-
ties of Information Technology such as applications, storages, tion 3. In Section 4 the simulation and the results discussion are
infrastructure, communication, and collaboration via services of- presented, Section 5 contains conclusion.
fered by cloud providers on demand [1-4]. In order to successfully
achieve this target, cloud management plays an important role by
providing dynamic resource scheduling, load balancing, secure
2. Related Works
data backup that is available real-time around the clock.
Numerous complicated factors need to be considered in order to Cloud Computing is receiving more attention, both in publications
perform job scheduling algorithm. The factors are changing dy- and among users from individual organization to government [5].
namically according to the user request and resource availability. There are several publications and research papers on this new
Improper resource scheduling management courses the system field of modern day computing with a lot of expectations on its
performance to be deteriorated. deliverance, especially where this research laid it emphases i.e. on
Load balancing should also be considered in the scheduling algo- job scheduling/ job allocation in cloud environment [6]. In [7] is a
rithm, so that the load is equally spread on each node of the cloud. research paper in which the researcher proposed the used of Suf-
These situations optimize resource utilization, throughput and frage coupled with Genetic Algorithm, the objective of the re-
response time. Hence, dynamic scheduling in cloud computing search is to minimize the makespan of the job(s).
environment deserves special attention by the researchers. Job A research was conducted with the aim of addressing load balanc-
scheduling can be done at datacenter level with available infor- ing problems in Virtual Machine (VM) resource scheduling [8].
mation of that particular datacenter from Cloud Information Ser- This research adopted genetic algorithm to address the problems
vice (CIS) or at either physical machine level in a particular data- of load balancing and high migration cost after VM is scheduled.
center or at virtual machine level within the physical machine. Our In another research [9], an algorithm is proposed using two con-
focused on this research will be job scheduling at virtual machine ventional task scheduling algorithms and this algorithm is based
level because it is at this level that the jobs are executed. Never- on min-min and max-min. The algorithm uses certain heuristics to
theless, to achieve QoS by proper scheduling of a job to an appro- select between the two mentioned conventional algorithms so that
priate machine that has the shortest completion time. the overall makespan is minimized.
In this paper a job scheduling and load balancing technique is The tasks are scheduled on machines in either space shared or
proposed. The technique has two main phases i.e. job scheduling time shared manner and it was also compared with First Come
phase and load balancing phase. The three classical scheduling First Serve (FCFS) scheduling. In addition, there was also a re-
techniques are employed for job scheduling phase, while the Ge- search based on scheduling in cloud computing environment [10]
that proposed a generalized priority algorithm in order to achieve
Copyright © 2018 Authors. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted
use, distribution, and reproduction in any medium, provided the original work is properly cited.
International Journal of Engineering & Technology 291

efficient task execution. The algorithm was then compared with 3. Proposed Random Make Genetic Optimizer
First Come First Serve (FCFS) and Round Robin Scheduling in
terms of their performances. The test was conducted in CloudSim
toolkit and the result shows that it gives better performance com- 3.1 Basic structure of Random Make Genetic Optimizer
pared to other traditional scheduling algorithm. However, research
The proposed technique focuses on job scheduling and load bal-
in [11] proposed a resource dispatched mechanism using genetic
ancing on virtual machines. There are three scheduling approaches
algorithm based on Support Vector Regression (SVR) for re-
known as Min-min, Min-max and Suffrage being employed in the
scheduling of resources. The objective of the research is to design
Random Make Genetic Optimizer (RMGO) as shown in Figure 1.
a sub-optimal resource scheduling system in cloud computing
Its goal is to achieve quality of service by proper scheduling of a
environment to accomplish tasks with lowest possible cost.
job to an appropriate machine that has the shortest completion
The proposed optimization system can estimate the number of
time. The primary objective is to choose the one that produce the
resource utilization according to Service Level Agreement (SLA)
shortest completion time when the jobs are scheduled. After which
more accurately. In another research [6], a strategy for effective
the result will be encoded as parameters of genetic algorithm.
load balancing using genetic algorithm is proposed with the aim of
facilitating load balancing and reducing migration cost. Mean-
while in [12] a novel load balancing strategy based on genetic
algorithm is proposed that will thrive in load balancing of cloud
infrastructure and minimize makespan of a given task. When this
algorithm was tested, the results show that it outperformed the
existing approaches such as FCFS, Round Robin (RR) and Sto-
chastic Hill Climbing (SHC). Research in [13] is a review of some
algorithms suggested in some research works on Virtual Machine
Management.
The paper reviewed the impact of all the stated algorithms with
regards to various performance matrices and provides an overview
of their impact on the latest approach in the field of VM manage-
ment. The research focuses it review on renewable energy and
parameters that include bandwidth and latency delay. In another
research paper [14], the used of Artificial Bee Colony (ABC) for
VM scheduling management in cloud computing environment was
proposed. The research aimed to propose an algorithm that would
enhance the performance of cloud tasks scheduling, increase the
makespan and performance of resource utilization. The result of
simulation using CloudSim tools shows that ABC algorithm per-
formed significantly in changing the environment, load balancing Fig. 1: Basic Structure of RMGO
and makespan of data processing. In addition, [15] proposed a
meta-heuristic based scheduling algorithm by merging two exist- 3.2. RMGO Algorithm
ing techniques i.e. Shortest Cloudlet Fastest Processor (SCFP) and
Longest Cloudlet Fastest Processor (LCFP) with GA. The aim of 1. Input all the parameters
this research is to propose an algorithm that will minimize execu- a. No. of Physical Machine (i)
tion time and cost of a given task in cloud computing environment. b. No. of Virtual Machines (j) in each Physical Machine
The simulation results show that the proposed algorithm exhibit a (i)
good performance under heavy loads. Moreover, in [16], an algo- c. MIPS of each Virtual Machine (j)
rithm is proposed that can find a fast mapping for tasks scheduling d. Cloudlet(s) size/File size of submitted jobs
using genetic algorithm. The research aimed to propose an algo- e. No. of Cloudlets (k)
rithm to improve system performance and quality of service. Sim- 2. While No. of physical machine (i) is not exceeded do
ulation results show that the proposed algorithm increases the 3. For all Virtual Machine (j)
mapping time by using the throughput as objective function. 4. For all Cloudlet (k)
In a nutshell, almost all the papers that were reviewed have some 5.
similarities in aims and objectives with this research. Though
some credit must be given to the researchers for their framework 6. End For
and the proposed algorithms and for their contributions to address 7. End For
the work on job scheduling and load balancing. However, there 8.
are still some needs for improvements in terms of management of 9. Begin Function (Min – Min)
resources because not only proper job scheduling is required to 10. For all Cloudlets (k)
achieve the target, but also the load balancing. Load balancing 11. For all Virtual Machines (j)
alone cannot address the issue of enhancing resource management 12.
in a cloud computing environment. 13. End For
In this research, the proposed algorithm coined as Random Make 14.
Genetic Optimizer (RMGO) which composes of three techniques 15.
i.e. Min-min, Max-min and Suffrage combine with genetic algo-
16.
rithm can improve the job scheduling and load balancing in the
system. When the RMGO was tested on CloudSim tool-kit, the 17
result shows that better performance has been accomplished. Hav- 18. End For
ing a harmonized algorithm that can inherit all the features of the 19. )
reviewed algorithms and their functions, but in different and en- 20. End Function (Min – Min)
hanced manner is already a considerable contribution. 21. Begin Function (Max – Min)
22. For all Cloudlets (k)
23. For all Virtual Machines (j)
24.
292 International Journal of Engineering & Technology

Line 49 to Line 50 a fitness function is calculated using the rela-


25. End For
tion
26.
27.
28.
29. where Ci is the completion time of workload(s) by machine (i),
MIPSi is the speed of machine (i) and makespan is the maximum
30. End For
completion time of all the machines.
31. )
Line 51 to Line 52, fittest individuals would be selected using
32. End Function (Max – Min) Roulette Wheel selection probability i.e.
34. Begin Function (Suffrage)
35. For all Cloudlets (k)
36. For all Virtual Machines (j)
37.
38. End For where Fi is the Fitness Function found in Line 50.
39. Line 53 is where the fittest individuals would be crossed over
40. using crossover probability.
Line 54 is where mutation would take place at some point(s) to
41.
likely repair the damage that might be caused during crossover
42. where necessary using mutation probability.
43. End For Line 55 Accepting and putting the individual chromosome(s) into
44. ) a new population.
45. End Function (Suffrage) Line 56 Replacing initial population with new population.
46. Find Min (Function (Min-Min, Max-Min, Suffrage)) Line 57 End of the Main Genetic Algorithm.
47. Begin Main (Genetic Algorithm) Line 58 Re-assigning job(s) to virtual machines where necessary.
48. [Initialization] Create population of n chromosomes
using the returned min 4. Results and Discussion
49. [Fitness Function] Calculate the fitness function
using this formula The simulation is carried out with different parameters in
50. CloudSim simulator. The components of parameters are different
number of VMs, cloudlets, hosts and datacenters in order to check
51. [Selection] Using Roulette Wheel selection probability
and balance between the techniques performance. However, the
to select the aim is to ensure that the RMGO performed better than all the indi-
vidual techniques integrated in terms of completion time and re-
52. Fittest individuals.
source load balancing. Meanwhile three different simulation tests
53. [Crossover] Generate new offspring using crossover
are carried out using the same parameters on all the integrated
probability
techniques, RMGO and FCFS. The purpose of choosing to con-
54. [Mutation] Mutate at some point(s) where necessary
duct the three different experiments (Tests) is to test and ensure
using mutation probability
that the RMGO can perform under different setups and scenarios.
55. [Accepting] New offspring is now part of the new
Furthermore, different setup and components are used in each test
generation
to ensure that the RMGO is fully evaluated under different envi-
56. [Replacement] Replace the initial population with new
ronment with different setup in order to ascertain its performance.
generation
In addition, in the first instance experiment is carried out with 1
57. End Main (Genetic Algorithm)
datacenter and 1 host while, the second and the third experiment
58. Re- assign job(s) to virtual machines where necessary.
were conducted with 2 datacenters and 10 hosts. The results of
Fig. 2: The RMGO Algorithm
each test are presented and their components are considered as
Test 1, and Test 2 parameters, respectively. Table 1 shows the
An algorithm called Random Make Genetic Optimizer (RMGO) is
Test 1 parameters setting for CloudSim.
proposed in Figure 2 based on the structure as depicted in Figure 1.
The following is the detail explanation of the algorithm: Table 1: Test 1 Parameters Setting for Cloudsim Simulator
Line 1, from a. to e., are all parameters needed to be inputted by Component Parameter Value
the user. Type
Line 2 to Line 8 are nested loops that would take each physical Datacenter Number of Datacenter Number of 1
machine and its corresponding virtual machines to find Cloudlet Host Scheduling Policy 1
Execution Time (Ckj) of all the virtual machines within that phys- Space-Shared
ical machine until Cloudlet Execution Time (Ckj) of all the physi- Datacenter Number of Datacenter Broker 1
cal machines and their corresponding virtual machines are found. Broker
Line 9 to Line 20 is a function Min – Min, which is used to VMs Number of VMs 4
schedule the cloudlet(s) using Min – Min technique. Number of Processing Element (PE) 1
MIPS of PE
Line 21 to Line 32 is a function Max – Min, which is used to MIPS of VMS 2000
schedule the cloudlet(s) using Max – Min technique. - VM 1
Line 34 to Line 45 is a function Suffrage, which is used to sched- - VM 2 200
ule the cloudlet(s) using Suffrage technique. - VM 3 300
Line 46 is a function call that would return the minimum among - VM 4 400
the three (3) called functions i.e. Min – Min, Max – Min, and Suf- VM RAM size 500
frage, which one has the smallest completion time possible. VM Scheduling Policy Bandwidth 2048MB
Line 47 is a beginning of Main named Genetic Algorithm. Space-Shared
10000
Line 48 Initialization, a population of n chromosomes would be
Cloudlet Number of Cloudlets 10
created where n is the number of virtual machines from the re- - CL 1 5200
turned minimum and the corresponding workload of each virtual - CL 2 3000
machine.
International Journal of Engineering & Technology 293

- CL 3 2000 5. Conclusion
- CL 4 7000
- CL 5 6800
- CL 6 6600 There are many researchers conducted on jobs scheduling and
- CL 7 5800 load balancing but none of the research uses the integrated min-
- CL 8 5400 min, max-min, suffrage and GA. The reason for this integration is
- CL 9 5000 because each technique might likely outperform each other at a
- CL 10 4800 given period of time. Considering the uniqueness and capability of
Cloudlet Scheduler Policy CPU Space-Shared
each technique depending on the nature and size of the jobs (tasks)
Utilisation Model RAM Utilisation Full
Model Bandwidth Utilisation Model Full submitted to the system hence, an integrated technique has been
Full proposed.
The proposed algorithm can enhance job scheduling by producing
Figure 3 shows the overall execution time of each individual VM the minimum execution time in the first phase of the algorithm.
for Test 1. It shows that RMGO has the lowest completion time When the result is put in to genetic algorithm, it will balance the
and it is having the least distance of completion time than others, loads using a fitness function. The impact of this algorithm cannot
hence it performed better in term of completion time and load be over emphasized considering the requirement of proper re-
balancing. source management in cloud computing environment in which this
research has laid its priority. The fitness function used in the pro-
posed algorithm is to enhance load balancing among the virtual
machines.
There are a number of issues that need to be addressed in order to
fully enhance and improve the performance of cloud services that
are not covered in this paper. As a result, much work needs to be
done for addressing the problems in the future. Meanwhile, our
future research will intend to focus on the remaining issues of
maintenance in cloud computing environment, especially availa-
bility of data storage, power consumption and green computing.
Our future work will focus more on resource selection and data
replication in the cloud computing environment to improve re-
sponse time and availability of the system.

Acknowledgement
The authors gratefully acknowledge financial support from the
Fig. 3: Comparison of the three algorithms with FCFS and RMGO for Ministry of Higher Education, under the project FRGS-2-2013-
Test 1 ICT07-UniSZA-0201. The authors also would like to convey an
appreciation to Research Management, Innovation and Commer-
Figure 4 shows the execution time of each individual VM for Test cialization Center (RMIC), UniSZA for providing full support
2. Based on this figure, RMGO has the lowest completion time towards this study.
and the least distance of completion time than other techniques
being the default technique. Hence, RMGO performed better in
terms of completion time and load balancing. References
[1] Google. www.google.com/trends.
[2] Erkoc M F, Kert S B. Cloud computing for distributed university
campus: A prototype suggestion. Proceedings of the International
Conference the Future of Education, 2014, pp. 1-5.
[3] Srichandana S, Kumar T A, Bibhudatta S. Task scheduling for
cloud computing using multi-objective hybrid bacteria foraging
algorithm. Future Computing and Informatics Journal, 2018, 1-21,
2018.
[4] Bittencourt L F, Goldman A, Madeira E R M, Fonseca N L S,
Sakellariou R. Scheduling in distributed systems: A cloud
computing perspective. Computer Science Review, 30, 31-54, 2018.
[5] Huth A, Cebula J. The basics of cloud computing. United States
Computer, 2011.
[6] Keshanchia B, Souria A, Navimipour N J. An improved genetic
algorithm for task scheduling in the cloud environments using the
priority queues: Formal verification, simulation, and statistical
Fig. 4: Comparison of the three algorithms with FCFS and RMGO for testing. Journal of Systems and Software, 124, 1-21, 2017.
Test 2 [7] Goyal T, Agrawal A. Host scheduling algorithm using genetic
algorithm in cloud environment. International Journal of Research
The simulation and testing of the algorithms in Test 1 and Test 2 in Engineering and Technology, 1(1), 7-12, 2013.
parameters had been successfully completed. The results show [8] Gu J, Hu J, Zhao T, Sun G. A new resource scheduling strategy
based on genetic algorithm cloud computing environment. Journal
that in all the techniques with exception of the RMGO, the VMs
of Computers, 7(1), 42–52, 2012.
with smallest MIPS are over utilized and are having the highest [9] Katyal M, Mishra A. Application of selective algorithm for
execution time but in RMGO the reverse is the case and this will effective resource provisioning in cloud computing environment.
increase the response time. It shows that RMGO is a better alter- International Journal on Cloud Computing: Services and
native for implementation optimal job scheduling and load balanc- Architecture, 4(1), 1-10, 2014.
ing in cloud environment. [10] Agarwal A, Jain S. Efficient optimal algorithm of task scheduling
in cloud computing environment. International Journal of Computer
Trends and Technology, 9(7), 344-349, 2014.
[11] Huang C, Guan C, Chen H, Wang Y, Chang S, Li C, Wang C. An
adaptive resource management scheme in cloud computing.
294 International Journal of Engineering & Technology

Engineering Applications of Artificial Intelligence, 26, 382-389,


2013.
[12] Rawat S S, Bindal U. Effective load balancing in cloud computing
using genetic algorithm. International Journal of Computer Science,
Engineering and Information Technology Research, 3(4), 91-98,
2013.
[13] Dasgupta K, Mandal B, Dutta P, Mondal J K, Dam S. A genetic
algorithm (GA) based load balancing strategy for cloud computing.
Procedia Technology, 10, 340-347, 2013.
[14] Khan D H, Kapgate D, Prasad P S. A review on virtual machine
management techniques and scheduling in cloud computing.
International Journal of Advanced Research in Computer Science
and Software Engineering, 3(12), 838-845, 2013.
[15] Kruekaew B, Kimpan W. Virtual machine scheduling management
on cloud computing using artificial bee colony. Proceeding of the
International Multi-Conference of Engineers and Computer
Scientists, 2014, pp. 12-14.
[16] Kaur S, Verma A. An efficient approach to genetic algorithm for
task scheduling in cloud computing environment. International
Journal of Information Technology and Computer Science, 10, 74-
79, 2012.

You might also like