Wireless seismograph low-delay routing method based on directed topology perception and Bayesian optimization
Through a routing method based on directed topology perception and Bayesian optimization, the problem of unclear data transmission paths in wireless seismometer self-organizing networks is solved, low-latency and efficient data transmission is achieved, and network changes in complex and harsh environments are adapted.
Patent Information
- Application Number
- CN202510728830.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-06-03
- Publication Date
- 2025-09-19
AI Technical Summary
In complex and harsh field environments, the routing methods of existing wireless seismometer self-organizing networks lack clear directionality and multi-factor considerations, resulting in unclear data transmission paths, low transmission efficiency, difficulty in adapting to dynamic changes in network topology, and inability to guarantee low latency and high real-time performance.
A routing method based on directed topology awareness and Bayesian optimization is adopted. By introducing the topological location identifier TPI and multi-path selection, combined with the Bayesian optimization algorithm, MPR node selection and TC message propagation are optimized, and a multi-path routing table is constructed to ensure that data is propagated in the predetermined direction and reduce end-to-end latency.
It achieves clarity and efficiency of data transmission in complex and harsh environments, reduces link breakage and delay, meets the requirements of reliable data transmission to the aggregation node, adapts to dynamic changes in network topology, and improves transmission efficiency and stability.
Smart Images

Figure CN120676427A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of wireless self-organizing network communications, and in particular to a low-latency routing method for wireless seismographs based on directed topology perception and Bayesian optimization. Background Art
[0002] A wireless ad hoc network is a decentralized communication network formed by self-organizing mobile nodes, eliminating the need for fixed infrastructure. Each node in this type of network is equally connected, offering advantages such as strong survivability and robustness. Furthermore, the network relies on multi-hop data transmission, making it highly flexible and scalable. It is widely used in scenarios such as earthquake monitoring, emergency rescue, battlefield communications, and information gathering in remote areas.
[0003] Cableless node-based seismometers are a typical application scenario for wireless ad hoc networks (WANs). Compared to wireless ad hoc networks constructed with conventional wireless sensor nodes, these networks are used in complex and harsh near-surface field environments. Wireless signal interference is significant, leading to significant network link fluctuations. Manual inspection of seismometer status is difficult, and the networks are often evenly distributed, long, chain-like structures with fixed geographical locations, making conventional node mobility analysis of topological changes difficult. Typically, a network has a sink node serving as the acquisition and control center for wireless seismic exploration systems. Each node needs to transmit data packets to the sink node, or root node, through multiple hops. Because the nodes are evenly distributed linearly, data packets can only be forwarded in two directions: toward the root node and away from the root node. Therefore, routing strategies are required that can adapt to severe link fluctuations, prioritize data transmission toward the root node, and provide high real-time performance.
[0004] The Optimized Link-State Routing (OLSR) protocol features an efficient route discovery mechanism. It updates the routing table whenever the one-hop neighbor set N1, the two-hop neighbor set N2, or the topology set changes. It also uses a multipoint relay (MPR) mechanism to reduce the broadcast overhead of topology control messages. This allows for real-time maintenance of global routing information and rapid response to network topology changes. The OLSR protocol's mechanism for maintaining network-wide routing information through the propagation of TC messages effectively meets the real-time requirements of node-based seismograph networks.
[0005] Currently, research on optimizing the OLSR protocol focuses primarily on the frequency of control message transmission, MPR node selection methods, and link interruption recovery, with most applications primarily in drone networks. Existing optimization research has not addressed the unique scenarios of long link distribution and data transmission to aggregation nodes, resulting in insufficient directionality and a lack of multi-factor consideration. The lack of clear directionality in routing leads to unclear paths for control information and data propagation within the network, impacting transmission efficiency. Furthermore, factors such as topological location are not comprehensively considered when selecting paths, resulting in suboptimal paths in practical applications. These paths are unable to adapt to dynamic changes in network topology and make it difficult to guarantee low-latency routing. Summary of the Invention
[0006] In response to the shortcomings of the existing technologies mentioned above and the particularities of wireless self-organizing networks of node-based seismographs, a low-latency routing method for wireless seismographs based on directed topology awareness and Bayesian optimization is proposed. This method proposes a topological position identifier (TPI), uses the TPI value to construct a multipath routing table to the root node, and introduces a Bayesian optimization algorithm for multipath selection. The present invention can overcome the severe interference caused by the near-surface environment on the establishment of routing tables, ensure that information propagates in the network in a predetermined direction, avoid data transmission link breakage, reduce end-to-end latency, and meet the requirements of reliable data transmission to a single aggregation node and high real-time transmission.
[0007] The technical solutions adopted in the present invention are as follows:
[0008] A low-latency routing method for wireless seismometers based on directed topology awareness and Bayesian optimization, the method comprising the following steps:
[0009] Step 1: Neighbor information perception and construction of neighbor set;
[0010] Step 2: Select an MPR node.
[0011] Step 3: Generate, process, and forward TC messages to create a topology table.
[0012] Step 4: Generate a routing table;
[0013] Step 5: Multi-path selection and data packet transmission;
[0014] Step 6: The root node processes the data packet.
[0015] The specific steps of step 1 are:
[0016] Each node in the network periodically sends HELLO messages for neighbor awareness. When processing received HELLO messages, it updates the inter-node link quality (connectGrade) and the number of receptions (recvTimes) based on the current round of reception. A combination of these two metrics determines whether to add the neighboring node to the one-hop neighbor set N1. The HELLO message sent by the neighboring node contains information about its own one-hop neighbor set N1, and based on this information, the two-hop neighbor set N2 is established.
[0017] The specific steps of step 2 are:
[0018] (1) A topological location identifier (TPI) is introduced globally. The initial TPI value of the root node is 0. Based on the node's one-hop neighbor set N1, if a node's one-hop neighbor set N1 contains the root node, its initial TPI value is 1. The initial TPI values of other nodes are set to 255.
[0019] (2) Neighbor nodes with TPI values other than 255 are added to the candidate set of MPR nodes. The comprehensive score node_score of each node in the candidate set is calculated. This comprehensive score is obtained by comprehensively considering AbsTPIDiff, link quality, and residual energy through the multi-index weighted function formula of the MPR selection mechanism. MPR nodes are selected from the largest to the smallest comprehensive score until the selected MPR nodes can fully cover the two-hop neighbor set N2, and the MPR node set is obtained.
[0020] Where AbsTPIDiff represents the absolute value of the difference between the TPI value of the current node and the one-hop neighbor node, which is used as a measure of the propagation potential of the neighbor node in the topology;
[0021] The multi-index weighted function formula of the MPR selection mechanism is:
[0022] node_score=ω1·AbsSignDiffRatio+ω2·gradeRatio+ω3·energyRatio (1)
[0023] In formula (1),
[0024]
[0025] Where ω1 represents the weight factor of TPI difference, ω2 represents the weight factor of link quality, and ω3 represents the weight factor of node residual energy. The above weight factors range from [0, 1] and are then normalized so that the sum is 1. Based on the importance of TPI difference > link quality > residual energy, ω1 > ω2 > ω3 are set.
[0026] (3) The current node broadcasts the MPR set information to its neighbor nodes through the neighbor node attribute nbtype in the HELLO message; its neighbor nodes view the MPR set information to generate an MPR selection set, which is then broadcast through the HELLO message; each node needs to generate and store the MPR set and the MPR selection set. The MPR set stores the MPR nodes selected by the node, and the MPR selection set stores the nodes that select the node as the MPR, which are represented by MPS nodes.
[0027] The specific steps of step 3 are as follows:
[0028] MPR nodes can generate and forward TC messages. TC messages come in two types: generate and forward. TC messages contain the TPI value, link quality, and remaining energy of the TC source node, the validTime of the TC message, and information about the MPR→MPS node pair.
[0029] After receiving a TC message, each node processes it according to the type and generates a local topology table. The table stores the topology information of all nodes from the current node to the root node.
[0030] An entry in the topology table stores the following information: T_last – TC source node ID, T_dest – MPS node ID, T_TPI – TPI value of TC source node, T_grade – link quality of TC source node, T_energy – remaining energy of TC source node and T_time – validity period of the entry;
[0031] The process of processing a generated TC message received by a node is as follows:
[0032] (1) Delete the topology entries whose validity time T_time has expired;
[0033] (2) If the TPI value of the TC source node + 1 = the TPI value of the current node, the message is processed; if an entry with the same T_last as the source node of the newly received TC message already exists in the topology table, the valid time, link quality, and remaining energy of the topology entry are updated; otherwise, a new topology entry is added and the values of the T_last, T_dest, T_TPI, T_time, T_grade, and T_energy variables are updated;
[0034] (3) If the TPI value of the TC source node + 1 is less than the TPI value of the current node, then the TPI value of the current node is updated to = the TPI value of the TC source node + 1; the node ID of the source node of the TC message received by the current node is recorded in the TPI.SRC variable, the node ID of the TC message source node is assigned to the TPI.SRC variable, a new topology entry is added, and the entries in the topology table where the TPI value of the TC source node is greater than the TPI value of the current node are deleted;
[0035] (4) If the TPI value of the TC source node is greater than or equal to the TPI value of the current node, and the node ID of the TC message source node is equal to the node ID of the source node recorded in the TPI.SRC variable of the current node, then the TPI value of the current node is updated to be equal to the TPI value of the TC source node + 1, and the old entry in the topology table with T_last as the TC source node is replaced with the new entry;
[0036] If the TPI value of the TC source node is greater than or equal to the TPI value of the current node, and the TC message source node is ≠ the TPI.SRC value of the current node, the message is discarded and no processing is performed. The topology table is checked to see if there is a routing entry with T_last as the TC source node ID. If so, the corresponding entry is deleted. This completes the processing steps for the generate type TC message.
[0037] (5) After processing the TC message, if the current node is an MPR node, the TC message type is set to forward and the TC message is forwarded;
[0038] The process for a node to process a forwarding TC message is as follows:
[0039] (1) Delete the topology entries whose validity time T_time has expired;
[0040] (2) If the TPI value of the TC source node is greater than or equal to the TPI value of the current node, the message is discarded;
[0041] (3) If the TPI value of the TC source node is less than the TPI value of the current node, the message is processed; if an entry T_last = TC source node already exists in the topology table, the topology entry information is updated; otherwise, a new topology entry is added according to the TC message.
[0042] The specific steps of step 4 are as follows:
[0043] (1) Initialization: Set the root node R and the current node C, initialize the path set PathSet and the path node set Path to empty sets, and add node C to the current path node set Path;
[0044] Among them, the path node set Path stores the order of nodes passed along the path during the current recursive traversal, and the path set PathSet stores all path node sets Path that can reach the root node;
[0045] (2) In the topology table, find all topology entries whose TC source node is the current node, and add the MPS nodes corresponding to these entries to the next hop set of node C, NextHopSet;
[0046] (3) Traverse each node N in the next hop set NextHopSet of node C:
[0047] ① Get node N in the next hop set NextHopSet; if node N is already in the Path, skip it to prevent loops; if node N is not in the Path, add N to the current path node set Path;
[0048] ② If the current node N is the root node, add the current path node set Path to the path set PathSet, ending the recursion of the path; then, backtrack to the previous node of node N in the current path node set Path as the new node C, repeat steps ①-②, and continue searching for other possible paths until the recursion of the path ends;
[0049] ③If the current node N is not the root node, use the current node N as the new node C and repeat steps ①-③ until the recursion of the path ends;
[0050] (4) After all recursions are completed, the set PathSet stores all complete reachable paths from the initial node C to the root node R.
[0051] (5) For each path P in the PathSet, a corresponding routing entry is generated. Each entry contains the following variables:
[0052] The root node ID (R_dest), the second node ID in path P (R_next), the length of path P (R_dist), the average neighbor TPI difference (R_ΔTPI), the sum of the link quality of all nodes in path P (R_grade), and the sum of the energy of all nodes in path P (R_energy). R_dist = the number of nodes in path P - 1. R_ΔTPI, R_grade, and R_energy are calculated as follows:
[0053] Traverse each hop P[i]→P[i+1] in the path P, search the topology table for the entry with the TC source node P[i] and the MPS node P[i+1], and accumulate the link quality T_grade and residual energy T_energy of the intermediate node in the entry respectively, and finally use them as the link quality R_grade and residual energy R_energy indicators of the path.
[0054] For each hop P[i]→P[i+1] in the path, the TPI fluctuation of the path node is defined as:
[0055]
[0056] Where k is the number of path hops, D i =|TPI i -TPI i+1 |, D max =max(|TPI i -TPI i+1 |), TPI i is the TPI value of node i in the path.
[0057] The steps for step 5 are as follows:
[0058] The routing table obtained in step 4 stores multiple different paths to the root node. When a node has data to transmit, the score of each path, route_score, is calculated using the multi-index weighted function formula (2). The second node in the path with the highest score is selected as the next hop node. During the transmission process, the ID of the node in the historical path is stored in the data packet. This is repeated until the destination node receives the packet.
[0059] The formula for calculating the multi-index weighted function for each path score is:
[0060]
[0061] In formula (2),
[0062]
[0063] The indicator weights θ1, θ2, θ3, and θ4 of the function are adjusted using the Bayesian optimization method combined with the TPI fluctuations of the path nodes.
[0064] The specific steps of Bayesian optimization to adjust the weights of each indicator in the path selection evaluation function are as follows:
[0065] (1) Randomly select a set of weight combinations (θ1, θ2, θ3, θ4) within the specified range, normalize them so that θ1+θ2+θ3+θ4=1, record the number of entries stored in the current node delay table NodeDelayTable array, run the network for a period of time, and collect the average data packet delay during the period of 5 newly successfully sent packets as feedback on the effect of this set of weights; repeat three times, and the sampling ends;
[0066] (2) Construct a model and predict the target function; use a Gaussian process to model the initialization result as a function: the input is a weight combination, and the output is a prediction delay model with a confidence interval to give a prediction distribution, that is, the predicted mean and uncertainty;
[0067] (3) Use the expected improvement value of the acquisition function EI to guide the search process, and adjust the acquisition function in combination with R_ΔTPI.
[0068] EI(X)=E[max(f min -f(X),0]·e R_ΔTPI(X)-1 (3)
[0069] In formula (3), f min is the current optimal delay, E represents the mathematical expectation, and e is a natural constant. By selecting the combination with the highest EI value from the candidate combinations, the exploration priority of the path with large topological fluctuations is reduced, and the next round of experiments is entered;
[0070] (4) Feedback loop: continue running the network with the weight combination obtained in step (3), collect the average delay within a certain period of time, add the new samples to the data set, and provide data support for the next optimization.
[0071] The steps for step 6 are as follows:
[0072] When the destination node receives a packet, it calculates the delay and generates an ACK packet, including the packet sequence number and delay. The ACK packet is then returned to the source node along the original path. Upon receiving the ACK packet, the source node stores the sequence number and delay value in its own node delay table, NodeDelayTable, providing data support for Bayesian optimization. The source node also stores the next-hop node ID, the number of successful transmissions, and the corresponding destination node ID in its own historical success array, sendSuccessTable. If a node's routing table lacks the required entry due to a temporary link outage, the node with the highest historical success count is selected as the next-hop node.
[0073] Compared with the prior art, the present invention has the following beneficial effects:
[0074] The method of the present invention fully considers the characteristics of the node seismometer self-organizing network, which is laid near the surface, has a uniformly distributed long chain structure, and is applied to complex and harsh field environments, and designs a routing method in a targeted manner.
[0075] The TPI value is used to improve the MPR selection mechanism, control the propagation direction of TC messages, and construct a multipath routing table to the root node. This ensures that data propagation paths within the network are clearly defined, significantly improving transmission efficiency. The routing table stores multiple paths to the root node. Taking multiple factors into consideration, the Bayesian optimization algorithm adjusts the weights of each indicator, ensuring that multipath selection favors the path with the lowest latency.
[0076] The present invention can clarify the direction of information dissemination and data transmission, reduce the impact of link breakage and data backtransmission on the transmission rate, and at the same time overcome the serious interference of the near-surface environment on the establishment of the routing table, reduce end-to-end delay, and meet the requirements of reliable data transmission to a unique aggregation node and high real-time transmission. BRIEF DESCRIPTION OF THE DRAWINGS
[0077] Figure 1 Flow chart of the method of the present invention;
[0078] Figure 2 Schematic diagram of the neighbor set CS table structure;
[0079] Figure 3 Schematic diagram of the structure of the one-hop neighbor set N1 table;
[0080] Figure 4 Schematic diagram of the process of establishing a symmetric link between two nodes;
[0081] Figure 5 This is a flowchart for processing a generate type TC message.
[0082] Figure 6 This is a flowchart for processing forward type TC messages;
[0083] Figure 7 A schematic diagram of the process of generating a routing table;
[0084] Figure 8 Schematic diagram of the process for adjusting indicator weights for Bayesian optimization. DETAILED DESCRIPTION
[0085] In order to make the purpose, technical solutions and advantages of the present invention more clearly understood, the present invention is further described in detail below in conjunction with the embodiments. It should be understood that the specific embodiments described herein are only used to explain the present invention and are not intended to limit the present invention.
[0086] The present invention provides a low-latency routing method for wireless seismographs based on directed topology perception and Bayesian optimization, such as Figure 1 As shown, it mainly includes the following steps:
[0087] Step 1: Perceive neighbor information and build a neighbor set.
[0088] During the link perception and neighbor node detection phase, a node will periodically exchange HELLO messages with its neighbor nodes to establish a local link information base and a neighbor information base. The table structure of the neighbor information base CS set in this embodiment is as follows: Figure 2 As shown, the table structures of one-hop neighbor set N1 and two-hop neighbor set N2 are as follows Figure 3 shown.
[0089] To establish a CS set, two nodes need to establish a bidirectional connection with each other through three handshakes before adding each other to their own CS set. The process of establishing a symmetric link between two nodes is as follows: Figure 4 Only when two nodes mark each other as their own symmetric node will a symmetric link be created between the nodes, and the two nodes can exchange data.
[0090] However, because the node seismometer network is located in a near-surface environment with strong wireless signal interference, the nodes in the CS cluster cannot be directly considered as one-hop neighbors. The link quality connectGrade and the number of reception times recvTimes between nodes must also be considered.
[0091] When processing a received HELLO message, each node determines whether it has received HELLO messages from all nodes in its neighbor table in the current round. Based on the reception status (thisRoundRecvFlag), it updates the inter-node link quality (connectGrade) and the number of receptions (recvTimes). The values of these two metrics are combined to determine whether to add a node in the neighbor set to the N1 set. The HELLO message sent by a neighboring node contains information about its own one-hop neighbor table. This information is used to establish the current node's N2 set.
[0092] The connectGrade and recvTimes parameters can be used to filter out false neighbor relationships caused by brief signal fluctuations or sporadic link connectivity, preventing nodes without sustained communication capabilities from being mistakenly identified as part of a reliable path. Identifying neighboring nodes with frequent communication and stable links and adding them to the N1 node set improves the accuracy and robustness of path selection, making it suitable for near-surface wireless seismograph networks.
[0093] Step 2: Select an MPR node.
[0094] (1) A topological location identifier (TPI) is introduced globally, where the TPI value of the root node is initialized to 0. It is determined whether the root node exists in the N1 set of the current node. If so, the TPI value is set to 1 (i.e., the TPI of the root node's one-hop neighbor node is marked as 1). The TPI values of all other nodes are initialized to 255.
[0095] (2) The absolute value of the difference between the TPI values of the current node and the one-hop neighbor node, AbsTPIDiff, is introduced as a measure of the propagation potential of the neighbor node in the topology.
[0096] When a neighbor's TPI value is significantly lower than the current node's, it indicates that the neighbor is closer to the root node, facilitating data transmission back to the root node. When a neighbor's TPI value is significantly higher than the current node's, it indicates that the neighbor is farther away from the root node, facilitating the further propagation of TC information. Prioritizing neighbor nodes with larger AbsTPIDiff values as MPRs ensures that data can be transmitted back to the root node and that TC messages can be effectively propagated to the periphery of the network, preventing topological link disruptions and the creation of information islands.
[0097] (3) Neighbor nodes with TPI values other than 255 are added to the candidate set, and the comprehensive score node_score of each node in the candidate set is calculated. This comprehensive score is obtained by comprehensively considering AbsTPIDiff, link quality, and residual energy through the multi-index weighted function formula of the MPR selection mechanism. MPR nodes are selected from the largest to the smallest comprehensive score until the selected MPR nodes can fully cover the two-hop neighbor set N2, and the MPR set is obtained;
[0098] The multi-index weighted function formula of the MPR selection mechanism is:
[0099] node_score=ω1·AbsSignDiffRatio+ω2·gradeRatio+ω3·energyRatio (1)
[0100] In formula (1),
[0101]
[0102] Where ω1 represents the weight factor of TPI difference, ω2 represents the weight factor of link quality, and ω3 represents the weight factor of node residual energy. The above weight factors range from [0, 1] and are then normalized so that the sum is 1. In this invention, the importance of indicators is considered to be: TPI difference > link quality > residual energy. Therefore, ω1, ω2, and ω3 are set to 0.5, 0.3, and 0.2 respectively.
[0103] (4) The current node broadcasts the MPR set information to its neighbor nodes through the neighbor node attribute nbtype in the HELLO message; its neighbor nodes view the MPR set information to generate an MPR selection set, which is then broadcast through the HELLO message; each node needs to generate and store the MPR set and the MPR selection set. The MPR set stores the MPR nodes selected by the node, and the MPR selection set stores the nodes that select the node as the MPR, which is represented by the MPS node.
[0104] When selecting an MPR, existing technologies only consider factors such as two-hop coverage and link quality, ignoring the propagation potential of neighboring nodes in the topology and easily generating redundant paths. This invention prioritizes nodes with large AbsTPIDiff as MPR nodes. This not only ensures that data can be transmitted back to the root node, but also allows the selection of neighboring nodes that are further away in the topology and have stronger propagation capabilities as MPR nodes. This also ensures that TC topology control information can be effectively diffused to the periphery of the network, avoiding topology link breakage and the generation of information islands, thereby improving network connectivity and stability.
[0105] Step 3: Generate, process, and forward TC messages to create a topology table.
[0106] There are two types of TC messages in the OLSR protocol: generate and forward. Only MPR nodes (in this embodiment, with a topological location identifier (TPI) value between 0 and 255) can generate and forward TC messages. TC messages store the TC source node's TPI value, link quality, remaining energy, validTime, and MPR→MPS node pair information. However, the stored MPR→MPS node pair information only includes MPS nodes with a TPI lower than the TC source node's TPI. If there are no nodes in the MPS with a lower TPI than the node itself, no TC message is generated.
[0107] After processing the TC message, each node generates a local topology table, which stores the topology information of all nodes from the current node to the root node.
[0108] An entry in the topology table stores the following information: the TC source node ID (T_last), the TC's MPS node ID (T_dest), the TC source node's TPI value (T_TPI), the TC source node's link quality (T_grade), the TC source node's remaining energy (T_energy), and the entry's validity period (T_time).
[0109] The processing flow of receiving a generate type TC message is as follows Figure 5 As shown, the details are as follows:
[0110] (1) Delete the topology entries whose validity time T_time has expired;
[0111] (2) If the TPI value of the TC source node + 1 = the TPI value of the current node, the message is processed; if an entry with the same T_last as the source node of the newly received TC message already exists in the topology table, the valid time, link quality, and remaining energy of the topology entry are updated; otherwise, a new topology entry is added and the values of the T_last, T_dest, T_TPI, T_time, T_grade, and T_energy variables are updated;
[0112] (3) If the TPI value of the TC source node + 1 is less than the TPI value of the current node, then the TPI value of the current node is updated to = the TPI value of the TC source node + 1; the node ID of the source node of the TC message received by the current node is recorded in the TPI.SRC variable, the node ID of the TC message source node is assigned to the TPI.SRC variable, a new topology entry is added, and the entries in the topology table where the TPI value of the TC source node is greater than the TPI value of the current node are deleted;
[0113] (4) If the TPI value of the TC source node is greater than or equal to the TPI value of the current node, and the node ID of the TC message source node is equal to the node ID of the source node recorded in the TPI.SRC variable of the current node, then the TPI value of the current node is updated to be equal to the TPI value of the TC source node + 1, and the old entry in the topology table with T_last as the TC source node is replaced with the new entry;
[0114] If the TPI value of the TC source node is greater than or equal to the TPI value of the current node, and the TC message source node is ≠ the TPI.SRC value of the current node, the message is discarded and no processing is performed. The topology table is checked to see if there is a routing entry with T_last as the TC source node ID. If so, the corresponding entry is deleted. This completes the processing steps for the generate type TC message.
[0115] (5) After processing the TC message, if the current node is an MPR node, it forwards the TC message and sets the type of the TC message to forward.
[0116] The node receives the forward type TC message processing flow, such as Figure 6 As shown, the steps are as follows:
[0117] (1) Delete the topology entries whose validity time T_time has expired;
[0118] (2) If the TPI value of the TC source node is greater than or equal to the TPI value of the current node, the message is discarded;
[0119] (3) If the TPI value of the TC source node is less than the TPI value of the current node, the message is processed; if an entry T_last = TC source node already exists in the topology table, the topology entry information is updated; otherwise, a new topology entry is added.
[0120] By controlling the propagation direction of TC messages and directing their diffusion from the root node toward the network periphery, each node gradually builds multi-path reachable topology information centered on the root node and, based on this information, generates a routing table containing multiple paths. This approach not only clarifies the direction of data propagation within the network, avoiding blind path selection, but also effectively improves the stability and efficiency of data transmission. It is particularly suitable for multi-hop, large-scale ad hoc networks that require low latency and high reliability.
[0121] Step 4: Generate a routing table.
[0122] The process of generating routing table from topology table is as follows Figure 7 The specific steps are as follows:
[0123] (1) Initialization: Set the root node and the current node C, initialize the path set PathSet and the current search path set Path, and add node C to Path.
[0124] Among them, the Path collection stores the order of nodes passed along the path during the current recursive traversal, and the PathSet collection stores all paths that can reach the root node.
[0125] (2) Find the next hop link
[0126] In the topology table, find all topology entries whose TC source node ID (T_last) is equal to the current node, and add the T_dest corresponding to these entries to the next hop set NextHopSet of node C.
[0127] (3) Traverse each node N in NextHopSet:
[0128] ① If node N is already in the path, skip it to prevent loops;
[0129] ②If node N is not in the Path, add N to the current path;
[0130] ③If node N is the root node, add the current path Path to PathSet and end the recursion of the path;
[0131] ④ After recursively processing a node N, backtrack to the previous node as node C and repeat steps ①-④ to continue searching for other possible paths.
[0132] ⑤ If node N is not the root node, use node N as the new node C, re-obtain its next hop set NextHopSet, and repeat steps ①-⑤ recursively until the recursion of the path ends;
[0133] (4) After all recursions are completed, the set PathSet stores all complete reachable paths from the initial node C to the root node R.
[0134] (5) For each path P in the PathSet, a corresponding routing entry is generated. Each entry contains the following variables:
[0135] The root node ID (R_dest), the second node ID in path P (R_next), the length of path P (R_dist), the average neighbor TPI difference (R_ΔTPI), the sum of the link quality of all nodes in path P (R_grade), and the sum of the energy of all nodes in path P (R_energy). R_dist = the number of nodes in path P - 1. R_ΔTPI, R_grade, and R_energy are calculated as follows:
[0136] Traverse each hop P[i]→P[i+1] in the path P and search the topology table for the entry where the TC message source node is P[i] and the TC message MPS node is P[i+1]. Accumulate the link quality T_grade and remaining energy T_energy of the intermediate node in this entry, and finally use them as the link quality R_grade and remaining energy R_energy indicators of the path.
[0137] For each hop P[i]→P[i+1] in the path, k is the number of path hops, and D i =|TPI i -TPI i+1 |, D max =max(|TPI i -TPI i+1 |), TPI i is the TPI value of node i in the path.
[0138] Step 5: Multi-path selection and data packet transmission.
[0139] The routing table stores multiple different paths to the root node R. When a node has data to transmit, the score of each path, route_score, is calculated using the multi-index weighted function formula (i.e., formula (2)). The entry with the highest score, R_next, is selected as the next hop node. During the transmission process, the node ID of the historical path is stored in the data packet, and this process is repeated until the destination node receives the packet.
[0140] The formula for calculating the multi-index weighted function for each path score is:
[0141]
[0142] In formula (2),
[0143]
[0144] The Bayesian optimization method is used to adjust the index weights θ1, θ2, θ3, and θ4 of the function in combination with the TPI fluctuation of the path nodes. The feedback is the packet delay data obtained from the actual operation of the network, which makes the algorithm tend to choose a path with stable structure and low latency. The relevant process is as follows: Figure 8 shown.
[0145] The specific steps of Bayesian optimization parameter adjustment are as follows:
[0146] (1) Randomly select a set of weight combinations (θ1, θ2, θ3, θ4) within the specified range and normalize them so that θ1+θ2+θ3+θ4=1. Record the number of entries stored in the current node delay table NodeDelayTable array. After the network runs for a period of time, collect the average packet delay during the period of 5 newly successfully sent packets as feedback on the effect of this set of weights. Repeat three times and the sampling ends.
[0147] (2) Build a model and predict the target function; use a Gaussian process to model the initialization result as a function: the input is a weight combination, the output is the predicted delay (including confidence interval), and the model gives the predicted distribution, that is, the predicted mean and uncertainty;
[0148] (3) Use the expected improvement value of the acquisition function EI to guide the search process, combine it with R_ΔTPI to adjust the acquisition function, reduce the exploration priority of paths with large topological fluctuations, select the weight combination that is most worth trying from the prediction results, and enter the next round of experiments;
[0149] (4) Feedback loop: Continue running the network with the weight combination obtained in the third step, collect the average delay within a certain period of time, add new samples to the data set, and provide data support for the next optimization.
[0150] The weighting function used in this step comprehensively considers link directionality and path structure stability. The parameters connectGrade and energy have already been processed using the TPI in step 3. Only links facing the root node are considered, effectively avoiding the evaluation bias caused by multi-directional link interference in existing technologies. Furthermore, the R_ΔTPI parameter is introduced into the weighting function to reflect the smoothness of the path topology. Poor path smoothness indicates path jumps or hierarchical discontinuities. A larger R_ΔTPI indicates a more stable path structure, which is more conducive to reducing transmission delay and routing oscillation risks.
[0151] Step 6: The root node processes the data packet.
[0152] When the destination node receives a packet, it calculates the delay and generates an ACK packet, including the packet sequence number and delay. The ACK packet is then returned to the source node along the original path. Upon receiving the ACK packet, the source node stores the sequence number and delay value in its own node delay table, NodeDelayTable, providing data support for Bayesian optimization. The source node also stores the next-hop node ID, the number of successful transmissions, and the corresponding destination node ID in its own historical success array, sendSuccessTable. If a node's routing table lacks the required entry due to a temporary link outage, the node with the highest historical success count is selected as the next-hop node.
[0153] Furthermore, the updating process of a node's TPI value is illustrated by taking an example:
[0154] (1) The TPI value of node 10 is initialized to 255. When it receives the TC generated by node 7, the TPI value of node 7 is 3. Then, the TPI of node 10 is updated to 4 and TPI.SRC to 7.
[0155] (2) After the TPI of node 10 is updated to 4, it receives the TC generated by node 5. The TPI value of node 5 is 2. Therefore, the TPI of node 10 is updated to 3 and TPI.SRC is updated to 5.
[0156] (3) After node 10's TPI is updated to 3, if it receives a TC message from node 7 with a TPI value of 3, or a TC message from node 9 with a TPI value of 4, it discards the TC message and does not process it.
[0157] (4) Node 10’s TPI is 3. After receiving the TC generated by node 5, node 5’s TPI value changes to 3. Then, node 10’s TPI is updated to 4 and TPI.SRC to 5.
[0158] (5) If all entries from TPI.SRC stored in the topology table of node 10 are expired, the TPI of node 10 is initialized to 255 and waits for the next TC message to be updated.
[0159] Furthermore, the generation process of a node routing table is illustrated by taking an example:
[0160] (1) The current node is 4. The entries in the topology table are 4→3, 4→2, 3→1, 2→1, 2→0, and 1→0 (T_last→T_dest). Initialize Path = [4] and PathSet to an empty set. Find the entry with T_last = 4 in the topology table and get NextHopSet = {3, 2}.
[0161] (2) Traverse NextHopSet:
[0162] (2.1) Processing neighbor node 3:
[0163] Update Path = [4, 3], 3 ≠ root node, search the topology table for the entry with T_last = 3, and get NextHopSet = {1};
[0164] (2.1.1) Processing neighbor node 1:
[0165] Update Path = [4, 3, 1], 1 ≠ root node, search the topology table for the entry with T_last = 1, and get NextHopSet = {0};
[0166] (2.1.2) Processing neighbor node 0:
[0167] Update Path = [4, 3, 1, 0], where 0 is the root node, and store the path in the PathSet collection;
[0168] (2.1.3) Backtracking, the path is restored to [4,3]. Since it contains all possible next nodes in the node 3NextHopSet set, continue backtracking and the path is restored to [4].
[0169] (2.3) Processing neighbor node 2:
[0170] Update Path = [4, 2], 2 ≠ root node, search the topology table for the entry with T_last = 2, and get NextHopSet = {1, 0};
[0171] (2.3.1) Processing neighbor node 1:
[0172] Update Path = [4, 2, 1], 1 ≠ root node, search the topology table for the entry with T_last = 1, and get NextHopSet = {0};
[0173] (2.3.2) Processing neighbor node 0:
[0174] Update Path = [4, 2, 1, 0], where 0 is the root node, and store the path in the PathSet collection;
[0175] (2.3.3) Backtrack once, and the path is restored to [4,2];
[0176] (2.3.4) Processing neighbor node 0:
[0177] Update Path = [4, 2, 0], where 0 is the root node, and store the path in the PathSet collection;
[0178] (2.4) Backtracking, the Path is restored to [4,2]. Since it already contains all possible next nodes in the NextHopSet set of node 2, continue backtracking and the Path is restored to [4].
[0179] (3) After all nodes in NextHopSet are traversed, all reachable paths to the root node are stored in PathSet:
[0180] {Path 1: [4,3,1,0]; Path 2: [4,2,1,0]; Path 3: [4,2,0]};
[0181] (4) Based on the path set obtained in step (3), generate routing entries respectively: R_dest = root node, R_next = second node in path P, R_dist = number of nodes in path P - 1, R_ΔTPI, R_grade and R_energy are calculated according to the relevant formulas.
[0182] Furthermore, the process of adjusting the weights of each indicator in the path scoring function by Bayesian optimization of a node is explained by taking an example:
[0183] (1) Randomly generate three sets of weights (θ1, θ2, θ3, θ4). For the smallest energy difference, set the weight factor θ4 to a smaller range (0.05, 0.2). Use the three sets of values as initial weights. Calculate the average latency every time a node successfully sends five packets. Assume the results are as follows:
[0184] Table 1
[0185]
[0186]
[0187] (2) Take the weight combination as input X and the time delay as output y, and use Gaussian process regression (GPR) to fit the function:
[0188] y=f(X)+ε,ε~N(0,σ 2 ) (3)
[0189] In formula (3), ε is the confidence interval, which obeys Gaussian distribution;
[0190] The model outputs a predicted mean and a confidence interval. The former is used to estimate the expected value of the delay, and the latter is used to reflect the uncertainty of the prediction, such as ±2ms.
[0191] Assume that the data of step (2) is output by the prediction model as shown in Table 2,
[0192] Table 2
[0193]
[0194] (3) The expected improvement (EI) method is used to calculate the EI values of all candidate weights, and the structural volatility factor R_ΔTPI(X) is introduced to weigh the impact of path smoothness through exponential decay.
[0195] EI(X)=E[max(f min -f(X),0]·e R_ΔTPI(X)-1 (4)
[0196] In formula (4), f min The current optimal delay is 15.6ms, and the R_ΔTPI of this weighted combination is 0.92. The combination with the highest EI value is selected from the candidate combinations.
[0197] For example, for the combination (0.3, 0.35, 0.25, 0.1), EI≈0.0517; for the combination (0.4, 0.2, 0.3, 0.1), EI≈0.0582; select the combination (0.4, 0.2, 0.3, 0.1) to enter the next round of experiments.
[0198] (4) Experiment with new weights (0.4, 0.2, 0.3, 0.1), run the network test, and measure the actual delay hypothesis to be 14.7ms. Update the sample set, as shown in Table 3.
[0199] Table 3
[0200] Sample No. <![CDATA[θ1]]> <![CDATA[θ2]]> <![CDATA[θ3]]> <![CDATA[θ4]]> Average latency 1 0.35 0.3 0.25 0.1 17.8ms 2 0.2 0.45 0.25 0.1 15.6ms 3 0.25 0.25 0.45 0.05 19.2ms 4 0.4 0.2 0.3 0.1 14.7ms
[0201] (5) Repeat steps (2) to (4). After multiple rounds of iterations, the model will gradually converge to a globally optimal or nearly optimal weight combination, so that when selecting multiple paths, the path that can bring low latency will be preferred.
Claims
1. A low-latency routing method for wireless seismographs based on directed topology perception and Bayesian optimization, characterized in that: The method comprises the following steps: Step 1: Neighbor information perception and construction of neighbor set; Step 2: Select an MPR node. Step 3: Generate, process, and forward TC messages to create a topology table. Step 4: Generate a routing table; Step 5: Multi-path selection and data packet transmission; Step 6: The root node processes the data packet; The specific steps of step 1 are: Each node in the network periodically sends HELLO messages for neighbor awareness. When processing received HELLO messages, it updates the inter-node link quality (connectGrade) and the number of receptions (recvTimes) based on the current round of reception. A combination of these two metrics determines whether to add the neighboring node to the one-hop neighbor set N1. The HELLO message sent by the neighboring node contains information about its own one-hop neighbor set N1, and based on this information, the two-hop neighbor set N2 is established. The specific steps of step 2 are: (1) A topological location identifier (TPI) is introduced globally. The initial TPI value of the root node is 0. Based on the node's one-hop neighbor set N1, if a node's one-hop neighbor set N1 contains the root node, its initial TPI value is 1. The initial TPI values of other nodes are set to 255. (2) Neighbor nodes with TPI values other than 255 are added to the candidate set of MPR nodes. The comprehensive score node_score of each node in the candidate set is calculated. This comprehensive score is obtained by comprehensively considering AbsTPIDiff, link quality, and residual energy through the multi-index weighted function formula of the MPR selection mechanism. MPR nodes are selected from the largest to the smallest comprehensive score until the selected MPR nodes can fully cover the two-hop neighbor set N2, and the MPR node set is obtained. Where AbsTPIDiff represents the absolute value of the difference between the TPI value of the current candidate node and the one-hop neighbor node, which is used as a measure of the propagation potential of the neighbor node in the topology; The multi-index weighted function formula of the MPR selection mechanism is: node_score=ω1·AbsSignDiffRatio+ω2·gradeRatio+ω3·energyRatio (1) In formula (1), Where ω1 represents the weight factor of TPI difference, ω2 represents the weight factor of link quality, and ω3 represents the weight factor of node residual energy. The above weight factors range from [0, 1] and are then normalized so that the sum is 1. Based on the importance of TPI difference > link quality > residual energy, ω1 > ω2 > ω3 are set. (3) The current node broadcasts the MPR set information to its neighbor nodes through the neighbor node attribute nbtype in the HELLO message; its neighbor nodes view the MPR set information to generate an MPR selection set, which is then broadcast through the HELLO message; each node needs to generate and store the MPR set and the MPR selection set. The MPR set stores the MPR nodes selected by the node, and the MPR selection set stores the nodes that select the node as the MPR, which are represented by MPS nodes.
2. The low-latency routing method for wireless seismographs based on directed topology perception and Bayesian optimization according to claim 1, characterized in that: The specific steps of step 3 are as follows: MPR nodes can generate and forward TC messages. TC messages come in two types: generate and forward. TC messages contain the TPI value, link quality, and remaining energy of the TC source node, the validTime of the TC message, and information about the MPR→MPS node pair. After receiving a TC message, each node processes it according to the type and generates a local topology table. The table stores the topology information of all nodes from the current node to the root node. An entry in the topology table stores the following information: T_last – TC source node ID, T_dest – MPS node ID, T_TPI – TPI value of TC source node, T_grade – link quality of TC source node, T_energy – remaining energy of TC source node and T_time – validity period of the entry; The process of processing a generated TC message received by a node is as follows: (1) Delete the topology entries whose validity time T_time has expired; (2) If the TPI value of the TC source node + 1 = the TPI value of the current node, the message is processed; if an entry with the same T_last as the source node of the newly received TC message already exists in the topology table, the valid time, link quality, and remaining energy of the topology entry are updated; otherwise, a new topology entry is added and the values of the T_last, T_dest, T_TPI, T_time, T_grade, and T_energy variables are updated; (3) If the TPI value of the TC source node + 1 is less than the TPI value of the current node, then the TPI value of the current node is updated to = the TPI value of the TC source node + 1; the node ID of the source node of the TC message received by the current node is recorded in the TPI.SRC variable, the node ID of the TC message source node is assigned to the TPI.SRC variable, a new topology entry is added, and the entries in the topology table where the TPI value of the TC source node is greater than the TPI value of the current node are deleted; (4) If the TPI value of the TC source node is greater than or equal to the TPI value of the current node, and the node ID of the TC message source node is equal to the node ID of the source node recorded in the TPI.SRC variable of the current node, then the TPI value of the current node is updated to be equal to the TPI value of the TC source node + 1, and the old entry in the topology table with T_last as the TC source node is replaced with the new entry; If the TPI value of the TC source node is greater than or equal to the TPI value of the current node, and the TC message source node is ≠ the TPI.SRC value of the current node, the message is discarded and no processing is performed. The topology table is checked to see if there is a routing entry with T_last as the TC source node ID. If so, the corresponding entry is deleted. This completes the processing steps for the generate type TC message. (5) After processing the TC message, if the current node is an MPR node, the TC message type is set to forward and the TC message is forwarded; The process for a node to process a forwarding TC message is as follows: (1) Delete the topology entries whose validity time T_time has expired; (2) If the TPI value of the TC source node is greater than or equal to the TPI value of the current node, the message is discarded; (3) If the TPI value of the TC source node is less than the TPI value of the current node, the message is processed; if an entry T_last = TC source node already exists in the topology table, the topology entry information is updated; otherwise, a new topology entry is added according to the TC message.
3. The low-latency routing method for wireless seismographs based on directed topology perception and Bayesian optimization according to claim 2, characterized in that: Step 4: Generate a routing table. (1) Initialization: Set the root node R and the current node C, initialize the path set PathSet and the path node set Path to empty sets, and add node C to the current path node set Path; Among them, the path node set Path stores the order of nodes passed along the path during the current recursive traversal, and the path set PathSet stores all path node sets Path that can reach the root node; (2) In the topology table, find all topology entries whose TC source node is the current node, and add the MPS nodes corresponding to these entries to the next hop set of node C, NextHopSet; (3) Traverse each node N in the next hop set NextHopSet of node C: ① Get node N in the next hop set NextHopSet; if node N is already in the Path, skip it to prevent loops; if node N is not in the Path, add N to the current path node set Path; ② If the current node N is the root node, add the current path node set Path to the path set PathSet, ending the recursion of the path; then, backtrack to the previous node of node N in the current path node set Path as the new node C, repeat steps ①-②, and continue searching for other possible paths until the recursion of the path ends; ③If the current node N is not the root node, use the current node N as the new node C and repeat steps ①-③ until the recursion of the path ends; (4) After all recursions are completed, the set PathSet stores all complete reachable paths from the initial node C to the root node R. (5) For each path P in the PathSet, a corresponding routing entry is generated. Each entry contains the following variables: The root node ID (R_dest), the second node ID in path P (R_next), the length of path P (R_dist), the average neighbor TPI difference (R_ΔTPI), the sum of the link quality of all nodes in path P (R_grade), and the sum of the energy of all nodes in path P (R_energy). R_dist = the number of nodes in path P - 1. R_ΔTPI, R_grade, and R_energy are calculated as follows: Traverse each hop P[i]→P[i+1] in the path P, search the topology table for the entry with the TC source node P[i] and the MPS node P[i+1], and accumulate the link quality T_grade and residual energy T_energy of the intermediate node in the entry respectively, and finally use them as the link quality R_grade and residual energy R_energy indicators of the path. For each hop P[i]→P[i+1] in the path, the TPI fluctuation of the path node is defined as: Where k is the number of path hops, D i =|TPI i -TPI i+1 |, D max =max(|TPI i -TPI i+1 |), TPI i is the TPI value of node i in the path.
4. The low-latency routing method for wireless seismographs based on directed topology perception and Bayesian optimization according to claim 3, characterized in that: The steps for step 5 are as follows: The routing table obtained in step 4 stores multiple different paths to the root node. When a node has data to transmit, the score of each path, route_score, is calculated using the multi-index weighted function formula (2). The second node in the path with the highest score is selected as the next hop node. During the transmission process, the ID of the node in the historical path is stored in the data packet. This is repeated until the destination node receives the packet. The formula for calculating the multi-index weighted function for each path score is: In formula (2), The indicator weights θ1, θ2, θ3, and θ4 of the function are adjusted using the Bayesian optimization method combined with the TPI fluctuations of the path nodes.
5. The low-latency routing method for wireless seismographs based on directed topology perception and Bayesian optimization according to claim 4, characterized in that: The specific steps of Bayesian optimization to adjust the weights of each indicator in the path selection evaluation function are as follows: (1) Randomly select a set of weight combinations (θ1, θ2, θ3, θ4) within the specified range, normalize them so that θ1+θ2+θ3+θ4=1, record the number of entries stored in the current node delay table NodeDelayTable array, run the network for a period of time, and collect the average data packet delay during the period of 5 newly successfully sent packets as feedback on the effect of this set of weights; repeat three times, and the sampling ends; (2) Construct a model and predict the target function; use a Gaussian process to model the initialization result as a function: the input is a weight combination, and the output is a prediction delay model with a confidence interval to give a prediction distribution, that is, the predicted mean and uncertainty; (3) Use the expected improvement value of the acquisition function EI to guide the search process, and adjust the acquisition function in combination with R_ΔTPI. EI(X)=E[max(f min -f(X),0]·e R_ΔTPI(X)-1 (3) In formula (3), f min is the current optimal delay, E represents the mathematical expectation, and e is a natural constant. By selecting the combination with the highest EI value from the candidate combinations, the exploration priority of the path with large topological fluctuations is reduced, and the next round of experiments is entered; (4) Feedback loop: continue running the network with the weight combination obtained in step (3), collect the average delay within a certain period of time, add the new samples to the data set, and provide data support for the next optimization.
6. The low-latency routing method for wireless seismographs based on directed topology perception and Bayesian optimization according to claim 5, characterized in that: The steps for step 6 are as follows: When the destination node receives a packet, it calculates the delay and generates an ACK packet, places the packet sequence number and delay in the ACK packet, and returns it to the source node along the original path. After receiving the ACK packet, the source node stores the sequence number and delay value in its own node delay table NodeDelayTable to provide data support for Bayesian optimization. At the same time, the source node stores the next-hop node ID, the number of successful sends, and the corresponding destination node ID in its own historical success array sendSuccessTable. When the node has no required entry in the routing table due to a temporary link break, the node with the highest historical success count is selected as the next-hop node.
Citation Information
Cited By
Self-organizing earthquake early warning method based on emergency information issuing system
CN121354296A