A Firefly Colony and Its Fuzzy Approach for Server Consolidation and Virtual Machine Placement in Cloud Datacenters

. Managing cloud datacenters is the most prevailing challenging task ahead for the IT industries. The data centers are considered to be the main source for resource provisioning to the cloud users. Managing these resources to handle large number of virtual machine requests has created the need for heuristic optimization algorithms to provide the optimal placement strategies satisfying the objectives and constraints formulated. In this paper, we propose to apply firefly colony and fuzzy firefly colony optimization algorithms to solve two key issues of datacenters, namely, server consolidation and multiobjective virtual machine placement problem. The server consolidation aims to minimize the count of physical machines used and the virtual machine placement problem is to obtain optimal placement strategy with both minimum power consumption and resource wastage. The proposed techniquesexhibitbetterperformancethantheheuristicsandmetaheuristicapproachesconsideredintermsofserverconsolidationandfindingoptimalplacementstrategy.


Introduction
Cloud computing is the recent cutting-edge technology to provide computing services over the Internet.It characterizes a paradigm shift from computing as an artefact that is purchased to computing as a service delivered through Internet.Infrastructure as a service (IaaS) is the service model which delivers virtualized computing resources [1,2].Resource provisioning is majorly concerned with datacenters which act as the source of massive computing resource pools.Generally, most of the IT services are hosted on dedicated physical servers to handle the complex resource requirement of deployed services and to handle further peak demands of the services.In such a case, this raises a problem of server sprawl, where multiple, underutilized servers take up huge space and resources than required for their current workloads.As a result, this raises the operational costs and investment costs of the service provider.To handle this drawback of server sprawl, virtualization based server consolidation emerged, to achieve more utilization of physical resources and reduce hardware costs and operational expenses.Virtualization is achieved by partitioning the available physical resources into a number of remote execution environments for virtual machines (VMs).This creates an opinion to the user as if each VM accommodates an individual operating system and henceforth a dedicated physical resource of its own.With an increasing trend towards virtualization based data centers becoming the host platform for wide range of applications, server consolidation and virtual machine placement have become a key research area in cloud computing environment.
Server consolidation runs multiple applications on the same host machine, thus mainly reducing the energy costs and increasing the resource utilization of the servers.It is modelled as a vector bin packing problem where the maximum number of virtual machines is hosted onto a single server such that the total number of physical machines is minimized and thus resource utilization is increased.The other key challenge is to define an optimal mapping strategy 2 Advances in Fuzzy Systems to place a set of virtual machines on physical machines.For a fewer number of virtual and physical machines, an operator might be able to manage the placement of virtual machines.However, when the number of VMs and the number PMs increase, automated placement strategies are preferred.In that case the number of types of possible mapping to be assessed for a given set of virtual and physical machines becomes (number of physical servers) (Number of virtual machines)  [3].Having such a huge mapping strategy or solution space makes the virtual placement problem a NP-hard problem, where it is highly impossible to get an exact placement strategy (VM-PM mapping) with in practically acceptable time period [3].Hence, there is a need for intelligent methods to fine tune the search for a VM-PM mapping solution to obtain nearoptimal placement strategies.
Gupta et al. [4] proposed a two-stage heuristic approach to achieve server consolidation focusing on bin-item incompatibility constraints.In their work, they considered the items to be packed as server itself and the bins for packing as the target servers.Most of the existing works consider VM consolidation as a variant of the bin packing problem and propose some improvements or extensions of simple greedy algorithms such as first fit decreasing (FFD) [5,6], best fit [7,8], best fit decreasing [9,10], and others [6,11,12] for constructing the solution.While applying such heuristic approaches, the VM requests are to be sorted in specific order to place in physical machines.In single dimensional case, the sorting process is trivial, whereas for multidimensional placement problem, the sorting methods proposed by Maruyama et al. [13] can be used.In recent years, few efforts are taken to convert the multidimensional sizes considered as vectors into sizes of scalar type.Panigrahy et al. [14] proposed a novel method of geometric heuristics and presented a report on their findings related to various arrangements of vectors to produce the scalar (size).However, the study does not provide any rationale for when to use a particular heuristics or why one heuristics outperforms others.Wood et al. [15] proposed a Sandpiper system to detect hotspot and accordingly enable VM migrations.Mishra and Sahoo [16] proposed a novel vector algebra based approach to overcome the anomalies in the existing VM placement technologies.The other works of VM placement following bin packing heuristic are given by Li et al. [17] and Jung et al. [18].
Several metaheuristic approaches are also widely used for VM placement.Falkenauer [19] proposed an enhanced approach of genetic algorithm called grouping genetic algorithm to handle the server consolidation problem.In the proposed approach, group-based encoding scheme with new mutation and crossover operation is used rather than individual encoding technique of traditional GA method.Brugger et al. [20] proposed ACO metaheuristic that had better performance than genetic algorithm for large problem instances.Rohlfshagen and Bullinaria [21] proposed another variant of GGA called exon shuffling genetic algorithm.A group genetic algorithm is proposed by Shubham et al. [22] to solve server consolidation problem as a vector packing problem with conflicts and has shown that they achieve better results compared to other approaches.Xu and Fortes [23] solved VM placement as a multiobjective optimization problem.As a further enhancement to grouping genetic algorithm, a reordering grouping genetic algorithm is given by Wilcox et al. [24].Feller et al. [25] used another version of ACO to address VM consolidation and obtained encouraging results rather than FFD.However, their evaluation was simplified to one-dimensional resource as they varied only the number of cores demanded by VM and retained resource demands unchanged.Mills et al. [26] proposed methods for initial VM placements and compared against 18 initial placement algorithms.Wu et al. in [27] proposed simulated annealing technique for VM placement.Luke [28] designed new mutation and crossover operations where swap, move, and remove are considered for mutation and these operations are applied to the steady state genetic algorithm for VM placement.
Adamuthe et al. [29] addressed VM placement as a multiobjective optimization problem and compared the results of genetic algorithms, nondominated sorting genetic algorithm-(NSGA-) I and NSGA-II.Finally they concluded that NSGA-II provides diversified good solutions.An improved particle swarm optimization approach for virtual machine placement is proposed by Wang et al. [30].A multiobjective ant colony system for virtual machine placement problem is proposed by Gao et al. [31].In this work, they proposed VMPACS that optimizes the datacenter with both minimum power consumption and resource wastage simultaneously.A novel multiobjective memetic algorithm is also proposed to solve virtual machine placement problem [32].Ant colony optimization is used to solve multiobjective optimization problem to optimize total processing resource wastage and memory resource wastage [33].A novel family genetic algorithm is proposed to address the problem of VM placement with less energy consumption and VM migrations [34].In addition, Tang and Pan [35] provided another approach using hybrid genetic algorithm addressing virtual machine placement with an objective of reducing energy consumption.
Here, we propose to apply a firefly colony (FCO) optimization algorithm and fuzzy firefly colony (FFCO) optimization algorithm for server consolidation and multiobjective virtual machine placement (VMP) problem.The firefly colony [36] approaches used are seen as a variant of firefly which is based on ant colony optimization (ACO) algorithm.In this firefly approach, the fireflies are taken as collaborating learning agents like ants in ACO.In contrast to the standard firefly algorithm, firefly colony algorithm is a distributed, autocatalytic, and constructive greedy metaheuristic.In this approach, it is assumed that the phosphorescent substance released by the fireflies is absorbed by the paths and, in turn, they glow.The decision-making is based on the probabilistic choice, which is biased by the concentration of the phosphorescent glowing in its path.This in turn has an autocatalytic effect that the path chosen by the fireflies will have higher probability of getting chosen again by other fireflies in the upcoming visits.It is also assumed that while returning also the same path would be chosen due to increase in brightness on the path.The reason behind choosing this approach for virtual machine placement is as follows [36].Firstly, compared to standard firefly, this firefly colony algorithm works fast as pairwise assessment of flies is eluded in this approach.Secondly, randomization capacity of the basic FA is gradually decreased as it reaches the optima, and hence the performance of the FCO is improved.Thirdly, as it is the hybridization of greedy metaheuristic algorithm and the exploitation and exploration process of firefly algorithm, it turns out to be a prevailing approach for server consolidation and virtual machine placement problem [36].In server consolidation, we aim to minimize the number of physical servers and in VM placement we aim to simultaneously minimize the power consumption and resource wastage while constructing the solution for placement.From the experimental results conducted, we could show that our proposed approach outperforms ant colony system, max-min ant system, and first fit decreasing heuristics.
The rest of the paper is organized as follows.In Section 2, we present the basic firefly algorithm.In Section 3, we present firefly colony algorithm, fuzzy firefly colony algorithm for server consolidation problem with the experimental results obtained.In Section 4, the multiobjective virtual machine placement problem is presented with the experimental results.Section 5 concludes the paper followed by references.

Basic Firefly Optimization Technique
The firefly algorithm (FFA) developed by Yang [37][38][39] is a swarm intelligence based metaheuristic approach, inspired by the flashing behaviour of fireflies.Fireflies are simple insects living in groups.The firefly flashes act as a signal system to attract (communication) other files.The firefly algorithm is based on these flashing patterns and the behaviour of fireflies.The characteristics of standard firefly algorithm are [37] as follows: (1) The fireflies are unisex and they get attracted to other fireflies regardless of their sex.
(2) The less bright fireflies get attracted to brighter ones.The attractiveness and brightness of the firefly decrease as the distance increases and the fireflies start moving randomly if they do not find brighter fireflies in their path.
(3) The brightness of a firefly depends on the setting of the objective function.
The two important factors of firefly algorithm are the light intensity and the attractiveness.We know that the light intensity  decreases as the distance  increases in terms of  ∝ 1/ 2 obeying inverse square law [37].At the same time as the air absorbs light, it becomes feeble as the distance increases.This makes the fireflies visible only for certain distance.Basically, the light intensity () varies with the distance  monotonically and exponentially as given in [37] To decrease the function monotonically at a slower rate, the approximation given by Yang [37] is ( The difference in attractiveness  as the distance  changes is given as [37] where  0 is the attractiveness at  = 0.It is noted that when  > 0, the exponent  2 can be replaced by   .As it is often faster to calculate 1/1 +  2 than an exponential function, the above function, if necessary, can conveniently be replaced by The distance between any two fireflies is given as [37] The movement of firefly  towards firefly  is determined as [37]

Firefly Colony Approach for Server Consolidation
Here we present the problem formulation and the proposed firefly colony algorithm for server consolidation problem.Server consolidation is a variant of vector packing problem.
We consider CPU and memory as two major dimensions of resource utilization for server consolidation problem.

Problem Formulation.
Suppose we are given  virtual machines (VMs)  ∈  to place in  physical machines (PMs)  ∈ ; we assume that no virtual machine requires more capacity than can be provided by a single server.Let [  cpu   mem ] be the processing unit demand and memory demand of each VM.Let [  cpu   mem ] be the processing unit capacity and memory capacity associated with each physical machine.A threshold of 90% is set for [  cpu   mem ] to avoid physical machine resource utilization reaching 100% as it may lead to severe performance degradation when it is fully utilized [31].Two decision variables are defined as follows: allocation matrix alloc , ∈ {0, 1} is set to 1 if V  is allocated to the server .A binary variable   ∈ {0, 1} indicates whether a server is in use or not.

Resource Wastage Modelling.
The possible cost of wasted resources is determined using [31] where RW  is the resource wastage of the th server and  mem

𝑗
and  cpu  are the normalized memory usage and CPU resource usage, respectively.In other words, it is the ratio of used resource to total available resources. mem  and  cpu  are the normalized remaining memory and CPU usage, respectively. is a small positive constant set to 0.0001 [31].

Advances in Fuzzy Systems
Step 1. Initialize Number of physical machines (PMs), Number of virtual machines (VMs) Step 2. Set List of physical machines and their current usage Step 3. Generate VM request demands using the procedure given in Algorithm 2. Issue a new server from the set of random ordered physical servers Step 11.
Determine the set of eligible virtual machines Ω  () using (19) Step 12.

Repeat Step 13.
For each residual VM that is eligible to be placed in the currently chosen server Step 14.
Calculate the heuristic information of the VM-PM mapping using (13) Step 15.
Calculate the attractiveness of the VM-PM mapping using ( 16)-( 17 (22) Step 28.Until the maximum iteration is reached Algorithm 1: Firefly colony algorithm for server consolidation.

Objective Function.
The objective is to minimize the number of servers used while no capacity constraint is violated.The minimization function is formulated as follows [40]: subject to constraints: Constraint ( 9) assigns VM  to only one of the servers.The capacity constraint of the server is specified in constraint (10) and (11).The domain of the binary decision variables used is given in (12).
Algorithm 2: Generate instances procedure [31].[36] is a swarm based metaheuristic approach based on the flashing patterns and behaviour of the fireflies.The procedure of the firefly colony approach for virtual machine placement is given in Algorithm 1.In the initialization phase, the initial attractiveness matrix is set to  0 as given in Section 3.4.3.In the iterative process, each firefly constructs solution incrementally using a greedy stochastic process where it probabilistically assigns VM to the server.The stochastic policy is indicated by attractiveness trail and heuristic information.Finally the best so far solution is used to update the attractiveness values.

Procedure for Firefly Solution Construction. Every firefly initiates the solution construction process with a set of all
VMs and randomly arranged set of available servers.For each server chosen, the firefly starts allocating the VMs one by one.The choice of the next VM  to place in current server  is based on some probability which is proportional to the attractiveness.In other words, the higher is the attractiveness of VM  among all eligible virtual machines Ω  () to pack in current server ; then the larger is its probability to be chosen.Once a particular server reaches the state where no more VMs can be added, then the server is closed and a new server is hosted for packing VMs.The process continues until there are no more VMs for each server and no more servers left for packing VMs.In this process of placement, the packing arrangements of the VMs from the server 1 to server  are known dynamically based on the current state of the firefly; hence, this information is used to calculate the resource wastage during the process of placing VM  in server  using the equation given as follows: The pseudo random proportional rule used for solution construction is given in ( 14) which includes both exploitation and exploration process: where  is the absorption coefficient of the light initialized to 1 and   is the attractiveness trail defined as the constructive factor of assigning VM  to server  having set of VMs already placed in it.The virtual  belongs to a set of eligible virtual machines.Equation ( 14) can be rewritten as where  is a random variable uniformly distributed in [0, 1] and  0 is a fixed variable having a value between 0 and 1.
If  is less than  0 , then the process is called exploitation where VM  with higher attractiveness is chosen from a set of eligible virtual machines.If  is greater than  0 , then the process is called exploration where we find the aggregation of the attractiveness of all eligible VMs using ( 16), and then we choose the VM having the higher attractiveness than a random number: where where    () is the attractiveness at iteration  for placing VM  in server  along with other virtual machines packed as a partial solution.The attractiveness value   is determined as The set of eligible virtual machines which are determined using (19) as given by Gao et al. [31] is The fitness function used for evaluating the constructed solution is [40] ff SC() where  is assigned with value of 2 as per the literature given by Falkenauer [19].

Fitness Function Evaluation.
The quality of the constructed solution is assessed using (20).

Attractiveness Updating.
Another important part of firefly algorithm is the updating of attractiveness trails.The attractiveness trails can either increase as phosphorescent substance is emitted or decrease as the substance evaporates.The emission of phosphorescent substance is based on the fact that the information contained in some good solutions should be shown in the attractiveness trails and the movement included in these good solutions will be biased by other flies which are constructing the subsequent solutions.However, the phosphorescent substance evaporation favours the exploration of new areas of search space as it implements a useful form of forgetting and also it avoids too rapid form of convergence of the algorithm towards a suboptimal region.In this approach, the attractiveness update is done in two stages: after a firefly  finds a feasible solution to the VM placement problem; a local updating is performed according to the following equation [36]: where  is the attractiveness decay parameter, the initial  0 values are calculated using 1/[ ⋅ ff SC ( 0 )], where  is the number of VMs, and  0 is the initial solution obtained using FFD heuristic.Once all the fireflies construct the solution, the best so far solution is used to globally modify the attractiveness.The global update rule is given as where ff SC ( gb ) , if VM  placed in server  ∈ global best solution; 0, otherwise. (23)

Fuzzy Firefly Colony Approach for Server Consolidation.
A new variant of firefly colony named fuzzy firefly colony approach is used to handle the uncertainties that could exist when fireflies makes a choice to choose next virtual machine for placement in current server.In this variant, the control strategies of the fireflies are established using fuzzy rules [41][42][43][44][45][46][47].The fuzzy firefly colony algorithm follows same placement procedure given in Algorithm 1 except that step 17 in the procedure is modified to include fuzzy strategy and fuzzy probable strategy for choosing the next virtual machine for placement.For the placement problem, chosen a random server, the next virtual machine  to place in it depends on the attractiveness trail and the desirability (heuristic information) of placing the virtual machine  in current server .There is a possibility that the fireflies can remark the desirability of placing the virtual machine and the attractiveness trail as fuzzy values (low, medium, or high).
Hence, when choosing the next virtual machine, the fireflies will have greater or lesser efficacy on choosing the virtual machine, based on their attractiveness and the desirability.These efficacies can also be described by the appropriate fuzzy sets (very very low, very low, low, medium, high, very high, or very very high).The fuzzy sets of all these state variables are defined as triangular membership functions.
The approximate reasoning to determine the th firefly efficacy in choosing the next VM  for the current server  consists of following rules for each eligible virtual machine: The fuzzy rule contains both attractiveness and heuristic information in the antecedent part and the efficacy of choosing the next VM in the consequent part.This method uses the minimum operation for fuzzy implication and max-min operator for the composition.Finally we obtain    as the maximum efficacy for each virtual machine .
Here we introduce two strategies, namely, fuzzy strategy and fuzzy probable strategy, to implement the exploitation and exploration process of deciding the next VM  to place in current server  Fuzzy probable strategy,  >  0 (exploration) . ( The output of each strategy is a crisp number specifying the next virtual machine to place in the server. Fuzzy Strategy.The fuzzy strategy is introduced to implement the exploitation process ( ≤  0 ) where, among all the eligible virtual machines, the virtual machine  having the maximum efficacy is chosen to be the next VM for placement.In other words, maximum defuzzification method is used to produce the output fuzzy sets as fuzzy singletons [45], where  =  * such that Fuzzy Probable Strategy (FPS).The fuzzy probable strategy is introduced to implement the exploration process of fireflies.
In contrast to the exploitation process, here we consider that the VM  with maximum efficacy is not essential to be selected as the next VM, but it has the highest chance to be selected; that is, the next VM can be probably  [45].The fuzzy To obtain F  a random number 0 ≤   ≤ 1 is generated for each eligible virtual machine  belonging to Ω  ().Then Like Fuzzy strategy, maximum defuzzification method is applied on fuzzy probability to choose the next virtual machine  among  eligible virtual machines for current server .

Experimental Results.
The VM requirements instances are generated using the procedure given in Algorithm 2 [31].Reference-based VM resource demands are generated where Ref = % means each randomly generated VM resource demand falls in the interval [0, 2].It is to be noted that we can choose any  value as reference value.For example, if we choose Ref = 10%, 15%, 20%, 25%, and 45% on average we get 90/10, 90/15, 90/20, 90/25, and 90/45 VMs per server.
In Algorithm 2 we consider CPU and memory as two dimensions of VM requirement. cpu is the reference CPU utilization,  mem is the reference memory utilization, and the probability  is the reference value.For our experimental study, we have used two reference values and five probabilities as followed by Gao et al. [31].We set both  cpu and  mem to 25% and then to 45%.The distributions of CPU and memory utilizations are in the range [0, 50%] when  cpu and  mem are set to 25% and [0, 90%] when  cpu and  mem are set to 45%.The linear correlation between the input dimensions is controlled to a certain limit by changing the probability .For  cpu =  mem = 25%, the probability values of 0.00, 0.25, 0.50, 0.75, and 1.0 are used.The average correlation coefficients for the stated probabilities are −0.754,−0.348, −0.072, 0.371, and 0.755 and these correspond to strong-negative, weaknegative, no-correlation, weak-positive, and strong-positive correlations, respectively [31].These five probability values are chosen to show that as the correlation between CPU and memory increases, the average power consumption and resource wastage are minimized.We similarly set  for  cpu =  mem = 45% and the correlation coefficients given are −0.755,−0.374, −0.052, 0.398, and 0.751.For each of the experiments conducted, an upper bound of 90% is imposed as the threshold value for the resource utilization of the single server [31].Using the above procedure and parameter settings, the instances were generated for specified number of VMs.The programs for the proposed algorithm and all other variants were coded in MATLAB and ran on an Intel Pentium5 Dual-Core processor with 2.50 GHz CPU and 8 GB RAM.To support the worst VM placement scenario, the number of servers was set to the number of VMs, in which only one VM is assigned per server [31].
In Tables 1-5, the performance of the proposed multiobjective firefly algorithm and fuzzy firefly algorithm for placing 300 VMs is compared to that of ant colony system (ACS), max-min ant system (MMAS), and first fit decreasing (FFD) methods of VM placement.For the proposed firefly algorithms, we set gamma value to be 0.2.From the literature, it is noted that on an average 10 to 20 runs are performed for each instance generated varying the probability and the reference value.For our experimental study, we performed 20 runs and each run is repeated for 100 iterations.The final results reported are average of 20 runs.The performance measures reported are the average number of physical machines used (), average consolidation ratio (/lower bound), and CPU execution time in seconds.The lower bound of the minimum number of servers that can be used for placement [40,48] is calculated using When the average number of servers used for placement reaches the lower bound then the server consolidation ratio (/lower bound (LB)) gets closer to 1 [48].From the results shown in Figures 1 and 2 we could observe that our proposed firefly colony approach utilizes minimum number of servers compared to other deterministic and nondeterministic approaches.

Multiobjective Firefly Colony Approach for Virtual Machine Placement
In this section we present the problem formulation and the implementation of firefly colony and fuzzy firefly colony for solving the multiobjective virtual machine placement problem.The multiobjectives considered are the power consumption and resource wastage which are to be minimized simultaneously.

Power Consumption and Resource Wastage Modelling.
The power consumption of the th server is defined as a function of the CPU utilization [31]: where  idle  and  busy  are the average power values when the th server is idle and fully utilized, respectively.The power consumption in idle state is not a part of the total energy consumed by the CPU.We have set  busy  = 215 Watts and  idle  = 162 Watts for homogeneous physical servers [31].The resource wastage considered for multiobjective virtual machine placement problem is same as specified in server consolidation problem given in (7).

Objective Functions.
Formally, the problem of VM placement is formulated as follows.Given a set of  virtual machines,  physical servers, and the physical servers hosting   VMs, the VM placement algorithms generate possible mapping solutions for  VMs on the  physical servers under a specified set of constraints.The objective functions to be minimized are the total power consumption and resource wastage and these objective functions are modelled as follows [31]: subject to The objective function given in ( 30) is to minimize the power consumption and the objective function in (31) focuses on reducing the resource wastage.As we consider the VMP problem as a multiobjective combinatorial optimization problem the optimization strategy focuses on simultaneously minimizing the power consumption and the resource wastage under the given set of constraints.heuristic.RW( 0 ) is the resource wastage of the solution  0 (see (7)).  ( 0 ) is the normalized power consumption of the solution  0 which is determined as [31]

Firefly Colony
As given in Section 3.4.1, the packing arrangements of the VMs from the server 1 to server  are known dynamically based on the current state of the firefly; hence this information is used to calculate the normalized power consumption and resource wastage during the process of multiobjective VM placement using The pseudo random proportional rule in ( 14) is rewritten for multiobjective solution construction (see (35)) which includes both power consumption and resource wastage information: where  is the absorption coefficient of the light initialized to 1,   is the attractiveness trail defined as the favourability of assigning VM  to server  having set of VMs already placed in it.The virtual  belongs to the set of eligible virtual machines.RW  is determined using (13).The procedure for multiobjective firefly colony and fuzzy fire colony approach is same as the procedure given in Section 3.4 except for the objective functions, fuzzy strategy, and the fitness evaluation method used.The objective functions are given above in Section 4.2.The fuzzy strategy to decide the next virtual machine is given in Section 3.5.The fuzzy fitness evaluation given by Sait et al. [48] is used here for assessing the quality of the solutions.The fuzzy fitness evaluation method combines both the power consumption and resource wastage objectives into one objective to be maximized [48].[48].The fuzzy rule used to evaluate the solution is given as follows [48].

Fuzzy Fitness Evaluation
"If solution has low power consumption and small resource wastage then it is a good solution." A solution with highest membership in the fuzzy sets of {, } is chosen to be best quality solution.The limits of the fuzzy sets for the power consumption and resource wastage are determined as given by Sait et al. [48].The lower limit of the power consumption is presumed to be the power consumed by the solution having the minimum number of servers [48]: LB is the theoretical lower bound given in (28).
The upper limit of the power consumption is the power consumed by the worst case solution where each VM occupies one server [48]: VM count is the number of VMs.The lower limit of resource wastage is presumed to be the wastage which results when all VMs are placed in a single large server [48]: The upper limit on resource wastage is the wastage resulting due to worst VM placement scenario, that is, one VM per server [48]: Given a solution , the membership functions of the solution  in the fuzzy set  and  are determined as follows [48].
The membership of the solution  in the set {} is denoted as where Using the weights given in (( 42)-( 43)), the complement of the overall degree of membership of solution  in the fuzzy set {, } is determined as given by Sait et al. [48]: At last, the fuzzy fitness evaluation of solution  is determined as [48] The solution which has maximum fuzzy fitness evaluation is considered to be the best solution.

Computational Experimental Study.
We present the experimental results of the multiobjective FCO and FFCO algorithm to solve the VM placement problem.The experimental set up is same as discussed in Section 3.6.The results of heuristics and metaheuristic approaches considered are recorded in Tables 6-10.
From the results shown in Figures 3-6, we could observe that among the methods considered our proposed firefly colony approach has minimum power consumption and resource wastage.

Conclusion
In this paper we propose to apply firefly colony and fuzzy firefly colony algorithms for server consolidation and virtual machine placement problem.The objective of server consolidation is to minimize the number of physical servers so as to minimize resource wastage.The multiobjective virtual machine placement problem aims to find an optimal solution of VM placement with minimum power consumption and resource wastage.Both the objectives are considered simultaneously during the solution construction process.The advantages of choosing firefly colony for the placement problem is that, unlike the standard firefly algorithms, the firefly colony approach is fast and decreases much of randomization during the search for optimal solution, thus leading to good performance.The fuzzy firefly colony approach is proposed with fuzzy transition probability rule to handle the exploring behaviour of fireflies with uncertainty.The obtained results   of firefly colony approaches are found to be better and encouraging compared to FFD deterministic heuristics and other few metaheuristic approaches considered.

Competing Interests
The authors declare that they have no competing interests.
Decide the next VM to place in server by applying pseudo random proportional rule (Equation (14)) Step 18. Apply local attractiveness updating rule according to (21) Step 19.Until no remaining VM can be placed in the server anymore Step 20.Until all VMs are placed in the server Step 21.End For Step 22. Find iteration best firefly solution ( ib ) Step 23. if ff SC ( ib ) > globalbest then Step 24. gb ←  ib Step 25.
globalbest← ff SC ( ib ) Step 26.End if Step 27.Apply global attractiveness update rule according to low and   is low then the efficacy   of choosing VM  is very very low.If   is medium and   is low then the efficacy   of choosing VM  is very low.If   is high and   is low then the efficacy   of choosing VM  is low.If   is low and   is medium then the efficacy   of choosing VM  is low.If   is medium and   is medium then the efficacy   of choosing VM  is medium.If   is high and   is medium then the efficacy   of choosing VM  is high.If   is low and   is high then the efficacy   of choosing VM  is high.If   is medium and   is high then the efficacy   of choosing VM  is very high.If   is high and   is high then the efficacy   of choosing VM  is very very high.

Table 1 :
Server consolidation results for VM requirements with reference values as 25% and 45% and correlation coefficients as −0.754 and −0.755. .

Table 2 :
Server consolidation results for VM requirements with reference values as 25% and 45% and correlation coefficients as −0.348 and −0.374.

Table 3 :
Server consolidation results for VM requirements with reference values as 25% and 45% and correlation coefficients as −0.072 and −0.052.

Table 4 :
Server consolidation results for VM requirements with reference values as 25% and 45% and correlation coefficients as 0.371 and 0.398.

Table 5 :
Server consolidation results for VM requirements with reference values as 25% and 45% and correlation coefficients as 0.775 and 0.751.
Procedure for Multiobjective Virtual Machine Placement.The initial attractiveness matrix for the multiobjective virtual machine placement problem is determined using  0 = 1/[ ⋅ (  ( 0 ) + RW( 0 ))], where  is the number of VMs and  0 is the solution generated by FFD Number of servers utilized when  cpu =  mem = 45%.

Table 6 :
Comparison of the multiobjective firefly and fuzzy firefly technique with other algorithms for average power consumption and resource wastage of VM requirements with reference values as 25% and 45% and correlation coefficients as −0.754 and −0.755.

Table 7 :
Comparison of the multiobjective firefly and fuzzy firefly technique with other algorithms for average power consumption and resource wastage of VM requirements with reference values as 25% and 45% and correlation coefficients as −0.348 and −0.374.Reference value cpu =  mem = 25%  cpu =  mem = 45%

Table 8 :
Comparison of the multiobjective firefly and fuzzy firefly technique with other algorithms for average power consumption and resource wastage of VM requirements with reference values as 25% and 45% and correlation coefficients as −0.072 and −0.052.value  cpu =  mem = 25%  cpu =  mem = 45%

Table 9 :
Comparison of the multiobjective firefly and fuzzy firefly technique with other algorithms for average power consumption and resource wastage of VM requirements with reference values as 25% and 45% and correlation coefficients as 0.371 and 0.398.

Table 10 :
Comparison of the multiobjective firefly and fuzzy firefly technique with other algorithms for average power consumption and resource wastage of VM requirements with reference values as 25% and 45% and correlation coefficients as 0.755 and 0.751.