## 1Introduction

The growing popularity of mobile devices, such as smart phones, tablet computers and wearable devices, is accelerating the advent of the Internet of Things (IoT) and triggering a revolution of mobile applications [1]. With the support of on-device cameras and embedded sensors, new applications with advanced features, e.g., navigation, face recognition and interactive online gaming, have been created. Nevertheless, the tension between resource-limited devices and computation-intensive applications becomes the bottleneck for providing satisfactory quality of experience (QoE) and hence may defer the advent of a mature mobile application market [2].

Mobile-edge computing (MEC), which provides cloud computing capabilities within the radio access networks (RAN), offers a new paradigm to liberate the mobile devices from heavy computation workloads [3]. In conventional cloud computing systems, remote public clouds, e.g., Amazon Web Services, Google Cloud Platform and Microsoft Azure, are leveraged, and thus long latency may be incurred due to data exchange in wide area networks (WANs). In contrast, MEC has the potential to significantly reduce latency, avoid congestion and prolong the battery lifetime of mobile devices by offloading the computation tasks from the mobile devices to a physically proximal MEC server [4]. Thus, lots of recent efforts have been attracted from both industry [3] and academia [6].

Unfortunately, although computation offloading is effective in exploiting the powerful computation resources at cloud servers, for conventional battery-powered devices, the computation performance may be compromised due to insufficient battery energy for task offloading, i.e., mobile applications will be terminated and mobile devices will be out of service when the battery energy is exhausted. This can possibly be overcome by using larger batteries or recharging the batteries regularly. However, using larger batteries at the mobile devices implies increased hardware cost, which is not desirable. On the other hand, recharging batteries frequently is reported as the most unfavorable characteristic of mobile phones1, and it may even be impossible in certain application scenarios, e.g., in the wireless sensor networks (WSNs) and the IoT for surveillance where the nodes are typically hard-to-reach. Meanwhile, the rapidly increasing energy consumption of the information and communication technology (ICT) sector also brings a strong need for green computing [7]. Energy harvesting (EH) is a promising technology to resolve these issues, which can capture ambient recyclable energy, including solar radiation, wind, as well as human motion energy [8], and thus it facilitates self-sustainability and perpetual operation [9].

By integrating EH techniques into MEC, satisfactory and sustained computation performance can be achieved. While MEC with EH devices open new possibilities for cloud computing, it also brings new design challenges. In particular, the computation offloading strategies dedicated for MEC systems with battery-powered devices cannot take full benefits of the renewable energy sources. In this paper, we will develop new design methodologies for MEC systems with EH devices.

### 1.1Related Works

Energy harvesting was introduced to communication systems for its potential to realize self-sustainable and green communications [19]. With non-causal side information (SI)2, including the channel side information (CSI) and energy side information (ESI), the maximum throughput of point-to-point EH fading channels can be achieved by the directional water-filling algorithm [21]. The study was later extended to EH networks with causal SI [22]. Cellular networks with renewable energy supplies have also been widely investigated. Resources allocation policies that maximize the energy efficiency in OFDMA systems with hybrid energy supplies (HES), i.e., both grid and harvested energy are accessible to base stations, were proposed in [23]. To save the grid energy consumption, a sleep control scheme for cellular networks with HES was developed in [24], and a low-complexity online base station assignment and power control algorithm based on Lyapunov optimization was proposed in [25].

### 1.2Contributions

In this paper, we will investigate MEC systems with EH devices and develop an effective dynamic computation offloading algorithm. Our major contributions are summarized as follows:

• We consider an EH device served by an MEC server, where the computation tasks can be executed locally at the device or be offloaded to the MEC server for cloud execution4. An execution cost that incorporates the execution delay and task failure is adopted as the performance metric, while DVFS and power control are adopted to optimize the mobile execution process and data transmission for computation offloading, respectively.

• The execution cost minimization (ECM) problem, which is an intractable high-dimensional Markov decision problem, is formulated assuming causal SI, and a low-complexity online Lyapunov optimization-based dynamic computation offloading (LODCO) algorithm is proposed. In each time slot, the system operation, including the offloading decision, the CPU-cycle frequencies for mobile execution, and the transmit power for computation offloading, only depends on the optimal solution of a deterministic optimization problem, which can be obtained either in closed form or by bisection search.

• We identify a non-decreasing property of the scheduled CPU-cycle frequencies (the transmit power) with respect to the battery energy level, which shows that a larger amount of available energy leads to a shorter execution delay for mobile execution (MEC server execution). Performance analysis for the LODCO algorithm is also conducted. It is shown that the proposed algorithm can achieve asymptotically optimal performance of the ECM problem by tuning a two-tuple control parameters. Moreover, it does not require statistical information of the involved stochastic processes, including the computation task request, the wireless channel, and EH processes, which makes it applicable even in unpredictable environments.

• Simulation results are provided to verify the theoretical analysis, especially the asymptotic optimality of the LODCO algorithm. Moreover, the effectiveness of the proposed policy is demonstrated by comparisons with three benchmark polices with greedy harvested energy allocation. It is shown that the LODCO algorithm not only achieves significant performance improvement in terms of execution cost, but also effectively reduces task failure.

The organization of this paper is as follows. In Section II, we introduce the system model. The ECM problem is formulated in Section III. The LODCO algorithm for the ECM problem is proposed in Section IV and its performance analysis is conducted in Section V. We show the simulation results in Section VI and conclude this paper in Section VII.

## 2System Model

In this section, we will introduce the system model studied in this paper, i.e., a mobile-edge computing (MEC) system with an EH device. Both the computation model and energy harvesting model will be discussed.

### 2.1Mobile-edge Computing Systems with EH Devices

We consider an MEC system consisting of a mobile device and an MEC server as shown in Figure 1. In particular, the mobile device is equipped with an EH component and powered purely by the harvested renewable energy. The MEC server, which could be a small data center managed by the telecom operator, is located at a distance of meters away and can be accessed by the mobile device through the wireless channel. The mobile device is associated with a system-level clone at the MEC server, namely, the cloud clone, which runs a virtual machine and can execute the computation tasks on behalf of the mobile device [16]. By offloading the computation tasks for MEC, the computation experience can be improved significantly [4].

We assume that time is slotted, and denote the time slot length and the time slot index set by and , respectively. The wireless channel is assumed to be independent and identically distributed (i.i.d.) block fading, i.e., the channel remains static within each time slot, but varies among different time slots. Denote the channel power gain at the th time slot as , and , where is the cumulative distribution function (CDF) of . For ease of reference, we list the key notations of our system model in Table .

### 2.2Computation Model

We use to represent a computation task, where (in bits) is the input size of the task, and is the execution deadline, i.e., if it is decided that task is to be executed, it should be completed within time . The computation tasks requested by the applications running at the mobile device are modeled as an i.i.d. Bernoulli process. Specifically, at the beginning of each time slot, a computation task is requested with probability , and with probability , there is no request. Denote if a computation task is requested at the th time slot and if otherwise, i.e., . We focus on delay-sensitive applications with execution deadline less than the time slot length, i.e., [12], and assume no buffer is available for queueing the computation requests.

Each computation task can either be executed locally at the mobile device, or be offloaded to and executed by the MEC server. It may also happen that neither of these two computation modes is feasible, e.g., when energy is insufficient at the mobile device, and hence the computation task will be dropped. Denote with as the computation mode indicators, where and indicate that the computation task requested in the th time slot is executed at the mobile device and offloaded to the MEC server, respectively, while means the computation task is dropped. Thus, the computation mode indicators should satisfy the following operation constraint:

Local Executing Model:

The number of CPU cycles required to process one bit input is denoted as , which varies from different applications and can be obtained through off-line measurement [28]. In other words, CPU cycles are needed in order to successfully execute task . The frequencies scheduled for the CPU cycles in the th time slot are denoted as , which can be implemented by adjusting the chip voltage with DVFS techniques [29]. As a result, the delay for executing the computation task requested in the th time slot locally at the mobile device can be expressed as

Accordingly, the energy consumption for local execution by the mobile device is given by

where is the effective switched capacitance that depends on the chip architecture [15]. Moreover, we assume the CPU-cycle frequencies are constrained by , i.e., .

Mobile-edge Executing Model:

In order to offload the computation task for MEC, the input bits of should be transmitted to the MEC server. We assume sufficient computation resource, e.g., a high-speed multi-core CPU, is available at the MEC server, and thus ignore its execution delay [16]. It is further assumed that the output of the computation is of small size so the transmission delay for feedback is negligible. Denote the transmit power as , which should be less than the maximum transmit power . According to the Shannon-Hartley formula, the achievable rate in the th time slot is given by , where is the system bandwidth and is the noise power at the receiver. Consequently, if the computation task is executed by the MEC server, the execution delay equals the transmission delay for the input bits, i.e.,

and5 the energy consumed by the mobile device is given by

### 2.3Energy Harvesting Model

The EH process is modeled as successive energy packet arrivals, i.e., units of energy arrive at the mobile device at the beginning of the th time slot. We assume ’s are i.i.d. among different time slots with the maximum value of . Although the i.i.d. model is simple, it captures the stochastic and intermittent nature of the renewable energy processes [22]. In each time slot, part of the arrived energy, denoted as , satisfying

will be harvested and stored in a battery, and it will be available for either local execution or computation offloading starting from the next time slot. We start by assuming that the battery capacity is sufficiently large. Later we will show that by picking the values of ’s, the battery energy level is deterministically upper-bounded under the proposed computation offloading policy, and thus we only need a finite-capacity battery in actual implementation. More importantly, including ’s as optimization variables facilitates the derivation and performance analysis of the proposed algorithm. Similar techniques were adopted in previous studies, such as [22], [25] and [30]. Denote the battery energy level at the beginning of time slot as . Without loss of generality, we assume and . In this paper, energy consumed for purposes other than local computation and transmission is ignored for simplicity, while more general energy models can be handled by the proposed algorithm with minor modifications.6 Denote the energy consumed by the mobile device in time slot as , which depends on the selected computation mode, scheduled CPU-cycle frequencies and transmit power, and can be expressed as

subject to the following energy causality constraint:

Thus, the battery energy level evolves according to the following equation:

With EH mobile devices, the computation offloading policy design for MEC systems becomes much more complicated compared to that of conventional mobile cloud computing systems with battery-powered devices. Specifically, both the ESI and CSI need to be handled, and the temporally correlated battery energy level makes the system decision coupled in different time slots. Consequently, an optimal computation offloading strategy should strike a good balance between the computation performance of the current and future computation tasks.

## 3Problem Formulation

In this section, we will first introduce the performance metric, namely, the execution cost. The execution cost minimization (ECM) problem will then be formulated and its unique technical challenges will be identified.

### 3.1Execution Cost Minimization Problem

Execution delay is one of the key measures for users’ QoE [12], which will be adopted to optimize the computation offloading policy for the considered MEC system. Nevertheless, due to the intermittent and sporadic nature of the harvested energy, some of the requested computation tasks may not be able to be executed and have to be dropped, e.g., due to lacking of energy for local computation, while the wireless channel from the mobile device to the MEC server is in deep fading, i.e., the input of the tasks cannot be delivered. To take this aspect into consideration, we penalize each dropped task by a unit of cost. Thus, we define the execution cost as the weighted sum of the execution delay and the task dropping cost, which can be expressed by the following formula:

where (in second) is the weight of the task dropping cost, is the indicator function, and is given by

Without loss of generality, we assume that executing a task successfully is preferred to dropping a task, i.e., .

If it is decided that a task is to be executed, i.e., or , it should be completed before the deadline . In other words, the following deadline constraint should be met:

Consequently, the ECM problem can be formulated as:

where (Equation 11) indicates that if there is no computation task requested, neither mobile execution nor MEC server execution is feasible. ( ?) is the battery discharging constraint, i.e., the amount of battery output energy cannot exceed in each time slot, which is essential for preventing the battery from over discharging [30]. The maximum allowable transmit power and the maximum CPU-cycle frequency constraints are imposed by ( ?) and ( ?), respectively, while the zero-one indicator constraint for the computation mode indicators is represented by ( ?).

### 3.2Problem Analysis

In the considered MEC system, the system state is composed of the task request, the harvestable energy, the battery energy level, as well as the channel state, and the action is the energy harvesting and the computation offloading decision, including the scheduled CPU-cycle frequencies and the allocated transmit power. It can be checked that the allowable action set depends only on the current system state, and is irrelevant with the state and action history. Besides, the objective is the long-term average execution cost. Thus, is a Markov decision process (MDP) problem. In principle, can be solved optimally by standard MDP algorithms, e.g., the relative value iteration algorithm and the linear programming reformulation approach [32]. Nevertheless, for both algorithms, we need to use finite states to characterize the system, and discretize the feasible action set. For example, if we use states to quantize the wireless channel, states to characterize the battery energy level, states to describe the harvestable energy, and admits transmit power levels and CPU-cycle frequencies, there are possible system states in total. For the relative value iteration algorithm, this will take a long time to converge as there will be as many as feasible actions in some states. For the linear programming (LP) reformulation approach, we need to solve an LP problem with variables, which will be practically infeasible even for a small value of , e.g., . In addition, it will be difficult to obtain solution insights with the MDP algorithms as they are based on numerical iteration. Moreover, quantizing the state and action may lead to severe performance degradation, and the memory requirement for storing the optimal policy will yet be another big challenge.

In the next section, we will propose a Lyapunov optimization-based dynamic computation offloading (LODCO) algorithm to solve , which enjoys the following favorable properties:

• There is no need to quantize the system state and feasible action set, and the decision of the LODCO algorithm within each time slot is of low complexity. In addition, there is no memory requirement for storing the optimal policy.

• The LODCO algorithm has no prior information requirement on the channel statistics, the distribution of the renewable energy process or the computation task request process.

• The performance of the LODCO algorithm is controlled by a two-tuple control parameters. Theoretically, by adjusting these parameters, the proposed algorithm can behave arbitrarily close to the optimal performance of .

• An upper bound of the required battery capacity is obtained, which shall provide guidelines for practical installation of the EH components and storage units.

In this section, we will develop the LODCO algorithm to solve . We will first show an important property of the optimal CPU-cycle frequencies, which helps to simplify . In order to take advantages of Lyapunov optimization, we will introduce a modified ECM problem to assist the algorithm design. The LODCO algorithm will be then proposed for the modified problem, which also provides a feasible solution to . In Section V, we will show that this solution is asymptotically optimal for .

### 4.1The LODCO Algorithm

We first show that the optimal CPU-cycle frequencies of the CPU cycles scheduled for a single computation task should be the same, as stated in the following lemma.

The proof can be obtained by contradiction, which is omitted for brevity.

The property of the optimal CPU-cycle frequencies in Lemma ? indicates that we can optimize a scalar instead of a -dimensional vector for each computation task, which helps to reduce the number of optimization variables. However, due to the energy causality constraint (Equation 7), the system’s decisions are coupled among different time slots, which makes the design challenging. This is a common difficulty for the design of EH systems. We find that by introducing a non-zero lower bound, , on the battery output energy at each time slot, such coupling effect can be eliminated and the system operations can be optimized by ignoring (Equation 7) at each time slot. Thus, we first introduce a modified version of as

where . Compared to , only a scalar needs to be determined for mobile execution, which preserves optimality according to Lemma ?, and thus and . Besides, all constraints in are retained in , and an additional constraint on the battery output energy is imposed by (). Hence, is a tightened version of . Denote the optimal values of and as and , respectively. The following proposition reveals the relationship between and , which will later help show the asymptotic optimality of the proposed algorithm.

In general, the upper bound in Proposition ? is not tight. However, as goes to zero, diminishes as shown in the following corollary.

The proof is omitted due to space limitation.

Proposition ? bounds the optimal performance of by that of , while Corollary ? shows that the performance of both problems can be made arbitrarily close. Actually, Corollary ? fits our intuition, since when , reduces to . However, due to the temporally correlated battery energy levels, the system’s decisions are time-dependent, and thus the vanilla version of Lyapunov optimization techniques, where the allowable action sets are i.i.d., cannot be applied directly. Fortunately, the weighted perturbation method offers an effective solution to circumvent this issue [33]. In order to present the algorithm, we first define the perturbation parameter and the virtual energy queue at the mobile device, which are two critical elements.

As will be elaborated later, the proposed algorithm minimizes the weighted sum of the net harvested energy and the execution cost in each time slot, with weights of the virtual energy queue length , and the control parameter , respectively, which tends to stabilize around and meanwhile minimize the execution cost. The LODCO algorithm is summarized in Algorithm ?. In each time slot, the system operation is determined by solving a deterministic per-time slot problem, which is parameterized by the current system state and with all constraints in except the energy causality constraint (Equation 7).

In this subsection, we will develop the optimal solution for the per-time slot problem, which consists of two components: the optimal energy harvesting, i.e., to determine , as well as the optimal computation offloading decision, i.e., to determine , and . The results obtained in this subsection are essential for feasibility verification and performance analysis of the LODCO algorithm in Section V.

Optimal Energy Harvesting:

It is straightforward to show that the optimal amount of harvested energy can be obtained by solving the following LP problem:

and its optimal solution is given by

After decoupling from the objective function, we can then simplify the per-time slot problem into the following optimization problem :

Denote the feasible action set and the objective function of as and , respectively. For the time slots without computation task request, i.e., , there is a single feasible solution for due to (Equation 11), which is given by , , , and . Thus, we will focus on the time slots with computation task requests in the following. First, we obtain the optimal CPU-cycle frequency for a task being executed locally at the mobile device by solving the following optimization problem :

which is obtained by plugging , and into , and using the fact that for local execution. ( ?) is the execution delay constraint for mobile execution, and ( ?) is the CPU energy consumption constraint obtained by combining ( ?) and (Equation 12). We denote the objective function of as . Note that mobile execution is not necessarily feasible due to limited computation capability of the processing unit at the mobile device as indicated by (Equation 14). In the following proposition, we develop the feasibility condition and the optimal solution for given it is feasible.

We first show the feasibility condition. Due to ( ?), should be no less than in order to meet the delay constraint. Besides, since the CPU energy consumption increases with , the battery output energy constraint can be equivalently expressed as . By incorporating (Equation 14), we rewrite the feasible CPU-cycle frequency set as , i.e., is feasible if and only if .

Next, we proceed to show the optimality of ( ?) when is feasible. When , decreases with , i.e., the minimum value is achieved by . When , is convex with respect to as both and are convex functions of . By taking the first-order derivative of and setting it to zero, we obtain a unique solution . If , is increasing in , and thus ; if , is decreasing in , and thus ; otherwise, if , is decreasing in and increasing in , and we have .

It can be seen from Proposition ? that the optimal CPU-cycle frequency is chosen by balancing the cost of the harvested energy and the execution cost. Interestingly, we find that a higher CPU-cycle frequency, i.e., lower execution delay, can be supported with a greater amount of available harvested energy, which is because that the cost of renewable energy is reduced and more energy can be used to enhance the user’s QoE, as demonstrated in Corollary ?.

Since does not depend on , the optimal CPU-cycle frequency is independent with the channel state. As and are constants independent with , and increases with for , we can conclude that is non-decreasing with based on ( ?).

Next, we will consider the case that the task is executed by the MEC server, where the optimal transmit power for computation offloading can be obtained by solving the following optimization problem :

which is obtained by plugging , and into , and using the fact that for computation offloading. ( ?) and ( ?) stand for the execution delay constraint and the battery output energy constraint for MEC, respectively. We denote the objective function of as . Due to the wireless fading, it may happen that computation offloading is infeasible. In order to derive the feasibility condition and the optimal solution for given it is feasible, we first provide the following lemma to facilitate the analysis.

The proof is omitted due to space limitation.

Based on Lemma ?, we combine constraints (Equation 15)-( ?) into an inequality and obtain the feasibility condition for , as demonstrated in the following lemma.

The proof can be obtained based on Lemma ?, which is omitted for brevity.

We now develop the optimal solution for as specified in the following proposition.

When , since both terms in are non-increasing with , we have . When , we define , and thus

Since , increases with . In addition, as and , there exists a unique satisfying . Since the denominator of (Equation 16) is positive for and , for , i.e., is decreasing, and for , i.e., is increasing. Consequently, when and , is non-increasing in while non-decreasing in , and thus ; when and , is non-decreasing in the feasible domain, and thus ; otherwise when and , is non-increasing in the feasible domain, we have .

Similar to mobile execution, we find a monotonic behavior of the optimal transmit power for computation offloading, as shown in the following corollary.

Based on Proposition ? and ?, the optimal computation offloading decision can be obtained by evaluating the optimal values of for the three computation modes, i.e., dropping the task, mobile execution and MEC server execution, which can be explicitly expressed as

where , and is the value of when a computation task is dropped. Note that when and , the computation task has to be dropped, as has only one feasible solution. It is also worth mentioning that bisection search can be applied to obtain , and , i.e., solving is of low complexity.

## 5Performance Analysis

In this section, we will first prove the feasibility of the LODCO algorithm for , and the achievable performance of the proposed algorithm will then be analyzed.

### 5.1Feasibility

We verify the feasibility of the LODCO algorithm by showing that under the optimal solution for the per-time slot problem, the energy causality constraint in (Equation 7) is always satisfied, as demonstrated in the following proposition.

When , we will show by contradiction that with the optimal computation offloading decision, . Suppose there exists an optimal computation offloading decision with either or . With this solution, due to the non-zero lower bound of the battery output energy, i.e., (Equation 12), the value of will be no less than , which is greater than as achieved by the solution with , i.e., is not optimal for the per-time slot problem. When , as , . Thus, (Equation 7) holds under the LODCO algorithm.

Based on the optimal energy harvesting decision and Proposition ?, we show the battery energy level is confined within an interval as shown in the following corollary.

The lower bound of is straightforward as the energy causality constraint is not violated according to Proposition ?. The upper bound of can be obtained based on the optimal energy harvesting in (Equation 13): Suppose , since , we have ; otherwise, if , since , we have . Consequently, we have .

As will be seen in the next subsection, the bounds of the battery energy level are useful for deriving the main result on the performance of the proposed algorithm. In addition, Corollary ? indicates that, given the size of the available energy storage , we can determine the control parameter as , where should be greater than in order to guarantee . This is instructive for installation of EH and storage units at the mobile devices.

### 5.2Asymptotic Optimality

In this subsection, we will analyze the performance of the LODOC algorithm, where an auxiliary optimization problem will be introduced to bridge the optimal performance of and the performance achieved by the proposed algorithm. This will demonstrate the asymptotic optimality of the LODCO algorithm for conjointly with Proposition ?.

Firstly, we define the Lyapunov function as

Accordingly, the Lyapunov drift function and the Lyapunov drift-plus-penalty function can be expressed as

and

respectively.

In the following lemma, we derive an upper bound for , which will play an important part throughout the analysis of the LODCO algorithm.

Note that the terms inside the conditional expectation of the upper bound derived in Lemma ? coincides with the objective function of the per-time slot problem in the LODCO algorithm. To facilitate the performance analysis, we define the following auxiliary problem :

In , the average harvested energy consumption equals the average harvested energy, i.e., the energy causality constraint in is replaced by (Equation 19). Denote the optimal value of as . In the following lemma, we will show that is a relaxation of .

The proof can be obtained by showing any feasible solution for is also feasible for , which is omitted for brevity.

Besides, in the following lemma, we show the existence of a stationary and randomized policy [34], where the decisions are i.i.d. among different time slots and depend only on , and , that behaves arbitrarily close to the optimal solution of , meanwhile, the difference between and is arbitrarily small.

The proof can be obtained by Theorem 4.5 in [34], which is omitted for brevity.

In Section IV, we bounded the optimal performance of the modified ECM problem with that of the original ECM problem , while in Lemma ?, we showed the auxiliary problem is a relaxation of . With the assistance of these results, next, we will provide the main result in this subsection, which characterizes the worst-case performance of the LODCO algorithm.

## 6Simulation Results

In this section, we will verify the theoretical results derived in Section V and evaluate the performance of the proposed LODCO algorithm through simulations. In simulations, is uniformly distributed between 0 and with the average EH power given by , and the channel power gains are exponentially distributed with mean , where dB is the path-loss constant. In addition, , ms, MHz, W, W, GHz, mJ, and bits. Besides, cycles per byte, which corresponds to the workload of processing the English main page of Wikipedia [28]. Moreover, mW, m and ms unless otherwise specified. For comparison, we introduce three benchmark policies, namely, mobile execution with greedy energy allocation (Mobile Execution (GD)), MEC server execution with greedy energy allocation (MEC Server Execution (GD)) and dynamic offloading with greedy energy allocation (Dynamic offloading (GD)), which minimize the execution cost at the current time slot. They work as follows:

• Mobile Execution (GD):

Compute the maximum feasible CPU-cycle frequency as when . If , the computation task will be executed locally with CPU-cycle frequency ; otherwise, mobile execution is infeasible and the task will be dropped. Note that computation offloading is disabled in this policy.

• MEC Server Execution (GD):

When , compute the maximum feasible transmit power as if , where is the unique solution of . If , the computation task will be offloaded to the MEC server with transmit power ; otherwise, MEC server execution is infeasible and the computation task will be dropped. Note that the computation tasks are always offloaded to the MEC server in this policy.

When , compute and as in the Mobile Execution (GD) and MEC Server Execution (GD) policies, respectively, and check if they can meet the delay requirement. Then the feasible computation mode that incurs smaller execution delay will be chosen. If neither computation modes is feasible, the computation task will be dropped.

### 6.1Theoretical Results Verification

In this subsection, we will verify the feasibility and asymptotic optimality of the LODCO algorithm developed in Proposition ?, Corollary ?, and Theorem ?, respectively. The value of is chosen as the value of the right-hand side of ( ?). In Figure 2(a), the battery energy level is depicted to demonstrate the feasibility of the LODOC algorithm for (). First, we observe that the harvested energy keeps accumulating at the beginning, and finally stabilizes around the perturbed energy level. This is due to the fact that in the proposed algorithm the Lyapunov drift-plus-penalty function is minimized at each time slot. From the curves, with a larger value of or a smaller value of , the stabilized energy level becomes higher, which agrees with the definition of the perturbation parameter in ( ?). Also, we see that the energy level is confined within , which verifies Corollary ? and confirms that the energy causality constraint is not violated, i.e., Proposition ? holds. The evolution of the average execution cost with respect to time is shown in Figure 2(b). We see that, a larger value of or a smaller value of results in a smaller long-term average execution cost. Nevertheless, the algorithm converges more slowly to the stable performance. Besides, if are properly selected, the proposed algorithm will achieve significant performance gain compared to the benchmark policies.

The relationship between the average execution cost/required battery capacity and is shown in Figure 3. We see from Figure 3(a) that the execution cost achieved by the proposed algorithm decreases inversely proportional to , and eventually it converges to the optimal value of , which verifies the asymptotic optimality developed in Theorem ?. However, as shown from Figure 3(b), the required battery capacity grows linearly with since the value of is linearly increasing with . Thus, should be chosen to balance the achievable performance, convergence time and required battery capacity. For instance, if a battery with 18 mW capacity is available, we can choose for the LODCO algorithm, and then 74.4%, 51.8% and 46.3% performance gain compared to the Mobile Execution (GD), MEC Server Execution (GD) and Dynamic Offloading (GD) policies, respectively, will be obtained.

### 6.2Performance Evaluation

We will show the effectiveness of the proposed algorithm and demonstrate the impacts of various system parameters in this subsection. First, the impacts of the task request probability on the system performance, including the execution cost, the average completion time of the executed tasks and the task drop ratio, are illustrated in Fig. ?. We see in Fig. ? that the execution cost increases with , which is in accordance with our intuition. Besides, the LODCO algorithm achieves significant execution cost reduction compared to the benchmark policies. In Fig. ?, the average completion time of the executed tasks and the task drop ratio are shown, We see that the LODCO algorithm achieves a near-zero task drop ratio, while those achieved by the benchmark policies increase rapidly with . In terms of the average completion time, the LODCO algorithm outperforms the benchmark policies when is small. However, when is large, the average completion time achieved by the LODCO algorithm is slightly longer than that achieved by the MEC Server Execution (GD) policy. The reason is, in order to minimize the execution cost, the LODCO algorithm suppresses the task drop ratio at the expense of a minor execution delay performance degradation.

The system performance versus the EH rate, i.e., , is shown in Fig. ?, where the effectiveness of the LODCO algorithm is again validated. In addition, we see the execution cost decreases as the EH rate increases since consuming the renewable energy incurs no cost. Similar to the execution cost, the task drop ratios achieved by different policies decrease with the EH rate. Interestingly, under the LODCO algorithm, an increase of the EH rate does not necessarily reduce the average completion time, e.g., when and increases from to mW, the LODCO algorithm has introduced a ms extra average completion time, but secured a 10% task drop reduction. Since the optimization objective is the execution cost, eliminating task drops brings more benefits in terms of system cost when the system resource is scarce, i.e., the harvested energy is insufficient compared to the relatively intense computation workload.