Introduction
The aim of this project is to address the problems related to edge-level computations within IoT environment for computing tasks, processing generated data, hosting services for time-critical applications and ensuring security. Aware of the need for solutions that guarantee edge/fog availability, we started our research project by proposing an ad-hoc edge cloud framework using mobile devices to execute computing tasks targeting intrusion detection. We then initiated series of work proposing on-demand fog formation approaches which realize the benefit of fog through on-the-fly initialization of computing infrastructure that hosts lightweight micro-services using containerization technology and is capable of managing the cluster using state of the art orchestration technology named Kubernetes. We also proposed multi-objective formulation and optimization and game theoretical solutions to solve the aforementioned problems. We also proposed using deep reinforcement learning for horizontal/vertical scaling approaches.
Managing computing resources is a broad topic that entails optimizing services and tasks assignment, schedule workloads, and more importantly scale available resources. In the research community, we were among the first groups to offer solutions to acquire those features in the cloud and fog computing paradigms. We first brought the idea of on-demand fog formation based on Internet of Things (IoT) devices requirements and user needs for better quality of experience in various mobile and vehicular apps. Benefiting from the use of Docker containers for timely and lightweight deployment of services, moving to the use of Kubernetes orchestration tools brought by Google. These innovative technologies were the main building blocks to the success of deploying on-demand fogs in real-world tasks.
One of the important problems when dealing with on-demand fog formation is the services and tasks placement on available computing resources. Due to the need for satisfying multiple requirements, we adapted the use of evolutionary Memetic solutions for finding near optimal solutions. We then utilized the latest success in the deep reinforcement learning (DRL) area for solving this problem. The work did not stop here; however, we were able to employ DRL to automatically scale computing resources in Kubernetes clusters horizontally and vertically. This brought the flexibility to deploying intelligence for resource management at a large scale in any clustering environments including the 5th and potentially the 6th generation of cellular networks. We are currently very active in this area, and we look forward to investing more time to provide critical solutions for resource management.