Open Access
This article is

- freely available
- re-usable

*Algorithms*
**2018**,
*11*(2),
14;
doi:10.3390/a11020014

Article

An Optimal Online Resource Allocation Algorithm for Energy Harvesting Body Area Networks

^{1}

School of Software, Central South University, Changsha 410075, China

^{2}

“Mobile Health” Ministry of Education-China Mobile Joint Laboratory, Changsha 410083, China

*

Correspondence: [email protected]

^{†}

Current address: School of Software, Central South University, Changsha 410075, China.

^{‡}

These authors contributed equally to this work.

Received: 10 November 2017 / Accepted: 24 January 2018 / Published: 28 January 2018

## Abstract

**:**

In Body Area Networks (BANs), how to achieve energy management to extend the lifetime of the body area networks system is one of the most critical problems. In this paper, we design a body area network system powered by renewable energy, in which the sensors carried by patient with energy harvesting module can transmit data to a personal device. We do not require any a priori knowledge of the stochastic nature of energy harvesting and energy consumption. We formulate a user utility optimization problem. We use Lyapunov Optimization techniques to decompose the problem into three sub-problems, i.e., battery management, collecting rate control and transmission power allocation. We propose an online resource allocation algorithm to achieve two major goals: (1) balancing sensors’ energy harvesting and energy consumption while stabilizing the BANs system; and (2) maximizing the user utility. Performance analysis addresses required battery capacity, bounded data queue length and optimality of the proposed algorithm. Simulation results verify the optimization of algorithm.

Keywords:

body area networks; energy management; energy harvesting; online resource allocation algorithm; Lyapunov optimization## 1. Introduction

According to the sixth national census report, the trend of population aging is aggravating year by year. People over 60 years of age account for 13.26% of the total population. People over 65 years of age account for 8.87% of the total population [1]. The aging of the population has brought us a series of related questions [2]. It is expected that about half of the medical resources will be used to solve the health problems of the elderly in future, which will be a serious challenge for the allocation of limited current medical resources. Chronic diseases have been a threat to human survival [3]. Heart disease, malignancy, cerebrovascular disease, chronic respiratory disease, influenza and diabetes are the deadliest cause of death [4,5]. Traditional medical care is that the doctor test and treat patient through the medical equipment in hospital. This requires that patients lie in the bed and connect a large number of lines, which not only greatly limits the patient’s range of activities but also cannot complete the early diagnosis and remote health-care [6,7,8]. Moreover, more and more wireless networks are used. Electronic devices are also becoming smaller and smaller [9]. In such conditions, BANs have developed.

Body area networks have gained momentum as a means of monitoring people’s behavior, which are networks attached to the human body [10]. BAN is composed of some small and mobile sensors with communication capability, whose design problem is often addressed through mathematical optimization techniques (e.g., [7,11,12,13]). By implanting these sensors into the human body or wearing them on the human body, they form a local area network. These sensors detect the patient’s physiological signals in real time [14,15]. In addition, they can collect and transmit patient’s physiological signals at home and at random [16]. Therefore, researchers are paying more and more attention to the use of BANs. In a BAN, each patient wears sensors on the body or embeds special sensors in the body that can continuously monitor the various physiological signals of the body and transmit it to the personal device wirelessly. Then, the information can be transmitted through the external network to the medical system. By analyzing and dealing with the collected data, the physiological signals of the human body are diagnosed, and the early diagnosis is completed, thus ensuring the safety of human life.

However, the BANs are facing great challenges. One of the most serious challenges is the energy efficiency [17]. How to supply a sensor is related to how to provide a lasting service for BANs. At present, most of the sensors in BANs are configured with batteries, but the battery capacity is very limited [18,19,20]. Considering the friendliness to patients, we cannot replace the battery frequently [21]. More importantly, some physiological signal sensors, such as implanted blood pressure sensors, implanted PH sensors, they are implanted into the human body, so we cannot replace the battery. In this condition, energy harvesting technology is developed [22]. Energy harvesting technology is very important to prolong sensor’s lifetime in BANs [23]. Many implanted sensors require a long lifetime. For example, a pacemaker or a glucose monitor would require a lifetime lasting more than five years [2]. By using energy harvesting technology, sensors harvest energy from the renewable sources in the area of interest [24]. In fact, the sensor in BANs is equipped with energy harvesting modules [25], which provide a time-independent amount of energy with respect to the batteries. The sensor harvest energy to collect data and transmit it.

In this paper, we investigate the energy efficiency in BAN that consists of a number of medical sensors, by jointly considering the data buffers and energy buffers’ management. The sensor collects data and saves in its data buffers, and so does the energy. The channel condition is changing all the time and its variations are complex and unpredictable due to motion and shadowing effects of the human body. We use Lyapunov optimization theory and propose a resource allocation algorithm to achieve close-to-optimal time average user utility. The contributions of this paper are the following:

- By using energy harvesting technology, the lifetime of the system is greatly prolonged. Energy harvesting technology is very important to the BAN system. Sensors harvest energy from the renewable sources. We propose a framework to characterize the stochastic nature of the energy harvesting and energy consumption, we do not need any a priori knowledge of these stochastic processes.
- We propose an optimization problem to maximize the user utility. We use Lyapunov optimization approach to decompose the user utility optimization problem into three sub-problems, i.e., battery management, collecting rate control and transmission power allocation. We propose an optimal online resource allocation algorithm that makes decisions at the beginning of each time slot and then updates queues, and achieves close-to-optimal time average user utility.

The remaining parts of the paper are organized as follows. Related works are reviewed in Section 2. The system model is presented in Section 3. A resource allocation algorithm is proposed in Section 4. We analyze the performance of the proposed algorithm in Section 5. Simulation results are provided to evaluate the performance of the proposed algorithm in Section 6. Section 7 concludes this paper and future works.

## 2. Related Works

In [26], the authors design two algorithms to optimize the network utility. The first algorithm computes the data sampling rate and routes. To avoid missing opportunities for energy harvesting, the second algorithm is designed to adapt the sampling rate with the objective of maintaining the battery at a target level. The authors of [27] design a data gathering optimization algorithm to optimize data gathering in terms of network utility by jointly considering data gathering and data transmission. A novel method has been considered to improve the performance of on-body communication by harvesting energy from ambient sources in and around the human body in [28]. In [19], a selective gateway method based on the residual energy of the sensors has been proposed, to further increase the lifetime of the BANs, a thermal energy harvesting system has been proposed to harvest heat energy from human warmth. In [29], Zhang et al. develop a distributed sampling date control (DSRC) algorithm to decide the sampling rate for each rechargeable sensor node with a limited battery capacity while maximizing the network performance. Literatures [26,27,29] are assumed to have a good prior knowledge of energy harvesting. Practically, this is not true because energy harvesting is a dynamic and random process. We cannot predict it. In [30], Huang et al. design an online energy-limited scheduling algorithm(ESA), which jointly manages the energy and makes power allocation decisions for packet transmission, and does not require any knowledge of the harvestable energy process. In [31], the authors propose an intelligent solar energy-harvesting system for supplying a long term and stable power. In [32], the authors propose two new and insightful performance criteria to evaluate the new class of hybrid networks that comprise both energy harvesting and conventional nodes.

In [33], the authors propose a mathematical model that focuses on the maximization of the lifetime of the path of nodes involved in a data flow. In [34], the authors propose a global routing protocol based on Dijkstra’s algorithm with a novel link cost function specialized for balancing energy consumption. In [35], the authors propose an integer linear programming model that optimizes the number and location of relays while minimizing the energy consumption. In [36], the authors maximize network lifetime based on joint resource allocation scheme for BANs. The authors show that the problem of optimizing network lifetime is equivalent to maximizing the residual energy of sensor nodes. The proposed scheme is capable of extending the lifetime of network as well as guaranteeing user quality of service (QoS) requirements. In [37], the authors propose a formulation to reduce the energy consumption of BANs through monitoring and eliminating the spatial correlated contention in the BANs sensors while avoiding multiple nodes sending the same data to prolong the sensor and network lifetime. In [38], the authors propose an energy-efficient fuzzy formulation based on adaptive routing protocol to prolong the network lifetime. This protocol is based on clustering protocol that makes use of direct transmission technique depending upon the criticality and the location of the sensor. The authors in [39] present an adaptive interference mitigation scheme for multiple coexisting BANs based on social interaction to reduce energy consumption. The energy consumption is reduced by optimizing the transmission time by synchronous and parallel transmission. However, literatures [34,35,36,37,38,39] just consider how to save energy or balance energy consumption, without considering harvesting energy from outside. It is not enough to prolong the lifetime of BANs. Lyapunov optimization theory [40] is a framework to combine stability and optimization techniques. It takes account of both the stability of the system and user utility maximization objectives [41].

Firstly, the above-mentioned works assume having good a priori knowledge of energy harvesting. Practically, this is not true because energy harvesting is a dynamic and random process. We cannot predict it. Secondly, the above-mentioned works consider how to save energy or balance energy consumption, without considering harvesting energy from outside. It is not enough to prolong the lifetime of BANs. They cannot meet the requirements of energy in BANs. Therefore, to solve the problem, this paper proposes a framework to characterize the stochastic process of energy harvesting and we design a problem formulation to maximize the user utility.

## 3. System Model

In this section, we present the system model of BAN and the optimization problem formulation. It is interesting to note that the BAN optimal design problem presents many connections with general wireless network design problem (see e.g., [42,43,44]). We consider a body area network, consisting of a personal device and N lightweight sensors, such as those shown in Figure 1. Let $N=\{1,2,3,\cdots ,N\}$ denote the set of sensors. The system time is partitioned into time slots of constant duration, denoted by t. Let $T=\{1,2,3,\cdots ,T\}$ denote the set of time slots. Each sensor has two queues: data queue and energy queue. Data queue is used to describe data collection and data transmission. Energy queue is used to describe energy consumption and energy harvesting.

#### 3.1. Collecting Rate and Utility

In time slot t, let ${c}_{n}\left(t\right)$ represent the collecting rate of sensor n carried by the patient in BAN. ${c}_{n}\left(t\right)$ follows an independent and identical distribution. We assume that the collected data have a finite maximum ${c}^{max}$, so that

$$0\le {c}_{n}\left(t\right)\le {c}^{max},\forall n\in N.$$

The collecting rate is associated with a user utility function ${U}_{n}\left({c}_{n}\left(t\right)\right)$, which is a concave function over the interval $0\le {c}_{n}\left(t\right)\le {c}^{max}$ with a bounded first derivative ${U}_{n}^{{}^{\prime}}\left({c}_{n}\left(t\right)\right)$ and $U\left(0\right)=0$ [23]. We assume that utility function ${U}_{n}\left({c}_{n}\left(t\right)\right)$ has a finite maximum slope of $\nu $.

#### 3.2. Data Transmission

We let ${p}_{n}\left(t\right)$ denote the transmission power of sensor n carried by patient in time slot t. In the BAN, the sensor has a maximum transmission power ${p}^{max}$. The following inequality must be satisfied:

$$0\le {p}_{n}\left(t\right)\le {p}^{max},\forall n\in N.$$

We use ${\beta}_{n}\left(t\right)$ to denote the signal to interference plus noise ratio of sensor n. According to the Shannon formula, the transmission rate ${r}_{n}\left(t\right)$ is defined as ${r}_{n}\left(t\right)=log(1+K{\beta}_{n}\left(t\right))$. Here, K denotes the processing gain. Since $log\left(K{\beta}_{n}\left(t\right)\right)$ is very close to $log(1+K{\beta}_{n}\left(t\right))$, so we let

$${r}_{n}\left(t\right)=log\left(K{\beta}_{n}\left(t\right)\right),\forall n\in N.$$

We use sleeping mode to achieve opportunistic transmission. During the sleeping mode, the sensor just can collect data, cannot transmit data. We use ${z}_{n}\left(t\right)$ to denote the sensor’s mode. If the data queue length is greater than L, which is a constant, ${z}_{n}\left(t\right)=1$, else ${z}_{n}\left(t\right)=0$.

#### 3.3. Energy Consumption Model

${c}_{n}\left(t\right)$ is the collecting rate of sensor n carried by patient in time slot t. We save the data in its data buffer. The energy consumption of collecting data is a linear function of ${c}_{n}\left(t\right)$ and is denoted by $\alpha {c}_{n}\left(t\right)$. Thus, the total energy consumption ${a}_{n}\left(t\right)$ of sensor n carried by patient in time slot t is

$${a}_{n}\left(t\right)=\alpha {c}_{n}\left(t\right)+{p}_{n}\left(t\right){z}_{n}\left(t\right),\forall n\in N.$$

The total energy consumption is bounded by ${a}_{n}\left(t\right)\le \alpha {c}^{max}+{p}^{max},\forall n\in N$. We use ${a}^{max}=\alpha {c}^{max}+{p}^{max}$ to denote the upper bound of any sensor’s energy consumption.

#### 3.4. Queues Dynamic Model

We define ${I}_{n}\left(t\right)$ as the data queue occupancy of sensor n carried by patient and $I\left(t\right)=\{{I}_{1}\left(t\right),{I}_{2}\left(t\right),{I}_{3}\left(t\right),\cdots ,{I}_{N}\left(t\right)\}$ represents a vector with the length of data queues of all sensors in time slot t. The data queue is given by:

$${I}_{n}(t+1)=max[{I}_{n}\left(t\right)-{z}_{n}\left(t\right){r}_{n}\left(t\right),0]+{c}_{n}\left(t\right).$$

We define ${J}_{n}\left(t\right)$ as the energy queue occupancy of sensor n carried by patient and $J\left(t\right)=\{{J}_{1}\left(t\right),{J}_{2}\left(t\right),{J}_{3}\left(t\right),\cdots ,{J}_{N}\left(t\right)\}$ represents a vector with the length of energy queues of all sensors in time slot t. The energy queue is given by:
where ${h}_{n}\left(t\right)$ is energy harvesting rate. The harvested energy comes from movement and other stable energy sources like body heat. In addition, the energy harvesting rate is bounded by the energy supply rate ${e}_{n}\left(t\right)$, which determines the amount of harvestable energy of sensor.

$${J}_{n}(t+1)={J}_{n}\left(t\right)-{a}_{n}\left(t\right)+{h}_{n}\left(t\right),$$

$\Omega $ is a limited battery capacity. The total energy stored in battery is limited by the battery capacity $\Omega $. Thus, in time slot t, the sum of the energy left in energy queue ${J}_{n}\left(t\right)$ and harvested energy ${h}_{n}\left(t\right)$ must be less than the battery capacity. Then, the following inequality should be satisfied in each time slot:

$${J}_{n}\left(t\right)+{h}_{n}\left(t\right)\le \Omega ,\forall n\in N.$$

#### 3.5. Optimization Problem Formulation

Based on the aforementioned models, a stochastic optimization problem is formulated whose goal is to maximize the time-average user utility of BANs. ${U}_{n}\left({c}_{n}\left(t\right)\right)$ is a concave function over the interval $0\le {c}_{n}\left(t\right)\le {c}^{max}$. We let ${O}_{n}\left(t\right)={U}_{n}\left({c}_{n}\left(t\right)\right)$. The time-average user utility can be written as

$$\overline{O}=\underset{T\to \infty}{lim}\frac{1}{T}\sum _{t=0}^{T}\sum _{n\in N}^{}{O}_{n}\left(t\right).$$

We use $c\left(t\right)$, $h\left(t\right)$ and $p\left(t\right)$ to denote collecting rate ${c}_{n}\left(t\right)$, energy harvesting rate ${h}_{n}\left(t\right)$ and transmission power ${p}_{n}\left(t\right)$. We define $Y\left(t\right)=\left(c\right(t),\phantom{\rule{0.166667em}{0ex}}h(t),\phantom{\rule{0.166667em}{0ex}}p(t\left)\right)$ to represent the set of variables. To maximize the time-average user utility, we formulate a stochastic optimization problem as follows, subject to the constraints Equations (1) to (7).

$$\begin{array}{c}\hfill \left(\mathrm{UEDP}\right)\underset{Y\left(t\right)}{max}\overline{O}\\ \hfill s.t.\phantom{\rule{3.33333pt}{0ex}}\phantom{\rule{3.33333pt}{0ex}}Equations\phantom{\rule{0.166667em}{0ex}}\left(1\right)\text{}to\text{}\left(7\right).\end{array}$$

By optimizing the set of variables $Y\left(t\right)$, we maximize the stochastic optimization problem. In the following section, we use Lyapunov optimization approach to decompose UEDP into a series of deterministic subproblems in each time slot.

## 4. Resource Allocation Algorithm

#### 4.1. Lyapunov Optimization

Laypunov optimization theory introduces a method to control the utility problem. We adopt Laypunov optimization theory to decompose the objective into optimization goals for each time slot. We define $\mathsf{\Theta}\left(t\right)=\left(I\right(t),J(t\left)\right)$ as the network state in time slot t that represents the length of data queue and energy queue. We define a Laypunov function, $L\left(t\right)$, as the sum of squares of backlogs in the data queues and the spare capacity in sensors’ batteries.
where ${\widehat{J}}_{n}\left(t\right)=\Omega -{J}_{n}\left(t\right)$ denotes the spare capacity battery of sensor n. Laypunov function $L\left(t\right)$ is a scalar to measure the occupancy of data queue and energy queue. A small value of Laypunov function $L\left(t\right)$ means a small length of data queue and a full battery of capacity. According to the characteristics of the data queue and energy queue, $L\left(t\right)$ is time coupled. We define the conditional Lyapunov drift, denoted by $\Delta \left(t\right)=\mathbb{E}\left[L\right(t+1)-L(t\left)\right|\mathsf{\Theta}\left(t\right)]$ for converting time-coupled problem to non-time-coupled problem. Our goal is to minimize $\Delta \left(t\right)$ in each slot time. The data queue is pushed towards zero to stabilize the data queue. The energy queue is pushed towards their battery capacity $\Omega $ to guarantee having enough energy for data collection and data transmission.

$$L\left(t\right)=\frac{1}{2}\sum _{n\in N}{\left({I}_{n}\left(t\right)\right)}^{2}+\frac{1}{2}\sum _{n\in N}{(-{\widehat{J}}_{n}\left(t\right))}^{2},$$

The maximum user utility has not yet been incorporated in Laypunov function $L\left(t\right)$. We include a weighted version of user utility into the Lyapunov drift. We use the ${\Delta}_{V}\left(t\right)=\mathbb{E}[\Delta \left(t\right)-VO\left(t\right)|\mathsf{\Theta}\left(t\right)],$ to substitute the $\Delta \left(t\right)$, where V is a weight, which means how much we emphasize on user utility. Minimization of ${\Delta}_{V}\left(t\right)$ can minimize the $\Delta \left(t\right)$. By minimizing ${\Delta}_{V}\left(t\right)$, we can achieve two goals: (1) stabilizing the BAN system; and (2) maximizing the user utility. The drift-minus-utility ${\Delta}_{V}\left(t\right)$ is a quadratic function of the queue lengths and variables in $Z\left(t\right)$, and we can derive the upper bound of ${\Delta}_{V}\left(t\right)$. Minimization of ${\Delta}_{V}\left(t\right)$ by minimizing its upper bound.

**Theorem**

**1.**

Given the network state, the upper bound of ${\Delta}_{V}\left(t\right)$ is:
where B is a finite constant and independent of V, whose expression is following:
and ${D}_{V}\left(t\right)$ is expressed as

$${\Delta}_{V}\left(t\right)\le B+E\left[{D}_{V}\left(t\right)\right|\mathsf{\Theta}\left(t\right)],$$

$$B=\frac{2}{N}[{\left({c}^{max}\right)}^{2}+{\left({r}^{max}\right)}^{2}+{\left({h}^{max}\right)}^{2}+{\left({a}^{max}\right)}^{2}],$$

$$\begin{array}{cc}\hfill {D}_{V}\left(t\right)& =\sum _{n\in N}\left[-{\widehat{J}}_{n}\left(t\right){h}_{n}\left(t\right)\right]+\sum _{n\in N}\left[\alpha {\widehat{J}}_{n}\left(t\right){c}_{n}\left(t\right)+{I}_{n}\left(t\right){c}_{n}\left(t\right)-VU\left({c}_{n}\left(t\right)\right)\right]\hfill \\ & +\sum _{n\in N}\left[{\widehat{J}}_{n}\left(t\right){z}_{n}\left(t\right){p}_{n}\left(t\right)-{I}_{n}\left(t\right){z}_{n}\left(t\right){r}_{n}\left(t\right)\right].\hfill \end{array}$$

**Proof.**

See proof of theorem 1. We minimize ${\Delta}_{V}\left(t\right)$’s upper bound to minimize it. Since B is a constant, we minimize ${D}_{V}\left(t\right)$. ☐

#### 4.2. Sub-Problem Solution

${D}_{V}\left(t\right)$ is relevant to the set of variables $Y\left(t\right)=\left(c\right(t),\phantom{\rule{0.166667em}{0ex}}h(t),\phantom{\rule{0.166667em}{0ex}}p(t\left)\right)$, so we divide ${D}_{V}\left(t\right)$ into three parts according to the $Y\left(t\right)=\left(c\right(t),\phantom{\rule{0.166667em}{0ex}}h(t),\phantom{\rule{0.166667em}{0ex}}p(t\left)\right)$. Each part is a sub-problem that needs to be optimized. These sub-problems are battery management, collecting rate control and transmission power allocation. The sub-problem of battery management optimizes the energy harvesting rate ${h}_{n}\left(t\right)$, which requires information on the energy queue occupancy ${J}_{n}\left(t\right)$ and energy supply rate ${e}_{n}\left(t\right)$. The sub-problem of collecting rate control optimizes the collecting rate ${c}_{n}\left(t\right)$, which requires information on the energy queue occupancy ${J}_{n}\left(t\right)$ and data queue occupancy ${I}_{n}\left(t\right)$. The sub-problem of transmission power allocation optimizes transmission power ${p}_{n}\left(t\right)$, which requires information on the energy queue occupancy ${J}_{n}\left(t\right)$, data queue occupancy ${I}_{n}\left(t\right)$, and transmission rate ${r}_{n}\left(t\right)$. In the following, we will solve the sub-problems separately.

- Battery ManagementThe sensor should harvest energy as much as possible for data collection and data transmission. The system is stable only if the energy in the system is sufficient enough. In this sub-problem, we need to optimize energy harvesting rate ${h}_{n}\left(t\right)$. To keep the BAN system running, we should try to charge the battery of sensor n carried by patient as much as possible. For each sensor $n\in N$, combining the first term of ${D}_{V}\left(t\right)$ with the constraint Equation (9), we have the optimization problem of ${h}_{n}\left(t\right)$ as follows:$$\begin{array}{c}\underset{{h}_{n}\left(t\right)}{min}-{\widehat{J}}_{n}\left(t\right){h}_{n}\left(t\right),\hfill \\ \mathrm{s}.\mathrm{t}.\phantom{\rule{3.33333pt}{0ex}}\left\{\begin{array}{c}{h}_{n}\left(t\right)\le {e}_{n}\left(t\right),\hfill \\ {J}_{n}\left(t\right)+{h}_{n}\left(t\right)\le \Omega .\hfill \end{array}\right.\hfill \end{array}$$The problem is linear of ${h}_{n}\left(t\right)$. In time slot t, we can get the value of energy queue occupancy ${J}_{n}\left(t\right)$. Thus, minimize the optimization problem just to maximize the ${h}_{n}\left(t\right)$ with the constraints. If the battery of sensor n carried by patient is full, ${\widehat{J}}_{n}\left(t\right)$ equals 0, and we do not need to harvest energy, ${h}_{n}\left(t\right)=0$. If the battery is not full, ${J}_{n}\left(t\right)\le \Omega $ and ${\widehat{J}}_{n}\left(t\right)\ge 0$, we need to harvest energy as much as possible, ${h}_{n}\left(t\right)=min(\Omega -{J}_{n}\left(t\right),{e}_{n}\left(t\right))$. According to the above, we can get$$\begin{array}{c}\phantom{\rule{3.33333pt}{0ex}}\left\{\begin{array}{c}{h}_{n}\left(t\right)=min(\Omega -{J}_{n}\left(t\right),{e}_{n}\left(t\right)),\phantom{\rule{3.33333pt}{0ex}}if\phantom{\rule{3.33333pt}{0ex}}{\widehat{J}}_{n}\left(t\right)\ge 0,\hfill \\ {h}_{n}\left(t\right)=0,\phantom{\rule{3.33333pt}{0ex}}else.\hfill \end{array}\right.\hfill \end{array}$$
- Collecting Rate ControlIn this sub-problem, we consider data scheduling of sensor n carried by patient in BAN. We optimize the second part of ${D}_{V}\left(t\right)$ while ensuring the constraint Equation (1). We have the optimization problem of ${c}_{n}\left(t\right)$ as follows:$$\begin{array}{c}\underset{{c}_{n}\left(t\right)}{min}\alpha {\widehat{J}}_{n}\left(t\right){c}_{n}\left(t\right)+{I}_{n}\left(t\right){c}_{n}\left(t\right)-VU\left({c}_{n}\left(t\right)\right),\hfill \\ \mathrm{s}.\mathrm{t}.,\phantom{\rule{3.33333pt}{0ex}}0\le {c}_{n}\left(t\right)\le {c}^{max}.\hfill \end{array}$$In time slot t, we can get the values of energy queue occupancy ${J}_{n}\left(t\right)$ and data queue occupancy ${I}_{n}\left(t\right)$. $\alpha $ and V are constants. Thus, minimize the optimal problem just need to optimize the collection rate ${c}_{n}\left(t\right)$. According to Section 3.1, we can get that the utility function $U\left({c}_{n}\left(t\right)\right)$ is a concave function; thus, the problem is convex. According to the convex optimization, let the collecting rate ${c}_{n}^{\ast}\left(t\right)$ be the unique optimal solution, and we can get:$${c}_{n}^{\ast}\left(t\right)={[{U}^{{}^{\prime}-1}(\frac{{\widehat{J}}_{n}\left(t\right)\alpha +{I}_{n}\left(t\right)}{V})]}_{0}^{{c}^{max}}.$$
- Transmission Power AllocationIn this sub problem, we consider transmission power allocation of sensor n carried by the patient. We optimize the third part of ${D}_{V}\left(t\right)$ to get the optimal transmission power. Combining the third term of ${D}_{V}\left(t\right)$ with the constraint Equation (2), we have the optimization problem of ${p}_{n}\left(t\right)$ as follows:$$\begin{array}{c}\underset{{p}_{n}\left(t\right)}{min}{\widehat{J}}_{n}\left(t\right){z}_{n}\left(t\right){p}_{n}\left(t\right)-{I}_{n}\left(t\right){z}_{n}\left(t\right){r}_{n}\left(t\right),\hfill \\ \mathrm{s}.\mathrm{t}.\phantom{\rule{3.33333pt}{0ex}}\left\{\begin{array}{c}0\le {p}_{n}\left(t\right)\le {p}^{max},\hfill \\ {z}_{n}\left(t\right)=1,if\phantom{\rule{3.33333pt}{0ex}}{I}_{n}\left(t\right)>L,\hfill \end{array}\right.\hfill \end{array}$$$$log(K\frac{{p}_{n}\left(t\right)}{{\sum}_{i=1,i\ne n}{p}_{i}\left(t\right)})=log\left(K\right)+log\left({p}_{n}\left(t\right)\right)-log(\sum _{i=1,i\ne n}{p}_{i}\left(t\right)).$$We can get the value of $log({\sum}_{i=1,i\ne n}{p}_{i}\left(t\right))$ in time slot t, and $log\left(K\right)$ is a constant. Thus, the minimization problem can transform to$$\begin{array}{c}\underset{{p}_{n}\left(t\right)}{min}{\widehat{J}}_{n}\left(t\right){z}_{n}\left(t\right){p}_{n}\left(t\right)-{I}_{n}\left(t\right){z}_{n}\left(t\right)log\left({p}_{n}\left(t\right)\right),\hfill \\ \mathrm{s}.\mathrm{t}.\phantom{\rule{3.33333pt}{0ex}}\left\{\begin{array}{c}0\le {p}_{n}\left(t\right)\le {p}^{max},\hfill \\ {z}_{n}\left(t\right)=1,if\phantom{\rule{3.33333pt}{0ex}}{I}_{n}\left(t\right)>L.\hfill \end{array}\right.\hfill \end{array}$$In time slot t, we can get the values of energy queue occupancy ${J}_{n}\left(t\right)$, data queue occupancy ${I}_{n}\left(t\right)$, and ${z}_{n}\left(t\right)$. They are constants in time slot t. Thus, minimization of the optimal problem just needs to optimize the transmission power ${p}_{n}\left(t\right)$, and the logarithmic function is concave. Thus, the problem is convex. Let the transmission power rate ${p}_{n}^{\ast}\left(t\right)$ be the optimal solution, and we have:$${p}_{n}^{\ast}\left(t\right)={[{log}^{{}^{\prime}-1}(\frac{{\widehat{J}}_{n}\left(t\right)}{{I}_{n}\left(t\right)})]}_{0}^{{p}^{max}}.$$

#### 4.3. Proposed Algorithm

In this subsection, we present an online resource allocation algorithm in Algorithm 1. The idea of this algorithm is to obtain the optimal harvested energy ${h}^{\ast}\left(t\right)$, collecting rate ${c}^{\ast}\left(t\right)$ and transmission power ${p}^{\ast}\left(t\right)$ according to the above subproblems firstly. Then, the algorithm updates data queues and energy queues according to Equations (5) and (6) in each time slot. There are four parts included in the online resource allocation algorithm. The first part is mainly to solve the sub-problem of battery management to achieve the optimal harvested energy ${h}^{\ast}\left(t\right)$ in time slot t. The second part is mainly to solve the sub-problem of collecting rate control to achieve the optimal collecting rate ${c}^{\ast}\left(t\right)$. The third part is mainly to solve the sub-problem of transmission power allocation to achieve the optimal transmission power ${p}^{\ast}\left(t\right)$. The fourth part is mainly to update the data queue occupancy ${I}_{n}(t+1)$ and energy queue occupancy ${J}_{n}(t+1)$ based on the results of the previous three parts. Figure 2 shows the three subproblems and the data flows among them.

Algorithm 1: Online Resource Allocation Algorithm. |

## 5. Performance Analysis

In this section, we analyze the performance of the proposed online resource allocation algorithm. This section is divided into three sections: Section 5.1 Required Battery Capacity, Section 5.2 Bounded Data Queues and Section 5.3 Optimality of the Proposed Algorithm. Section 5.1 shows the battery capacity that we need to support the operation of BAN system. Section 5.2 shows that the data queues are bounded. Section 5.3 shows the gap between user utility achieved by the proposed algorithm and the optimal utility.

#### 5.1. Required Battery Capacity

Only if there is enough energy in the battery of sensor n carried by the patient, the BAN system can have a stable operation; otherwise, it will not collect data or transmit data. Thus, we can get the required battery capacity in such a way that if the available energy is less than the maximum energy consumption, i.e., ${J}_{n}\left(t\right)\le {a}^{max}$, the sensor will not collect data or transmit data. Theorem 2 has shown the required battery capacity.

**Theorem**

**2.**

The required battery capacity Ω supporting to the operation of BAN system is given by:
Sensors will not collect and transmit data, i.e., ${c}_{n}\left(t\right)=0$ and ${r}_{n}\left(t\right)=0$ if and only if ${J}_{n}\left(t\right)\le {a}^{max}$, i.e., length of energy queue is less than the maximum of energy consumption.

$$\Omega =\frac{V\nu}{\alpha}+{a}^{max},\forall n\in N.$$

**Proof.**

See proof of theorem 2. To enable the BAN system to operate under the proposed resource allocation algorithm, the sensor n must be equipped with a battery of capacity $\Omega $. ☐

#### 5.2. Bounded Data Queues

In this subsection, we give a theorem about bounded data queue of sensor n carried by patient. In order to ensure the stability of the BAN system, the data queue must be bounded. We use the constant ${I}^{max}$ to represent the upper bound of data queue. In Theorem 3, we give a theorem on upper bound of data queue.

**Theorem**

**3.**

The upper bound of data queue consists of weight V, slope of user utility function ν and the maximum of collecting rate ${c}^{max}$. It is given by ${I}^{max}=V\nu +{c}^{max}$. The length of data queue does not always exceed the upper bound:

$$0\le {I}_{n}\left(t\right)\le {I}^{max},\forall n\in N.$$

This inequality is satisfied at time $t=0$.

**Proof.**

See proof of theorem 3. From Theorem 3, the upper bound of data queue increases linearly with the weight V. To enable the BAN system to operate under the proposed resource allocation algorithm, the sensor n must be equipped with a data buffer of size ${I}^{max}$. ☐

#### 5.3. Optimality of the Proposed Algorithm

In Theorem 4, we analyse the optimality of the proposed resource allocation algorithm. We show the performance gap between the user utility achieved by the proposed algorithm and optimal utility.

**Theorem**

**4.**

We define $\overline{O}$ and ${O}^{\ast}$ as the proposed algorithm user utility and optimal utility, and the performance gap between them is satisfied:

$$\overline{O}\ge {O}^{\ast}-\frac{B}{V}.$$

**Proof.**

See proof of theorem 4. B is a constant. There is a $\frac{B}{V}$ performance gap between the user utility achieved by proposed algorithm and optimal utility. It is easy to know that the user utility increases with the increase of V, and illustrate that V means how much we put an emphasis on user utility. It also shows that user utility function is a concave function. ☐

## 6. Simulation Results

In this section, we present simulation results to evaluate the performance of the proposed online resource allocation algorithm. We consider a BAN system composed of five medical sensors. We set the system time $T=5000$, the processing gain K is uniformly distributed between (0.9, 1.1), the maximum collecting data rata ${c}^{max}=50$, the maximum transmission power ${p}^{max}=0.02$ W, the upper bound of energy supply ${e}^{max}=2$; $\alpha =5\times {10}^{-4}$ and upper bound of energy consumption ${a}^{max}=0.04$. Similar to [23], we define a concave utility function $U\left({c}_{n}\left(t\right)\right)=log(1+{c}_{n}\left(t\right)),\forall n\in N$ and $\nu =1$.

Figure 3 presents the data queue dynamics with different V. As we can see from the figure, the larger the V, the longer the data queue length. This means that more data buffer is needed. After a period of time slot, the data queue is stable around a fixed value with small range of fluctuation, as shown in Equation (17). This means the BAN system is stable. In the initial stage, the data queue is very short, and the battery is fully charged. It can allow collecting a lot of data, so the data queues are growing very fast.

Figure 4 presents the energy queue dynamics with different V. As we can see from the figure, the energy queue is in a steady fluctuation. This is because the sensor consumes energy when it collects data and transmits data, and the process of harvesting energy is time varying and random. In addition, we can know that length of the energy queue will not exceed the capacity of the battery. In time slot $t=0$, the value of energy queue is equal to the battery capacity, that is, the battery is full of energy.

Figure 5 and Figure 6 present the time-average data queue length and energy queue length. From these figures, we can see that the time-average queue length increases linearly with the increase of weight V, as shown in Equations (16) and (17). From Figure 3, Figure 4, Figure 5 and Figure 6, we can get that the queue quickly stabilized around a time-average length. From Figure 5, Figure 6 and Figure 7, we can get that, if we want to get more user utility, we will need a longer data buffer and a larger battery capacity.

Figure 7 shows the user utility. Under different values of V ranging from 100 to 500, the user utility increases from 1.8 to 3.1. We can see that the user utility grows rapidly with the increase of V in the initial stage, and then the growth of user utility slows down. This shows that user utility is a concave function of V, as shown in Equation (18).

## 7. Conclusions

In this paper, we developed an online resource allocation algorithm for BANs that maximizes user utility subject to energy limitation. This algorithm is an online algorithm and does not require any a priori knowledge of the the energy harvesting process and data collection process. We consider that the energy harvesting technique in BANs and energy sources come from renewable energy, such as body heat and kinetic energy. To save the energy consumption, we use the sleeping mode. We use Lyapunov optimization approach to decompose the user utility optimization problem into three sub-problems, i.e., battery management, collecting rate control, and transmission power allocation. For the optimality gap and the bounds of energy queues, data queues have been derived. Simulation results test and verify the performance of BAN system, as well as the proposed algorithm.

For our future work, we plan to investigate channel allocation problem based on Game Theory of the BANs. We consider the interference between sensors. Moreover, the communication of health related information between sensors in BANs and over the internet to servers is strictly private and confidential, so we plan to investigate security and privacy.

## Acknowledgments

This work was partially supported by The Fund of Graduate Student Independent Innovation Project (2017zzts624). It was also supported by the National Natural Science Foundation of China (61672540).

## Author Contributions

G.W. and L.G. conceived and designed the experiments; G.W. performed the experiments; G.W. and J.W. analyzed the data; Z.C. contributed reagents/materials/analysis tools; G.W. wrote the paper.

## Conflicts of Interest

The authors declare no conflicts of interest.

## Appendix A. Proof of Theorem 1

We can get Equation (A1) by squaring both sides of data queue, i.e., Equation (5). Similarly, we can get Equation (A2) from energy queue , i.e., Equation (6). By rearranging the equation, we have Equation (13):

$$\begin{array}{cc}\hfill \frac{1}{2}& [{({I}_{n}(t+1))}^{2}-({I}_{n}{\left(t\right)}^{2})]\hfill \\ \hfill \le & \frac{1}{2}[{\left({c}_{n}\left(t\right)\right)}^{2}+{\left({z}_{n}\left(t\right){r}_{n}\left(t\right)\right)}^{2}+2{I}_{n}\left(t\right)({c}_{n}\left(t\right)-{z}_{n}\left(t\right){r}_{n}\left(t\right))]\hfill \\ \hfill \le & \frac{{\left({c}_{n}\left(t\right)\right)}^{2}+{\left({z}_{n}\left(t\right){r}_{n}\left(t\right)\right)}^{2}}{2}+{I}_{n}\left(t\right)({c}_{n}\left(t\right)-{z}_{n}\left(t\right){r}_{n}\left(t\right)),\hfill \end{array}$$

$$\begin{array}{c}\frac{1}{2}[{({J}_{n}(t+1)-\Omega )}^{2}-{({J}_{n}\left(t\right)-\Omega )}^{2}]\hfill \\ \le \frac{1}{2}[{\left({h}_{n}\left(t\right)\right)}^{2}+{\left({a}_{n}\left(t\right)\right)}^{2}-2{\widehat{J}}_{n}\left(t\right)({h}_{n}\left(t\right)-{a}_{n}\left(t\right))]\hfill \\ \le \frac{{\left({h}_{n}\left(t\right)\right)}^{2}+{\left({a}_{n}\left(t\right)\right)}^{2}}{2}-{\widehat{J}}_{n}\left(t\right)({h}_{n}\left(t\right)-\alpha {c}_{n}\left(t\right)-{z}_{n}\left(t\right){p}_{n}\left(t\right)).\hfill \end{array}$$

## Appendix B. Proof of Theorem 2

The BANs system performs data scheduling only when there is sufficient energy in the energy queue. If ${J}_{n}\left(t\right)<{a}_{max}$, i.e., the length of energy queue is less than the total energy consumption, sensor n does not collect data, i.e., ${c}_{n}\left(t\right)=0$. The user utility function $U\left({c}_{n}\left(t\right)\right)$ is concave, thus, ${U}^{{}^{\prime}-1}\left({c}_{n}\left(t\right)\right)$ and ${c}_{n}\left(t\right)$ are negatively correlated. According to Equation (14), sensor n does not collect data if $\frac{{I}_{n}\left(t\right)+\alpha {\widehat{J}}_{n}\left(t\right)}{V}\ge \nu \ge {U}^{{}^{\prime}}\left(0\right)$. When ${J}_{n}\left(t\right)<{a}_{max}$, sensor n does not collect data, and we can set $\Omega =\frac{V\nu}{\alpha}+{a}^{max}$.

## Appendix C. Proof of Theorem 3

We prove Equation (17) by the inductive method. At $t=0,{I}_{n}\left(0\right)=0$, Equation (17) holds. We assume that Equation (17) holds in time slot t, and we prove it holds in time slot $t+1$.

- (1)
- If ${c}_{n}\left(t\right)=0$, i.e., sensor n does not collect data, we can get ${I}_{n}(t+1)\le {I}_{n}\left(t\right)\le V\nu +{c}^{max}$.
- (2)
- If sensor n collect data with rate ${c}_{n}^{\ast}\left(t\right)$, we have $V{U}^{{}^{\prime}}\left({c}_{n}^{\ast}\left(t\right)\right)={I}_{n}\left(t\right)+{\widehat{J}}_{n}\left(t\right)\alpha ={I}_{n}\left(t\right)-\alpha ({J}_{n}\left(t\right)-\Omega )$, $\alpha ({J}_{n}\left(t\right)-\Omega )\le 0$, so ${I}_{n}\left(t\right)\le V{O}^{{}^{\prime}}\left({C}_{n}^{\ast}\left(t\right)\right)$. $\nu $ is the maximum of the user utility function, ${I}_{n}\left(t\right)\le V\nu $. Furthermore, ${c}_{n}^{\ast}\left(t\right)\le {c}^{max}$, and we have ${I}_{n}(t+1)\le {I}_{n}\left(t\right)+{c}^{max}\le V\nu +{c}^{max}$.

Thus, Equation (17) is proved.

## Appendix D. Proof of Theorem 4

We use the comparative research method to prove Theorem 4. We use $\chi $ to denote the random algorithm. ${p}^{\chi}\left(t\right),{c}^{\chi}\left(t\right),and\phantom{\rule{0.277778em}{0ex}}{h}^{\chi}\left(t\right)$ denote the optimal solution of the random algorithm. ${a}^{\chi}\left(t\right)$ represents the total energy consumption. ${r}^{\chi}\left(t\right)$ represents the transmission data rate. According to Theorem 4.5 in [40], we can get the following inequalities:
where $\delta $ is a arbitrarily small parameter. ${\varrho}_{1},{\varrho}_{2}$ are constant scalars.

$$\mathbb{E}[\sum _{n\in N}U\left({c}_{n}^{\chi}\left(t\right)\right)]\le {O}^{\ast}+\delta ,$$

$$\mid \mathbb{E}[\sum _{n\in N}({c}_{n}^{\chi}\left(t\right)-{r}_{n}^{\chi}\left(t\right))]\mid \le {\varrho}_{1}\delta ,$$

$$\mid \mathbb{E}[\sum _{n\in N}({h}_{n}^{\chi}\left(t\right)-{a}_{n}^{\chi}\left(t\right))]\mid \le {\varrho}_{2}\delta ,$$

The proposed algorithm minimizes the right-hand side of the Lyapunov drift in Equation (13). From Equation (11), we can get
where $\overline{O}$ denotes the user utility of proposed alogorithm. ${O}^{\ast}$ denotes the user utility of algorithm $\chi $. By setting $\delta $ to zero, we can get

$$\begin{array}{c}\Delta \left(t\right)-V\mathbb{E}\left[\overline{O}\left(t\right)\right]\le B+\mathbb{E}\left[{D}_{V}\left(t\right)\right|\mathsf{\Theta}\left(t\right)]\hfill \\ \le B+\mathbb{E}\left[{D}_{V}^{\chi}\left(t\right)\right]\hfill \\ \le B+({\varrho}_{1}+{\varrho}_{2}+1)\delta -V{U}^{\ast},\hfill \end{array}$$

$$\Delta \left(t\right)-V\mathbb{E}\left[\overline{O}\left(t\right)\right]\le B-V{O}^{\ast}.$$

Taking expectations on both sides, we have

$$\frac{L(T-1)-L\left(0\right)}{T}-\frac{1}{T}\sum _{t=0}^{T-1}\mathbb{E}\left[\overline{O}\left(t\right)\right]\le B-V{O}^{\ast}.$$

$L(T-1)$ and $L\left(0\right)$ are finite. Let $T\to \infty $, we can get $\overline{O}\ge {O}^{\ast}-\frac{B}{V}$. Thus, Theorem 4 is proved.

## References

- Sumita, M. Communique of the National Bureau of Statistics of People’s Republic of China on Major Figures of the 2010 Population Census(No.2). China Popul. Today
**2011**, 6, 24–25. [Google Scholar] - Latre, B.; Braem, B.; Moerman, I.; Blondia, C.; Demeester, P. A survey on wireless body area networks. Wirel. Netw.
**2011**, 17, 1–18. [Google Scholar] [CrossRef] - Cao, H.; Leung, V.; Chow, C.; Chan, H. Enabling technologies for wireless body area networks: A survey and outlook. IEEE Commun. Mag.
**2009**, 47, 84–93. [Google Scholar] [CrossRef] - Qi, X.; Wang, K.; Yue, D.; Shu, L.; Liu, Y.; Zhao, H. Adaptive TDMA-based MAC protocol in energy harvesting wireless body area network for mobile health. In Proceedings of the IEEE 41st Annual Conference on Industrial Electronics Society, IECON 2015, Yokohama, Japan, 9–12 November 2016; pp. 4175–4180. [Google Scholar]
- Chen, M.; Gonzalez, S.; Vasilakos, A.; Cao, H.; Leung, V.C. Body Area Networks: A Survey. Mob. Netw. Appl.
**2011**, 16, 171–193. [Google Scholar] [CrossRef] - Liu, B.; Yu, S.; Chang, W.C. Optimal resource allocation in energy harvesting-powered body sensor networks. In Proceedings of the International Symposium on Future Information and Communication Technologies for Ubiquitous Healthcare, Beijing, China, 28–30 May 2015; pp. 1–5. [Google Scholar]
- Elias, J. Optimal Design of Energy-Efficient and Cost-Effective Wireless Body Area Networks; Elsevier Science Publishers: Amsterdam, The Netherlands, 2014; pp. 560–574. [Google Scholar]
- Yick, J.; Mukherjee, B.; Ghosal, D. Wireless sensor network survey. Comput. Netw.
**2008**, 52, 2292–2330. [Google Scholar] [CrossRef] - Jemili, I.; Belghith, A. Wireless Body Area Networks: Applications and Technologies. In Proceedings of the 2nd International Workshop on Recent Advances on Machine-To-Machine Communications, Madrid, Sapin, 9 May 2016; pp. 1274–1281. [Google Scholar]
- Elias, J.; Paris, S.; Krunz, M. Cross-Technology Interference Mitigation in Body Area Networks: An Optimization Approach. IEEE Trans. Veh. Technol.
**2015**, 64, 4144–4157. [Google Scholar] [CrossRef] - Cavallari, R.; Martelli, F.; Rosini, R.; Buratti, C. A Survey on Wireless Body Area Networks: Technologies and Design Challenges. IEEE Commun. Surv. Tutor.
**2014**, 16, 1635–1657. [Google Scholar] [CrossRef] - D’Andreagiovanni, F.; Krolikowski, J.; Pulaj, J. A fast hybrid primal heuristic for multiband robust capacitated network design with multiple time periods. Appl. Soft Comput.
**2015**, 26, 497–507. [Google Scholar] [CrossRef] - D’Andreagiovanni, F.; Nardin, A.; Natalizio, E. A Fast ILP-Based Heuristic for the Robust Design of Body Wireless Sensor Networks. In Applications of Evolutionary Computation, EvoApplications 2017; Lecture Notes in Computer Science; Springer International Publishing: Cham, Switzerland, 2017; Volume 10199, pp. 234–250. [Google Scholar]
- Wu, J.; Chen, Z. Data Decision and Transmission Based on Mobile Data Health Records on Sensor Devices in Wireless Networks. Wirel. Pers. Commun.
**2016**, 90, 2073–2087. [Google Scholar] [CrossRef] - Movassaghi, S.; Abolhasan, M.; Lipman, J.; Smith, D.; Jamalipour, A. Wireless Body Area Networks: A Survey. IEEE Commun. Surv. Tutor.
**2014**, 16, 1658–1686. [Google Scholar] [CrossRef] - Mukhopadhyay, S.C. Wearable Sensors for Human Activity Monitoring: A Review. IEEE Sens. J.
**2014**, 15, 1321–1330. [Google Scholar] [CrossRef] - Zhou, X.; Zhang, T.; Song, L.; Zhang, Q. Energy Efficiency Optimization by Resource Allocation in Wireless Body Area Networks. In Proceedings of the IEEE Vehicular Technology Conference (VTC Spring), Seoul, Korea, 18–21 May 2014; pp. 1–6. [Google Scholar]
- Zhang, D.; Chen, Z.; Ren, J.; Zhang, N.; Awad, M.; Zhou, H.; Shen, X. Energy Harvesting-Aided Spectrum Sensing and Data Transmission in Heterogeneous Cognitive Radio Sensor Network. IEEE Trans. Veh. Technol.
**2016**, 66, 831–843. [Google Scholar] [CrossRef] - Hoang, D.C.; Tan, Y.K.; Chng, H.B.; Panda, S.K. Thermal energy harvesting from human warmth for wireless body area network in medical healthcare system. In Proceedings of the International Conference on Power Electronics and Drive Systems, Taipei, Taiwan, 2–5 November 2009; pp. 1277–1282. [Google Scholar]
- Panatik, K.Z.; Kamardin, K.; Shariff, S.A.; Yuhaniz, S.S.; Ahmad, N.A.; Yusop, O.M.; Ismail, S.A. Energy harvesting in wireless sensor networks: A survey. In Proceedings of the IEEE International Symposium on Telecommunication Technologies, Kuala Lumpur, Malaysia, 28–30 November 2016; pp. 53–58. [Google Scholar]
- D’Andreagiovanni, F.; Nardin, A. Towards the fast and robust optimal design of Wireless Body Area Networks. Appl. Soft Comput.
**2015**, 37, 971–982. [Google Scholar] [CrossRef] - Liu, S.; Wang, K.; Guo, J.; Wang, Y.; Qi, X. Review on MAC Protocols in Energy-Harvesting Wireless Body Area Networks. In Proceedings of the International Conference on Identification, Information, and Knowledge in the Internet of Things, Beijing, China, 22–23 October 2015; pp. 303–304. [Google Scholar]
- Zhang, D.; Chen, Z.; Awad, M.K.; Zhang, N.; Zhou, H.; Shen, X.S. Utility-Optimal Resource Management and Allocation Algorithm for Energy Harvesting Cognitive Radio Sensor Networks. IEEE J. Sel. Areas Commun.
**2016**, 34, 3552–3565. [Google Scholar] [CrossRef] - Zhang, D.; Chen, Z.; Cai, L.X.; Zhou, H.; Ren, J.; Shen, X. Resource Allocation for Green Cloud Radio Access Networks Powered by Renewable Energy. In Proceedings of the Global Communications Conference, Washington, DC, USA, 4–8 December 2017; pp. 1–6. [Google Scholar]
- Akhtar, F.; Rehmani, M.H. Energy Harvesting for Self-Sustainable Wireless Body Area Networks. IT Prof.
**2017**, 19, 32–40. [Google Scholar] [CrossRef] - Liu, R.S.; Sinha, P.; Koksal, C.E. Joint energy management and resource allocation in rechargeable sensor networks. In Proceedings of the Conference on Information Communications, San Diego, CA, USA, 14–19 March 2010; pp. 902–910. [Google Scholar]
- Zhang, Y.; He, S.; Chen, J. Data gathering optimization by dynamic sensing and routing in rechargeable sensor networks. In Proceedings of the Sensor, Mesh and Ad Hoc Communications and Networks, New Orleans, LA, USA, 24–27 June 2013; pp. 273–281. [Google Scholar]
- Ghosh, A.; Meenakshi; Khalid, S.; Harigovindan, V.P. Performance analysis of wireless body area network with thermal energy harvesting. In Proceedings of the Communication Technologies, Thuckalay, India, 23–24 April 2015; pp. 916–920. [Google Scholar]
- Zhang, Y.; He, S.; Chen, J.; Sun, Y.; Shen, X.S. Distributed Sampling Rate Control for Rechargeable Sensor Nodes with Limited Battery Capacity. IEEE Trans. Wirel. Commun.
**2013**, 12, 3096–3106. [Google Scholar] [CrossRef] - Huang, L.; Neely, M.J. Utility optimal scheduling in energy-harvesting networks. IEEE/ACM Trans. Netw.
**2010**, 21, 1117–1130. [Google Scholar] [CrossRef] - Li, Y.; Shi, R. An intelligent solar energy-harvesting system for wireless sensor networks. Eurasip J. Wirel. Commun. Netw.
**2015**, 2015, 179. [Google Scholar] [CrossRef] - Rao, S.; Mehta, N.B. Hybrid energy harvesting wireless systems: Performance evaluation and benchmarking. In Proceedings of the Wireless Communications and Networking Conference, Shanghai, China, 7–10 April 2013; pp. 4244–4249. [Google Scholar]
- Natalizio, E.; Loscri, V.; Viterbo, E. Optimal Placement of Wireless Nodes for Maximizing Path Lifetime. IEEE Commun. Lett.
**2008**, 12, 362–364. [Google Scholar] [CrossRef] - Tsouri, G.R.; Alvaro, P.; Nikhil, A. On Increasing Network Lifetime in Body Area Networks Using Global Routing with Energy Consumption Balancing. Sensors
**2012**, 12, 13088–13108. [Google Scholar] [CrossRef] [PubMed] - Elias, J.; Mehaoua, A. Energy-aware topology design for wireless body area networks. In Proceedings of the IEEE International Conference on Communications, Ottawa, ON, Canada, 10–15 June 2012; pp. 3409–3410. [Google Scholar]
- Chai, R.; Wang, P.; Huang, Z.; Su, C. Network lifetime maximization based joint resource optimization for Wireless Body Area Networks. In Proceedings of the IEEE International Symposium on Personal, Indoor, and Mobile Radio Communication, Washington, DC, USA, 2–5 September 2014; pp. 1088–1092. [Google Scholar]
- Khan, A.W.; Khan, A.A.; Basit, A.; Siddiqui, S.; Salam, A. Achieving energy efficiency in Body Area Networks (BAN’s) through avoiding spatially correlated contention. In Proceedings of the International Conference on Information and Communication Technologies, Karachi, Pakistan, 12–13 December 2016; pp. 1–5. [Google Scholar]
- Singh, K.; Singh, R.K. An energy efficient fuzzy based adaptive routing protocol for Wireless Body Area Network. In Proceedings of the Electrical Computer and Electronics, Allahabad, India, 4–6 December 2016; pp. 1–6. [Google Scholar]
- Movassaghi, S.; Majidi, A.; Jamalipour, A.; Smith, D.; Abolhasan, M. Enabling interference-aware and energy-efficient coexistence of multiple wireless body area networks with unknown dynamics. IEEE Access
**2016**, 4, 2935–2951. [Google Scholar] [CrossRef] - Neely, M. Stochastic Network Optimization with Application to Communication and Queueing Systems; Synthesis Lectures on Communication Networks; Morgan and Claypool Publishers: San Rafael, CA, USA, 2010; Volume 3, p. 211. [Google Scholar]
- Shen, Q.; Zhuang, W. Energy efficient scheduling for delay constrained communication in wireless body area networks. In Proceedings of the IEEE Global Communications Conference, Anaheim, CA, USA, 3–7 December 2012; pp. 262–267. [Google Scholar]
- Kennington, J.; Olinick, E.; Rajan, D. Wireless Network Design: Optimization Models and Solution Procedures; Springer: New York, NY, USA, 2010; pp. 179–184. [Google Scholar]
- Resende, M.G.C.; Pardalos, P.M. Handbook of Optimization in Telecommunications; Springer: New York, NY, USA, 2006. [Google Scholar]
- D’Andreagiovanni, F.; Mannino, C.; Sassano, A. GUB Covers and Power-Indexed formulations for Wireless Network Design. Manag. Sci.
**2013**, 59, 142–156. [Google Scholar] [CrossRef]

© 2018 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).