## 4 Multi-Objective Hybrid Resource Consolidation Algorithm
### Hybrid Flower Pollination Resource Consolidation Algorithm
#### 4.2.5 Implementation of Hybrid Resource Consolidation Algorithm
The performance comparison of the MOH-FPRC algorithm is estimated in terms of _VM_ migrations, SLA violations, and energy consumption. The experiments are performed by a varying number of PMs and VMs requests to evaluate the scalability of the MOH-FPRC algorithm. In the following sub-section, the experimental results of the proposed algorithm are discussed and analyzed. The simulation setup is presented in Table 1.

Figure 4: Proposed MOH-FPRC algorithm. _Result Analysis of MOH-FPRC_

This section presents the experimental results and analysis of the MOH-FPRC algorithm. The proposed algorithm was designed and developed to address resource allocation problems in a CC environment. This was achieved by considering energy consumption and SLA violation as the consolidation parameters. The experiments were repeated ten times for each of the algorithms, and the averages of _VM_ migration, energy consumption, and the SLA violation rate (in percentage) were observed. The performance of the proposed algorithm, together with that of the benchmarked algorithms, were elaborated based on two multi-objective parameters, namely energy consumption and SLA violation. Figure 5 illustrates the trend of the performance of the consolidation algorithms. \begin{table}
\begin{tabular}{c c c} \hline  & \multicolumn{2}{c}{**(a)**} \\ \hline
**Cloud Entity** & **Parameter** & **Value** \\ \hline Datacenter & Number & 1 \\  & RAM & 2,048,000 MB \\  & Disk & 10,000,000 MB \\  & Operating System & Linux \\  & Bandwidth & 1,000,000,000 MB \\ PM & Architecture & \(\times\)86 \\  & VM Manager & Xen \\  & CPU Power Model & PowerModelSpecPowerX3550 XeonX5675 \\  & Storage Power Model & PowerModelStorageSimple \\  & MemoryPower Model & PowerModelMemorySimple \\  & RAM & 2,048,000 MB \\  & Bandwidth & 0.1 GB/s \\ VM & MIPS & 367 MHz \\  & Storage & 1,000,000 MB \\ \hline \multicolumn{2}{c}{**(b)**} \\ \hline
**Algorithms** & **Parameter** & **Value** \\ \hline MOH-FPRC & Population size & 50, 100, 150, 200 \\  & Standard gamma function \(\beta\) & 1.5 \\ MOH-FPRC & Random walk L & \(\in[0,1]\) \\  & Switching Probability \(p\)\([0,1]\) & 0.6–1.0 \\  & Maximum iteration & 1000 \\  & Population size & 50, 100, 150, 200 \\  & Standard gamma function \(\beta\) & 1.5 \\ FPA & Random walk L & \(\in[0,1]\) \\  & Switching Probability \(p\)\([0,1]\) & 0.9 \\  & Maximum iteration & 1000 \\  & Population size & 50, 100, 150, 200 \\  & Crossover rate & 0.5 \\ MOACS/ACS-VMC & Pheromone tracking weight \(\alpha\) & 0.3 \\ MOACS/ACS-VMC & Heuristic information weight & 1 \\  & \(\beta\) & 1 \\  & Pheromone updating constant & 100 \\  & \(Q\) & 100 \\  & Maximum iteration & 1000 \\ \hline \end{tabular}
\end{table} 
Table 1: Simulation settings: (**a**) PM and VM Parameters setting (**b**) Parameter settings of the compared Algorithm. As shown in Figure 5, a VM user request of 5000 VMs at the interval of 500 from 500-1000 and 1500-2000 is presented. All consolidation algorithms started at a promising point, with low energy consumption and SLA violations. However, as the number of VMs continued to increase, the energy consumption level on all consolidation algorithms increased significantly, together with the SLA violation. In all the consolidation algorithms, the MOACS algorithm tended to have the highest energy consumption at each increasing VM interval, as shown in Table 2. The ACS-VMC algorithm consumed less energy at the initial VM placement as compared with the MOACS algorithm. The differences can be seen in the results between the ACS-VMC and MOACS algorithms. However, the algorithm consumed more energy than the MOH-FPRC algorithm. This is because in the MOH-FPRC algorithm, VM placement takes into consideration the user request and places the request on the appropriate cluster of resources. This observation can be clearly described by the fact that the MOH-FPRC algorithm uses hybridization, which notably improves the output result as compared with benchmarking algorithms.