You are currently viewing a new version of our website. To view the old version click .
Electronics
  • Article
  • Open Access

4 December 2018

Virtual Machine Placement via Bin Packing in Cloud Data Centers

,
,
,
,
,
,
,
and
1
Department of Computer Science, COMSATS University Islamabad, Islamabad 44000, Pakistan
2
Department of Computer Science, University of Kotli, Azad Jammu and Kashmir 11100, Pakistan
3
Centre for Data Science and Analytics, School of Computing and IT, Taylor’s University, Subang Jaya 47500, Malaysia
4
Kotli Campus, Virtual University of Pakistan, Azad Kashmir 11100, Pakistan
This article belongs to the Special Issue Green Communications in Smart City

Abstract

With the increasing size of cloud data centers, the number of users and virtual machines (VMs) increases rapidly. The requests of users are entertained by VMs residing on physical servers. The dramatic growth of internet services results in unbalanced network resources. Resource management is an important factor for the performance of a cloud. Various techniques are used to manage the resources of a cloud efficiently. VM-consolidation is an intelligent and efficient strategy to balance the load of cloud data centers. VM-placement is an important subproblem of the VM-consolidation problem that needs to be resolved. The basic objective of VM-placement is to minimize the utilization rate of physical machines (PMs). VM-placement is used to save energy and cost. An enhanced levy-based particle swarm optimization algorithm with variable sized bin packing (PSOLBP) is proposed for solving the VM-placement problem. Moreover, the best-fit strategy is also used with the variable sized bin packing problem (VSBPP). Simulations are done to authenticate the adaptivity of the proposed algorithm. Three algorithms are implemented in Matlab. The given algorithm is compared with simple particle swarm optimization (PSO) and a hybrid of levy flight and particle swarm optimization (LFPSO). The proposed algorithm efficiently minimized the number of running PMs. VM-consolidation is an NP-hard problem, however, the proposed algorithm outperformed the other two algorithms.

1. Introduction

In the cloud environment, many tasks may require resources from multiple resource providers [1]. There is a vast number of physical machines (PMs) in a cloud data center [2]. Virtualization technology provides a facility of virtual machines (VMs). The users can run their applications on VMs. The facilities’ virtualization technology provides sharing of memory, CPU and storage resources [2]. Multiple applications on VMs perform a task submitted by a user [3]. A bi-directional communication between a user and application needs to use the network resources. In task processing, the capacity of network resources plays an important role.
There are two main parts of cloud computing: front end and back end. A user can only see the front end which consists of a browser, connections etc. A back-end comprises servers, components, data storage, hosts etc. [4]. Cloud computing provides three services: software as a service (SaaS), platform as a service (PaaS), and infrastructure as a service (IaaS). SaaS provides a facility to use the software online instead of installing or purchasing it; It provides access through a web browser. PaaS is a middle-ware between SaaS and IaaS. It represents a whole environment for testing, deploying, updating and managing applications. IaaS provides hardware components including servers, network, and storage etc. Examples of SaaS, PaaS, and IaaS are shown in Figure 1.
Figure 1. Cloud Services.
Mathematically, the process of managing and designing cloud computing is stated as an optimization problem [4]. Load balancing is the main objective of a cloud data center. Two main approaches are used for load balancing of a cloud. These are VM-integration and intelligent task assignment. VM-integration includes efficient placement of VMs and migration of VMs. The basic idea of VM-placement is to place the VMs according to each host capacity. VM-migration includes the process of moving tasks from over-loaded or underloaded server to normal server. VM-migration is triggered when a critical value is reached. Intelligent task assignment is another approach to balance the load of a network efficiently. It is the process of selecting the appropriate VM according to the size and capacity of a VM. However, migration of a task increases the total cost. Intelligent task assignment also increases cost. VM-placement is an efficient way to balance the load of a cloud data center. Most of the cloud computing problems including scheduling and load balancing can be done through bin packing problem (BPP) variants.
This paper is an extension of [5]. The extended paper presents an enhanced levy-based particle swarm optimization (PSO) with variable sized bin packing (PSOLBP) algorithm based on best-fit strategy. Variable sized bin packing is used to balance the load of a cloud data center. The initial steps are similar to simple PSO. The processes of making swarm in search space, finding local best and global best are all the same as PSO. If the probability is greater than 0.5, the position and the velocity of each particle are updated using a simple PSO method, otherwise levy flight is used to update velocity and position of the particle.
The remaining part of the paper is organized as follows: related work is covered in Section 2, PSO and levy flight algorithms are presented in Section 3 and Section 4. The proposed algorithm is described in Section 5 while problem formulation is done in Section 6 and the bin packing problem is presented in Section 7. Simulation results are discussed in Section 8. Conclusion and future work are included in Section 9.

1.1. Limitations of Research and Contributions

Cloud computing is a kind of distributed computing [1]. A cloud data center normally contains a large number of PMs [2]. Cloud service providers offer consumers the facility of VMs to run their applications [2]. The main objective of VMs is to minimize the usage of PMs [2]. The size of cloud data centers is increasing dramatically so the number of VMs and applications are also rising rapidly. The expeditious growth of Internet services causes an unbalanced load of data center resources. To balance the resources of cloud data centers, two main approaches are used: VM-integration and intelligent task assignment. VM-integration includes migration of VMs and optimal placement of VMs in a cloud data center. The basic idea of VM-placement is to place the VMs reasonably according to the processing capacity of each host. VM-migration is triggered when the utilization rate of VM reaches a critical value. In an intelligent task assignment, a suitable host is selected according to the size of a task and resource consumption of a task. However, it increases the overall operational cost [3]. VM-placement through variable-sized bin packing is an efficient strategy [4].
An efficient VM-placement algorithm is needed to reduce the usage of PMs. In this paper, an efficient strategy is proposed to solve the VM placement problem in cloud data centers. The proposed technique is a hybrid of PSO and levy flight. Furthermore, bin packing is used to minimize the utilization rate of PMs. The best-fit strategy is used to reduce the resource wastage of cloud resources. The best fit algorithm packs the maximum number of VMs into a small number of PMs. The sole purpose of bin packing and best-fit strategy is efficient utilization of cloud resources. Bin packing saves energies and reduces cost. The proposed algorithm is examined on ten well-known unimodal and multimodal benchmark functions. The main contributions of the work are listed below:
  • An improved levy-based PSO algorithm is proposed to solve the VM-placement problem
  • Variable-sized bin packing is used to minimize the utilization rate of the running PMs
  • The best-fit strategy is used to achieve an optimal solution without wasting any space of a running PM
  • Efficient use of cloud data center resources, i.e., packing a PM to its capacity without wasting any resource

1.2. Implementation Practice Guidelines

The proposed technique is the hybrid of levy flight and PSO. The initial steps are similar to those of a simple PSO including:
  • Random distribution of population
  • Evaluation of all particle fitness value
  • Finding the personal best and global best values
If the probability is greater than or equal to 0.5, the velocity and position of each particle are updated through PSO. Otherwise, use levy flight to update the velocity of the particle. The particle’s velocity value becomes the value of its position. Bin packing is then used to pack the maximum number of VMs into a small number of PMs. The main purpose of bin packing is to avoid wastage of resources, save energies and reduce cost.

3. Particle Swarm Optimization Algorithm

The PSO is a swarm-intelligence-based meta-heuristic technique for the solution of continual optimization problem [6]. It is a simple, intelligent and powerful algorithm. It mimics the social behavior of fishes and birds. In PSO, a particle is a candidate solution for an optimization problem. A number of particles integrate together to make a swarm and search for a good solution of a given optimization problem as shown in Figure 2. A search space is a set of all possible positions. Each particle has some position and it shows a possible solution of the fitness function in d-dimension search space. Each particle i maintains two vectors in search space [6]:
Figure 2. Swarm of Particles.
Position vector X i = [ x i 1 , x i 2 x i d ] and
Velocity vector describes the movement of a particle.
Velocity vector V i = [ v i 1 , v i 2 v i d ] .
Each particle has its own best experience known as personal best (pbest) and all particles have best experience called as global best (gbest). It helps the particles to move in the d-dimension search space.
pbest of particle i in d-dimension search space is represented as [6]:
p b e s t i = [ p i 1 , p i 2 , p i 3 , , p i d , ]
gbest in d-dimension search space is represented as [6]:
g b e s t i = [ g 1 , g 2 , g 3 , , g d , ]
In initialization phase, a random initial position and velocity is given to each particle.

3.1. Update Position

The position of the particle consists of a value given by the objective function. Each particle memorizes the position of the best solution while moving in search space. Following equation is used to find the position of a particle [6]:
X i ( t + 1 ) = X i ( t ) + V i ( t + 1 )
where X i ( t + 1 ) represents the position of ith particle at iteration t + 1 , V i ( t + 1 ) is the velocity of ith particle at iteration t + 1 and V i is the velocity vector.

3.2. Update Velocity

A particle moves with a velocity at each iteration of the algorithm. A velocity is the sum of three components [6]:
  • Previous velocity
  • A velocity component that drives a particle towards the location in search space where it previously found the best solution
  • A velocity through which the best solution found by neighbor particles in search space
Following equation is used to find the velocity of a particle [6]:
V i ( t + 1 ) = ω × V i ( t ) + c 1 × r a n d ( ) ( p b e s t i X i t ) + c 2 × r a n d ( ) ( g b e s t X i t )
where ω is inertia weight, c1 is cognitive weighting factor, c2 is a social weighting factor, rand () is a stochastic component of algorithm which is 0.5 and ⊕ shows the element by element multiplication. The graphical representation of Equations (1) and (2) is shown in Figure 3.
Figure 3. Graphical Representation of Personal Best and Global Best.
The values of c1 and c2 are used to check that the particles are effected more locally or globally. Inertia weight ( ω ) has controlling effect of previous velocity. It is used to balance exploitation and exploration rate. Following equation is used to calculate ω [6]:
ω ( t + 1 ) = ω m a x ω m a x ω m i n t m a x
where t is the current iteration, t m a x and t m i n shows the maximum and minimum inertia weights and t m a x is the maximum number of iteration. After updating position and velocity, minimum ( X m i n ) and maximum ( X m a x ) values for search range is assigned. Then, for each particle’s fitness value is calculated, pbest and gbest updates are performed. This procedure is continued until the stopping criteria is satisfied.

4. Levy Flight Algorithm

Levy flight is a class of random walk whose step length is drawn from levy distribution. Levy flight starts from one best-known location and generates a whole new generation at a distance which is randomly distributed according to levy distribution. The new generation will be evaluated to select the most encouraging one. Two steps are involved in levy flight:
  • The selection of random direction
  • The production of new steps
Levy distribution can be approximated as power-law when a step size is large. The formula of power-law is [6]:
L ( s ) | s | 1 β
where 0 < β < 2 is an index.

4.1. Simple Levy Distribution

A levy distribution can be mathematically defined as [6]:
D i t = L ( s , γ , μ ) = γ 2 π e x p γ 2 ( s μ ) 1 ( s μ ) 3 / 2 , if 0 μ s inf 0 , if s 0
where μ is a shift parameter, γ > 0 is a scale parameter used to control the scale of distribution.

4.2. Fourier Transform

Generally, levy distribution is defined in terms of Fourier transform [6].
F ( k ) = e x p [ α | k | β ] , 0 < β 2
where α is a scale factor which is 0.5. β ( 0 , 2 ) is referred as levy index.
For random walk, the length of a step is calculated through mantegna’s algorithm as [6]:
S = u | v | 1 / β
where u and v are drawn from normal distribution [6].
u N ( O , σ u 2 ) , v N ( O , σ v 2 )
where
σ u = Γ ( 1 + β ) sin ( π β / 2 ) Γ ( 1 + β / 2 ) β 2 β 1 / 2
Then the size of each step is calculated through
s t e p s i z e = 0.01 × S

5. Proposed Levy Flight Particle Swarm Optimization with Variable Sized Bin Packing

In PSO, there is a problem of trapping and premature convergence in local optima. Many researchers used different techniques to improve PSO. This work focuses on updating the velocity using the levy flight method. The initial steps are similar to PSO, like random distribution of particles in search space, evaluation of all particles fitness value and the finding of pbest and gbest. When the probability is greater than or equal to 0.5, the velocity and position of each particle are updated using Equations (1) and (2). Otherwise, use Equation (12) and then a particle’s velocity becomes its position [6].
ω = 0.1 + 0.8 × 1 i t M a x i t
V i t + 1 = ω × L e v y w a l k ( X i ( t ) ) + c 1 × r a n d ( ) ( p b e s t i X i t ) + c 2 × r a n d ( ) ( g b e s t X i t )
The particle takes long jump toward its best positions. In distribution of levy flight, β parameter performs a main role. The distribution can be changed differently by applying different values of β . In this paper, the value of β is constant, i.e., 1.5.
The proposed phenomenon avoided loss of divergence while updating the velocity. This work improves a particle’s position after each iteration. The next position of a particle is calculated using Equation (13) [6].
X i t + 1 = V i t + 1
and
L e v y w a l k ( X i ( t ) ) = ( X i ( t ) ) + s t e p r a n d o m ( s i z e ( X i ) )
where
s t e p = s t e p s i z e X i ( t )
The fitness value of each particle is calculated after updating the velocity and position. If the particle has a better value then update its pbest. Otherwise, there is no need to update the pbest value. Then, find the gbest value of whole swarm. Repeat the procedure to achieve global optimum value. The pseudocode and flowchart of the PSOLF is given Algorithm 1 and Figure 4 [6].
Figure 4. Flowchart of PSOLF.
Algorithm 1 Pseudocode of the PSOLF
Electronics 07 00389 i001

6. Problem Formulation

In this paper, the problem of VM-placement is formulated as a “variable-sized bin packing problem (VSBPP)”with non-divisible items [4]. In VSBP, there are multiple bins of different capacities to pack a set of items. VSBPP can be defined as a set of indivisible items along with their weights and a set of variable-sized bins. The main objective of bin packing is to pack multiple items into a minimum number of bins in such a way that the wasted spaces of bins or the sum of costs are minimized. VSBPP can be described as follows [4]:
m i n j = 1 n k = 1 m c k · y j k
subject to
j = 1 n x i j = 1
k = 1 m y j k 1
i = 1 n w i · x i j k = 1 m W k · y j k
c k = k = 1 m W k · y j k i = 1 n w i · x i j
x i j { 0 , 1 }
y j k { 0 , 1 }
for   i = 1 , , n j = 1 , , n   and   k = 1 , , m
where n is number of items and available bins, m is the number of types used, c k is the cost or the wasted space of the bin of type k, y j k is a binary variable that shows if bin i of type k contains items, x i j is also a binary variable that indicates if item i is assigned to bin j, w j is weight of item and W k is bin capacity of type k. In the worst case, the number of bins is set to be equal to the number of items.

7. Bin Packing Problem

Bin packing is a process of fitting tasks neatly and efficiently inside the finite number of bin. The main objective of bin packing is to minimize the number of bins [4]. There are four main steps involved in the bin packing problem.

7.1. Lower Bound for the Problem

It is important to find the lower bound for the problem. Two steps are used to find the lower bound:
  • Add all items
  • Then divide them with total capacity of a bin
Graphical representation is given in Figure 5.
Figure 5. Lower Bound of a Problem.

7.2. First Fit Algorithm

Take a group of tasks as they come and try to fit them in a bin. A graphical example of first fit algorithm is given in Figure 6.
Figure 6. First Fit Algorithm.

7.3. Best Fit Algorithm

Arrange a group of tasks in descending order and then place them into a minimum number of bins as shown in Figure 7.
Figure 7. Best Fit Algorithm.

8. Simulation Results

The results are discussed in this section. For comparison purposes, the other two algorithms (PSO and LFPSO) are also implemented [6]. The simple PSO algorithm is trapped in local optima. LFPSO is a hybrid of PSO and levy flight. Levy flight is just used for random distribution of the particles. The proposed algorithm is also a hybrid of PSO algorithm and levy flight for VM-placement based on VSBPP. Levy flight is used to update the velocity of particles. The best-fit strategy is used along with VSBPP. Best fit strategy is used because it provides optimal results. Best fit strategy packs the maximum number of VMs in a single PM to avoid wastage of resources. The basic objective of this paper is to minimize the number of running PMs. The basic purpose of packing VMs into PMs is to save energy, minimize cost and reduce wastage of resources. The algorithm is proposed to provide optimal results for both single objective and multi objective problems. The proposed algorithm is tested on well-known unimodal and multimodal benchmark functions [6]. The population size is based on the dimension, i.e., 30. Unimodal functions tested here can be considered as multimodal functions in a search space of high dimension. All the algorithms are executed on Matlab with a Windows operating system using Intel Core i7, 2.60 GHz, 3.88 GB RAM.

8.1. Benchmark Functions

Ten well-known benchmark test functions are listed in Table 2 in [6]. These benchmark functions are used to evaluate the performance of the proposed algorithm. Two types of benchmark functions are used: unimodal and multimodal. Unimodal functions have only one optimal solution, includes four functions (SPHERE, SCHWEFEL 2.22, ROSENBROCK and NOISE). They can be taken as a multimodal function in search space of high dimension. Multimodal functions have two or more objective functions. Six complex multimodal functions are SCHWEFEL 2.22, RASTRIGIN, ACKLEY, GRIEWANK, PENALIZED1 and PENALIZED2. The control parameters for the above algorithms are given in Table 3 [6].
Table 2. Benchmark Functions.
Table 3. Input Parameters.

8.2. Comparison of Algorithms

Three algorithms PSO [6], LFPSO [6], and PSOLBP are tested for each function independently for about ten times on search space of dimension 30. LFPSO achieved better results than simple PSO [6] however, the improved results are less when compared with the PSOLBP algorithm. PSOLBP outperforms other two algorithms for four benchmark functions (NOISE, RASTRIGIN, ACKLEY and GRIEWANK). LFPSO performs better for three functions, i.e., SCHWEFEL 2.26, PENALIZED1 and PENALIZED2. While simple PSO gets optimal results for the SPHERE, SCHWEFEL 2.22 and ROSENBROCK. Simple PSO works better for unimodal functions and being trapped for multimodal functions [6]. The LFPSO working is the same as that of PSO; the random distribution of the population is done through levy flight. Proposed algorithm is a hybrid of simple PSO and levy flight. Mostly, steps of PSO are followed; however, velocity is found using Mantegna’s algorithm. PSOLBP performs much better than the simple PSO and LFPSO algorithms.

8.2.1. Discussion of Convergence Progress

The convergence graphs of PSO, LFPSO and PSOLBP are graphically shown in Figure 8 and Figure 9 to solve the ten well known test functions for search space of dimension 30. The convergence progress of PSO, LFPSO and PSOLBP with unimodal benchmark functions (SPHERE, SCHWEFEL 2.22, ROSENBROCK and NOISE) is presented in Figure 8. While Figure 9 shows the convergence progress for multimodal benchmark functions (SCHWEFEL 2.26, RASTRIGIN, ACKLEY, GRIEWANK, PENALIZED1 and PENALIZED2).
Figure 8. Unimodal Functions. (a) SPHERE; (b) SCHWEFEL 2.22; (c) ROSENBROCK; (d) NOISE.
Figure 9. Multimodal Functions. (a) SCHWEFEL2.26; (b) RASTRIGIN; (c) ACKLEY; (d) GRIEWANK; (e) PENALIZED1; (f) PENALIZED2.
For SPHERE function, PSO, LFPSO and PSOLBP obtained best results. PSOLBP converges quickly and achieves the global optimal solution faster.
In SCHWEFEL 2.22 function, PSO performed better than LFPSO. LFPSO does not perform well. PSOLBP convergence behavior is very fast and achieved optimal value.
On ROSENBROCK function, PSO performed better than other two algorithms. LFPSO is trapped in local minima. However, PSOLBP gets stuck in local optimization.
Even PSO progress for NOISE is not good. PSO not performed well for a unimodal function i.e., NOISE. LFPSO and proposed PSOLBP performed well for NOISE.
For SCHWEFEL 2.26, LFPSO performed well. PSO converges but get trapped. However, PSOLBP is also gets stuck in local minima.
For RASTRIGIN, ACKLEY and GRIEWANK, PSOLBP seems to be better than PSO and LFPSO. However, LFPSO outperformed PSO and PSOLBP for PENALIZED1. For PENALIZED2, PSO and LFPSO performed better than PSOLBP.
The proposed PSOLBP performance and convergence behavior is better than other two algorithms. PSOLBP very fastly reaches optimal solution.

8.2.2. Unimodal Functions

Four unimodal test functions are used. They are used for single optimization problems. A simple PSO performs better for single optimization problems trapped in local optima. In a high dimensional search space, these functions can be considered as multimodal test functions. Simple PSO performed well for SPHERE, SCHWEFEL 2.22 and ROSENBROCK. While PSOLBP gave better results for NOISE.
In SPHERE, SCHWEFEL 2.22 and ROSENBROCK, the simple PSO algorithm is being trapped in local optima. PSO outperformed other two algorithms. The three algorithms are executed for 10 times to check the adaptivity of the proposed algorithm. However, the proposed algorithm performed well for NOISE. The PSO algorithm find global optimal or near global optimal value using SPHERE, SCHWEFEL 2.22 and ROSENBROCK. While LFPSO performed well for SPHERE in global optimization. For global optimization, PSOLBP gives better results with SPHERE, SCHWEFEL 2.22 and NOISE.
PSOLBP is insensitive to dimensionality. Extensive simulations are done after increasing and decreasing the dimension of the search space.

8.2.3. Multimodal Functions

Six multimodal functions are considered to provide solutions for two or more optimization problems. SCHWEFEL 2.26, RASTRIGIN, ACKLEY, GRIEWANK, PENALIZED1 and PENALIZED2 are tested with three algorithms. PSO does not perform well for more than one objective function problem. LFPSO performed well for SCHWEFEL 2.26, PENALIZED1 and PENALIZED2. While the proposed PSOLBP outperformed other algorithms for three functions i.e., RASTRIGIN, ACKLEY and GRIEWANK. The PSOLBP is proposed to give optimum results for more than one objective function. For global optimization, PSO does not performed efficiently. LFPSO performed well in global optimization problems with SCHWEFEL 2.26, PENALIZED1 and PENALIZED2. PSOLBP achieved better results with RASTRIGIN, ACKLEY and GRIEWANK for global optimization.

8.3. PSOLBP

PSOLBP outperforms the other two algorithms when tested on benchmark functions; it is used with VSBPP. In PSOLBP, the random distribution of the population is done through simple PSO. The positions of the particles are also found through PSO. The levy flight is used to update the velocity of the particles. A best-fit strategy is used to pack the maximum number of VMs into PMs. The main objective of the proposed work is to minimize the usage of running PMs. The utilization rate of PMs is minimized to save energies and cost. Bin packing problem is considered to avoid wastage of resources and increase the efficiency of a cloud. A new PM is allocated when an old one is fully packed. With the number of iterations, the utilization rate of running PMs become less. It can be noticed from Figure 10 that after some point the utilization rate of PMs is zero.
Figure 10. PSOLBP.

9. Conclusions

Cloud computing is turning into an emerging field. Cloud data centers are very complex. The technology evolves causing the influx of a large amount of information. Efficient management of cloud computing is needed. VM-integration and intelligent task assignment are used to optimally manage the load of a cloud data center. This paper proposed an efficient VM-placement algorithm. An enhanced PSOLBP is applied to the variable-sized bin packing problem. This is the hybrid of two algorithms: levy flight and PSO. The best-fit strategy is used in BPP. Extensive simulations are done to verify the efficiency and adaptivity of the proposed algorithm. Through this, the overall performance of a cloud data center is improved. To evaluate the performance of the given algorithm, ten benchmark functions are used. The proposed algorithm is easy to understand and simple to implement. It is also insensitive to dimensionality.

Future Studies

VM-placement is an NP-hard problem and most real-world engineering problems have more than one objective to be optimized. So, further optimization is required to solve multi-objective problems. In the future, the proposed algorithm will probably be used to solve multi-objective VM-placement, as well as dynamic migration and scheduling problems.

Author Contributions

A.F., N.J., T.S., Y.A., M.A. and M.I. proposed, implemented and wrote heuristic schemes. W.H., M.B. and S.S. wrote rest of the paper. All authors together organized and refined the paper.

Funding

This research received no external funding.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Kong, Y.; Zhang, M.; Ye, D. A belief propagation-based method for task allocation in open and dynamic cloud environments. Knowl.-Based Syst. 2017, 115, 123–132. [Google Scholar] [CrossRef]
  2. Guo, Y.; Stolyar, A.; Walid, A. Online VM Auto-Scaling Algorithms for Application Hosting in a Cloud. IEEE Trans. Cloud Comput. 2018. [Google Scholar] [CrossRef]
  3. Fu, X.; Chen, J.; Deng, S.; Wang, J.; Zhang, L. Layered virtual machine migration algorithm for network resource balancing in cloud computing. Front. Comput. Sci. 2018, 12, 75–85. [Google Scholar] [CrossRef]
  4. Abdel-Basset, M.; Abdle-Fatah, L.; Sangaiah, A.K. An improved Levy based whale optimization algorithm for bandwidth-efficient virtual machine placement in cloud computing environment. Clust. Comput. 2018, 1–16. [Google Scholar] [CrossRef]
  5. Aisha Fatima, N.J.; Sultana, T.; Butt, A.A.; Shabbir, S. An Efficient Virtual Machine Placement via Bin Packing in Cloud Data Centers. In Proceedings of the 33rd International Conference on Advanced Information Networking and Applications (AINA), Matsue, Japan, 27–29 March 2019. [Google Scholar]
  6. Jensi, R.; Wiselin, G. An enhanced particle swarm optimization with levy flight for global optimization. Appl. Soft Comput. 2016, 43, 248–261. [Google Scholar] [CrossRef]
  7. Mirjalili, S.; Saremi, S.; Mirjalili, S.M.; Coelho, L.d.S. Multi-objective grey wolf optimizer: A novel algorithm for multi-criterion optimization. Expert Syst. Appl. 2016, 47, 106–119. [Google Scholar] [CrossRef]
  8. Khosravi, A.; Andrew, L.L.H.; Buyya, R. Dynamic vm placement method for minimizing energy and carbon cost in geographically distributed cloud data centers. IEEE Trans. Sustain. Comput. 2017, 2, 183–196. [Google Scholar] [CrossRef]
  9. Chekired, D.A.; Khoukhi, L. Smart grid solution for charging and discharging services based on cloud computing scheduling. IEEE Trans. Ind. Inform. 2017, 13, 3312–3321. [Google Scholar] [CrossRef]
  10. Cao, Z.; Lin, J.; Wan, C.; Song, Y.; Zhang, Y.; Wang, X. Optimal cloud computing resource allocation for demand side management in smart grid. IEEE Trans. Smart Grid 2017, 8, 1943–1955. [Google Scholar]
  11. Wang, H.; Tianfield, H. Energy-Aware Dynamic Virtual Machine Consolidation for Cloud Datacenters. IEEE Access 2018, 6, 15259–15273. [Google Scholar] [CrossRef]
  12. Javaid, N.; Javaid, S.; Abdul, W.; Ahmed, I.; Almogren, A.; Alamri, A.; Niaz, I.A. A hybrid genetic wind driven heuristic optimization algorithm for demand side management in smart grid. Energies 2017, 10, 319. [Google Scholar] [CrossRef]
  13. Zhou, A.; Wang, S.; Cheng, B.; Zheng, Z.; Yang, F.; Chang, R.N.; Lyu, M.R.; Buyya, R. Cloud service reliability enhancement via virtual machine placement optimization. IEEE Trans. Serv. Comput. 2017, 10, 902–913. [Google Scholar] [CrossRef]
  14. Moreno-Vozmediano, R.; Montero, R.S.; Huedo, E.; Llorente, I.M. Orchestrating the Deployment of High Availability Services on Multi-zone and Multi-cloud Scenarios. J. Grid Comput. 2018, 16, 39–53. [Google Scholar] [CrossRef]
  15. Vakilinia, S. Energy efficient temporal load aware resource allocation in cloud computing datacenters. J. Cloud Comput. 2018, 7, 2. [Google Scholar] [CrossRef]
  16. Zahoor, S.; Javaid, S.; Javaid, N.; Ashraf, M.; Ishmanov, F.; Afzal, M. Cloud Fog Based Smart Grid Model for Efficient Resource Management. Sustainability 2018, 10, 2079. [Google Scholar] [CrossRef]
  17. Naz, M.; Iqbal, Z.; Javaid, N.; Khan, Z.A.; Abdul, W.; Almogren, A.; Alamri, A. Efficient Power Scheduling in Smart Homes Using Hybrid Grey Wolf Differential Evolution Optimization Technique with Real Time and Critical Peak Pricing Schemes. Energies 2018, 11, 384. [Google Scholar] [CrossRef]
  18. Rahim, M.; Khalid, A.; Javaid, N.; Ashraf, M.; Aurangzeb, K.; Altamrah, A. Exploiting Game Theoretic Based Coordination Among Appliances in Smart Homes for Efficient Energy Utilization. Energies 2018, 11, 1426. [Google Scholar] [CrossRef]
  19. Duong-Ba, T.H.; Nguyen, T.; Bose, B.; Tran, T.T. A Dynamic virtual machine placement and migration scheme for data centers. IEEE Trans. Serv. Comput. 2018. [Google Scholar] [CrossRef]
  20. Khalid, A.; Javaid, N.; Guizani, M.; Alhussein, M.; Aurangzeb, K.; Ilahi, M. Towards dynamic coordination among home appliances using multi-objective energy optimization for demand side management in smart buildings. IEEE Access 2018, 6, 19509–19529. [Google Scholar] [CrossRef]
  21. Khan, A.; Javaid, N.; Khan, M.I. Time and device based priority induced comfort management in smart home within the consumer budget limitation. Sustain. Cities Soc. 2018, 41, 538–555. [Google Scholar] [CrossRef]
  22. Mohiuddin, I.; Almogren, A.; al Qurishi, M.; Hassan, M.M.; al Rassan, I.; Fortino, G. Secure distributed adaptive bin packing algorithm for cloud storage. Future Gener. Comput. Syst. 2019, 90, 307–316. [Google Scholar] [CrossRef]
  23. Alam, M.G.R.; Hassan, M.M.; Uddin, M.Z.I.; Almogren, A.; Fortino, G. Autonomic computation offloading in mobile edge for IoT applications. Future Gener. Comput. Syst. 2019, 90, 149–157. [Google Scholar] [CrossRef]
  24. Habibi, M.; Fazli, M.; Movaghar, A. Efficient distribution of requests in federated cloud computing environments utilizing statistical multiplexing. Future Gener. Comput. Syst. 2019, 90, 451–460. [Google Scholar] [CrossRef]
  25. Mao, B.; Yang, Y.; Wu, S.; Jiang, H.; Li, K.-C. IOFollow: Improving the performance of VM live storage migration with IO following in the cloud. Future Gener. Comput. Syst. 2019, 91, 167–176. [Google Scholar] [CrossRef]
  26. Ziafat, H.; Babamir, S.M. A hierarchical structure for optimal resource allocation in geographically distributed clouds. Future Gener. Comput. Syst. 2019, 90, 539–568. [Google Scholar] [CrossRef]
  27. Liu, X.-F.; Zhan, Z.-H.; Deng, J.D.; Li, Y.; Gu, T.; Zhang, J. An energy efficient ant colony system for virtual machine placement in cloud computing. IEEE Trans. Evol. Comput. 2018, 22, 113–128. [Google Scholar] [CrossRef]
  28. Riahi, M.; Krichen, S. A multi-objective decision support framework for virtual machine placement in cloud data centers: A real case study. J. Supercomput. 2018, 74, 2984–3015. [Google Scholar] [CrossRef]
  29. Rayati, M.; Ranjbar, A.M. Resilient transactive control for systems with high wind penetration based on cloud computing. IEEE Trans. Ind. Inform. 2018, 14, 1286–1296. [Google Scholar] [CrossRef]
  30. Lopez, J.; Rubio, J.E.; Alcaraz, C. A Resilient Architecture for the Smart Grid. IEEE Trans. Ind. Inform. 2018, 14, 3745–3753. [Google Scholar] [CrossRef]
  31. Liu, J.; Zhang, N.; Kang, C.; Kirschen, D.S.; Xia, Q. Decision-Making Models for the Participants in Cloud Energy Storage. IEEE Trans. Smart Grid 2018, 9, 5512–5521. [Google Scholar] [CrossRef]
  32. Yang, T.; Lee, Y.; Zomaya, A. Collective energy-efficiency approach to data center networks planning. IEEE Trans. Cloud Comput. 2018, 6, 656–666. [Google Scholar] [CrossRef]
  33. Munshi, A.A.; Mohamed, Y.A.-R.I. Data Lake Lambda Architecture for Smart Grids Big Data Analytics. IEEE Access 2018, 6, 40463–40471. [Google Scholar] [CrossRef]
  34. Wu, L.; Zhang, Y.; Choo, K.-K.R.; He, D. Efficient Identity-Based Encryption Scheme with Equality Test in Smart City. IEEE Trans. Sustain. Comput. 2018, 3, 44–55. [Google Scholar] [CrossRef]
  35. Wu, Q.; Ishikawa, F.; Zhu, Q.; Xia, Y. Energy and migration cost-aware dynamic virtual machine consolidation in heterogeneous cloud datacenters. IEEE Trans. Serv. Comput. 2016. [Google Scholar] [CrossRef]
  36. Ferdaus, M.H.; Murshed, M.; Calheiros, R.N.; Buyya, R. Virtual machine consolidation in cloud data centers using ACO metaheuristic. In Proceedings of the European Conference on Parallel Processing, Porto, Portugal, 25–29 August 2014; Springer: Cham, Switzerland, 2014; pp. 306–317. [Google Scholar]
  37. Challita, S.; Paraiso, F.; Merle, P. A Study of Virtual Machine Placement Optimization in Data Centers. In Proceedings of the 7th International Conference on Cloud Computing and Services Science, CLOSER 2017, Porto, Portugal, 24–26 April 2017; pp. 343–350. [Google Scholar]
  38. Comi, A.; Fotia, L.; Messina, F.; Pappalardo, G.; Rosaci, D.; Sarné, G.M.L. A reputation-based approach to improve qos in cloud service composition. In Proceedings of the 2015 IEEE 24th International Conference on Enabling Technologies: Infrastructure for Collaborative Enterprises (WETICE), Larnaca, Cyprus, 15–17 June 2015; pp. 108–113. [Google Scholar]

Article Metrics

Citations

Article Access Statistics

Multiple requests from the same IP address are counted as one view.