Effect of Acceleration Coefficient on Particle Swarm optimization for Task Scheduling in Cloud Computing

Cloud computing emerges as a powerful platform to deliver IT services online. Due to the rapid development of cloud computing the user's dependence on the cloud has increased and hence user request per unit time is increases. Now scheduling and serving the user requests is a major challenge. Particle swarm optimization as a heuristic algorithm is the most suitable algorithm in such scenario to serve user requests for the most appropriate resources. Author written this research paper in continuation with previous research paper called Modified particle swarm optimization (MPSO) in which author controlled the inertia weight in PSO to find the best cost. This research paper investigates the effect of acceleration coefficient to achieve the best cost. The implementation results of PSO with different acceleration coefficient are produced and compared. Author has use MATLab to test the effect of acceleration coefficient on fitness value and also implemented in CloudSim simulator to test variation in execution time in various scenario. The purpose of author is also to test correctness of Reyes-Sierra and Coello [19] suggested acceleration coefficient.


Introduction
Cloud computing is a model that enables convenient, on demand network access which is required for a shared pool of configurable computing resources (e.g. networks, servers, storage, applications, and services) that can be quickly provisioned and deployed with minimal management effort or service provider interaction [2]. It is a new computing system that uses geographically shared computer resources, and is available to users with a variety of online services with minimal management effort [1].Task scheduling is a major challenges related to accessing appropriate resources in the cloud to increase costs under a variety of factors [4].
Task scheduling refers to scheduling of task to appropriate resources to optimize computing costs. The computing performance depends on proper scheduling of task to the appropriate resources. Existing algorithms are using parameters such as time, makepan, speed, cost, setting the success rate, resource usage and so on. [1,5,6,7,9,10,11]. Other parameters such as availability and reliability can play an important role and can be considered [4]. Since task scheduling is a complex problem, so a heuristic algorithm will be more suitable. The PSO heuristic algorithm has already been used to solve the scheduling problem [2,13,14,16,17]. The main objective of this research paper is to test correctness of acceleration coefficient suggested by Reyes-Sierra and Coello [19] and to find suitable parameter of PSO to improve the performance of the task scheduling to achieve better costs. This paper is written in continuation with research paper [16,25].

Related Work
Workflow scheduling in cloud computing refers to sending user tasks to available resources. It is an NP-Complete problem [12]. Various heuristic based algorithmic methods have already proposed and raised the issue. There are many heuristic algorithms suggested such as PSO, Ant colony algorithm, Genetic algorithm etc. [13]. Genetic algorithm is a great way to search the solution but sometimes it sticks to the local solution. It also deals with a large number of different parameters. The PSO convergence rate is higher than the genetic algorithm and works with a less number of parameter.
Jun Xue, S et al. [1] proposed a PSO algorithm for job scheduling that takes a small update in the position to reduce computing costs. The PSO embedded in crossover and mutation performs better compared to the original PSO in terms of convergence rate, accuracy, efficiency and success rate [15]. A PSO based heuristic proposed to schedule the user tasks considering parameters computation cost and transmission cost [14]. The test result shows better load distribution and reduced overall costs. Figure-1 completely represents that how velocity and position of a particle updated its local best in the environment to get global best. There are four equations suggested by researcher [17,18] by which a particle can update its position and velocity. These four equations are represented in equation-1, 2, 3 and 4.
The inertia weight (w) in equaltion-3 controls the flow of particles resulting in an improved PSO convergence rate. Improved convergence rate is able to find the best global solution. The r1 and r2 used for random particle movements in the search space. Acceleration coefficient c1 and c2 is used to control the position of the global and personal best of particles position. The values of c1 and c2 are maintained constant to avoid influence by its positive position and that of the neighbours [19].In this research paper variation of acceleration coefficient is the main goal. But acceleration coefficient will be constant in each execution. The w value is taken between 0.5 and 0.9 [16]. Reyes-Sierra and Coello [19] suggested acceleration coefficient c1 and c2 to be 1.5 for the higher convergence value.
In [16] the author proposed a new inertia weight controlled PSO that maintains a weight of inertia between 0.5 and 0.9 which is able to obtain better result than the original PSO. In implementation of previous research paper [25], the acceleration coefficient was constant, but in this research paper inertia weight varies between 1.5 and 2 on the basic of different scenario and kept constant during each execution. At the same time the purpose of this research paper is to prove the effectiveness of MPSO

A. Modified Particle swarm optimization-1 (MPSO-1)
This MPSO algorithm is implemented which keeps inertia weight between 0.5 and 0.9 according to Modified Simple Random Inertia Weight (MSRIW) as given below [16].
In above equation the value of w is between 0.4 and 0.9.

B. Modified Particle swarm optimization-2 (MPSO-2)
This algorithm implementation is based on Modified Oscillating Inertia Weight which keeps inertia weight between 0.5 and 0.9 [16].   7) Where S1 = 3S/4 is total number of iterations required to oscillates, S is the total number of iterations and k is the frequency of oscillation.

Algorithm Design
First of all task resource mapping is done based on the task buffer size and the available computing resources. Then calculate the average computation cost corresponding to all task resources operation and the cost of communication between resources. The MPSO algorithm can be used to find the best task-resources mapping to optimize the cost by calculating the value of the fitness. Tasks are selected by a selection mechanism and are stored in the "ready task" repository before execution. The "ready-to-use" also used to verify task dependence to ensure that it should contain those tasks whose parent's task has already executed. The repetition of MPSO algorithm recomputed the task-resource mapping which make MPSO robust heuristic and dynamically balanced For all 'ready' task ti ∈ T do 5.
Assign task ti to resources pi 6.
End for loop 7.
Dispatched all the mapped task in ready task buffer 8. Update ready task buffer 9.
Update communication cost between resources 10. Repeat step 3 till unscheduled task remains MPSO Algorithm: The PSO algorithm is used to find the best fitness value for a particle. Steps of algorithm are described below. PSO algorithm is started with initialization of position and velocity of the particle. Particles mean the number of user tasks that has to be assign to the resources and dimension means the task resource mapping. The performance of each particle is evaluated by their fitness value. The particles are continued to update their velocity and position corresponding to equation 3 and 4 until maximum number of iteration reached.

1.
Initialize particle size. Particle size must be according to size of "ready task".
2. Set particle position and velocity randomly.

3.
Varies acceleration coefficient in each scenario.

4.
Find fitness value of each particle.

5.
If present fitness value is better than previous fitness value then updates 'pbest' with present fitness value.
6. Repeat step 3 and 4 for all particle and set best particle as 'gbest'. 7. Update velocity using equation 1 and 3. Similarly update position using equation 2 and 4. 8. Repeat step 3 till maximum iteration reached.

Parameters used in CloudSim simulator
CloudSim is a framework for modeling and simulating cloud computing infrastructure and services. In CloudSim scheduling perform at two levels. The first is implemented between Hosts and Virtual Machines (VM) and then implemented between Virtual Machines and cloudlets [21,22]. In Space-Shared editing object processing can be element can be allotted to a new virtual machine. While time-sharing scheduling, task can be shared to the processing elements for execution [23,24].
Here we analyzed various scenarios with different parameters in the cloud computing system corresponding to MPSO algorithm as described above [16]. In each case, we change one parameter and keep the other parameters constant. On the basis of system behaviour, we analyze its performance and effectiveness. Virtual machine, task and host configuration are initially considered as given below:

Scenario
In this scenario the parameters used are Datacenter= 2 and each Datacenter contain two hosts in which one host is quad-core and other is dual-core. Number of tasks is 40,population size=1000,c1=1.5,c2=2 VM's Allocation Policy is space shared and changing the number of virtual machines (VM) metric of result is Execution Time (ET) value of tasks ( in milliseconds) taken by three different methods is shown in table-1.

Fig. 2. Execution time vs acceleration coefficient
In the above graph serial numbers represents the corresponding to acceleration coefficients as shown in table-1.

Result Analysis
The implementation results of MPSO-1 and MPSO-2 with varying acceleration coefficients are shown in table-1 and plotted in figure-2. As Reyes-Sierra and Coello [19] suggested acceleration coefficient with value 1.5 is most suitable value in PSO. Our implementation also proved that acceleration coefficient close to 1.5 is most suitable value as shown in table. Our proposed modification in PSO which keep inertia weight value between 0.5 and 0.9 is also the performing much better than random inertia weight algorithm ,as shown in fig-2 that MPSO-1 and MPSO-2 gives better result than original PSO by keeping inertia weight between 0.5 and 0.9 [16].

Conclusion
It is clear from the implementation results of PSO, MPSO-1 and MPSO-2 that acceleration coefficient and inertia weight (w) plays an important role to find the best cost. MPSO-1 and MPSO-2 both keep the value of w between 0.5 and 0.9, and enhance the searching capabilities for best cost. The implementation results of MPSO on CloudSim show that on average it is capable to find best cost as compared to original PSO. Our experimental results conclude that acceleration coefficient should be close to 1.5. In future to accept MPSO as a scheduling algorithm some other parameters like population size, number of iterations, virtualization and cognitive component must be taken into account.