# Federated Learning for Edge Computing: A Survey
## 6 Challenges
### Scheduling Techniques  
Due to the wide use of computationally intensive tasks and applications, it is necessary to address the scheduling of tasks. Existing scheduling optimization techniques can be divided into synchronous and asynchronous. Each training round synchronous communication, a subset of clients, is triggered to train the local model. Problems with device performance or network reliability may result in some clients not responding and communicating with the server at the requested time. In this case, the server keeps waiting for a response until it receives a response from a sufficient number of clients. Otherwise, the server must discard this epoch and continue with the next one [161]. [PERSON] et al. [162] introduce asynchronous communication between the clients and server and study its con \begin{table}
\begin{tabular}{p{42.7 pt} p{113.8 pt} p{113.8 pt}} \hline \hline
**Source** & **Year** & **Type of Algorithms** & **Description** \\ \hline
[156] & 2022 & FedAvg, FedProx, FedPD, SCAFFOLD, Fedmed & Analysis of heterogeneity in FL and overview of practical problems caused by systemic and statistical heterogeneity \\ \hline
[157] & 2022 & FedDM, FedAvg, FedProx, FedNova, SCAFFOLD & Experimental tests that compare FedDM with multiple algorithms that perform image classification, model performance, and model accuracy \\ \hline
[158] & 2022 & FedAvg, FedProx, FedNova, SCAFFOLD & Overview and design of comprehensive data distribution strategies to cover non-IID cases. Extensive experiments to evaluate state-of-the-art algorithms currently in use \\ \hline
[159] & 2021 & FedAvg, FedBCM, FedPer, FedDF, FeSEM & A detailed analysis of the influence of non-IID data on parametric and non-parametric machine learning models in both horizontal and vertical learning. \\ \hline
[160] & 2022 & FedAvg, FedCurv & Empirical behavior in common scenarios on non-IID data and experiments that can lead to increased performance and reduced communication costs \\ \hline \hline \end{tabular}
\end{table} 
Table 6: Algorithms overview. vergence speed when distributed on multiple edge devices. Asynchronous optimization, in this case, allows FL participants to send gradients directly to the FL server after each local update, which is not possible with synchronous FL optimization. Asynchronous communication is nowadays the subject of several studies, because this type of communication is one of the fastest and most reliable. After all, convergence is faster in this case, and at the same time, this type of communication is less sensitive to heterogeneous clients [163]. The method of synchronous and asynchronous communication is also shown in the figure Figure 5. FL requires caution while scheduling procedures, particularly when working with IoT devices that have constrained computational power. Clients may use more computing resources as a result of frequent interactions and communications with the server, which will only make the system as a whole slower and more limited. The system can be sped up and consumption can be minimized by using optimal scheduling. New methods and algorithms are often proposed that would be able to schedule tasks correctly and do them more efficiently with the use of the least possible energy consumption and execution time, and at the same time with the execution required for processing. For example, [PERSON] et al. [164], in their paper, discuss the optimal FL-based resource allocation, which they use in IoV. The authors focus on the Delay Energy Product (DEP), where they are able to derive the optimal balanced delay and energetic power consumption for scheduling. Their goal is to select the model with the lowest DEP value. [PERSON] et al. [165] also focus on MEC in a novel Federated Adaptive Training framework, which aims to adaptively assign an appropriate workload to each client. The algorithm adopts an adaptive workload allocation strategy and minimizes the difference when running the process in a heterogeneous device environment, as opposed to FedAvg, which uses a fixed number of iterations.