## 4 Numerical Experiments and Results  
This study discusses the optimal task assignment problem in a cloud-fog computing environment; several numerical experiments are presented to demonstrate the effectiveness of the proposed method. The experiments were conducted on a Notebook with a 2.6 GHz Intel Core i5-7300 CPU and 24 GB memory. All reformulated models were solved by a mathematical programming solver GUROBI 9.1.1 with default settings. In a cloud-fog computing environment, each node has its own processing capacity, memory, and bandwidth usage cost. This study randomly generated several problems according to the parameters suggested by [PERSON] et al. [4]. Table 1 lists the characteristics of the nodes used to execute the tasks in a cloud-fog computing environment. Table 2 lists the characteristics of the tasks. In our experiments, \(\alpha=0.5\) is adopted, which means that the time and cost have identical priorities in the objective. Three datasets are used in our experiments. Referring to the research of [PERSON] et al. [4], datasets 1 includes three cloud nodes and 10 fog nodes. To explore the impact of different numbers of cloud and fog nodes on the solution speed of the proposed method, dataset 2 includes five cloud nodes and 12 fog nodes, and dataset 3 includes seven cloud nodes and 14 fog nodes. Cloud nodes are more powerful for processing tasks, but the cost of using them is higher. In each dataset, 10-50 tasks are assigned to different nodes according to the globally optimal solution of Model OTA2 solved by GUROBI. For each case, ten instances with identical numbers of cloud nodes, fog nodes, and tasks are randomly generated. The average CPU time is the average running time of GUROBI to solve each instance. As seen in Tables 3-5, the average CPU time increases as the number of tasks increases under identical numbers of cloud nodes and fog nodes. For small cases, the results can be obtained within several seconds. Comparing the average CPU time for solving the case with the same number of tasks in the three datasets, the difference is more significant as the number of cloud nodes and fog nodes increases. Since the number of cloud nodes, fog nodes, and tasks determines the number of binary variables in Model OTA2, more cloud nodes, fog nodes, or tasks results in more CPU time for solving the task assignment problem. Since Model OTA2 involves an SOS1 constraint, the technique for treating the SOS1 constraint with fewer binary variables can be considered to improve the computational efficiency of the large-scale task assignment problems in a cloud-fog computing environment. \begin{table}
\begin{tabular}{c c} \hline \hline
**Parameter** & **Fog Nodes** & **Cloud Nodes** \\ \hline CPU rate (MIPS) & [500,1500] & [3000,5000] \\ CPU usage cost & [0.1,0.4] & [0.7,1.0] \\ Memory usage cost & [0.01,0.03] & [0.02,0.05] \\ Bandwidth usage cost & [0.01,0.02] & [0.05,0.1] \\ \hline \hline \end{tabular}
\end{table} 
Table 1: Characteristics of the nodes in a cloud-fog computing environment. \begin{table}
\begin{tabular}{c c} \hline \hline
**Property** & **Value** \\ \hline Number of instructions (109 instructions) & [1] \\ Memory required (MB) & [50,200] \\ Input file size (MB) & [10,100] \\ Output file size (MB) & [10,100] \\ \hline \hline \end{tabular}
\end{table} 
Table 2: Characteristics of the tasks to be assigned.