Abstract

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 techniques exhibit better performance than the heuristics and metaheuristic approaches considered in terms of server consolidation and finding optimal placement strategy.

1. 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 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 near-optimal 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.

2. Basic Firefly Optimization Technique

The firefly algorithm (FFA) developed by Yang [3739] 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 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 is the attractiveness at . It is noted that when , the exponent can be replaced by . As it is often faster to calculate than an exponential function, the above function, if necessary, can conveniently be replaced byThe distance between any two fireflies is given as [37]The movement of firefly towards firefly is determined as [37]

3. 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.

3.1. 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 be the processing unit demand and memory demand of each VM. Let be the processing unit capacity and memory capacity associated with each physical machine. A threshold of 90% is set for 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 is set to 1 if is allocated to the server . A binary variable indicates whether a server is in use or not.

3.2. Resource Wastage Modelling

The possible cost of wasted resources is determined using [31]where is the resource wastage of the th server and and are the normalized memory usage and CPU resource usage, respectively. In other words, it is the ratio of used resource to total available resources. and are the normalized remaining memory and CPU usage, respectively. is a small positive constant set to 0.0001 [31].

3.3. 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).

3.4. Firefly Colony Optimization Algorithm

The firefly colony optimization algorithm [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 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.

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.
Step  4. Set Light absorption coefficient and maxIterations
Step  5. Initialize the attractiveness matrix
Step  6. Repeat
Step  7. For each firefly  : NF  (Number of Fireflies)
Step  8. Repeat
Step  9.  For each physical server   do
Step  10.   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)
Step  16.     End For
Step  17.     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
Step  23.  ifffSC then
Step  24.   
Step  25.   
Step  26.  End if
Step  27.  Apply global attractiveness update rule according to (22)
Step  28.  Until the maximum iteration is reached
for  
if   then
  
End if
End for
3.4.1. 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 aswhere is a random variable uniformly distributed in and is a fixed variable having a value between 0 and 1. If is less than , then the process is called exploitation where VM with higher attractiveness is chosen from a set of eligible virtual machines. If is greater than , 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:wherewhere 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 asThe set of eligible virtual machines which are determined using (19) as given by Gao et al. [31] isThe fitness function used for evaluating the constructed solution is [40]where is assigned with value of 2 as per the literature given by Falkenauer [19].

3.4.2. Fitness Function Evaluation

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

3.4.3. 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 values are calculated using , where is the number of VMs, and 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 aswhere

3.5. 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 [4147]. 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:If is 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.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 [45]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 () 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 probability (attractiveness) for the virtual machine to be chosen is equivalent to theTo obtain a random number 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 .

3.6. 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 . 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. is the reference CPU utilization, 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 and to 25% and then to 45%. The distributions of CPU and memory utilizations are in the range when and are set to 25% and when and are set to 45%. The linear correlation between the input dimensions is controlled to a certain limit by changing the probability . For , 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, weak-negative, 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 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 Pentium® 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 15, 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.

4. 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.

4.1. Power Consumption and Resource Wastage Modelling

The power consumption of the th server is defined as a function of the CPU utilization [31]:where and 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 Watts and 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).

4.2. 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 toThe 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.

4.3. Firefly Colony Procedure for Multiobjective Virtual Machine Placement

The initial attractiveness matrix for the multiobjective virtual machine placement problem is determined using , where is the number of VMs and is the solution generated by FFD heuristic. is the resource wastage of the solution (see (7)). is the normalized power consumption of the solution which is determined as [31] 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. 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].

4.4. Fuzzy Fitness Evaluation [48]

The fuzzy rule used to evaluate the solution is given as follows [48].

“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]: 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 The membership of the solution in the set is denoted asThe weights of each objective are calculated as [49]whereUsing 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.

4.5. 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 610.

From the results shown in Figures 36, we could observe that among the methods considered our proposed firefly colony approach has minimum power consumption and resource wastage.

5. 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.