Internet-of-Things (IoT)-based cyber–physical systems are increasingly being adopted because of the recent technological advancements in sensor technology, edge computing, machine learning, and big data. Integrating machine learning into designing IoT-based cyber–physical systems is essential. However, it is considered a challenging problem. This stems from the fact that IoT devices generate extensive data that requires extensive processing to achieve adequate learning. Relying on local learning by each IoT device is not feasible in most cases due to its limited resources. On the contrary, relying on all cloud-based learning requires transmitting a large amount of data to the cloud to perform the learning process, which is inefficient in large-scale IoT deployments. Therefore, this paper proposes a novel edge-computing architecture that employs the concept of distributed multi-task learning over EC networks in large-scale IoT-based cyber–physical systems. The architecture develops multiple distributed learning algorithms, a data placement architecture, task allocation algorithms, and a network protocol. In addition, it considers the problem of learning model parameters from IoT data distributed over different edge nodes in a large geographical area without sending raw data to the cloud. The architecture supports several distributed machine models that are trained using a combination of machine learning algorithms and population-based search algorithms to optimize the learning process. Population-based search algorithms allow for maintaining a set of candidate solutions, with each solution corresponding to a unique point in the search space for an optimal solution. Having the dataset distributed over several edge nodes, with each node having its own unique set of candidate solutions, increases the chance of finding a solution that generalizes well for the overall dataset combined. Simulation experiments with real IoT datasets are conducted to evaluate the accuracy of the proposed learning models. Results show the ability to achieve high-accuracy results that are close to single-machine models but with significantly efficient edge computing resource utilization.
Read full abstract