# Intelligent Resource Orchestration for 5G Edge Infrastructures
## 7 Results
### Resource Optimization Results
#### 7.3.5 Sensitivity Analysis  
The final experiment in this study involved conducting a sensitivity analysis to examine the impact of the CPU usage prediction errors in the allocations results. The CPU usage percentage values used in the previous experiments were based on the predictions made by the Bayesian regression model shown in Section 7.2, without considering the prediction intervals. These prediction intervals represent the range of values within which the actual observation is expected to fall with a certain level of confidence and are typically symmetrically centered around the forecasted value, incorporating a designated error margin. In this analysis, we established a conservative prediction interval using an error margin of \(\pm 10\%\), which was calculated as twice the rounded-up value of the RMSE for these predictions.  
We compared the allocation results for the objective function of minimizing server count, with no additional constraints, using four sets of CPU usage values: the actual CPU usage values (ideal case, as these values cannot be known in advance in a real scenario); the mean value of the prediction interval; the upper bound of the prediction interval (i.e., mean predicted values plus a 10% error); and the lower bound of the prediction interval (i.e., mean predicted values minus a 10% error). Table 6 displays the total number of servers allocated in each scenario. As observed, using the actual CPU usage values allowed for an allocation solution with only eight servers, comparable to the solution obtained when using the lower bound values of the prediction intervals. On the other hand, allocation based on the mean predicted values resulted in a total of nine servers, while allocating based on the upper bound values of the prediction intervals requires ten servers.  
\begin{table}
\begin{tabular}{l l} \hline \hline
**CPU Usage Values Used for the Optimization** & **Total Servers Used** \\ \hline Actual values & 8 \\ Predicted values (lower bound) & 8 \\ Predicted values (mean) & 9 \\ Predicted values (upper bound) & 10 \\ \hline \hline \end{tabular}
\end{table}
Table 6: Sensitivity analysis for the ’number of servers’ objective function with no optional constraints.  
Figure 12: Actual load per core for the ’load balancing’ objective function under different latency violation constrains and a server limit of 9.  
Figure 13 displays the load profiles for the four scenarios. It is evident that when using the actual CPU usage values (ideal case), the optimization algorithm returned an optimal solution with the minimum number of servers and a load per core that never exceeded 100%. Solutions based on mean values of the prediction intervals, and upper bound values, also exhibited minimal overloading, but using a higher number of servers. Conversely, the allocation based on lower bound values of the prediction intervals resulted in a minimum number of servers, but increased overloading, with a maximum peak load of 115%. In conclusion, the sensitivity analysis indicated that while the best solution in terms of server count and load profile was obtained using the actual CPU usage values, this is unfeasible in a real scenario. The solution utilizing the mean values of the prediction intervals offered the best trade-off between the total number of servers used and limited overloading.