Dynamically optimized task-offloading in a UAV cloud-IoT environment
Programming skills are mandatory (Python)
Experience with cloud computing and optimization techniques is preferable
Unmanned Aerial Vehicles (UAVs) are increasingly used within a Mobile Edge Computation (MEC) network where the UAV is made intelligent by equipping it with an edge device (NVIDIA Jetson devices for example). Tasks such as autonomous navigation and obstacle avoidance, but also real-time deep learning or next-best-view applications, can be increasingly applied on the edge in a real-time fashion. In a global strive to make UAVs more autonomous, a variety of tasks are ideally carried out simultaneously. However, edge devices are computationally restricted in terms of CPU, GPU and storage and, therefore, co-existing tasks are competing for scarce computation resources. Moreover, tasks are becoming more time-sensitive and, therefore, more sensitive to communication failures or fluctuating bandwidth capacities. Efficient task offloading is when tasks are carried out either locally or on an (edge) cloud based on user-defined optimization criteria.
The aim of this topic is to design an optimized task-offloading framework that allows multiple tasks to be carried out during a UAV mission. Here, particular attention should be given to resource consumption on the UAV (in terms of battery and computational overhead), on the cloud (in terms of computational consumption) and the speed of execution. In addition, special attention can be given to dynamically changing conditions during a flight, such as the detection of objects of interest, obstacles, or changes in the flight path.
The student must revise existing literature on task offloading for MEC environments. The student must motivate and design a task offloading architecture for UAV MEC environments where specific attention is placed on multi-task objectives, (edge) cloud design, communication protocols (potentially 5g) and the physical constraints of drones (in terms of battery and computational constraint). Finally, the student must design a numerical simulation, which is used to map the full range of capabilities and limitations of the designed system.
From the perspective of Open Science and reproducible science, we ask that the student places their code on our public GitHub. Furthermore, we encourage the student to explain their work through a short video that can be used for dissemination purposes.
[1] Chen, M., & Hao, Y. (2018). Task offloading for mobile edge computing in software defined ultra-dense network. IEEE Journal on Selected Areas in Communications, 36(3), 587-597.
[2] Wang, B., Wang, C., Huang, W., Song, Y., & Qin, X. (2020). A survey and taxonomy on task offloading for edge-cloud computing. IEEE Access, 8, 186080-186101.
[3] Guo, H., Liu, J., & Lv, J. (2019). Toward intelligent task offloading at the edge. IEEE Network, 34(2), 128-134.