Energy cooperation in wireless relay networks

This work deals with the problem of insufﬁcient energy caused by the frequent use of relay nodes in wireless sensor networks. Here, energy cooperation relay selection algorithm is proposed in energy heterogeneous networks. It is assumed that the location of relay nodes obeys a homogeneous Poisson point process (PPP), and the relay nodes adopt an adaptive energy collection technology, which can harvest energy from the surrounding environment and decide whether to use or store it according to the current energy status of the battery. The relay nodes are divided into three kinds: the communication relay, the candidate relay and the ordinary relay. The candidate relay nodes are determined by K-medoids clustering algorithms and the ordinary relay nodes transmit energy to them. Finally, the number of data packets sent by relay nodes and the expression of the energy status of the battery are derived correspond to the relay cooperation selection algorithm. The simulation results show that the energy cooperation relay selection scheme effectively extends lifetime of the network when the total network energy is relatively small.


INTRODUCTION
In wireless communication networks, relays can not only assist source nodes in forwarding signal to destination nodes, but also improve system capacity while saving transmit power [1,2]. Hence, relay technology plays an important role in the communication field. In some certain circumstances, the batteries cannot be replaced regularly after relay nodes are placed, and the nodes may stop operating on account of exhausted energy [3]. Fortunately, the emergence of energy-harvesting technology can just overcome this bottleneck [4,5,6]. Simultaneously, energy-harvesting technology plays an important role in extending the lifetime of Internet of Things (IoT) devices and achieving a sustainability of the IoT systems [7]. Therefore, in order to meet the growing application demand for sensor nodes in the future, researchers proposed to equip relay nodes with various environmental energy acquisition devices to form a wireless sensor network for energy acquisition [8].
At the beginning, energy-harvesting technology refers to obtaining energy to support communication equipments from the surrounding environment, such as sunlight, wind, and tides [9][10][11][12]. Direct conversion of solar energy to electricity becomes a breakthrough. Based on this, the conversion between various This is an open access article under the terms of the Creative Commons Attribution License, which permits use, distribution and reproduction in any medium, provided the original work is properly cited. © 2020 The Authors. IET Communications published by John Wiley & Sons Ltd on behalf of The Institution of Engineering and Technology forms of energy and electrical energy has been widely studied. With the development of energy-harvesting technology, some efforts have been devoted to study the energy harvesting with relay technology [13][14][15][16][17]. For the relay systems with harvesting energy there are two main considerations in extending the life of the wireless sensor network. One is that relay node depends on the energy harvested by itself, and the other is that the relay node maintains activity through energy cooperation.
Like conventional relay systems, network using energyharvesting technology will also improve the performance of the system. As in [13], under the three-node communication model, Gunduz D. and Devillers B. analysed the impact of different relay operating modes on system throughput and proposed an optimal power allocation scheme, where the energy of source node was limited and the energy of relay node was collected for power supply. Then the authors in [14] studied the classic threenode Gaussian relay channel with decode and forward (DF) relaying, in which the source and relay nodes transmitted with power drawn from energy-harvesting (EH) sources. However, in some cases, the energy being harvested may not be sufficient to meet current energy needs, it is necessary to share energy between nodes. Therefore, energy cooperation is proposed in energyharvesting communication systems. In [15], for a two-way relay network where the relay harvested much more energy than the source nodes and shared energy with the two source nodes. Similarly, it was proposed that both the source node and the relay node could collect energy from the surrounding environment, and the relay node transmitted energy to the source node while sending data to the destination node [16]. Besides, the source node was considered to transmit energy to the relay node in some relay networks. As in [17], the authors focused on the energy consumption for data transmission and studied the optimising problem where the source could transfer energy to the relay in a two-hop relay network.
In addition, to extend the lifetime of wireless sensor networks, Amin proposed an energy collection scheme based on [18], which used a mobile car to collect data from the cluster head. The cluster head was selected by a weight function that took into account the remaining energy [19]. This method does indeed increase the life of the network , but this consumes the power of the car, more seriously, there are some sensor nodes that are difficult to be reached by mobile trolleys.
In this paper, in contrast to the above mentioned schemes, we combine energy harvesting with energy cooperation where all of the relay nodes are able to harvest and transmit energy to each other. The candidate relay is selected by the K-medoids algorithm. Furthermore, the number of data packets sent by relay nodes and the expression of the energy status of the battery are derived corresponding to the proposed relay selection algorithm.
The rest of the paper is organised as follows. We introduce the system model and the energy-harvesting model in Section 2. In Section 3, we present the relay selection algorithm with energy cooperation, and we analyse the number of data packets sent for each relay selection scheme. Simulation results are presented in Section 4, followed by our conclusions in Section 5.

SYSTEM MODEL
In this section, we will introduce the system model and the energy harvest model of relay node.

Relay network model
The system model for communication is illustrated in Figure 1, where a source node communicates with a destination node, with the help of a set of relay nodes R i (i = 1, 2, … , N ), whose locations follow a Poisson point process (PPP) of density . N denotes the number of the relays and the radius of the relay network is set to . Then, we assume that there is no direct link between the source node and the destination node due to long distance or obstacle.

The method of relay work
Here, all relay nodes are equipped with dual antennas. Specially, one is used for data transmission, and the other is used to send or receive energy. For data communication, since relay nodes have half-duplex capabilities, the communication process is divided into two orthogonal time slots. In the first time slot, the source node sends signal to the relay node, and in the second time slot, the relay node decodes the signal and forwards it to the destination node. For energy transmission, we divide the relay nodes into three categories: communication relay nodes, candidate relay nodes and ordinary nodes. Communication relay nodes harvest energy from the surrounding environment while communicating, and it is worth noting that candidate relays not only harvest energy from the environment but also collect energy from ordinary nodes. Then ordinary nodes harvest energy from the environment and transmit energy to the candidate relay. At the same time, the energy of the source node and the destination node is always sufficient.

Energy-harvesting model
In this paper, we assume the wireless sensor network is an energy heterogeneous network, and the initial energy of each node is set to E 0 × (1 + a × r ), where r means a uniformly distributed random number in the interval [0,1], a denotes constant that ranges from 0 to 1, and E 0 represents the lower energy bound for each relay node. Specifically, we assume that relay nodes have adaptive energyharvesting capability. That is, when the energy of the node is not enough to work, the node will use the energy it is harvesting. If the battery of node has sufficient energy, the collected energy would be stored for future use. We assume that the battery capacity of each relay node is large enough to store the harvested energy.
In general, we consider each relay node has the same ability to harvest energy. While, in the practical scenario, the collectable solar energy often dynamically changes due to the adverse impact from time, the geographical location of the sensor nodes, and the weather conditions. However, for each time slot we can predict the amount of energy collected according to the historical data from sensor node and the situation of the day. So, during the kth time slot, the harvested energy at the ith relay node can be written as [18]: where H c i [k] is the amount of energy which ith relay harvest during the kth time slot of the previous day, and denotes the weighting factor, which ranges from 0 to 1.

RELAY SELECTION ALGORITHM
In this section, we discuss relay selection scheme with energy cooperation. Specifically, there are usually two switching methods of the relay node. One is based on time switching and the other is based on energy switching [20]. However, the time switching mechanism is easy to cause certain packet loss rate during the data transmission, and the flexibility is not enough. It is not practical to make changes according to the instantaneous state of the network. Hence, in this section, a relay selection scheme with energy cooperation based on energy switching are proposed. For comparison with the proposed scheme, we introduce the traditional relay selection (TRS) scheme first.

Traditional relay selection without energy cooperation
The TRS does not require the location of the relay node but depends on the battery energy status, and selects the relay node i with the maximum energy. Thus, the relay in each round of communication will be at a random position in the network. And the channel is assumed to be AWGN channel [21]. When the relay node sends a data package on transmission distance of d i , the energy consumed is represented as where L is the size of the message in bits, E elce denotes the energy consumption by the radio transceiver for transmitting bit data, and E fs is the energy consumed by the radio amplifier [22]. The energy consumed during the receiving unit data packet is equal to where E rx is the receiving energy consumption by the radio transceiver. Combined with Equation (1) for predicted energy, we can know the energy state of the relay node after sending unit data packet is expressed by: where T is the time of need that relay send a data packet. Then, energy status of other relay nodes is given by where j = 1, 2, … , N but j ≠ i.
Here, the threshold value is equal to the sum of the energy consumed by the received and the transmitted unit data packet, that is, E threshold = E send + E receive . Thus, if E i ⩾ E threshold , the relay node is in communication state and forwards data to destination node, until E i < E threshold , relay node will sleep. Then the total number of packets sent by the relay node i is equal to NU M i : where ⌊X ⌋ is the largest integer not greater than X .
When the relay node i is communicating, the energy status of the nodes in the network are as follow where j = 1, 2, … , N but j ≠ i. When the node has no ability to communicate, the next relay node is selected. Before the relay node switches, according to energy states all relay nodes are sorted in the relay networks by (7) and (8). The source node selects the node with the largest energy value to forward data. We can know the source node continuously switches the communication relay according to the energy state of the relay node. Once the maximum energy of all nodes in the network is less than E threshold , the source node will terminate communication.
That is, even if the relay node of the entire network has energy, it does not work under this scheme, then we think the lifetime of network is over.

Energy cooperation relay selection
The energy cooperation relay selection (ECRS) requires feedback about the location of the relay node and the battery status, since source node sending data to destination node needs two time slots. Specifically, in the first time slot, the source node selects two relay nodes at the same time. One high-energy relay node i directly participates in communication, and the other node c as a candidate relay. When a data packet is transmitted, all nodes are harvesting energy. Except the communication relay, each ordinary relay node will transmit a certain amount of energy to the candidate relay node, the energy of candidate node as shown in Figure 2. In addition, when the energy of the communication relay node is lower than the threshold, the candidate relay is converted into a communication relay, then a new candidate relay will be selected. The choice of candidate relays should take into account the consumption of energy transmission paths. As the transmission distance increases, the energy loss of the transmission path becomes larger and larger, resulting in a gradual decrease in the efficiency of energy transfer. In this paper, we define the efficiency of energy transfer , satisfying 0 ≤ ≤ 1.
To reduce loss, the best choice for candidate relay is the center point of the network. We consider when there are noises and outliers in the data, the traditional K-medoids algorithm has good robustness. Therefore, we apply the clustering algorithm K-medoids which uses an object closest to the center of the cluster to represent the cluster and is suitable for small data volumes [23]. Here, all relay nodes in circular network can be treated as a cluster, a central point where the sum of the distances from other points is the smallest can be selected by the clustering algorithm K-medoids.
The single cluster K-medoids algorithm is described as follows.
Step 1 In the network, we randomly select a node x or as cluster head, and we calculate E (x or ) through cost function by Equation (9), we set n = 0 first, where n represents the number of executions of step 2.
Step 2 We randomly select one of the other nodes x j ( j ∈ N but j ≠ or, i.e., a node can only be selected once) as a member node, and calculate the cost E (x j ) after x j replaces cluster head x or again, then n = n + 1.
Step 3 If the E (x j ) less than E (x or ), the member node x j will as cluster head and the algorithm ends. Otherwise, when n < N − 1, perform the step 2. When n = N − 1, x or as cluster head and the algorithm ends.
Finally, the point corresponding to the smallest cost is selected as the cluster head, that is, the candidate relay.
If the relay does not work, the candidate relay will become the communicate relay. At this time, the number of data packets sent by the communication node in the network can be obtained by Equation (6), and the energy state of the communication node is calculated by Equation (7), the other node energy states are given as where j = 1, 2, … , N , E c denotes the energy state of the candidate relay, E tr j is the energy by node j send to candidate relay, and is set to a fixed value in the initial phase. During the transmission, if the energy value of the node j is lower than the fixed value, the node will transmit E j to candidate relay. Then when E j = 0, the relay node j dies. The candidate relay becomes a communication relay, and the next candidate relay is obtained by using K-medoids algorithm, and the above steps are repeated until the total energy of the network is lower E threshold , and the network stops communicating. The relay selection algorithm is described in Figure 3. Compared with the TRS algorithm, the relay selection of energy cooperation makes the nodes in communication to get more energy, so it also reduces the switching frequency of relay node.

SIMULATION AND DISCUSSION
In this section, simulation results are presented to demonstrate the system performance of the proposed relay selection strategy. The energy-harvesting efficiency is set to be 0.6 [19]. The length of all data packets is the same which is 320 bits. The data transfer rate is set to 1 Mb/s. E elce = 0.28mJ, and the E rx = 0.121mJ. For the amplifier E fs = 10pJ/bit/m 4 [22]. In this paper, 50 simulations are done in order to contrast performance between TRS, ECRS and RED_LEACH [20], the number of data packets is presented in Figure 4a-c. When the number of data packets changes, it means that the network is working, otherwise, it states that the life of the network is already 0. For Figure 4a-c, simulation environment is shown Figure 5a. Figure 4a shows the number of data packets when the network with low initial energy E 0 = 70mJ, in this case, the energy of each node in the network is lower than the E threshold . Hence, the nodes cannot sent data packets directly. It is clearly shown that as the runtime of network increases, the number of data packets which are successfully sent under the ECRS algorithm becomes stable after growing. However, for TRS algorithm, it is necessary to wait for a period of runtime (1.639 ms in this case) before starting to transmit data packets, which is because the nodes have insufficient energy and have to harvest energy until threshold is reached. More obviously, for the RED_LEACH, the authors failed to take the energy harvesting into account for relay nodes, the node cannot sent data. In this figure, we observe that ECRS curve is always above TRS curve at the same moment, which demonstrates that ECRS has better performance than others and the candidate relay is able to extend the lifetime.
The simulation results of the communication situation when E 0 = 100mJ and E 0 = 140mJ are depicted in Figure 4b,c, respectively. In Figure 4b, as can be seen, when the running time increases, data packets grow simultaneously under three algorithms. But the number of data packets which are sent under the ECRS algorithm is obviously more than that under the TRS and the RED_LEACH. This means that, as the the number of data packets increases, relay nodes that can communicate will run out of energy, and in the process, although other nodes have been harvesting energy, the energy value of the nodes has not reached the communication threshold, in this case only energy cooperation can keep the network active. Then, it is worth noting that the network lifetime of RED_LEACH is shortest, which is because not every node's energy can be used (In [20], the selection of cluster head has a certain randomness, and the relay nodes cannot harvest energy and transfer energy).
Moreover, in Figure 4c, we set E 0 = 140mJ, it can be analysed that the energy of each relay node is more than E threshold and nodes can communicate as long as they are selected. Compared with Figure 4b, the performance of RED_LEACH is better. And we can see that the TRS survives significantly longer than ECRS, the reason is that the initial energy of the network is large enough that the network communicates by itself for a long time and relay nodes collect a lot of energy. Compared to TRS, ECRS adopts energy cooperation by transmitting the energy to candidate relay, in which the energy is more lost during the transmission process when the node energy is large enough. Thus, relay network with high initial energy is not suitable for applying energy transmission technology.
Here, we consider another energy heterogeneous wireless sensor network, only the initialisation conditions of the node energy are changed, the energy of the nodes with a radius smaller than r is initialised to E h (high energy), and the energy of the remaining relay nodes is set to E l (low energy), as it can be seen in Figure 5b. In this case, 50 simulations are also done in order to contrast performance between TRS and ECRS. Figure 6a,b illustrates the comparison results of TRS with ECRS. As the total of initial energy increases, more data packets are forwarded by relay node. When the initial total energy of the network is lower than 2200 mJ, the network lifetime of the ECRS algorithm is obviously above the TRS. Whereas in Figure 6a, when the initial total energy of the network is higher than 2200 mJ, in this case, where E h = 200mJ, E l = 50mJ the simulation results become instable, and the TRS scheme outperforms the ECRS algorithm with a greater probability. In this situation TRS is lower than ECRS which is because even though the initial total energy of the network is high, most relay nodes are in area II and the initial energy of relay is too low resulting in the shorter network lifetime. The ECRS scheme can improve the system performance and extend the lifetime of the network while the network energy is relatively low.
From the above analysis, we can see that our results have demonstrated that the ECRS algorithm proposed in this paper is more suitable for low-energy relay networks situations.

CONCLUSION
In this paper, we study a relay network in which all relay nodes have the ability to cooperate with each other. We assume that the location of relay nodes obeys the PPP, and the relay nodes have adaptive energy-harvesting technology, which can harvest energy from the surrounding environment and determine to use or store it according to the current state of node battery. Based on a one-way relay network topology, a relay selection algorithm with energy cooperation is proposed. The simulation results show that when the total network energy is low, although the energy is lost during transmission, the number of data packets sent by relay under the ECRS algorithm is higher than the TRS. Simultaneously, the ECRS algorithm can reduce the frequency of relay node switching.