Maximize Lifetime of Wireless Rechargeable Sensor Networks with Mobile Energy-Limited Charging Device

Mobile charging devices (MCDs) have been regarded as a promising way to solve the energy shortage of wireless sensor networks. Due to ignoring some important factors, such as redundant sensor nodes, there is still room to improve network lifetimes. We propose a charging strategy for wireless sensor networks with one energy-limited MCD. To give the best support for sensor nodes which need charging the most, an algorithm is proposed to find the minimum sensor nodes which keep the coverage and connectivity of the network and have the least energy requirements. Then, the goal of maximizing network lifetime is changed into how to utilize the limited energy of the MCD to guarantee the minimum sensor nodes work as long as possible. If the MCD has enough energy for all sensor nodes, the charging algorithm is designed to minimize the outage time of the network and maximize charging efficiency. Otherwise, if the energy capacity is larger than the least energy requirement, the charging target minimizes the outage time of the minimum sensor node; otherwise the charging problem becomes maximizing the lifetime of minimum sensor nodes, which has lower complexity. The results of simulation experiments confirm that our scheme prolongs network lifetime and improves charging efficiency.


Introduction
Wireless sensor networks (WSNs) are often used to collect basic information and are regarded as sensory organs of the Internet of Things (IoT), which will play an important role of the era of the IoT [1].With the development of wireless energy transfer technology [2,3], one of the greatest obstacles-energy shortage, which limits the application scale of the WSN-can be overcome.The wireless rechargeable sensor network (WRSN) which employs the mobile charging device (MCD) charging the sensor by using wireless energy transfer technology has attracted many researchers and related industry.
Different from the traditional WSN, which adopts the high energy efficiency algorithm to prolong network lifetime [4,5], works on WRSNs plan the trajectory of the MCD properly to enhance charging efficiency and network lifetime [6,7].As the sensor node charged by the MCD has the continuous energy source, the WRSN can sustainably work in principle.However, limited by the finite energy capacity and moving speed, some sensor nodes cannot be charged in time because the MCD do not have enough energy to satisfy all charging requirements or cannot reach the sensor node before its energy is exhausted [8].
To address these two problems, many works use multiple MCDs [9][10][11], propose partial charging scheme [12][13][14], or adopt clustering method [15][16][17][18].In the WRSN using multiple MCDs, MCDs can charge many lifetime-critical sensor nodes simultaneously, which can effectively reduce expired sensor nodes.Though the multiple MCDs method can prolong the network lifetime, to solve the first problem thoroughly it needs a large number of MCDs-the number of MCDs is the same as sensor nodes in extreme situations.Partial charging policy means that, according a certain rule, the MCD leaves a charged sensor node before its battery is full.Therefore, the MCD can replenish energy for more sensor nodes, and the network lifetime can be prolonged.However, this method spends more energy on the movement, which reduces the energy efficiency of the MCD.Through grouping sensor nodes in some clusters, one MCD charges more than one sensor node in the same cluster simultaneously [15,16], or it charges the cluster head which charges the other sensor nodes in the cluster [17,18].Due to longer energy transfer and secondary energy loss, this method makes the energy more scarce.
These works only study how to efficiently and quickly solve the charging demand of sensor nodes to improve the network lifetime.However, the network lifetime is not only related to the energy supply, but is also related to the energy consumption which determines the distribution of charging requests.Some research in path planning has considered the energy consumption rate of sensor nodes and graded them according to the energy consumption rate of the sensor node and the coverage degree of the target point [18].However, this research only considers the actual energy consumption without controlling the network energy consumption proactively.To reduce energy consumption, some studies employ the MCD as a mobile data collector [19].This method reduces the energy consumed by the long distance data transmission which results in larger delay.
In addition to network lifetime, coverage and connectivity are two key and fundamental metrics which evaluate the functionality performance of the WSN.There is little research considering both network connectivity and target coverage in the charging scheduling of the WRSN.Almost all existing studies assume that all sensor nodes work simultaneously, and the network lifetime is defined as the time the WSN has worked when one or a certain proportion of sensor nodes die.However, after one sensor node dies, all targets may be still covered and collected data can be transmitted to Sink.That is, the WSN can still work, and the actual network lifetime is longer.Meanwhile, when one sensor node dies, the target cannot be covered or the network is not connected, and then the proportion definition is incorrect.Therefore, the definition of the network lifetime should consider the connectivity and coverage, and the end time of the WSN in our work is defined as the moment that the network is not connected or one target cannot be covered.Thus, the role that the sensor node plays in the coverage and connectivity should be considered in charging scheduling.
To overcome the above shortages, in this work we propose a charging algorithm to optimize the charging efficiency and network lifetime which considers the connectivity and coverage.Firstly, according to the position and energy consumption rate of the sensor node, a set of sensor nodes with smallest energy consumption which satisfies the coverage and connectivity requirement is found.That is, the minimum energy demand to keep the network working is obtained.Then, according to the relation between the energy requirement and the energy capacity of the MCD, we design three optimal charging algorithms to maximize network lifetime and charging efficiency.
The contribution of this work can be concluded as follows.First, we analyze the relation between the energy consumption rate and the network parameter, and then an scheme maximizing network lifetime is proposed considering both coverage and connectivity.Second, according to the supply-demand relationship, we design a charging algorithm with different targets.Our work firstly combines energy management and charging scheduling to optimize energy efficiency and charging efficiency simultaneously in the WRSN.
The remainder is organized as follows.Section 2 will introduce the related work.Then, Section 3 describes the network model, while the problem is analyzed in Section 4. The proposed framework is explained in Section 5. We evaluate and demonstrate the performance of the proposed method in Section 6.At last, the whole paper is summarized in Section 7.

Related Work
The main problem of the WRSN is how schedule to the MCD to charge sensor nodes in time.In order to solve multiple simultaneous charging requirements and limited capacity of the MCD, here we introduce three kinds of works: multiple MCDs [9][10][11], partial charging scheme [12][13][14], and clustering method [15][16][17][18].
When the WRSN has multiple MCDs, many lifetime-critical sensor nodes can be charged simultaneously, and expired sensor nodes can be effectively reduced.In [9], an approximation algorithm was proposed to minimize the longest charging delay through finding the closed charging tour for each MCD.As the battery capacity of different MCDs may be different, the charging scheme considering the battery capacity of the MCDs was proposed to plan charging tours and depot positions of MCDs in [10].Authors in [11] proposed an online charging architecture which makes MCDs collaborate dynamically to minimize the energy hole rate.These works indicate that more sensors are charged in time and inevitably die in the WRSN with multiple MCDs.Thus, using multiple MCDs can prolong network lifetime, especially in the larger scale WSN.However, there are still some open problems, such as the optimal number of MCDs, which should consider the tradeoff among the utilization of the MCD, device cost, and the gain of the network lifetime.
In partial charging policy, as the sensor node is not fully charged, more sensor nodes can get chances to be charged, and then dead sensor nodes will be reduced accordingly.In [12], a partial charging scheme was proposed to minimize the overall dead time of sensor nodes through selecting core sensor nodes based on the contribution of sensor nodes on charging performance.Different from [12], authors in [13] minimized not only the overall dead time but also the number of dead sensor nodes.Similarly, the mechanism in [14] minimizes dead sensor nodes and maximizes energy utilization.These works show that dead sensor nodes are indeed reduced, even up to 70%.Meanwhile, the moving distance of the MCD is longer, and more energy is spent on extra moving.Thus, improving charging efficiency is the main challenge faced by these works.
Clustering lets one MCD charge more than one sensor node simultaneously.There are two methods: multiple charging method [15,16] and closed node charging method [17,18].Multiple charging method can improve charging efficiency, but the charging delay of a cluster is determined by the longest charging time of the sensor node in the cluster, which will result in time waste, especially in the uneven network.To address this problem, partial charging is combined with the clustering method [14].Closed node charging method can reduce charge anchors, and then allows the MCD to serve more sensor nodes.However, as the charging efficiency between the cluster head and the sensor node cannot reach 100%, the cluster head should also have charging ability.Hence, its charging efficiency is not high and the hardware requirement of sensor nodes is high.
The above-mentioned three types of works focus on how to schedule the MCD to charge, ignoring the energy consumption.If the energy consumption is reduced, given the same energy supply, more sensor nodes can be charged and the network lifetime can be prolonged.To reduce energy consumption, some works employ the MCD as a mobile data collector [19].This method reduces the energy consumed by the long distance data transmission which results in a larger delay.To address this, a mobile base station is used to relay collected data while the MCD is responsible for charging the sensor nodes in time; for example, in [20], the author designed an on-demand charging architecture to maximize the survival rate of sensor nodes and coverage of targets.
Despite the above-mentioned works about two-dimensional WRSNs, little research into the three-dimensional WRSN with certain applications has been proposed recently.However, in [21], the author proposed a charging scheme to schedule unmanned aerial vehicles to charge sensor nodes on bridges.
Before introducing our work, Table 1 for the main used symbols is given.The minimum required energy

The System Model
The considered network scenario is shown in Figure 1, which includes an MCD, many sensor nodes, and some monitored target points.The energy management and charging scheduling involves network parameters, energy consumption, and the charging method.Based on Figure 1, we introduce the network model, charging model, and energy model in the following.

Network Model
Suppose that the monitoring area is a two-dimensional rectangle plane A, and the area of A is L 1 × L 2 .There are N sensor nodes randomly placed on the plane A, which is widely adopted in the WSN, such as [22,23].The set of sensor nodes is S = {s 1 , s 2 , . . . ,s N }.The coordinate of each sensor node is known, and the coordinate of s i is denoted by (x i , y i ), 1 ≤ i ≤ N. The M target points are randomly distributed in area A with fixed positions and the coordinate of the target point is known.The set of target points is P = {p 1 , p 2 , . . .p M }.The coordinate of target point p j is x j , y j , 1 ≤ j ≤ M. We assume that the sensor network is static and cannot move.To guarantee all target points are covered, N and M should satisfy N M. The network lifetime N L is defined as the time that the network has worked when a target is not covered or the network is not connected.
The sensing radius is R s .A binary variable B ij is used to indicate whether sensor node s i can cover target point p j , which is defined as: where d ij is the distance between target point p j and sensor node s i .As we assume that the network is a two-dimensional plane, the distance between two nodes is Euclidean distance which is often used by related works [24] and can be calculated as If the distance is bigger than R s , B ij = 0, which indicates that target point p j cannot be covered by sensor node s i .Otherwise, B ij = 1, and the sensor node can monitor the target node.
The communication radius of each sensor node is R c .In order to ensure all collected data be sent to Sink, the network must be fully connected.According to the proof in [25], when the communication radius and the sensing radius satisfy R c ≥ 2R s , the network is fully connected if all targets are covered.In this paper, we assume that R c ≥ 2R s .Thus, only if all targets are covered, the requirement of the network connectivity is guaranteed.Thus, the network lifetime is revoiced as the time which the network has worked at the moment the target is not fully covered.Moreover, the ideal channel model is assumed to be used.That is, all channels among all sensor nodes and Sink are reliable and error-free.There is no transmission failure due to bit error.
The data generation rate of sensor node s i is denoted by λ i , and the relayed date rate from sensor node s i to sensor node s j is f ij .The neighbor set of sensor node s i is N i,ei , thus the total data λ i,total transmitted by sensor node s i can be expressed as: (2)

Recharging Model
The initial energy E 0 of the sensor node is full, that is E 0 = E max .Assume that the minimum energy required to maintain the basic function of sensor node is E min .When the remaining energy is smaller than E min , the sensor stops working and becomes a sleep node.If the residual energy is less than a certain value, which is denoted by E th , the sensor node needs to be charged and sends a charging request.For example, E th = 0.6E max .Further, it is assumed that Sink knows the position and energy information of the sensor node.Sink sends this collected information to the MCD and the MCD arranges the travel path according to a certain rule.
In the network, we assume that one MCD is responsible for energy replenishment of all sensor nodes and the energy capacity of the MCD is B max which is limited.The MCD starts from Sink, charges demanding sensor nodes one by one, and returns to Sink after finishing the charging task or when its energy can only afford its way back.Thus, Sink is not only the data collector and network controller, but also the energy supplier of the MCD.The running path of the MCD will form a closed-loop path, which can be expressed by As the path starts from Sink and ends at Sink, both s 0 and s L are Sink.That is, there are (L − 1) sensor nodes on the charging path P ath and s i is the i-th charged sensor node, which may not be s i .The moving speed of the MCD is constant which is denoted by V M .
When the MCD charges a sensor node, it will stop charging until the sensor node is fully charged.Hence, the required energy of the sensor node s i is: where E i,t is the residual energy of sensor node s i at the moment t that it is charged.If sensor node s j does not send the charging request, the required energy E j,r = 0.Meanwhile, the charging time T i of sensor node s i can be calculated as: where P i,in is the charging rate of sensor node s i .
The cycle time of the MCD consists of two parts: the charging time T ch of the MCD to the sensor node and the moving time T tr spent by the MCD from one sensor node to the next one.Thus, the cycle time can be expressed as: where T i,r is the charging time of sensor node s i on the path, which can be obtained by using T i .
According to the collected information, the MCD determines sensor nodes to be charged and the charging order.

Energy Model
The energy consumption in the network mainly consists of two parts.One part is consumed by the sensor node, and the other part is consumption of the MCD.The energy consumption of sensor nodes is further divided into three main portions: the energy used to sense data, sending data, and receiving data.Let e s denote the energy consumed by sensing one bit of data, then the energy of sensor node s i used to sense data is: The energy consumed by receiving data from neighbors is expressed as: where e r (d ji ) is the energy consumption of receiving the unit data from sensor node s j to sensor node s i .Since the data transmission adopts the multi-hop manner, the energy consumed by the data transmission including its own generated data and the relayed data from adjacent sensor nodes is expressed as: where e t (d) is the energy consumption of transmitting the unit data when the distance between the received sensor node and the transmit sensor node is d, d i(nh) is the distance between sensor node s i and the next-hop sensor node.Thus, by combining Equations ( 6)-( 8), the energy consumption rate of sensor node s i , denoted by C i , can be calculated as: Notation P out indicates the charging rate of the MCD to the sensor node.According to [26], the relationship between P out and P i,in is expressed as: where µ(d i,M ) is a function of the distance between the MCD and the charged sensor node and µ(d i,M ) ∈ [0, 1].In this work, the MCD can be closed to the sensor node when it charges this sensor node within a smaller distance.That is, the near-field charging is adopted.Thus, we assume that the MCD has a fixed energy loss when it charges the sensor nodes [3], such as µ(d) = 0.5.Substituting Equation (10) into Equation ( 4), the energy of the MCD used to charge sensor node s i is obtained as E i,r /µ(d i,M ).Then, the energy of the MCD used to charge sensor nodes is expressed as: Let e 0 denote the energy consumption of the MCD moving one meter and the energy spent on the moving trajectory is e 0 V M T tr .By using Equations ( 5) and ( 11), the energy required by the MCD in a round is calculated as:

The Problem Formulation and Analysis
As the energy capacity and moving speed of the MCD are limited, the sensor node may not get a charging chance or be charged in time, and then the network cannot unceasingly work due to energy exhaustion of the sensor node.Maximizing network lifetime is a primary target of the WRSN, which is also the object of this work.Based on the above description, the considered problem can be described as: where crad(N i,ei ) is a function used to get the number of elements in set N i,ei .According to the problem described by Equation ( 13), to guarantee the network lifetime, the MCD should charge all sensor nodes which send charging requests in time.However, due to limited energy capacity, the MCD may not satisfy all charging requests.In practice, many redundant sensor nodes are used to enhance the coverage and connectivity quality, and the data transmission of these sensor nodes will consume larger amounts of energy.If these sensor nodes go to sleep, the amount of transmitted data is reduced and energy consumption of the sensor node will be reduced.Then, the energy requests are decreased accordingly, and the energy of the MCD may be enough for the network.Meanwhile, the sensor nodes which urgently need energy have the chance to be charged in time.Hence, finding out the set with minimum sensor nodes is important to maximize network lifetime.
As the number of sensor nodes is much larger than targets points, it is easy to validate that there must be at least one set which has the minimum sensor nodes to cover all target points and guarantee the connectivity.Suppose that the number of nodes-minimum sets is q and q ≥ 1.The set of the nodes-minimum sets is denoted by where V i mincov is a nodes-minimum set which is expressed as Though the nodes-minimum set has minimum sensor nodes, it ignores energy consumption rate and residual energy of the sensor node.Thus, it cannot minimize the energy consumption and the required energy of keeping the network.Based on nodes-minimum sets, the set which has the minimum energy request is further searched due to the following theorem.
Theorem 1.The network lifetime is maximized if the lifetime of the set with the minimum energy requirement is maximized.
Proof.The set which has minimum energy request is denoted by V minreq and the minimum required energy is E mr .According to the relation among the required energy E r,MCD , E mr , and B max , there are three cases: Case 1, E mr > B max , Case 2, E r,MCD > B max > E mr , and Case 3, B max > E r,MCD .
For Case 1, the energy of the MCD cannot satisfy the minimum requirement.The optimal charging path of the MCD and the corresponding network lifetime are denoted as P * ath and N * L , respectively.There is another charging scheduling policy whose charging path is P * * ath and the achieved network lifetime is N * * L .Suppose that N * * L > N * L .As the nodes-minimum set limits the total amount of working sensor nodes and the generated data, the energy consumption rate of the nodes-minimum network is smaller.That is, the network should consume more energy to support the same lifetime than the nodes-minimum network, much less N * * L > N * L .Thus, the required charging energy E * R and E * * R of the nodes-minimum network and the network satisfy The set with the minimum energy requirement is an element of the set Q, and thus has the minimum sensor nodes.That is, P * ath < P * * ath where P * ath is the number of the sensor nodes on the charging P * ath .To traverse all sensor nodes on the path, the moving distance of the MCD on the P * * ath is larger.According to Equation ( 12), the MCD will consume more energy on the P * * ath .However, in this case, the total energy which can be used is the same as the energy capacity of the MCD.Therefore, the hypothesis does not hold and the network has the same lifetime as N * L .For Case 2, the MCD has enough energy to charge all sensor nodes in the nodesminimum set, and there must be a charging algorithm to guarantee the sensor nodes be charged.Then, the network will sustainably work, and the network lifetime is infinite.That is, the network lifetime is maximized.
For Case 3, the energy of the MCD is sufficient for all sensor nodes.Similar to Case 2, both the minimum set and the network have the same lifetime.
Therefore, the maximum lifetime of the network can be obtained through maximizing the lifetime of the network constructed by the set with the minimum energy requirement.

Corollary 1.
If the minimum energy requirement is smaller than the energy capacity of the MCD, the network lifetime maximization is changed into minimizing the sleep time of sensor nodes in V minreq .
Therefore, the problem in Equation ( 13) can be solved in two stages.Firstly, find out the energy-minimum set based on the nodes-minimum sets and the minimum energy requirement.Then, according to the relation between the minimum required energy and the energy capacity of the MCD, the different charging scheduling algorithms are designed to achieve network lifetime optimization.

Proposed Framework
As mentioned in the previous section, in order to maximize the network lifetime, we need to first find out the minimum energy requirement set V minreq and the minimum required energy E mr .According to Theorem 1, the charging algorithm should be designed separately based on the relation among E mr , B max , and E r,MCD .
In Case 1 (E mr > B max ), the energy of the MCD is insufficient to fully charge all sensor nodes within V minreq .To maximize the lifetime, a partial charging strategy is proposed to determine the charging order and the energy to be replenished for each senor node.
In Case 2 (E r,MCD > B max > E mr ), the MCD has enough energy to replenish the sensor node in the set V minreq , but not the whole network.As discussed before, the network can sustainably work since sensor nodes guaranteeing the coverage and connectivity can get enough energy supply.According to Corollary 1, the main target of the charging policy is minimizing the sleep time of the sensor node in the set V minreq .To enhance charging efficiency and reduce further charging requests, a scheduling algorithm should be designed to charge sensor nodes out of the set.
In Case 3 (E r,MCD < B max ), the energy of the MCD can satisfy charging requests of all sensor nodes.Hence, to guarantee the coverage and connectivity, the MCD charges sensor nodes in the set V minreq with the target of minimizing the sleep time.Then, the sensor node out of the set is charged with the target of maximizing charging efficiency.
Therefore, to maximize network lifetime and fully utilize the energy of the MCD, a scheduling and charging framework is proposed, which is shown in Figure 2. First, an algorithm is proposed to find the set which has the minimum sensor nodes and least required energy.Then, according to the energy relation, algorithms with different targets are proposed.

Find Minimum Energy Requirement
As shown in Figure 2, the first step of the framework is determining the set which has the minimum energy demand.Through analyzing E r,MCD , it can be found that the traveling distance of the MCD and the energy requirement of sensor nodes are two the main factors [27].To minimize the energy consumption, the active sensor nodes should be as few as possible while the traveling distance of the MCD is as short as possible.To guarantee the application, all target points should be covered and all active sensor nodes must connect with each other.Finding a set satisfying all above demands is difficult.
To solve this difficulty, we divide the solution into two stages.First, find the minimum node set which covers all target points [28].As there may be more than one such set, then find the set with the minimum energy demand from the set of minimum-nodes sets.Since the coordinates of nodes are known and the number of nodes is limited, we can calculate the minimum energy demand E mr by using shortest path routing and find out the node set V minreq with minimum energy demand.
Searching minimum node sets has proven to be an NP-hard problem; thus, we proposed a MinCharging algorithm based on particle swarm operation algorithm to find the minimum node set V minreq and calculate minimum energy demand E mr .In the particle swarm optimization algorithm, particles can be defined as individuals in a population that represent potential solutions to a given problem.Each particle has a position and velocity in the search space, and through continuous iterations, it aims to converge to the optimal solution.In this paper, each particle is defined as a set of charging nodes that minimize the required energy.The flow chart of applying particle swarm optimization to solve the minimum node set is shown in Figure 3.
The designed algorithm uses binary numbers 0 and 1 to represent whether the sensor node is included in the set V i mincov , where 1 and 0 represent whether or not the corresponding sensor node is in the set, respectively.To satisfy the requirement of the minimum node set, the fitness function is proposed by considering two following objectives.
Objective 1, all target points should be covered and the coverage rate is as large as possible.
where n(k) 2 represents the number of target points which can be covered by sensor nodes on the kth particle.Objective 2, the number of selected sensor nodes should be the least.In order to maintain consistency, we convert the target to the maximum number of unselected sensor nodes to facilitate the calculation of our minimum energy requirement sensor node set.
where ∑ n i=1 s i represents the number of selected nodes.
Initialize the particle swarm Randomly generated a set of particles, each particle is expressed in the solution space a solution, that is, a node set.

Calculated fitness
For each particle, calculate the value of its objective function.

Update the global optimal solution
The set of nodes corresponding to the particle with the best fitness value is taken as the global optimal solution.

Update the velocity and position of each particle
Update node set Based on the updated speed and position, the corresponding element in the node set is updated to 1 or 0 to indicate whether it is selected.The function of k chromosome is denoted by f itness(k) which is defined as:

Output the optimal solution
where 0 < α < 1.It can be noticed that the larger the value of the objective function, the higher the superiority.Meanwhile, we apply a penalty term in the fitness function to penalize particles that do not satisfy the requirements.Specifically, when a particle violates the requirements, such as having charging nodes that are not required, we randomly assign a large positive value to decrease the fitness value of that particle, thus penalizing it.If a particle satisfies all the requirements, the penalty term is set to 0. Through maximizing the value of fitness function, the set V i mincov can be found.Then, based on the set Q, calculating the minimum energy requirement of each set V i mincov .Through comparing the value of the minimum energy requirement, the set V minreq with minimum energy demand node set and minimum energy demand E mr are obtained.More details can be found in Algorithm 1.
To illustrate the finding process, the legend for particles is given, which is shown in Figure 4 where pop represents the number of particles.Algorithm 1 Charging Minimum Energy Demand Algorithm 1: Input: x j , y j , R S , (x i , y i ), E max , V M , B max , pop, and iter.2: Output: Minimum energy demand E mr and minimum energy demand node set V minreq .3: Initializes the selected value n i for each node; 4: For i = 1 : N 5: if n i > ξ, n i = 1, endif.6: For j = 1 : pop 7: Calculate the fitness f itness according to Equation ( 16); 8: Select the globally optimal particle and the corresponding fitness function value; 9: For k = 1 : iter 10: For l = 1 : pop 11: Update particle velocity; 12: Update particle position; 13: Calculate the fitness f itness; 14: Select the globally optimal particle and the corresponding fitness function value; 15: Update the minimum cover node set V mincov ; 16: Nodes in the set are sorted according to the distance from MCD, and V mincov is updated; 17: Calculate the energy required by the sensor nodes in V mincov according to Equation (12) and the shortest travel distance of corresponding nodes, and derive E req ; 18: End all for circulations 19: Repeat above operations.The energy required for charging the sensor nodes in the set under different V mincov is obtained.E mr and V minreq at this time are obtained by ordering E req .

The Algorithm Maximizing Network Lifetime
Based on the previous subsection, we have obtained the minimum energy demand E mr and sensor nodes to be charged.If E mr is larger than the energy capacity of the MCD, the energy of MCD is insufficient to serve all sensor nodes within V minreq , no more than the whole network, so a partial charging strategy is adopted for sensor nodes within the set to maximize the network lifetime.
According to the definition of the set V minreq , the network lifetime in this case means the time which the network has work when one sensor node in the set V minreq is dead.Hence, if each sensor node has the same work time after being charged by the MCD, the network lifetime achieves the maximum value.Considering the residual energy and the energy consumption rate of the sensor node, the partial charging parameter δ i is expressed as: where E i,charge is the energy used to replenish sensor node s i .
According to Equation ( 17), the MCD calculates the energy used to replenish sensor node s i .Then, a shortest-path algorithm is used to determine the charging path to minimize the energy consumed on the moving path.The specific charging policy is given in Algorithm 2.
Algorithm 2 Algorithms to maximize network lifetime 1: Input: V minreq and E mr .2: Output: Charging node sequence and E i,charge .3: Initialize the charging set V charge = V minreq ; 4: For i = 1 : V minreq 5: Calculate the remaining working time of each sensor node T i,rest = E i,r C i ; 6: Calculate the energy to be charged E i,charge of the sensor nodes in the V minreq according to Equation ( 17); 7: End for.8: Sensor nodes in V minreq are sorted in ascending order of distance from s i ; 9: Update the charging set V charge ; 10: For i = 1 : V charge 11: Calculate the energy E i,charge of each sensor node to be charged; 12: End for.13: Derive charging path according to E i,charge and updata the energy of each sensor node to be charged.

The Algorithm Minimizing the Dead Time
If E mr < B max , the MCD has additional energy after charging all sensor nodes in the set V minreq .Although the MCD has enough energy for the sensor node in the set, due to limited moving speed, some sensor nodes may not be charged in time.Minimizing the sleep time of sensor nodes due to belated charging is the first task in this situation.
Since the MCD has enough energy, the main factors influencing the sleep time of the sensor node are the charging sequence and the remaining energy of the sensor node.To minimize the sleep time of the sensor node, an algorithm is proposed to arrange the charging order by considering the position and the remaining energy of the sensor node in the set V minreq .
After the MCD receives the position information of each sensor node, it will calculate the distance between itself and the sensor node.The MCD maintains two separate priority queues: energy priority and distance priority.According to the remaining energy of the sensor node and its relative distance from the MCD, the MCD calculates energy priority p e (i) and distance priority p d (i) of sensor node s i .By considering these two factors, the priority p(i) of the sensor node s i is: where 0 < β < 1 represents the weight of the energy priority while (1 − β) represents the weight of the distance priority.According to different environments of wireless sensor network [29], through adjusting the value of β and charging the sensor node with the highest priority, different charging targets can be achieves.The charging policy is given in Algorithm 3. As B max > E mr , after charging sensor nodes in V minreq , the MCD still have some energy for other sensor nodes who also send the charging request.Referring to some existing work, when the energy is uniformly distributed over the whole sensor network, the network can achieve a better network lifetime.For further work of the network, we use a partial charging policy given in Algorithm 2 to plan charging work for the sensor node out of the set V minreq .
Algorithm 3 Algorithms to minimize the dead time 1: Input:V minreq , V out and E mr .2: Output: Charging sequence and total death time.3: Calculate the charging set V charge = V minreq + V out ; 4: If s i ∈ V minreq , then 5: For i = 1 : V minreq 6: Calculate the charging priority of sensor node i in V minreq according to Equation (18); 7: End for.8: Sensor nodes in V minreq are sorted in descending order of p i ; 9: Sensor nodes are charged according to the new order and record the sensor node death time.10: Else Algorithm 2 is used to charge sensor nodes in set V out ; 11: For i = 1 : |V out | 12: Record the sensor node death time; 13: End for.14: Update the charging set V charge ; 15: Calculate the total death time of the sensor node in set V charge .

The Algorithm Maximizing Charging Efficiency
The charging sequence is determined by the remaining energy and position of the sensor node while the charging amount of each sensor node is determined by the remaining energy, energy consumption rate, and the remaining energy of the MCD.Under the premise of maintaining the coverage of target nodes in the network, more sensor nodes are maintained, and then the network performance can be further improved.Hence, to keep more sensor nodes alive, if the MCD has extra energy for sensor nodes outside the set, partial charging is used for these outside sensor nodes.
In Case 3, the MCD has enough energy to serve the entire network, thus the goal of the charging strategy for this case is to maximize charging efficiency on the premise of ensuring the lifetime of the network.The network is considered viable when all target points are covered.The sensor nodes in V minreq are charged preferentially to ensure that the network functions are complete.To guarantee the normal work of the network, Algorithm 2 is used by the sensor node in V minreq and the MCD.Then, the outside sensor nodes are charged.Supplementing the energy of sensor nodes outside the set can maintain more sensor nodes for overlay target awareness and further improve network performance.In order to ensure that the same remaining MCD energy can be used to supplement more sensor nodes, Algorithm 4 is proposed to determine the charging sequence and energy proportion for other sensor nodes of the network.
According to Equations ( 11) and ( 12), charging efficiency of the MCD is expressed as: In a fixed time, less energy consumed during the MCD charging journey means more energy used to charge the sensor nodes, and the higher energy efficiency of the MCD.That is, the charging utility of the MCD is also related to the travel distance.To maximize the charging efficiency of the MCD, Algorithm 4 considers the residual energy and the energy consumption rate of the sensor node and the position of both sensor node and the MCD to arrange the charging order and determine the charged energy of the sensor node.
Algorithm 4 Algorithms to maximize charging efficiency 1: Input: Q, V minreq , B max , C i , and E i,t .2: Output: Charging node sequence and the travel distance.3: For i = 1 : V minreq 4: Calculate the remaining energy of MCD E r MCD = B max − E V min req r,MCD ; 5: End for.6: Find the set of sensor nodes outside the minimum energy demand node set V res = V − V minreq ; 7: For i = 1 : |V res | 8: Calculate the charging amount of the sensor node to be charged in V res according to Equation ( 17).9: Calculate the charging efficiency gain of each sensor node MCD.10: End for. 11: The final charge efficiency gain δ i is determined by maximizing the total charge efficiency gain.12: Update the charging set V res ; 13: For i = 1 : |V res | 14: Calculate δ i by using E i,ch arg e ; 15: End for.16: The sensor nodes are sorted according to the charging efficiency gain δ i ; 17: Derive the driving path of the MCD and the energy of the sensor node s i to be charged.

Performance Evaluation
In this section, we use MATLAB to verify the proposed algorithm and discuss the effectiveness of the proposed algorithm from different perspectives, including network size, charging rate, maximum data rate, and the number of target monitoring sensor nodes.The results show that the proposed algorithm can effectively improve the network lifetime and the energy efficiency of the MCD.

Parameter Setting
We refer to the parameter setting of the existing work, and deploy the network in the area of 1000 m × 1000 m [19].The battery capacity of each sensor node is 10.8 KJ [30], and the data rate of the sensor node varies within the interval [1 kbps, 10 kbps] [30].The number of target nodes in the network is 10.When the target node is not covered by the sensor node, the network is dead.The vehicle speed is 5 m/s [31] and the energy consumption of the vehicle is 0.6 KJ/m [32].Though the charging rate for some device is small, such as Bluetooth [33], for the approximate charging time and considering charging loss, the transmit power of the MCD is larger and set as any integer within the range [1 Watt, 10 Watts] referring to [3].The network charging threshold is 5 h, and the charging cycle is one year [34].In the particle swarm optimization algorithm, the particle size is set to 50, and the maximum number of iterations is set to 1000.Table 2 lists the setting of parameters.To verify the performance, we compared the proposed algorithm with two other algorithms: CSER [19] and JA [35].

Results
To investigate the impact of network configuration on the network lifetime and the charging efficiency, we investigated the impact of different factors on the performance of the proposed algorithm, including network size, charging rate, maximum data rate, and number of target monitoring sensor nodes.In these figures, PA is our proposed scheme.
Firstly, we simulated the network lifetime and the travel distance under different numbers of sensor nodes: 100-500, and the results are given in Figure 5.Among them, P out is 5 Watts and the maximum data rate is 10 kbps.In Figure 5, with the increase of the network scale, the network survival time gradually decreases, because with the increase of the number of sensor nodes in the network, the number of sensor nodes which need to be charged also increases.At this point, the MCD cannot charge sensor nodes in time, resulting in the death of some sensor nodes used to cover target nodes.At the same time, it can be found that, compared with the other two algorithms our proposed scheme has the maximum network lifetime.This is because the network lifetime is determined by the time the target node is covered, and the algorithm proposed in this paper assigns a higher weight to the sensor node responsible for covering the target node in the charging process.At the same time, the proposed scheme considers that the energy of the MCD may not meet the minimum energy demand in a single charging cycle, and adopts partial charging for the sensor nodes to maintain the maximum possible network operation.Therefore, the network lives longest.In Figure 5, it can be seen that the travel distance increases with the increase of network size.This is because the number of sensor nodes to be charged increases with the increase of network size, and the travel distance increases.At the same time, the proposed algorithm has the shortest driving distance, because in some cases, such as E mr > B max , compared with other algorithms, partial charging is preferred to meet the sensor nodes within the minimum energy demand set covering the target node for charging.Furthermore, the remaining energy and charging distance of the sensor nodes to be charged are also taken into account, so the charging distance is the shortest.Thus, the moving time of the MCD decreases, which ensures the survival of the network as far as possible.
Figure 6 analyzes the influence of MCD charging rate on network lifetime and the MCD travel distance.At this point, we set the network size to 200 and the maximum data rate to 10 kbps.In Figure 6, the network lifetime prolongs with the increase of charging rate.This is because the higher the MCD charging rate, the faster the charging speed, and the MCD can replenish energy for the remaining sensor nodes to be charged faster, thus reducing the probability of sensor node death.At the same time, it can be seen that the network lifetime obtained by our algorithm is the highest, because compared with other algorithms, we give priority to the sensor node covering the target node.In addition, partial charging of node fairness is adopted when demand exceeds supply, so as to ensure the coverage of target nodes and prolong the network lifetime.In Figure 6, since this paper comprehensively considers the charging priority of sensor nodes covering target nodes, the remaining energy of sensor nodes to be charged, and the charging distance, the MCD charging distance obtained by the proposed algorithm is the shortest.
Figure 7 analyzes the influence of the maximum data rate on the network lifetime and the travel distance, in which the network size is 200 and the charging rate is 5 m/s.In Figure 7, as the data rate increases, the network lifetime decreases, because as the maximum data perception rate increases, the sensor nodes perceive more data in the same time, and the network consumes more energy, thus reducing the network lifetime.At the same time, it can be seen intuitively that the proposed algorithm obtains the highest network lifetime.In Figure 7, as the data rate increases, the travel distance increases.This is because the perceived data quantity of the sensor node increases and the number of sensor nodes to be charged also increases.Therefore, in the same charging cycle, the travel distance of the MCD increases with the increase of the data rate.Furthermore, as this paper comprehensively considers the coverage of target monitoring nodes, residual energy and charging distance, the travel distance is the shortest.Figure 8 analyzes the influence of the number of target points in the network on the network lifetime and the travel distance.In this figure, the network size is 200, the charging rate is 5 m/s, and the maximum data rate is 10 kbps.In Figure 8, with the increase of the number of target points, the network survival time decreases, because with the increase targets, the probability of the target node failing to be covered the same increases, thus reducing the network lifetime.At the same time, it can be seen that, since this paper considers the charging priority of the sensor nodes to be charged covering the target nodes, and adopts the fair partial charging strategy based on the comprehensive decision of sensor node remaining power, sensor node energy consumption rate, and the MCD remaining energy, the proposed algorithm obtains the highest network lifetime.In Figure 8, as the number of targets increases, the travel distance also increases.This is because as the number of target monitoring nodes increases, the number of sensor nodes to be charged covering the number of target nodes also increases, so that the travel distance increases in the same charging cycle.At the same time, as this paper comprehensively considers the coverage of target nodes, residual energy, and charging distance, the travel distance is the shortest.The maximum data rate / kbps The maximum data rate / kbps Figure 9 analyzes the influence of the MCD capacity on the network lifetime and the MCD traveling distance.The network size is 200, the charging rate is 5 m/s, and the maximum data rate is 10 kbps.In Figure 9, as the MCD capacity increases, the network lifetime also increases.This is because as the MCD capacity increases, the number of sensor nodes that can be charged within a cycle increases, more sensor nodes can get energy supplement, and the probability of node death is reduced.Compared with other algorithms, the proposed algorithm has the highest network lifetime, because it gives priority to the minimum energy demand set and designs the corresponding algorithm according to the relationship between supply and demand, effectively prolonging the network lifetime.In Figure 9, as the capacity of the MCD increases, the driving distance of the MCD increases.However, as the proposed algorithm comprehensively considers the set of nodes with minimum energy demand, the coverage of target nodes, remaining power, and charging distance, MCD has the shortest driving distance.The number of targeted sensor nodes The number of targeted sensor nodes 5.5 Finally, the remaining energy of the network after different iterations is observed, as shown in Figure 10.Compared with CSER and JA, the algorithm proposed in this work has a better effect in preserving network residual energy.This is because PA gives priority to energy supplement for the sensor nodes that cover the target nodes, and also designs fair partial charging during the short supply season.The MCD can charge more sensor nodes, thus effectively prolonging the life time of the network, and the performance of the remaining energy of the network is better under different iterations.

Conclusions
In this paper, we design a novel charging scheduling scheme based on an energyconstrained MCD to maximize network lifetime.Different from charging directly to all sensor nodes, we first try to use the minimum energy cost to guarantee the sustainable work of the network, and then the remaining energy is used to further improve network performance, such as energy efficiency.To find this minimum cost, an algorithm is proposed to find the minimum sensor nodes set with minimum energy requirement based on particle swarm optimization algorithm.According to the relation among the energy capacity of the MCD, the minimum energy requirement, and the energy requirement of all sensor nodes, the charging problem is divided into three cases.In different cases, maximizing network lifetime is changed into different problems.To solve these problems, three algorithms are proposed to realize the target of maximizing network lifetime and charging efficiency.Though we have considered the lowest cost problem and the role which sensor nodes play in the network in charging strategy, the joint node scheduling and charging should be further carefully designed based on this work in the future.

Figure 4 .
Figure 4.The legend for particles.

Figure 5 .
Figure 5.The network lifetime and travel distance of the MCD of proposed algorithm under different network sizes.

Figure 6 .
Figure 6.The network lifetime and travel distance of the MCD of proposed algorithm under different charging rate.

Figure 7 .
Figure 7.The network lifetime and travel distance of the MCD of proposed algorithm under different maximum data rate.

Figure 8 .
Figure 8.The network lifetime and travel distance of the MCD of proposed algorithm under different number of targeted sensor nodes.

Figure 9 .
Figure 9.The network lifetime and travel distance of the MCD of proposed algorithm under different MCD capacities.

Figure 10 .
Figure 10.Remaining energy of the network.

Table 1 .
Meanings of symbols.