Space-correlation-based joint data transmission and on-demand charging for rechargeable wireless sensor networks

It is of great importance to power the nodes of the rechargeable wireless sensor network to detect events continuously in the area of interest. This paper proposes a joint data transmission and on-demand charging algorithm based on the space correlation. The new algorithm optimises the event detection, data forwarding and node charging jointly to improve the charging efﬁciency. First, the active nodes participating in the event detection are selected using an improved iterative node selection method to reduce the number of nodes working concurrently. Then, the greedy data transmission scheme based on grid partition is proposed to transmit the observed data to the sink node. Finally, the nodes in the networks are charged using the on-demand charging method based on grid partition, which greatly decreases the charging frequency and energy loss of the mobile charger. The simulation results demonstrate that the proposed method has superior performance in the distance travelled by the mobile charger, the energy utilisation, the average energy consumption of the mobile charger and the node charging latency.

nodes [8]. Ren et al. studied the multi-event detection with rechargeable sensors and gave an energy distribution strategy to make all sensors work collaboratively [3]. Abas et al. designed a solar-powered wireless smart camera network, which can be deployed and left unattended for extended periods without requiring frequent battery replacement [9]. To prolong the operating lifetime of the drone-based RWSN for disaster monitoring, Calvo et al. proposed a new wireless charging method to maximise the harvested energy [10].
The deployed nodes are usually more than current needs due to the following facts: 1. Some nodes may be malfunctional or damaged under some conditions. Redundant deployment of nodes can enable the RWSN work continuously. 2. It is of great importance to observe the interested area with more nodes when a special event occurs. To this end, there must be some alternative nodes, which can be activated under such conditions. 3. The RWSN nodes may be deployed by a unmanned aerial vehicle randomly, which will also result in redundancy of nodes.
These facts produce the following two important features for an RWSN.
1. Since the event observation is performed by multiple nodes located at different locations, the observation results of these nodes are usually spatial correlated [11], which makes it possible to use part of the nodes participating in the observation to meet the requirements of the event detection, and other nodes can actively enter sleep state to save energy. A node that actively enters sleep state is called an active sleep node. 2. If an event detection node or a data forwarding node is forced to sleep due to insufficient energy, the active sleep node can be woken up in time to replace the role [12].
Since there are alternate nodes to undertake its task, it is not necessary to immediately schedule the mobile charger (MC) to charge the forced sleep node (also called passive node). Instead, they are uniformly charged when the number of nodes that need to be charged reaches a threshold, thereby reducing the MC scheduling frequency and improving the charging performance.
Utilising the spatial correlation reduces not only the number of nodes participating in observation, but also the MC scheduling frequency. Considering the interdependency of mobile charging scheduling, sensor charging splitting and rate control with battery capacity constraint, Zhao et al. formulated a joint optimisation problem and developed a multi-stage approach to jointly optimise the problem iteratively [13]. Sha et al. assigned nodes into groups according to remaining lifetime to recharge nodes with lower residual energy [14]. To balance the energy consumption among different MCs, a cost-balance mobile energy replenishment method was proposed, which took the moving distance and the power cost of MCs as constraints. However, charging requests have unbalanced effect of spatiotemporal constraints [15]. Wang et al. also investigated the energy waste of redundant nodes and developed a K-covering redundant node sleeping scheduling algorithm to reduce energy [16].
However, there is currently no report on how to use the spatial correlation and network partition to improve the ondemand charging efficiency of an RWSN. It is advisable to jointly optimise event detection, data forwarding and node charging to improve the overall charging efficiency of the network under the requirement of the event detection rate.
The main contributions of this paper are summarised as follows.

A Space-Correlation-based data Transmission and on-
Demand wireless charging for event-detection-oriented RWSN, called SCTD-Charging for briefly, is proposed to improve the charging performance. 2. To implement the SCTD-Charging, an improved iterative node selection (INS) method is designed to choose active nodes, and a windowed dynamic estimation algorithm for the energy consumption rate of grids is proposed to help nodes sending charging request. The rest of this paper is organised as follows. Section 2 presents the system model of the RWSN for event detection. Section 3 states the event correlation and the improved INS method to choose active nodes. Section 4 gives out the grid partition method of an RWSN and the greedy data transmission algorithm. Section 5 puts forward the on-demand charging method and the estimation schema of energy consumption rate of nodes. Section 6 evaluates the performance of the proposed charging method through simulations. Finally, Section 7 concludes this paper.

SYSTEM MODEL
Assuming that there are N tot rechargeable nodes deployed in the RWSN for the event detection, and they are static after deployment. There are one or more MCs in the network for charging the nodes, and a stationary charger (SC) for charging the MCs. Each node has two power thresholdsE th1 and E th2 , called charging threshold and sleep threshold, respectively. The battery capacity and remaining power of node i are denoted as E i and E i re , respectively. There is a sink node in the network, which is used to send observation instructions to nodes and receive observation results from nodes.
The nodes can be divided into four categories according to residual power (see Figure 1): (1) full power node: the battery is fully charged; (2) normal power node: when E i > E i re > E th1 , a node can perform the event detection or data forwarding normally; (3) need-to-be-charged node: ifE th2 < E i re ≤ E th1 , the node needs to be charged to ensure the continuous operation; and (4) passive sleep node: ifE i re ≤ E th2 , the node is forced to enter sleep state because of insufficient power. Note that a passive sleep node cannot be woken up unless it is recharged by an MC, while an active sleep node can be woken up as needed.
When a node needs to be charged, a "charging request message" is broadcasted to the network in the format of ⟨I D i , cl u j , t i , typ=2, urg = 1, pri, txt ⟩, where I D i is the node identifier that needs to be charged. An MC usually stores the mapping relations between node IDs and node positions, so the node coordinates (x i , y i ) can be obtained from I D i . cl u j is the cluster or grid where the node is located, and the construction of the cluster and the grid will be described later; t i is the time when the message is sent; typ is the node type: numbers 0-3 indicate full power node, normal power node, need-to-be-charged node and passive sleep node. urg indicates the urgency of the message; urg = 0 indicates that the message is a normal message, while urg = 1 indicates that the message is an emergency message, and the emergency message needs to be transmitted preferentially; pri is a positive integer, indicating the node charging priority; the larger the value of pri, the higher the priority. If it is needed to send other content in the "charging request message", fill it in the txt field; otherwise, set it to 0.
When the grid-based data transmission and on-demand charging strategy is applied (discussed later), some of these parameters will have different meanings:I D i should be set as the ID of the grid or the cluster to be charged, urg indicates whether the priority transmission is required when the network transmits a message and pri indicates in what order the MC charges the grids after receiving charging messages.
When a node's power is close to the sleep threshold E th2 , a "passive sleep message" in the format of ⟨I D i , Cl u j , t i , typ=3, urg = 1, pri, txt ⟩will be broadcasted to the cluster where the node is located. The meaning of each parameter in the message is the same as the "charging request message". After sending the "passive sleep message", the node enters sleep state and waits for charging.

SELECTION OF ACTIVE NODES
The main task of the RWSN for the event detection is to observe the interested events of the monitoring area through a group of nodes, so that the successful rate of event detection meets the reliability requirements. Due to the existence of spatial correlation, it is possible to keep some nodes in sleep mode and choose active nodes to cover all targets and detect possible events [17]. The correct selection of active nodes is the key to reducing energy consumption under the premise of meeting the event detection rate. Here, an active node selection method called improved INS is proposed based on event correlation.

Expression of event correlation
The higher the correlation of events detected by different nodes, the fewer the active nodes are needed. The data X i [n] observed by node i located at (x i , y i ) at time t = t n can be expressed as [18,19] where S i is an event message, which is modelled as a joint Gaussian random variable with zero mean and variance 2 S ; N i is observation noise, which is an independent homogenous Gaussian random variable with zero mean and variance 2 N . The result of the event observation is transmitted to the sink node in a non-encoded manner, and the received signal can be expressed as where P E is the encoding power constraint. The sink node uses the minimum mean squared error to estimate the detected event information S i . The estimated result is There is some distortion between the estimated value and the event itself. However, the distortion can be less significant than the distortion tolerance D max by utilising the spatial correlation of the observation results of multiple nodes. In fact, in addition to the spatial correlation, the data collected by the same node at different times is also correlated (called time correlation). The time correlation means that the data acquisition frequency can be reduced [15][16][17], further reducing the energy consumption of the node. However, too low acquisition frequency may result in the inability to detect the transient events. This paper only considers spatial correlation.
The distortion detection model proposed in [19] is used to characterise the event detection rate. The expression is where D(m) is the degree of distortion when the number of active nodes is m; (s,i ) is the correlation coefficient between event source S and node i; (i, j ) is the correlation coefficient between node i and node j, where i,j = 1,2,…,m and [19,21] where d (i, j ) represents the distance between node i and node j, d (s,i ) represents the distance between the event source and node i and is the distance parameter used to control the attenuation speed of (i, j ) and (s,i ) with the distance.

D(m)<D max
Reduce candidates number m auxiliary active nodes are selected Construct m detection clusters with the auxiliary active nodes as centers and the correlation radii as their radii The node with highest remaining energy in each cluster is selected as the real active node Yes No

Construct event detection clusters and select active nodes
The problem of choosing active nodes is known to be NP-hard. Dai et al. studied two closely related issues [23]: the selection method of charging sensors and the determination method of charging time. Then, a joint charging and scheduling schema was designed to maximise the quality of monitoring for stochastic events. This paper proposes an improved INS algorithm (see Figure 2) to choose active nodes based on the previous study [19].
It can be seen from formula (5) that the larger the distance between the two active nodes (d (i, j ) ), the smaller (i, j ) is. According to (4), the distortion will be smaller. Similarly, the smaller the distance between the active node and the event source (d (s,i ) ), the larger (s,i ) is, which makes the distortion of the event detection smaller. Therefore, when selecting active nodes, it is better to choose the nodes close to the event source, and these nodes should be scattered as much as possible in space.
First, the location of the event (x s , y s ) is be determined by using any event source location algorithm. Then, with (x s , y s ) as the center, the nodes located in the range of the effective detection range R det of the event and having remaining energy greater than E th2 are selected as the candidate nodes. The value of R det is closely related to the type of event and, specifically, related to the signal propagation distance of the event. For example, the propagation distances of a vibration signal and an odor signal are greatly different.
After that, the degree of distortion is calculated using Equation (4). If the distortion degree is smaller than the distortion tolerance, the number of active nodes is reduced, and the positions of the active nodes are determined by the vector quantisation. Then, (i, j ) and (

FIGURE 3
Construct detection clusters and select detecting nodes nodes, and then, the new distortion degree is calculated to check if it is less than the distortion tolerance. The above process is repeated until the distortion degree is greater than or equal to the distortion tolerance. At this moment, the m active nodes Node Active as the center and R cor as the radius, where R cor is the correlation radius, which is equivalent d (i, j ) in Equation (5); R com is the communication distance of the node, generally up to 100 m. To effectively detect the interested events, R cor < R com < R det is required (see Figure 3). Since the observation results of the nodes in a detection cluster have feature of spatial correlation, the nodes in a cluster are also called correlation nodes, and the circle covering the detection cluster is called correlation circle. For any detection cluster cl u i , the node with highest energy is selected as the real Node Active i , and the active node selected for constructing the detection cluster is, therefore, called auxiliary active node.

GREEDY DATA TRANSMISSION BASED ON GRID PARTITION
The event information collected by active nodes needs to be transmitted to the sink node. Here, a method of greedy data transmission is proposed based on grid partition, which only allows data to be forwarded to adjacent grids and preferentially selects non-event detection nodes as relay nodes, to avoid affecting the event detection and save the energy of event detection nodes as much as possible.

Grid partition
Each detection cluster (the black dashed circle of Figure 3) is regarded as a super node with coordinates at the center of the cluster. The lower left corner of the network is defined as the origin of the coordinates, and the positive directions of the horizontal and vertical axes are horizontal to right and vertical to up. The entire network is divided into a series of grids (see To reliably transfer the data from a grid to an adjacent grid, three parameters, namely, side length of the grid d grid , the correlation radius R cor and the communication radius R com , should meet a constraint condition. Since the detection cluster is regarded as a super node and the center of the cluster is regarded as the position of the super node, the maximum distance of the actual active nodes of the two adjacent grids should be as follows: the super node is located at the vertex of the diagonal (see Figure 5), while the actual active node within the super node is located at the farthest end of the correlation circle. In order to communicate with each other between the two farthest nodes, the distance between the two nodes must be less than or equal to R com . Therefore, d grid , R cor and R com should satisfy the following relationship:  The greedy data transmission based on grid partition Therefore, d grid should be satisfied the following formula when dividing the network into grids: It is noteworthy that Formula (7) gives the lower bound of d grid by considering the existence of a super node in a grid, and it does not mean that each grid must have a super node.

Greedy data transmission based on grid partition
Whether the node located in grid i, j is a super node or a normal node, the first option is to forward the data to the neighbour grid closer to the sink node, which is called forward neighbour grid, that is, the right-side neighbour grid grid i, j +1 in Figure 4. If there is a detection cluster in the forward neighbour grid, the non-detection cluster node is preferentially selected as the data relay node. Therefore, it is determined by whether there is a feasible node in the non-detected cluster node (the node with the remaining energy greater than E th2 ), and if so, the node with the highest remaining energy is selected as the next hop; if not, a feasible node with the highest remaining energy in the detection cluster is selected as the next hop.
If there is no feasible node in the forward neighbour grid, the vertical neighbour in the current grid is selected, that is, the upper side or the lower side neighbour in Figure 4. Without loss of generality, the node in the upper neighbour grid grid i+1, j is considered first. If there is still no feasible node in the upper neighbour grid, the lower neighbour grid grid i−1, j is examined. If the lower neighbour grid still has no feasible node, the forwarding fails (refer to Figure 6). The forward neighbour grid, the upper neighbour grid and the lower neighbour grid are all

Effective grid
Invalid grid

FIGURE 7
The simplified graph of the greedy data transmission based on grid partition referred to as potential forwarding grids. The potential forwarding grids with the feasible nodes are called feasible neighbour grids.

ON-DEMAND CHARGING OF RWSN NODES
Whether it is the event detection node or the data forwarding node, the battery energy is continuously consumed during the operation. In the grid partition of the network, each detection cluster has been regarded as a super node, so the detection cluster is a member node of the grid. In view of this, the on-demand charging method of the RWSN node is studied from the perspective of grid charging.

On-demand charging strategy for RWSN nodes
In the greedy data transmission based on the grid partition, the next hop node can be found if the current grid has a feasible neighbour grid, and this condition is called data forwarding condition hereafter. To successfully detect the event and forward the detected information, it is necessary to detect in advance whether the grid in the network satisfies the data forwarding condition and predicts the remaining working time of the feasible neighbour grids, so as to notify the MC to charge the node in the grid in time. Therefore, all nodes in the grid can be regarded as a whole, and the data forwarding process is studied using grid as a unit, as shown in Figure 7. As long as there is a feasible node with the remaining energy greater than E th2 in the grid, the grid can forward data, which is called an effective grid, otherwise invalid grid.
In the case that the nodes are working normally, there may be multiple paths between the detecting node and the sink node. However, some grids may become invalid grids with the energy consumption, and the communication paths gradually reduce. If there is only one communication path, the path is called unique connected path. For a unique connected path, at least one grid on the path has only one feasible neighbour grid, and the grid is called a bottleneck grid.
Let g(i) be the state of grid i and (i ) be its time interval of charging request. A grid has three states [24] g (i ) = ⎧ ⎪ ⎨ ⎪ ⎩ 0, Effective grid 1, Invalid grid 2, Bottoleneck grid.
The objective of our charging scheme is to jointly maximise the number of valid grid and minimise the total charging frequency of MCs. Obviously, maximising the number of valid grids is equivalent to minimising g(i), and minimising the charging frequency of MCs can be thought as maximising the time interval of charging request. Assume that N, g N and N are the total grid number, valid grid number and total time interval of charging requests between two consecutive charging rounds, respectively; then, the objective function can be formalised as Equation (10) describes that any hop of the path from a detection grid to the sink node must have at least one valid grid, where N E Path (i ) is the valid grid number of the i'th hop and N path is the hop count of the path. Formula (11) means that the detection grid cannot be invalid grid to ensure the event detection.
It is very hard to solve the objective function directly. Here, we present a heuristic method. The arising of a bottleneck grid will trigger the charging request as follows (see Figure 8).
1. If there is only one node in the bottleneck grid, the following steps are used: a. The bottleneck grid broadcasts a "charging request message", requesting the MC to charge the nodes in the bottleneck grid. b. Determine the previous hop grid of the bottleneck grid (called grid pre for briefly). If grid pre is also a bottleneck grid, the next step used to determine the alternative grid is skipped. c. Determine the feasible neighbour grid of the grid pre in addition to the bottleneck grid as an alternative grid. d. If the bottleneck grid fails, the alternative grid is selected as the next hop grid. In this way, the charging of bottleneck grid and the determination of the alternative grid a. The available working time T 1 of the grid is estimated by any alive node of the grid through the windowed dynamic estimation algorithm of the grid energy consumption rate, which will be presented in Section 5.2. b. It is noteworthy that the MC can determine its coordinates through GPS and then transmits its coordinates to the intended node when the MC receives a coordinates request. So, the time T 2 for the MC to reach the grid can be calculated. c. If T 1 − T 2 ≤ T th , the "charging request message" is immediately broadcasted, requesting the MC to charge all the nodes in the grid, where T th is a pre-set threshold.
If there is not a bottleneck grid in the network, the charging request will be triggered as follows.
1. If there is a detection cluster in the grid, the detection cluster calculates its own remaining working time T 1 and the time T 2 for the MC to reach the cluster. If T 1 − T 2 ≤ T th , the "charging request message" is broadcasted by the detection cluster. 2. If there is no detection cluster in the grid and T 1 − T 2 ≤ T th , the "charging request message" is broadcasted by the grid.
The difference of these two cases is who should broadcast the "charging request message". If there is no detection cluster in a grid, these two cases have no difference. Otherwise, it is the detection cluster that broadcasts the request. The detection cluster is given a higher priority to ensure the continuity of the event detection. More specifically, the priority of a grid is set based on the following rules: 1) the users of the RWSN system set priorities according to monitoring demands and 2) the priorities set by users can be changed automatically during the process of the event detection and data transmission. Generally speaking, the priority of grid with detection cluster is higher than other grids to ensure the event detection, and the priority of a grid with fewer nodes is higher than grids with more nodes to protect the fragile grid from starving to death.
Each MC maintains a "charging request message" queue. Whenever a charging task for detection cluster or grid is completed, the corresponding "charging request message" is deleted from the queue.
The MC charges the network according to the following strategy.
1. Check the "charging request messages" in the queue and extract their priority information; then, charge the grids according to priority levels, which is referred to as higher priority charging first. 2. If the priority levels of "charging request messages" sent by different grids are the same, the grid closer to the MC is selected as the charging object, which is referred to as shorter distance charging first. 3. If the priority levels are the same and the distances between the grids sending the messages and the MC are similar, the grids are charged according to the order the messages sent, which is referred to as earlier request charging first.
The MC performing the charging task must reserve a part of the power so that the MC can return to the SC to charge itself. Thus, the MC needs to evaluate the amount of power E MS returning to the SC in real time. If the difference between the remaining power of the MC E MC re and E MS is less than or equal to the pre-set threshold E th3 , that is, E MC re − E MS ≤ E th3 , the charging is stopped immediately. At the same time, the "return message" ⟨I D i , t i , urg = 1, txt ⟩ is sent to the SC, telling the SC that it is about to return, where I D i is the identifier number of the MC, and the txt field is filled with all the uncompleted charging tasks. The meanings of other fields are the same as the corresponding fields of the "charging request message". To ensure continuous charging of the network, the SC must be equipped with at least one alternative MC. Upon receiving the "return message" of the current MC, the SC immediately hands over the incomplete charging task to the alternate MC and schedules it to perform the unfinished charging task.
It can be seen that both the detecting node and the forwarding node aggregate the nodes with geographical proximity: in the event detection area, the number of nodes participating in the observation is reduced by the spatial correlation; in the message forwarding area, the number of forwarding nodes is reduced by the manner of grid partition. The reduction of node number means the reduction of energy consumption, which reduces the need for charging. It is noteworthy that although it is the active node in the detecting cluster or grid that implements the task when we say a detecting cluster or grid broadcasts a request, the MC charges all the nodes in the detecting cluster once it arrives at the grid. Similarly, when the forwarding node requests charging, the MC charges all the nodes in the grid. Thereby, the charging efficiency of the MC is improved greatly.

Dynamic estimation of grid energy consumption rate
In the on-demand charging strategy of RWSN nodes, it is necessary to dynamically know the remaining energy of the grid and calculate the time that the grid can serve according to the energy consumption rate, thereby predicting the moment at which the "charging request message" is sent. Based on [6], a windowed dynamic estimation algorithm for the energy consumption rate is proposed, as shown in Figure 9.
To estimate the energy consumption rate of the grid, the member nodes of the grid need to exchange "energy messages" periodically (assuming that the period is Δ) to inform other member nodes of the remaining energy. From the process of grid partitioning, we know that the member nodes are located within the communication range of each other, so the message sent by the other nodes can be received. In order to ensure the accuracy of the grid energy consumption rate estimation, n energy interaction packets received recently are used for calculation, and n is called the energy estimation window. Starting from the initial time (time 0), each member node of a grid broadcasts an energy message in a time division multiplexing manner. When the active node receives the messages from all other member nodes, its own remaining energy is added to the sum of remaining energy of other nodes to obtain the total energy of the grid at the initial time, which is noted as E r i,0 . The same method is used to obtain the total grid energy E r i,1 at time Δ.

Start estimating
Calculate the initial energy consumption rate of the detection cluster with Eq. (8) Exist super node?
Calculate the dynamic energy consumption rate of the detection cluster with Eq.(9) and Eq. (10) Set the timer as t=0 Finished a round of charging

Yes No
Calculate the initial energy consumption rate of the grid with Eq. (8) Calculate the dynamic energy consumption rate of the grid with Eq.(9) and Eq. (10) Finished a round of charging Yes No

FIGURE 9
The windowed dynamic estimation of the grid energy consumption rate Then, the initial grid energy consumption rate is estimated as follows: where r i,1 is the real-time value of the energy consumption of the grid i, N grid is the total number of grids in the network and E r i,0 and E r i,1 are the total energy of the grid at the initial time and at the Δ time, respectively.
When the number of energy messages exchanged between the nodes is less than or equal to the window n, the dynamic grid energy consumption rate R i, j is iteratively solved by (9) according to the information of all the energy interaction packets where R i, j −1 represents the latest energy consumption rate of the grid i; r i, j = (E r i, j −1 − E r i, j )∕Δ is the real-time value of the energy consumption of the grid i.
When the number of "energy messages" exchanged between the nodes is greater than window n, the energy consumption rate R i, j is iteratively solved by (10) using the latest n "energy messages" received recently The energy consumption rate of the grid can be iteratively obtained by using Equations (9) and (10). The initial value of the iteration is calculated by (8). When use this estimation method, the following issues need to be noted.
1. In order to ensure the accuracy of the calculation, the time is reset to 0 at the completion of each round of charging. 2. The passive sleep nodes cannot send messages, so their remaining energy is not counted into the total grid energy. This is reasonable since the passive sleep nodes are nodes forced powered off due to insufficient energy, and their remaining energy has no contribution to event detection or data forwarding. 3. The active sleep nodes are alternate resources of the grid, and they must send an "energy message" before sleeping to count their remaining energy into the total grid energy. That is to say, E r i,1 of Equation (8), and E r i, j and E r i, j −1 used to calculate r i, j of Equations (9) and (10) need to include the remaining power of the active sleep nodes. 4. The normal operation of detecting clusters is the premise for the successful event detection, so the detection cluster should be given a higher charging priority. Since a detection cluster can be regarded as a super node, the energy consumption rate inside a super node should be calculated first if there is a super node in the grid, and then, the energy consumption rate of other nodes in the grid is calculated. 5. Some messages must be exchanged in the calculation of the remaining energy consumption rate, which will produce communication and energy cost. To decrease the energy cost, the exchange period Δ cannot be too small. It also cannot be too large to reflect the actual energy consumption speed. However, the energy cost of the message exchange for the energy consumption rate calculation is trivial compared with the normal work of the RWSN, i.e. event detection and transmission. For this reason, we did not take it into consideration in this paper. This will not decrease the calculation accuracy of the energy consumption rate, since the calculation algorithm only considers the residual energy of nodes, without considering how the energy of the nodes is consumed (event detection, data forwarding or message swapping).
1. Event distortion: Figure 10 shows the effect of the number of active nodes on the distortion under different values of distance parameter of 10, 50, 100, 500, 1000, 5000 and 10,000. It can be seen that the event distortion decreases as the number of active nodes increases, which can be explained from Equations (4) and (5). However, when the number of active nodes reaches a certain value, the impact is no longer obvious. It means that further increasing the number of active nodes has little effect for improving the performance of event detection. 2. The travelled distance of MC: Figure 11 shows the effect of the number of nodes in the network on the moving distance of the MC. It can be seen that the travelled distance of the MC using anyone of the three algorithms grows when the

FIGURE 11
The travelled distance of MC under different node number number of nodes increases, but the travelled distance using KMEC-Charging is always the largest, because an MC will not charge any node until it arrives at the destination cluster and waste much energy during movement. OfWR-Charging can effectively shorten the moving distance compared to KMEC-Charging by using the Hamiltonian circle to find the nearest sensor to charge. SCTD-Charging has the shortest moving distance because the number of participating observation nodes is reduced by the spatial correlation. 3. Energy usage efficiency: The energy usage effectiveness (EUE) refers to the ratio of the charged power of nodes to the consumed power of the MC, defined as [27,28] EUE = E pl E pl + E oh (15) where E pl is the energy an MC transfers to a node and E oh is the energy loss in the charging process, including the energy consumption in movement (E oh m ) and the loss due to limited efficiency in charging (E oh c ). We note that E oh m consists of the energy consumed by the movement module and that consumed by other electronic modules of the MC, noted as E oh1 m and E oh2 m , respectively.
As can be seen from Figure 12(a), the EUE of the SCTD-Charging is much higher than that of the other two charging methods, because the space correlation reduces the node number participating in the event detection. Besides, the EUE of the OfWR-Charing increases as the number of nodes increases, because the increase of the node number will reduce the energy consumption of the MC moving back and forth in the network, that is, E oh decreases, thereby increasing the EUE. The EUE of the KEMC-Charging, however, sees few changes during this process, because KEMC-Charging always splits the whole network into the same number of clusters and an MC goes to every cluster to charge, which make the moving distance of the MC remain almost unchanged. Figure 12(b) shows that EUE is positively correlated with the moving speed of the MC. The reason is that the energy consumption E oh1 m for the MC is the same to move the same distance, but the higher the speed is, the less the time takes, so that the energy E oh2 m consumed by other modules is smaller, thereby making the movement loss E oh m smaller. According to (11), when E pl does not change, the smaller E oh m is, the larger the EUE is.

Average energy consumption of MC:
The AEC of MC is taken as a performance index of the consumed energy by different algorithms. Assuming that the energy needed of a charging round of the network is E mc and the node number of the networks is N tot , then Figure 13 shows that the AEC of KEMC-Charging and OfWR-Charging are always the largest and the second, respectively, and SCTD-Charging is the smallest; the reason is the same as the explanation in the moving distance of MC. It can be seen from Figure 13 KEMC-Charging and SCTD-Charging is small, since both of them adopt sensor choice scheme and the energy needs of a cluster are proportional to the node number. The OfWR-Charging, however, uses Hamiltonian-circle-based path to charge nodes, which will lead to higher energy loss percentage when the number of nodes increases. Figure 13(b) shows that the higher the charging efficiency, the smaller the AEC, because in the same case, the higher charging efficiency means lower energy loss. 5. Node charging latency: The node charging latency refers to the waiting time from sending the charging request message to the time when the MC starts charging it. The node charging latency mainly includes the following: a. MC moving time: the time taking for the MC to move from the current location to the charging request node, denoted as t 1 ; b. queue waiting time: after receiving the charging request, the MC usually does not immediately go to the node to charge it, but charges the nodes along the way in the spe- cific order, so the charging request node must wait in line, thus introducing the queue waiting time, denoted as t 2 ; c. cut-in waiting time: during the process of the MC moving to the charging request node, if other nodes send a higher priority charging request, the charging requesting node must wait for the finish of that charging, denoted as t 3 .
Therefore, the node charging latency is Obviously, the faster the MC moves, the smaller t 1 is, so that the node charging delay is smaller, which is confirmed by Figure 14(a). However, when the moving speed of the MC is greater than 4 m/s, the moving speed of the MC has little effect on the node charging delay, and it is no longer significant to reduce the charging delay by increasing the moving speed of the MC. As can be seen from Figure 14(b), the higher the charging efficiency, the smaller the node charging delay, because the higher the charging efficiency, the less time is used to charge a node, hence t 2 and t 3 are reduced.
From Figure 14, one can also see that the latency of SCTD-Charging is much lower than that of KEMC-Charging and OfWR-Charging, since SCTD-Charging adopts the grid charging idea to charge all the nodes in the grid once reaching a grid, which greatly reduces t 2 and t 3 , thereby greatly reducing the charging delay.

CONCLUSION
Observation results of different nodes are strongly correlated. This paper proposes a joint data transmission and on-demand charging strategy for event detection. The number of nodes participating in observation is effectively reduced by using the proposed improved INS algorithm, and the energy consumption during data transmission, the movement loss during charging and the charging frequency are significantly reduced based on the idea of grid partition, which has superior performance in the travelled distance of the MC, the energy utilisation, the AEC of the MC and the node charging latency. In future study, the following two scenarios will be explored: (1) the challenging environment such as disaster relief: the scenario usually contains many different types of events, which may be sudden and have high requirements for the timeliness and accuracy of monitoring and transmission and (2) scenarios such as landslide monitoring and structural health monitoring: the anomalous events in the scenario are the most important; the possibility to have an anomalous event is very low, but the damage is enormous once occurs.