Sei sulla pagina 1di 12

Virtual Machine Placement Based on Ant Colony

Optimization for Minimizing Resource Wastage


Medhat A. Tawfeek, Ashraf B. El-Sisi, Arabi E. Keshk, and F. A. Torkey
Faculty of Computers and Information, Menoufia University, Egypt
{medhattaw,ashrafelsisim,arabikeshk,torkey1951}@yahoo.com

Abstract. Cloud computing is concept of computing technology in which user


uses remote server for maintain their data and application. Resources in cloud
computing are demand driven utilized in forms of virtual machines to facilitate
the execution of complicated tasks. Virtual machine placement is the process of
mapping virtual machines to physical machines. This is an active research topic
and different strategies have been adopted in literature for this problem. In this
paper, the problem of virtual machine placement is formulated as a multiobjective optimization problem aiming to simultaneously optimize total processing resource wastage and total memory resource wastage. After that ant
colony optimization algorithm is proposed for solving the formulated problem.
The main goal of the proposed algorithm is to search the solution space more
efficiently and obtain a set of non-dominated solutions called the Pareto set.
The proposed algorithm has been compared with the well-known algorithms for
virtual machine placement problem existing in the literature. The comparison
results elucidate that the proposed algorithm is more efficient and significantly
outperforms the compared methods on the basis of CPU resource wastage and
memory resource wastage.
Keywords: Cloud computing; Ant colony optimization; Virtual machine
placement.

Introduction

Current cloud computing providers have several data centers at different geographical
locations over the internet in order to optimally serve costumers needs around the
world [1]. One of the most important key technologies in cloud computing is virtualization. Virtualization enables dynamic sharing of physical resources and hides the
technical complexity from users [2]. The problem of virtual machine (VM) placement
has become a challenging problem for improving resource utilization in cloud infrastructures [3]. Several researches have been addressed the importance of needing
efficient approaches for VM placement [4, 5]. Many meta-heuristic algorithms such
as Ant Colony Optimization (ACO) and genetic algorithms will be suitable for VM
placement problem [6]. ACO is a metaheuristic inspired by the observation of real ant
colonies and has been successfully applied to numerous optimization problems [7].
The basic idea of ACO is to simulate the foraging behavior of ant colonies. When an
A.E. Hassanien et al. (Eds.): AMLTA 2014, CCIS 488, pp. 153164, 2014.
Springer International Publishing Switzerland 2014

154

M.A. Tawfeek et al.

ants group tries to search for the food, they use a special kind of chemical pheromone
to communicate with each other. Initially ants start searching their foods randomly.
Once the ants find a path to food source, they leave pheromone on the path. An ant
can follow the trails of the other ants to the food source by sensing pheromone on the
ground. As this process continues, most of the ants attract to choose the shortest path
as there have been a huge amount of pheromones accumulated on this path [2]. In this
paper the problem of VM placement is formulated as a multi-objective optimization
problem aiming to simultaneously optimize total CPU resource wastage and memory
resource wastage. ACO algorithm is proposed and designed to deal effectively with
the potential large solution space for large scale data centers. The performance of the
proposed algorithm is compared to First-fit-decreasing-CPU (FFD-CPU), First-fitdecreasing- memory (FFD-MEM), Best-fit-decreasing-CPU (BFD-CPU), Best-fitdecreasing-memory (BFD-MEM) algorithms in [8, 9] and Virtual machine placement
based on ant colony system (VMPACS) algorithm in [3]. The results show that the
proposed algorithm can compete efficiently with other approaches to the VM placement problem on basis of different metrics such as residual processing resource and
residual memory resource. The rest of this paper is organized as follows. Section 2
scans the related work. Section 3 provides the processing wastage and memory wastage models that will be used by the proposed algorithm. Section 4 formulates the
virtual machine placement problem. In section 5, the details about proposed algorithm
are covered. The implementation and simulation results are seen in section 6. Finally,
Section 7 concludes this paper.

Related Work

Because of the fundamental significance of placement optimization for virtual machines (VMs) on physical machines, extensive study has been made in this field and
bunch of algorithms exist in the literature. The importance of needing efficient
methods for placing VMs appropriately is seen in [4, 5]. A simple process for VM
placement starts by choosing a target server with compatible virtualization software,
comparable CPU types, similar network connectivity, and the usage of shared storage.
Then the first virtual machine will be placed on the first server and the second virtual
machine will be on the same server only if it can satisfy the resource requirements. If
not, a new server is added and the VM will be placed on it. These steps will be continued until each of the VMs has been placed [10]. Traditional analytical approaches
based on linear and quadratic programming are used in [11] to minimize the number
of used nodes. The linear programming formulations of server consolidation problems
were covered in [12]. This approach restricts the number of virtual machines in a
single physical server ensuring that some virtual machines are assigned to different
physical servers and limits the total number of migrations. Genetic algorithm was
proposed to adaptively self-reconfigure the VMs in cloud data centers consisting of
heterogeneous nodes [13]. The first-fit decreasing (FFD) algorithm and the Best-fit
decreasing (BFD) algorithm were used to pack list of VMs into a minimal number of
physical machines and deal with the VM placement problem as a bin packing problem

Virtual Machine Placement Based on ACO for Minimizing Resource Wastage

155

[8, 9]. A single-objective algorithm based on Max-Min Ant System (MMAS)


metaheuristic to minimize the required number of physical machines was proposed in
[14]. The majority of the studies on VM placement focus on a single criteria optimization however many real world problems require taking into account multi criteria
optimization. For this reason, recent research tends to look at the multiple-objective
situation like multi-objective grouping genetic algorithm (MGGA) [6] and VMPACS
algorithm [3]. MGGA is a modified genetic algorithm with fuzzy multi-objective
evaluation that was proposed for efficiently searching the solution space and combining possibly conflicting objectives [6]. This system tackled power-cost under a fixed
performance constraint by minimizing migration costs while packing VMs in a small
number of machines. VMPACS uses multi-objective for the virtual machine placement problem. The main goal of VMPACS algorithm is to obtain a set of nondominated solutions that simultaneously minimize total resource wastage and power
consumption. The performance of the VMPACS algorithm outperformed a multiobjective grouping genetic algorithm (MGGA), and a single-objective ACO algorithm
[3]. In this paper, Virtual machine placement based on ACO algorithm is proposed
and designed to optimize total processing resource wastage and total memory
resource wastage.

The Proposed Memory and CPU Wastage Model

In a cloud environment, there are pools of server nodes. The processing and memory
resource wastage from each server may vary greatly with different VM placement
solutions. The VMPACS algorithm deals with CPU and memory resource wastage as
a single objective function. But in this paper, resource wastage will be handled at the
multiple-objective situation: one objective function for processing resources and another for memory resources. To fully utilize the available resources, the Eq. (1) is
used to calculate the potential wasted processing (CPU) resources. The Eq. (2) is used
to calculate the potential wasted memory resources. The terms host and server
will be used interchangeably. The same thing will be for the terms CPU and processing. Therefore, the problem of VM placement is formulated to optimize CPU
resource wastage and memory resource wastage.

W pj =
Wmj =

T pj U pj
U pj
Tmj U mj
U mj

(1)

(2)

Where, Wpj and Wmj denote the CPU processing resource wastage and memory resource wastage of the j-th server respectively. Tpj is the threshold of CPU processing
utilization associated with the j-th server, Tmj is the threshold of memory utilization
associated with the j-th server, Upj is total used CPU processing and Umj is total used

156

M.A. Tawfeek et al.

memory within the j-th server. The main idea from the above thresholds is that 100%
utilization can cause severe performance degradation and the VM live migration technology consumes some amount of processing capability on the migrating node. The
goal of processing resource wastage is to measure the total CPU resources wastage
with respect to total CPU resources usage. When the amount of used CPU resources
increased and the amount of CPU resources wastage decreased the Wpj will be decreased and the similar thing to the memory resource wastage. The goal from the
proposed algorithm is that Wpj and Wmj must be decreased as much as it can.

The Problem Formulation

Suppose that we are given n VMs to be placed on m servers. The variable i I is used
to index the VM and the variable j J is used to index the server assuming that none
of the VMs requires more resource than can be provided by a single server. Dpi is the
CPU demand of each VM and Dmi is the memory demand of each VM. Two binary
variables xij and yj are used such that the binary variable xij indicates if VMi is assigned to serverj or not and the binary variable yj indicates whether serverj is in use or
not. The proposed algorithm objective is to simultaneously minimize the memory
resource wastage and the CPU resource wastage. The VM placement optimization
problem can be formalized as follows.

(T pj in=1 ( xij D pi ))
Min mj=1W pj = mj=1 y j
n

i =1 ( xij D pi )

(3)

(Tmj in=1 ( xij Dmi ))


Minmj=1Wmj = mj=1 y j
n

i =1 ( xij Dmi )

(4)

m
j =1 xij = 1 i I

(5)

i =1 ( xij D pi ) T pj y j

(6)

i =1 ( xij Dmi ) Tmj y j

(7)

x ij , y j {0,1} i I and j J

(8)

Subject to:

The constraint (5) assigns a VM to only one of the servers (not more than one server). Constraint (6) model the CPU constraint of the server. Constraint (7) model the
memory constraint of the server. Constraint (8) defines the domain of the variables of
the problem.

Virtual Machine Placement Based on ACO for Minimizing Resource Wastage

157

The Proposed ACO Algorithm for Multi-Objective VM


Placement

Given a set of n virtual machines and a set of m physical machines, there are a total of
mn possible VM placement solutions [3]. . For example, the number of possible solutions to place 15 VMs on 10 physical machines just computes 1015
=1,000,000,000,000,000 possible solution. Even if one million solutions could be
evaluated per second, examining all 1015 possible solutions would require more than
31 years. It is therefore typically impractical to make a complete enumeration of all
possible solutions to find the best solutions. This section shows how to apply an
ACO algorithm to efficiently search for good solutions in large solution spaces and
solve the formulated problem in Section 4. The pseudo code of the proposed ACO
algorithm is as follows.
Input: Set of VMs and set of hosts with thresholds of resources utilization
Output: The Pareto set of best solutions for VMs placement
Steps:
1. Initialize:
Set t=0.
Set Pareto set empty.
Set Initial value ij(t)= 0 for each path between VM and host.
2. For k=1 to NOA (number of ants) do
Sort the host list in random order.
Do ants_trip while any VM isnt placed.
Get the new host from the host list.
For each remaining VM that can be placed into the current host.
Compute the probabilistic transition rule to select VM to
be placed according to probabilistic transition rule.
End For
End Do
Compute the value of the two objectives for the current solution.
If the current solution is not dominated by any other solutions in Pareto set
Then
Add this solution to Pareto set
Eliminate the solutions dominated by the added one from Pareto set.
End If
End For
3. Apply local pheromone update according to local pheromone updating rule.
4. Apply global pheromone update according to global pheromone updating rule
5. Increment t by one.
6. If (t < tmax)
Goto step 2
Else
Return Pareto set (the set of non dominated solutions).
End If

158

M.A. Tawfeek et al.

In an initialization phase of the proposed algorithm, the parameters are initialized,


Pareto set is empty and all the pheromone trails are initialized. Iterations are in-

dexed by t, 0 t < tmax, where tmax is the maximum number of iterations allowed. In the iterative phase each ant receives all VM requests, introduces a physical
server one by one and starts assigning VMs to hosts. This is achieved by the use of a
probabilistic transition rule, which describes the desirability for an ant to choose a
suitable VM as the next one to place into current host. This rule is based on the information about the current pheromone concentration on the movement and a heuristic which guides the ants toward choosing the most appropriate VM depending on the
objective functions. After all ants have constructed their solutions, local pheromone
updating and a global pheromone updating are performed. Local pheromone updating
depends on the founded solution in this iteration. Global pheromone updating depends
on current Pareto set solutions. The main operations of the ACO procedure are initializing pheromone, probabilistic transition rule that is used for choosing next VM to be
placed on host, local pheromone updating, global pheromone updating and Pareto set
as following:
5.1

Initializing Pheromone

The proposed algorithm starts with a pheromone trails matrix. The amount of virtual
pheromone trail ij(t) on the edge connects VM i to host j (will be defined as the favorability of packing VM i into host j). The initial amount of pheromone on edges is
assumed to be a small positive constant 0 which means a homogeneous distribution
of pheromone at time (iteration) t = 0.
5.2

Probabilistic Transition Rule

At each step of the construction of a solution, a VM is chosen relative to a transition


probability which depends on two factors: a pheromone factor and a heuristic factor
as in Eq. (9).

arg max sallowedVM { ( sj (t )) + ((1 ) sj ) if q q0


pijk (t ) =
if q > q0
J

(9)

Where, is a parameter that controls the relative importance of pheromone trail


and the visibility information (heuristic factor). q is a random number uniformly distributed in [0, 1] and If q is greater than q0, this process is called exploration; otherwise it is called exploitation [3]. q0 is a fixed parameter (0 q0 1) determined by the
relative importance of exploitation of accumulated knowledge problem versus exploration. sj(t) shows the pheromone concentration at the time t on the path between
VM s and host j, allowedVM is the set of VMs that are qualified for inclusion in the
current host j computed as follows.
m

allowed VM = {i {1,..., n} | ( xir = 0) ((un =1 ( xuj D pu ) + D pi ) T pj )


r =1

((un =1 ( xuj Dmu ) + D mi ) Tmj ) }

Virtual Machine Placement Based on ACO for Minimizing Resource Wastage

159

sj is the heuristic information. This information indicates the desirability of assigning VM i to host j. The heuristic information considers the partial contribution of each
move to the multi-objective function value (minimize the CPU resource wastage and
the memory resource wastage). The partial contribution of assigning VM i to host j
for the first objective function can therefore be calculated as in Eq. (10). It is shown
from Eq. (10) the desirability of assigning VM i to host j will be increased when the
amount of used CPU resources increased and the amount of CPU resources wastage
decreased.

ij ,1 =

j
v =1W pj

(10)

Similarly to the first objective function, the partial contribution of the second objective function that is related to the memory resources wastage can be calculated by
Eq. (11).

ij ,2 =

j
v =1Wmj

(11)

There are several ways to combine desirability in multi-objective problem to find


the total desirability of each ant movement [3]. In this paper we propose the following
formula to calculate the total desirability of assigning VM i to host j for the two
objective functions:

ij = ij ,1 * ij , 2

(12)

Finally, J is a random variable selected according to the following randomproportional rule probability distribution Eq. (13) which is the probability that ant k
chooses the next VM to be placed.
( ij (t )) + ((1 ) ij )

if j allowedVM

J = sallowed (( sj (t )) + ((1 ) sj ))
VM

0,
otherwise

5.3

(13)

Local Pheromone Updating Rule

After iteration, local pheromone updating which is applied to all edges is refreshed by
Eq. (14).

ij (t + 1) = (1 ) ij (t ) + ij (t )

(14)

Where, is the trail decay, 0 < < 1 and ij(t) is computed by Eq. (15).
k
ij (t ) = kNOA
=1 ij (t )

Where, ijk (t ) is a quantity of pheromone of ant k computed by Eq. (16).

(15)

160

M.A. Tawfeek et al.

ijk (t )

Q
k
= L (t )

if (i, j ) T k (t )

(16)

if (i, j ) T (t )
k

Where, Tk(t) is the tour or solution done by ant k at iteration t, Lk(t) is length of tour
(the total memory resource wastage and the total CPU resource wastage of this tour)
that is computed by Eq. (17), and Q is an adaptive parameter. It is very helpful in the
cloud environment to depend on the result in the past task scheduling.
Lk (t ) =

um

um

j =0

j =0

W pj W mj

(17)

Where, um is the total number of used severs in this tour.


5.4

Global Pheromone Updating

When all ants complete a traverse, global pheromone updating reinforces pheromone on the edges belonging to the all non-dominated or Pareto solutions computed
by Eq. (18).

ij (t + 1) = ij (t ) + ij+ (t )

(18)

Where ij+ (t ) is computed by Eq. (19).


sol
ij+ (t ) = nos
sol =1 ij (t )

Where, nos is the number of solutions in Pareto set and ijsol (t )

(19)
is a quantity of

pheromone of the solution sol in Pareto set computed by Eq. (20) on each edge (i,j)
that it has used.
ijsol (t )

Q
if (i, j ) T sol (t )
sol
= L (t )

if (i, j ) T sol (t )
0

(20)

Where, Lsol (t) is the length of the non-dominated solution tour (Tsol). This global
updating rule tries to increase the learning of ants
5.5

Non-Dominated (Pareto) Solution

The majority of existing multi-objective optimization problems uses the concept of


dominance during selection. The goal is to efficiently obtain a set of non-dominated
solutions (the Pareto set) and can be evaluated using the procedure in [15].

Virtual Machine Placement Based on ACO for Minimizing Resource Wastage

161

Implementation and Experimental Results

The researcher has used CloudSim for experimenting in simulated cloud environment
because CloudSim can be used to model data centers, host, service brokers, scheduling and allocation policies of a large scaled cloud platform [16, 17]. The experiments
are implemented using CloudSim platform. We randomly generated problem instances. The instances were a demand set of CPU and memory utilizations for different
numbers of VMs. The number of servers was set to the number of VMs in order to
support the worst VM placement scenario, in which only one VM is assigned per
server. After the VM placement algorithm was finished, if there were several nondominated solutions, one solution belonging to the set of non-dominated solutions
was randomly chosen. The VM placement algorithms that are compared in the experiments include: FFD-CPU, FFD-MEM, BFD-CPU, BFD-MEM, VMPACS algorithm
and the proposed algorithm. FFD places items in a decreasing order of size after that
and at each step; the next item is placed to the first available host. FFD-CPU is the
FFD solution sorted by virtual-machine CPU processing requirements and FFD-MEM
represents the FFD solution sorted by memory requirements. BFD likes FFD but it
places a virtual machine in the fullest server that still has enough capacity. BFD-CPU
and BFD-MEM are the BFD solutions sorted by CPU processing requirements and
memory requirements, respectively.
The programs for the compared algorithms were coded in the Java language under
CloudSim platform that ran on an Intel Pentium processor with 1.7 GHz CPU and 256
MB RAM. . The parameter settings of VMPACS algorithm are as follows. NOA
(number of ants) = 10, tmax (number of iterations) = 100, = 0.45, l = g = 0.35, and
q0 = 0.8 as in [3]. The parameters (, , tmax, m the number of ants and Q) considered here are those that affect directly the computation of the algorithm. Several values for each parameter were tested while all the others were held constant on 100
VMs. The parameter settings of the proposed algorithm were determined to be =
0.4, = 0.3, tmax=100, NOA = 8, Q=1.0, 0 = .01 and q0 = 0.9. VM placement under
the proposed and VMPACS algorithms combines the partial solution information
under construction and the feed information of the reserved time of a non-dominated
solution in the external set and simultaneously incorporates continuous updating of
pheromone, therefore they can find more appropriate VM placement and achieve
better performance. The CPU resources wastage and the memory resources wastage
of the same experiment are shown in Fig. 1 and Fig. 2 respectively. It is shown from
Fig. 1 and Fig. 2 that the proposed algorithm can find the solutions with a smaller
number of used servers and high resource utilization compared to FFD-CPU, FFDMEM, BFD-CPU, BFD-MEM and VMPACS algorithms. The proposed algorithm
also produces the lowest resource wastage in many cases of different number of virtual machines. The proposed algorithm outperforms FFD-CPU, FFD-MEM, BFD-CPU
and BFD-MEM algorithms because it is able to search the solution space more efficiently based on models for minimizing total CPU processing resources wastage,
memory resources wastage and the total power consumption. The proposed algorithm outperforms VMPACS algorithm because the resource wastage model in
VMPACS algorithm deals with CPU and memory as commensurable objective function measured in the same units but the proposed algorithm deals with the CPU and
memory as non-commensurable and use two objective functions.

162

M.A. Tawfeek et al.

0.16
0.14
CPU Wastage

0.12

FFD-CPU

0.1

FFD-MEM

0.08

BFD-CPU

0.06

BFD-MEM

0.04

VMPACS

0.02

Proposed

0
50

100

150

200

250

300

Number of Virtual Machines

Fig. 1. The total CPU processing resources wastage for FFD-CPU, FFD-MEM, BFD-CPU,
BFD-MEM, VMPACS and proposed algorithm

Memry Wastage

0.2
FFD-CPU

0.15

FFD-MEM

0.1

BFD-CPU

0.05

BFD-MEM
VMPACS

0
50

100

150

200

250

300

Proposed

Number of Virtual Machines


Fig. 2. The total memory resources wastage for FFD-CPU, FFD-MEM, BFD-CPU, BFDMEM, VMPACS and proposed algorithm

Fig. 3 plots the time required to generate set of non-dominated solutions for all algorithms with the same procedure used in [15]. The proposed algorithm takes less
than one minute to solve the difficult 300-VM and 300-host placement problem.
Therefore, we can say that the proposed algorithm and VMPACS algorithm are suitable for large data centers moreover the proposed algorithm take less time to placement
process in each size of VMs than VMPACS. The reason is that the proposed algorithm use less computational approaches in updating local and global pheromone than
VMPACS.

Virtual Machine Placement Based on ACO for Minimizing Resource Wastage

163

Overhead Time (Seconds)

45
40
35

FFD-CPU

30
25

FFD-MEM

20

BFD-CPU

15

BFD-MEM

10

VMPACS

Proposed

0
50

100

150

200

250

300

Number of Virtaul Machines

Fig. 3. The overhead time required for FFD-CPU, FFD-MEM, BFD-CPU, BFD-MEM,
VMPACS and proposed algorithm

Conclusions and Future Work

In this paper, the problem of virtual machine placement is formulated as a multiobjective optimization problem aiming to simultaneously optimize total memory
resource wastage and total processing resource wastage. After that, ant colony optimization algorithm was proposed to solve the formulated problem. The proposed algorithm developed to effectively deal with the potential large solution space for large
scale data centers and to obtain a set of non-dominated solutions. The proposed algorithm compared with VMPACS algorithm and well-known bin-packing algorithms
such as FFD-CPU, FFD-MEM, BFD-CPU and BFD-MEM have been evaluated with
the number of virtual machines varying from 50 to 300. The results demonstrate that
proposed algorithm is the superior and outperformed the compared approaches. In the
future work, the proposed algorithm will be compared with other meta heuristics algorithms to ensure its high performance. Moreover, the proposed algorithm will be optimized to handle peak temperature among the servers and the carbon emission from
the proposed algorithm will be considered. In addition, using rough sets and ant
colony optimization in feature extraction may provide more challenging and may
allow us to refine our learning algorithms and/or approaches to the minimizing resource wastage [18].

References
1. Akande, A.O., April, N.A., Belle, J.V.: Management Issues with Cloud Computing. In:
Proceedings of the Second International Conference on Innovative Computing and Cloud
Computing, New York, NY, USA, pp. 119124 (2013)

164

M.A. Tawfeek et al.

2. Tawfeek, M.A., El-Sisi, A., Keshk, A.E., Torkey, F.A.: Cloud task scheduling based on ant
colony optimization. In: International Conference on Computer Engineering & Systems
ICCES, Egypt (2013)
3. Gao, Y., et al.: A multi-objective ant colony system algorithm for virtual machine placement in cloud computing. J. Comput. System Sci. 79(8), 12301242 (2013)
4. Cardosa, M., Korupolu, M., Singh, A.: Shares and utilities based power consolidation in
virtualized server environments. In: Proceedings of IFIP/IEEE Integrated Network Management (IM 2009), pp. 327334 (2009)
5. Grit, L., Irwin, D., Yumerefendi, A., Chase, J.: Virtual machine hosting for networked
clusters: Building the foundations for autonomic orchestration. In: Proceedings of the 2nd
International Workshop on Virtualization Technology in Distributed Computing (2006)
6. Xu, J., Fortes, J.A.B.: Multi-Objective Virtual Machine Placement in Virtualized Data
Center Environments. In: IEEE/ACM International Conference on Cyber, Physical and
Social Computing (CPSCom), Green Computing and Communications (GreenCom),
pp. 179188 (2010)
7. Pacini, E., Mateos, C., Garino, C.G.: Distributed job scheduling based on Swarm Intelligence: A survey. Computers and Electrical Engineering 40(1), 252269 (2014)
8. Dosa, G., Li, R., Han, X., Tuza, Z.: Tight absolute bound for First Fit Decreasing binpacking. Theoretical Computer Science 510(0), 1361 (2013)
9. Wang, J., et al.: Best fit decreasing based defragmentation algorithm in semi-dynamic elastic optical path networks. In: Communications and Photonics Conference (ACP), Asia,
pp. 13, (2012)
10. Khanna, G., Beaty, K., Kar, G., Kochut, A.: Application performance management in virtualized server environments. In: Proceedings of the 10th IEEE/IFIP Network Operations
and Management Symposium (NOMS), pp. 373381 (2006)
11. Chaisiri, S., Lee, B., Niyato, D.: Optimal virtual machine placement across multiple cloud
providers. In: IEEE Asia-Pacific Services Computing Conference (APSCC), pp. 103110
(2009)
12. Speitkamp, B., Bichler, M.: A Mathematical Programming Approach for Server Consolidation Problems in Virtualized Data Centers. IEEE Transactions on Services Computing 3(4), 266278 (2010)
13. Mi, H., et al.: Online Self-Reconfiguration with Performance Guarantee for EnergyEfficient Large-Scale Cloud Computing Data Centers. In: IEEE International Conference
on Services Computing (SCC), pp. 514521 (2010)
14. Feller, E., Rilling, L., Morin, C.: Energy-Aware Ant Colony Based Workload Placement in
Clouds. In: 12th IEEE/ACM International Conference on Grid Computing (GRID),
pp. 2633 (2011)
15. Deb, K.: Multi-Objective Genetic Algorithms: Problem Difficulties and Construction of
Test Problems. Evolutionary Computation 7, 205230 (1999)
16. Calheiros, R.N., et al.: CloudSim: a toolkit for modeling and simulation of cloud computing environments and evaluation of resource provisioning algorithms. Software: Practice
and Experience 41(1), 2350 (2011)
17. Sakellari, G., Loukas, G.: A survey of mathematical models, simulation approaches and
testbeds used for research in cloud computing. Simulation Modelling Practice and Theory 39, 92103 (2013)
18. Hassanien, A.E., Suraj, Z., Slezak, D., Lingras, P.: Rough computing: Theories, technologies and applications. IGI Publishing Hershey, PA (2008)

Potrebbero piacerti anche