I. Introduction
The immense number of growing mobile devices in the 5G era has tremendously increased the mobile data traffic. Traditional cloud-based computing services served well for a number of applications in conventional networks owing to its huge computation and storage capabilities. However, the advanced 5G services such as massive Internet of Things (IoT), autonomous and remote driving, smart-city, healthcare, and augmented and virtual reality have stringent quality-of-service (QoS) demands [1]. Edge computing has emerged as a viable solution to satisfy the QoS demands of these advanced services thanks to its decentralized processing model. The ultra-low latency, limited energy consumption, and self-provisioning capabilities of edge computing enable the support of these advanced services [2]. These advantages of edge computing over cloud computing have made it a popular subject of research in both industry and academia. Although a well-researched topic, edge computing is still an evolving field with the emergence of machine learning technology [3].