1. Introduction
With the technological progress of the Internet of things, the deployment of sensors has also increased demand widely in many fields, such as used in smart city, industry, precision agriculture, and so on. At present, the development of sensors has the trend toward low-power consumption of wireless communications and computation. In recent decades, researchers have proposed various powerful strategies to extend the operating time of sensors, such as wireless recharging strategies [
1,
2], reducing sensor consumption techniques, and harvesting energy from the environment, i.e., solar energy [
3,
4]. However, power converting from the source of external energy, such as solar energy, into electrical energy is unreliable due to the inefficiency of the power conversion and uncertainty of the environment. In addition, by reducing the energy consumption for sensors, the network lifetime can be extended, but the sensors energy cannot be prevented from being depleted in a long time. Thus, to gain better performance, the wireless recharging strategies to supply the sensors power for the wireless rechargeable sensor network (WRSN) [
5,
6] are recommended.
In a wireless rechargeable sensor network, all of the sensors are regarded as rechargeable sensors [
7,
8]. Meanwhile, a mobile charging robot (
MR for short) is responsible for charging the multiple sensors by wireless power transfer technology and collecting data simultaneously. 
MR held the power by an attached rechargeable battery will keep moving towards these sensors within a limited range. Sensors are recharged over the air by dedicated wireless power transmitters for communications by 
MR [
8]. By recharging from 
MR, all sensors can be extended the lifetime of the entire WRSN effectively [
9]. Wireless rechargeable sensors are studied and presented by the works of Wireless Identification and Sensing Platform (WIPS) [
8] and wireless powered communication networks [
7]. During recharging sensors by 
MR, sensory data collection from sensors can also be conducted at the same time [
7].
Sensors are deployed either randomly or prepensely in the sensing field. While monitoring and sensing the environment for a long period of time is necessary, the sensors need to care about their energy consumption. One-hop communication from each sensor to 
MR can be useful to extend their lifetime. On the other hand, both energy recharging and sensory data transmitting can be done by means of 
MR visiting [
10,
11]. Each sensor can obtain energy from 
MR and transfer sensory data to 
MR for storage. Thus, 
MR can be regarded as a mobile data collector and also a mobile charger. Furthermore, using wireless charging robots for energy replenishment and data collection can reduce the equipment damage rate and prevent people from working in hazardous areas. Users only need to wait for the mobile charging robot to complete charging and obtain sensory data in the designated safe area.
Path planning for 
MR is important to recharge the energy and collect the sensory data in WRSNs. There are many studies [
5,
12,
13] showing how to supply energy for sensors by utilizing a mobile charging robot. The distance between sensor and the mobile charging robot is the key that associates with the efficiency of 
MR wireless charging. While the sensor is farther away from the 
MR, the worse the charging efficiency, the longer time it takes to refill the battery. On the contrary, the closer the distance, the better the recharging efficiency and the less the charging time it takes. For data transmission between sensor and 
MR, the distance also plays the same scenario as mentioned above. In [
8,
14], besides the energy spent on transmission will increase with the distance between sensor and 
MR, The moving speed of 
MR will also affect the charging efficiency. Liu et al. [
14] proposed a strategy to establish a relay point to increase the charging efficiency of the mobile charging robot. Gong et al. [
15] mentioned that, as MR moving speed changes, the charging benefit of the mobile charging robot to the sensor would change accordingly. Therefore, it is important for developing path planning charging strategies to consider how to maximize the energy charging efficiency, and reduce the total length of the walking path and total energy consumption of 
MR in WRSNs.
In this paper, the dual-side mobile charging strategies are proposed for MR to reduce the energy consumptions based on the three facts, MR moving, MR data collecting, and MR recharging to sensors. In the beginning, locations and residual energy of each sensor were known in advance to MR. Based on the information, a power Voronoi diagram is defined and constructed by MR. According to these power cells in the established power Voronoi diagram, two path planning charging strategies are proposed for MR charging and sensory data collecting for each sensor. The major contributions of the proposed path planning charging strategies are described as follows. While MR moving, recharging the battery and receiving the sensory data for two neighboring sensors can work simultaneously. While MR recharges two neighboring sensors along the designated path, balancing charging time can be achieved, i.e., minimizing the charging time for the two sensors is obtained. For any distribution and scale of sensor network, the path planning charging strategies can be worked well. Consequently, the total energy consumption of MR moving along the planned path can be minimized at a round in a WRSN.
The rest of the paper is organized as follows. 
Section 2 describes the related literature, mainly introducing related research on path planning of mobile charging robots. In 
Section 3, assumptions and problem formation are described. 
Section 4 will address the path planning algorithms for the mobile charging robot. In 
Section 5, experimental results will be analyzed and discussed. 
Section 6 concludes the summary of this paper.
  2. Related Work
There are many studies proposed for recharging energy methodologies in wireless rechargeable sensors [
7,
16,
17,
18]. Hereby, these studies can be classified into three categories of recharging strategies: the TSP-like strategies, the strategies of finding rendezvous points in the sensing field, and the strategies of finding the planned stationary routes for mobile chargers. The advantages and disadvantages of three categories can be described below.
The first category is of the TSP-like strategies. At first, all of sensors information, such as locations or residual energy for all sensors, can be acquired in advance. Then, these strategies tried to find a TSP-like traversal path for visiting all of the sensors at once based on the information of location and residual energy for each sensor. Finally, the MR can move toward designated sensor locations to wireless charge the sensor along the planned path.
Fan, Jie, and Yujie proposed a wireless charging scheme with the optimal traveling path in WRSNs [
19]. In [
20], Lin, Zhou, Song, Yu, and Wu proposed an optimal path planning charging scheme, namely OPPC, for the on-demand charging architecture. The schedulability of a charging mission was evaluated in order to make charging scheduling predictable. In [
21], Lin, Sun, Wang, Chen, Xu, and Wu proposed a Double Warning thresholds with Double Preemption (DWDP) charging scheme for adjusting charging priorities of different sensors to support preemptive scheduling. In [
11], Mo, Kritikakou, and He addressed multiple mobile chargers coordination problems under multiple system requirements based on TSP problem. In [
22], Nguyen, Liu, and Pham addressed the problem of scheduling limited mobile devices for energy replenishment and data collection in WRSNs with multiple sinks. In [
23], Xu, Liang, and Jia discussed the use of a mobile charger to wirelessly charge sensors in a rechargeable sensor network so that the sum of sensor lifetimes is maximized while the travel distance of the mobile charger is minimized. In [
24,
25,
26,
27], the research problem of on-demand TSP mobile charging was addressed while sensors running out of energy were changed dynamically.
This kind of the first category is simple and suitable for any distribution and different scale of the sensor networks. The major drawback is that the length of the planned path is too long. This incurred that the time and moving consumption energy of MR traverse along the path. However, the charging consumption energy is less because the charging began while MR had arrived at the sensor locations, thus leading to less charging time.
The second category is the strategies of finding rendezvous points in the sensing field. At first, all of sensors information, such as locations or residual energy for all sensors, can be acquired in advance. Then, these strategies tried to analyze sensor information for finding a set of rendezvous points. According to the set of rendezvous points, a TSP-like traversal path for visiting all of the of rendezvous points at once. When MR visits a rendezvous point, it can recharge all of sensors in the wireless recharging range. Finally, the MR will move to each designated location of the rendezvous point, and wirelessly charge the sensors along the planned path.
In [
19], Fan, Jie, and Yujie also proposed a wireless charging scheme with optimal traveling path in WRSNs in terms of finding rendezvous points named docking sites. Liu, Nguyen, Pham, and Lin proposed the grid-based algorithm, the dominating-set-based algorithm, and the circle-intersection-based algorithm are proposed to find a set of anchor points; then, the mobile charger was moved to charge sensors according to TSP path constructed based on these anchor points [
9]. In [
28], Zhao et al. studied how to schedule charging and allocate charging time simultaneously in WRSNs for the purpose of prolonging network lifetime and improve charging efficiency. Wang, Li, Ye, and Yang solved the recharge scheduling problem with considering the balance between energy consumption and latency; one dedicated data gathering vehicle and multiple charging vehicles were employed [
29]. A novel clustering approach joining the mobile vehicles and unmanned aerial vehicles was proposed to prolong the network lifetime and reduce data overflow proposed in [
30].
This second category is of complex and suitable for any distribution and different scale of sensor networks. The length of the traversal paths is less than the length of the TSP-like path presented in the strategies of the first category. However, the different charging time and charging power occurred due to different charging range while MR visited at some rendezvous point. It may incur more charging time and charging power consumption.
The last one is of the strategies of finding the planned stationary routes for mobile charger. At first, all of sensors information, such as locations or residual energy for all sensors, can be acquired in advance. Then, these strategies tried to analyze sensor information for finding a path of stationary route with different kinds of patterns, such as concentric circles, grid, and fixed routes. According to the planned routes, finally, the MR can move to designated routes to wirelessly charge the sensor along the planned path. When MR visited along the route, MR can recharge all of sensors in the wireless recharging range.
In [
14], Liu, Lam, Han, and Chen proposed the joint data gathering and energy harvesting scheme in RWSNs in which the sensor nodes harvested energy from a mobile sink that moves along a pre-defined path. Wang, Yang, and Li addressed a network architecture in which the SenCar follows a two-dimensional symmetric random walk to recharge sensors in real-time [
31]. In [
13], Zhang et.al presented the itinerary selection and charging association scheme with a set of rechargeable devices and a set of candidates charging itineraries. The itinerary selections and corresponding charging association scheme determinations are to minimize the amount of energy, so that every device gets its required energy. The research work in [
32] proposed a novel WRSN model equipped with one wireless charging drone with a constrained flight distance coupled with several wireless charging grids.
This kind of the last category is of simple and easy to find the stationary patterns for MR routing. The major weakness is that it hardly schedules dynamically for arbitrary distribution and density of sensors in the sensing field, due to the information of geographical distribution of sensors is out of consideration for path planning. Occasionally, parts of the paths are neglected when MR moving. Meanwhile, the total length of path is too long to incur larger the moving time and consumed energy of MR. Moreover, different residual energies and wireless charging distances exist in these sensors. It may incur lots of charging time and charging power consumption.
For developing MR wireless recharging strategies, the following facts need to be taking into consideration.
	  
- Wireless charging technique is provided to charge rechargeable sensors in different ranges. The charging can be done with different distances between MR and rechargeable sensors. That is, the length of the acquired traversal paths from the strategies of the first category is too long. 
- The larger the distance between MR and sensor, the more MR power for recharging consumed. The rendezvous points mentioned in the second category consider nothing about distantness from the MR, thus more power will be consumed for distant recharging. 
- Adaptive path planning can be suitable for different scale of sensors and sensor distributions. The fixed patterns as in the strategies of the third category can incur extra power consumptions of MR moving for different scales of sensors and sensor distributions. 
- Recharging of stationary points for MR was wasted charging time. Sensors can be recharged while MR moves along path to shorten the total recharging time. 
Therefore, according to the above analysis, it is necessary to achieve the minimum power consumption, including the energy consumption of the MR moving, charging sensors when MR is moving, and collecting data from sensors. In addition, it is also considered that the location of each sensor is known in advance, but there is no need to know the remaining energy of each sensor in advance. As long as the MR moves nearby at that time, it can communicate with the neighboring sensors and then through the data request. The remaining energy of the neighboring sensors can be acquired. Therefore, the path planning strategies are proposed with the following considerations.
	  
- Recharging sensor and collecting data from sensor while MR moving: it can improve and solve the problem of charging while MR moving and reduce the total charging time for the strategies of the first and second categories. 
- The sensor does not need to be far away from the MR when charging: it can improve the problem that sensors may be too far away, reducing the total charging time and charging energy consumption for the strategies of second and third categories. 
- The path will dynamically be adjusted according to the positions of sensors and the remaining energy; it can improve the problem of the strategies of third category with fixed patterns, be suitable for the environment of different sensors distribution, and reduce the energy consumption of mobile and charging. 
As a result, to minimize the power consumption for MR, our objective tries to combine all of advantages from those mentioned in the above three categories. In this paper, our proposed strategies will only compare the strategy of the first category in experiments. As our knowledge, the proposed strategies are the first one to consider MR charging dual-side neighboring sensors being balanced.
  3. Assumptions and Problem Formulation
In this section, we will first list the assumptions of this research problem and then formulate the problem to be solved in this paper.
First of all, assumptions of this paper are listed in below.
	  
- There are n rechargeable sensors si in  and a mobile charging robot MR in the environment. 
- The deployment of sensors in the environment is dense. 
- With power control, the charging range of the sensor is adjustable [ 16- ]. 
- The mobile charging robot has the location information of each sensor in advance and the remaining battery capacity of each sensor either can be acquired in advance or requested from each sensor while MR visits it in the near range. 
- Different sensors have different battery capacities. 
- The mobile charging robot has enough memory and power, and has the ability to charge sensors wirelessly (devices that emit wireless power); it has the ability to wirelessly charge neighboring sensors at the same time [ 7- ]. 
- Assuming there are no obstacles in the sensing environment, i.e., obstacle-free area. 
- The sensors in the network are all stationary sensors. 
- Mobile charging robots can send and receive data and charge multiple sensors at the same time. 
- The mobile charging robot is on the path to ensure that it can charge the sensor and that the charging range is within the recharging radius of the sensor. 
In the following, the problem of minimizing the power consumption for wireless rechargeable sensors via an MR will be formulated. A traversal path for wirelessly charging to all sensors will be determined in order to minimize power consumption.
As in 
Figure 1a, 
MR moves along the perpendicular bisector, path 
e1, between 
s1 and 
s2. During 
MR moving, it can wirelessly charge the batteries of two sensors 
s1 and 
s2, simultaneously, as green arrows did [
7]. Additionally, 
MR can receive the sensory data from sensors 
s1 and 
s2, simultaneously, as red arrows did [
7,
33]. However, we know that the residual energies for two sensors are different, residual energy of 
s2 is larger than that of 
s1. The recharging efficiency for 
s2 is better; the recharging efficiency for 
s1 is poor. As a result, while recharging the battery of 
s1, more power will draw from 
MR. Transmission of sensory data is the same situation. Suppose the 
MR is moving along the vertical line, path 
e2, between 
s1 and 
s2 as shown in 
Figure 1b, 
MR is closer to 
s1 than 
s2 during 
MR moving. Since 
s2 is far away from 
MR, the charging efficiency is poor. The remaining power is more and the recharging is less. Thus, 
s1 and 
s2 will be fully recharged for the total recharging time spent. This incurs that recharging efficiency and energy supply can be balanced between two sensors.
After considering whether the charging is balanced, the time duration while MR moving on the path also affects the sensor recharging efficiency. Faster moving speed will result in shorter moving time in case of charging time is not enough to make the battery full. In order to match the time duration of moving and recharging, the moving speed of MR needs to be considered for adjustment to achieve the completion of movement on the path and recharging for neighboring sensors.
As in [
20], the wireless charging model 
Pr(
d), 
d is the distance between 
MR and sensor is defined as in Equation (1),
      
In Equation (1), 
 denotes the source power equipped on 
MR. 
 and 
 denote the source antenna gain and receiver antenna gain, respectively. 
λ refers to wavelength. 
 indicates the polarization loss. 
η represents the rectifier efficiency. The parameter 
β is assigned to be 30 [
12].
While 
MR is moving to recharge sensors, the charging efficiency of the sensors will be different at each time point [
7]. As shown in 
Figure 2, the path will be affected by the 
MR moving speed. At each time point, the different 
MR locations will incur different benefits for sensors charging. In 
Figure 2, 
MR moving from start to stop locations with total distance 
 is wirelessly charging the batteries of sensors 
s1 and 
s2, continuously.
It is necessary to measure the time period for charging the battery of sensor 
s with demanded power 
w when 
MR moving along the designated path with length 
. The demanded power is defined as in Equation (2).
      
dist(MR, s)  is defined as the distance between the locations of MR and s. T is time for charging from MR to s. The travel time  with current I can be obtained. Thus, the moving speed is set to . The output of the MR charging power is fixed, but affected by the distance. If the power demand w is needed, the travel time of the path is extended to achieve the effect of complete charging while traveling was completed.
In this paper, the MR moving speed according to the amount of charging time will be determined. When MR moving is completed, recharging sensors will also be completed. As in Equation (1),  is inversely proportional to the square of the distance d. Here power diagram for sensors is constructed. The distance between two neighboring power cells is inversely proportional to the square of the distance d. That is, when charging the neighboring sensors, the charging power can be evenly distributed to them based on their residual power energy.
Our objective is to maximize the charging efficiency, i.e., maximizing the energy usage effectiveness for wirelessly charging sensors. Since energy expenditure is composed of two parts, traveling cost and charging cost, our objective can be converted into minimizing the cost of traveling and the cost of recharging so as to maximize the charging efficiency, which is formulated as follows.
      
      subject to:
	  
eng(
pj) denotes the energy power consumption for 
MR moving alone 
pj, which is one of paths for 
MR moving, 1 ≤ 
j ≤ 
k. 
engci and 
eng(
ti) denote the energy power consumptions for 
MR charging cost and information transmission cost for 
si, respectively, where 
ti is the packet size for 
si sent to 
MR [
34], 1 ≤ 
i ≤ 
n. 
, if ∃ 
si in wireless charging range of 
pj, whereas 
, if ∄ 
si in wireless charging range of 
pj, for 1 ≤ 
j ≤ 
m. 
wi is the residual cost for 
si. 
engfull is the full energy of each sensor.
 The difficulty of this paper as noted in Equation (3) is the simple version of travelling salesman problem (TSP) for MR travelling to visit all of sensors. Thus, it is NP-hard. Nevertheless, the goal of this paper is to propose novel energy-efficient heuristic mobile charging strategies for wireless rechargeable sensors.
  4. Path Planning Strategies for Mobile Charger
In this section, we will introduce the path planning of the 
MR based on the power Voronoi diagram for the WRSNs. Two algorithms are proposed for path planning to wirelessly recharge the sensors. At first, a path planning strategy based on Delaunay triangulation will be presented in 
Section 4.1. Next, the other path planning strategy is addressed based on dominating set for Voronoi cells on the power Voronoi diagram in 
Section 4.2.
  4.1. Path Planning Strategy Based on Delaunay Triangulation
In this subsection, a path planning strategy will be proposed based on the power Voronoi diagram for all sensors. First of all, the power Voronoi diagram based on the residual energies for different sensors is established. Next, based on the constructed power Voronoi diagram, the corresponding Delaunay triangulation will be constructed. Finally, the constructed path is planed according to the triangles in the Delaunay triangulation.
In the path planning algorithm for mobile charging robots based on Delaunay triangulation (for short DT strategy), the path is perpendicular to either side of each triangle. The MR, passing through the designated path, can wirelessly recharge both side sensors to refill their energy with fully charged.
At first, a power diagram for sensors will be constructed. Power diagram [
35] is a weighted Voronoi diagram. Here, sensors stand for the corresponding points in the power diagram. Each sensor 
si will have a weighted range 
ri defined as 
 where 
r is a constant and 
wi is a weight, 1 ≤ 
i ≤ 
n, respectively. The power distance 
 from any point 
 on the 2D plane to the sensor 
si is defined as follow,
        
Thus, the power Voronoi cell 
 for each sensor 
si is defined as in Equation (8).
        
By constructing a power diagram, a 2D plane or area can be partitioned into non-empty cells as in Equation (9),
        
As in 
Figure 3, an example demonstrates a power diagram with two sensors 
s1  and 
s2 with the respective weighted ranges 
r1 and 
r2. Here, there are two corresponding Voronoi cell 
vs1 and 
vs2.
In order to gain insight of the power diagram, let’s consider a simple power diagram formed by two sensors 
s1 and 
s2 with the respective weighted ranges 
r1 and 
r2 as in 
Figure 3. There are two corresponding Voronoi cells, 
vs1 and 
vs2. By setting or adjusting the weights of power diagram, the boundary, edge 
e, between two neighboring Voronoi cells 
vs1 and 
vs2 is close to one sensor with less residual energy as in 
Figure 3. In terms of path planning concerned, the mobile charging robot can drive through this edge, and then wirelessly charge and send/receive information for these two sensors 
s1 and 
s2, simultaneously. As a result, only one path is needed for balancing energy recharging and information transmission.
Thus, according to the power diagram, the weight can be set as , thus the weighted range ri for each Voronoi cell  in the power Voronoi diagram becomes , where engfull is the full energy of sensor, and engi is the residual energy of the sensor si, 1 ≤ i ≤ n.
The power Voronoi diagram is defined as a graph 
. Delaunay triangulation and Voronoi diagram are dual in graph theory. The constructed Delaunay triangulation graph is defined as a graph 
, where 
. An example with 15 sensor points 
si, 1 ≤ 
i ≤ 15, in 2-D plane shows the graphs of power diagram and Delaunay triangulation as in 
Figure 4. Here, there are 33 edges 
ei, 1 ≤ 
i ≤ 33, as the boundary edges for power diagram with 15 Voronoi power cells 
, 1 ≤ 
i ≤ 15. 
EPD refers to as the set of these boundary edges of power Voronoi diagram. Here 
. In addition, there are 19 Delaunay triangulation 
, 
.
The main idea is described below. Suppose there are three sensors 
s1, 
s5, and 
s6 to form a Delaunay triangulation 
 as in 
Figure 4. In 
, there exist three edges 
e1, 
e2, and 
e3. If the 
MR is travelling from 
e1 to 
e2, from 
e3 to 
e2, or from 
e1 to 
e3, and vice versa, the three sensors 
s1, 
s5, and 
s6 can be charged by 
MR and their sensory data can be sent to 
MR. The scheduling for all of Delaunay triangulation 
, 
, visited once is important for 
MR with minimum power consumption. Based on the scheduling, all of sensors are charged by 
MR and all of their sensory data can be sent to 
MR. Thus, a path planning algorithm, named DT strategy, described below is proposed based on Delaunay’s triangulation graph as in Algorithm 1.
        
| Algorithm 1: Path planning algorithm for mobile charging robot based on Delaunay triangulation. | 
| INPUT: S and EPD//S: the set of sensors, EPD: the set of boundary edges of power Voronoi diagram. | 
| OUTPUT: PDT//Scheduled traversal path based on DT strategy | 
| 1. | PDT = ∅ | 
| 2. | Find the starting Delaunay triangulation dt with 3 Voronoi diagram edges ea, eb, ec, inside nearest to the MR. | 
| 3. | While (There exists one sensor marked UNCHARGED) | 
| 4. | { | 
| 5. | Suppose MR is on ea and ea is selected and appended into PDP. Both side sensors on ea are marked CHARGED. | 
| 6. | If (funcharged(eb) > funcharged(ec)) | 
| 7. | Both side sensors on eb are marked CHARGED. | 
| 8. | ea ← eb | 
| 9. | Else If (funcharged(eb) < funcharged(ec)) | 
| 10. | Both side sensors on ec are marked CHARGED. | 
| 11. | ea ← ec | 
| 12. | Else If (funcharged (eb) == 0 and funcharged(ec) == 0) | 
| 13. | Find the nearest dt’ with 3 Voronoi diagram edges ea’, eb’, ec’ inside. | 
| 14. | Suppose ea’ is nearest to MR and MR is moving to the nearest end point of ea’ constituted a path segment called ep, travelled unnecessary charging. | 
| 15. | ep is appended into PDT. | 
| 16. | ea ← ea’ | 
| 17. | Else | 
| 18. | is appended into PDT | 
| 19. | Both side sensors on em are marked CHARGED. | 
| 20. | ea ← em | 
| 21. | } | 
| 22. | ReturnPDP | 
CHARGED and UNCHARGED are Boolean variables which indicate whether the sensor is charged or uncharged, respectively, at this round for path scheduling. Assume all sensors are marked UNCHARGED at the beginning of Algorithm 1. The function funcharged(e) is defined as the number of sensors on both sides of Voronoi diagram edge e marked UNCHARGED. The function len(e) is defined as the length of the edge e.
In the following, the time complexity of Algorithm 1 is discussed. Here the time complexities of finding the Voronoi diagram and Delaunay triangulation are all in O(n log2 n), where n is the number of sensors. The number of Voronoi cells is n. The number of triangles in Delaunay triangulation is in O(n). The time complexity of Step 1 is in O(1). Step 2 takes the time complexity O(n). The looping from Steps 3 to 21 is at most in O(n). Steps 5 to 20 takes in O(1) except that Step 13 takes in O(n) for finding the nearest dt’. Step 22 is in O(n). Therefore, the total time complexity of Algorithm 1 is in polynomial time complexity O(n2).
Example 1. Below an example inFigure 4will be demonstrated by Algorithm 1. 
Figure 5will show the detailed steps by Algorithm 1.
            
and
            . Initially,
            , at the beginning, all of sensors are marked UNCHARGED. MR is nearby the triangle
            , which is uncharged, as shown in Figure 4. Thus, , , and  in  . In Step 5,  is appended into ; . Sensors s1 and s5 are marked CHARGED.  () = () = 1. It means that there are one sensor available for recharging. Next,  is selected when  as inFigure 5a. 
It means that the shorter moving distance is better while recharging the same number of uncharged sensors. Sensor s6 is marked CHARGED.  is set to. Then, the while-loop is going to the next triangle . Here, , , and  in . In Step 5,  is appended into ; . Repeat the same steps. As a result,  obtained as shown inFigure 5a. 
Sensors s1, s2, s3, s5, s6, s7, s8, and s9 with light blue cycle around are marked CHARGED. Then, the same situations are repeatedly executed. As a result,  are appended into PDT; thus,  inFigure 5b. 
Sensors s4, s10, s15, and s14 with light blue cycle around are marked CHARGED. Next, funcharged(e27) = funcharged(e28) = 0 in Step 12. It means that there are no any sensor available for recharging. The nearest triangle  is selected; thus, , , and . Then, the same situations are repeatedly executed. As a result,  are appended into  as inFigure 5c. 
Next,  is selected when  as inFigure 5d. 
As a result,  is appended into . Currently, sensor  is not marked CHARGED. The triangle  is selected. In Step 14,  travelled only, no charging here, with orange color is appended into  as inFigure 5e. 
Next,  is appended into . As a consequence, . The green edges in  are needed to wirelessly recharge the sensors, whereas the orange edge is doing nothing, only MR moving along the orange edge.
    4.2. Path Planning Strategy Based on Dominating Set
In this subsection, a path planning strategy will be proposed based on the power Voronoi cells of sensors in a power Voronoi diagram.
This main idea of this path planning strategy is described below. At first, the power Voronoi diagram based on the residual energies for different sensors is established as described in 
Section 4.1. All of the power Voronoi cells of sensors in a power Voronoi diagram can be as nodes of the Delaunay triangulation graph. In the Delaunay triangulation graph, there exist edges among their neighboring Voronoi cells. In graph theory, based on a dominating set for the Delaunay triangulation graph 
, it’s a subset 
D of 
 such that every vertex not in 
D is adjacent to at least one vertex of 
D. That is, if the 
MR is moving around the boundary of the power cell 
vc for a dominant sensor 
s, all of the sensors of its neighboring Voronoi cells including 
s can be charged and their corresponding sensory data can be received. Therefore, a path planning strategy will be proposed for 
MR scheduling to visit to all of dominants in 
D. As a result, all of sensors can be recharged by 
MR and all sensory data for sensors can be received by 
MR.
The proposed heuristic path planning algorithm for mobile charging robot based on Voronoi cell dominating set (for short VD strategy) is described in Algorithm 2. In the beginning, suppose 
MR is located in one Voronoi cell 
vc. Next, the strategy for finding the all dominants of a dominating set of 
 can be extended to finding these dominants with size 
k ≥ 1. That is, 
k-contiguous neighboring Voronoi cells can be condensed as one vertex. Moreover, if the 
MR is moving around the boundary of the 
k-contiguous neighboring Voronoi cells for a dominant with size 
k, all of the sensors of its neighboring Voronoi cells, including 
k sensors in the selected dominant can be charged and their corresponding sensory data can be received. 
(
) is defined as the set of Voronoi cells surrounded by 
k-contiguous neighboring Voronoi cells formed by a set of 
, where 
. 
 is denoted as the number of the set of Voronoi cells surrounding by 
k-contiguous neighboring Voronoi cells formed by a set of 
. In general, 
k is a constant and small; here, 1 ≤ 
k ≤ 3. Consequently, Algorithm 2 is proposed for planning 
MR to visit the boundary of all of these dominants with size 
k selected, named VD strategy.
        
| Algorithm 2: Path planning algorithm for mobile charging robot based on Voronoi cell dominating set. | 
| INPUT: S and EPD, and k ≥ 3 | 
| OUTPUT: PVD//Scheduled traversal path based on VD strategy | 
| 1. | PVD = ∅ | 
| 2. | While (There exists one sensor marked UNCHARGED) | 
| 3. | { | 
| 4. | Suppose MR is located at the nearest Voronoi cell vc and its corresponding sensor sc is marked UNCHARGED. | 
| 5. | Find  with the maximum number of ∣ Svc()∣ with Voronoi cells marked UNCHARGED such that vc ∈ Svc() ∪ . If  is not found, decrease k by 1 and repeat Step 5. | 
| 6. | Suppose that k Voronoi cells in  are surrounding by q edges e1, e2, …, eq in sequence in clockwise order. One end point p of e1 while funcharged(e1) ≠ 0 is nearest to MR. MR moves p constituted a path segment called es, travelled unnecessary charging. es, e1, e2, …, ej in sequence are appended into PVD while funcharged(ej) ≠ 0 and for all funcharged(el) = 0, j + 1 ≤ el ≤ q. A short-cut edge can be added to replace the boundary edges in the Voronoi diagram. All vci in Svc() ∪  are marked CHARGED. | 
| 7. | } | 
| 8. | ReturnPVP | 
In the following, the time complexity of Algorithm 2 is discussed. Step 1 is in O(1). The looping from Steps 2 to 7 is at most in O(n). Step 4 is in O(n) for searching the Voronoi cell vc. In Step 5, k being a constant are set to 1, 2, and 3 in this paper. When k is set to 1, 2 and 3, the time complexities of finding  is at most in O(), O(), and O(), respectively. Step 6 takes in O(q), where q is bounded by O(n). Step 8 is in O(n). Therefore, the total time complexity of Algorithm 2 is in polynomial time complexities O(), O(), and O() with k set to 1, 2, and 3, respectively. Basically, when larger k, Algorithm 2 costs much for the running time. Here, k is a small constant.
The below three examples will be demonstrated by Algorithm 2.
Example 2. Figure 6shows the detailed steps of Algorithm 2 when k is set to 1. , , and the set of Voronoi cells . Initially, , at the beginning, all of sensors are marked UNCHARGED. In Step 4 of Algorithm 2, MR is nearby the Voronoi cells  and  based on the power distance, which is uncharged, as shown inFigure 6a. 
One of them will be selected; here suppose that  is selected and  is marked UNCHARGED. In Step 5, the decision for four possibilities will be made as follows.
  - Suppose . Thus,  where (). ; it means that there are four Voronoi cells surrounding the dominator  with size 1. In addition, in , the four corresponding sensors s3, s2, s6, and s5 are marked UNCHARGED, respectively. 
- Suppose . Thus,  where (). ; it means that there are six Voronoi cells surrounding the dominator  with size 1. In addition, in , the six corresponding sensors s1, s2, s7, s12, s11, and s5 are marked UNCHARGED, respectively. 
- Suppose . Thus,  where (). ; it means that there are four Voronoi cells surrounding the dominator  with size 1. In addition, in , the four corresponding sensors s5, s6, s12, and s13 are marked UNCHARGED, respectively. 
- Suppose . Thus,  where (). ; it means that there are three Voronoi cells surrounding the dominator  with size 1. In addition, in , the three corresponding sensors s1, s6, and s11 are marked UNCHARGED, respectively. 
As in 
Figure 6b, in Step 5, 
 is selected because 
 with Voronoi cells marked UNCHARGED is maximum number for the four possibilities as mentioned above. In Step 6, 
. Seven sensors 
s1, 
s2, 
s7, 
s12, 
s11, 
s5, and 
s6 are marked CHARGED.
After that, go to Step 2. There exist sensors marked UNCHARGED. Then, in Step 4, 
MR is near to the Voronoi cell 
, which, based on the power distance is uncharged, as shown in 
Figure 6b. In Step 5, the decision for many possibilities will be made. As a result, the 
 is selected in 
Figure 6b. Thus, 
 where 
(
)
. 
; it means that there are seven Voronoi cells surrounding the dominator 
 with size 1. In addition, in 
, there are six sensors 
s3, 
s4, 
s10, 
s15, 
s14, and 
s8 are marked UNCHARGED, respectively. In Step 6, one segment 
 is built. Then, 
 as shown in 
Figure 6c. Seven sensors 
s8, 
s3, 
s4, 
s10, 
s15, 
s14, and 
s9 are marked CHARGED. The segment of 
e27 is not appended into 
PVD because sensor 
s7 was marked CHARGED.
After that, repeat the same procedure and go to Step 2. There only exists one sensor 
s13 marked UNCHARGED. Then, in Step 4, 
MR is nearby the Voronoi cell 
 based on the power distance, which is uncharged, as shown in 
Figure 6c. In Step 5, the 
 is selected. In Step 6, one segment 
 is built in 
Figure 6d. Then, 
 as shown in 
Figure 6e. 
s13 is marked CHARGED. Consequently, all of sensors were marked CHARGED and Algorithm 2 is done.
Example 3. Figure 7will show the detailed steps of Algorithm 2 when k is set to 2. , , and the set of Voronoi cells . At first, . At the beginning, all of sensors are marked UNCHARGED. In Step 4 of Algorithm 2, MR is nearby the Voronoi cells  and  based on the power distance, which is uncharged, as shown inFigure 7
            a. 
As in Example 2, here suppose that  is selected and  is marked UNCHARGED. In Step 5, the decision for many possibilities will be made. As a result, the  is selected in Figure 7a. 
 with Voronoi cells marked UNCHARGED is maximum where . It means that there are nine Voronoi cells surrounding the dominators  with size 2. In Step 6, . Eleven sensors s1, s2, s8, s9, s14, s13, s12, s11, s5, s6, and s7 are marked CHARGED as shown in Figure 7b.
  After that, go to Step 2. There exist sensors marked UNCHARGED. Then, in Step 4, 
MR is nearby the Voronoi cell 
 based on the power distance, which is uncharged, as shown in 
Figure 7b. In Step 5, the decision for many possibilities will be made. As a result, the 
 is selected in 
Figure 7c. Thus, 
. 
; it means that there are three Voronoi cells surrounding the dominator 
 with size 2. In addition, in 
, there are two sensors 
s3 and 
s15 are marked UNCHARGED. In Step 6, one segment 
 is built as in 
Figure 7c. In addition, one short-cut 
 is found as in 
Figure 7d. Consequently,
. Four sensors 
s3, 
s4, 
s10, and 
s15 are marked CHARGED. The segments of 
e16 and 
e15 are not appended into 
PVD because sensors 
s9 and 
s8 were marked CHARGED, respectively. Consequently, all of sensors were marked CHARGED and Algorithm 2 is done.
Example 4. Figure 8will show the detailed steps step by step by Algorithm 2 when k is set to 3. , , and the set of Voronoi cells . Initially, , at the beginning, all of sensors are marked UNCHARGED. In Step 4 of Algorithm 2, MR is nearby the Voronoi cells  and , based on the power distance, which is uncharged, as shown inFigure 8a
            
As in Example 2, suppose that  is selected and s5 is marked UNCHARGED. In Step 5, the decision for many possibilities will be made. As a result, the  is selected inFigure 8a. 
with Voronoi cells marked UNCHARGED is maximum where . It means that there are nine Voronoi cells surrounding the dominators  with size 3. In Step 6, . Consequently, all of sensors were marked CHARGED and Algorithm 2 is done as shown inFigure 8b.
    4.3. Clusting for Mobile Charging Strategies
In this subsection, a cluster-based preprocessing for improving the charging strategies is presented. At first, anchors of clusters are selected in advanced for mobile charging strategies DT and VD. The selected anchors are representatives for those sensors which are nearest neighbors with each other. Basically, the presented approach is based on DBSCAN (Density-Based Spatial Clustering of Applications with Noise) clustering [
36] which can be established to form clusters automatically. Initially, there are 
n rechargeable sensors 
si in 
. Hereby, each cluster of sensors will be constrained with the range of two farthest sensors in the cluster. The range (or distance) will be called diameter of the cluster because mobile charger will efficiently charge the battery of each sensor in the cluster. Assume the value of 
, the maximum diameter of cluster, is given. If the network is spare, 
n clusters are formed possibly whereas if the network is dense, only 1 cluster is formed possibly based on the 
 setting.
Algorithm 3 is proposed for automatically clustering sensors and selecting an anchor location as the representative for each cluster. DBSCAN requires two parameters; 
ε is a certain radius of sensor and 
minPts is the minimum number of points required to form a dense region with radius 
ε. Here, initially, 
minPts is set to 1 adding to the maximum degree of the sensor in 
. Then, the clustering DBSCAN approach, named DB for short, repeatedly is performed after decreasing the value of 
minPts until to 2.
        
| Algorithm 3: Clustering for sensors based on DBSCAN. | 
| INPUT: S, , ε and minPts | 
| OUTPUT: S’ and //S’: Clusters of sensors; : Anchors’ positions | 
| 1. | minPts = max (deg(si in ε) + 1)//(deg(si in ε) means the number of si neighbors within ε. | 
| 2. | ForminPtsdownto 2 | 
| 3. | { | 
| 4. | S’,  = Clustering (S, ε, minPts, ); | 
| 5. | If S’ ≡ S Then break//Check sets equality of S’ and S | 
| 6. | S = S’  //Set S’ is assigned to S. | 
| 7. | } | 
| 8. | ReturnS’ and | 
| Procedure Clustering (S, ε, minPts, ) | 
| 1. | nC = 0 //Cluster number | 
| 2. | For each point Sp in S | 
| 3. | { | 
| 4. | If label (Sp) ≠ undefined Then Continue | 
| 5. | NB =  ∅ | 
| 6. | For each point Sq in S { | 
| 7. | If dist(Sp, Sq) ≤ ε Then {NB = NB ∪ {Sq} } | 
| 8. | If |NB| < minPts Then { label(Sp) = Noise; Continue;} | 
| 9. | nC = nC + 1;  label(Sp) = nC; AS = NB\{Sp}; | 
| 10. | For each point Sq in AS { | 
| 11. | If label(Sq) = Noise then label(Sq) = nC | 
| 12. | If label(Sq) ≠ Undefined Then Continue | 
| 13. | label(Sq) = nC;  NB = ∅; | 
| 14. | For each point Sr in S { | 
| 15. | If dist(Sq, Sr) ≤ ε Then {NB = NB ∪ {Sr} } | 
| 16. | If (|NB| ≥ minPts and  dist(s1, s2) ≤ ) Then {AS = AS ∪ NB} | 
| 17. | } | 
| 18. | sic = {sj, 1 ≤ j ≤ n|sj is in cluster i}, 1 ≤ i ≤ nC | 
| 19. | Scluster = SiC|1 ≤ i ≤ nC | 
| 20. | = {SiCA|centroid (arithmetic mean position) of all the points in SiC} | 
| 21. | ReturnSCluster and | 
The worst case of running time complexity remains O() in Algorithm 3. Here, the size of  will dominated to the clustering range. Therefore, minPts will be set to 1 adding to the maximum degree of the sensor in . minPts is decreased till to 2 to stop the execution, i.e., lastly, it will be set to be connected only with density size 2 in DBSCAN. The function label(si)=  is defined as labelling the clustering number , , which each sensor node si in  is belonging to.
Furthermore, applying the clustering strategy to DT and VT strategies will be discussed. First of all, the construction of power Voronoi diagram for clusters of sensors is needed. By Algorithm 3, the clusters 
S’ and anchors 
 of clusters are acquired. Here, each sensor position is replaced with the 
 for cluster 
, 
. As mentioned in 
Section 3, the weighting range 
ri for each Voronoi cell 
 in the power Voronoi diagram is set to 
, where 
r is constant, 
 is the full energy of sensor, and 
 is the average residual energy of the all sensors in 
, 
.
After that, the improvement algorithm with clustering can be constructed. When DBSCAN is adopted to DT is called DB-DT strategy, whereas DBSCAB is adopted to VD is called DB-VD strategy.
  6. Conclusions
This paper proposed wireless dual-side charging strategies by mobile charging robots for wireless rechargeable sensor networks. At first, a power diagram was constructed according to the remaining power of sensors and distances among sensors in a WRSN. Based on this built power diagram, charging strategies for DT and VD were addressed with dual-side charging capability. In a high-density sensing network, they can effectively reduce the energy consumption, total distance traveled, and the time to complete the recharging. The dual-side charging capability for MR can balance the efficiency of recharging the sensors on both sides during mobile charging. In simulations, the performance for GREEDY, DT, 1-VD, 2-VD, 3-VD were analyzed and compared. DT has better efficiency in lower density WRSNs, whereas 3-VD has the best efficiency in higher density WRSNs. Furthermore, a clustering method, named DB, was proposed to group the neighboring sensors according to the considerations of their charging range and density. In terms of applying DB to DT and VD strategies, DB-DT and DB-VD were proposed, respectively. According to these two kinds of clustering strategies compared to the non-clustering strategies, the energy consumption, the walking distance, and the time to complete the charging can be greatly reduced. In simulations, the performance for CLUSTER, DB-DT, DB-1-VD, DB-2-VD, and DB-3-VD were analyzed and compared. DB-DT has better efficiency in lower-density WRSNs, while DB-3-VD has the best efficiency in high-density WRSNs. It can be seen that clustering has better efficiency than non-clustering. DT and DB-DT are suitable for low-density WRSNs, whereas 3-VD and DB-3-VD are suitable for high-density WRSNs. Consequently, all of the strategies proposed in this paper are suitable for different clustering technologies integrated into DT and VD. In short, dual-side clustering-based strategies will be possible to get better efficiency of energy and distance saving.