A fast contact map routing calculation method and system based on a dynamic sliding window
Patent Information
- Application Number
- CN202610555564.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-04-24
- Publication Date
- 2026-09-11
AI Technical Summary
[0004]本发明提供一种基于动态滑动窗口的快速接触图路由计算方法及系统,其主要目的在于解决当前在接触图路由计算的过程中计算效率低、传输路径质量低的问题
[0018]本发明为解决背景技术所述问题,本发明首先确定初始滑动窗口及接触图节点集,其中,所述接触图节点集包括:起始节点、终止节点及多个潜在中间节点,本发明通过此步骤明确路由计算的时间范围及参与路由计算的节点,为后续的节点筛选限定了范围,基于所述初始滑动窗口,在接触图节点集中确认出第一节点集,本发明通过时间覆盖度匹配计算及节点筛选,从多个潜在中间节点中筛选出可用节点集,进而得到第一节点集,通过此步骤去除了无效节点,提高了计算效率,从所述第一节点集中确定出边缘节点集,对所述边缘节点集进行事件检测,得到事件检测结果集,基于所述事件检测结果集,获取边缘接触集,根据边缘接触集及第一节点集,获取更新滑动窗口及更新第一节点集,基于更新滑动窗口及更新第一节点集,获取第二节点集,从第二节点集中确认出节点终止点,若所述节点终止点不为接触图节点集中的终止节点,则将更新滑动窗口及第二节点集分别作为初始滑动窗口及第一节点集,并返回从所述第一节点集中确定出边缘节点集的步骤,直至节点终止点为终止节点,汇总更新第一节点集及第二节点集,得到更新总节点集,基于所述更新总节点集进行路由搜索,得到最优路由路径,完成快速接触图路由计算,本发明通过构建更新接触图并进行路径搜索,得到多个候选路由路径,通过综合考虑路径总跳数、路径累计时延与调度紧密度等因素,从所有候选路由路径中选出综合代价最低的最优路由路径,从而在保证传输效率提升的同时提升所构建的传输路径的稳定性和质量。因此,本发明可解决当前在接触图路由计算的过程中计算效率低、传输路径质量低的问题。
Smart Images

Figure CN122741418A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of routing calculation technology, and in particular to a fast contact graph routing calculation method and system based on a dynamic sliding window. Background Technology
[0002] With the rapid development of data communication fields such as vehicle-to-everything (V2X) and the Internet of Things (IoT), the demand for data transmission technology is increasing. How to achieve efficient and reliable routing has become a major issue restricting the development of related industries.
[0003] Traditional contact graph routing calculation methods often employ fixed time windows or topology search methods for path planning. While these methods can perform route calculations, they struggle to adapt to dynamic changes in network topology. When dealing with complex node networks, the constructed transmission paths suffer from low transmission efficiency and instability. Therefore, current contact graph routing calculation methods suffer from low computational efficiency and low transmission path quality. Summary of the Invention
[0004] This invention provides a fast contact diagram routing calculation method and system based on a dynamic sliding window, the main purpose of which is to solve the problems of low calculation efficiency and low transmission path quality in the current contact diagram routing calculation process.
[0005] To achieve the above objectives, this invention provides a fast contact graph routing calculation method based on a dynamic sliding window, comprising: Determine the initial sliding window and the contact graph node set, wherein the contact graph node set includes: a start node, an end node, and multiple potential intermediate nodes; Based on the initial sliding window, the first node set is identified in the contact graph node set; An edge node set is determined from the first node set, and event detection is performed on the edge node set to obtain an event detection result set; Based on the event detection result set, obtain the edge contact set; Based on the edge contact set and the first node set, obtain the updated sliding window and the updated first node set; Based on updating the sliding window and updating the first node set, obtain the second node set; If the node termination point is not a termination node in the contact graph node set, the updated sliding window and the second node set are used as the initial sliding window and the first node set, respectively. The step of determining the edge node set from the first node set is returned until the node termination point is a termination node. The updated first node set and the second node set are then summarized to obtain the updated total node set. Based on the updated total node set, a route search is performed to obtain the optimal route path, thus completing the fast contact graph route calculation.
[0006] Optionally, identifying the first node set in the contact graph node set based on the initial sliding window includes: Determine the time interval of the initial sliding window; For each potential intermediate node in the contact graph node set, the following operation is performed: Obtain historical contact time information of potential intermediate nodes; Based on the historical contact time information, the active time interval of potential intermediate nodes is determined; Based on the time interval and the active time interval, time coverage matching calculation is performed on potential intermediate nodes to obtain the effective coverage ratio; If the effective coverage ratio is greater than or equal to the preset coverage ratio threshold, the potential intermediate node is confirmed as a candidate available intermediate node. By summarizing the candidate available intermediate nodes, multiple candidate available intermediate nodes are obtained; The plurality of candidate available intermediate nodes are filtered to obtain a set of available nodes, wherein the set of available nodes contains one or more available nodes; Construct the first node set based on the available node set and the starting node in the contact graph node set.
[0007] Optionally, the step of filtering the plurality of candidate available intermediate nodes to obtain a set of available nodes includes: For each of the plurality of candidate available intermediate nodes, the following operation is performed: Obtain the spatiotemporal contact information of candidate available intermediate nodes; Based on the spatiotemporal contact information, the structural hub degree and time margin of the candidate available intermediate nodes are calculated; Based on the structural pivotality and time margin, the overall fit of the candidate usable intermediate nodes is determined; Based on the comprehensive adaptability, the adaptability of the candidate available intermediate nodes is determined to obtain the node selection mark, wherein the node selection mark is selected or not selected; By summarizing the node selection tags, a node selection tag set is obtained; Based on the node selection tag set, a set of available nodes is extracted from multiple candidate available intermediate nodes.
[0008] Optionally, obtaining the spatiotemporal contact information of candidate available intermediate nodes includes: Based on the time interval and the contact graph node set, obtain the neighbor node set of the candidate available intermediate node, wherein the neighbor node set contains one or more neighbor nodes; For each neighbor node in the set of neighbor nodes, perform the following operation: Obtain a set of predicted contact events between neighboring nodes and candidate available intermediate nodes, wherein the set of predicted contact events includes one or more predicted contact events; For each predicted contact event in the predicted contact event set, the following operation is performed: Get the event window for predicted contact events; Based on the event window, obtain the event duration; The total contact duration is obtained by summing the durations of the events. Determine the number of contact events in the predicted contact event set; Determine the node type of the neighboring nodes; Based on the cumulative contact duration, number of contact events, and node type, construct the contact information of neighboring nodes; By summarizing the contact information of the neighboring nodes, spatiotemporal contact information is obtained.
[0009] Optionally, determining the edge node set from the first node set includes: For each available node in the first node set, perform the following operation: Determine the available spatiotemporal contact information of available nodes; Based on the available spatiotemporal contact information, the internal connectivity of available nodes is obtained; Obtain the set of available predicted contact events for available nodes, and determine the set of available event windows based on the set of available predicted contact events, wherein the set of available event windows contains one or more available event windows; For each available event window in the set of available event windows, perform the following operation: Determine the start and end times of the available event windows; Based on the start time and end time, edge overlap detection is performed on the available event window to obtain the edge overlap ratio; Summarize the edge overlap percentages to obtain the edge overlap percentage set; Calculate the window overlap ratio based on the edge overlap ratio set; If the window overlap ratio is greater than or equal to a preset overlap ratio threshold, and the internal connectivity is less than or equal to a preset connectivity edge value, then the available node is identified as an edge node. The edge nodes are summarized to obtain the edge node set.
[0010] Optionally, the step of performing event detection on the edge node set to obtain an event detection result set includes: For each edge node in the set of edge nodes, perform the following operation: Boundary contact events are extracted from the edge nodes to obtain a set of boundary contact events; The boundary contact event set is subjected to contact verification to obtain a contact verification result set, wherein the contact verification result set includes one or more contact verification results, and the contact verification result is a valid contact or an invalid contact; If there is a valid contact verification result in the contact verification result set, then the preset edge contact will be confirmed as the event detection result. Otherwise, the preset edgeless contact will be accepted as the event detection result; Summarize the event detection results to obtain the event detection result set.
[0011] Optionally, the step of performing contact verification on the boundary contact event set to obtain a contact verification result set includes: For each boundary contact event in the set of boundary contact events, the following operation is performed: Based on the boundary contact event, the target boundary contact node and contact time window are determined; Based on the target boundary contact nodes, obtain target node information; Based on the target node information and the contact time window, a pre-built link quality prediction model is used to evaluate the link communication quality and obtain link quality parameters, which include: available bandwidth and signal-to-noise ratio. Based on the contact time window, a continuity risk assessment is performed on the contact nodes at the target boundary to obtain a continuity risk value; The continuity risk value, available bandwidth, and signal-to-noise ratio in the link quality parameters are all normalized to obtain normalized continuity risk value, normalized available bandwidth, and normalized signal-to-noise ratio. Contact quality is calculated based on the normalized continuity risk value, normalized available bandwidth, and normalized signal-to-noise ratio, using the following formula: ;
[0012] in, Indicates contact quality, Indicates the normalized available bandwidth. This represents the normalized signal-to-noise ratio. Represents the normalized continuous risk value. This represents the preset signal-to-noise ratio penalty strength coefficient. This represents the preset risk value coefficient. Represents the natural constant; If the contact quality is greater than or equal to the preset contact quality benchmark value, then effective contact is taken as the contact verification result; If the contact quality is less than the contact quality reference value, then invalid contact is taken as the contact verification result; The contact verification results are summarized to obtain a contact verification result set.
[0013] Optionally, the step of performing route search based on the updated total node set to obtain the optimal route path includes: Based on the updated total node set, construct an updated contact graph; Based on the updated contact graph, a path search is performed using a preset path algorithm to obtain a candidate route path set, wherein the candidate route path set contains multiple candidate route paths. For each candidate route in the candidate route path set, the following operation is performed: Based on the candidate routing paths, a path node contact sequence is determined, wherein the path node contact sequence includes multiple path node contacts; Path evaluation is performed on the path node contact sequence to obtain path stability parameters; Calculate the comprehensive path cost based on the path stability parameters; By summing up the comprehensive path costs, a comprehensive path cost set is obtained; Based on the comprehensive path cost set, the optimal path is selected to obtain the optimal routing path.
[0014] Optionally, the step of performing path evaluation on the path node contact sequence to obtain path stability parameters includes: The total number of hops in the path is obtained by counting the number of contact sequences of the path nodes. Temporal features are extracted from the path node contact sequence to obtain the node contact time series; Obtain the cumulative path delay of the path node contact sequence; Based on the cumulative path delay and node contact time series, the path scheduling density is calculated. Path stability parameters are constructed based on the total number of hops, cumulative path latency, and path scheduling density.
[0015] To achieve the above objectives, the present invention also provides a fast contact graph routing calculation system based on a dynamic sliding window, comprising: An initial parameter configuration module is used to determine the initial sliding window and the contact graph node set, wherein the contact graph node set includes: a start node, an end node, and multiple potential intermediate nodes; The node filtering module is used to identify a first node set from the contact graph node set based on the initial sliding window, determine an edge node set from the first node set, perform event detection on the edge node set, and obtain an event detection result set. The window update and node expansion module is used to obtain an edge contact set based on the event detection result set, obtain an updated sliding window and an updated first node set based on the edge contact set and the first node set, and obtain a second node set based on the updated sliding window and the updated first node set. The routing calculation module is used to identify the node termination point from the second node set. If the node termination point is not a termination node in the contact graph node set, the updated sliding window and the second node set are used as the initial sliding window and the first node set, respectively. The module then returns to the step of determining the edge node set from the first node set until the node termination point is a termination node. The module then summarizes and updates the first node set and the second node set to obtain the updated total node set. Based on the updated total node set, a route search is performed to obtain the optimal route path, thus completing the fast contact graph routing calculation.
[0016] To address the above problems, the present invention also provides an electronic device, the electronic device comprising: A memory that stores at least one instruction; and a processor that executes the instructions stored in the memory to implement the fast contact graph routing calculation method based on a dynamic sliding window described above.
[0017] To address the aforementioned problems, the present invention also provides a computer-readable storage medium storing at least one instruction, which is executed by a processor in an electronic device to implement the aforementioned fast contact graph routing calculation method based on a dynamic sliding window.
[0018] To address the problems described in the background art, this invention first determines an initial sliding window and a contact graph node set. The contact graph node set includes a start node, an end node, and multiple potential intermediate nodes. This step clarifies the time range for route calculation and the nodes participating in the calculation, thus limiting the scope for subsequent node selection. Based on the initial sliding window, a first node set is identified from the contact graph node set. Through time coverage matching calculation and node selection, a usable node set is selected from the multiple potential intermediate nodes, thus obtaining the first node set. This step removes invalid nodes, improving computational efficiency. An edge node set is determined from the first node set. Event detection is performed on the edge node set to obtain an event detection result set. Based on the event detection result set, an edge contact set is obtained. Based on the edge contact set and the first node set, an updated sliding window and an updated first node set are obtained. A new sliding window is created and the first node set is updated. A second node set is obtained, and the node termination point is identified from the second node set. If the node termination point is not a termination node in the contact graph node set, the updated sliding window and the second node set are used as the initial sliding window and the first node set, respectively. The process returns to the step of identifying the edge node set from the first node set until the node termination point is a termination node. The updated first node set and the second node set are then summarized to obtain the updated total node set. Based on the updated total node set, a route search is performed to obtain the optimal route path, completing the fast contact graph route calculation. This invention constructs an updated contact graph and performs a path search to obtain multiple candidate route paths. By comprehensively considering factors such as the total number of hops, cumulative path delay, and scheduling density, the optimal route path with the lowest overall cost is selected from all candidate route paths. This improves the stability and quality of the constructed transmission path while ensuring improved transmission efficiency. Therefore, this invention can solve the problems of low computational efficiency and low transmission path quality in the current contact graph route calculation process. Attached Figure Description
[0019] Figure 1 This is a flowchart illustrating a fast contact graph routing calculation method based on a dynamic sliding window, according to an embodiment of the present invention. Figure 2 A functional block diagram of a fast contact graph routing calculation system based on a dynamic sliding window provided in an embodiment of the present invention; Figure 3 This is a schematic diagram of the structure of an electronic device that implements the fast contact graph routing calculation method based on a dynamic sliding window, according to an embodiment of the present invention.
[0020] Explanation of reference numerals in the attached figures: 10. Electronic device; 11. Processor; 12. Memory; 13. Bus.
[0021] The realization of the objective, functional features and advantages of the present invention will be further explained in conjunction with the embodiments and with reference to the accompanying drawings. Detailed Implementation
[0022] It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.
[0023] This application provides a fast contact map routing calculation method based on a dynamic sliding window. The execution entity of the fast contact map routing calculation method based on a dynamic sliding window includes, but is not limited to, at least one of the following electronic devices that can be configured to execute the method provided in this application: a server, a terminal, etc. In other words, the fast contact map routing calculation method based on a dynamic sliding window can be executed by software or hardware installed on a terminal device or a server device, and the software can be a blockchain platform. The server includes, but is not limited to, a single server, a server cluster, a cloud server, or a cloud server cluster.
[0024] Reference Figure 1 The diagram shown is a flowchart illustrating a fast contact map routing calculation method based on a dynamic sliding window, according to an embodiment of the present invention. In this embodiment, the fast contact map routing calculation method based on a dynamic sliding window includes: S1. Determine the initial sliding window and the contact graph node set, wherein the contact graph node set includes: a start node, an end node, and multiple potential intermediate nodes.
[0025] It should be explained that the initial sliding window refers to a pre-set time period of fixed duration, such as 60 seconds. The contact graph node set refers to the set of all nodes that may participate in the routing calculation process, specifically including: the starting node, the ending node, and multiple potential intermediate nodes. The starting node refers to the starting point of the routing calculation, i.e., the network device that sends data. The ending node refers to the receiving node of the routing calculation, i.e., the network device that last receives data. The potential intermediate nodes refer to network devices with data relay capabilities.
[0026] S2. Based on the initial sliding window, the first node set is identified in the contact graph node set.
[0027] In detail, the process of identifying the first node set in the contact graph node set based on the initial sliding window includes: Determine the time interval of the initial sliding window; For each potential intermediate node in the contact graph node set, the following operation is performed: Obtain historical contact time information of potential intermediate nodes; Based on the historical contact time information, the active time interval of potential intermediate nodes is determined; Based on the time interval and the active time interval, time coverage matching calculation is performed on potential intermediate nodes to obtain the effective coverage ratio; If the effective coverage ratio is greater than or equal to the preset coverage ratio threshold, the potential intermediate node is confirmed as a candidate available intermediate node. By summarizing the candidate available intermediate nodes, multiple candidate available intermediate nodes are obtained; The plurality of candidate available intermediate nodes are filtered to obtain a set of available nodes, wherein the set of available nodes contains one or more available nodes; Construct the first node set based on the available node set and the starting node in the contact graph node set.
[0028] It should be explained that the time interval refers to a time period defined by the initial sliding window, represented as {start time, end time}, where the start time is the time when routing calculation begins, and the end time is the time after the fixed duration from the start time. The historical contact time information refers to the time records of communication between potential intermediate nodes and other nodes in past operation records (such as the start time, end time, and duration of each communication). The active time interval refers to the time range within which potential intermediate nodes possess communication capabilities, obtained through statistical analysis (such as cluster analysis) of historical contact time information. The specific analysis process is as follows: collect historical contact time information of a potential intermediate node for 7 consecutive days, extract the start time and end time of each communication, calculate the midpoint (i.e., the median value between the start time and end time), summarize the midpoints to form a dataset, then set two parameters: neighborhood radius ε (e.g., 30 minutes) and minimum number of points MinPts (e.g., 5), input the dataset into the DBSCAN algorithm, and the DBSCAN algorithm automatically divides the midpoints where the time difference is less than or equal to ε and the number of points in the neighborhood is greater than or equal to MinPts into... For each effective cluster, the earliest start time and latest end time of all communications within it are counted. These times are used as the time interval boundaries of the effective cluster. The time interval boundaries of all effective clusters are the active time intervals of potential intermediate nodes. For example, after clustering analysis of the historical contact time information of a potential intermediate node, it is found that the effective clusters of the potential intermediate node are divided into three time periods: 8:00–10:00, 13:30–15:00, and 20:00–21:30. Then the active time intervals of the potential intermediate node are {8:00, 10:00}, {13:30–15:00}, and {20:00–21:30}. The time coverage matching calculation for potential intermediate nodes based on the time intervals and active time intervals, to obtain the effective coverage ratio, refers to calculating the overlap between the time intervals and active time intervals. The overlap is the effective coverage ratio. The calculation method for the effective coverage ratio is as follows: ,in, This indicates the length of the overlap between the time interval and the active time interval. The total length of the time interval is represented. The coverage ratio threshold refers to a pre-set critical value for the effective coverage ratio. When the effective coverage ratio is greater than or equal to the coverage ratio threshold, it indicates that the potential intermediate nodes are sufficiently active within the initial sliding window. The candidate available intermediate nodes refer to potential intermediate nodes with an effective coverage ratio greater than or equal to the coverage ratio threshold. If multiple potential intermediate nodes in the contact graph node set do not have candidate available nodes, it indicates that the nodes in the contact graph node set do not meet the requirements of this routing calculation, and the contact graph node set needs to be re-acquired. Constructing the first node set based on the available node set and the starting node in the contact graph node set means: summarizing the available node set and the starting node into a set, which is the first node set. The nodes in the first node set are arranged according to their spatial positions in the contact graph. The contact graph refers to a topology graph constructed with all nodes that may participate in the routing calculation as vertices and the communication relationships between the nodes within the time interval as edges. The method of constructing the contact graph with all nodes that may participate in the routing calculation as vertices and the communication relationships between the nodes within the time interval as edges is existing technology and will not be elaborated here. Optionally, the contact graph can be constructed using the time-extended graph method.
[0029] Specifically, the step of filtering the multiple candidate available intermediate nodes to obtain a set of available nodes includes: For each of the plurality of candidate available intermediate nodes, the following operation is performed: Obtain the spatiotemporal contact information of candidate available intermediate nodes; Based on the spatiotemporal contact information, the structural hub degree and time margin of the candidate available intermediate nodes are calculated; Based on the structural pivotality and time margin, the overall fit of the candidate usable intermediate nodes is determined; Based on the comprehensive adaptability, the adaptability of the candidate available intermediate nodes is determined to obtain the node selection mark, wherein the node selection mark is selected or not selected; By summarizing the node selection tags, a node selection tag set is obtained; Based on the node selection tag set, a set of available nodes is extracted from multiple candidate available intermediate nodes.
[0030] It should be noted that the structural pivotality refers to a quantitative indicator representing the connectivity of candidate available intermediate nodes. The higher the structural pivotality, the more frequently the candidate available intermediate node contacts other nodes. The structural pivotality is calculated as follows: ,in, Indicates structural pivotality. This represents the total number of neighboring nodes in the set of neighboring nodes of the candidate available intermediate node (the neighboring nodes will be explained in subsequent steps). This indicates the candidate available intermediate node and the first in the set of neighboring nodes. The cumulative contact time of each neighbor node (the cumulative contact time will be explained in subsequent steps). This indicates the candidate available intermediate node and the first in the set of neighboring nodes. The number of contact events for each neighboring node. This represents the maximum cumulative contact duration in the spatiotemporal contact information. This represents the maximum number of contact events in the spatiotemporal contact information. Indicates the first node in the set of neighboring nodes. The node type coefficient of each neighboring node, when the node type is a start node or an end node. It can be set to 2 when the node type is a candidate available intermediate node. This can be set to 1. The node type will be explained in subsequent steps. The time margin refers to a quantitative indicator of the flexibility of a candidate available intermediate node in terms of time. A larger time margin indicates that the candidate available intermediate node has more leeway in the time dimension, and more time for data transfer. The time margin is calculated as follows: ,in, Indicates time margin, This indicates the candidate available intermediate node and the first in the set of neighboring nodes. The cumulative contact time of each neighboring node, This indicates the length of the time interval. The comprehensive suitability refers to a quantitative indicator that comprehensively evaluates the usability of candidate nodes; its calculation method is as follows: ,in, Indicates overall compatibility. The weighting coefficients representing the structural hubness. The weighting coefficients represent the time margin. A higher overall fit indicates higher availability of candidate nodes. The weighting coefficients for structural hubiness and time margin can be adjusted based on the number of nodes. For example, in a sparse contact graph node set, the weighting coefficient for time margin can be increased, while the weighting coefficient for structural hubiness can be decreased.
[0031] It is understood that the adaptation determination refers to the process of comparing the overall adaptation with a preset adaptation threshold to obtain a node selection mark. The adaptation threshold is a pre-set critical value for the overall adaptation; when the overall adaptation is greater than the threshold, it indicates that the candidate available intermediate node is available. The node selection mark refers to the identifier of the candidate available intermediate node obtained after the adaptation determination, which is divided into selected and unselected. Selected means the identifier assigned when the overall adaptation of the candidate available intermediate node is greater than the adaptation threshold, indicating that the candidate available intermediate node is available. Unselected means the identifier assigned when the overall adaptation of the candidate available intermediate node is less than or equal to the adaptation threshold, indicating that the candidate available intermediate node is unavailable. The node selection mark set refers to the set composed of all node selection marks. The available node refers to a candidate available intermediate node whose node selection mark is selected among multiple candidate available intermediate nodes. The available node set refers to the set composed of all available nodes. If none of the multiple candidate available intermediate nodes are selected as the selected candidate available intermediate node, it indicates that the nodes in the contact graph node set do not meet the requirements of this route calculation, and the contact graph node set needs to be obtained again.
[0032] Furthermore, obtaining the spatiotemporal contact information of candidate available intermediate nodes includes: Based on the time interval and the contact graph node set, obtain the neighbor node set of the candidate available intermediate node, wherein the neighbor node set contains one or more neighbor nodes; For each neighbor node in the set of neighbor nodes, perform the following operation: Obtain a set of predicted contact events between neighboring nodes and candidate available intermediate nodes, wherein the set of predicted contact events includes one or more predicted contact events; For each predicted contact event in the predicted contact event set, the following operation is performed: Get the event window for predicted contact events; Based on the event window, obtain the event duration; The total contact duration is obtained by summing the durations of the events. Determine the number of contact events in the predicted contact event set; Determine the node type of the neighboring nodes; Based on the cumulative contact duration, number of contact events, and node type, construct the contact information of neighboring nodes; By summarizing the contact information of the neighboring nodes, spatiotemporal contact information is obtained.
[0033] It should be understood that the term "neighbor node" refers to a node in the contact graph set that has historically communicated with a candidate available intermediate node, and that such communication occurs within a specific time interval. The term "neighbor node set" refers to the set of all neighbor nodes. The term "predicted contact event" refers to a communication event (i.e., communication between a neighbor node and a candidate available intermediate node) that may occur within a given time interval, predicted using time series analysis methods (such as an autoregressive model) based on the historical communication patterns (e.g., communication frequency, duration, and interval) between neighbor nodes and candidate available intermediate nodes. For example, given a time interval of {9:00-9:30}, the historical communication records between neighbor node M1 and candidate available intermediate node M2 within this time interval over the past 7 days are as follows: communication occurs once daily from 9:00-9:10 and 9:14-9:25, with a stable 24-hour interval. Based on this historical communication pattern, an autoregressive model is used to analyze the communication events within the time interval of the next 24 hours. The analysis process is as follows: Based on the historical communication pattern, an autoregressive model is used for prediction. The start time and duration of each communication are extracted from the historical communication data as time feature data. The optimal order of the autoregressive model (e.g., 3) is determined using the Akaike Information Criterion. The time feature data is then input into the autoregressive model for training, fitting the temporal variation patterns of the start time and duration of communication, resulting in a trained autoregressive model. This trained model predicts the start time and duration of communication events between neighbor node M1 and candidate available intermediate node M2 within the next 24-hour time interval {9:00-9:30} (in this case, M1 and M2 will still communicate during the time periods of 9:00-9:10 and 9:14-9:25). Using the start time and duration of historical communication as input parameters, it can be predicted that neighbor node M1 and candidate available intermediate node M2 will still communicate during the time periods of 9:00-9:10 and 9:14-9:25 within the time interval. The predicted contact event set refers to the set of all predicted contact events. The event window refers to the time range corresponding to a predicted contact event, represented as {event start time, event end time}. The event duration refers to the duration the event window is within the time range, calculated as: event end time. Event start time or end time of time interval The event start time can be specifically described as follows: When the predicted end time of the contact event falls within the time interval, the formula for calculating the event duration is: Event End Time When the predicted end time of a contact event does not fall within a time interval, the formula for calculating the event duration is: (Event start time / End time of time interval) The event start time. The method for obtaining the event window of the predicted contact event is existing technology and will not be elaborated here. The cumulative contact duration refers to the sum of the event durations of all predicted contact events in the predicted contact event set. The number of contact events refers to the total number of predicted contact events in the predicted contact event set. The node type refers to the classification based on the functional role of the node, specifically: starting node, ending node, and candidate available intermediate node. Constructing neighbor node contact information based on the cumulative contact duration, number of contact events, and node type means: summarizing the cumulative contact duration, number of contact events, and node type into a set, which is the neighbor node contact information. The spatiotemporal contact information refers to the set composed of all neighbor node contact information, which includes the neighbor node contact information (i.e., cumulative contact duration, number of contact events, and node type) of all neighbor nodes of the candidate available intermediate node.
[0034] S3. Determine the edge node set from the first node set, perform event detection on the edge node set, and obtain the event detection result set.
[0035] Specifically, determining the edge node set from the first node set includes: For each available node in the first node set, perform the following operation: Determine the available spatiotemporal contact information of available nodes; Based on the available spatiotemporal contact information, the internal connectivity of available nodes is obtained; Obtain the set of available predicted contact events for available nodes, and determine the set of available event windows based on the set of available predicted contact events, wherein the set of available event windows contains one or more available event windows; For each available event window in the set of available event windows, perform the following operation: Determine the start and end times of the available event windows; Based on the start time and end time, edge overlap detection is performed on the available event window to obtain the edge overlap ratio; Summarize the edge overlap percentages to obtain the edge overlap percentage set; Calculate the window overlap ratio based on the edge overlap ratio set; If the window overlap ratio is greater than or equal to a preset overlap ratio threshold, and the internal connectivity is less than or equal to a preset connectivity edge value, then the available node is identified as an edge node. The edge nodes are summarized to obtain the edge node set.
[0036] It should be noted that the available spatiotemporal contact information refers to the spatiotemporal contact information of available nodes. The internal connectivity degree is a quantitative indicator representing the tightness of the connection between available nodes and other nodes; the higher the internal connectivity degree, the closer the available node is to the center of the topology graph. The available predicted contact event set refers to the set composed of the predicted contact events of available nodes. The available event window refers to the event window of the available predicted contact events. The available event window set refers to the set composed of all available event windows. The start time refers to the starting time point of the available event window. The end time refers to the ending time point of the available event window. The step of performing edge overlap detection on the available event window based on the start time and end time to obtain the edge overlap ratio refers to: calculating the overlap degree between the available event window and a preset edge detection interval, comparing this overlap degree with the total length of the edge detection interval, and obtaining the result after comparison as the edge overlap ratio. The specific calculation method is as follows: ,in, This indicates the overlapping portion of the available event window and the edge detection range. This represents the total length of the edge detection interval. The edge detection interval refers to a pre-defined time range based on the end time of the time interval, specifically represented as {start time of edge detection interval, end time}. Optionally, the time interval between the start time and end time of the edge detection interval can be set to 2 seconds.
[0037] It is understood that the edge overlap ratio set refers to the set composed of all edge overlap ratios. The window overlap ratio refers to the overall overlap between all predicted contact events of an available node and the edge detection interval. Optionally, the arithmetic mean of all edge overlap ratios in the edge overlap ratio set is used as the window overlap ratio. The overlap ratio threshold refers to a pre-set critical value for the edge overlap ratio. If the edge overlap ratio is greater than or equal to the overlap ratio threshold, it indicates that the predicted contact events of the available node are close to the boundary of the initial time window as a whole. The connectivity edge value refers to a pre-set determination value for internal connectivity. When the internal connectivity is less than or equal to the connectivity edge value, the available node is determined to be at an edge position in the topology graph. The edge node refers to an available node whose window overlap ratio is greater than or equal to the overlap ratio threshold and whose internal connectivity is less than or equal to the connectivity edge value. The edge node set refers to the set composed of all edge nodes.
[0038] Specifically, the step of performing event detection on the edge node set to obtain an event detection result set includes: For each edge node in the set of edge nodes, perform the following operation: Boundary contact events are extracted from the edge nodes to obtain a set of boundary contact events; The boundary contact event set is subjected to contact verification to obtain a contact verification result set, wherein the contact verification result set includes one or more contact verification results, and the contact verification result is a valid contact or an invalid contact; If there is a valid contact verification result in the contact verification result set, then the preset edge contact will be confirmed as the event detection result. Otherwise, the preset edgeless contact will be accepted as the event detection result; Summarize the event detection results to obtain the event detection result set.
[0039] It should be understood that the boundary contact event extraction refers to the process of selecting predicted contact events whose end times are not within the time interval from all predicted contact events of the edge node. The boundary contact event set refers to the set of all predicted contact events whose end times are not within the time interval obtained after boundary contact event extraction. The event detection result refers to the judgment conclusion on whether there is valid contact in the contact verification result set after contact verification of the boundary contact event set of the edge node, which is divided into edge contact and no edge contact. The contact verification result set will be explained in subsequent steps. Edge contact means that the conclusion is drawn when there is a contact verification result that is a valid contact, indicating that the edge node can communicate stably with nodes outside the first node set. No edge contact means that the conclusion is drawn when all contact verification results in the contact verification result set are invalid contacts, indicating that the edge node cannot communicate stably with nodes outside the first node set. The event detection result set refers to the set composed of all event detection results.
[0040] Furthermore, the contact verification of the boundary contact event set to obtain a contact verification result set includes: For each boundary contact event in the set of boundary contact events, the following operation is performed: Based on the boundary contact event, the target boundary contact node and contact time window are determined; Based on the target boundary contact nodes, obtain target node information; Based on the target node information and the contact time window, a pre-built link quality prediction model is used to evaluate the link communication quality and obtain link quality parameters, which include: available bandwidth and signal-to-noise ratio. Based on the contact time window, a continuity risk assessment is performed on the contact nodes at the target boundary to obtain a continuity risk value; The continuity risk value, available bandwidth, and signal-to-noise ratio in the link quality parameters are all normalized to obtain normalized continuity risk value, normalized available bandwidth, and normalized signal-to-noise ratio. Contact quality is calculated based on the normalized continuity risk value, normalized available bandwidth, and normalized signal-to-noise ratio, using the following formula: ;
[0041] in, Indicates contact quality, Indicates the normalized available bandwidth. This represents the normalized signal-to-noise ratio. Represents the normalized continuous risk value. This represents the preset signal-to-noise ratio penalty strength coefficient. This represents the preset risk value coefficient. Represents the natural constant; If the contact quality is greater than or equal to the preset contact quality benchmark value, then effective contact is taken as the contact verification result; If the contact quality is less than the contact quality reference value, then invalid contact is taken as the contact verification result; The contact verification results are summarized to obtain a contact verification result set.
[0042] It should be noted that the boundary contact event refers to a predicted contact event within the set of boundary contact events. The target boundary contact node refers to another node, besides the edge node, that participates in the edge contact event (i.e., the node where the edge node communicates during the edge contact event, and which does not belong to the first node set). The contact time window refers to the time window of the boundary contact event. The target node information refers to the attribute data related to the target boundary contact node, including: basic device attributes (such as transmit power, communication module model, maximum transmission bandwidth, antenna gain, etc.), historical data (such as historical communication success rate, historical communication time interval, etc.), and real-time status data (such as signal reception strength, supported communication protocol types, etc.). The link quality prediction model refers to a mathematical model trained using machine learning methods (such as gradient boosting trees), which can predict link quality parameters by inputting the target node information and the contact time window. The process of evaluating link communication quality using a pre-built link quality prediction model based on target node information and contact time window to obtain link quality parameters involves inputting target node information and contact time window into the link quality prediction model. The link quality prediction model then outputs the available bandwidth and signal-to-noise ratio of the boundary contact event based on its trained functional relationship. The set obtained by summarizing the available bandwidth and signal-to-noise ratio is the link quality parameter.
[0043] It should be explained that the continuous risk assessment of the contact nodes at the target boundary based on the contact time window, to obtain the continuous risk value, means: calculating the probability of communication interruption within the contact time window based on the contact time window and the target node information. The calculated probability of communication interruption within the contact time window is the continuous risk value, and its calculation method is as follows: ,in, Indicates continuous risk value, Indicates the historical communication success rate. Indicates the contact time window (the length of the window). This represents the time interval of historical communication. The normalization process refers to the process of using the Z-score method to transform continuous risk values, available bandwidth, and normalized signal-to-noise ratio (SNR) exponents with different dimensions and numerical ranges into a unified numerical range. The normalized continuous risk value refers to the continuous risk value after normalization. The normalized available bandwidth refers to the available bandwidth after normalization. The normalized SNR refers to the SNR after normalization. The contact quality refers to a quantitative indicator representing the reliability of a boundary contact event; the higher the contact quality, the more reliable the boundary contact event. The SNR penalty strength coefficient refers to a pre-set coefficient representing the degree of influence of the normalized SNR on the contact quality. The risk value coefficient refers to a pre-set coefficient representing the degree of influence of the normalized continuous risk value on the contact quality. The contact quality benchmark value refers to a pre-set lower limit value for contact quality; only when the contact quality is greater than or equal to the contact quality benchmark value can the boundary contact event be considered valid. The contact verification result refers to the conclusion drawn after comparing the contact quality with a contact quality benchmark value, and is divided into two types: valid contact and invalid contact. Valid contact refers to the conclusion drawn when the contact quality is greater than or equal to the contact quality benchmark value, indicating that the boundary contact event is sufficiently reliable and valid. Invalid contact refers to the conclusion drawn when the contact quality is less than the contact quality benchmark value, indicating that the boundary contact event is unreliable and invalid. The contact verification result set refers to the collection of all contact verification results.
[0044] S4. Based on the event detection result set, obtain the edge contact set.
[0045] It should be understood that the edge contact set refers to the set of all edge nodes that are determined to have edge contact and all target boundary contact nodes that have effective contact with the edge nodes that have edge contact.
[0046] S5. Based on the edge contact set and the first node set, obtain the updated sliding window and the updated first node set, and based on the updated sliding window and the updated first node set, obtain the second node set.
[0047] It should be explained that the updated sliding window refers to a new sliding window adjusted based on the time interval of the initial sliding window, combined with the contact time windows of all boundary contact events determined to be valid contacts. Its start time remains unchanged, while its end time is adjusted to the maximum termination time of all contact time windows. The updated first node set refers to a set formed by adding all target boundary contact nodes from the edge contact set to the first node set. If there are no target boundary contact nodes in the edge contact set (i.e., all edge nodes are determined to have no edge contact), then the first node set is confirmed as the updated first node set. Obtaining the second node set based on the updated sliding window and the updated first node set means: according to the updated first node set and the updated sliding window, in the contact graph node set, starting from the termination point of the updated first node set, filtering nodes backwards, and obtaining the set of nodes is the second node set. The method for node filtering (i.e., obtaining the second node set) is the same as the method for obtaining the first node set, and will not be repeated here. The termination point refers to the termination node in the updated first node set.
[0048] S6. Identify the node termination point from the second node set. If the node termination point is not a termination node in the contact graph node set, update the sliding window and the second node set as the initial sliding window and the first node set, respectively, and return to the step of determining the edge node set from the first node set until the node termination point is a termination node. Summarize and update the first node set and the second node set to obtain the updated total node set.
[0049] It is understood that the node termination point refers to the termination node of the second node set. The updated total node set refers to the set formed by summarizing all updates to the first and second node sets. The updated total node set includes the starting node, the ending node, and all potential intermediate nodes selected from the starting node to the ending node of the contact graph node set. It is the basic condition for subsequent route search (i.e., only after the selection of potential intermediate nodes is completed can the optimal route path be obtained after route search). The nodes in the updated total node set are arranged according to their spatial position in the updated contact graph. The updated contact graph refers to the contact graph constructed using the nodes in the updated total node set. The method for constructing the updated contact graph is similar to that used in contact graph construction. Figure 1 To that end, I will not elaborate further here.
[0050] S7. Perform route search based on the updated total node set to obtain the optimal route path and complete the fast contact graph route calculation.
[0051] In detail, the process of performing route search based on the updated total node set to obtain the optimal route path includes: Based on the updated total node set, construct an updated contact graph; Based on the updated contact graph, a path search is performed using a preset path algorithm to obtain a candidate route path set, wherein the candidate route path set contains multiple candidate route paths. For each candidate route in the candidate route path set, the following operation is performed: Based on the candidate routing paths, a path node contact sequence is determined, wherein the path node contact sequence includes multiple path node contacts; Path evaluation is performed on the path node contact sequence to obtain path stability parameters; Calculate the comprehensive path cost based on the path stability parameters; By summing up the comprehensive path costs, a comprehensive path cost set is obtained; Based on the comprehensive path cost set, the optimal path is selected to obtain the optimal routing path.
[0052] It should be noted that the path algorithm refers to an algorithm used to search for feasible paths from the start node to the end node in an updated contact graph. Optionally, Dijkstra's algorithm is used as the path algorithm. The path search refers to the process of using the path algorithm to find all feasible paths from the start node to the end node in the updated contact graph. The candidate route path refers to the feasible path from the start node to the end node obtained after the path search. The candidate route path set refers to the set composed of all candidate route paths. The path node contact refers to the predicted contact event between two adjacent nodes in a candidate route path. For example, if node A and node B are adjacent, then the predicted contact event between A and B is the path node contact. The path node contact sequence refers to the sequence formed by arranging all path node contacts in chronological order. For example, if the structure of a certain updated total node set is {start node, node A, node B, end node}, then the path node contact sequence is {path node contact between the start node and node A, path node contact between node A and node B, path node contact between node B and the end node}. The comprehensive path cost refers to a quantitative indicator used to represent the overall quality of candidate routing paths. The lower the comprehensive path cost, the better the candidate routing path. The calculation process of the comprehensive path cost is as follows: the total number of path hops and the cumulative path delay are normalized and standardized to the same units and dimensions as the path scheduling density, resulting in normalized total path hops and normalized cumulative path delay. The comprehensive path cost is then calculated based on the path scheduling density, normalized total path hops, and normalized cumulative path delay. Specifically: ,in, This represents the total number of hops in the normalized path. This represents the cumulative delay of the normalized path. Indicates the density of path scheduling. , , These represent the weighting coefficients for the total number of hops, the cumulative path delay, and the path scheduling density, respectively. The total number of hops, cumulative path delay, and path scheduling density will be explained in subsequent steps. , , The value can be adjusted according to user needs. For example, if the focus is on the timeliness of data transmission, then increase the value. If the focus is on the stability and continuity of data transmission, then improving... The comprehensive path cost set refers to the set composed of all comprehensive path costs. The process of selecting the optimal route based on the comprehensive path cost set means: selecting the comprehensive path cost with the minimum cost from the comprehensive path cost set and determining its corresponding candidate route; the determined candidate route is the optimal route. If multiple path costs have the same minimum value, the candidate route with the minimum cumulative path delay is selected as the optimal route.
[0053] Specifically, the path evaluation of the path node contact sequence to obtain path stability parameters includes: The total number of hops in the path is obtained by counting the number of contact sequences of the path nodes. Temporal features are extracted from the path node contact sequence to obtain the node contact time series; Obtain the cumulative path delay of the path node contact sequence; Based on the cumulative path delay and node contact time series, the path scheduling density is calculated. Path stability parameters are constructed based on the total number of hops, cumulative path latency, and path scheduling density.
[0054] It should be understood that the statistical analysis of the path node contact sequence to obtain the total path hop count refers to: counting the total number of path node contacts in the path node contact sequence, which is the total path hop count, representing the number of communication attempts required from the starting node to the ending node. The temporal feature extraction refers to obtaining the event windows of each path node contact, i.e., the start and end times of the path node contact. The node contact time series refers to the sequence formed by arranging all the event windows of the path node contacts in chronological order. The cumulative path delay refers to the sum of the time lengths of the event windows of all path node contacts in the path node contact sequence. For example, a path node contact sequence is {contact A, contact B, contact C}, and its event windows are {...} , }、{ , }、{ , }, then the cumulative path delay is The path scheduling density refers to a quantitative indicator reflecting the temporal compactness of contact between path nodes in a candidate route path. A higher path scheduling density indicates more compact contact between path nodes in the candidate route path. The path scheduling density is calculated as follows: ,in, This represents the total duration of the contact sequence of path nodes. For example, if the contact sequence of a path node is {contact A, contact B, contact C}, its event windows are { , }、{ , }、{ , }, then the total duration of the path node contact sequence is The construction of path stability parameters based on total path hops, cumulative path delay, and path scheduling density refers to summarizing the total path hops, cumulative path delay, and path scheduling density into a set, which is the path stability parameter.
[0055] To address the problems described in the background art, this invention first determines an initial sliding window and a contact graph node set. The contact graph node set includes a start node, an end node, and multiple potential intermediate nodes. This step clarifies the time range for route calculation and the nodes participating in the calculation, thus limiting the scope for subsequent node selection. Based on the initial sliding window, a first node set is identified from the contact graph node set. Through time coverage matching calculation and node selection, a usable node set is selected from the multiple potential intermediate nodes, thus obtaining the first node set. This step removes invalid nodes, improving computational efficiency. An edge node set is determined from the first node set. Event detection is performed on the edge node set to obtain an event detection result set. Based on the event detection result set, an edge contact set is obtained. Based on the edge contact set and the first node set, an updated sliding window and an updated first node set are obtained. A new sliding window is created and the first node set is updated. A second node set is obtained, and the node termination point is identified from the second node set. If the node termination point is not a termination node in the contact graph node set, the updated sliding window and the second node set are used as the initial sliding window and the first node set, respectively. The process returns to the step of identifying the edge node set from the first node set until the node termination point is a termination node. The updated first node set and the second node set are then summarized to obtain the updated total node set. Based on the updated total node set, a route search is performed to obtain the optimal route path, completing the fast contact graph route calculation. This invention constructs an updated contact graph and performs a path search to obtain multiple candidate route paths. By comprehensively considering factors such as the total number of hops, cumulative path delay, and scheduling density, the optimal route path with the lowest overall cost is selected from all candidate route paths. This improves the stability and quality of the constructed transmission path while ensuring improved transmission efficiency. Therefore, this invention can solve the problems of low computational efficiency and low transmission path quality in the current contact graph route calculation process.
[0056] like Figure 2 The diagram shown is a functional block diagram of a fast contact graph routing calculation system based on a dynamic sliding window provided in an embodiment of the present invention.
[0057] The fast contact graph routing calculation system 100 based on a dynamic sliding window described in this invention can be installed in an electronic device. Depending on the functions implemented, the fast contact graph routing calculation system 100 based on a dynamic sliding window may include an initial parameter configuration module 101, a node filtering module 102, a window update and node expansion module 103, and a routing calculation module 104. The module described in this invention can also be called a unit, which refers to a series of computer program segments that can be executed by the processor of an electronic device and can perform a fixed function, and which are stored in the memory of the electronic device.
[0058] The initial parameter configuration module 101 is used to determine the initial sliding window and the contact graph node set, wherein the contact graph node set includes: a start node, an end node and multiple potential intermediate nodes; The node filtering module 102 is used to identify a first node set in the contact graph node set based on the initial sliding window, determine an edge node set from the first node set, perform event detection on the edge node set, and obtain an event detection result set. The window update and node expansion module 103 is used to obtain an edge contact set based on the event detection result set, obtain an updated sliding window and an updated first node set based on the edge contact set and the first node set, and obtain a second node set based on the updated sliding window and the updated first node set. The routing calculation module 104 is used to identify the node termination point from the second node set. If the node termination point is not a termination node in the contact graph node set, the updated sliding window and the second node set are used as the initial sliding window and the first node set, respectively. The step of determining the edge node set from the first node set is returned until the node termination point is a termination node. The updated first node set and the second node set are summarized to obtain the updated total node set. Based on the updated total node set, a route search is performed to obtain the optimal route path and complete the fast contact graph routing calculation.
[0059] In detail, the modules in the fast contact graph routing calculation system 100 based on a dynamic sliding window described in this embodiment of the invention employ the same methods as described above. Figure 1 The method used is the same as the fast contact graph routing calculation method based on dynamic sliding windows described in the previous section, and can produce the same technical effect, so it will not be repeated here.
[0060] like Figure 3 The diagram shown is a structural schematic of an electronic device that implements a fast contact graph routing calculation method based on a dynamic sliding window, according to an embodiment of the present invention.
[0061] The electronic device 1 may include a processor 10, a memory 11 and a bus 12, and may also include a computer program stored in the memory 11 and capable of running on the processor 10, such as a fast contact graph routing calculation method program based on a dynamic sliding window.
[0062] The memory 11 includes at least one type of readable storage medium, such as flash memory, portable hard drive, multimedia card, card-type memory (e.g., SD or DX memory), magnetic memory, disk, optical disk, etc. In some embodiments, the memory 11 can be an internal storage unit of the electronic device 1, such as the portable hard drive of the electronic device 1. In other embodiments, the memory 11 can be an external storage device of the electronic device 1, such as a plug-in portable hard drive, smart media card (SMC), secure digital card (SD), flash card, etc., equipped on the electronic device 1. Furthermore, the memory 11 includes both internal storage units and external storage devices of the electronic device 1. The memory 11 can be used not only to store application software and various types of data installed on the electronic device 1, such as the code of a fast contact graph routing calculation method program based on a dynamic sliding window, but also to temporarily store data that has been output or will be output.
[0063] In some embodiments, the processor 10 may be composed of integrated circuits, such as a single packaged integrated circuit or multiple integrated circuits with the same or different functions, including combinations of one or more central processing units (CPUs), microprocessors, digital processing chips, graphics processors, and various control chips. The processor 10 is the control unit of the electronic device, connecting various components of the entire electronic device through various interfaces and lines. It executes programs or modules stored in the memory 11 (e.g., a fast contact graph routing calculation method program based on a dynamic sliding window), and calls data stored in the memory 11 to perform various functions of the electronic device 1 and process data.
[0064] The bus 12 can be a peripheral component interconnect (PCI) bus or an extended industry standard architecture (EISA) bus, etc. The bus 12 can be divided into an address bus, a data bus, a control bus, etc. The bus 12 is configured to realize the connection and communication between the memory 11 and at least one processor 10, etc.
[0065] Figure 3 Only electronic devices with components are shown; it will be understood by those skilled in the art that... Figure 3The structure shown does not constitute a limitation on the electronic device 1, and may include fewer or more components than shown, or combine certain components, or have different component arrangements.
[0066] For example, although not shown, the electronic device 1 may also include a power supply (such as a battery) to power the various components. Preferably, the power supply can be logically connected to the at least one processor 10 through a power management device, thereby enabling functions such as charging management, discharging management, and power consumption management. The power supply may also include one or more DC or AC power supplies, recharging devices, power fault detection circuits, power converters or inverters, power status indicators, and other arbitrary components. The electronic device 1 may also include various sensors, Bluetooth modules, Wi-Fi modules, etc., which will not be described in detail here.
[0067] Furthermore, the electronic device 1 may also include a network interface. Optionally, the network interface may include a wired interface and / or a wireless interface (such as a Wi-Fi interface, a Bluetooth interface, etc.), which is typically used to establish communication connections between the electronic device 1 and other electronic devices.
[0068] Optionally, the electronic device 1 may further include a user interface, which may be a display, an input unit (such as a keyboard), and optionally, a standard wired interface or a wireless interface. Optionally, in some embodiments, the display may be an LED display, a liquid crystal display, a touch-sensitive liquid crystal display, or an OLED (Organic Light-Emitting Diode) touchscreen, etc. The display may also be appropriately referred to as a screen or display unit, used to display information processed in the electronic device 1 and to display a visual user interface.
[0069] The program for a fast contact map routing calculation method based on a dynamic sliding window, stored in the memory 11 of the electronic device 1, is a combination of multiple instructions. When run in the processor 10, it can achieve the following: Determine the initial sliding window and the contact graph node set, wherein the contact graph node set includes: a start node, an end node, and multiple potential intermediate nodes; Based on the initial sliding window, the first node set is identified in the contact graph node set; An edge node set is determined from the first node set, and event detection is performed on the edge node set to obtain an event detection result set; Based on the event detection result set, obtain the edge contact set; Based on the edge contact set and the first node set, obtain the updated sliding window and the updated first node set; Based on updating the sliding window and updating the first node set, obtain the second node set; If the node termination point is not a termination node in the contact graph node set, the updated sliding window and the second node set are used as the initial sliding window and the first node set, respectively. The step of determining the edge node set from the first node set is returned until the node termination point is a termination node. The updated first node set and the second node set are then summarized to obtain the updated total node set. Based on the updated total node set, a route search is performed to obtain the optimal route path, thus completing the fast contact graph route calculation.
[0070] Specifically, the processor 10's implementation method for the above instructions can be found in [reference needed]. Figures 1 to 3 The descriptions of the relevant steps in the corresponding embodiments are not repeated here.
[0071] Furthermore, if the modules / units integrated in the electronic device 1 are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. The computer-readable storage medium can be volatile or non-volatile. For example, the computer-readable medium may include: any entity or device capable of carrying the computer program code, a recording medium, a USB flash drive, a portable hard drive, a magnetic disk, an optical disk, a computer memory, or a read-only memory (ROM).
[0072] The present invention also provides a computer-readable storage medium storing a computer program, which, when executed by a processor of an electronic device, can perform the following: Determine the initial sliding window and the contact graph node set, wherein the contact graph node set includes: a start node, an end node, and multiple potential intermediate nodes; Based on the initial sliding window, the first node set is identified in the contact graph node set; An edge node set is determined from the first node set, and event detection is performed on the edge node set to obtain an event detection result set; Based on the event detection result set, obtain the edge contact set; Based on the edge contact set and the first node set, obtain the updated sliding window and the updated first node set; Based on updating the sliding window and updating the first node set, obtain the second node set; If the node termination point is not a termination node in the contact graph node set, the updated sliding window and the second node set are used as the initial sliding window and the first node set, respectively. The step of determining the edge node set from the first node set is returned until the node termination point is a termination node. The updated first node set and the second node set are then summarized to obtain the updated total node set. Based on the updated total node set, a route search is performed to obtain the optimal route path, thus completing the fast contact graph route calculation.
[0073] In the embodiments provided by this invention, it should be understood that the disclosed devices, systems, and methods can be implemented in other ways. For example, the system embodiments described above are merely illustrative, and actual implementations may have other classification methods.
[0074] The modules described as separate components may or may not be physically separate. The components shown as modules may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs.
[0075] Furthermore, the functional modules in the various embodiments of the present invention 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 in the form of hardware plus software functional modules.
[0076] It will be apparent to those skilled in the art that the present invention is not limited to the details of the exemplary embodiments described above, and that the present invention can be implemented in other specific forms without departing from the spirit or essential characteristics of the present invention.
[0077] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention and are not intended to limit it. Although the present invention has been described in detail with reference to preferred embodiments, those skilled in the art should understand that modifications or equivalent substitutions can be made to the technical solutions of the present invention without departing from the spirit and scope of the technical solutions of the present invention.
Claims
1. A fast contact map routing method based on dynamic sliding window, characterized in that, The method includes: Determine the initial sliding window and the contact graph node set, wherein the contact graph node set includes: a start node, an end node, and multiple potential intermediate nodes; Based on the initial sliding window, the first node set is identified in the contact graph node set; An edge node set is determined from the first node set, and event detection is performed on the edge node set to obtain an event detection result set; Based on the event detection result set, obtain the edge contact set; Based on the edge contact set and the first node set, obtain the updated sliding window and the updated first node set; Based on updating the sliding window and updating the first node set, obtain the second node set; If the node termination point is not a termination node in the contact graph node set, the updated sliding window and the second node set are used as the initial sliding window and the first node set, respectively. The step of determining the edge node set from the first node set is returned until the node termination point is a termination node. The updated first node set and the second node set are then summarized to obtain the updated total node set. Based on the updated total node set, a route search is performed to obtain the optimal route path, thus completing the fast contact graph route calculation.
2. The fast contact map routing method based on dynamic sliding window of claim 1, wherein, The process of identifying the first node set in the contact graph node set based on the initial sliding window includes: Determine the time interval of the initial sliding window; For each potential intermediate node in the contact graph node set, the following operation is performed: Obtain historical contact time information of potential intermediate nodes; Based on the historical contact time information, the active time interval of potential intermediate nodes is determined; Based on the time interval and the active time interval, time coverage matching calculation is performed on potential intermediate nodes to obtain the effective coverage ratio; If the effective coverage ratio is greater than or equal to the preset coverage ratio threshold, the potential intermediate node is confirmed as a candidate available intermediate node. By summarizing the candidate available intermediate nodes, multiple candidate available intermediate nodes are obtained; The plurality of candidate available intermediate nodes are filtered to obtain a set of available nodes, wherein the set of available nodes contains one or more available nodes; Construct the first node set based on the available node set and the starting node in the contact graph node set.
3. The fast contact map routing method based on dynamic sliding window of claim 2, wherein, The step of filtering the multiple candidate available intermediate nodes to obtain a set of available nodes includes: For each of the plurality of candidate available intermediate nodes, the following operation is performed: Obtain the spatiotemporal contact information of candidate available intermediate nodes; Based on the spatiotemporal contact information, the structural hub degree and time margin of the candidate available intermediate nodes are calculated; Based on the structural pivotality and time margin, the overall fit of the candidate usable intermediate nodes is determined; Based on the comprehensive adaptability, the adaptability of the candidate available intermediate nodes is determined to obtain the node selection mark, wherein the node selection mark is selected or not selected; By summarizing the node selection tags, a node selection tag set is obtained; Based on the node selection tag set, a set of available nodes is extracted from multiple candidate available intermediate nodes.
4. The fast contact map routing method based on dynamic sliding window of claim 3, wherein, The process of obtaining the spatiotemporal contact information of candidate available intermediate nodes includes: Based on the time interval and the contact graph node set, obtain the neighbor node set of the candidate available intermediate node, wherein the neighbor node set contains one or more neighbor nodes; For each neighbor node in the set of neighbor nodes, perform the following operation: Obtain a set of predicted contact events between neighboring nodes and candidate available intermediate nodes, wherein the set of predicted contact events includes one or more predicted contact events; For each predicted contact event in the predicted contact event set, the following operation is performed: Get the event window for predicted contact events; Based on the event window, obtain the event duration; The total contact duration is obtained by summing the durations of the events. Determine the number of contact events in the predicted contact event set; Determine the node type of the neighboring nodes; Based on the cumulative contact duration, number of contact events, and node type, construct the contact information of neighboring nodes; By summarizing the contact information of the neighboring nodes, spatiotemporal contact information is obtained.
5. The fast contact map routing method based on dynamic sliding window as claimed in claim 4, wherein, Determining the edge node set from the first node set includes: For each available node in the first node set, perform the following operation: Determine the available spatiotemporal contact information of available nodes; Based on the available spatiotemporal contact information, the internal connectivity of available nodes is obtained; Obtain the set of available predicted contact events for available nodes, and determine the set of available event windows based on the set of available predicted contact events, wherein the set of available event windows contains one or more available event windows; For each available event window in the set of available event windows, perform the following operation: Determine the start and end times of the available event windows; Based on the start time and end time, edge overlap detection is performed on the available event window to obtain the edge overlap ratio; Summarize the edge overlap percentages to obtain the edge overlap percentage set; Calculate the window overlap ratio based on the edge overlap ratio set; If the window overlap ratio is greater than or equal to a preset overlap ratio threshold, and the internal connectivity is less than or equal to a preset connectivity edge value, then the available node is identified as an edge node. The edge nodes are summarized to obtain the edge node set.
6. The fast contact map routing method based on dynamic sliding window of claim 5, wherein, The event detection of the edge node set to obtain an event detection result set includes: For each edge node in the set of edge nodes, perform the following operation: Boundary contact events are extracted from the edge nodes to obtain a set of boundary contact events; The boundary contact event set is subjected to contact verification to obtain a contact verification result set, wherein the contact verification result set includes one or more contact verification results, and the contact verification result is a valid contact or an invalid contact; If there is a valid contact verification result in the contact verification result set, then the preset edge contact will be confirmed as the event detection result. Otherwise, the preset edgeless contact will be accepted as the event detection result; Summarize the event detection results to obtain the event detection result set.
7. The dynamic sliding window based fast contact map routing method of claim 6, wherein, The contact verification of the boundary contact event set to obtain a contact verification result set includes: For each boundary contact event in the set of boundary contact events, the following operation is performed: Based on the boundary contact event, the target boundary contact node and contact time window are determined; Based on the target boundary contact nodes, obtain target node information; Based on the target node information and the contact time window, a pre-built link quality prediction model is used to evaluate the link communication quality and obtain link quality parameters, which include: available bandwidth and signal-to-noise ratio. Based on the contact time window, a continuity risk assessment is performed on the contact nodes at the target boundary to obtain a continuity risk value; The continuity risk value, available bandwidth, and signal-to-noise ratio in the link quality parameters are all normalized to obtain normalized continuity risk value, normalized available bandwidth, and normalized signal-to-noise ratio. Contact quality is calculated based on the normalized continuity risk value, normalized available bandwidth, and normalized signal-to-noise ratio, using the following formula: ; wherein, denotes the contact quality, denotes the normalized available bandwidth, denotes the normalized signal-to-noise ratio, denotes the normalized continuity risk value, denotes a preset signal-to-noise ratio penalty intensity coefficient, denotes a preset risk value coefficient, denotes a natural constant; If the contact quality is greater than or equal to the preset contact quality benchmark value, then effective contact is taken as the contact verification result; If the contact quality is less than the contact quality reference value, then invalid contact is taken as the contact verification result; The contact verification results are summarized to obtain a contact verification result set.
8. The dynamic sliding window based fast contact map routing method of claim 7, wherein, The step of performing route search based on the updated total node set to obtain the optimal route path includes: Based on the updated total node set, construct an updated contact graph; Based on the updated contact map, a path search is performed using a preset path algorithm to obtain a candidate route path set, wherein the candidate route path set contains multiple candidate route paths. For each candidate route in the candidate route path set, the following operation is performed: Based on the candidate routing paths, a path node contact sequence is determined, wherein the path node contact sequence includes multiple path node contacts; Path evaluation is performed on the path node contact sequence to obtain path stability parameters; Calculate the comprehensive path cost based on the path stability parameters; By summing up the comprehensive path costs, a comprehensive path cost set is obtained; Based on the comprehensive path cost set, the optimal path is selected to obtain the optimal routing path.
9. The dynamic sliding window based fast contact map routing method of claim 8, wherein, The path evaluation of the path node contact sequence to obtain path stability parameters includes: The total number of hops in the path is obtained by counting the number of contact sequences of the path nodes. Temporal features are extracted from the path node contact sequence to obtain the node contact time series; Obtain the cumulative path delay of the path node contact sequence; Based on the cumulative path delay and node contact time series, the path scheduling density is calculated. Path stability parameters are constructed based on the total number of hops, cumulative path latency, and path scheduling density.
10. A fast contact graph routing calculation system based on a dynamic sliding window, characterized in that, The system includes: An initial parameter configuration module is used to determine the initial sliding window and the contact graph node set, wherein the contact graph node set includes: a start node, an end node, and multiple potential intermediate nodes; The node filtering module is used to identify a first node set from the contact graph node set based on the initial sliding window, determine an edge node set from the first node set, perform event detection on the edge node set, and obtain an event detection result set. The window update and node expansion module is used to obtain an edge contact set based on the event detection result set, obtain an updated sliding window and an updated first node set based on the edge contact set and the first node set, and obtain a second node set based on the updated sliding window and the updated first node set. The routing calculation module is used to identify the node termination point from the second node set. If the node termination point is not a termination node in the contact graph node set, the updated sliding window and the second node set are used as the initial sliding window and the first node set, respectively. The module then returns to the step of determining the edge node set from the first node set until the node termination point is a termination node. The module then summarizes and updates the first node set and the second node set to obtain the updated total node set. Based on the updated total node set, a route search is performed to obtain the optimal route path, thus completing the fast contact graph routing calculation.