I. Introduction
Applications for the Internet of Things (IoT) are designed to serve a large number of users by satisfying their different needs [1], [2], [3], [4], [5], [6]. IoT solutions must be carefully designed in order to meet these needs. Effectively modeling of IoT network functions can help us optimize the performance of IoT systems. These techniques can be based on a variety of theories, including optimization theory, game theory, graph theory, and heuristics. However, some IoT issues seem to be challenging to accurately model using the aforementioned techniques [7], [8], [9], [10]. One can utilize machine learning (ML) to get around this restriction. Generally, centralized ML relies on moving data from end devices to a single location for training, and thus it suffers from privacy leaks. Federated learning (FL), which does not need transferring data from devices to a centralized server for training, can be used to address the privacy leakage problem associated with centralized ML [11], [12], [13]. Devices in FL learn their local models and send them to a server at the edge or in the cloud where they are aggregated to produce a global model. The FL has some challenges, including resource optimization, single point of failure (SPF), incentive design, and learning algorithm design, despite the fact that it can maintain privacy more effectively than centralized ML [14], [15], [16]. Additionally, a local learning model can also be unable to be trained within the allotted time on devices with insufficient computational power.