I. Introduction
With the recent arrival of the IoT era, many computation-intensive applications have emerged, such as autonomous driving, virtual reality, and facial recognition, etc, which require substantial computation and energy resources to support. In general, light-weight devices have limited computing capability and battery capacity. Hence, these computation-expensive tasks are hardly handled by such devices due to their resource constraints [1]. In this context, the concept of mobile edge computing (MEC) has been proposed [2] [3]. By deploying servers at the edge of the network, devices can offload their computation tasks to nearby MEC servers while receiving the results with low latency and low energy consumption [4]–[8].