Cloud computing has gained widespread popularity over the last decade. Scheduling problem in cloud computing is prejudiced due to enormous demands of cloud users. Meta-heuristic techniques in cloud computing have exhibited high performance in comparison to traditional scheduling algorithms. This paper presents a novel hybrid Nesterov Accelerated Gradient-based Cuckoo Search Algorithm (NAGCSA) to address the scheduling issue in cloud computing. Nesterov Accelerated Gradient can address trapping at local minima in CSA by updating the position using future approximation. The local search in the proposed algorithm is performed by using Nesterov Accelerated Gradient, while the global search is performed by using levy flights. The amalgamation of NAG and CSA helps in cost reduction and time-saving for users. The simulation has been carried out on the CloudSim tool on three different real datasets; NASA, HPC2N, and SDSC. The results of the proposed hybrid algorithm have been compared with state-of-art scheduling algorithms (GA, PSO, and CSA), and statistical significance is carried on mean, standard deviation, and best for each algorithm. It has been established that the proposed algorithm minimizes the execution cost and makespan, hence enhancing the quality of service for users.

Cloud computing has become a fundamental part of the computing world nowadays. The expansion of cloud computing technology act as the backbone of newly developed technology like Fog Computing [

The key technology behind the success of cloud computing is virtualization. Virtualization helps cloud providers to deliver any kind of computing phenomenon by assembling the required hardware and software together on a single platform and minimizing the complexity and burden of buying new hardware and software. Some of the virtualization vendors are Xen [

Resource scheduling is a building block in cloud computing that decides how resources are distributed over time and made available to its users in the best possible way. It helps in providing the best quality of service to its users and the best utilization of resources to increase profits. The fluctuating demands of users are unpredictable concerning the time domain, so it is very difficult to satisfy resource requirements in dynamic nature. Scheduling in cloud computing is done at two levels: users to virtual machines (VM) and VM to the physical host. The first level scheduling is responsible for maintaining the quality of service in terms of makespan, execution cost, and response time while the latter decides load balancing, migrations, energy and resource utilization [

As the number of users and virtual machines keeps on changing continuously in cloud computing, so resource scheduling in the cloud system is an NP-Hard problem. Suppose there exit ^{2}

Hybrid algorithms always try to conquer all factors in solving any optimization problem. The benefits of combining two or more algorithms are that they always find the best solutions by addressing the limitations of the single algorithm in terms of speed and accuracy. Hybrid algorithms consist of some meta-heuristic techniques, while other methods can achieve optimal scheduling.

Cuckoo Search (CS) algorithm is a population-based meta-heuristic technique that has been widely used by the researcher in various domains of engineering and technology like scheduling, image processing, structural design, speech recognition etc. [

The vital contributions of this paper are as follows:

Frame the makespan and execution cost using mathematical models for scheduling as the fitness functions

Hybridize the Nesterov Accelerated Gradient with Cuckoo Search for scheduling in IaaS cloud

Design of hybrid NAGCS algorithm to address the proposed scheduling model.

Proposed hybrid NAGCS algorithm is implemented in the CloudSim simulation tool.

Comparability of proposed hybrid NAGCS algorithm with CS algorithm and meta-heuristic techniques like GA and PSO in terms of makespan and execution cost.

The remaining sections of this paper are organized as follows: Section 2 review some existing techniques that are used in scheduling for IaaS cloud computing. Problem is formulated in Section 3. Section 4 presents the mathematical models of performance metrics that is used in this research work. Section 5 presents the explanation for CS search, Nesterov Accelerated Gradient and hybrid NAGCS algorithm. Section 6 presents the simulations setups for scheduling. Results and discussions are furnished in Section 7, and finally, we conclude the paper in last with some valuable suggestions.

There is a vast literature on scheduling techniques in cloud computing. Researchers and scientists have applied many computational techniques to perform scheduling in cloud computing considering various constraints like budget, deadlines. The various review articles published in the literature have shown a broad application of heuristic and meta-heuristics techniques to solve various challenges in cloud computing [

Genetic Algorithm (GA) has been widely used in cloud computing for performing scheduling, load balancing, and VM allocation. Its modified version and hybrid form with other techniques were also used for efficient scheduling in cloud computing. Author in [

Abari et al. [

Strumberger et al. [

Al-Olimat et al. [

Madni et al. [

Kaur et al. in [

The analysis of the reviewed articles established that the majority of studies includes meta-heuristic techniques like GA, PSO, ABC, and ACO and their hybridization with some heuristic techniques. These algorithms get trapped in local minima while performing scheduling in cloud computing. The performance of these algorithms is also not compared with other meta-heuristic techniques. This article presents a technique to avoid local optima problem using NAG and also performs better at global minima.

Resource scheduling in cloud computing is NP-Hard in nature. It is defined as mapping the user’s task to the best available virtual machines to fulfill the user’s demand. Suppose a cloud datacenter consists of p physical hosts, represented by set ^{th} activity on ^{th} virtual machine is calculated using

^{th} VM in terms of MIPS. Therefore, EET of all the activities can be represented by

Suppose there is set of Activity cost

Selecting the best resource for cloud user with minimum cost in less time is very complex problem. To understand the complexity of the problem, a simple example is illustrated in

Symbol | Description |
---|---|

NAGCSA | Nesterov accelerated gradient cuckoo seach algorithm |

VM | Virtual machines |

QoS | Quality of service |

GA | Genetic algorithm |

PSO | Particle swarm optimization |

EET | Expected execution time |

EEC | Expected execution cost |

PIR | Performance improvement rate |

Suppose there are two virtual machines available (VM1 and VM2) in the cloud datacenter and three users (A1–A3) requested for resource. The cloud broker can allocate any two users without waiting, but one user has to wait for some time. Considering this there are two choices available to broker, either any two users use machine 1 and one user use machine 2 or any two-user use machine 2 and only one user use machine 1. So, there are multiple decisions available to cloud broker and is responsible to give good quality of service to his users. The multiple decisions are illustrated in

VM2 | VM1 | Makespan, f(x) | Execution Cost, f(y) | Fitness | ||
---|---|---|---|---|---|---|

S1 | A1 | A2 | A3 | 47 + 47 + 74.6 + 95.33 = 263.93 | 3 + 6 + 4 = 13 | 80.17 |

S2 | A2 | A1 | A3 | 74.6 + 74.6 + 47 + 95.33 = 291.53 | 6 + 3 + 4 = 13 | 96.559 |

S3 | A2 | A3 | A1 | 74.6 + 74.6 + 47 + 78.33 = 284.7 | 6 + 3 + 4 = 13 | 94.51 |

S4 | A3 | A2 | A1 | 57.2 + 57.2 + 74.6 + 78.33 = 267.33 | 6 + 4 + 3 = 13 | 89.21 |

S5 | A1 | A3 | A2 | 47 + 47 + 57.2 + 124.3 = 308.2 | 3 + 3 + 6 = 12 | 100.86 |

S6 | A3 | A1 | A2 | 57.2 + 57.2 + 47 + 124.33 = 285.73 | 3 + 3 + 6 = 12 | 94.19 |

In this article, makespan time and execution cost are considered as the main objective for scheduling in cloud computing. Therefore, fitness value of hybrid NABCS can be calculated using equation

Makespan is the maximum finishing time of all activities when they mapped on VMs. It is calculated using

_{i} indicates the completion time of specific activity.

Execution cost is defined as amount paid by cloud users to CSP for executing their activities on VMs as per Service Level Agreement (SLA).

^{ith} per unit time and ^{i}.

The two functions of makespan and execution cost can be combined together as weighted-product of two functions respectively. So, combining

The

In this section, the concepts of CS algorithm and NAG is presented. Then, hybridization of CS with NAG is presented to explain how NAG is helpful in local search.

Cuckoo Search Algorithm [

Each Cuckoo lays one egg at a time and places it in a nest that has been selected at random.

The highest-quality nest will be the carrier of the next generation or solution.

The number of host nests is fixed, and a host can realize unfamiliar eggs with the probability (0 or 1). In this case, a host can abandon the nest to build a new nest or throw cuckoo egg.

There are three parameters used in CS algorithm.

α > 0 step size, depends on scale of the problem, mostly taken α > 1.

Levy flight is most commonly used in terms of step length with CS to update the solution as represented in

Assumptions of CS algorithm

Cuckoo bird lays one egg at a time, which shows one solution.

Nests having the best solution would be most delicate nests, i.e., nest itself represents the solution.

A fixed number of the nests would be available; there are finite numbers of initial solutions, which will remain the same throughout the algorithm [

The behaviour of CS algorithm performs local and global search based on switching and discovery probability

Gradient Descent is commonly used optimization method for finding local minima of a function [

The concept of the Nesterov Accelerated Gradient [

For particular iteration

The ^{i} can be derived from the momentum-based update rule and can be understood mathematically as follows:

Without momentum

With momentum

Now applying NAG rule on

The updates come in two parts; a partial update and a final update. So, when a function overshoots and goes away from the optimal solution, NAG helps to take a U-turn and comes closely towards minima. The updating of a function from a particular point towards minima is based not only on current position but also on an approximation of future position. This helps in finding more accurate results and can be used with other meta-heuristic techniques with problem of trapping of a function at local minima.

Resource scheduling issues have been solved by various meta-heuristic techniques. Many scheduling algorithms have been proposed to optimize the scheduling issue in IaaS cloud computing, but every algorithm has limitations like speed or premature convergence. Most of the meta-heuristic techniques use the current position to update its position towards optimal solution. This hybrid algorithm uses the look-ahead position to move towards optimal solution even if it moves away from optimal solution. The proposed hybrid NAGCSA helps in local optimization due to NAG and global search maintains through breeding behaviour of cuckoo search algorithm.

A set of random integers is generated using an array that represents a solution for scheduling. This step finds dimension of solutions, given by number of

_{i} has any integer value in the interval [1, m], where m is number of virtual machines, and _{i} = [4, 3, 2, 2, 1, 3, 1, 5, 2, 4, 3, 3]. The value “four” indicates the first job will be assigned to fourth machine. So, second, sixth, eleventh and twelfth jobs will be assigned to third machine. Similarly, interpretation of all other values can be done. The _{i} also represents cuckoo’s eggs in our algorithm.

After the initialization stage, fitness of all eggs is calculated, the best is selected. All cuckoos now fly towards the optimal solution with step-size variable. NAG is used for performing local search when

The simulation setup is described in this section. Simulation has been prepared on Apache NetBeans IDE 11.3, supported by CloudSim simulation tool 3.03 [

Algorithms | Parameters | Values |
---|---|---|

GA | Population size | 1000 |

Max iteration | 1000 | |

Cross-over rate | 0.5 | |

Mutation rate | 0.1 | |

PSO | Particle size | 100 |

Self-recognition coefficients, c1, c2 | 2 | |

Uniform random number, R1 | 0,1 | |

Max iteration | 1000 | |

Inertia weight | 0.9–0.4 | |

CS | Population size | 50 |

Abundant probability, |
0.25 | |

Step size, |
0.01, 1 | |

Learning rate, |
0.9 |

The performance of the proposed hybrid NAGCSA is evaluated on real traces from HPC2N (High-Performance Computing Center North) [

Entities | Parameters | Values |
---|---|---|

Users | Number of users | 50 |

Number of broker | 1 | |

Cloudlet | Number of cloudlets/activities | 200–2000 |

Length | 800,000 | |

File size | 600 KB | |

VM | No. of VMs | 50 |

Type of policy | Space shared | |

RAM | 512–2048 MB | |

Bandwidth | 10000 Mbps | |

MIPS | 1000–2000 | |

Size | 100–1000 GB | |

VMM | Xen | |

Operating system | Linux | |

Number of CPUs | 1 on each | |

Host | RAM | 4096 MB |

Storage | 100 TB | |

Bandwidth | 10000 Mbps |

This section presents and discusses the computational outcomes of the simulation performed in CloudSim tool. The makespan time and execution cost are considered to evaluate the Quality of Service of the proposed algorithm.

The performance improvement rate (PIR) is calculated to evaluate the improvement for the ^{th} algorithm as compared to ^{th} algorithm [

PIR (%) is calculated based on makespan on three different datasets shows that proposed hybrid Cuckoo Search Algorithm has a significant performance than GA, PSO, and CSA. Proposed hybrid algorithm minimizes execution cost by 35.59%, 32.22%, and 31.26% as compared to GA; 26.61%, 22.19%, and 24.05% as compared to PSO; and 13.83%, 11.40%, and 16.35% as compared to CSA on NASA, HPC2N, and SDSC workloads respectively, which is presented in

Jobs/ Cloudlets/ Activities | GA | PSO | CSA | Hybrid CSA | PIR over GA | PIR over PSO | PIR over CSA |
---|---|---|---|---|---|---|---|

500 | 6.54 | 6.02 | 4.84 | 3.92 | 66.83 | 53.57 | 23.46 |

1000 | 11.56 | 10.95 | 9.65 | 8.45 | 36.80 | 29.58 | 14.20 |

1500 | 18.74 | 17.05 | 16.54 | 15.65 | 19.74 | 8.94 | 5.68 |

2000 | 28.65 | 27.54 | 26.97 | 24.08 | 18.97 | 14.36 | 12.00 |

Mean % improvement (a. NASA) | 35.59 | 26.61 | 13.83 |

Jobs/ Cloudlets/ Activities | GA | PSO | CSA | Hybrid CSA | PIR over GA | PIR over PSO | PIR over CSA |
---|---|---|---|---|---|---|---|

500 | 65.63 | 58.23 | 51.45 | 47.36 | 38.58 | 22.95 | 8.64 |

1000 | 87.25 | 81.45 | 74.23 | 67.23 | 29.78 | 21.15 | 10.41 |

500 | 96.45 | 91.25 | 87.36 | 77.25 | 24.85 | 18.12 | 13.09 |

2000 | 118.36 | 110.36 | 98.97 | 87.23 | 35.69 | 26.52 | 13.46 |

Mean % improvement (a. HPC2N) | 32.22 | 22.19 | 11.40 |

Jobs/ Cloudlets/ Activities | GA | PSO | CSA | Hybrid CSA | PIR over GA | PIR over PSO | PIR over CSA |
---|---|---|---|---|---|---|---|

500 | 55.43 | 51.23 | 47.36 | 41.25 | 34.38 | 24.19 | 14.81 |

1000 | 65.25 | 63.45 | 67.65 | 57.63 | 13.22 | 10.10 | 17.39 |

1500 | 91.45 | 87.25 | 77.69 | 64.15 | 42.56 | 36.01 | 21.11 |

2000 | 105.36 | 98.36 | 87.58 | 78.12 | 34.87 | 25.91 | 12.11 |

Mean % improvement (c. SDSC) | 31.26 | 24.05 | 16.35 |

Jobs/ Cloudlets/ Activities | GA | PSO | CSA | Hybrid CSA | PIR over GA | PIR over PSO | PIR over CSA |
---|---|---|---|---|---|---|---|

500 | 364.41 | 350.98 | 315.14 | 292.65 | 24.52 | 19.93 | 7.68 |

1000 | 745.96 | 694.23 | 664.85 | 602.45 | 23.82 | 15.23 | 10.36 |

1500 | 1198.47 | 1145.45 | 1095.74 | 1025.45 | 16.87 | 11.70 | 6.85 |

2000 | 1705.45 | 1604.25 | 1554.23 | 1495.36 | 14.05 | 7.28 | 3.94 |

Mean % improvement (a. NASA) | 19.82 | 13.54 | 7.21 |

Jobs/ Cloudlets/ Activities | GA | PSO | CSA | Hybrid CSA | PIR over GA | PIR over PSO | PIR over CSA |
---|---|---|---|---|---|---|---|

500 | 3258.49 | 3187.21 | 3106.45 | 2987.32 | 9.08 | 6.69 | 3.99 |

1000 | 4354.12 | 4296.41 | 4208.24 | 4105.36 | 6.06 | 4.65 | 2.51 |

1500 | 5168.54 | 5004.96 | 4965.87 | 4887.47 | 5.75 | 2.40 | 1.60 |

2000 | 5865.64 | 5754.25 | 5678.54 | 5423.74 | 8.15 | 6.09 | 4.70 |

Mean % improvement (b. HPC2N) | 7.26 | 4.96 | 3.20 |

Jobs/ Cloudlets/ Activities | GA | PSO | CSA | Hybrid CSA | PIR over GA | PIR over PSO | PIR over CSA |
---|---|---|---|---|---|---|---|

500 | 285.65 | 265.47 | 263.54 | 247.95 | 15.20 | 7.07 | 6.29 |

1000 | 1725.45 | 1684.35 | 1654.23 | 1537.94 | 12.19 | 9.52 | 7.56 |

1500 | 2598.23 | 2496.23 | 2467.96 | 2304.54 | 12.74 | 8.32 | 7.09 |

2000 | 3180.36 | 3069.63 | 2994.45 | 2645.24 | 20.23 | 16.04 | 13.20 |

Mean % improvement (c. SDSC) | 15.09 | 10.24 | 8.54 |

The statistical significance of each algorithm for execution cost and makespan after thirty simulation runs is presented in

Statistical significance of execution cost after 30 runs | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|

Algorithm | Workload | NASA | HPC2N | SDSC | ||||||

Number of cloudlet | Best | Best | Best | |||||||

GA | 500 | 6.54 | 0.24 | 6.31 | 65.63 | 0.39 | 63.54 | 55.43 | 2.13 | 53.69 |

1000 | 11.56 | 0.96 | 10.89 | 87.25 | 0.86 | 85.98 | 65.25 | 1.86 | 62.36 | |

1500 | 18.74 | 0.54 | 18.71 | 96.45 | 0.61 | 95.36 | 91.45 | 1.64 | 89.36 | |

2000 | 28.65 | 1.41 | 27.36 | 118.36 | 1.54 | 117.25 | 105.36 | 1.47 | 103.45 | |

PSO | 500 | 6.02 | 0.36 | 5.91 | 58.23 | 0.47 | 57.52 | 51.23 | 0.59 | 49.69 |

1000 | 10.95 | 1.54 | 9.64 | 81.45 | 1.87 | 80.36 | 74.45 | 1.97 | 72.45 | |

1500 | 17.05 | 1.26 | 16.78 | 91.25 | 1.68 | 90.36 | 87.25 | 2.95 | 84.36 | |

2000 | 27.54 | 1.58 | 26.45 | 110.36 | 1.71 | 106.69 | 98.36 | 2.76 | 94.36 | |

CSA | 500 | 4.84 | 0.14 | 4.70 | 51.45 | 0.25 | 50.36 | 47.36 | 0.39 | 46.36 |

1000 | 9.65 | 0.95 | 8.90 | 74.23 | 0.87 | 72.25 | 67.65 | 0.56 | 65.25 | |

1500 | 16.54 | 0.71 | 16.02 | 87.36 | 0.89 | 84.36 | 77.69 | 0.72 | 76.36 | |

2000 | 26.97 | 1.25 | 25.52 | 98.97 | 1.64 | 96.36 | 87.58 | 1.64 | 85.23 | |

Hybrid CSA | 500 | 3.92 | 0.05 | 3.83 | 47.36 | 0.56 | 45.36 | 41.36 | 0.72 | 40.66 |

1000 | 8.45 | 0.15 | 8.20 | 67.23 | 0.69 | 65.61 | 57.63 | 0.62 | 55.36 | |

1500 | 15.65 | 0.30 | 15.35 | 77.25 | 0.89 | 75.26 | 64.15 | 0.77 | 62.45 | |

2000 | 24.08 | 0.95 | 23.81 | 87.23 | 1.02 | 85.23 | 78.12 | 1.07 | 76.36 |

Statistical significance of makespan after 30 runs | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|

Algorithm | Workload | NASA | HPC2N | SDSC | ||||||

Number of cloudlet | Best | Best | Best | |||||||

GA | 500 | 364.41 | 3.54 | 361.87 | 3258.49 | 9.25 | 3214.56 | 285.65 | 6.25 | 271.25 |

1000 | 745.96 | 3.96 | 743.36 | 4354.12 | 10.69 | 4319.65 | 1725.45 | 7.25 | 1694.36 | |

1500 | 1198.47 | 4.58 | 1194.54 | 5168.54 | 12.87 | 5118.74 | 2598.23 | 7.21 | 2564.31 | |

2000 | 1705.45 | 4.98 | 1695.24 | 5865.64 | 14.36 | 5817.23 | 3180.36 | 8.54 | 3119.36 | |

PSO | 500 | 350.98 | 3.56 | 347.25 | 3187.21 | 8.69 | 3112.87 | 265.47 | 5.36 | 255.66 |

1000 | 694.23 | 2.66 | 692.74 | 4296.41 | 11.65 | 4247.32 | 1684.35 | 6.32 | 1677.21 | |

1500 | 1145.45 | 3.98 | 1139.54 | 5004.96 | 13.58 | 4987.23 | 2496.23 | 6.35 | 2474.25 | |

2000 | 1604.25 | 2.49 | 1598.73 | 5754.25 | 14.36 | 5714.11 | 3069.63 | 7.88 | 3015.66 | |

CSA | 500 | 315.14 | 3.58 | 313.47 | 3106.45 | 8.69 | 3084.78 | 263.54 | 5.45 | 257.66 |

1000 | 664.85 | 2.98 | 661.25 | 4208.24 | 9.35 | 4198.45 | 1654.23 | 5.98 | 1598.90 | |

1500 | 1095.74 | 2.57 | 1093.78 | 4965.87 | 10.54 | 4961.54 | 2467.96 | 6.36 | 2395.69 | |

2000 | 1554.23 | 2.60 | 1554.73 | 5678.54 | 11.26 | 5617.12 | 2994.45 | 6.87 | 2923.36 | |

Hybrid CSA | 500 | 292.65 | 1.25 | 291.78 | 2987.32 | 8.64 | 2917.23 | 247.95 | 4.36 | 245.66 |

1000 | 602.45 | 1.95 | 600.57 | 4105.36 | 9.21 | 4084.23 | 1587.94 | 4.98 | 1577.21 | |

1500 | 1025.45 | 2.18 | 1023.66 | 4887.47 | 9.35 | 4824.23 | 2304.54 | 5.3 | 2285.66 | |

2000 | 1495.36 | 2.68 | 1493.54 | 5423.74 | 10.69 | 5396.36 | 2645.24 | 5.91 | 2654.21 |

Scheduling in cloud computing is considered an NP-Hard problem to fulfil the demands of all users. It has been explored by most scientists and researchers around the world to increase the performance of scheduling algorithms. The motivation for this paper has explored techniques to study important parameters of quality of service, i.e., makespan and execution cost, for cloud users. This paper proposed a novel hybrid Nesterov Accelerated Gradient-based Cuckoo Search Algorithm to perform the scheduling in the IaaS cloud. The approximation of the future position of using NAG helps to reach the function towards local minima even if gets overshoots in any iteration. The simulation was performed in CloudSim on three different datasets; NASA, HPC2N, and SDSC with GA, PSO, and CSA scheduling algorithms. The results show that our proposed hybrid algorithm helps in saving time and money of users up to 19.20% and 35%, respectively. This work can be extended by adding more parameters like degree of imbalance, energy consumption, and throughput. The proposed hybrid algorithm can be used to resolve other issues in cloud computing like VM allocation and load balancing. More gradient-based optimization algorithms can be hybridized with CSA to evaluate its performance in other engineering optimizations problems.

Authors also acknowledge the Computer Science and Engineering Department of Deenbandhu Chhotu Ram University of Science and Technology for providing various facilities in the research lab.