# Mixed Linear Programming for Charging Vehicle Scheduling in Large-Scale Rechargeable WSNs

Authors: P. Suman Prakash; M. Janardhan; K. Sreenivasulu; Shaik Imam Saheb; Shaik Neeha; M. Bhavsingh
Journal: Journal of Sensors
 (2022)

---

## Abstract

Because wireless sensor networks (WSNs) have low-constrained batteries, optimizing the network lifetime is a primary challenge. Rechargeable batteries are a solution to prolong the lifetime of a sensor node instead of restricting their functionalities to save energy. Wireless energy transmitters have the added benefit of providing a charger for the batteries of the sensor nodes in the WSN. However, scheduling one or more charging vehicles efficiently to recharge multiple sensor nodes is challenging. In this context, this paper provides a solution to recharge the sensor nodes using charging vehicle scheduling in WSNs through a mixed linear programming approach. Initially, we identify a heuristic value of each sensor node based on their residual energy, distance from a charging vehicle, available data packets, and other metrics. Further, a set of nodes is recharged by identifying the best charging vehicle to prolong their lifetimes, as well as the lifetime of the network as a whole. We simulated the proposed approach using a Python simulator, tested using different performance metrics, and compared using the recently published works. We notice the superior performance of the proposed work under various metrics in time and query-driven WSNs.


---

## Body

## 1. Introduction

The sensor nodes (SNs) of wireless rechargeable sensor networks (WRSNs) have rechargeable batteries, which can be charged to extend their lifespan [1]. There are several ways in the literature to recharge the sensor nodes, such as using energy harvesting techniques, battery-equipped unmanned aerial vehicles (UAVs) [2], solar panel-equipped SNs, and charging stations in between the network [3, 4]. Through recent advancements, one of the most promising approaches is wireless energy transmitters (WET). In general, a WET is equipped with a vehicle called a charging vehicle (CV), which is scheduled in the network to recharge the SNs without affecting their topological disorders [5]. A CV is equipped with a battery of unlimited energy (due to energy harvesting), and it recharges the nodes while traveling in the network. Mainly, the CV visits a set of points called anchor points (APs) which is one hope distance from a group of nodes to recharge parallelly. There are several approaches in the literature to identify an optimal set of APs, with their benefits and limitations [6–8]. These approaches also specify a path for the CV to traverse in the network.In large-scale WSNs, it is not easy to schedule a CV to recharge the whole network because recharging a node takes a long time than the data collection process [9]. So, it is required to introduce more than one CV to recharge a demanded or group of nodes in the network. Increasing the number of charging will also increase the deployment cost, but a lower number of CVs cannot solve the issue [10, 11]. It is challenging to identify the best set of CVs, increasing the charger efficiency by prolonging the network lifetime. Hence, it is necessary to provide an efficient algorithm to choose the best quantity of CVs to recharge the energy demanded SNs because it is lacking in the literature. When more than one CV is in the network, scheduling them to solve the recharging purpose is difficult. So, it is further challenging to assign a group of charging requests to a specific CV. There are several approaches in the literature, but they are not dynamic, and many techniques use random or heuristic strategies [12, 13].The scheduling problem of requests and CVs is solved using a mixed-integer programming (MIP) approach in this paper. Before that, we identify the weights of each SNs depending on various factors of an SN, including its residual energy, distance from the charger or base station, and available data packets. Using this weight, an MIP is applied to identify the best CV that can handle the charging request quickly and efficiently. With this motivation, we proposed a dynamic CV scheduling approach to prolong the lifetime through WET to recharge sensor nodes in WRSNs.Overall, the contributions of the proposed MLPCV strategy are summarized as follows:(1)
We propose a heuristic strategy to analyze the energy status and sustainability of each sensor node in the network and assigned a weight value to each node(2)
A mixed linear programming strategy is used to identify the suitable charging vehicle, which can be scheduled to recharge a set of sensor nodes efficiently(3)
The performance of the proposed work is evaluated under different scenarios and metrics using the existing charging vehicle scheduling approachesThis paper is organized as follows: The recently published charger scheduling algorithms are analyzed in Section2. The system model along with the problem statement is defined in Section 3. The proposed MLPCV algorithm is presented in Section 4 along with illustrative examples. This section also analyzes the complexity of MLPCV. The simulation results are discussed and plotted in Section 5. Finally, Section 6 concluded the paper with future scope.


## 2. Related Work

We find several works in the literature using WET-based mobile vehicles to recharge the sensor nodes in the WSNs. This section categorizes the previous works into two types based on the number of CVs used in their works, such as one or more CVs. We summarize recent and related works in this section with their benefits and challenges.


### 2.1. Single Charging Vehicles

A CV can serve one or more recharge requests where coverage is the primary objective than the longest sustainability of sensor nodes [14]. This approach provides efficient charging scheduling and increases connectivity, which further helps efficient data routing. Clustering is a common approach in WSNs, whereas this strategy is used to recharge the SNs in the WSNs using solar power. The efficiency and sustainability of the nodes are increased in this approach in terms of longer life. Similarly, Tomar et al. [15] use a clustering mechanism to identify the efficient AP to visit by the CV to recharge the needed nodes. The path of the CV is crucial in this approach, but this work is not for large-scale WSNs. The charger utility is maximized by Srinivas et al. in [16] using a heuristic strategy. This approach efficiently maximizes the CV utility while balancing the energy of the SNs among the network.Identifying an efficient path for the CV is a challenging task in WSNs, whereas Jiang et al. [17] focused on this issue in their approach. Efficient anchor points are identified to recharge multiple nodes and serve the charging requests at a single instance. It takes time to restore an SN until the battery is full. Considering these challenges, a partial charging strategy is introduced in [18] with a genetic approach and multiattribute decision-making systems. This approach balances and simultaneously serve multiple requests to sustain the longer visibility of nodes. The charging scalability is optimized in [19] to maximize the CV’s efficiency. Multiple SNs are recharged simultaneously in [20], where the scheduling is decided based on the residual energies of the SNs. In [21], a hierarchical clustering approach is used to identify the optimal clusters to schedule the CV to serve maximum requests in the WSNs. Since the computational complexity of this approach is high, it is not feasible for large-scale networks.Depending on the need for charging, the on-demanded CV scheduling strategy is proposed in [22] for recharging more nodes to sustain the longer lifetime. In [23], multiple battery-filled sensor nodes are used to replace the SNs, which are critical with their battery. However, this is expensive to replace the number of SNs and not secure. It is also not feasible for all applications. Deep reinforcement learning is an efficient classification and learning method, and the benefits of this approach are used for WSNs to recharge the nodes in [24]. This approach is used a partial charging strategy, so the network lifetime is longer for small WSNs. This approach also takes high computational resources than other approaches. A collaborative charging strategy is presented in [25], in which the authors mainly focused on building an optimal tour for the CV. In this approach, the optimal charging points are decided to fit the large-scale WSNs.From the above discussion, we identify several algorithms in the literature that use a single charging vehicle to recharge the sensor nodes in the network. However, these approaches are limited to small networks with limited SNs. The large-scale WSNs are deployed with unlimited SNs and receive multiple requests simultaneously. Handling such situations is not possible with a single charging vehicle.


### 2.2. Multiple Charging Vehicles

A new strategy for identifying the reason to charge a node along with the route from the current location of CVs to recharging nodes of WSNs is presented in [21]. But identifying the best set of CVs required for the network to serve the requests efficiently is not determined in the paper. A traditional push-shuttle-back approach serves the charging requests in large-scale WSNs. This strategy is efficient and inexpensive but not optimal. Another charging request serving algorithm is presented in [26] using more CVs, and this approach achieves 1% efficiency over the traditional algorithms. However, this approach also failed to determine the optimal number of CVs that can serve the network requests. An electromagnetic radiation-based recharging algorithm is proposed for WSNs in [27]. In this, the TSP approach is used for the CV route to recharge the nodes, but this approach also failed to determine the optimal number of CVs that can solve the problem to minimize the CV cost. In [28], lifetime enhancement through CV is presented for large-scale WSNs. Unlike other traditional approaches, this approach determines the best number of CVs that can solve the charging requests in the network. However, this approach is computationally high and also not optimal.With coverage intention, a CV scheduling approach is proposed for large-scale WSNs in [29]. In this strategy, identify the SNs with limited energy and give high priority to recharging them to maintain the connectivity and avoid sink-hole problems in the network. In [30], swarm intelligence is used to schedule multiple CVs in the network. In this, the APs are identified initially, and then, CVs are scheduled based on the APs to recharge the nodes in the network. However, this approach failed to decide the best number of CVs required to restore the requested network nodes. Control of the velocity of the CVs is a critical challenge, and it is addressed in [31] using approximation algorithms. Still, this approach is not efficient and optimal in terms of choosing the APs in the network. In [32], an integer programming approach is used to schedule the CVs in large-scale WSNs. Still, this approach failed to choose the best possible CVs to cover the entire network.A ring-wandering approach used to schedule the multiple CVs to recharge the SNs deployed in large-scale WSNs is presented in [33]. This approach is efficient in balancing the energy of the SNs and prolonging their lifespan. However, the performance is improved but failed to identify the optimal number of CVs to control the cost. A clustering algorithm is also used in multiple CV scheduling in [34] using a statistical approach and heuristic formulae. This approach efficiently identifies the APs in the networks and controls the scheduling, but it does not provide the optimal number of CVs. In [35], an optimal number of CVs are determined to replenish the energy of the SNs in the network. However, this approach failed to produce the optimal route for the CVs and charging efficiency. In [36], a hybrid metaheuristic strategy is used to serve the charging requests by providing optimal scheduling. This approach efficiently finds the best set of APs and routes to recharge the nodes. Although this is efficient, it requires more computational resources to run the algorithm, whereas it is not feasible because of the constrained resources of WSNs.As we noticed in this discussion, most of the works are using heuristic, clustering approaches to identify the APs and TSP for the traveling path for the CVs. While considering all these limitations, we proposed an efficient approach to schedule multiple CVs in the large-scale WSNs to recharge the nodes in the network. It can also decide the optimal visiting points.


## 2.1. Single Charging Vehicles

A CV can serve one or more recharge requests where coverage is the primary objective than the longest sustainability of sensor nodes [14]. This approach provides efficient charging scheduling and increases connectivity, which further helps efficient data routing. Clustering is a common approach in WSNs, whereas this strategy is used to recharge the SNs in the WSNs using solar power. The efficiency and sustainability of the nodes are increased in this approach in terms of longer life. Similarly, Tomar et al. [15] use a clustering mechanism to identify the efficient AP to visit by the CV to recharge the needed nodes. The path of the CV is crucial in this approach, but this work is not for large-scale WSNs. The charger utility is maximized by Srinivas et al. in [16] using a heuristic strategy. This approach efficiently maximizes the CV utility while balancing the energy of the SNs among the network.Identifying an efficient path for the CV is a challenging task in WSNs, whereas Jiang et al. [17] focused on this issue in their approach. Efficient anchor points are identified to recharge multiple nodes and serve the charging requests at a single instance. It takes time to restore an SN until the battery is full. Considering these challenges, a partial charging strategy is introduced in [18] with a genetic approach and multiattribute decision-making systems. This approach balances and simultaneously serve multiple requests to sustain the longer visibility of nodes. The charging scalability is optimized in [19] to maximize the CV’s efficiency. Multiple SNs are recharged simultaneously in [20], where the scheduling is decided based on the residual energies of the SNs. In [21], a hierarchical clustering approach is used to identify the optimal clusters to schedule the CV to serve maximum requests in the WSNs. Since the computational complexity of this approach is high, it is not feasible for large-scale networks.Depending on the need for charging, the on-demanded CV scheduling strategy is proposed in [22] for recharging more nodes to sustain the longer lifetime. In [23], multiple battery-filled sensor nodes are used to replace the SNs, which are critical with their battery. However, this is expensive to replace the number of SNs and not secure. It is also not feasible for all applications. Deep reinforcement learning is an efficient classification and learning method, and the benefits of this approach are used for WSNs to recharge the nodes in [24]. This approach is used a partial charging strategy, so the network lifetime is longer for small WSNs. This approach also takes high computational resources than other approaches. A collaborative charging strategy is presented in [25], in which the authors mainly focused on building an optimal tour for the CV. In this approach, the optimal charging points are decided to fit the large-scale WSNs.From the above discussion, we identify several algorithms in the literature that use a single charging vehicle to recharge the sensor nodes in the network. However, these approaches are limited to small networks with limited SNs. The large-scale WSNs are deployed with unlimited SNs and receive multiple requests simultaneously. Handling such situations is not possible with a single charging vehicle.


## 2.2. Multiple Charging Vehicles

A new strategy for identifying the reason to charge a node along with the route from the current location of CVs to recharging nodes of WSNs is presented in [21]. But identifying the best set of CVs required for the network to serve the requests efficiently is not determined in the paper. A traditional push-shuttle-back approach serves the charging requests in large-scale WSNs. This strategy is efficient and inexpensive but not optimal. Another charging request serving algorithm is presented in [26] using more CVs, and this approach achieves 1% efficiency over the traditional algorithms. However, this approach also failed to determine the optimal number of CVs that can serve the network requests. An electromagnetic radiation-based recharging algorithm is proposed for WSNs in [27]. In this, the TSP approach is used for the CV route to recharge the nodes, but this approach also failed to determine the optimal number of CVs that can solve the problem to minimize the CV cost. In [28], lifetime enhancement through CV is presented for large-scale WSNs. Unlike other traditional approaches, this approach determines the best number of CVs that can solve the charging requests in the network. However, this approach is computationally high and also not optimal.With coverage intention, a CV scheduling approach is proposed for large-scale WSNs in [29]. In this strategy, identify the SNs with limited energy and give high priority to recharging them to maintain the connectivity and avoid sink-hole problems in the network. In [30], swarm intelligence is used to schedule multiple CVs in the network. In this, the APs are identified initially, and then, CVs are scheduled based on the APs to recharge the nodes in the network. However, this approach failed to decide the best number of CVs required to restore the requested network nodes. Control of the velocity of the CVs is a critical challenge, and it is addressed in [31] using approximation algorithms. Still, this approach is not efficient and optimal in terms of choosing the APs in the network. In [32], an integer programming approach is used to schedule the CVs in large-scale WSNs. Still, this approach failed to choose the best possible CVs to cover the entire network.A ring-wandering approach used to schedule the multiple CVs to recharge the SNs deployed in large-scale WSNs is presented in [33]. This approach is efficient in balancing the energy of the SNs and prolonging their lifespan. However, the performance is improved but failed to identify the optimal number of CVs to control the cost. A clustering algorithm is also used in multiple CV scheduling in [34] using a statistical approach and heuristic formulae. This approach efficiently identifies the APs in the networks and controls the scheduling, but it does not provide the optimal number of CVs. In [35], an optimal number of CVs are determined to replenish the energy of the SNs in the network. However, this approach failed to produce the optimal route for the CVs and charging efficiency. In [36], a hybrid metaheuristic strategy is used to serve the charging requests by providing optimal scheduling. This approach efficiently finds the best set of APs and routes to recharge the nodes. Although this is efficient, it requires more computational resources to run the algorithm, whereas it is not feasible because of the constrained resources of WSNs.As we noticed in this discussion, most of the works are using heuristic, clustering approaches to identify the APs and TSP for the traveling path for the CVs. While considering all these limitations, we proposed an efficient approach to schedule multiple CVs in the large-scale WSNs to recharge the nodes in the network. It can also decide the optimal visiting points.


## 3. Problem Formulation and Parameter Description

The representation of the WSNs is shown as a graphG with a set of nodes and edges. The n number of nodes are represented as S+=S∪S0, where S0 is the BS and S means the set of nodes. The proposed algorithm is centralized, so it is executed in S0. So, the computational resources are unlimited for executing the code. The edges are identified using their communication range tc and denoted using D. Each S is equipped with a battery of capacity E0 and buffer of capacity B. The k number of CVs are denoted using C=c1,c2,⋯,ck. The locations of the SNs are randomly decided using Sah et al. [37], and S0 is located at 0,0. Each node si drains some energy during operations like acquiring data from the environment or other SNs sj, or sometimes, the nodes are idle. So, at a particular time t, a node si have residual energy of Eit. Similarly, the buffer of each node is occupied with some data during the data transmissions, and at a time t, it is considered Bit for a node si. At time t=0, the energy of the battery is full capacity and the buffer is empty. Emin is considered the threshold energy for any SN in G, and si sends energy request to S0 when it meets the condition Emin≥Eit. All the charging and buffer capacities are updated through the control signal to S0. The charging requests are categorized and assigned to CVs by S0 in the proposed work.The CV can move quickly withυ velocity, and the charging time is minimal. In the course of CV stay at the BS, it was recharged. The SN energy drain during the data transmission to the CVs is shown in
(1)Eit=ͷi×αt+ͷi×αaδi∀i∈S+,where ͷi shows total packets transmitted by si; Equation (2) computes δij, where it is the distance from si to CVj, he processing a bit need αt energy, and amplification needs αa energy:
(2)δi=xi−xcvj2+yi−ycvj2,where xi,yi are the coordinates of the SN si and xcvj,ycvj is CVj location. The energy required to acquire sensed data from the field is
(3)Eirx=ͷi×αr∀i∈S+,where receiving a sensed packet from the field is required αr energy. The overall EC of SN si is considered
(4)Eic=Eirx+Eit∀i∈S+.The residual energy of SN at simulation timet is considered
(5)Eir=Eir−Eic∀i∈S+.The average residual energy of a cluster is computed as follows:(6)Ei=∑j∈CiEjrCi∀1≤i≤k.In the recharging process, the energy harvest of SNs is calculated similarly to [38].Through an optimal CV scheduling strategy with a low data loss rate, the proposed work is aimed at balancing the energy among the SNs.


## 4. Proposed MLPCV Algorithm

The proposed MLPCV primarily contains two modules. In the first module, different metrics are used to calculate the weight of each SN to determine the priority of charging. Based on these weights, the optimal CV is assigned to recharge the node. CVs are placed at a specific location in the network to get the highest variations in the weights of nodes instead of keeping them at BS. As a result, all the CVs are located at a particular distance from the SNs, and when they receive requests, it is easy to fulfill them quickly. The general model of the proposed work is summarized using Figure1.Figure 1
The general model of the proposed work with SNs of different residual batteries, charging vehicles, and a sink node in a WSN.


### 4.1. Finding CV’s Initial Location and SN’s Weight

In this section, we perform two operations including finding the initial deployment of the CVs and weight calculations.


#### 4.1.1. CV Initial Locations

A new initial centroid selection approach is used in this phase based on enhancedk-means algorithms [39]. Aiming to select centroids that belong to different clusters, the farthest are chosen in such a way that they are different and vary from each other. As a result, more centroids will be likely to share the same cluster SNs. As a result, the chance of having data points from different centroids in the same cluster is maximized. This will result in a significant reduction in execution time. Algorithm 1 explains the detailed pseudocode of the proposed CV initial location L selection approaches.Algorithm 1: Initial CV location selection algorithm.
Conditions:k≥2 and n≠ϕ1:C=ϕ2:c1=maxDn3:c2=minDn4:C=C∪c15:C=C∪c26:whilesizeC<k7:nC=DPn,C8:C=C∪nC9:end while10:returnCInitially, we need to decide the number of CVs used in a particular environment. This is decided based onk=log2n. Once k is decided, it selects two locations (L1 and L2) based on the following:
(7)L1=maxxi,maxyi∀1≤i≤n,L2=minxi,minyi∀1≤i≤n.The remainingk locations for CVs are selected using
(8)Lk=max1≤i≤k,1≤j≤ndLi,Sj+dLi+1/k,Sj.This process iterates untilk locations are determined, and all the CVs are positioned in these locations initially. Further, we compute the weight of each SNs as known in the subsequent sections.


#### 4.1.2. SN Weight Calculation

Weight calculation is an important metric and can be used to choose the charger that can recharge the node before it drains its entire power supply. In this context, we generate heuristic formulae to compute the weight of each SN. This uses different metrics such as distance from SNs to the CVs, heuristic information, and buffer capacity along with the energy information. Initially, we estimate a probability value as shown in(9)Pij=ψj−α×dijβ∑i=1nψ−α×dijβ×ηω4π2∀j∈k,where ψj=rj/xj is the energy consumption rate of a CV. α and β are the heuristic information, and ω is the wavelength, and η is the efficiency of the rectifier. All these values are constants. The weight of SNs is shown in
(10)Wij=EmaxEi×Pij.As we know, most of the metrics used in Equations (9) and (10) are changed dynamically in the meantime. So, this process iterates after every unit time to notice the changes in the distance from nodes to CVs, residual energy, etc. So, the updated weight is supplied to the charging vehicle scheduling algorithm, to identify the best CV to recharge the SNs.


### 4.2. Charging Vehicle Scheduling

Once the weight calculation of all nodesW=Wi∀i∈1,n is completed, we start assigning suitable CVs using the charger vehicle scheduling approach. This algorithm decides the suitable CV for each SN charging request according to their residual energy and distances, whereas a similar approach is implemented for the fog environment by Hazra et al. [40]. A weight matrix En×k is constructed for device allocation, of the size n×k, in which the SNs are considered in rows and CVs considered in columns. The entry of Enk is the Wnij value, it is a nonnegative heuristic weight for a node ii∈1,n to consider a CV j∀j∈1,k, and it is calculated as shown in equation (10). Using this information, we generate a scheduling matrix Ψ, where each entry of this matrix is either one or zero. The values associated with one mean an SN is assigned to a CV for recharging their battery. The primary object to generate Ψ is to minimize
(11)max∀i∈1,n∑j=1kΨi,j×WijSubjectedtoΨi,j∈0,1,∀i∈1,n∧j∈1,k.The primary goal of this scheduling is to prolong the lifetime of the network while balancing the energy of the SNs choosing the best CV to recharge a node. The charger vehicle scheduling uses the following steps to assign a CV to a particular set or SNs or a single SN using the following steps.Step 1.
Arrange all the SN weightsWnk in ascending (nondecreasing) order such as Wnk1≤Wnk2≤Wnk3≤⋯≤WnkR, where R indicates the rank of each element.Step 2.
Take the minimumR as an element WnkR in the ith row and jth column E in ascending order while each row and column contain at least an entry.Step 3.
Change these entryR with Wnk of E according to equation (12) shown below:
(12)Enk=0,ifWnk≤R,Wnk,otherwise.Step 4.
From a CV columnj which had the least number of zeros, schedule all the SNs i which had value one.Step 5.
Repeat Step4 until all the sensor nodes are assigned at least one CV.This process is repeated to recharge all the SNs in the WSNs until the data aggregation process is interrupted.


### 4.3. Illustration

The charging vehicle scheduling approach is illustrated using a simple example by considering ten nodes and six charging vehicles as shown in Figure2. In general, for ten sensor nodes, one CV is sufficient, but our intention here is to show how the proposed algorithm works. Initially, all the weighted information calculated using equation (10) is stored in E as shown in Figure 2(a). Next, we identify the ranks of each entry of E based on nondecreases and replace the entries in Ψ as shown in Figure 2(b). Our process consists of filling in rows and columns one by one until all rows and columns contain at least one entry, based on the rank of each entry. We start filling one by one rank in Ψ, and all the rows and columns contain at least an element after filling rank 22 as shown in Figure 2(c). Now, we use equation (12) and replace all the entries using zero for the no entries and replace the value associated with each ranking as shown in Figure 2(d). By giving high priority to Ψ with the fewest zeros in a column, we can now assign each task to a resource from Step 4 of the charger vehicle scheduling approach. We need to find the rows with the highest number of zeros. As we noticed from Figure 2(d), we need to find the rows with the highest number of zeros such as s5, s8, and s10. So, we assign the appropriate CV for these two SNs such as CV1=s10, CV4=s8, and CV2=s5 as shown in Figure 2(e). Further, all zeros are replaced using ∞, and assigned CVs are replaced as 1 as shown in Figure 2(f). The next highest zeros are found in s3,s4, and s9, so we assign the appropriate CV for these nodes, and they are highlighted in Figure 2(g). If more than one charger is associated, we give high priority to the idle charger because the charging takes more time. As per this principle, s9 can be assigned to CV1, and it can be represented as CV1=s10,s9. Similarly, when checking s3, there are two possibilities, and we can consider any one. To break the tie, we can choose the ascending order, so s3 is assigned to CV5, and it becomes CV6=s4. We repeat this process, until all the nodes are visited, and the final assignment is shown in Figure 2(h), i.e., CV1=s10,s9,s7, CV2=s5,s6, CV3=s2,s1, CV4=s8, CV5=s3, and CV6=s4.Figure 2
Illustration of charging vehicle scheduling through an example of 10 nodes and six chargers.
(a)
MatrixE(b)
Ranks of matrixE(c)
Fill the ranks until each row and column contain at least one value(d)
The values associated with each rank(e)
Assigning the CV to SNs for recharging(f)
Assigning the CV to SNs for recharging(g)
Assigning the CV to SNs for recharging(h)
Final assignment of each node to a CV


### 4.4. Complexity Study

The proposed MLPCV approach’s time complexity mainly works in two partitions: CV initial location selection along with the weight computation for each SN and the scheduling of the CVs to recharge the requested nodes. The time required to perform the initial CV locations usingk-means required On3, and the weight calculation requires approximately On×k, where k<n. The time required to schedule is approximately Ok×n2. The total complexity of MLPCV to recharge the requested nodes is On3+On×k+Ok×n2. From this, the asymptotic complexity for MLPCV is On3, which is better than existing CV scheduling approaches. However, the proposed MLPCV is better than other existing approaches such as CSCT, M2C, and SPSS.


## 4.1. Finding CV’s Initial Location and SN’s Weight

In this section, we perform two operations including finding the initial deployment of the CVs and weight calculations.


### 4.1.1. CV Initial Locations

A new initial centroid selection approach is used in this phase based on enhancedk-means algorithms [39]. Aiming to select centroids that belong to different clusters, the farthest are chosen in such a way that they are different and vary from each other. As a result, more centroids will be likely to share the same cluster SNs. As a result, the chance of having data points from different centroids in the same cluster is maximized. This will result in a significant reduction in execution time. Algorithm 1 explains the detailed pseudocode of the proposed CV initial location L selection approaches.Algorithm 1: Initial CV location selection algorithm.
Conditions:k≥2 and n≠ϕ1:C=ϕ2:c1=maxDn3:c2=minDn4:C=C∪c15:C=C∪c26:whilesizeC<k7:nC=DPn,C8:C=C∪nC9:end while10:returnCInitially, we need to decide the number of CVs used in a particular environment. This is decided based onk=log2n. Once k is decided, it selects two locations (L1 and L2) based on the following:
(7)L1=maxxi,maxyi∀1≤i≤n,L2=minxi,minyi∀1≤i≤n.The remainingk locations for CVs are selected using
(8)Lk=max1≤i≤k,1≤j≤ndLi,Sj+dLi+1/k,Sj.This process iterates untilk locations are determined, and all the CVs are positioned in these locations initially. Further, we compute the weight of each SNs as known in the subsequent sections.


### 4.1.2. SN Weight Calculation

Weight calculation is an important metric and can be used to choose the charger that can recharge the node before it drains its entire power supply. In this context, we generate heuristic formulae to compute the weight of each SN. This uses different metrics such as distance from SNs to the CVs, heuristic information, and buffer capacity along with the energy information. Initially, we estimate a probability value as shown in(9)Pij=ψj−α×dijβ∑i=1nψ−α×dijβ×ηω4π2∀j∈k,where ψj=rj/xj is the energy consumption rate of a CV. α and β are the heuristic information, and ω is the wavelength, and η is the efficiency of the rectifier. All these values are constants. The weight of SNs is shown in
(10)Wij=EmaxEi×Pij.As we know, most of the metrics used in Equations (9) and (10) are changed dynamically in the meantime. So, this process iterates after every unit time to notice the changes in the distance from nodes to CVs, residual energy, etc. So, the updated weight is supplied to the charging vehicle scheduling algorithm, to identify the best CV to recharge the SNs.


## 4.1.1. CV Initial Locations

A new initial centroid selection approach is used in this phase based on enhancedk-means algorithms [39]. Aiming to select centroids that belong to different clusters, the farthest are chosen in such a way that they are different and vary from each other. As a result, more centroids will be likely to share the same cluster SNs. As a result, the chance of having data points from different centroids in the same cluster is maximized. This will result in a significant reduction in execution time. Algorithm 1 explains the detailed pseudocode of the proposed CV initial location L selection approaches.Algorithm 1: Initial CV location selection algorithm.
Conditions:k≥2 and n≠ϕ1:C=ϕ2:c1=maxDn3:c2=minDn4:C=C∪c15:C=C∪c26:whilesizeC<k7:nC=DPn,C8:C=C∪nC9:end while10:returnCInitially, we need to decide the number of CVs used in a particular environment. This is decided based onk=log2n. Once k is decided, it selects two locations (L1 and L2) based on the following:
(7)L1=maxxi,maxyi∀1≤i≤n,L2=minxi,minyi∀1≤i≤n.The remainingk locations for CVs are selected using
(8)Lk=max1≤i≤k,1≤j≤ndLi,Sj+dLi+1/k,Sj.This process iterates untilk locations are determined, and all the CVs are positioned in these locations initially. Further, we compute the weight of each SNs as known in the subsequent sections.


## 4.1.2. SN Weight Calculation

Weight calculation is an important metric and can be used to choose the charger that can recharge the node before it drains its entire power supply. In this context, we generate heuristic formulae to compute the weight of each SN. This uses different metrics such as distance from SNs to the CVs, heuristic information, and buffer capacity along with the energy information. Initially, we estimate a probability value as shown in(9)Pij=ψj−α×dijβ∑i=1nψ−α×dijβ×ηω4π2∀j∈k,where ψj=rj/xj is the energy consumption rate of a CV. α and β are the heuristic information, and ω is the wavelength, and η is the efficiency of the rectifier. All these values are constants. The weight of SNs is shown in
(10)Wij=EmaxEi×Pij.As we know, most of the metrics used in Equations (9) and (10) are changed dynamically in the meantime. So, this process iterates after every unit time to notice the changes in the distance from nodes to CVs, residual energy, etc. So, the updated weight is supplied to the charging vehicle scheduling algorithm, to identify the best CV to recharge the SNs.


## 4.2. Charging Vehicle Scheduling

Once the weight calculation of all nodesW=Wi∀i∈1,n is completed, we start assigning suitable CVs using the charger vehicle scheduling approach. This algorithm decides the suitable CV for each SN charging request according to their residual energy and distances, whereas a similar approach is implemented for the fog environment by Hazra et al. [40]. A weight matrix En×k is constructed for device allocation, of the size n×k, in which the SNs are considered in rows and CVs considered in columns. The entry of Enk is the Wnij value, it is a nonnegative heuristic weight for a node ii∈1,n to consider a CV j∀j∈1,k, and it is calculated as shown in equation (10). Using this information, we generate a scheduling matrix Ψ, where each entry of this matrix is either one or zero. The values associated with one mean an SN is assigned to a CV for recharging their battery. The primary object to generate Ψ is to minimize
(11)max∀i∈1,n∑j=1kΨi,j×WijSubjectedtoΨi,j∈0,1,∀i∈1,n∧j∈1,k.The primary goal of this scheduling is to prolong the lifetime of the network while balancing the energy of the SNs choosing the best CV to recharge a node. The charger vehicle scheduling uses the following steps to assign a CV to a particular set or SNs or a single SN using the following steps.Step 1.
Arrange all the SN weightsWnk in ascending (nondecreasing) order such as Wnk1≤Wnk2≤Wnk3≤⋯≤WnkR, where R indicates the rank of each element.Step 2.
Take the minimumR as an element WnkR in the ith row and jth column E in ascending order while each row and column contain at least an entry.Step 3.
Change these entryR with Wnk of E according to equation (12) shown below:
(12)Enk=0,ifWnk≤R,Wnk,otherwise.Step 4.
From a CV columnj which had the least number of zeros, schedule all the SNs i which had value one.Step 5.
Repeat Step4 until all the sensor nodes are assigned at least one CV.This process is repeated to recharge all the SNs in the WSNs until the data aggregation process is interrupted.


## 4.3. Illustration

The charging vehicle scheduling approach is illustrated using a simple example by considering ten nodes and six charging vehicles as shown in Figure2. In general, for ten sensor nodes, one CV is sufficient, but our intention here is to show how the proposed algorithm works. Initially, all the weighted information calculated using equation (10) is stored in E as shown in Figure 2(a). Next, we identify the ranks of each entry of E based on nondecreases and replace the entries in Ψ as shown in Figure 2(b). Our process consists of filling in rows and columns one by one until all rows and columns contain at least one entry, based on the rank of each entry. We start filling one by one rank in Ψ, and all the rows and columns contain at least an element after filling rank 22 as shown in Figure 2(c). Now, we use equation (12) and replace all the entries using zero for the no entries and replace the value associated with each ranking as shown in Figure 2(d). By giving high priority to Ψ with the fewest zeros in a column, we can now assign each task to a resource from Step 4 of the charger vehicle scheduling approach. We need to find the rows with the highest number of zeros. As we noticed from Figure 2(d), we need to find the rows with the highest number of zeros such as s5, s8, and s10. So, we assign the appropriate CV for these two SNs such as CV1=s10, CV4=s8, and CV2=s5 as shown in Figure 2(e). Further, all zeros are replaced using ∞, and assigned CVs are replaced as 1 as shown in Figure 2(f). The next highest zeros are found in s3,s4, and s9, so we assign the appropriate CV for these nodes, and they are highlighted in Figure 2(g). If more than one charger is associated, we give high priority to the idle charger because the charging takes more time. As per this principle, s9 can be assigned to CV1, and it can be represented as CV1=s10,s9. Similarly, when checking s3, there are two possibilities, and we can consider any one. To break the tie, we can choose the ascending order, so s3 is assigned to CV5, and it becomes CV6=s4. We repeat this process, until all the nodes are visited, and the final assignment is shown in Figure 2(h), i.e., CV1=s10,s9,s7, CV2=s5,s6, CV3=s2,s1, CV4=s8, CV5=s3, and CV6=s4.Figure 2
Illustration of charging vehicle scheduling through an example of 10 nodes and six chargers.
(a)
MatrixE(b)
Ranks of matrixE(c)
Fill the ranks until each row and column contain at least one value(d)
The values associated with each rank(e)
Assigning the CV to SNs for recharging(f)
Assigning the CV to SNs for recharging(g)
Assigning the CV to SNs for recharging(h)
Final assignment of each node to a CV


## 4.4. Complexity Study

The proposed MLPCV approach’s time complexity mainly works in two partitions: CV initial location selection along with the weight computation for each SN and the scheduling of the CVs to recharge the requested nodes. The time required to perform the initial CV locations usingk-means required On3, and the weight calculation requires approximately On×k, where k<n. The time required to schedule is approximately Ok×n2. The total complexity of MLPCV to recharge the requested nodes is On3+On×k+Ok×n2. From this, the asymptotic complexity for MLPCV is On3, which is better than existing CV scheduling approaches. However, the proposed MLPCV is better than other existing approaches such as CSCT, M2C, and SPSS.


## 5. Simulation Studies

The simulator for experiments used Python (v3.11.0). A number of SNs are varied along with the size of the area to conduct experiments in two different scenarios. We consider 1000 to 1600 as the number of nodes, and they are deployed according to Sah et al. [37]. The CV battery capacity is 194.4 kJ, and its type is 12 V 4.5 Ah LiFePO4 rechargeable battery. The total simulation time considered to run the experiments is 10 hours or 100 network cycles. Similarly, the packet generation also followed from this approach. The area size during experiments are changes between 600 sq.m and 1000 sq.m. S0 is located at 0,0 in all the experiments and two scenarios. The packet generation and receiving and transmissions require 0.05 mJ, 0.02 mJ, and 0.02 mJ energy, respectively. The communication and transmission proximity is considered 15 m and 12 m, respectively. The TDMA protocol is used as a MAC layer protocol, and MQTT is used as the application layer protocol [41]. Each unit of time generates approximately four packets during experiments. All the SN’s battery is full initially, and it is approximately 8 kJ. In case below 10% of the battery is available, it is assumed that it takes 50 min to recharge completely. The velocity of CV is 1 m/s, and approximately, it consumes 55 W/s during movement or standalone.


### 5.1. Average Charging Delay

An average charging delay (ACD) is the time it takes for all CVs in a WSN to charge a requested SN before it completely drains its energy. SNs are challenging to track because the CV does not reach them until they are completely drained. A travel time is included, as well as the charging of other requests waiting in line. Under two scenarios, including the size of the area and the number of SNs, we compute the average cost per node for a network. Traveling delay and queue size increase with area size and number of nodes. In order to simulate these two variables, we took into consideration both of them.Figure3(a) plots the results of SNs varying from 1000 to 1600 in 1000 sq.m area. We identify that the increasing number of SNs degrades the ACD, because more of the requested nodes are in queue. So, generally, it is difficult to serve all the nodes using available CVs. We notice that the ACD of the WSN is approximately 12 min after the end of the simulation time of 10 hours in the proposed MLPCV approach, which is the best compared with the existing techniques. Similarly, the existing CBCT results in a delay of approximately 18 min, M2C results in approximately 23 min, and the SPSS algorithm results in around 37 min delay on average. So, we can claim that the proposed work results in the least delay over the other techniques. In Figure 3(b), we consider the different area sizes such as 600 sq.m to 1000 sq.m while considering 1000 SNs which are deployed randomly in the network. With a constant number of sensors and a larger area, SNs have a lower communication burden than densely deployed sensor nodes. Therefore, it minimizes unnecessary data transmissions and reduces energy consumption. Consequently, there is a reduction in the number of requests for charging 1600 SNs in a 1000 sq.m area resulting in an average delay time of 12 minutes, and M2C results in a delay time of approximately 15 minutes. A delay of 18 seconds is used by the SPSS algorithm, and a delay of 21 seconds is used by the J-RCA algorithm.Figure 3
Average charging delay: (a) number of sensor nodes; (b) area size.
(a)(b)


### 5.2. Packet Reception Ratio

Based on the number of packets generated by each sensor node in a WSN, it is calculated. A total number of packets are received by the base station during the simulation timeT [42]. As the WSNs transmit packets, packet reception rates (PRRs) are directly proportional to throughput. There is a direct correlation between the PRR means and the performance of the system.Under two scenarios, including varying the number of SNs, the proposed MLPCV approach evaluates the PRR performance as shown in Figure4(a) and PRR vs. the simulation time as shown in Figure 4(b). While varying the number of SNs between 1000 and 1600, the MLPCV always results in the highest performance compared to existing algorithms in Figure 4(a). Similar to the MLPCV algorithm, the PRR is detected when 1000 SNs are processed continuously, and the results are plotted in Figure 4(b). It is evident from the plots that the MLPCV performs better than existing algorithms such as M2C, SPSS, and J-RCA. The proposed work should improve on the existing algorithms in terms of PRR, so we strongly agree with that assumption.Figure 4
Packet reception rate: (a) number of sensor nodes; (b) simulation rounds.
(a)(b)


### 5.3. Residual Energy

For the data collection operations in the WSNs to be sustainable, any sensor node’s remaining energy must be above zero. Increasing the RE results in a longer lifespan for the network as a result of a higher RE.We compare the average RE between the proposed and existing works in Figures5(a) and 5(b). Taking SNs from 1000 to 1600 in 1000 sq.m area and Figure 5(a), the average RE can be determined from the figure. Once the CV has been visited and recharged, the residual energy of any sensor node increases. Due to the fact that it can receive a much higher number of requests from a variety of sources in the network, in this scenario, the residual energy of the SNs is decreasing while increasing the number of SNs. A 100th cycle of the 1600 sensor nodes averages 4.7854 kJ for M2C and SPSS, but 2.3654 kJ for J-RCA. We propose an algorithm with an average RE of 5.96547 kJ, which is better than the existing algorithms.Figure 5
Average residual energy: (a) number of sensor nodes; (b) area size.
(a)(b)Based on 1000 randomly deploying static SNs in the network, Figure5(b) shows the average RE of the SNs. The large area and limited number of SNs result in a low data exchange rate. As a result, fewer requests are received by the CV, and delays are also reduced. As a bonus, the average RE of the sensor nodes will reduce congestion. According to the proposed work, the average RE is 7.1337 kJ for 1000 SNs in a 1000 sq.m area. There is an average RE of 5.3121 kJ for the existing M2C, SPSS, and J-RCA algorithms, respectively, 5.454 kJ, 4.5754 kJ, and 5.4454 kJ. In this case, there is a significant difference between the proposed algorithm and the three existing algorithms in terms of average RE.


### 5.4. Node Survival Rate

When the CV completes its cycle, the node survival rate indicates how many SNs survived. There are a large number of sensor nodes (SNs) in the network, and the area is extended, so it is not possible for all sensor nodes to be saved. As a result, we calculated the number of sustainable SNs after the mobile vehicle completed the threshold number of charging cycles and collected the data. As shown in Figure6(a), we vary the number of SNs between 1000 and 1600 over a field of 1000 sq.m. By varying the field size between 600 sq.m and 1000 sq.m, we set the sensor nodes to 1000 in Figure 6(b).Figure 6
Node survival rate: (a) number of sensor nodes; (b) area size.
(a)(b)Figure6(a) shows the NSR of the proposed and existing algorithms by varying the 1000 to 1600 SNs in the area of 1000 sq.m. According to the proposed algorithm, the NSR is 96.79% at 1000 nodes and 90.12% at 1600 nodes after 100 cycles. As a result of the existing M2C algorithm, 95.99% of the network is deployed with 1000 SNs after 100 cycles, and 89.11% when 1600 SNs are deployed. When 1000 SNs are deployed in the network at the 100th cycle, SPSS and J-RCA result in 85.37 percent and 84.67 percent, respectively. A 100th round deployment of 1600 SNs results in 78.91% and 78.01%, respectively, for the SPSS and J-RCA algorithms. On the basis of these values, the proposed algorithm appears to have a higher NSR than the existing algorithms. As a result of better scheduling by the network, this achievement has been achieved.From Figure6(b), we observe an NSR when the network size is expanded from 600 square meters to 1000 square meters with 1000 static SNs deployed randomly. The proposed algorithm also results in better NSR than existing algorithms, but the area size also decreases the NSR. After the 100th cycle of MLPCV, the NSR is changed from 97.85% to 91.12% in the small area when the area size is doubled. According to M2C, SPSS, and J-RCA algorithms, 80.61 percent, 84.85 percent, and 82.81 percent were obtained in the small area with 100 completed cycles, respectively. M2C, SPSS, and J-RCA algorithms produce similar NSRs after 100 cycles in the 1000 sq.m. size, as well as 82.82%, 80.872%, and 77.53%.


### 5.5. Charger Utility Efficiency

As a result of taking into account the CV’s total energy usage during travel, data collection, and charging, the charger utility efficiency is calculated.The CUE of the proposed and existing works is compared by varying the sensor node count and area size in Figures7(a) and 7(b), respectively. We take the SNs in 1000 square meters based on Figure 7(a). A total of 100 cycles have been completed by both the CV and the estimated CUE. Data and charging requests also increased as the number of nodes increased. Comparatively to the existing algorithms, the CV uses 186.23 kJ after the 100 cycles are completed for 1600 SNs. Unlike other existing algorithms, J-RCA drains completely before reaching the 100th cycle, whereas M2C uses 192.7 kJ, SPSS uses 199.31 kJ, etc. In order to recharge all the requests from SPSS and J-RCA algorithms, a large-capacity mobile charger was required. There is also the possibility of partitioning the network into multiple parts and scheduling more CVs to recharge and collect data. This task can be completed with a single CV and served in a timely manner with the proposed work.Figure 7
Charger utility efficiency: (a) number of sensor nodes; (b) area size.
(a)(b)We randomly deployed 1000 static SNs in a network with a network size varying from 600 square meters to 1000 square meters as shown in Figure7(b). In this case, 100 cycles were completed by the CV. Figure 7(b) shows that with a larger area, the CUE is minimized as the network is extended to 1000 sq.m. As a result, the CV has to travel most of the time in order to charge. It is necessary for the CV to travel between various network parts to receive charging requests. In the existing algorithm, the 100th cycle of M2C consumes 196.16 kJ. Before assembling the 94th and 87th cycles, SPSS and J-RCA exhaust their energy completely. The proposed work consumes less energy than these algorithms, and when it reaches its 100th cycle, it consumes 192.22 kJ. However, it is much better than the existing algorithms but weaker than a small number of sensor nodes.


### 5.6. Average Service Time

In the process of charging and collecting data, the CV period from the base station is taken and returned to the station after the charging and data collection process is completed. Travel time, waiting time, and data collection time are all included in the service time. All nodes in a network are averaged to determine the AST. Indicators are more efficient when there are fewer of them, and vice versa.In Figure8, we compare the AST of the proposed MLPCV to the AST of existing algorithms by varying the number of sensors and the size of the field. Figure 8(a) shows the estimated AST for the proposed and existing works, ranging from 1000 to 1600 sensor nodes in 600 square meters. The proposed work involves ASTs during 1600 SNs in a 1000 sq.m area noticed 49.68 minutes after the 100th occurrence. M2C, SPSS, and J-RCA receive 57.56 minutes, 66.74 minutes, and 72.47 minutes, respectively, in the existing algorithms. Comparing the proposed MLPCV to other algorithms, we can see that it serves very quickly. Optimizing the scheduling charger vehicles efficiently for data collection and recharge is the main reason for this improvement.Figure 8
Average service time: (a) number of sensor nodes; (b) area size.
(a)(b)As shown in Figure8(b), we notice the AST because we randomly deploy 1600 static SNs rather than 600 sq.m. With more sensor nodes that are randomly deployed, the communication burden is reduced on the SNs than with densely deployed sensors. So by doing this, there will be a reduction in the number of charging requests, and efficiency will be improved. There will not be much difference in AST between small and large fields throughout the system. Our AST changed from 600 square meters to 1000 square meters with 1000 sensor nodes. The ASTs in the proposed work when the area is 600 square meters and 1000 square meters are 28.51 minutes and 23.43 minutes, respectively. Similarly, in 600 square meters, according to the existing algorithms M2C, SPSS, and J-RCA, 1000 SNs are processed in 28.75 minutes, 31.15 minutes, and 36.19 minutes, respectively. The M2C, SPSS, and J-RCA algorithms return AST when the area reaches 1000 square meters in 29.24, 36.54, and 39.142 minutes, respectively.


### 5.7. Impact on Link Failure

NSR shows that some SNs in the network are dying as a result of a lack of charging services. Additionally, some sensor nodes may be isolated as a result of the effect on the network link. To evaluate the performance of the existing and proposed work, it is necessary to evaluate this metric. For sensor nodes that fail existing links, the proposed work can identify another relay node. The reclustering mechanism is also present in M2C, which performs the mechanism by which relay nodes are assigned to sensor nodes whose links have failed due to a failure of the link.Based on the link failure, Figure9 shows the number of disconnected or isolated nodes as well as the number of partitions caused by the failure. When the partition number is greater than 1, it means that one network partition does not reach the base station, but another part of the network does. From Figure 9(a), we notice the minimum number of disconnected nodes in the network. The performance of the M2C algorithm is the most problematic until a few hours into the data collection, after which SPSS and J-RCA algorithms perform poorly. As a result, the J-RCA algorithm isolates more nodes, although it takes longer to simulate. As well as evaluating the partition count, we also estimate how many partitions are created when separate nodes are present. Yet, the proposed MLPCV does not divide the network into more parts, while isolated nodes form the same groups. By doing so, the base station is able to connect more SNs. The most accurate results are often obtained through the J-RCA. The number of partitions also increases along with the simulation time, as shown in Figure 9(b). Therefore, compared with other mechanisms, the proposed work maintains a higher level of quality.Figure 9
Impact on link failure: (a) simulation time vs. isolated nodes; (b) simulation time vs. number of partitions.
(a)(b)


## 5.1. Average Charging Delay

An average charging delay (ACD) is the time it takes for all CVs in a WSN to charge a requested SN before it completely drains its energy. SNs are challenging to track because the CV does not reach them until they are completely drained. A travel time is included, as well as the charging of other requests waiting in line. Under two scenarios, including the size of the area and the number of SNs, we compute the average cost per node for a network. Traveling delay and queue size increase with area size and number of nodes. In order to simulate these two variables, we took into consideration both of them.Figure3(a) plots the results of SNs varying from 1000 to 1600 in 1000 sq.m area. We identify that the increasing number of SNs degrades the ACD, because more of the requested nodes are in queue. So, generally, it is difficult to serve all the nodes using available CVs. We notice that the ACD of the WSN is approximately 12 min after the end of the simulation time of 10 hours in the proposed MLPCV approach, which is the best compared with the existing techniques. Similarly, the existing CBCT results in a delay of approximately 18 min, M2C results in approximately 23 min, and the SPSS algorithm results in around 37 min delay on average. So, we can claim that the proposed work results in the least delay over the other techniques. In Figure 3(b), we consider the different area sizes such as 600 sq.m to 1000 sq.m while considering 1000 SNs which are deployed randomly in the network. With a constant number of sensors and a larger area, SNs have a lower communication burden than densely deployed sensor nodes. Therefore, it minimizes unnecessary data transmissions and reduces energy consumption. Consequently, there is a reduction in the number of requests for charging 1600 SNs in a 1000 sq.m area resulting in an average delay time of 12 minutes, and M2C results in a delay time of approximately 15 minutes. A delay of 18 seconds is used by the SPSS algorithm, and a delay of 21 seconds is used by the J-RCA algorithm.Figure 3
Average charging delay: (a) number of sensor nodes; (b) area size.
(a)(b)


## 5.2. Packet Reception Ratio

Based on the number of packets generated by each sensor node in a WSN, it is calculated. A total number of packets are received by the base station during the simulation timeT [42]. As the WSNs transmit packets, packet reception rates (PRRs) are directly proportional to throughput. There is a direct correlation between the PRR means and the performance of the system.Under two scenarios, including varying the number of SNs, the proposed MLPCV approach evaluates the PRR performance as shown in Figure4(a) and PRR vs. the simulation time as shown in Figure 4(b). While varying the number of SNs between 1000 and 1600, the MLPCV always results in the highest performance compared to existing algorithms in Figure 4(a). Similar to the MLPCV algorithm, the PRR is detected when 1000 SNs are processed continuously, and the results are plotted in Figure 4(b). It is evident from the plots that the MLPCV performs better than existing algorithms such as M2C, SPSS, and J-RCA. The proposed work should improve on the existing algorithms in terms of PRR, so we strongly agree with that assumption.Figure 4
Packet reception rate: (a) number of sensor nodes; (b) simulation rounds.
(a)(b)


## 5.3. Residual Energy

For the data collection operations in the WSNs to be sustainable, any sensor node’s remaining energy must be above zero. Increasing the RE results in a longer lifespan for the network as a result of a higher RE.We compare the average RE between the proposed and existing works in Figures5(a) and 5(b). Taking SNs from 1000 to 1600 in 1000 sq.m area and Figure 5(a), the average RE can be determined from the figure. Once the CV has been visited and recharged, the residual energy of any sensor node increases. Due to the fact that it can receive a much higher number of requests from a variety of sources in the network, in this scenario, the residual energy of the SNs is decreasing while increasing the number of SNs. A 100th cycle of the 1600 sensor nodes averages 4.7854 kJ for M2C and SPSS, but 2.3654 kJ for J-RCA. We propose an algorithm with an average RE of 5.96547 kJ, which is better than the existing algorithms.Figure 5
Average residual energy: (a) number of sensor nodes; (b) area size.
(a)(b)Based on 1000 randomly deploying static SNs in the network, Figure5(b) shows the average RE of the SNs. The large area and limited number of SNs result in a low data exchange rate. As a result, fewer requests are received by the CV, and delays are also reduced. As a bonus, the average RE of the sensor nodes will reduce congestion. According to the proposed work, the average RE is 7.1337 kJ for 1000 SNs in a 1000 sq.m area. There is an average RE of 5.3121 kJ for the existing M2C, SPSS, and J-RCA algorithms, respectively, 5.454 kJ, 4.5754 kJ, and 5.4454 kJ. In this case, there is a significant difference between the proposed algorithm and the three existing algorithms in terms of average RE.


## 5.4. Node Survival Rate

When the CV completes its cycle, the node survival rate indicates how many SNs survived. There are a large number of sensor nodes (SNs) in the network, and the area is extended, so it is not possible for all sensor nodes to be saved. As a result, we calculated the number of sustainable SNs after the mobile vehicle completed the threshold number of charging cycles and collected the data. As shown in Figure6(a), we vary the number of SNs between 1000 and 1600 over a field of 1000 sq.m. By varying the field size between 600 sq.m and 1000 sq.m, we set the sensor nodes to 1000 in Figure 6(b).Figure 6
Node survival rate: (a) number of sensor nodes; (b) area size.
(a)(b)Figure6(a) shows the NSR of the proposed and existing algorithms by varying the 1000 to 1600 SNs in the area of 1000 sq.m. According to the proposed algorithm, the NSR is 96.79% at 1000 nodes and 90.12% at 1600 nodes after 100 cycles. As a result of the existing M2C algorithm, 95.99% of the network is deployed with 1000 SNs after 100 cycles, and 89.11% when 1600 SNs are deployed. When 1000 SNs are deployed in the network at the 100th cycle, SPSS and J-RCA result in 85.37 percent and 84.67 percent, respectively. A 100th round deployment of 1600 SNs results in 78.91% and 78.01%, respectively, for the SPSS and J-RCA algorithms. On the basis of these values, the proposed algorithm appears to have a higher NSR than the existing algorithms. As a result of better scheduling by the network, this achievement has been achieved.From Figure6(b), we observe an NSR when the network size is expanded from 600 square meters to 1000 square meters with 1000 static SNs deployed randomly. The proposed algorithm also results in better NSR than existing algorithms, but the area size also decreases the NSR. After the 100th cycle of MLPCV, the NSR is changed from 97.85% to 91.12% in the small area when the area size is doubled. According to M2C, SPSS, and J-RCA algorithms, 80.61 percent, 84.85 percent, and 82.81 percent were obtained in the small area with 100 completed cycles, respectively. M2C, SPSS, and J-RCA algorithms produce similar NSRs after 100 cycles in the 1000 sq.m. size, as well as 82.82%, 80.872%, and 77.53%.


## 5.5. Charger Utility Efficiency

As a result of taking into account the CV’s total energy usage during travel, data collection, and charging, the charger utility efficiency is calculated.The CUE of the proposed and existing works is compared by varying the sensor node count and area size in Figures7(a) and 7(b), respectively. We take the SNs in 1000 square meters based on Figure 7(a). A total of 100 cycles have been completed by both the CV and the estimated CUE. Data and charging requests also increased as the number of nodes increased. Comparatively to the existing algorithms, the CV uses 186.23 kJ after the 100 cycles are completed for 1600 SNs. Unlike other existing algorithms, J-RCA drains completely before reaching the 100th cycle, whereas M2C uses 192.7 kJ, SPSS uses 199.31 kJ, etc. In order to recharge all the requests from SPSS and J-RCA algorithms, a large-capacity mobile charger was required. There is also the possibility of partitioning the network into multiple parts and scheduling more CVs to recharge and collect data. This task can be completed with a single CV and served in a timely manner with the proposed work.Figure 7
Charger utility efficiency: (a) number of sensor nodes; (b) area size.
(a)(b)We randomly deployed 1000 static SNs in a network with a network size varying from 600 square meters to 1000 square meters as shown in Figure7(b). In this case, 100 cycles were completed by the CV. Figure 7(b) shows that with a larger area, the CUE is minimized as the network is extended to 1000 sq.m. As a result, the CV has to travel most of the time in order to charge. It is necessary for the CV to travel between various network parts to receive charging requests. In the existing algorithm, the 100th cycle of M2C consumes 196.16 kJ. Before assembling the 94th and 87th cycles, SPSS and J-RCA exhaust their energy completely. The proposed work consumes less energy than these algorithms, and when it reaches its 100th cycle, it consumes 192.22 kJ. However, it is much better than the existing algorithms but weaker than a small number of sensor nodes.


## 5.6. Average Service Time

In the process of charging and collecting data, the CV period from the base station is taken and returned to the station after the charging and data collection process is completed. Travel time, waiting time, and data collection time are all included in the service time. All nodes in a network are averaged to determine the AST. Indicators are more efficient when there are fewer of them, and vice versa.In Figure8, we compare the AST of the proposed MLPCV to the AST of existing algorithms by varying the number of sensors and the size of the field. Figure 8(a) shows the estimated AST for the proposed and existing works, ranging from 1000 to 1600 sensor nodes in 600 square meters. The proposed work involves ASTs during 1600 SNs in a 1000 sq.m area noticed 49.68 minutes after the 100th occurrence. M2C, SPSS, and J-RCA receive 57.56 minutes, 66.74 minutes, and 72.47 minutes, respectively, in the existing algorithms. Comparing the proposed MLPCV to other algorithms, we can see that it serves very quickly. Optimizing the scheduling charger vehicles efficiently for data collection and recharge is the main reason for this improvement.Figure 8
Average service time: (a) number of sensor nodes; (b) area size.
(a)(b)As shown in Figure8(b), we notice the AST because we randomly deploy 1600 static SNs rather than 600 sq.m. With more sensor nodes that are randomly deployed, the communication burden is reduced on the SNs than with densely deployed sensors. So by doing this, there will be a reduction in the number of charging requests, and efficiency will be improved. There will not be much difference in AST between small and large fields throughout the system. Our AST changed from 600 square meters to 1000 square meters with 1000 sensor nodes. The ASTs in the proposed work when the area is 600 square meters and 1000 square meters are 28.51 minutes and 23.43 minutes, respectively. Similarly, in 600 square meters, according to the existing algorithms M2C, SPSS, and J-RCA, 1000 SNs are processed in 28.75 minutes, 31.15 minutes, and 36.19 minutes, respectively. The M2C, SPSS, and J-RCA algorithms return AST when the area reaches 1000 square meters in 29.24, 36.54, and 39.142 minutes, respectively.


## 5.7. Impact on Link Failure

NSR shows that some SNs in the network are dying as a result of a lack of charging services. Additionally, some sensor nodes may be isolated as a result of the effect on the network link. To evaluate the performance of the existing and proposed work, it is necessary to evaluate this metric. For sensor nodes that fail existing links, the proposed work can identify another relay node. The reclustering mechanism is also present in M2C, which performs the mechanism by which relay nodes are assigned to sensor nodes whose links have failed due to a failure of the link.Based on the link failure, Figure9 shows the number of disconnected or isolated nodes as well as the number of partitions caused by the failure. When the partition number is greater than 1, it means that one network partition does not reach the base station, but another part of the network does. From Figure 9(a), we notice the minimum number of disconnected nodes in the network. The performance of the M2C algorithm is the most problematic until a few hours into the data collection, after which SPSS and J-RCA algorithms perform poorly. As a result, the J-RCA algorithm isolates more nodes, although it takes longer to simulate. As well as evaluating the partition count, we also estimate how many partitions are created when separate nodes are present. Yet, the proposed MLPCV does not divide the network into more parts, while isolated nodes form the same groups. By doing so, the base station is able to connect more SNs. The most accurate results are often obtained through the J-RCA. The number of partitions also increases along with the simulation time, as shown in Figure 9(b). Therefore, compared with other mechanisms, the proposed work maintains a higher level of quality.Figure 9
Impact on link failure: (a) simulation time vs. isolated nodes; (b) simulation time vs. number of partitions.
(a)(b)


## 6. Conclusion

A mixed linear programming approach is proposed to schedule the charging vehicles in a large-scale WSN to recharge the sensor nodes. The approach is divided into two parts: weights for each SN to determine the charging device and order and scheduling strategy for the order in which charging requests will be served. Initially, all the CVs are placed in a particular location in the network, which is decided using an intelligent centroid selection approach. Calculate the weight using heuristic formulas and select a schedule based on mixed linear programming. This approach is computationally efficient compared with the existing techniques. Regarding different metrics, the MLPCV approach is superior to the recently published CV scheduling approaches. However, this work achieved outstanding performance, but much more needs to be done in the near future. This is a challenging issue that can be addressed in the future. Specifically, we can select the optimal number of charging vehicles for a given network according to the number of nodes, battery type, and data generated.



---

*Source: 8373343-2022-09-09.xml*