Distributed reputation-enhanced monte carlo localization method and system based on posterior feedback
By introducing a posterior feedback mechanism and a probabilistic inclusion disjunction model through the reputation-enhanced Monte Carlo positioning method, trusted beacons are selected and malicious beacon interference is suppressed. This solves the problems of poor positioning accuracy and offset in mobile wireless sensor networks of traditional Monte Carlo positioning algorithms, and achieves high-precision dynamic positioning.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- NANCHANG UNIV
- Filing Date
- 2026-03-20
- Publication Date
- 2026-06-16
Smart Images

Figure CN122227384A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of mobile wireless sensor network positioning technology, and in particular to a distributed reputation-enhanced Monte Carlo positioning method and system based on a posteriori feedback. Background Technology
[0002] In recent years, with the maturity of computer and communication technologies, mobile wireless sensor networks have been widely used in many fields such as environmental monitoring, target tracking, and biomedicine. However, due to limited sensor node resources and their frequent deployment in unattended environments, some even on enemy battlefields, mobile wireless sensor networks are more vulnerable to attacks than traditional wireless sensor networks. Therefore, secure positioning of mobile wireless sensor networks has become a critical issue that urgently needs to be addressed.
[0003] Monte Carlo Localization (MCL) was proposed to solve the localization problem in mobile wireless sensor networks. However, traditional MCL algorithms suffer from low sampling efficiency and insufficient localization accuracy. To overcome these shortcomings, researchers have proposed various improved MCL algorithms, including sampling anchor box-based Monte Carlo localization algorithms, constraint-optimized Monte Carlo localization algorithms, and enhanced Monte Carlo localization algorithms. However, none of these algorithms consider the possibility of attacks in the network, making them prone to localization offsets and resulting in poor localization accuracy. In addition, researchers have proposed a Secure Monte Carlo Localization (SecMCL) algorithm. Although SecMCL introduces a defense mechanism, its 'hard filtering' strategy is prone to particle depletion under high-intensity spoofing attacks, making it difficult to balance the continuity and accuracy of localization. Summary of the Invention
[0004] This application aims to provide a distributed reputation-enhanced Monte Carlo positioning method and system based on posterior feedback, which can eliminate positioning offset and improve positioning accuracy.
[0005] The technical solution of this application is implemented as follows: In a first aspect, embodiments of this application provide a distributed reputation-enhanced Monte Carlo localization method based on posterior feedback, the method comprising: S1. Initialization Phase: The beacon node floods messages to the unknown node, which maintains its local reputation table and performs initialization. S2. Perform Monte Carlo localization, generate candidate particles, and filter them by calculating the probability weights of the candidate particles through a probabilistic inclusion disjunction model to determine the estimated coordinates of the unknown node. S3. Based on the estimated coordinates of the unknown node, update the reputation change value; and based on the reputation change value, update the reputation value in the local reputation table to obtain the updated local reputation table; S4. Based on the local reputation table of the unknown node and the received reputation table of the neighbor node, update the local reputation value, and clear the changed value after this positioning ends, retaining the current reputation. S5. Repeat S2-S4 to achieve dynamic positioning update.
[0006] In the above scheme, S2 specifically includes: Generate candidate particles and calculate the probability weights of the candidate particles; wherein, the number of candidate particles is... N , N It is a positive integer; A probabilistic inclusion disjunction model is used to calculate the comprehensive probability of the candidate particles; and from the candidate particles, the one with the highest comprehensive probability is selected. M 100 particles; among them M Less than N ; Based on the above M The combined probability of each particle is used to calculate the estimated coordinates of the unknown node by weighted averaging.
[0007] In the above scheme, S3 specifically includes: Based on the unknown node, an aging process is performed on the beacon node that has not received a data packet. If the unknown node detects that the beacon has resumed communication during the aging process, the aging process is interrupted. After the localization is completed, the reputation change value is updated based on whether the estimated coordinates of the unknown node and each beacon satisfy the distance hop count relationship. Based on the reputation change value, the reputation value in the local reputation table is updated to obtain the updated local reputation table; wherein, the reputation value ranges from 0 to... C Record the timestamp of this update, accurate to milliseconds; The aging process refers to the unknown node incrementing the count of consecutive non-interaction cycles for beacon nodes that have not received information packets at the current positioning time by 1. When count ≥ 3, a decay of reputation value × 0.8 is performed. Count = 3 is the first decay, and decay continues for each subsequent cycle if no information is received. The interrupted aging process refers to the process after aging is started, when count ≥ 3 and at least one × 0.8 decay has been performed. The first positioning time after count ≥ 3 is the first decay. If the unknown node receives information packets from the beacon again, count is immediately reset to 0, subsequent aging decay stops, and the reputation is updated according to the normal matching rules in the next cycle.
[0008] In the above scheme, calculating the probability weights of the candidate particles includes: The probability weights of the candidate particles are obtained by normalizing the beacon reputation values, as follows:
[0009] in, It is an unknown node from the beacon node i The obtained observations, In the given l t beacon in location i The probability of supporting it. This indicates the location time of the current unknown node relative to the beacon node. i Reputation value C The maximum reputation score is set to 2.5 times the number of unknown nodes. It is a candidate particle at the current positioning time. To meet the requirements of beacon nodes i The observed set of particles is filtered according to the following conditions:
[0010] in, This indicates whether the geometric position of the candidate particle relative to the beacon node satisfies the physical communication constraints. S and T These are the one-hop beacon neighbor set and the two-hop beacon neighbor set, respectively. R It is the communication radius. Represents particles With beacons i The Euclidean distance between them True and False These represent the conditions that are met and the conditions that are not met, respectively.
[0011] In the above scheme, the step of using a probabilistic disjunctive model to calculate the comprehensive probability of the candidate particles includes:
[0012] in, This indicates the weight of the selected particle. , G This represents the total number of beacons that the unknown node can receive the corresponding information packets at the current positioning time. Represents logic or relation. Is the unknown node from the first m Observations obtained at each beacon. This indicates that the first to the last... G The observations from each beacon are combined using a disjunctive combination. The logical meaning is that the combination is valid if at least one beacon observation supports the current particle. This covers all combinations, including those where only a single beacon observation is valid, and those where any number of beacon observations are valid simultaneously. The solution is to calculate the overall probability corresponding to the above disjunctive combination. The recursive calculation method is designed based on the principle of inclusion-exclusion, as follows:
[0013] in, Indicates that the candidate particle is the current number G The probability that the observation verification of a single beacon is valid. Indicates that the candidate particle was previously G- The probability that the observation set of a single beacon is valid. Represents the joint support probability, which reflects the fact that the candidate particle is simultaneously supported by the previous... G- The observation set of a beacon and the current number G The probability overlaps between the observed and verified beacons. According to the inclusion-exclusion principle, directly accumulating the probabilities would cause the overlapping region to be calculated repeatedly. Therefore, this term must be subtracted to correct the redundancy. In computation, based on the assumption of conditional independence, this term is usually solved by multiplying the probabilities of the two parts.
[0014] In the above scheme, updating the reputation change value based on whether the estimated coordinates of the unknown node and each beacon satisfy the distance-hop count relationship includes: Based on the estimated coordinates of the unknown nodes and whether each beacon satisfies the distance hop count requirement... The system updates the reputation change value to implement a posterior feedback mechanism. After localization is completed, it calculates whether the estimated coordinates of the unknown node and the Euclidean distances to each beacon satisfy the corresponding hop count relationship.
[0015] in, This indicates whether the geometric relationship between the estimated coordinates of the unknown node and the coordinates of the neighboring beacon satisfies the physical communication constraints. S and T These are the one-hop beacon neighbor set and the two-hop beacon neighbor set, respectively. It's an estimated location. R This is the communication radius, and 0.1 is the fault tolerance coefficient. Indicates estimated coordinates With beacons i The Euclidean distance between the two beacon neighbor sets, the one-hop beacon neighbor set and the two-hop beacon neighbor set are traversed After filtering, the beacon set is obtained. ; The reputation score is updated by using the relationship between the location result and the beacon distance hop count. If the hop count-distance relationship matches, the beacon... i Increase the reputation value by a step size; if there is no match, decrease the step size.
[0016] in, It is the local current location time regarding the beacon node. i The reputation change value, This indicates the step size, which is set to 1. n The step size multiplier determines the convergence speed of the reputation of each beacon node; let's take 10. C This is the maximum credit score. It is the positioning period of the unknown node regarding the beacon node. i Reputation value.
[0017] In the above scheme, updating the local reputation value based on the local reputation table of the unknown node and the received neighbor node reputation table includes: The first step is to divide the beacon node sets into three categories:
[0018] in, It is the set of beacon nodes locally recorded at the current location time of the unknown node. It is the set of beacon nodes received by an unknown node from its neighboring unknown nodes at the current location time. H For beacon nodes that are recorded both locally and in their neighbors, O This is the set of beacon nodes that are recorded only in their neighbors but not locally. L This is a set of beacon nodes that are recorded locally but not by their neighbors. Only information with a timestamp ≤ 1 second different from the local positioning time is retained. This means removing elements from the previous set that are included in the next set. This represents the portion that is shared by two sets. The second step is to update according to the following rules: For beacon nodes The local reputation will be updated a second time according to the following rules:
[0019] in, It is the current location of the unknown node relative to the beacon node. i Reputation value Information about the beacon node received from the unknown node's neighbor. i The reputation change value, Indicates the step size. C This is the maximum credit score. For beacon nodes According to the following rules, local reputation will be updated simultaneously. :
[0020]
[0021] in, D broadcast node i The number of unknown node neighbors in the information. It is the aforementioned D Regarding the beacon node among the neighbors of an unknown node. i The f-th reputation value; For beacon nodes The reputation value corresponding to this beacon does not need to be updated a second time.
[0022] Secondly, embodiments of this application provide a distributed reputation-enhanced Monte Carlo positioning system based on posterior feedback, comprising: an initialization unit, a determination unit, and an update unit; wherein, The initialization unit is used in the initialization phase: the beacon node floods messages to the unknown node, and the unknown node maintains its local reputation table and performs initialization. The determining unit is used to perform Monte Carlo localization, generate candidate particles, and filter the candidate particles by calculating the probability weights of the candidate particles through a probabilistic inclusion disjunction model to determine the estimated coordinates of the unknown node. The update unit is used to update the reputation change value based on the estimated coordinates of the unknown node; and update the reputation value in the local reputation table based on the reputation change value to obtain an updated local reputation table; update the local reputation value based on the local reputation table of the unknown node and the received neighbor node reputation table; after the current positioning ends, clear the change value and retain the current reputation; repeat the above operations to achieve dynamic positioning update.
[0023] Thirdly, embodiments of this application provide a distributed reputation-enhanced Monte Carlo positioning device based on posterior feedback, the distributed reputation-enhanced Monte Carlo positioning device based on posterior feedback comprising: a processor and a memory; wherein, The memory is used to store computer programs; The processor is configured to call and run the computer program from the memory to perform the method as described in the first aspect.
[0024] Fourthly, embodiments of this application provide a computer-readable storage medium storing executable instructions for causing a processor to perform the method described in the first aspect.
[0025] This application provides a distributed reputation-enhanced Monte Carlo localization method and system based on posterior feedback. The distributed reputation-enhanced Monte Carlo localization method based on posterior feedback includes: S1, initialization phase: beacon nodes flood messages to unknown nodes, and the unknown nodes maintain local reputation tables for initialization; S2, Monte Carlo localization is performed, candidate particles are generated, and the probability weights of the candidate particles are calculated using a probabilistic inclusion disjunction model for screening to determine the estimated coordinates of the unknown nodes; S3, based on the estimated coordinates of the unknown nodes, the reputation change value is updated; and based on the reputation change value, the reputation value in the local reputation table is updated to obtain the updated local reputation table; S4, based on the local reputation table of the unknown nodes and the received neighbor node reputation tables, the local reputation value is updated, and after the local localization is completed, the change value is cleared while the current reputation is retained; S5, S2-S4 are repeated to achieve dynamic localization updates. The above scheme introduces a beacon reputation mechanism to screen trusted beacons and suppress malicious beacon interference, thus overcoming the shortcomings of traditional MCL's lack of anti-attack design and SecMCL's inability to solve the problem of false coordinate positioning offset, thereby improving positioning accuracy in attack scenarios. A "posterior feedback mechanism" is constructed to feed back the positioning results (estimated coordinates and beacon distance-hop count matching degree) to the reputation update. At the same time, based on the probabilistic inclusion disjunction model, the beacon reputation value is transformed into particle support probability, distinguishing the support weight of high and low reputation beacons for particles, solving the problem of "reputation and positioning separation", thereby eliminating positioning offset and improving positioning accuracy. Attached Figure Description
[0026] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the specification, serve to explain the technical solutions of this application. Obviously, the drawings described below are merely some embodiments of this application, and those skilled in the art can obtain other drawings based on these drawings without any inventive effort.
[0027] The flowcharts shown in the accompanying drawings are merely illustrative and do not necessarily include all content and operations / steps, nor do they necessarily have to be performed in the described order. For example, some operations / steps can be broken down, while others can be combined or partially combined; therefore, the actual execution order may change depending on the specific circumstances.
[0028] Figure 1 This application provides an optional flowchart illustrating a distributed reputation-enhanced Monte Carlo localization method based on posterior feedback, as an embodiment of the present application. Figure 2 A flowchart of a distributed reputation-enhanced Monte Carlo localization method based on posterior feedback provided in this application embodiment; Figure 3A schematic diagram of probabilistic particle screening for a distributed reputation-enhanced Monte Carlo localization method based on posterior feedback, provided for an embodiment of this application; Figure 4 A distributed reputation fusion time sequence diagram of a distributed reputation enhancement Monte Carlo localization method based on posterior feedback provided in this application embodiment; Figure 5 This application provides a schematic diagram of the reputation aging curve of a distributed reputation enhancement Monte Carlo localization method based on posterior feedback, as shown in the embodiments of this application. Figure 6 This application provides a schematic diagram of the reputation versus error curves of a distributed reputation-enhanced Monte Carlo localization method based on posterior feedback, as shown in the embodiments of this application. Figure 7 This application provides an embodiment of an average reputation value map of each beacon node for a distributed reputation enhancement Monte Carlo localization method based on posterior feedback. Figure 8 This application provides a localization error comparison curve for a distributed reputation-enhanced Monte Carlo localization method based on posterior feedback, as shown in the embodiments of this application. Figure 1 ; Figure 9 This application provides a localization error comparison curve for a distributed reputation-enhanced Monte Carlo localization method based on posterior feedback, as shown in the embodiments of this application. Figure 2 ; Figure 10 This application provides a schematic diagram of the structure of a distributed reputation-enhanced Monte Carlo positioning system based on posterior feedback, as an embodiment of the present application. Figure 11 This application provides a schematic diagram of the structure of a distributed reputation-enhanced Monte Carlo positioning device based on posterior feedback. Detailed Implementation
[0029] To make the objectives, technical solutions, and advantages of the embodiments of this application clearer, the specific technical solutions of this application will be further described in detail below with reference to the accompanying drawings of the embodiments of this application. The following embodiments are used to illustrate this application, but are not intended to limit the scope of this application.
[0030] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs. The terminology used herein is for the purpose of describing embodiments of this application only and is not intended to limit this application.
[0031] In the following description, references to "some embodiments," "this embodiment," "this application embodiment," and examples, etc., describe a subset of all possible embodiments. However, it is understood that "some embodiments" may be the same subset or different subset of all possible embodiments and may be combined with each other without conflict.
[0032] If the application documents contain similar descriptions such as "first / second", the following explanation shall be added: In the following description, the terms "first / second / third" are used only to distinguish similar objects and do not represent a specific order of objects. It is understood that "first / second / third" may be interchanged in a specific order or sequence where permitted, so that the embodiments of this application described herein can be implemented in an order other than that illustrated or described herein.
[0033] This application provides a distributed reputation-enhanced Monte Carlo localization method based on posterior feedback. Figure 1 This application provides an optional flowchart illustrating a distributed reputation-enhanced Monte Carlo localization method based on posterior feedback, which will be combined with... Figure 1 The steps shown are explained.
[0034] S1. Initialization Phase: Beacon nodes flood messages to unknown nodes, and unknown nodes maintain their local reputation tables and perform initialization.
[0035] In some embodiments of this application, the distributed reputation-enhanced Monte Carlo localization method based on posterior feedback is applicable to localization scenarios.
[0036] In some embodiments of this application, the implementing entity of the distributed reputation enhancement Monte Carlo positioning method based on posterior feedback is a distributed reputation enhancement Monte Carlo positioning device based on posterior feedback.
[0037] S2. Perform Monte Carlo localization, generate candidate particles, and filter them by calculating the probability weights of the candidate particles to determine the estimated coordinates of the unknown nodes.
[0038] In some embodiments of this application, S2 specifically includes: Generate candidate particles and calculate their probability weights; where the number of candidate particles is... N , N It is a positive integer; A probabilistic inclusion disjunction model is used to calculate the comprehensive probability of candidate particles; and from the candidate particles, the ones with the highest comprehensive probability are selected. M 100 particles; among them M Less than N ; based on M The combined probability of each particle is used to calculate the estimated coordinates of the unknown node by weighted averaging.
[0039] In some embodiments of this application, the probability weights of candidate particles are calculated, including: The probability weights of the candidate particles are obtained by normalizing the beacon reputation values, as follows:
[0040] in, It is an unknown node from the beacon node i The obtained observations, In the given l t beacon in location i The probability of supporting it. This indicates the location time of the current unknown node relative to the beacon node. i Reputation value C The maximum reputation score is set to 2.5 times the number of unknown nodes. It is a candidate particle at the current positioning time. To meet the requirements of beacon nodes i The observed set of particles is filtered according to the following conditions:
[0041] in, This indicates whether the geometric position of the candidate particle relative to the beacon node satisfies the physical communication constraints. S and T These are the one-hop beacon neighbor set and the two-hop beacon neighbor set, respectively. R It is the communication radius. Represents particles With beacons i The Euclidean distance between them True and False These represent the conditions that are met and the conditions that are not met, respectively.
[0042] In some embodiments of this application, a probabilistic disjunctive model is used to calculate the comprehensive probability of candidate particles, including:
[0043] in, This indicates the weight of the selected particle. , G This represents the total number of beacons that the unknown node can receive the corresponding information packets at the current positioning time. Represents logic or relation. Is the unknown node from the first m Observations obtained at each beacon. This indicates that the first to the last... GThe observations from each beacon are combined using a disjunctive combination. The logical meaning is that the combination is valid if at least one beacon observation supports the current particle. This covers all combinations, including those where only a single beacon observation is valid, and those where any number of beacon observations are valid simultaneously. The solution is to calculate the overall probability corresponding to the above disjunctive combination. The recursive calculation method is designed based on the principle of inclusion-exclusion, as follows:
[0044] in, Indicates that the candidate particle is the current number G The probability that the observation verification of a single beacon is valid. Indicates that the candidate particle was previously G- The probability that the observation set of a single beacon is valid. Represents the joint support probability, which reflects the fact that the candidate particle is simultaneously supported by the previous... G- The observation set of a beacon and the current number G The probability overlaps between the observed and verified beacons. According to the inclusion-exclusion principle, directly accumulating the probabilities would cause the overlapping region to be calculated repeatedly. Therefore, this term must be subtracted to correct the redundancy. In computation, based on the assumption of conditional independence, this term is usually solved by multiplying the probabilities of the two parts.
[0045] S3. Based on the estimated coordinates of the unknown node, update the reputation change value; and based on the reputation change value, update the reputation value in the local reputation table to obtain the updated local reputation table.
[0046] In some embodiments of this application, S3 specifically includes: Based on unknown nodes, aging processing is performed on beacon nodes that have not received information packets. If the unknown node detects that the beacon has resumed communication during the aging process, the aging process is interrupted. After the localization is completed, the reputation change value is updated based on whether the estimated coordinates of the unknown nodes and each beacon satisfy the distance-hop count relationship. Based on the reputation change value, update the reputation value in the local reputation table to obtain the updated local reputation table; where the reputation value ranges from 0 to... C Record the timestamp of this update, accurate to milliseconds; Among them, aging processing refers to the unknown node incrementing the count of consecutive non-interaction cycles of beacon nodes that have not received information packets at the current positioning time by 1. When count ≥ 3, the reputation value × 0.8 is applied to decay. count = 3 is the first decay, and decay continues for each subsequent cycle if no information is received. Interrupted aging means that after aging is started, if count ≥ 3 and at least one × 0.8 decay has been applied, the first positioning time after count ≥ 3 is the first decay. If the unknown node receives information packets from the beacon again, count is immediately reset to 0, subsequent aging decay stops, and the reputation is updated according to the normal matching rules in the next cycle.
[0047] In some embodiments of this application, the reputation change value is updated based on whether the estimated coordinates of the unknown node and each beacon satisfy a distance-hop count relationship, including: The reputation change value is updated based on whether the estimated coordinates of the unknown node and each beacon satisfy the distance-hop count relationship, thus implementing a posterior feedback mechanism. After localization is completed, the estimated coordinates of the unknown node are calculated. Do the Euclidean distances to each beacon satisfy the corresponding hop count relationship?
[0048] in, This indicates whether the geometric relationship between the estimated coordinates of the unknown node and the coordinates of the neighboring beacon satisfies the physical communication constraints. S and T These are the one-hop beacon neighbor set and the two-hop beacon neighbor set, respectively. It's an estimated location. R This is the communication radius, and 0.1 is the fault tolerance coefficient. Indicates estimated coordinates With beacons i The Euclidean distance between the two beacon neighbor sets, the one-hop beacon neighbor set and the two-hop beacon neighbor set are traversed After filtering, the beacon set is obtained. ; The reputation score is updated by using the relationship between the location result and the beacon distance hop count. If the hop count-distance relationship matches, the beacon... i Increase the reputation value by a step size; if there is no match, decrease the step size.
[0049] in, It is the local current location time regarding the beacon node. i The reputation change value, This indicates the step size, which is set to 1. n The step size multiplier determines the convergence speed of the reputation of each beacon node; let's take 10. C This is the maximum credit score. It is the location time of the unknown node with respect to the beacon node.i Reputation value.
[0050] S4. Based on the local reputation table of the unknown node and the received reputation table of the neighboring nodes, update the local reputation value. After this positioning is completed, clear the changed value and retain the current reputation.
[0051] In some embodiments of this application, updating the local reputation value based on the local reputation table of the unknown node and the received reputation table of neighboring nodes includes: The first step is to divide the beacon node sets into three categories:
[0052] in, It is the set of beacon nodes locally recorded at the current location time of the unknown node. It is the set of beacon nodes received by an unknown node from its neighboring unknown nodes at the current location time. H For beacon nodes that are recorded both locally and in their neighbors, O This is the set of beacon nodes that are recorded only in their neighbors but not locally. L The first step is to create a set of beacon nodes that are only recorded locally and not by their neighbors, retaining only information whose timestamps differ from the local positioning time by ≤1 second. The second step involves updating according to the following rules. This means removing elements from the previous set that are included in the next set. This represents the portion that is shared by two sets: For beacon nodes The local reputation will be updated a second time according to the following rules:
[0053] in, It is the current location of the unknown node relative to the beacon node. i Reputation value Information about the beacon node received from the unknown node's neighbor. i The reputation change value, Indicates the step size. C This is the maximum credit score. For beacon nodes According to the following rules, local reputation will be updated simultaneously. :
[0054]
[0055] in, D broadcast node i The number of unknown node neighbors in the information. It is the aforementionedD Regarding the beacon node among the neighbors of an unknown node. i The f-th reputation value; For beacon nodes The reputation value corresponding to this beacon does not need to be updated a second time.
[0056] Finally, the updated range of local reputation values is further limited both upwards and downwards:
[0057] S5. Repeat S2-S4 to achieve dynamic positioning update.
[0058] Specifically, by introducing a beacon reputation mechanism, trusted beacons are screened and malicious beacon interference is suppressed, thus overcoming the shortcomings of traditional MCL's lack of anti-attack design and SecMCL's inability to solve the problem of false coordinate positioning offset, thereby improving positioning accuracy in attack scenarios. A "posterior feedback mechanism" is constructed to feed back the positioning results (estimated coordinates and beacon distance-hop count matching degree) to the reputation update. At the same time, based on the probabilistic inclusion disjunction model, the beacon reputation value is transformed into particle support probability, distinguishing the support weight of high and low reputation beacons for particles, solving the problem of "reputation and positioning separation", thereby eliminating positioning offset and improving positioning accuracy.
[0059] For example, such as Figure 2 As shown, a distributed reputation-enhanced Monte Carlo localization method based on posterior feedback has the following specific steps: Step (1) Initialization phase: The beacon node floods the message to the unknown node, and the unknown node maintains its local reputation table and performs initialization; Step (2) Particle generation and screening stage: Step (2.1) generates candidate particles and calculates the probability weights of the particles; Step (2.2) uses a probabilistic disjunctive model to calculate the overall probability of the particles; Step (2.3) Select the one with the highest overall probability. M The estimated coordinates of unknown nodes are calculated by weighted averaging of individual particles. Step (3) Local Reputation Update Phase: Step (3.1) The unknown node performs aging processing on the beacon node that has not received the information packet. If the unknown node detects that the beacon has resumed communication during the aging process, the aging is interrupted. After the positioning in step (3.2) is completed, the reputation change value is updated based on whether the estimated coordinates of the unknown node and each beacon satisfy the distance hop count relationship. Step (3.3) updates the reputation value in the local reputation table, limiting the range of the reputation value to 0 to 1. C Record the timestamp of this update, accurate to milliseconds (the end time of positioning).
[0060] Step (4) Distributed Reputation Fusion Phase: Step (4.1) The unknown node broadcasts its local reputation table within one hop. Step (4.2) involves merging and updating the local reputation value based on the reputation tables of eligible neighbor nodes, and then further limiting the range of the reputation value to 0. C ; Step (4.3) After this location is completed, clear the changed values in the local reputation table, and retain the current reputation value and count.
[0061] Step (5) Repeat steps (2) to (4) to achieve dynamic positioning update.
[0062] In step (1), the beacon node flooding message includes its own ID, coordinates (x, y), hop count information (the hop count is used to record the number of times it is forwarded, and it can only be forwarded once at most), and the unknown node's local reputation table includes the following information: {Beacon 1 ID: (current reputation value, current change value, last interaction timestamp, count of consecutive non-interaction periods); Beacon 2 ID: (...)}. For all beacon nodes discovered for the first time, their reputation value is set to... C ( C The maximum reputation value is set to 2.5 times the number of unknown nodes, with an initial change value of 0, and the initial value of count is also 0.
[0063] Step (2.1) generates candidate particles for the current time step based on the final sample particles from the previous time step, as shown in the following equation:
[0064] in, and These are the candidate particles at the current time step and the sample particles at the previous time step, respectively. For a given Given the location, the node at the current time is located The probability of a location. Let be the Euclidean distance between particles. It is the maximum movement speed of the node; Pi is the mathematical constant of a circle.
[0065] Calculate the probability weights of particles: for particles Based on the reputation value of a beacon in the local reputation table, calculate the probability that it is supported by a certain beacon, based on the particle... With beacons i The distance satisfies the hop count relationship:
[0066] in, This indicates whether the geometric relationship between the estimated coordinates of the unknown node and the coordinates of the neighboring beacon satisfies the physical communication constraints. S and T These are the one-hop beacon neighbor set and the two-hop beacon neighbor set, respectively. R It is the communication radius. Represents particles With beacons i The Euclidean distance between them True and False These represent satisfying and not satisfying the filtering conditions, respectively.
[0067] like Figure 3 In step (2.2), the particle is calculated using a probabilistic disjunctive model. l t The overall probability.
[0068] In step (2.3), the estimated coordinates of the unknown nodes are calculated using a weighted average as follows:
[0069] in, Represents the first particle in the final particle set. r One particle, Then it means the first r The weight of each particle.
[0070] like Figure 5 In step (3.1), aging process refers to accumulating its count. When count ≥ 3, its reputation value is multiplied by 0.8. Aging interruption means that count is cleared to zero and its reputation is multiplied by 0.8 until the next count ≥ 3 and aging is repeated. Step (3.3) involves updating the reputation value in the local reputation table as follows: Update credit report:
[0071] in, It is the current location of the unknown node relative to the beacon node. i Reputation value It is the location time of the unknown node with respect to the beacon node. i Reputation value; Indicates about beacons i The local preliminary credit change value; C This is the maximum reputation score.
[0072] Record the change value and timestamp for this operation, accurate to milliseconds (the end time of positioning).
[0073] like Figure 4In step (4.2), the reputation table of the neighboring nodes that meet the requirements refers to the reputation table information of those timestamps that are no more than 1 second apart from the local time.
[0074] The environmental setup and experimental parameters for this example are as follows: Within a 500m × 500m monitoring area, 100 unknown nodes and 10 beacon nodes are deployed. The beacon nodes are evenly distributed throughout the monitoring area and their precise coordinates are known (e.g., beacon 1 coordinates are (10, 10), beacon 2 coordinates are (10, 20)... beacon 20 coordinates are (100, 100)). The initial positions of the unknown nodes are unknown. All nodes have wireless communication capabilities, and the communication radius is... R =50m, enabling information exchange between nodes within a one-hop range. Reputation value upper limit. C Take 250, step size =1, step size multiple n =10, number of particles N =1000, retaining the number of particles with the highest overall probability. M =50, maximum node movement speed =50m, the aging mechanism is triggered when the number of consecutive non-interaction cycles count ≥ 3.
[0075] Experiment 1: Compare the error impact of the proposed method with the MCL algorithm and SecMCL under the same conditions (30% malicious beacon nodes, and consistent environment and experimental parameters), and observe the reputation value of each beacon node; Figure 8 To compare the error of the proposed method with the MCL and SecMCL algorithms under the same conditions (30% of malicious beacon nodes sending false coordinates, 50 positioning cycles, and other environmental and experimental parameters being consistent), the following methods were used: Figure 8 It can be seen that the average positioning error of the method in this application is significantly smaller than that of the MCL algorithm and the SecMCL algorithm.
[0076] Figure 7 To calculate the average reputation score of all beacon nodes (nodes 1, 6, and 9 are malicious) over 50 positioning periods; from Figure 7 It can be seen that the average reputation value of malicious nodes is much lower than that of normal beacon nodes, indicating that the reputation value update and fusion method of this application is indeed effective.
[0077] Experiment 2: The attack model was set as an intermittent spoofing attack with a period of 5 positioning cycles. That is, after the malicious beacon node sends false coordinates for 5 consecutive positioning cycles, it will send real coordinates for 5 consecutive positioning cycles. There are three malicious beacon nodes. The average reputation value of all unknown nodes to the malicious nodes and the positioning error in each positioning cycle were observed. Figure 6The curves showing the changes in the average reputation value and location error of a malicious node with respect to the location period are presented under an attack model involving intermittent spoofing attacks with a period of 5 location cycles. Figure 6 It can be seen that the reputation value of malicious nodes decreases continuously during the stage of sending false coordinates and increases continuously during the stage of sending real coordinates. The positioning error of the corresponding positioning cycle also increases and decreases accordingly. This demonstrates the advantage of the method in this application in maximizing the use of reputation value information and integrating it into particle screening.
[0078] Experiment 3: Compare the error impact of the method in this application (including the probabilistic disjunctive model) with the baseline algorithm that is replaced by the product model (logical 'AND') under the same conditions (50% of malicious beacon nodes, and the environment and experimental parameters are consistent); like Figure 9 As shown, in a spoofing attack scenario with 50% malicious beacon nodes, the average positioning error of the algorithm in this application (including the probabilistic inclusion disjunction model) is significantly lower than that of the comparative algorithm. This experiment verifies that the probabilistic inclusion disjunction model is the core innovation of the algorithm in this application in achieving high-precision positioning under attack resistance by comparing the algorithm of this invention with the benchmark algorithm which is replaced by the product model (logical 'AND'). This model effectively suppresses the false interference of malicious beacons and improves the positioning accuracy by fusing multiple beacon support information through logical 'OR'.
[0079] The beneficial effects of this application are: achieving deep fusion of reputation and location: the location result (distance-hop count matching degree) feeds back into reputation updates, and the beacon reputation is dynamically adjusted according to the location accuracy, greatly improving information utilization compared to "one-way screening"; strong dynamic adaptability: it supports beacon movement, solving the static assumption defects of traditional reputation value positioning algorithms, and maximizes the utilization of reputation value information through posterior reputation feedback and probabilistic particle screening; and suppression of malicious beacon interference: through "reputation-driven probabilistic particle screening," the support weight of high-reputation beacons for particles is much higher than that of low-reputation / malicious beacons. For example, in a scenario with 3 malicious beacons, the location error of this application is reduced by 50% compared to traditional MCL and by 28.6% compared to SecMCL (from... Figure 7 (It can be seen that...)
[0080] Based on the above embodiments of the distributed reputation-enhanced Monte Carlo localization method based on posterior feedback, this application also provides a distributed reputation-enhanced Monte Carlo localization system based on posterior feedback, such as... Figure 10 As shown, Figure 10 This is a schematic diagram of a distributed reputation-enhanced Monte Carlo positioning system based on posterior feedback, provided in an embodiment of this application. The distributed reputation-enhanced Monte Carlo positioning system 10 based on posterior feedback includes: an initialization unit 1001, a determination unit 1002, and an update unit 1003; wherein, The initialization unit 1001 is used in the initialization phase: the beacon node floods messages to the unknown node, and the unknown node maintains a local reputation table and performs initialization; The determining unit 1002 is used to perform Monte Carlo localization, generate candidate particles, and filter them by calculating the probability weights of the candidate particles through a probabilistic inclusion disjunction model to determine the estimated coordinates of the unknown node. The update unit 1003 is used to update the reputation change value based on the estimated coordinates of the unknown node; and update the reputation value in the local reputation table based on the reputation change value to obtain the updated local reputation table; update the local reputation value based on the local reputation table of the unknown node and the received neighbor node reputation table; after the current positioning ends, clear the change value and retain the current reputation; repeat the above operations to achieve dynamic positioning update.
[0081] Based on the above embodiments of the distributed reputation-enhanced Monte Carlo localization method based on posterior feedback, this application also provides a distributed reputation-enhanced Monte Carlo localization device based on posterior feedback, such as... Figure 11 As shown, Figure 11 This is a schematic diagram of a distributed reputation-enhanced Monte Carlo positioning device based on posterior feedback, provided in an embodiment of this application. The device 11 includes a processor 1101 and a memory 1102. The memory 1102 stores a computer program; the processor 1101 retrieves and runs the computer program from the memory to execute the distributed reputation-enhanced Monte Carlo positioning method based on posterior feedback as described in the above embodiment.
[0082] In the embodiments of this application, the processor 1101 described above can be at least one of the following: Application-Specific Integrated Circuit (ASIC), Digital Signal Processor (DSP), Digital Signal Processing Device (DSPD), Programmable Logic Device (PLD), Field Programmable Gate Array (FPGA), Central Processing Unit (CPU), Controller, Microcontroller, and Microprocessor. It is understood that for different devices, the electronic device used to implement the above processor function can also be other types, and the embodiments of this application do not specifically limit it.
[0083] This application provides a computer-readable storage medium storing a computer program for implementing the distributed reputation-enhanced Monte Carlo localization method based on posterior feedback as described in any of the above embodiments when executed by a processor.
[0084] For example, the program instructions corresponding to a distributed reputation-enhanced Monte Carlo localization method based on posterior feedback in this embodiment can be stored on storage media such as optical discs, hard disks, and USB flash drives. When the program instructions corresponding to a distributed reputation-enhanced Monte Carlo localization method based on posterior feedback in the storage media are read or executed by an electronic device, the distributed reputation-enhanced Monte Carlo localization method based on posterior feedback as described in any of the above embodiments can be implemented.
[0085] Furthermore, in the embodiments of this application, the functional modules can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional module.
[0086] If the integrated unit is implemented as a software functional module and is not sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this embodiment, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) or processor to execute all or part of the steps of the method of this embodiment. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0087] It should be understood that the phrases "one embodiment," "an embodiment," or "some embodiments" mentioned throughout the specification mean that a specific feature, structure, or characteristic related to an embodiment is included in at least one embodiment of this application. Therefore, "in one embodiment," "in one embodiment," or "in some embodiments" appearing throughout the specification do not necessarily refer to the same embodiment. Furthermore, these specific features, structures, or characteristics can be combined in any suitable manner in one or more embodiments. It should be understood that in the various embodiments of this application, the sequence numbers of the above-described processes do not imply a sequential order of execution; the execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application. The sequence numbers of the above-described embodiments are merely for descriptive purposes and do not represent the superiority or inferiority of the embodiments. The descriptions of the various embodiments above tend to emphasize the differences between the various embodiments; their similarities or commonalities can be referred to mutually, and for the sake of brevity, they will not be repeated here.
[0088] The modules described above as separate components may or may not be physically separate. The components shown as modules may or may not be physical modules. They may be located in one place or distributed across multiple network units. Some or all of the modules may be selected to achieve the purpose of this embodiment according to actual needs.
[0089] In addition, each functional module in the various embodiments of this application can be integrated into one processing unit, or each module can be a separate unit, or two or more modules can be integrated into one unit; the integrated modules can be implemented in hardware or in the form of hardware plus software functional units.
[0090] Those skilled in the art will understand that all or part of the steps of the above method embodiments can be implemented by hardware related to program instructions. The aforementioned program can be stored in a computer-readable storage medium. When the program is executed, it performs the steps of the above method embodiments. The aforementioned storage medium includes various media that can store program code, such as mobile storage devices, read-only memory (ROM), magnetic disks, or optical disks.
[0091] The methods disclosed in the several method embodiments provided in this application can be arbitrarily combined without conflict to obtain new method embodiments.
[0092] The features disclosed in the several product embodiments provided in this application can be arbitrarily combined without conflict to obtain new product embodiments.
[0093] The features disclosed in the several method or device embodiments provided in this application can be arbitrarily combined without conflict to obtain new method or device embodiments.
[0094] The above description is merely an embodiment of this application, but the protection scope of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the protection scope of this application. Therefore, the protection scope of this application should be determined by the protection scope of the claims.
Claims
1. A distributed reputation-enhanced Monte Carlo localization method based on posterior feedback, characterized in that, The method includes: S1. Initialization Phase: The beacon node floods messages to the unknown node, which maintains its local reputation table and performs initialization. S2. Perform Monte Carlo localization, generate candidate particles, and filter them by calculating the probability weights of the candidate particles through a probabilistic inclusion disjunction model to determine the estimated coordinates of the unknown node. S3. Based on the estimated coordinates of the unknown node, update the reputation change value; and based on the reputation change value, update the reputation value in the local reputation table to obtain the updated local reputation table; S4. Based on the local reputation table of the unknown node and the received reputation table of the neighbor node, update the local reputation value, and clear the changed value after this positioning ends, retaining the current reputation. S5. Repeat S2-S4 to achieve dynamic positioning update.
2. The method according to claim 1, characterized in that, S2 specifically includes: Generate candidate particles and calculate the probability weights of the candidate particles; wherein, the number of candidate particles is... N , N It is a positive integer; A probabilistic inclusion disjunction model is used to calculate the comprehensive probability of the candidate particles; and from the candidate particles, the one with the highest comprehensive probability is selected. M 100 particles; among them M Less than N ; Based on the above M The combined probability of each particle is used to calculate the estimated coordinates of the unknown node by weighted averaging.
3. The method according to claim 1, characterized in that, S3 specifically includes: Based on the unknown node, an aging process is performed on the beacon node that has not received a data packet. If the unknown node detects that the beacon has resumed communication during the aging process, the aging process is interrupted. After the localization is completed, the reputation change value is updated based on whether the estimated coordinates of the unknown node and each beacon satisfy the distance hop count relationship. Based on the reputation change value, the reputation value in the local reputation table is updated to obtain the updated local reputation table; wherein, the reputation value ranges from 0 to... C Record the timestamp of this update, accurate to milliseconds; The aging process refers to the unknown node incrementing the count of consecutive non-interaction cycles for beacon nodes that have not received information packets at the current positioning time by 1. When count ≥ 3, a decay of reputation value × 0.8 is performed. Count = 3 is the first decay, and decay continues for each subsequent cycle if no information is received. The interrupted aging process refers to the process after aging is started, when count ≥ 3 and at least one × 0.8 decay has been performed. The first positioning time after count ≥ 3 is the first decay. If the unknown node receives information packets from the beacon again, count is immediately reset to 0, subsequent aging decay stops, and the reputation is updated according to the normal matching rules in the next cycle.
4. The method according to claim 2, characterized in that, The calculation of the probability weights of the candidate particles includes: The probability weights of the candidate particles are obtained by normalizing the beacon reputation values, as follows: ; in, It is an unknown node from the beacon node i The obtained observations, In the given l t beacon in location i The probability of supporting it. This indicates the location time of the current unknown node relative to the beacon node. i Reputation value C The maximum reputation score is set to 2.5 times the number of unknown nodes. It is a candidate particle at the current positioning time. To meet the requirements of beacon nodes i The observed set of particles is filtered according to the following conditions: ; in, This indicates whether the geometric position of the candidate particle relative to the beacon node satisfies the physical communication constraints. S and T These are the one-hop beacon neighbor set and the two-hop beacon neighbor set, respectively. R It is the communication radius. Represents particles With beacons i The Euclidean distance between them True and False These represent the conditions that are met and the conditions that are not met, respectively.
5. The method according to claim 2, characterized in that, The method of employing a probabilistic disjunctive model to calculate the comprehensive probability of the candidate particles includes: The combined probability of the candidate particles is calculated using a probabilistic inclusion disjunctive model, as follows: ; in, This indicates the weight of the selected particle. , G This represents the total number of beacons that the unknown node can receive the corresponding information packets at the current positioning time. Represents logic or relation. Is the unknown node from the first m Observations obtained at each beacon. This indicates that the first to the last... G The observations from each beacon are combined using a disjunctive combination. The logical meaning is that the combination is valid if at least one beacon observation supports the current particle. This covers all combinations, including those where only a single beacon observation is valid, and those where any number of beacon observations are valid simultaneously. The solution is to calculate the overall probability corresponding to the above disjunctive combination. The recursive calculation method is designed based on the principle of inclusion-exclusion, as follows: ; in, Indicates that the candidate particle is the current number G The probability that the observation verification of a single beacon is valid. Indicates that the candidate particle was previously G- The probability that the observation set of a single beacon is valid. Represents the joint support probability, which reflects the fact that the candidate particle is simultaneously supported by the previous... G- The observation set of a beacon and the current number G The probability overlaps between the observed and verified beacons. According to the inclusion-exclusion principle, directly accumulating the probabilities would cause the overlapping region to be calculated repeatedly. Therefore, this term must be subtracted to correct the redundancy. In computation, based on the assumption of conditional independence, this term is usually solved by multiplying the probabilities of the two parts.
6. The method according to claim 3, characterized in that, The step of updating the reputation change value based on whether the estimated coordinates of the unknown node and each beacon satisfy the distance-hop count relationship includes: The reputation change value is updated based on whether the estimated coordinates of the unknown node and each beacon satisfy the distance-hop count relationship, thus implementing a posterior feedback mechanism. After localization is completed, the estimated coordinates of the unknown node are determined. Do the Euclidean distances to each beacon satisfy the corresponding hop count relationship? ; in, This indicates whether the geometric relationship between the estimated coordinates of the unknown node and the coordinates of the neighboring beacon satisfies the physical communication constraints. S and T These are the one-hop beacon neighbor set and the two-hop beacon neighbor set, respectively. It's an estimated location. R This is the communication radius, and 0.1 is the fault tolerance coefficient. Indicates estimated coordinates With beacons i The Euclidean distance between the two beacon neighbor sets, the one-hop beacon neighbor set and the two-hop beacon neighbor set are traversed After filtering, the beacon set is obtained. ; The reputation score is updated by using the relationship between the location result and the beacon distance hop count. If the hop count-distance relationship matches, the beacon... Increase the reputation value by a step size; if there is no match, decrease the step size. ; in, It is the local current location time regarding the beacon node. i The reputation change value, This indicates the step size, which is set to 1. n The step size multiplier determines the convergence speed of the reputation of each beacon node; let's take 10. C This is the maximum credit score. It is the location time of the unknown node with respect to the beacon node. i Reputation value.
7. The method according to claim 1, characterized in that, The process of updating the local reputation value based on the local reputation table of the unknown node and the received reputation table of the neighboring nodes includes: The first step is to divide the beacon node sets into three categories: ; in, It is the set of beacon nodes recorded at the current location time of the unknown node. It is the set of beacon nodes received by an unknown node from its neighboring unknown nodes at the current location time. H For beacon nodes that are recorded both locally and in their neighbors, O This is the set of beacon nodes that are recorded only in their neighbors but not locally. L This is a set of beacon nodes that are recorded locally but not by their neighbors. Only information with a timestamp ≤ 1 second different from the local positioning time is retained. This means removing elements from the previous set that are included in the next set. This represents the portion that is shared by two sets. The second step is to update according to the following rules: For beacon nodes The local reputation will be updated a second time according to the following rules: ; in, It is the current location of the unknown node relative to the beacon node. i Reputation value Information about the beacon node received from the unknown node's neighbor. i The reputation change value, Indicates the step size. C This is the maximum credit score. For beacon nodes According to the following rules, local reputation will be updated simultaneously. : ; ; in, D broadcast node i The number of unknown node neighbors in the information. It is the aforementioned D Regarding the beacon node among the neighbors of an unknown node. i The f One reputation value; For beacon nodes The reputation value corresponding to this beacon does not need to be updated a second time.
8. A distributed reputation-enhanced Monte Carlo positioning system based on posterior feedback, characterized in that, include: Initialization unit, determination unit, and update unit; wherein, The initialization unit is used in the initialization phase: the beacon node floods messages to the unknown node, and the unknown node maintains its local reputation table and performs initialization. The determining unit is used to perform Monte Carlo localization, generate candidate particles, and filter the candidate particles by calculating the probability weights of the candidate particles through a probabilistic inclusion disjunction model to determine the estimated coordinates of the unknown node. The update unit is used to update the reputation change value based on the estimated coordinates of the unknown node; and update the reputation value in the local reputation table based on the reputation change value to obtain an updated local reputation table; update the local reputation value based on the local reputation table of the unknown node and the received neighbor node reputation table; after the current positioning ends, clear the change value and retain the current reputation; repeat the above operations to achieve dynamic positioning update.
9. A distributed reputation-enhanced Monte Carlo positioning device based on posterior feedback, characterized in that, include: Processor and memory, of which, The memory is used to store computer programs; The processor is configured to call and run the computer program from the memory to perform the method as described in any one of claims 1 to 7.
10. A computer-readable storage medium, characterized in that, It stores executable instructions for causing a processor to execute, thereby implementing the method of any one of claims 1 to 7.