Mobile Sensor Nodes Traversal Schemes to Attend Events at Random Locations With Minimal Energy Depletion

A group of homogeneous mobile sensor nodes (MSNs) with fixed amount of energy are deployed randomly over the region of interest (ROI). Events might happen at a random location within the ROI. MSNs must travel a certain distance to reach the random location for information collection. The modified Min-Heap approach helps to identify a suitable MSN from the group of MSNs. The selected MSN will reach the random location by traveling a shorter distance than its counterparts. The proposed mathematical models are helpful in uniformly distributing the workload among the MSNs, to ensure that all the MSNs have an approximately equal amount of residual energy.


I. INTRODUCTION
Rapid development in microelectronics, wireless communications, and sensor technology cause the design and development of micro-structured sensor devices, that can sense the environmental information and transmit the sensed data to the base stations for further processing [1].
Sensor nodes with locomotive capabilities give wireless networks extra abilities, making them more robust for habitat and environmental monitoring, traffic observation, battlefield surveillance, smart homes, and smart cities [2]. Although millibots appear small, they collectively contain integrated capabilities, including sensing, computation, communication, localization, and mobility [3].
Placement of sensor nodes at the predetermined locations is not feasible in a disastrous and hazardous environment. MSNs are the most suitable for the information collection from such an environment where human intervention is not possible. In many cases, space, terrain, and narrow entrance hinder the movement of big-sized robots. Sensor nodes with locomotive capabilities enable them to move throughout the sensing region.
The associate editor coordinating the review of this manuscript and approving it for publication was Salvatore Surdo .
Coverage can be maximized in controlled mobility by more precise deployment patterns. Specific phenomena or locations in the sensing region can be easily targeted and followed [4], [5].
Robomote, a robotic solution developed to explore problems in large-scale distributed robotics and sensor networks, appeared in [6]. The low-cost mobile sensor devices make it possible to have the applications of mobile sensor nodes in a wide range of domains [7].
The relocation capabilities of mobile sensor nodes in sensor networks enhance the application's output. A few applications of mobile sensor nodes are to heal the coverage holes, perform network resource optimization, or provide fault tolerance support [8]. In some cases, the mobile sensor nodes will get scattered and are expected to do the information collection in fields of kilometers in size [9].
In some applications, a reasonable number of moving nodes are included along with static nodes. Through the moving nodes, an improvement in the coverage of the monitoring area is observed [10]. Mobile entities can have a predefined set of stop locations for data collection [11]. Intrusion detection in wireless sensor networks with efficient power usage is discussed in [12] and [13]. VOLUME 11, 2023 This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/ The organization of this paper is as follows. Section II details with related work. The description of the problem is in Section III. Section IV is devoted to objectives. Section V narrates the solution to the problem. Section VI carries the Results and Discussions. Section VII concludes the paper.

II. RELATED WORK
The role of MSNs appeared in a diverse range of applications. Specifications, architecture, working model and implementation of MSNs are specific to the application. Consider a scenario in which MSNs are designed to work with underwater applications such design may not fit for applications on the battlefield. Similarly, MSNs intended for military applications may not be suitable for industrial applications.
As an example of applications, MSNs are utilized for sweep coverage [14] and air quality monitoring in [15]. In [16], the area coverage with mobile sensor nodes in 3D wireless sensor networks is described.
The specifications, architecture, working model, and implementation are specific to the application. Hence designing a typical prototype that will fit for all the applications is very complex.
A minimal amount of research is available on the coveragebased pattern movement of MSNs. ROI is covered using three MSNs in a triangulation method. The initial equilateral triangle is formed randomly on the ROI, and the remaining area is covered in a snake-like fashion [17].
To achieve the complete coverage of the ROI, MSNs are deployed at the predetermined locations on the ROI and moved in a predetermined traversal path from source to destination in shifted migration method [18]. MSNs are moved in a distributed manner to achieve one coverage without coverage holes. This approach shows that the MSNs deplete minimum energy during the traversal [19].
In the above-listed approaches, the MSNs are used to cover the entire sensing region without coverage holes. The MSNs are either randomly deployed or deployed at a predetermined position in the sensing region. Predetermined traversal schemes help to move the MSNs and achieve coverage.
None of the work focuses on the random deployment of MSNs and collection of information from random locations within the sensing region.

III. PROBLEM DESCRIPTION
Due to the random deployment and the influence of environmental factors, the MSNs may land at any location on the ROI. Random Sensing Point (RSP) is the location from where the information needs to be sensed by a MSN. Upon successful landing, the MSN has to travel a certain distance to reach the RSP. That makes it to deplete the battery. There exists a need to identify a suitable MSN to attend the RSP, and all the MSNs should get opportunities to have an approximately equal amount of residual energy.

IV. OBJECTIVES
1. Identify a single MSN from the group of MSNs that can reach the RSP with a shorter traveling distance than its counterparts.
2. Ensure that all the MSNs have approximately equal amount of residual energy to prolong the network lifetime. An event E x is the sequence of activities needed to collect the information from an RSP x . Resources of E x will get released only on successful completion of E x or if any activities fail during the operation. Only on the successful completion of E x , another event E (x+1) will get initiated.  As shown in Algorithm 1, it has a set of activities which are named A1, A2 upto A7. All the activities are serially ordered. Output of an activity is forwarded as input to the next activity. The definitions for the parameters associated with RSP are in Table 1. The RSP location, which is the row number R R and R C is the position on that row are calculated from the value of R L . R L is the sensing point/hexagon number which will vary from 1 to R Max × C Max , where R Max is the maximum value for R R and C Max is the maximum value for R C .

V. PROPOSED SOLUTION METHODOLOGY
A linear data structure D R is defined to store the values of all the parameters of a RSP as specified in Table 1. Array D R keeps the information of all the RSPs in the ascending order of R ID , where R ID is a unique identification number assigned to every RSP on its generation. R Count is the total number of RSPs.
Whenever an RSP gets generated, the values of R L , R R , R C along with R ID are automatically stored in D R . The values for R S & R Sel are assigned as 0 and linked with R ID . This sorted array D R is passed as input to the Algorithm 2.
As shown in Algorithm 2, the RSP with R S as 0 & R Sel as 0 will be selected. Where R Sel is binary variable used to indicate the present status of the RSP (Selected for operation / Not) and R S is a binary variable used to identify the status of the RSP (Sensed / Not sensed). The value of R Sel for the selected RSP will get updated as 1. This indicates that the RSP is selected for operation. However the value of R S will be 1 only on successful completion of all the activities listed in Algorithm 1 for the selected RSP. The values of R R and R C get updated and passed to Algorithm 4 along with respective R ID for further operations. Mobile Sensor Node architecture is almost similar to the standard sensor node. The four main components of an MSN are the mobilizer, sensing, communication, processing, and power supply. They may contain a few additional units, such as position finders and power generators. The location or position finder unit helps to identify the sensor node's position. The Power generating unit supports a partial power supply, but it is an optional unit. The failure in one or multiple components of MSNs cannot be ruled out. An MSN may fail at any location during the traversal or the sensing operations. Hence at all stages, it is essential to detect the status of the MSN. An MSN VOLUME 11, 2023 with one or more failed components is not fit for further operations, and such MSN is updated as failed in the MSN list. M S is a binary variable used to indicate the status of the MSN.
Algorithm 3 helps to identify the status of the available MSNs. Value of M S is set as 1 for all the MSNs that are fit for the traversal & operations and the value of M S is set as 0 for all the MSNs that are not fit for the traversal & operations.

Algorithm 4 Distance Calculation
In some cases, the value M E may be the smallest value.
But the corresponding MSNs' past travel, i.e., M A , may be more than their counterparts. In other cases, the value of M A may be small compared to peers, but the value M E may be more. Hence for the proper selection of MSN, both the previous travel M A and the present distance M E are considered. M T is the sum of the distances already traveled in the earlier rounds and the distance between the selected RSP and the MSN. It can be written as M T = M E + M A . The value of M A will be 0 if the MSN has not traveled any distance from its initial landing.
Algorithm 4 generates a total of M N number of tuples for an RSP. Each tuple M [ID,P, T] will have three parameters M ID , M P and M T . All the three or some of these parameters are helpful for calculation and updation purposes.
All the generated tuples are passed to Algorithm 5 to identify a most suitable MSN to reach the RSP in consideration. Once the MSN selection process is completed, the M E value for non-selected MSNs is updated to zero. The selected MSN's M A value will be updated as M A = M T , only on successful completion of sensing operations at the RSP.  The root node will always have the smallest key value in a Min-Heap. In some cases, it may be possible that more than one node may have the same value as M T . It causes a tie between the MSNs.
If the M T value of the root node and its left node is the same, then the value of M P , i.e., the total number of RSPs attended by the root, gets compared with the left node. The same procedure is applied, in case of root node and its right node M T values is same. The root node will get replaced with a left node or right node, which has attended less number of RSPs, as shown in Algorithm 6. The Min-Heap will get deleted after the successful selection of the root node. Since the value of the RSP is a random number, the Min-Heap created for a particular RSP is not helpful for other RSPs. Hence the creation and deletion of Min-Heap are done for all the RSPs. Algorithm 6 is helpful for the identification of the most suitable MSN to attend the RSP.

B. MOBILITY OF THE SELECTED MSN TO THE LOCATION OF RSP
The location of RSP can be calculated from R L , where R R stores the value of the row, and R C holds the column value on that particular row. M R and M C hold the current location of the MSN. M R and M C represent the values of the row and column in which the MSN is currently standing. The selected MSN has to travel from the source (M R , M C ) to the destination (R R , R C ). if M S = 1 then 8: if M R > R R then 9: Move MSN RT times in down direction 10: else 11: Move MSN RT times in up direction 12: end if 13: if M C > R C then 14: Move MSN CT times in left direction 15: else 16: Move MSN CT times in right direction 17: end if 18: end if 19: end while If the row value of MSN and RSP are identical, then the MSN needs to move in either the left or the right direction, depending on the column value. If the MSNs row value is higher than the RSPs row value, then MSN has to travel from top to bottom. Otherwise, it has to travel in the bottom to top direction. Top to bottom means traveling from the highest to the least valued row. Lowest to highest means traveling from least valued row to highest valued row.
If the column value of MSN is greater than the column value of RSP, then the MSN needs to move in the left direction, otherwise, in the right direction. Moving left to right means traveling from the least valued column to the highest valued column, and right to the left stands the highest valued column to the least valued column, as shown in Algorithm 7.
In some cases, the current location of the selected MSN and the location of RSP may be the same, and then the MSN need not move. It can directly start sensing operations.
Due to travel, the current location of the MSN changes with every move. Once the MSN reaches the RSP, the current location of the MSN will get updated with the value of the RSP. This value remains unchanged till the next move. The same MSN may or may not get selected to attend the next RSP. Data structure D M holds the values of the parameters shown in Table 3 along with the parameters detailed in Table 2. Some parameters related to the battery and depletion are defined as shown in Table 3. Other than M ID , other parameter values keep changing as the MSNs move from one location to another. These values will get updated when required at regular intervals.

C. MSN OPERATIONS AT RSP
Once the selected MSN reaches the RSP, the communication and co-ordination activities will be performed. Sensing operations will be performed at the RSP. The kind of the sensing operations are subject to the application. Time and energy required for the sensing operations are application specific. On successful completion of sensing operations, the value of M P will be increased by 1 for the MSN. A signal will be sent to the event handler to mark the event as completed, as shown in Algorithm 8. If an MSN fails during the traversal or the sensing operations, then Algorithm 1 will rerun from activity number A2.

VI. RESULTS AND DISCUSSIONS
For simulation purposes, ROI of size 50 rows (Y) and each row with 30 regular hexagons (X) is used. The word sensing point and regular hexagons are used interchangeably. Sensing points are numbered from 1 to 1500. The sensing point with identification number 1 is on row number 1 at position 1 on that row (X 1 , Y 1 ), and the sensing point with the number 1500 is on row number 50 at position 30 on that row (X 50 , Y 30 ). A group of 15 MSNs are deployed randomly over the ROI. These MSNs are expected to land successfully on the ROI VOLUME 11, 2023 Let α be the sensing point on which an MSN is landed successfully, α being the hexagon number on the ROI. Using Equations (2) and (3), the row number M R and column number M C are calculated as follows.
For the M N number of active MSNs, a set of M N number of random numbers (α) are generated. Since M R and M C are derived from random numbers, the values of M R and M C differ among all the M N number of MSNs. In some cases, a few values of the M R may be the same, but the values of M C will differ. In some other cases, the value of M C may be the same, but the value of M R will vary.
MSN with identification 1 is landed on sensing point 643, which is at the 13th column position of the 22nd row. On row number 24 at column position 22, an MSN with identification number 5 is landed. MSN with identification 10 is landed on the sensing point 1322, which is at 3 column position of the 45th row.
Similarly, MSN with identification 15 is landed on sensing point 527, at the 17th column position of 18 row. In the simulation, proper validation is set to ensure that no more than one MSN can be landed on a single sensing point. This avoids collision between the MSNs at random deployment, as shown in Figure 2. By definition Random Sensing Point (RSP) is the sensing point from which the information needs to be collected by anyone MSN. It is assumed that all the MSNs landed safely on various sensing points before the generation of the Random Sensing Points.
Let β be the RSP from which the information needs to be collected by the MSN. The RSP(β) can be any one among the total number of hexagons. The row number R R and column R C are calculated using Equations (4) and (5).  In Figure 5, the MSNs that got selected to attend the RSPs are shown. MSN 6 is identified as the most suitable one to attend the RSP 1. To attend RSP 25, MSN 11 is selected as the most suitable. MSN 9 is identified as the most appropriate to attend the RSP 35.
Since the total number of RSPs is more than the total number of active MSNs (R N ≫ M N ), a few MSNs got an opportunity to attend more than one RSP. MSN Figure 6. Let E δ represent the amount of energy that is depleted by the MSN to perform sensing operations at an RSP which includes energy depleted due to the traversal to reach the RSP, energy depleted for coordination and communication activities, and sensing operations at the RSP, as shown in Equation (6).
MSN depletes a certain amount of energy on every move. The energy consumed due to the traversal to reach the RSP is denoted as n1 i=1 E D , where n1 is the number of units of distance between the MSN and target location.
During the traversal and at every regular interval, MSNs need to coordinate and communicate with central systems. This activity consumes a certain amount of energy, denoted as n2 i=1 E C , where n2 is the number of times the MSN has performed coordination and communication.
Once the MSN reaches the target location, it has to perform sensing operations and pass the information to the central system for further processing; it is denoted as n3 i=1 E S , where n3 is the total units of time taken to perform sensing and other operations at the target location. The number of times an MSN got selected to attend the RSPs may differ from other MSNs. An MSN may get fewer number chances, and some other MSNs might get more  number chances compared to their counterparts. Hence the total distance traveled by the MSNs also differs. Figure 7 shows the identification numbers of the RSPs attended by the MSN. MSN  MSN 11 got the opportunity to attend 6 RSPs. The total distance traveled by this MSN is 30 units. To attend RSP 2, it has traveled 4 units of distance; to attend RSP 10 and RSP 30, it has traveled a distance of 1 unit each. To attend RSP 25, it has traveled 5 units of distance. It has traveled the longest distance of 10 units to reach RSP 48, as shown in Figure 7. Figure 8 shows that MSN 9 has attended 4 RSPs but has traveled 34 units of distance. MSN 11 has served 6 RSPs and the total distance traveled by the MSN is 30 units, less than the distance traveled by MSN 9. MSN 6 has traveled 30 units of distance to attend 3 RSPs. MSN 8 has traveled 33 units of distance to attend 5 RSPs. MSN 1 covers a total distance of 32 units to attend RSP12 & RSP20.
Energy depleted to attend a RSP, including sensing operations at the RSP, can be calculated using Equation 6. The total number of RSPs covered by the MSN is stored in M P . The total amount of energy depleted to attend all the M P number of RSPs is calculated using Equation 7, where E δ represents the amount of energy that is depleted by the MSN to perform sensing operations at an RSP which includes energy depleted due to the traversal to reach the RSP, energy VOLUME 11, 2023  depleted for coordination and communication activities, and sensing operations at the RSP and E T is the total energy depleted by the MSN. The residual energy for the MSNs can be calculated as (1-E T ).
The percentage of residual energy after attending 50 RSPs by the MSNs is shown in Figure 9. It is observed that all the MSNs have an approximately equal amount of residual energy. The average value of residual energy is 71.2267. MSN 8 has the highest residual energy of 5.98 % units above the average. MSN 5 has the lowest amount of residual energy which is 6.64 % below the average. MSN 2 and 10 are very much closer to the average residual energy. The percentage of variance with maximum, minimum, and average distance traveled after attending altogether, 50 RSPs by the MSNs are shown in Figure 10. The average distance traveled by the MSNs is 28.73 units. The maximum and minimum distances traveled by the MSNs are 34 and 24 units respectively. The leading variance with maximum distance traveled is −29.41 percent. The minimum variance with maximum distance traveled is −5.88 percent. The maximum variance with minimum distance traveled is +29.41%. The minimum variance with the minimum distance traveled is +4 %. Compared with the average distance traveled by the MSNs, the maximum variance is +18.32 %, and the minimum variance is −16.47 %. Simulations are run up to 1500 RSPs from 100 RSPs at the interval of 100. This section focuses on understanding the model's behavior in traveling distances of an individual MSN among the group of MSNs. It highlights the comparison of distances traveled and residual energy. As shown in Table 4, a total of 1500 RSPs are generated at a difference of 100. For the first 100 RSPs, the total distance traveled by all the MSNs is 931. MSN 6 has traveled a maximum distance of 78 units. MSN 9 has traveled a minimum distance of 56 units. The average distance traveled is 62 units.
With 100 RSPs, the maximum difference in distance traveled by the MSNs is 7 units. The exact value of the difference was also observed at 500, 600, and 1300 number of simulations. A maximum of 5 units of difference in the total distance traveled among the MSNs is observed when the number of simulations is 400. The maximum value for difference among the MSNs is 7 units that is observed at 200,300, 700, 800, 1000, 1100, 1400, and 1500 simulations.
As shown in Figure 11 and Table 5, the difference between the maximum and minimum distances traveled by all the MSNs decreases gradually. It is also observed that the maximum, minimum and average distances traveled by all the MSNs are closer to each other as the number of simulations increases.
For 1500 simulations, the difference between the maximum and minimum distances traveled by all the MSNs lies in the range of 14 units to 31 units, with an average of 23 units. Figure 12 shows the distance traveled by all the MSNs for simulations from 100 to 1500 at the intervals of 100. This figure depicts the total distance traveled by the MSNs is getting closer as the number of simulations increases.
During the first 100 simulations, the values are very little apart. As the number of simulations increases, the values get  closer to each other. This is because, during the initial round of simulations, few MSNs have the opportunity to travel and attend the RSPs. As the number of RSPs increases, the workload is shared among the MSNs. Hence after 400 runs of simulations, the total distance traveled by the MSNs is nearly equal. The total distance traveled by the MSN to attend M P number of RSPs can be written as Equation 8, where M Ei is the number of units of travelled.
The value of M DT will vary from MSN to MSN, this is due to the value of M P and M Ei . The value of M Ei depends on the value obtained from Equation 1, which depends on the location of MSN and RSP. The total number of RPSs generated is R Count ; which is equivalent to the sum of M P of all MSNs. As the value of R Count increase during the simulations, the value of M P may increase for few MSNs. In some cases, the value of M P for certain MSNs may not increase but the value of M T may increase. The raise in the value of R Count provides more and more opportunities to MSNs. Hence the total distance traveled increases gradually.
It is important to ascertain the total distance traveled by the MSNs after 1500 simulations. The average distance traveled by the MSNs is 1051 units. MSN with identification MSNs deplete the maximum amount of energy during the traversal compared to sensing and other operations. Hence in the above paragraphs, the discussion is wholly devoted to energy depletion due to traversal. The energy depleted by the MSN during the communication, coordination, and sensing operations needs to be included for a detailed understanding of the proposed model. In the literature many models are available for calculating the energy usage and battery depletion. Models described in [20] and [21] are generic and hence are applied in this work.
Unit of energy depletion is defined as the amount of energy depleted due to a unit traversal and is denoted as C 1 . The amount of energy consumed due to communication and sensing operations is C 2 and the amount of energy consumed due to sensing operations is C 3 . The reletionships between C 1 , C 2 and C 3 can be established as C 1 = γ 1 × C 2 and C 1 = γ 2 × C 3 . During the simulation C 1 is set as 1 and C 2 + C 3 is VOLUME 11, 2023 set as 1.
As shown in Table 6 The average residual energy of all the MSNs is calculated using Equation 13. This value is compared with the residual energy of all the MSNs. The percentage of maximum difference with average is 0.030070377 units. The rate of minimum difference with average is -0.031509917 units. The remaining values are within the range. This difference is very small. This shows that the energy consumption & energy depletion of all the MSNs are nearly equal to the average energy consumption & energy depletion, as shown in Figure 13. The MSN which has depleted the maximum energy among all the MSNs is identified using Equation 12. That MSNs E R value is considered as the base value and compared with all the other MSNs E R value.
The MSN 2 has traveled a distance of 1054 units; other activities include 234 units of depletion; this MSN has 1288 units of energy depletion, which is the maximum among all the MSNs. The residual energy of this MSN is compared with other MSNs, as shown in Figure 14. The percentage of difference in residual energy compared to maximum energy depletion is 0.059782609 units. The MSN which has depleted the minimum energy among all the MSNs is calculated using Equation 11. That MSNs E R value is considered as the base value and compared with all the other MSN's E R value. MSN 9 has traveled a distance of 1047 units, and other activities consume 164 units, total energy depletion is 1211 units, which is the minimum among all the MSNs. The residual energy of this MSN is compared with other MSN. The percentage of difference in residual energy compared with minimum energy depletion is 0.063583815 units, as shown in Figure 15.    Table 6 clearly show that the proposed approach makes the MSNs deplete approximately equal amounts of energy, hence the residual energy is also approximately equal. The values in Table 5 and Table 6 are shown in decimal values with 9 digits after the decimal. In some cases, the value of unit energy may be very large; hence more number of decimal values are used to get the precision.

VII. CONCLUSION
Mobile Sensor Nodes are randomly deployed over the region of interest and allowed to sense the environmental information from random locations. Mobile sensor nodes energy depletion is computed by calculating the distances that needs to be traveled using the modified Min-Heap method. The simulation results show that the MSNs have traveled approximately equal distances. Hence the energy depletion and residual energy levels are nearly same for all the MSNs.