Energy efficiency task scheduling for battery level‐aware mobile edge computing in heterogeneous networks

This paper focuses on a mobile edge‐computing‐enabled heterogeneous network. A battery level‐aware task‐scheduling framework is proposed to improve the energy efficiency and prolong the operating hours of battery‐powered mobile devices. The formulated optimization problem is a typical mixed‐integer nonlinear programming problem. To solve this nondeterministic polynomial (NP)‐hard problem, a decomposition‐based task‐scheduling algorithm is proposed. Using an alternating optimization technology, the original problem is divided into three subproblems. In the outer loop, task offloading decisions are yielded using a pruning search algorithm for the task offloading subproblem. In the inner loop, closed‐form solutions for computational resource allocation subproblems are derived using the Lagrangian multiplier method. Then, it is proven that the transmitted power‐allocation subproblem is a unimodal problem; this subproblem is solved using a gradient‐based bisection search algorithm. The simulation results demonstrate that the proposed framework achieves better energy efficiency than other frameworks. Additionally, the impact of the battery level‐aware scheme on the operating hours of battery‐powered mobile devices is also investigated.


| INTRODUCTION
The evolution of information and communication technology, besides the proliferation of mobile devices, has also expanded the boundaries of the Internet of Things (IoT). The sustained development of IoT is a challenging prospect due to the advances in numerous emerging applications, such as remote medical surgery, environmental monitoring [1], transportation safety [2], and smart industrial manufacturing. Furthermore, the limited computational resources of battery-powered mobile devices cannot deal with the problem of increasing latency in emerging applications. Nowadays, mobile cloud computing is considered as a potential solution that meets the strict requirements of emerging IoT applications due to its specific advantages, such as convenient access, high processing capacity, and competitive system scalability [3,4]. However, mobile cloud Correction added on 14th May 2022, after first online publication: the author legal statement has been updated. computing cannot address several issues, such as unpredictable network latency, expensive bandwidth, and single point of failure [5,6].
According to predictions, the number of IoT devices connected to core networks will reach 29.3 billion by 2023, up from 18.4 billion in 2018, where the number of machine-to-machine (M2M) connections (which is also referred to as IoT) will reach 14.7 billion [7]. Due to the ever-increasing sensing, computing, and communication capabilities of mobile devices, 40% of data generated by IoT devices will be handled by edge devices. However, processing this huge amount of data is an overwhelming challenge due to the high heterogeneity of IoT-based applications. The bandwidth of mobile communications has been greatly improved by the expansion of 5G network technologies, which exploit the millimeter wave spectrum and the advantages of multiple antennas. 5G networks are committed to meeting the needs if emerging application scenarios, in which ultrareliable, low latency communications (uRLLC) are mainly used for latencysensitive services.
The 5G communication network is more decentralized than other networks. By deploying smallscale or portable data centers at the edge of heterogeneous networks, edge processing of terminal requests (which is called mobile edge computing [MEC]) is performed to meet the ultra low latency requirements of uRLLC. MEC has recently become a prevailing computing paradigm. With the help of computational resources at the edge of wireless networks, the required computational tasks can be processed in situ [8]. In proximity to mobile devices, edge-computing servers can process nearby computational tasks promptly, resulting in reduced task times and increased transfer rates. By utilizing edge computational resources, MEC can greatly avoid the long delay and heavy overhead encountered in core networks [9]. In next-generation wireless networks, access points with edge-computing servers can provide data storage, data processing, and other services [10].
MEC is an effective way to satisfy the computationally intensive scheduling of latency-sensitive tasks. MEC exhibits the following three main advantages: (1) Compared with local processing, the offloading of tasks to edge-computing servers can overcome the restrictions of limited computational resources available on mobile devices; (2) compared with cloud computing, MEC can avoid the transmission delay caused by mobile devices located away from cloud centers; (3) in battery-powered mobile devices, because the energy consumption required for transmission is usually less than that required for task processing, the offloading of tasks can reduce the energy consumption and prolong the operating hours of mobile devices. However, it is difficult to schedule tasks effectively because of the decentralized characteristics of heterogeneous networks. As an emerging technology, the software-defined network (SDN) technology (which benefits from the network function visualization technology [11]) enables programmable, dynamic, and efficient network configuration in next generation wireless networks. SDN technology provides logically centralized control and global scheduling by separating the control plane (routing processing) from the data plane (network packet forwarding processing) and putting centralizing intelligence in one network component [12,13]. Because of this centralized control, an optimal task-scheduling decision for MEC can be achieved.
In recent years, several studies have addressed taskscheduling in the MEC scenario. Liu and others [14] proposed a stochastic computation task-scheduling policy to achieve a minimum average delay by incorporating different timescales in the data processing. By exploiting the SDN technology, Chen and Hao [4] investigated the task offloading problem to minimize the task duration in ultradense networks under power constraints. By utilizing the device-to-device (D2D) communication, Xie and others [15] proposed a peer-to-peer (P2P) enhanced task offloading and resource allocation framework to minimize the computational delay in MEC networks. However, different application environments have different quality of service (QoS) requirements. Thus, all application scenarios cannot be implemented by focusing only on the task duration.
Based on the demands of mobile devices in different application scenarios, the joint optimization of task duration and energy consumption in mobile devices has been investigated [16,17]. Tran and Pompili [17] investigated the task-scheduling problem in multi-server MEC networks to maximize a user's task offloading gain, which is defined as a weighted sum of the reductions in the task duration and energy consumption. Zhang and others [16] considered the energy harvesting technique as an extra energy supply to mobile devices and proposed a Lyapunov optimization method to investigate the tradeoff between the energy consumption and the task duration in MEC systems.
With the development of green communications, the energy consumption in mobile devices has been an increasing concern. Labidi and others [18] provided a joint optimization framework to minimize the average energy consumption at user terminals in small cell longterm evolution (LTE)-based networks. Furthermore, Zhang and others [19] exploited the multiple access features of 5G heterogeneous networks to formulate an energy consumption minimization problem for MEC in 5G heterogeneous networks. Subsequently, they solved this problem using a three-stage offloading scheme. Chen and others [20] investigated a more complex scenario of multiuser computation offloading in a multichannel wireless contention environment and formulated a multiuser computation offloading game. They also designed a distributed scheduling algorithm to achieve Nash equilibrium. However, the remaining battery level in mobile devices (especially for energy efficiency maximization in densely deployed multi-small cell heterogeneous networks) has received less attention in the literature.
Different from previous studies, in this paper, we focus on a densely deployed multi-small cell heterogeneous network, considering the remaining battery level in mobile devices, the demand for energy by mobile devices, and the limited resources of edgecomputing servers. The joint optimization of task offloading, power control, and computational resource allocation in edge-computing servers is a large-scale mixed-integer nonlinear programming (MINLP) problem, which is nondeterministic polynomial (NP)-hard. To solve this optimization problem, a battery levelaware task-scheduling framework is proposed. The main contributions of this paper are summarized as follows: 1. To improve the energy efficiency and prolong the operating hours of mobile devices in an MEC-enabled heterogeneous network, a battery level-aware taskscheduling framework is proposed. In this framework, the task offloading decision, the transmitted power control, and the computational resource allocation are jointly optimized. 2. The energy efficiency maximization problem is formulated as a large scale MINLP problem and is NP hard. Because it is nonconvex and challenging to solve, the original problem is decoupled into a task offloading master problem, a computational resource allocation subproblem, and a power-allocation subproblem. 3. The task offloading master problem is converted into a typical knapsack problem, and the optimal decision is obtained using a pruning search-based algorithm. 4. Regarding the resource allocation subproblems at mobile devices and MEC servers, a closed-form solution is derived using the Lagrangian method. 5. it is proven that the power-allocation subproblem is unimodal. Then, an approximate optimal solution can be obtained using a gradient-based bisection search algorithm.
The rest of the paper is organized as follows. The system model of the SDN-and MEC-enabled heterogeneous network is constructed in Section 2. The problem formulation is described in Section 3. Then, a task-scheduling algorithm for energy efficiency maximization is proposed in Section 4. The simulation results are presented in Section 5. Finally, Section 6 concludes this paper.

| SYSTEM MODEL
In this section, the system architecture is described to provide the necessary background. Then, the related models adopted in this paper (including the local processing model, the communication model, the edgecomputing model, and the battery level-aware model) are presented.

| System architecture
As shown in Figure 1, an SDN-and MEC-enabled heterogeneous network architecture, which consists of two parts (i.e., the control plane and the data plane) is considered. In the control plane, there is an SDN controller deployed in the macro base station. Because the SDN controller has global state information about the wireless network, it is capable of scheduling and allocating all communication and computation resources. In the data plane, it is assumed that the macro-base station is located at the center of the system. There are N small cells at the edge of the heterogeneous network, where s n denotes the nth small cell n f1, 2,…, Ng ð Þ . All small base stations in a small cell are connected to the macro-base station via wired links. An edge-computing server is deployed at the F I G U R E 1 System model of an SDN-and MEC-enabled heterogeneous network macro-base station. Assume that M n denotes the number of mobile devices in the nth small cell, and M n,i is the ith mobile device i f1, 2, …, M n g ð Þin the nth small cell. Each mobile device can be represented as a 2-tuple m n,i ¼ F n,i , P n,i ð Þ , where F n,i is the maximum computational frequency and P n,i is the maximum transmitted power.
Assume that each mobile device is assigned to handle several computationally intensive and latency-sensitive tasks. These tasks are independent of each other and cannot be split. A computational task in mobile device m n,i is modeled as q n,i ¼ fd n,i , τ n,i g, where d n,i is the data size of the computational task, and τ n,i denotes the maximum tolerable delay of the computational task. The task can be performed either by the mobile device itself, or it can be scheduled to an edge-computing server. Assume that a n,i A denotes the scheduling decision of computational task q n,i . When q n,i is processed locally on the mobile device m n,i , a n,i ¼ 0, otherwise, a n,i ¼ 1.

| Local processing model
The maximum computational ability of mobile device m n,i is denoted as F l n,i . Because the CPU frequency can be dynamically adjusted using dynamic voltage and frequency scaling technology [21], the computational resource assigned to computational task q n,i is f l n,i . Assume that c n,i ¼ λd n,i denotes the total CPU cycles required to accomplish task q n,i , where λ is the computational coefficient, which depends on the type of the task. When a computational task is processed by the mobile device itself, the computational delay T l n,i is Then, the processing rate of task q n,i is The power required to perform a computational task can be calculated as where κ is a coefficient depending on the chip architecture. According to the practical measurement in [22], κ is set to 10 À26 .

| Communication model
To make the most of the available computational resources on an edge-computing server, the computational tasks are transmitted to the server via wireless links. If mobile device m n,i transmits its computational task to the base station, the channel coefficient from mobile device m n,i to the base station can be written as where L n,i ¼ l n,i Àβ is the path loss and l n,i is the distance between mobile device m n,i and the base station. β is the path loss coefficient, and g n,i is the Rayleigh fading channel gain. Then, the signal-to-interference-plus-noise ratio from mobile device m n,i to the base station can be expressed as where I n,i ¼ P k M n ∖ i P n,k h n,k is the interference caused by other mobile devices and can be approximated by E I n,i ð Þ [23]. By convention, σ 2 is the additive white Gaussian noise power.
According to Shannon's formula, the achievable uplink transmission rate can be obtained as where B is the bandwidth, p n,i is the transmitted power, and h n,i is the channel gain between mobile device m n,i and the base station.

| Edge-computing model
Assume that F c denotes the total CPU frequency of an edge-computing server, and γ n,i denotes the percentage of computational resource assigned to computational task q n,i . The total delay of the computational task includes the transmission delay via a wireless link and the computational delay in the edge-computing server. The total delay can be written as Then, the processing rate of q n,i can be obtained as The power consumption of q n,i is expressed as where p c is the additional circuit power consumption.
Due to the fact that the data size of the computed results is much smaller than that of the input data, the transmission delay and energy consumption of the computed results from the edge-computing server to the mobile device are negligible, which is similar to the result reported in [4,24].

| Battery level-aware model
Both the processing delay and energy consumption are vital metrics during the processing of computational tasks that determine the QoS and battery level limitation of mobile devices. Therefore, a weighting factor ω n,i is required to weight the energy consumption and processing time. Reducing the processing time while prolonging the battery life of mobile devices can be achieved by increasing the residual energy rate ω n,i of the battery; ω n,i is defined as where E r n,i is the residual battery level of mobile device m n,i and E t n,i is the total battery level in Joules [24]. ω n,i is a definite value that reflects the real-time battery level of mobile devices.
To describe as close as possible an actual case scenario, we define According to (11), the above formula reflects the fact that the handle willingness will drop sharply when the battery is at a low level, whereas it will drop slowly when the battery is at a high level.

| PROBLEM FORMULATION
In this section, the problem of finding the system's maximum energy efficiency is formulated. The utility function is formulated as follows to facilitate the investigation of maximum energy efficiency. According to the processing rate and power consumption, the utility function of local processing can be calculated as Similarly, the utility function of edge computing is obtained as Generally, the overall energy efficiency of the system can be written as The overall energy efficiency includes both the energy efficiency of mobile devices and edge-computing services, so that all the participants in the network are involved in achieving the optimum energy efficiency of the entire system.

P1 : max
a, p,f η s:t: C1 : a n,i f0, 1g, C2 : 0 ≤ p n,i ≤ P n,i , where I n,i is the interference experienced by mobile device m n,i and P n,i indicates the maximum transmitted power. Constraint C1 shows that the decision variable a n,i is binary. Constraint C2 indicates that the power transmitted by a mobile device cannot exceed its maximum transmitted power. Constraint C3 shows that the allocated computational resource is limited by the maximum computational resource. Constraint C4 indicates that the interference cannot exceed a threshold value. Constraint C5 represents the maximum tolerance delay of computational task q n,i that must be met, where T n,i ¼ 1 À a n,i ð ÞT l n,i þ a n,i T c n,i . The optimization problem is a typical MINLP problem.

| PROPOSED ALGORITHM
In this section, a decomposition-based algorithm is proposed to solve the optimization problem.

| Optimal local computational resource allocation
When the integer variable a n,i is fixed a n,i ¼ 0 ð Þ, the optimization problem P1 can be rewritten as The objective function is a strictly monotonically decreasing function with respect to f l n,i . Constrained by the maximum tolerated latency of the computational task and the computing power of the mobile device, the optimal computational resource allocation can be easily obtained as According to constraint C1 in (16) and (17), the closedform expression of the optimal f n,i can be written as f l n,i À Á * ¼ λd n,i τ n,i , f l,min n,i ≤ F n,i , F n,i , f l,min n,i > F n,i :

| Optimal edge computational resource allocation
Assuming that the integer variable a n,i is fixed a n,i ¼ 1 ð Þ, the subproblem is formulated as With a fixed set of transmitted power levels, the optimization problem P3 can be rewritten as Based on Lemma 1, it can be proved that the optimization problem P4 is a convex optimization problem. Lemma 1. Given a fixed set of transmitted power levels, the original optimization problem in P4 with respect to γ is convex.
Proof. First, P4's Hessian matrix can be obtained as .
Obviously, the parameters reported in (21) are all positive numbers; consequently, it can be derived that ∂ 2 f =∂γ n,i ∂γ m,j ≥ 0. Thus, it can be concluded that every eigenvalue of Hessian matrix H is positive, and H is an asymmetrical positive definite matrix. Because the constraints are linear, the optimization problem P4 is a convex optimization problem.
The proof is now complete.
Based on Lemma 1 and using the Karush-Kuhn-Tucker (KKT) conditions, Theorem 1 can be obtained. Theorem 1. In the optimization problem P4, the optimal value γ can be obtained.
Proof. In terms of the optimization problem in (20) and the constraint in (20), the Lagrangian function is obtained by where μ is the Lagrange multiplier. The problem in (22) is solved using the KKT conditions.
whereγ,andμ are the points that satisfy the KKT conditions. According to above formulas, the optimal γ n,i À Á * is obtained as The proof is completed.
After obtaining the optimal γ, the optimization problem P3 can be solved by solving for the optimal energy efficiency of each mobile device m n,i . Then, the optimal subproblem can be rewritten as P5 : min p p n,i þ p c R n,i þ λ p n,i þ p c À Á γ * n,i F c s:t: C1 : 0 ≤ p n,i ≤ P n,i , C2 : I n,i ≤ I th n,i , C3 : T c n,i ≤ τ n,i , 8n, i: Lemma 2. Function Then, the original function can be rewritten as Since the second derivative of f ðxÞ with respect to x is greater than 0, function f ðxÞ is a convex function with respect to x x ≥ 0 ð Þ. Hence, function f ðxÞ has a minimum, which is unique. Due to the procedure followed, the relationship between x and p n,i is a one-to-one relationship. Therefore, f p n,i À Á has a minimum value, which is unique. In other words, function f p n,i À Á is unimodal.
The proof is completed.
Based on Lemma 2, it can be proved that f p n,i À Á is a strict unimodal function with a unique maximum that tends to initially increase and then decrease, as p n,i increases. According to the nature of the first derivative of f p n,i À Á with respect to p n,i , the unique optimal solution p * n,i should satisfy ∂f p n,i À Á ∂p n,i j p n,i ¼p * Then, the optimal power p * n,i can be obtained using the gradient-based bisection search algorithm. The detailed algorithm is shown in Algorithm 1.

| Pruning search-based taskscheduling algorithm
After allocating the computational resources and optimizing the transmitted power, the task-scheduling problem is converted into an integer programming problem. This problem can be solved by converting the taskscheduling problem into the following form: P6 : max a η a, p * ,f * , γ * ð Þ s:t: C1 : a n,i f0, 1g, C2 : T n,i ≤ τ n,i 8n, i: Thus, the original mixed-integer programming problem is transformed into a pure-integer programming problem. This optimization problem is extremely tough to be solved in polynomial time. The most efficient approach to solve the problem is to use exhaustive search. However, the total number of task-scheduling decisions would be 2 x , where x ¼ X N n¼1 M n . Consequently, it is practically impossible to solve this problem using exhaustive search. To overcome this difficulty, the pruning search-based task-scheduling algorithm is adopted.
The pruning search-based task-scheduling algorithm ensures the optimal global solution by enumerating only a small subset of the entire solution space. During the branching process, the solution space is iteratively divided into multiple smaller subspaces and then maximizes P6 on these smaller subspaces. By performing branching, all the candidate solutions can be enumerated. However, enumerating all the candidate solutions is an extremely challenging task. The proposed algorithm updates the lower bound of the maximum and uses this lower bound to prune the subspace. In this way, candidate solutions that are lower than the lower bound are eliminated. The pruning search algorithm is proposed as a centralized way to find all the candidate solutions. The proposed algorithm can also be developed in a distributed way, such as that reported in [25,26].
Finally, the flow of the decomposition-based taskscheduling-algorithm is presented in Figure 2.

| SIMULATION RESULTS
In this section, simulation results are presented to evaluate the proposed battery level-aware task-scheduling algorithm. In an SDN-and MEC-enabled heterogeneous network, the edge-computing server is located at the small base station, and its total computational frequency is 10 GHz. The data size of tasks is randomly generated from 0.5 MB to 0.5 MB. The tolerable duration of tasks is randomly distributed between 0.5 and 1.5 s. The maximum CPU frequency of mobile devices ranges from 0.5 to 1.5 GHz. Furthermore, the maximum transmitted power of mobile devices is 30 dBm. The path loss coefficient β of the system is 2.5. The bandwidth of each subchannel is 1 MHz. The proposed algorithm is compared with two different baseline algorithms. "NO" represents the nonoffloading scheme, where all computational tasks are computed by mobile devices, and "SDTO" represents the software-defined task offloading scheme reported in [4]. Figure 3 shows that the proposed algorithm achieves better energy efficiency than the NO scheme and the SDTO scheme. In the proposed algorithm, power control, task offloading and computational resource allocation are jointly used to improve the energy efficiency of mobile devices. Compared with the NO scheme (which operates at the maximum CPU frequency), the NO scheme (which operates at the optimal CPU frequency) achieves better energy efficiency. It can also be observed that the proposed algorithm (which operates at a higher battery level) achieves better energy efficiency. This is because mobile devices operating at high battery levels do not need to save energy by reducing their energy efficiency. Figure 4 shows the impact of the average data size of computational tasks on the energy consumption under different battery levels and different CPU frequencies.
The NO scheme (which operates at the maximum CPU frequency) achieves the largest energy consumption because all computational tasks are performed locally with the maximum CPU frequency. The SDTO scheme with its lower latency consumes less energy because part of computational tasks is offloaded to edge-computing servers. Constrained by the delay, after the CPU frequency allocation, the NO scheme (which operates at the optimal CPU frequency) consumes less energy. Furthermore, in the proposed algorithm, where power control, task offloading, and computational resource allocation are jointly used, achieves the lowest energy consumption. In the battery level-aware algorithm, mobile devices with a low battery level can prolong their operating hours by reducing a small amount of their energy efficiency. Figure 5 shows the impact of the average tolerable delay of computational tasks on the energy efficiency under different battery levels. It can be clearly observed that the energy efficiency of the network increases as the average tolerable delay increases. Compared with the NO scheme, the proposed algorithm achieves higher energy efficiency by controlling the transmitted power and scheduling the computational tasks. For different battery levels, the higher the battery level of the mobile device, the higher the energy efficiency the system can achieve. This is because, as the battery level of mobile devices decreases, to prolong their operating hours, the mobile devices give a high priority to offload their computational tasks.
The impact of the number of small cells on the energy efficiency under different transmitted power levels is presented in Figure 6. Two fixed transmitted power levels F I G U R E 3 Performance comparison of the proposed algorithm (under different battery levels) and the software-defined task offloading algorithm F I G U R E 4 Impact of the average data size on the energy consumption (i.e., 15 dBm to 15 dBm) are selected to perform the simulation verification. Figure 6 shows that the energy efficiency increases with the number of small cells. This is mainly because the number of edge-computing servers increases, as the number of small cells increases. Therefore, the computational tasks have more opportunities to be scheduled to the edge-computing servers to improve the energy efficiency. Figure 7 shows the impact of the number of small cells on the energy consumption under different transmitted power levels. Similar to the energy efficiency, the proposed algorithm achieves less energy as the number of small cells increases. Moreover, it can be observed that the proposed algorithm achieves less energy consumption than the fixed transmitted power for most of the time.
Also, mobile devices with low battery power levels consume less energy.
The impact of the number of mobile devices on the energy consumption is presented in Figure 8. It can be observed that the proposed algorithm achieves lees energy consumption when the number of mobile devices is less than 17. This is because all computational tasks have been offloaded to the edge computing server. Furthermore, compared with mobile devices with high battery levels, mobile devices with low battery levels achieve lower energy consumption. This is because mobile devices with lower battery levels are more willing to offload their computational tasks, instead of performing them locally.
In the proposed algorithm, the battery level is introduced into the definition of the weighting factor. Figure 9 shows the impact of the battery level on the residual F I G U R E 5 Impact of the average tolerable delay on the energy efficiency F I G U R E 6 Impact of the number of small cells on the energy efficiency under different transmitted power levels F I G U R E 7 Impact of the number of small cells on the energy consumption under different transmitted power levels F I G U R E 8 Impact of the number of mobile devices on the energy consumption energy of mobile devices. In this figure, the NO scheme, the proposed algorithm without the battery level-aware scheme, and the proposed algorithm with the battery level-aware scheme ðxi ¼ 0:5 and xi ¼ 1Þ are selected and compared. First, it can be observed that the proposed algorithm achieves less energy consumption than the NO scheme. Then, with the continuous energy consumption from the battery, it can be observed that the proposed algorithm with the battery level-aware scheme can save more battery power than the algorithm without the battery level-aware scheme. The reason is that the weighting coefficient ξ decreases, as the battery level decreases. Then, the computational tasks of the low battery level mobile devices are preferentially offloaded to the edgecomputing server. In fact, the mobile devices with lower battery levels care more about energy consumption than other mobile devices.

| CONCLUSION
The objective of this paper was to provide energy-efficient MEC services in heterogeneous networks and to prolong the operating hours of mobile devices. For this purpose, the battery level-aware concept was introduced. Specifically, a battery level-aware task-scheduling framework was proposed to provide energy-efficient task-scheduling services. The formulated optimization problem is a typical mixed-integer nonlinear programming problem. To solve this nonconvex problem, a battery level-aware taskscheduling algorithm based on the problem decomposition principle was designed. The optimization problem was decomposed into a task offloading master subproblem, a computational resource allocation subproblem, and a power control subproblem. It was proven that the computational resource allocation subproblem is convex, and a closed-form solution was obtained. The power control subproblem is a unimodal problem, which was solved using a bisection search algorithm based on gradients. For the task offloading master subproblem, the optimal solution was obtained using a pruning search-based task-scheduling algorithm. Numerical results verified that the proposed algorithm achieves better energy efficiency than conventional algorithms. Additionally, the proposed framework is able to effectively address the energy puzzle issue. Furthermore, because the proposed algorithm is based on a battery level-aware scheme, the operating time of mobile devices can be prolonged.