Distributed multi-hop positioning method based on adaptive region division

Through adaptive region division and hybrid algorithm, the maximum number of hops range is detected by the residuals between anchor nodes, and a sub-network is constructed, which solves the accuracy and stability of multi-hop positioning in obstacle environments, and achieves efficient node positioning.

CN115568014BActive Publication Date: 2025-08-29NANJING UNIV OF POSTS & TELECOMM
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202211149824.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-09-21
Publication Date
2025-08-29
Estimated Expiration
2042-09-21

AI Technical Summary

Technical Problem

In the network where obstacles exist, the existing multi-hop positioning method has abnormal deviations between the estimated distance and the real distance, resulting in low positioning accuracy and high requirements for the number of anchor nodes, and collinearity problems, resulting in some regional nodes being unable to locate.

Method used

Through adaptive region division, the maximum number of hops range is detected by the residuals between anchor nodes, a sub-network is constructed, and a mixed algorithm of natural selection and particle swarm is used to perform position estimation, eliminate abnormal errors, and reduce the requirements for the number of anchor nodes.

Benefits of technology

It improves positioning accuracy and stability, reduces the number of anchor nodes requirements, improves communication efficiency and accuracy of positioning results, avoids collinearity problems, and realizes the positioning of a single anchor node in extreme cases.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115568014B_ABST
    Figure CN115568014B_ABST
Patent Text Reader

Abstract

This paper proposes a distributed multi-hop positioning method based on adaptive regional partitioning. First, the average per-hop distance is calculated based on the actual distance between anchor nodes and the corresponding hop count. Then, the residual between anchor nodes is calculated based on the average per-hop distance. Next, the residual is analyzed hop by hop to adaptively obtain the maximum hop count threshold of the network. Based on the hop count threshold, the entire network is divided into multiple sub-networks centered on the unknown node. Finally, if there is one or more anchor nodes in the sub-network, a hybrid algorithm combining natural selection and particle swarm optimization is used to search for the optimal estimated position of the unknown node. Otherwise, the optimal estimated position is obtained by waiting for the assistance of the located unknown node. The method described in this paper can achieve stable, efficient, and high-precision positioning in complex topological environments.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of wireless network technology applications, and in particular to a distributed multi-hop positioning method based on adaptive area division. Background Art

[0002] The location of network nodes is often a prerequisite for network applications such as routing, topology control, and edge discovery. Due to device energy constraints, the communication range of network nodes is often limited. When the distance between wireless nodes exceeds their maximum communication range, they communicate by forwarding information through other relay nodes. This communication mode is called multi-hop communication. Multi-hop positioning is a positioning method that first estimates the multi-hop distance between an unknown node and an anchor node and then uses position estimation methods to estimate the unknown node's position.

[0003] Previous multi-hop positioning methods mostly assume that nodes are randomly distributed in a regular network, where information between nodes propagates approximately in a straight line. Therefore, the number of hops between nodes can approximately represent the distance between nodes. However, in reality, there may be obstacles in the actual network, causing information between nodes to propagate around the obstacles. This causes an abnormal deviation between the estimated distance calculated by the number of hops and the actual distance. To address the problem of abnormal deviation in the estimated distance, the published prior art document 1 (Wen W, Wen X, Yuan L, et al. Range-free localization using expected hop progress in anisotropic wireless sensor networks[J].EURASIP Journal on Wireless Communications and Networking, 2018, 2018(1): 1-13.) adopts a pre-set hop range method to eliminate the estimated distance containing abnormal errors and enter the position estimation stage, and then uses the multilateration method to perform position estimation. The multilateral measurement method involved in this type of method has certain requirements for the number of anchor nodes, and the more anchor nodes there are, the more accurate the positioning. Furthermore, after limiting the hop count, a lack of anchor nodes can make it impossible to locate nodes in some areas, resulting in a loss of positioning coverage. The method proposed by Wen et al. explicitly states that their method requires anchor nodes accounting for 20% or even 30% of the total nodes to ensure positioning accuracy and to locate all unknown nodes. Furthermore, the presence of obstacles in the network increases the probability of collinearity between anchor nodes. Wen et al.'s method also suffers from collinearity, causing the estimated position to deviate significantly from the true position of the unknown node, thereby undermining positioning stability.

[0004] There is also prior art document 2, CN106792540A, which uses a swarm intelligence method to search for unknown node locations. This method searches the entire node distribution area, which to some extent avoids the incorrect position estimation problem caused by positioning collinearity and promotes positioning stability. However, because the estimated distance containing abnormal errors is not eliminated, the positioning accuracy is not high. At the same time, it discloses that the estimated distance is obtained by comparing it with the anchor nodes one by one, so the computational complexity is not only high but also closely related to the number of anchor nodes. Summary of the Invention

[0005] To solve the above technical problems, the present invention provides a distributed multi-hop positioning method based on adaptive area division. It utilizes the distribution characteristics of anchor nodes and takes the residuals between anchor nodes as samples to adaptively obtain the maximum hop range, and uses this hop range to construct a subnetwork containing unknown nodes. It locates all unknown nodes by upgrading the located nodes to new anchor nodes. In extreme cases, even one anchor node can estimate the position, and the requirement for the number of anchor nodes is low. It has high performance in terms of adaptability, stability, positioning accuracy, and operating efficiency.

[0006] The distributed multi-hop positioning method based on adaptive area division according to the present invention comprises the following steps:

[0007] Step 1: Randomly deploy several wireless nodes in a complex environment;

[0008] Step 2: Calculate the average per-hop distance based on the actual distance between the anchor nodes included in the wireless nodes and the corresponding hop count;

[0009] Step 3: Use the average per-hop distance and the corresponding number of hops obtained in step 2 to calculate the estimated distance between anchor nodes, that is, the average per-hop distance multiplied by the corresponding number of hops. Then subtract the corresponding estimated distance from the actual distance between anchor nodes to obtain the estimated residual.

[0010] Step 4: Arrange the estimated residuals obtained in step 3 in ascending order of hop count, and then use the median absolute deviation algorithm to test the estimated residuals between anchor nodes hop by hop. When an anomaly is detected in a hop, set the hop value of the previous hop as the maximum hop count threshold of the entire network. Based on the maximum hop count threshold and with the unknown node as the center, divide the entire network into multiple sub-networks.

[0011] Step 5: In the subnetwork obtained in step 4, if there is one or more anchor nodes, the estimated distance from the unknown node to the anchor node, that is, the average per-hop distance × the corresponding number of hops, and the coordinates of the anchor node are used as input variables of the hybrid algorithm combining natural selection and particle swarm optimization. At the same time, the range of the subnetwork is used as the boundary of this hybrid algorithm to search for the optimal estimated position of the unknown node; if there is no anchor node within the maximum hop count range of the unknown node, wait for the remaining unknown nodes within the maximum hop count threshold to be located, and assist the unknown node in achieving location.

[0012] Furthermore, in step 1, the specific steps of randomly deploying several wireless nodes in a complex environment are as follows:

[0013] Consider a total of n wireless nodes randomly distributed in a 2D plane. If there are no obstructions between wireless nodes, they can communicate with each other within their communication radius. Given that wireless devices have limited battery life and their communication radius is equal and limited, when two wireless nodes are far apart or blocked by obstacles, it is assumed that there is no direct communication link between them, and information between them is forwarded by other relay devices.

[0014] Let the first m nodes among n nodes be anchor nodes, where m is much smaller than n; let the coordinates of the anchor nodes be (x a ,y a ),a=1,…,m; the remaining nm nodes are unknown nodes.

[0015] Furthermore, in step 2, the average per-hop distance is calculated based on the actual distance between the anchor nodes and the corresponding number of hops. The specific steps are:

[0016] An anchor node information table is set in each wireless node, namely {(x a ,y a ),h a→i}, where (x a ,y a ), a=1,…,m represents the position of anchor node a itself; h a→i represents the minimum number of hops from anchor node a to connected node i, h a→i The initial value is 1. When the anchor node a propagates the message to i, each time it passes through a relay node, h a→i Increment by 1;

[0017] When anchor node b receives the information from anchor node a, it notifies anchor node a of the number of hops between them. b→a ; Since they have gone through the same path, Similarly, anchor node a obtains the number of hops to the remaining m-1 anchor nodes in the network; then anchor node a calculates the average per-hop distance based on the number of hops to the m-1 anchor nodes and the corresponding real distances between them. It is calculated as follows:

[0018]

[0019] Furthermore, in step 3, the average per-hop distance obtained in step 2 and the corresponding number of hops are used to calculate the estimated distance between the anchor nodes, that is, the average per-hop distance multiplied by the corresponding number of hops, and the corresponding estimated distance is subtracted from the actual distance between the anchor nodes to obtain the estimated residual. The specific steps are as follows:

[0020] First, use the average per-hop distance and the number of hops to calculate the estimated distance between anchor nodes. The estimated distance between any two anchor nodes is calculated as follows:

[0021]

[0022] in, is the estimated distance from anchor node a to b, is the number of hops between anchor nodes a and b, is the average distance per hop;

[0023] Then, the estimated distance between the anchor nodes is subtracted from the actual distance between the anchor nodes to obtain the estimated residual between the anchor nodes. The estimated residual is expressed as follows:

[0024]

[0025] in, is the actual distance from anchor node a to anchor node b.

[0026] Furthermore, in step 4, the estimated residuals obtained in step 3 are arranged in ascending order according to the number of hops, and then the estimated residuals between anchor nodes are detected hop by hop using the median absolute deviation algorithm; when an abnormality is detected in a hop, the hop value of the previous hop is set as the maximum hop threshold of the entire network; based on the maximum hop threshold and with the unknown location node as the center, the entire network is divided into multiple sub-networks, specifically the following steps:

[0027] Arrange the estimated residuals calculated in step 3 in ascending order according to the number of hops to obtain multiple estimated residual vectors, namely

[0028] e1,e2,…,e mh

[0029] Among them, the subscript of e represents the number of hops, and mh is the maximum number of hops between anchor nodes;

[0030] Assume that the h-th jump e h Contains nh Error, starting from the second hop, hop by hop h The median absolute deviation algorithm is used for outlier detection; the detection process is as follows:

[0031] (1) The estimated error vector e in the h-th jump h Take the median, that is

[0032] M h =median(e h )

[0033] (2) Use the median absolute deviation algorithm, namely MAD method, to calculate the vector e h n in h The MAD expression of the h-th jump is as follows:

[0034]

[0035] Where β is a constant, e k is the estimated error vector e h The kth element of ;

[0036] (3) By setting the determination coefficient DC to e h Whether there are abnormal values ​​in the detection, the DC expression of the k-th error is,

[0037] DC k =(e k -M h ) / MAD h ,k=1,…,n h

[0038] When n h When one of the DC values ​​is greater than a given threshold, it is considered to be e h Abnormal data; that is, when a DC value greater than the threshold appears in the h-th hop, it is considered that h-1 hops are the maximum hop threshold maxhop;

[0039] (4) After the anchor node calculates the maximum hop count threshold, it immediately notifies the maximum hop count to the surrounding unknown nodes within the maxhop hop range. When it receives information that is greater than or equal to h hops, it automatically blocks the information.

[0040] (5) Each unknown node in the network is centered on itself and combined with the anchor nodes within the maxhop hop to divide the network into multiple sub-networks. The sub-network division method is as follows:

[0041] a. If the unknown node u has only one anchor node or multiple anchor nodes within the maxhop range, but the x and y coordinates of these anchor nodes are the same, then the subnetwork range is,

[0042] sub_range∈[max(min(x a )-R mh , network boundary), min(max(x a )+R mh , network boundary)]

[0043] ×[max(min(y a )-R mh , network boundary), min(max(y a )+R mh , network boundary)]

[0044] Among them, (x a ,y a ) is the coordinate of the only anchor node in the sub-network; the network boundary is the boundary of the node deployment area; R mh is the distance from the unknown node u to the anchor node, that is

[0045] b. If the unknown node u has two or more anchor nodes within the maxhop range, and these anchor nodes are arranged in a straight line, then the subnetwork range is,

[0046] sub_range∈[max(min(x l )-R mh , network boundary), min(max(x l )+R mh , network boundary)]

[0047] ×[max(min(y l )-R mh , network boundary), min(max(y l )+R mh , network boundary)]

[0048] Among them, (x l ,y l ) are the coordinates of the lth anchor node in the subnetwork, where l = 1, 2, ...; the network boundary is the boundary of the node deployment area; R mh is the minimum distance from the unknown node u to the anchor node within the maxhop hop range, that is

[0049] c. If the unknown node u has two or more anchor nodes within the maxhop range, and these anchor nodes do not overlap and are not arranged in a straight line, then first use the maximum and minimum values ​​of the x-axis coordinates and v-axis of these anchor nodes as boundaries to construct a rectangular region. The range of the region is,

[0050] rect_range∈[mib(x l ), max(x l )]×[min(y l ), max(y l )]

[0051] Then, we construct a set of equations, namely

[0052] X=1.5×(esti_dist(idx_min)+esti_dist(idx_max))

[0053] Y=1.5×(esti_dist(idy_min)+esti_dist(idy_max))

[0054] Among them, esti_dist represents the estimated distance vector of all anchor nodes within the range of u to maxhop; idx_min and idx_max are the numbers of the anchor nodes corresponding to the minimum and maximum boundaries of the x-axis of the constructed rectangular area; similarly, idy_min and idy_max are the numbers of the anchor nodes corresponding to the minimum and maximum boundaries of the y-axis of the constructed rectangular area;

[0055] Then, determine whether X and Y exceed the width and length of rect_range respectively; if not, the unknown node is considered to be within rect_range, and rect_range is used as the sub-network range sub_range; otherwise, the sub-network range is defined as,

[0056] sub_range∈|max(min(x l )-R mh , network boundary), min(max(x l )+R mh , network boundary)]

[0057] ×[ax(min(y l )-R mh , network boundary), min(max(y l )+R mh , network boundary)].

[0058] Furthermore, in step 5, if there is one or more anchor nodes in the subnetwork obtained in step 4, the estimated distance from the unknown node to the anchor node, that is, the average distance per hop × the corresponding number of hops, and the coordinates of the anchor node are used as input variables of the hybrid algorithm combining natural selection and particle swarm optimization. At the same time, the range of the subnetwork is used as the boundary of this hybrid algorithm to search for the optimal estimated position of the unknown node; if there is no anchor node within the maximum hop count range of the unknown node, wait for the remaining unknown nodes within the maximum hop count threshold to be located, and assist the unknown node in achieving location. The specific steps are as follows:

[0059] Each unknown node, if there is one or more anchor nodes within the maximum hop count range, starts executing the following operations in its respective sub-network:

[0060] (1) Initialize the population parameters, where the number of particles is N, the dimension of the search particle space is D = 2, and the positions of the N particles in the sub-region space are expressed as P = (p1, ..., p N ), where p i =(x i ,y i ); the corresponding particle velocity is recorded as V i =(v ix , v iy ), i = 1, ..., N, the maximum number of iterations is M iter , the learning factors are c1 and c2 respectively, and the velocity extreme value is 10% of the maximum value in the particle space horizontal coordinate range or vertical coordinate range, that is, v max =0.1×max(sub_rangex, sub_rangey),

[0061] Where sub_rangex is the horizontal coordinate range of the sub-network sub_range, and sub_rangey is the vertical coordinate range of the sub-network sub_range;

[0062] (2) Calculate the fitness value of each particle. The fitness value is as follows:

[0063]

[0064] Among them, (x a ,y a ) represents the coordinates of the a-th anchor node in the region, (x i ,y i ) represents the coordinates of the i-th particle in the region, is the estimated distance between the anchor node and the unknown node;

[0065] Use the initial positions of N particles in the sub-network as the individual optimal positions That is, P b=P, and at the same time, the global optimal value p in the sub-network g Take the position of the particle corresponding to the individual's optimal position, that is:

[0066] [fmin,index]=min(fit(i));

[0067] p g =p index

[0068] where p index is the coordinate of the index-th particle;

[0069] (3) Enter the main loop of the algorithm iteration and start calculating the new speed and new position of the particle. The new speed and new position are expressed as follows:

[0070]

[0071] p i (k+1)=p i (k)+V i (k+1)

[0072] Among them, r1, r2 are random numbers ranging from 0 to 1, k represents the current number of iterations, V i and p i The subscript indicates the i-th particle;

[0073] (4) Recalculate the new fitness value based on the new speed and new position in step (3);

[0074] (5) Each particle i uses its own fitness value fit(i) and its individual optimal position For comparison, if Then use fit(i) to replace

[0075] (6) Then, the fitness value of particle i, fit(i), is compared with the optimal value p in the sub-network. g For comparison, if fit(i)<p g , then use fit(i) to replace p g ;

[0076] (7) Sort the entire particle swarm by fitness value, and replace the speed and position of the worst half of the particles in the swarm with the speed and position of the best half of the particles in the swarm;

[0077] (8) Determine whether the end requirements are met. If the stop conditions are met, stop the search and set the final p g As the output search result, otherwise go to (3) to continue running the algorithm.

[0078] Furthermore, in step 5, if the unknown node has no anchor node within the maximum hop count range, wait for the remaining unknown nodes within the maximum hop count threshold to be located, and then upgrade the located node to a new anchor node; according to step 3, a subnetwork is constructed based on the maximum hop count threshold, the position of the new anchor node, and the distance from the unlocated unknown node to the new anchor node, and then in this subnetwork, a hybrid algorithm combining natural selection and particle swarm optimization is run to obtain the optimal estimated position; this process is iteratively executed until all unknown nodes are located.

[0079] The beneficial effects described in the present invention are as follows: the method described in the present invention utilizes the distribution characteristics of anchor nodes, and with the help of an outlier detection method, realizes the adaptive acquisition of the maximum hop count threshold; the threshold can divide an irregular network into multiple networks with regularly distributed nodes; in these sub-networks, messages between nodes are approximately propagated in a straight line, and in the sub-network, unknown nodes only communicate with local anchor nodes, so the communication efficiency is high; at the same time, the maximum hop count threshold can eliminate the measurement distance containing abnormal errors from entering the node position estimation process, thereby improving the positioning accuracy; in addition, the local area delineated by the sub-network helps to improve the convergence speed of the hybrid algorithm combining natural selection and particle swarm, and the range defined by the sub-network is more delicate, so that the optimal position searched is closer to the true position of the unknown node, and also avoids the problem of incorrect estimated position caused by the collinearity of anchor nodes, so the positioning result is more stable; in addition, the present invention has low requirements on the number of anchor nodes. In extreme cases, one or more anchor nodes can realize the positioning of unknown nodes using the hybrid algorithm combining natural selection and particle swarm. BRIEF DESCRIPTION OF THE DRAWINGS

[0080] Figure 1 This is a flow chart of the distributed multi-hop positioning method based on adaptive area division;

[0081] Figure 2 is the node distribution graph;

[0082] Figure 3 It is aimed at Figure 2 Distributed node link graph after limiting the node communication radius;

[0083] Figure 4 It is aimed at Figure 2 residual plots of the distribution;

[0084] Figure 5 It is aimed at Figure 2 The distributed positioning result graph only uses the anchor nodes within the maximum hop count threshold;

[0085] Figure 6 It is aimed at Figure 2 Distribution, the positioning result map of the present invention;

[0086] Figure 7 It is aimed at Figure 2 Distribution, the positioning result diagram of the method proposed in the prior art document 1;

[0087] Figure 8 It is aimed at Figure 2 Distribution, the positioning result diagram of the method proposed in the prior art document 2;

[0088] Figure 9 Root mean square error distribution diagram of the results of multiple runs of the methods proposed in prior art document 1 and technical document 2 and the method proposed in the present invention under different anchor node ratios;

[0089] Figure 10 It is the ratio of nodes that the method proposed in the prior art document 1 fails to locate under different anchor node ratios. DETAILED DESCRIPTION

[0090] To make the content of the present invention more clearly understood, the present invention is further described in detail below based on specific embodiments and in conjunction with the accompanying drawings. Obviously, the embodiments described are only some embodiments of the present invention, rather than all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making any creative efforts are within the scope of protection of the present invention.

[0091] like Figure 1 As shown, the present invention provides a distributed multi-hop positioning method based on adaptive area division, comprising the following steps:

[0092] Step 1: Randomly deploy several wireless nodes in a complex environment;

[0093] Step 2: Calculate the average per-hop distance based on the actual distance between the anchor nodes included in the wireless nodes and the corresponding hop count;

[0094] Step 3: Use the average per-hop distance and the corresponding number of hops obtained in step 2 to calculate the estimated distance between anchor nodes, that is, the average per-hop distance multiplied by the corresponding number of hops. Then subtract the corresponding estimated distance from the actual distance between anchor nodes to obtain the estimated residual.

[0095] Step 4: Arrange the estimated residuals obtained in step 3 in ascending order of hop count. Then, use the median absolute deviation algorithm to test the estimated residuals between anchor nodes hop by hop. In the MAD formula, β is set to 1.4826, and the DC determination coefficient threshold is set to 2.6. When an anomaly is detected in a hop, the hop count of the previous hop is set as the maximum hop count threshold for the entire network. Based on the maximum hop count threshold and with the unknown node as the center, the entire network is divided into multiple subnetworks.

[0096] Step 5: In the subnetwork obtained in step 4, if there is one or more anchor nodes, the estimated distance from the unknown node to the anchor node, that is, the average distance per hop × the corresponding number of hops, and the coordinates of the anchor node are used as input variables of the hybrid algorithm combining natural selection and particle swarm, where the number of particles N = 20, the learning factor c1 = c2 = 2, and the maximum number of iterations M iter =20, and use the range of the subnetwork as the boundary of this hybrid algorithm to search for the optimal estimated position of the unknown node; if the unknown node has no anchor node within the maximum hop count range, wait for the remaining unknown nodes within the maximum hop count threshold to be located, and assist the unknown node in achieving positioning.

[0097] The following is an implementation case of the present invention:

[0098] Consider randomly deploying 400 nodes in a 400m×400m area through step 1. Figure 2 、 Figure 3 As shown in Figure 1, the network topology is S-shaped due to the obstruction of obstacles. Figure 2 、 Figure 3 The rectangular points in the figure represent anchor nodes equipped with satellite positioning equipment, whose exact locations are known. The solid circles represent the true locations of unknown nodes. Given that all nodes are equipped with omnidirectional antennas and have limited energy consumption, all nodes have the same communication radius of 49.5 meters. Figure 3 It is aimed at Figure 2 The node link diagram of distributed nodes after limiting the node communication radius is as follows: Figure 3 As shown in the figure, when the distance between nodes is far, they transmit messages in a multi-hop manner. The "connecting lines" in the figure indicate that the distance between nodes is less than the communication radius, and they can communicate directly.

[0099] against Figure 2 、 Figure 3 For the network shown in FIG1 , the average per-hop distance is first calculated using step 2 of the present invention. Then, the estimated residuals between anchor nodes are obtained using step 3. As described in step 4, the residuals are sorted in ascending order of hop count and tested hop by hop using the median absolute deviation algorithm, with a DC coefficient of determination of 2.6. Figure 4 It is aimed at Figure 2 Residual plots of the distribution, such as Figure 4 As shown in step 4, the estimated residuals between anchor nodes are detected hop by hop using the median absolute deviation algorithm. It is found that the residuals between anchor nodes have abnormal values ​​in the third hop. Therefore, Figure 2 、 Figure 3 The maximum hop threshold of the network shown is maxhop=2. That is, the unknown node is located only by using the anchor nodes with a hop count less than or equal to 2 hops. That is, with the help of the hybrid algorithm combining natural selection and particle swarm, Figure 5 The positioning results, the number of particles in the hybrid algorithm N = 20, the learning factor c1 = c2 = 2, the maximum number of iterations M iter =20. Figure 5 It is aimed at Figure 2 Distribution, according to the positioning result map of only anchor nodes within the maximum hop count threshold in step 5, Figure 5 In the figure, 36 "X"s represent nodes that cannot achieve position estimation due to the lack of sufficient number of anchor nodes within the 2-hop range; "hollow circles" represent the estimated positions of unknown nodes, and the length of the connecting line between them and the corresponding "solid circles" represents the estimation error. The longer the connecting line, the greater the error, and vice versa. By upgrading the located nodes to new anchor nodes, the initially unlocated nodes can achieve positioning using the new anchor nodes within the maximum hop range. Figure 6 This is the result diagram of gradually using new anchor nodes to achieve full-area positioning.

[0100] To more objectively evaluate positioning performance, the root mean square error (RMS) is used to quantify positioning error. The RMS expression formula is as follows:

[0101]

[0102] Among them, (x u ,y u )and are the true position and estimated position of the node to be located, respectively. Figure 5 The RMS is 43.77, Figure 6 The RMS is 56.33.

[0103] Figure 7 , Figure 8 The methods proposed in prior art document 1 and technical document 2 are respectively Figure 2 Positioning result diagram of node distribution. Figure 7 68 nodes could not be located; Figure 7 , Figure 8 The RMS are 86.08 and 76.52 respectively. Figure 9 The method is to use step 1 to randomly distribute 400 nodes in the S-shaped network multiple times, and run the existing technical document 1, technical document 2, and the method proposed in the present invention 50 times at each ratio by changing the anchor node ratio. The box plot of the RMS distribution of the running results of the three algorithms is recorded according to the anchor node ratio. Figure 9 The difference between the upper and lower edges of the box is the interquartile range in statistics, which can be used to gain insight into the stability of multiple runs of different methods; the waist line of the box plot represents the median of the RMS distribution, which can be used to gain insight into the accuracy of multiple runs of different methods. Figure 10 yes Figure 9The average proportion of unlocatable nodes in the method proposed in the prior art document 1 is shown in Table 1. Figure 9 At the same time as the running results, there is a statistical table of the average running time of the methods proposed in the existing technical document 1 and technical document 2, as well as the method proposed in the present invention.

[0104] Table 1 Average running time of the methods proposed in prior art document 1 and technical document 2, and the method proposed in the present invention under different anchor node ratios

[0105]

[0106] from Figure 7 It can be seen that the method proposed in the prior art document 1 uses a pre-set 3-hop threshold, which makes 68 unknown nodes unable to be located due to the lack of anchor nodes; and the multilateration method used will produce incorrect positioning results due to the collinearity of the anchor nodes. Figure 8 It can be seen from the method proposed in the prior art document 2 that, because the entire network area is set as its location search area, the estimation result only avoids the problem of anchor node collinearity, but it does not eliminate the abnormal error in the estimated distance caused by the irregular network, so that the final positioning result is in the network area, but deviates from its true position. In addition, under the same node distribution, that is, Figure 2 , Figure 3 In case, Figure 7 , Figure 8 The final positioning results of the technical documents 1 and 2 involved are higher than those of the method proposed in the present invention not only in terms of sensory perception but also in terms of quantitative RMS value.

[0107] from Figure 5 The results show that the proposed method uses the anchor nodes with known location information to gain insight into node distribution characteristics and adaptively find a maximum hop count threshold for the entire network. With the help of the maximum hop count threshold, a sub-network is constructed, and it is used to eliminate abnormal errors in the estimated distance to enter the position estimation; at the same time, in the sub-network, the communication efficiency between nodes is higher, and the search results using the swarm intelligence optimization method are closer to the real location. However, due to the maximum hop count range limit, 36 unknown nodes cannot be located. Figure 6 It can be seen that the located nodes can be used to assist the unlocated nodes to achieve the positioning of all nodes. Figure 9 It can be seen that after all nodes are positioned, the quartile difference of the present invention is between 4.98 and 20.07. Compared with the methods proposed in the prior art document 1 and the technical document 2, their quartile differences are between 13.30 and 86.63 and 17.93 and 50.06 respectively. Therefore, the positioning stability of the present invention is higher. Figure 9It can be seen that after all nodes are positioned, the "waistline", that is, the median, of the present invention is also lower than that of the methods proposed in the prior art document 1 and the technical document 2, so the positioning accuracy of the present invention is higher.

[0108] Furthermore, Table 1 shows that the method proposed in Technical Document 2 has low operational efficiency, and its runtime increases dramatically with the number of anchor nodes. The runtime of the method proposed in the present invention is significantly shorter than that of the method proposed in Technical Document 2 and only slightly longer than that of the method described in Technical Document 1. This is because additional time is required to iterate the positioning of initially unlocated nodes using the aid of located nodes. Therefore, the method proposed in the present invention also has high operational efficiency.

[0109] The present invention provides a distributed multi-hop positioning method based on adaptive regional partitioning. This method utilizes the distribution characteristics of anchor nodes, uses the residual errors between anchor nodes as samples, and adaptively obtains a maximum hop range. This hop range is then used to construct a subnetwork containing unknown nodes. This subnetwork suppresses estimated distances containing abnormal errors from entering the position estimation phase, and the subnetwork range is smaller than the coverage area of ​​the entire node. Natural selection and particle swarm methods are used to search for the optimal position of unknown nodes within this small area. This small area avoids the impact of collinearity problems while ensuring positioning accuracy and improving the convergence speed of natural selection and particle swarm methods. Furthermore, the present invention has low requirements for the number of anchor nodes; in extreme cases, even a single anchor node can achieve position estimation. The present invention also achieves the positioning of all unknown nodes by upgrading existing located nodes to new anchor nodes. In summary, the present invention has low requirements for the number of anchor nodes and offers high performance in terms of adaptability, stability, positioning accuracy, and operational efficiency.

[0110] The above description is only a preferred embodiment of the present invention and is not intended to further limit the present invention. All equivalent changes made using the contents of the present invention description and drawings are within the scope of protection of the present invention.

Claims

1. A distributed multi-hop positioning method based on adaptive area division, characterized in that: The method comprises the following steps: Step 1: Randomly deploy several wireless nodes in a complex environment; Step 2: Calculate the average per-hop distance based on the actual distance between the anchor nodes included in the wireless nodes and the corresponding hop count; Step 3: Use the average per-hop distance and the corresponding number of hops obtained in step 2 to calculate the estimated distance between anchor nodes, that is, the average per-hop distance multiplied by the corresponding number of hops. Then subtract the corresponding estimated distance from the actual distance between anchor nodes to obtain the estimated residual. Step 4: Arrange the estimated residuals obtained in step 3 in ascending order of hop count, and then use the median absolute deviation algorithm to test the estimated residuals between anchor nodes hop by hop. When an anomaly is detected in a hop, set the hop value of the previous hop as the maximum hop count threshold of the entire network. Based on the maximum hop count threshold and with the unknown node as the center, divide the entire network into multiple sub-networks. Step 5: In the subnetwork obtained in step 4, if there is one or more anchor nodes, the estimated distance from the unknown node to the anchor node, that is, the average per-hop distance × the corresponding number of hops, and the coordinates of the anchor node are used as input variables of the hybrid algorithm combining natural selection and particle swarm optimization. At the same time, the range of the subnetwork is used as the boundary of this hybrid algorithm to search for the optimal estimated position of the unknown node; if there is no anchor node within the maximum hop count range of the unknown node, wait for the remaining unknown nodes within the maximum hop count threshold to be located, and assist the unknown node in achieving location, that is: after upgrading the located node to a new anchor node, according to step 3, a subnetwork is constructed based on the maximum hop count threshold, the position of the new anchor node, and the distance from the unlocated unknown node to the new anchor node. Then, in this subnetwork, the hybrid algorithm combining natural selection and particle swarm optimization is run to obtain the optimal estimated position; this process is iterated until all unknown nodes are located.

2. The distributed multi-hop positioning method based on adaptive area division according to claim 1, characterized in that: In step 1, randomly deploying several wireless nodes in a complex environment. The specific steps are as follows: Consider a total of n wireless nodes randomly distributed in a 2D plane. If there are no obstructions between wireless nodes, they can communicate with each other within their communication radius. Given that wireless devices have limited battery life and their communication radius is equal and limited, when two wireless nodes are far apart or blocked by obstacles, it is assumed that there is no direct communication link between them, and information between them is forwarded by other relay devices. Let the first m nodes among n nodes be anchor nodes, where m is much smaller than n; let the coordinates of the anchor nodes be (x a ,y a ),a=1,…,m; the remaining nm nodes are unknown nodes.

3. The distributed multi-hop positioning method based on adaptive area division according to claim 2, characterized in that: In step 2, the average per-hop distance is calculated based on the actual distance between anchor nodes and the corresponding number of hops. The specific steps are: An anchor node information table is set in each wireless node, namely {(x a ,y a ),h a→i }, where (x a ,y a ), a=1,…,m represents the position of anchor node a itself; h a→i represents the minimum number of hops from anchor node a to connected node i, h a→i The initial value is 1. When the anchor node a propagates the message to i, each time it passes through a relay node, h a→i Increment by 1; When anchor node b receives the information from anchor node a, it notifies anchor node a of the number of hops between them. b→a ; Since they have gone through the same path, Similarly, anchor node a obtains the number of hops to the remaining m-1 anchor nodes in the network; then anchor node a calculates the average per-hop distance based on the number of hops to the m-1 anchor nodes and the corresponding real distances between them. It is calculated as follows:

4. The distributed multi-hop positioning method based on adaptive area division according to claim 3, characterized in that: In step 3, the average per-hop distance and the corresponding number of hops obtained in step 2 are used to calculate the estimated distance between the anchor nodes, that is, the average per-hop distance multiplied by the corresponding number of hops. The estimated residual is then obtained by subtracting the corresponding estimated distance from the actual distance between the anchor nodes. The specific steps are as follows: First, use the average per-hop distance and the number of hops to calculate the estimated distance between anchor nodes. The estimated distance between any two anchor nodes is calculated as follows: in, is the estimated distance from anchor node a to b, is the number of hops between anchor nodes a and b, is the average distance per hop; Then, the estimated distance between the anchor nodes is subtracted from the actual distance between the anchor nodes to obtain the estimated residual between the anchor nodes. The estimated residual is expressed as follows: in, is the actual distance from anchor node a to anchor node b.

5. The distributed multi-hop positioning method based on adaptive area division according to claim 4, characterized in that: In step 4, the estimated residuals obtained in step 3 are arranged in ascending order according to the number of hops, and then the estimated residuals between anchor nodes are detected hop by hop using the median absolute deviation algorithm; when an abnormality is detected in a hop, the hop value of the previous hop is set as the maximum hop threshold of the entire network; based on the maximum hop threshold and with the unknown location node as the center, the entire network is divided into multiple sub-networks, specifically: Arrange the estimated residuals calculated in step 3 in ascending order according to the number of hops to obtain multiple estimated residual vectors, namely e1,e2,…,e mh Among them, the subscript of e represents the number of hops, and mh is the maximum number of hops between anchor nodes; Assume that the h-th jump e h Contains n h Error, starting from the second hop, hop by hop h The median absolute deviation algorithm is used for outlier detection; the detection process is as follows: (1) The estimated error vector e in the h-th jump h Take the median, that is M h =median(e h ) (2) Use the median absolute deviation algorithm, namely MAD method, to calculate the vector e h n in h The MAD expression of the h-th jump is as follows: Where β is a constant, e k is the estimated error vector e h The kth element of ; (3) By setting the determination coefficient DC to e h Whether there are abnormal values ​​in the detection, the DC expression of the k-th error is, DC k =(e k -M h ) / MAD h ,k=1,…,n h When n h When one of the DC values ​​is greater than a given threshold, it is considered to be e h Abnormal data; that is, when a DC value greater than the threshold appears in the h-th hop, it is considered that h-1 hops are the maximum hop threshold maxhop; (4) After the anchor node calculates the maximum hop count threshold, it immediately notifies the maximum hop count to the surrounding unknown nodes within the maxhop hop range. When it receives information that is greater than or equal to h hops, it automatically blocks the information. (5) Each unknown node in the network is centered on itself and combined with the anchor nodes within the maxhop hop to divide the network into multiple sub-networks. The sub-network division method is as follows: a. If the unknown node u has only one anchor node or multiple anchor nodes within the maxhop range, but the x and y coordinates of these anchor nodes are the same, then the subnetwork range is, sub_range∈[max(min(x a )-R mh ,network boundary),min(max(x a )+R mh , network boundary)] ×[max(min(y a )-R mh ,network boundary),min(max(y a )+R mh , network boundary)] Among them, (x a ,y a ) is the coordinate of the only anchor node in the sub-network; the network boundary is the boundary of the node deployment area; R mh is the distance from the unknown node u to the anchor node, that is b. If the unknown node u has two or more anchor nodes within the maxhop range, and these anchor nodes are arranged in a straight line, then the subnetwork range is, sub_range∈[max(min(x l )-R mh ,network boundary),min(max(x l )+R mh , network boundary)] ×[max(min(y l )-R mh , network boundary),min(max(y l )+R mh , network boundary)] Among them, (x l ,y l ) are the coordinates of the lth anchor node in the subnetwork, where l = 1, 2, ...; the network boundary is the boundary of the node deployment area; R mh is the minimum distance from the unknown node u to the anchor node within the maxhop hop range, that is c. If the unknown node u has two or more anchor nodes within the maxhop range, and these anchor nodes do not overlap and are not arranged in a straight line, then first use the maximum and minimum values ​​of the x-axis coordinates and y-axis of these anchor nodes as boundaries to construct a rectangular area. The range of the area is, rect_range∈[min(x l ),max(x l )]×[min(y l ),max(y l )] Then, we construct a set of equations, namely X=1.5×(esti_dist(idx_min)+esti_dist(idx_max)) Y=1.5×(esti_dist(idy_min)+esti_dist(idy_max)) Among them, esti_dist represents the estimated distance vector of all anchor nodes within the range of u to maxhop; idx_min and idx_max are the numbers of the anchor nodes corresponding to the minimum and maximum boundaries of the x-axis of the constructed rectangular area; similarly, idy_min and idy_max are the numbers of the anchor nodes corresponding to the minimum and maximum boundaries of the y-axis of the constructed rectangular area; Then, determine whether X and Y exceed the width and length of rect_range respectively; if not, the unknown node is considered to be within rect_range, and rect_range is used as the sub-network range sub_range; otherwise, the sub-network range is defined as, sub_range∈[max(min(x l )-R mh ,network boundary),min(max(x l )+R mh , network boundary)] ×[max(min(y l )-R mh ,network boundary),min(max(y l )+R mh ,network boundary)].

6. The distributed multi-hop positioning method based on adaptive area division according to claim 1, characterized in that: In step 5, if there is one or more anchor nodes in the subnetwork obtained in step 4, the estimated distance from the unknown node to the anchor node, that is, the average per-hop distance × the corresponding number of hops, and the coordinates of the anchor node are used as input variables of the hybrid algorithm combining natural selection and particle swarm optimization. At the same time, the range of the subnetwork is used as the boundary of the hybrid algorithm to search for the optimal estimated position of the unknown node. If there is no anchor node within the maximum hop count range of the unknown node, wait for the remaining unknown nodes within the maximum hop count threshold to be located, and assist the unknown node in achieving location. The specific steps are as follows: Each unknown node, if there is one or more anchor nodes within the maximum hop count range, starts executing the following operations in its respective sub-network: (1) Initialize the population parameters, where the number of particles is N, the dimension of the search particle space is D = 2, and the positions of the N particles in the sub-region space are expressed as P = (p1, ..., p N ), where p i =(x i ,y i ); the corresponding particle velocity is recorded as V i =(v ix ,v iy ), i=1,…,N, the maximum number of iterations is M iter , the learning factors are c1 and c2 respectively, and the velocity extreme value is 10% of the maximum value in the particle space horizontal coordinate range or vertical coordinate range, that is, v max =0.1×max(sub_rangex,sub_rangey), Where sub_rangex is the horizontal coordinate range of the sub-network sub_range, and sub_rangey is the vertical coordinate range of the sub-network sub_range; (2) Calculate the fitness value of each particle. The fitness value is as follows: Among them, (x a ,y a ) represents the coordinates of the a-th anchor node in the region, (x i ,y i ) represents the coordinates of the i-th particle in the region, is the estimated distance between the anchor node and the unknown node; Use the initial positions of N particles in the sub-network as the individual optimal positions That is, P b =P, and at the same time, the global optimal value p in the sub-network g Take the position of the particle corresponding to the individual's optimal position, that is: [fmin,index]=min(fit(i)); p g =p index where p index is the coordinate of the index-th particle; (3) Enter the main loop of the algorithm iteration and start calculating the new speed and new position of the particle. The new speed and new position are expressed as follows: p i (k+1)=p i (k)+V i (k+1) Among them, r1, r2 are random numbers ranging from 0 to 1, k represents the current number of iterations, V i and p i The subscript indicates the i-th particle; (4) Recalculate the new fitness value based on the new speed and new position in step (3); (5) Each particle i uses its own fitness value fit(i) and its individual optimal position For comparison, if Then use fit(i) to replace (6) Then, the fitness value of particle i, fit(i), is compared with the optimal value p in the sub-network. g For comparison, if fit(i)<p g , then use fit(i) to replace p g ; (7) Sort the entire particle swarm by fitness value, and replace the speed and position of the worst half of the particles in the swarm with the speed and position of the best half of the particles in the swarm; (8) Determine whether the end requirements are met. If the stop conditions are met, stop the search and set the final p g As the output search result, otherwise go to (3) to continue running the algorithm.

Citation Information

Patent Citations

  • Improved DV-Hop positioning method based on path matching

    CN106792540A

  • Method for selecting optimal one-way communication path between nodes of wireless sensor network and locating node

    CN105792307A

  • Efficient multi-hop positioning method based on combination of centralized and distributed computing

    CN112153564A