## 2 Related Works
### Task Scheduling Algorithms for Fog Computing
\begin{table}
\begin{tabular}{p{113.8 pt} p{113.8 pt} p{113.8 pt} p{113.8 pt}} \hline \hline
**Article** & **Ideas** & **Improvement Criteria** & **Limitation** \\ \hline [PERSON] (2018) [15] & genetic algorithm & execution time, processing cost & small dataset \\ \hline [PERSON] et al. (2017) [4] & bee life algorithm & execution time, memory & small dataset, only in Fog environment \\ \hline [PERSON] et al. (2017) [16] & two-phase linear programming-based heuristic & communication cost, apply for cellular network & no computational offloading capability \\ \hline [PERSON] et al. (2016) [17] & nonlinear integers, Hungarian method & power consumption, delay & suitable for centralized infrastructure, not easy to apply to Fog computing \\ \hline [PERSON] et al. (2016) [18] & Markov decision problems & power consumption, delay & a continuous-time queueing system \\ \hline [PERSON] et al. (2016) & graph partitioning, a minimum spanning tree & execution time & complexity when the number of user requests increases \\ \hline [PERSON] et al. (2015) [20] & heuristic & user satisfaction, task latency, power consumption & complexity when the number of user requests increases \\ \hline [PERSON] et al. (2014) [21] & particle swarm optimization & completion of task & in Cloud environment \\ \hline \hline \end{tabular}
\end{table} 
Table 2: Summary of related works about task scheduling algorithms for Fog computing. the Cloud hub is responsible for the allocation of work, thus this method is less well suited to the Fog computing infrastructure. Thus, the overall performance can be reduced. [PERSON] et al. [16] studied on task distribution, base station association, and virtual machine placement in medical cyber-physical systems supported by Fog computing. They minimized the overall cost to guarantee QoS. However, the proposed model does not generalize into scenarios in the Cloud-Fog computing environment because it is based on cellular network architecture. The model lacks the Cloud entity, while Fog nodes are assumed to co-locate with the base station and do not have computation offloading capability. [PERSON] et al. [4] proposed a task scheduling strategy using Bee Life Algorithm (BLA). The article focuses on two main objectives: execution time and memory. However, this article does not mention the association with Cloud data center and the method is only tested on small datasets. [PERSON] [15] proposed a task scheduling mechanism in Cloud-Fog computing environment based on Genetic Algorithm (GA). This method aims at obtaining good trade-off between time and cost. The proposed method overwhelms Bee Life Algorithm; however, the experiments are limited as they tested the algorithm only on small datasets. In most related studies, algorithms are only deployed in Cloud computing or Fog computing environments where processing nodes have similar abilities. In the hybrid Cloud-Fog environment, there is a significant differentiation between Cloud nodes and Fog nodes in terms of processing speed and resource usage cost, thus tasks are not evenly distributed to processing nodes such as in Cloud computing or Fog computing; therefore, some classical cloud based scheduling algorithms may not be effective. The main contribution of this work is proposing TCaS algorithm--a strategy based on an evolutionary algorithm to obtain optimal trade-off between execution time and processing cost. Additionally, we approach the task scheduling problem in Cloud-Fog computing environment with some other evolutionary algorithms, namely Particle Swarm Optimization (PSO) and Bee Life Algorithm (BLA), and the simple Round Robin (RR) algorithm to demonstrate the efficiency of the proposed algorithm.