## 5 Experimental Results
### Single-Objective-Based Experiments  
In the experiment, the performance of the FGGA algorithm is compared through two groups of algorithms. First, the single-objective optimization for the three optimization objectives are compared with the FGGA algorithm. For the comparison of power consumption, the single-objective optimization algorithm SO_MEC based on minimum energy consumption and the single-objective optimization algorithm SO_BUCPU based on CPU balanced utilization are selected. The experimental comparison is shown in Figure 9. Since the SLA violation rate and power consumption are closely related to the CPU utilization, and the change trend is close, the comparison of SLA violation rate is the same as the single-objective optimization power consumption comparison algorithm, SO_MEC-SO_BUCPU. The experimental comparison is shown in Figure 10. For the comparison of resource waste, the virtual machine placement algorithm VMPACS [8] based on multi-objective optimization is selected. The experimental comparison is shown in Figure 11.  
\begin{table}
\begin{tabular}{c c} \hline
**Parameter** & **Value** \\ \hline Population size \(m\) & 60 \\ Crossover probability \(p_{C}\) & 0.8 \\ Mutation probability \(p_{M}\) & 0.15 \\ \hline \end{tabular}
\end{table}
Table 1: FGGA algorithm parameters.  
Figure 9: Comparison of power consumption.  
It can be seen from Figure 9 that the power consumption of the SO_MEC algorithm is the smallest, and the power consumption of the SO_BUCPU algorithm is the largest. The FGGA algorithm lies between the two. SO_MEC is optimized with the single goal of electricity consumption costs, the placement of virtual machines is extremely concentrated, and the number of physical machines turned on is small. In the SO_BUCPU algorithm, the CPU is used in a balanced manner. Too many physical nodes are turned on, but the utilization rate is very low, so the performance is the worst. The electricity consumption of the algorithm is not very different from that of SO_MEC.  
In evaluating the SLA violation rate, we adopt the average SLA violation rate. The average SLA violation rate is defined as the average of the SLA violation rates of all physical nodes in the running state. The SLA violation rate is calculated by Equation (4). \(U_{cpu}^{\max}\) is fixed at 0.9 and \(f_{i}\) fluctuates between (0.1, 0.7). As can be seen from Figure 10, our proposed FGGA algorithm has the best performance, and the SO_MEC algorithm has the worst performance. The reason is that the CPU utilization of each physical node started under this algorithm is very high, and the SO_BUCPU algorithm has the lowest SLA violation rate. The resource utilization rate of physical nodes under the algorithm is low.  
It can be seen from Figure 11 that the FGGA algorithm is significantly better than the VMPACS algorithm in terms of reducing resource waste. The reason is that the resource waste of physical nodes has a great relationship with the CPU demand and  
Figure 11: Comparison of average resource waste.  
Figure 10: Comparison of average SLA violation rates.  
memory demand of the virtual machine. When reducing resource waste, the resource requests of virtual machines and the resource utilization of physical nodes should be comprehensively considered.