IMECS2014 pp18-22
IMECS2014 pp18-22
II. RELATED WORK Mizan et al. [19] presented job scheduling in Hybrid
Scheduling and load balancing techniques are crucial for cloud by modifying Bee Life algorithm and Greedy
implementing the efficient parallel and distributed algorithm to achieve an affirmative response from the end
applications in making the appropriate use of parallel and users and utilize the resources.
distributed system. Task scheduling can increase the
efficiency of Cloud computing if it is able to work under the III. ARTIFICIAL BEE COLONY ALGORITHM
reasonable resources [4], [8], [9]. Artificial Bee Colony (ABC) algorithm was proposed by
Li et al. [10] proposed the tree structure method in order Karaboga [5], [6], [20], [21]. It is the method to find the
to solve Job-Shop Scheduling in supporting the needs of a appropriate value. This method is inspired by the foraging
complex and flexibility to Job-Shop Scheduling problem. It behavior of honey bees. In ABC model, there are three kinds
also appropriately managed the specific features of model of honey bee to search food sources, which include scout
management and scheduling algorithm by using Reusable bees search for food source randomly, employed bees search
Scheme and Multi-Agent system. Later, Fang et al. [11] around the food source and share food information to the
presented task scheduling in Cloud computing considering onlooker bees, and onlooker bees calculate the fitness and
the requirements of the users and load balance in Cloud select the best food source. In the nature, bees can extend
environment when the users increase and change the themselves over long distances in multiple directions. After
environment. The scheduling strategy was simulated by scout bees find the food source and return to the hive, they
using CloudSim toolkit package. compare the quality of food source and go to the dance floor
Calheiros et al. [12], [13] developed the CloudSim to perform a dance known as “waggle dance”. The waggle
simulation for modeling and simulation of virtualized dance is the communication of bees to shares the
Cloud-based datacenter environments, including dedicated information about direction of the food source, distance
management interface for VMs, memory, storage, and from the hive, and the nectar amount of the food source.
bandwidth. Simulation-based approaches can evaluate While sharing information, bees evaluate the nectar quality
Cloud computing system and application behaviors offering and energy waste. After sharing information on the dance
significant benefits. floor, onlooker bees select the best food source and then
Mondal et al. [14] proposed troubleshoot of load balance scout bees will return to the food source to bring nectar back
in Cloud computing using Stochastic Hill Climbing. In to the hive. A pseudo code of ABC algorithm is described in
2011, Hsu et al. [9] presented a focus on energy efficiency Fig. 1.
in datacenter by considering the task scheduling to physical
server and reducing energy in the system. The criterion used
to measure the performance of an energy loss was to prepare
computer exceeds the requirement of the job. Experiment
strategies for allocating server to a sequence of jobs were a
largest machine first heuristic, a best fit method, and a
mixed method. The experiment results indicated that all
three algorithms waste less energy consumption in over-
provision.
In 2010, Hu et al. [15] introduced the scheduling strategy
on load balancing of VM resource in Cloud computing
environment by adopting a tree structure using Genetic
algorithm for scheduling. It considered previous data and the
current state of work in advance to the performance
behavior of the system which can solve the problem of load
imbalance in Cloud computing.
In 2012, Wei et al. [16] presented Genetic algorithm for
scheduling in Cloud computing to increase the system
performance. Li et al. [17] proposed a Load Balancing Ant
Fig. 1. Basic of ABC algorithm.
Colony Optimization (LBACO) Algorithm. ACO was use to
schedule on load balancing and reduce makespan in Cloud. IV. ARTIFICIAL BEE COLONY INSPIRED SCHEDULING AND
Karaboga et al., in 2012 [7], presented ABC algorithm LOAD BALANCING ALGORITHM
which was used to solve the problem and find the most
appropriate value within environment changing. ABC Cloud computing provides a dynamic resource pool of
algorithm based on the swarm-based optimization algorithm VM according to different requirements from the users or
and it is used to solve the optimization problems in the system. The routing of services which request to the
searching, electrical engineering, data mining, and etc. In diverse servers, depend on the Cloud management policies
the same year, Bitam et al. [18] proposed Bee Life based on load of individual server. Scheduling management
algorithm which was used for scheduling in Cloud on Cloud computing is different degrees of loads on each
computing. Bee Life algorithm is inspired by the behavior and every VM. This may lead to different load among the
and reproduction of bee to find food source. The algorithm VMs. Load balancing techniques are effective in reducing
evaluated the performance of the resources and it has the the makespan and response time.
aim to reduce time and complexity of work.
Let 𝑉𝑀 = {𝑉𝑀1 , 𝑉𝑀2 , 𝑉𝑀3 , … , 𝑉𝑀𝑁 } is a set of 𝑁 virtual 𝑐𝑎𝑝𝑎𝑐𝑖𝑡𝑦𝑗 = 𝑝𝑒_𝑛𝑢𝑚𝑗 × 𝑝𝑒_𝑚𝑖𝑝𝑠𝑗 + 𝑣𝑚_𝑏𝑤𝑗 (2)
machines and 𝑇𝑎𝑠𝑘 = {𝑡𝑎𝑠𝑘1 , 𝑡𝑎𝑠𝑘2 , 𝑡𝑎𝑠𝑘3 , … , 𝑡𝑎𝑠𝑘𝐾 } is a
set of 𝐾 task to be scheduled and processed in 𝑉𝑀. All the Where 𝑐𝑎𝑝𝑎𝑐𝑖𝑡𝑦𝑗 is a capacity of 𝑉𝑀𝑗 , 𝑝𝑒_𝑛𝑢𝑚𝑗
machines are unrelated but are paralleled. Scheduling is
(processing element) is the number processor in 𝑉𝑀𝑗 ,
non-preemptive which means that the processing of the
𝑝𝑒_𝑚𝑖𝑝𝑠𝑗 is million instructions per second of each
tasks on VMs cannot be interrupted. The flowchart of the
VM scheduling and load balancing using ABC algorithm is processor in 𝑉𝑀𝑗 , and 𝑣𝑚_𝑏𝑤𝑗 is the network bandwidth
shown in Fig. 2. ability of 𝑉𝑀𝑗 .
∑𝑛 𝑡𝑎𝑠𝑘_𝑙𝑒𝑛𝑔𝑡ℎ + 𝐼𝑛𝑝𝑢𝑡𝐹𝑖𝑙𝑒_𝑙𝑒𝑛𝑔𝑡ℎ
𝑖
𝑓𝑖𝑡𝑖𝑗 = 𝐸𝑣𝑎𝑙𝑢𝑎𝑡𝑒
𝑖=1
𝑐𝑎𝑝𝑎𝑐𝑖𝑡𝑦 𝑜𝑓 𝑉𝑀 (𝑐𝑎𝑝𝑎𝑐𝑖𝑡𝑦𝑗)
(3)
𝑗
1
𝑆. 𝐷. = �𝑛 ∑𝑛𝑗=0(𝑋𝑗 − 𝑋�)2 (4)
∑𝑘
𝑖=1 𝑡𝑎𝑠𝑘_𝑙𝑒𝑛𝑔𝑡ℎ𝑖
A. Initialize Population 𝑋𝑗 = 𝑐𝑎𝑝𝑎𝑐𝑖𝑡𝑦𝑗
(5)
At the beginning, the initial 𝑛 scout bees are placed
randomly in 𝑉𝑀𝑠 on Cloud computing and 𝑛 is the number Mean of processing time of all VMs:
of scout bees.
∑𝑛
𝑗=1 𝑋𝑗
B. Evaluate the Fitness of the Population 𝑋� = 𝑛
(6)
Fitness is calculated based on (1).
Where 𝑆. 𝐷. is Standard deviation of load, 𝑛 is number of
∑𝑛 all VM. 𝑋𝑗 is processing time of 𝑉𝑀𝑗 which can be
𝑖=1 𝑡𝑎𝑠𝑘_𝑙𝑒𝑛𝑔𝑡ℎ𝑖𝑗
𝑓𝑖𝑡𝑖𝑗 = 𝐸𝑣𝑎𝑙𝑢𝑎𝑡𝑒 𝑐𝑎𝑝𝑎𝑐𝑖𝑡𝑦 𝑜𝑓 𝑉𝑀 (𝑐𝑎𝑝𝑎𝑐𝑖𝑡𝑦𝑗)
(1) calculated based on (5) and 𝑋� is mean processing time of
𝑗
N virtual machines which can be calculated based on (6).
Where 𝑓𝑖𝑡𝑖𝑗 is the fitness of the bees population of 𝑖 in If the S.D. of the loaded VM is less than or equal to the
mean, then the system is in a balance state. On the other
𝑉𝑀𝑗 or capacity of 𝑉𝑀𝑗 with bee number of 𝑖. 𝑡𝑎𝑠𝑘_𝑙𝑒𝑛𝑔𝑡ℎ
hand, if the S.D. is higher than the mean, then the system is
is the length of the task that has been submitted in 𝑉𝑀𝑗 and in an imbalance state.
𝑐𝑎𝑝𝑎𝑐𝑖𝑡𝑦𝑗 is the capacity of 𝑉𝑀𝑗 calculating based on (2).
V. EXPERIMENTAL RESULTS There are two experiments; the first experiment is the
comparison of the average makespan with the number of
A. Implementation Environment
requests changing, the second phase is the comparison of the
According to the algorithm described above, the average makespan with the number of VMs changing.
simulation using CloudSim-3.0.1 Tools will be addressed. In the first experiment, the comparison of the average
The experiments consist of 10 datacenters and 100-700 tasks makespan with the number of requests changing from the
under the simulation platform. The parameters setting on the different scheduling algorithm is performed. The number of
CloudSim-3.0.1 is shown in Table I. VMs is fixed as 50 VMs and the number of requests
TABLE I gradually increased between 100 – 700 tasks. The x axis
PARAMETERS SETTING OF CLOUD SIMULATOR shows the effect on performance of increased requests as
Type Parameter Value shown in Fig. 3.
Datacenter Number of Datacenter 10
Number of Host 5
Type of Manager Space_shared,
Time_shared
Number of PE per Host 2-4
Bandwidth 2000
Host Memory (MBa) 2048 - 10240
Datacenter Cost (The cost of using 10
processing in this resource)
Virtual Total number of VMs 30 - 210
Machine MIPSb of PEc 1000 - 2000
(VM)
Number of PE per VM 1
VM Memory (MB) 512 - 2048
Bandwidth (Bit) 1000
Type of Manager Time_shared
Task Total number of Tasks 100 - 700
Length of Task (MId) 5000 - 20000
Number of PE per requirement 1 Fig. 3. Comparison of average makespan among FCFS, LJF, SJF,
Type of Manager Space_shared ABC_FCFS, ABC_LJF, and ABC_SJF algorithm based on the fixed
Number of VMs and the increased number of the requests.
a
MB = Megabyte, bPE = Processing Element, cMIPS (Million
Instructions Per Second) is a measure of the processing speed of the
computer, MId is Million Instruction. Fig. 3 shows the average makespan of the scheduling
using improved ABC algorithm with FCFS, LJF, and SJF
B. Parameters Setting of ABC Algorithm (ABC_FCFS, ABC_LJF, and ABC_SJF), comparing with
The parameters setting of improved ABC algorithm is the original scheduling (FCFS, LJF, and SJF) which was
shown in Table II. based on 50 fixed VMs and the number of increasing
requests. The experimental results indicated that, while the
TABLE II
number of requests was increasing, the average makespan
PARAMETERS SETTING OF IMPROVED ABC ALGORITHM
consequently increased. It can be concluded that ABC_LJF
Symbol Parameter Value performed the effective results in the optimal scheduling on
n Number of scout bees 1000 the loaded system.
m Number of sites selected out of n 5
visited site In the second experiment, the comparison of the average
e Number of best site out of m select site 1 makespan with the number of VMs changing from the
nep Number of bees recruited for best e site 800 different scheduling algorithm is performed. The number of
nsp Number of bees recruited for other 200 tasks was fixed as 500 tasks and gradually increased the
(m-e) selected sites number of VMs from 30 to 210 VMs. The x axis shows the
effect on performance in increasing the system size (VMs).
C. Experimental Results Fig. 4 shows the average makespan of the scheduling
The evaluation of the performance of the proposed using ABC_FCFS, ABC_LJF, and ABC_SJF comparing
method can be described and compared with the scheduling with FCFS, LJF, and SJF which was based on the fixed
algorithm as the followings: number of tasks and the number of increasing VMs. It can
- First Come First Serve (FCFS) is considering the be concluded that ABC_LJF performed better than all
sequence of arrival of the job. methods and its performance is more prominent in
- Shortest Job First (SJF) is considering the size of the scalability.
job by selecting the shortest job first.
- Longest Job First (LJF) is considering the size of the
job by selecting the longest job first.
REFERENCES
[1] K. Tang, J. M. Zhang, and C. H. Feng, “Application centric lifecycle
framework in cloud,” IEEE 8th Int. Conf. on e-Business Engineering
(ICEBE), 2011, 19-21 Oct. 2011, pp. 329-334.
[2] M. Armbrust, A. Fox, R. Griffith, A. D. Joseph, R. Katz, A.
Konwinski, G. Lee, D. Patterson, A. Rabkin, I. Stoica, and M.
Zaharia, “A view of cloud computing,” in Communications of the
acm, vol. 53, no. 4, April 2010, pp. 50-58.
[3] K. Dutta, “A smart job scheduling system for cloud computing
service providers and users: modeling and simulation,” in 1st Int’l
Conf. on Recent Advances in Information Technology RAIT-2012,
2012.
[4] S.Sindhu, and S. Mukherjee, “Efficient task scheduling algorithms for
cloud computing environment,” in High Performance Architecture
and Grid Computing, Communications in Computer and Information
Science, 2011, vol. 169, 2011, pp. 79-83.
[5] D. Karaboga, and B. Basturk, “Artificial Bee Colony (ABC)
optimization algorithm for solving constrained optimization
problems,” in IFSA 2007, LNAI 4529, 2007, pp. 789–798.
[6] D. Karaboga, and B. Basturk, “On the performance of artificial bee
colony (ABC) algorithm,” in Applied Soft Computing, 2008, pp. 687–
697.
[7] D. Karaboga, B. Gorkemli, C. Ozturk, and N. Karaboga, “A
comprehensive survey: artificial bee colony (ABC) algorithm and