Method for obtaining shortest interruption time under a certain fault tolerance number limit in a time-varying network

By constructing an integer programming model in a time-varying network, the problem of robustness measurement in a time-varying network is solved, and the accurate measurement of the number and duration of interrupts is achieved, which improves the performance stability of the network in extreme environments.

CN115767606BActive Publication Date: 2025-06-24XIDIAN UNIV
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211296507.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-10-21
Publication Date
2025-06-24
Estimated Expiration
2042-10-21

AI Technical Summary

Technical Problem

The prior art is difficult to accurately measure robustness in time-varying networks, especially the impact of unpredictable interruptions on network performance in extreme environments.

Method used

By obtaining the undirected time-varying graph and converting it to a directed time-varying graph, and then converting it to a line-type graph, an integer programming model is constructed to solve the minimum cut value and the shortest interrupt time.

Benefits of technology

A method of quantifying the measurement of robustness in a time-varying network is realized, and the tolerance of the time-varying network to a certain number of interrupts can be determined in the worst case, providing a metric of the number of interrupts and the duration of each interrupt.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115767606B_ABST
    Figure CN115767606B_ABST
Patent Text Reader

Abstract

The present invention discloses a method for obtaining the shortest interruption time under a certain fault tolerance number limit in a time-varying network. The method includes: obtaining a linear graph through a series of graph conversions for a given time-varying network; constructing a first integer programming model according to the linear graph; solving the minimum cut set of the network under the interruption time constraint in this model; substituting the preset network operation period, i.e., the longest interruption time, into the first model, and the obtained minimum cut set is the minimum spatial cost for cutting off the network; when the cardinality of the minimum cut set is not greater than the preset interruption number, constructing a second integer programming model according to the linear graph, and solving the shortest duration of a single connection interruption under the constraint of the interruption number; performing a binary search within the time range determined by the preset operation period, and converting the solution of the second model into the solution of the first model; each search verifies whether the first model has a solution for a given interruption time. If there is a solution, the upper limit of the time range is halved, and the search continues until the minimum time cost required to cut off the network is obtained.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the field of communication technologies, and particularly relates to a method for obtaining the shortest interruption time under a certain fault tolerance number limit in a time-varying network. Background Art

[0002] A time-varying network, also known as a temporal network, has a topology that changes over time, such as mobile social networks, space communication networks, vehicular ad hoc networks, and so on. In order to meet the requirements of data packet exchange, a continuous end-to-end path must be established before information exchange. However, in practical applications, especially in extreme environments, due to factors such as node mobility, limited storage and being very vulnerable to physical damage, sudden shutdown due to exhausted device power, and unstable wireless links, the end-to-end path from the source node to the target node only exists intermittently. The time-varying network slices time, and each time slice is called a time slot, and the connections in each time slot are fixed. The sending node is allowed to carry information and move until a certain moment when it is close to the sending object and then forwards the stored information copy.

[0003] Due to discontinuous connections and constantly changing topological structures, time-varying networks are very vulnerable to attacks. In many applications of time-varying networks, transmission reliability is a very important issue. Some work predicts the link state and interruption probability within a future period of time based on historical data, the periodic operation mode of the network, and topological changes. However, predictions regarding the evolution of the network topology are relatively error-prone. In reality, the operating environment of time-varying networks is harsh, and there are various unpredictable factors, such as deliberate human sabotage, hardware failures, and extreme weather natural disasters. These unpredictable interruptions may greatly reduce the network performance.

[0004] In a static network, once a connection error occurs, it is permanently broken. For a time-varying network, since connections are sparsely distributed throughout the entire operation cycle, some connections that had errors in the early stage may reappear in subsequent time slots as the network operates periodically. The robustness analysis of time-varying networks must simultaneously focus on the time point when an error occurs and the duration it lasts.

[0005] Currently, most technologies related to network robustness only target ground static networks, and rarely explore the situation in a time-varying context. The characteristics of connection interruptions in static networks are different from those in time-varying networks. In a static network, once a connection error occurs, it remains permanently broken. For a time-varying network, since connections are sparsely distributed throughout the entire operation cycle, some connections that had errors in the early stage may reappear in subsequent time slots as the network operates periodically. The robustness performance analysis indicators defined in static networks cannot be directly applied to time-varying networks.

[0006] Although the current research on time-varying graphs is relatively extensive, such as solving connectivity, distance, network diameter, etc., there is not much work on the research of the robustness performance of time-varying networks. For example, Scellato et al. have studied similar problems on random time-varying graphs. Although they also involved the influence of wrong time, their results cannot be applied to the deterministic time-varying networks concerned by the present invention, such as spatially satellite networks operating periodically, vehicle-to-everything networks, and so on. There are also some works based on the assumption of inherent interruptions, that is, the error probability of any connection or node can be accurately predicted in advance. On this basis, topology extraction or route selection is carried out to enhance the robustness of communication in the network. Although these works have formulated effective strategies for improving communication in time-varying networks, due to the adoption of idealized assumptions, that is, errors can be accurately estimated, the feasibility of the solutions is greatly weakened.

[0007] That is to say, currently, there is no method that can accurately measure the robustness of time-varying networks. Summary of the Invention

[0008] To solve the above problems existing in the related art, the present invention provides a method for obtaining the shortest interruption time under a certain fault tolerance number limit of a time-varying network. The technical problems to be solved by the present invention are realized through the following technical solutions:

[0009] The present invention provides a method for obtaining the shortest interruption time under a certain fault tolerance number limit of a time-varying network, including:

[0010] Obtain an undirected time-varying graph representing the time-varying network; the time-varying network corresponds to a preset number of interruptions and a preset operation period; when the number of interruptions in the time-varying network is the preset number of interruptions, the communication of the time-varying network is interrupted; the undirected time-varying graph includes a source node, intermediate nodes, and a target node, and an undirected edge is formed between any two adjacent nodes, and each undirected edge has a preset active time slot;

[0011] According to the correlation degree between the faults in two directions corresponding to each undirected edge, and the active time slot of each undirected edge, convert the undirected time-varying graph into a directed time-varying graph; a first directed edge with an active time slot is formed between any two adjacent nodes in the directed time-varying graph; the two directions of each undirected edge represent the data transmission directions between the two nodes forming the undirected edge;

[0012] Convert the directed time-varying graph into a linear graph with a source conversion node, a target conversion node, and multiple second directed edges according to two adjacent nodes corresponding to each first directed edge, the active time slot of the directed edge, the connectivity between different first directed edges, and the source node and the target node; each second directed edge is composed of two adjacent conversion nodes; two adjacent nodes corresponding to each first directed edge and an active time slot of the first directed edge correspond to a conversion node, the source node corresponds to the source conversion node, and the target node corresponds to the target conversion node;

[0013] Construct a first integer programming model for solving the minimum cut value according to the linear graph; the optimization objective of the first integer programming model is to minimize the number of second directed edges that are simultaneously in an interrupted state among the multiple second directed edges, and this optimization objective represents minimizing the number of interruptions in the time-varying network; the constraint conditions of the first integer programming model include: a Boolean binary variable corresponding to each conversion node, and this Boolean binary variable represents whether the first directed edge corresponding to this conversion node is in an interrupted state within the preset time slot t to time slot t + δ - 1, where δ represents the duration of a single interruption, and each path between the source conversion node and the target conversion node is in an interrupted state; where both t and δ are integers greater than zero;

[0014] Substitute the preset operation period as δ into the first integer programming model to obtain the minimum cut value; the minimum cut value is a set including at least one element;

[0015] When the cardinality of the minimum cut value is less than or equal to the preset number of interruptions, construct a second integer programming model for solving the minimum interruption time according to the linear graph; the optimization objective of the second integer programming model is to solve the shortest duration of the preset number of interruptions; the constraint conditions of the second integer programming model include: the number of second directed edges that are simultaneously in an interrupted state among the multiple second directed edges is less than or equal to the preset number of interruptions; each second directed edge corresponds to the Boolean binary variable; each path between the source conversion node and the target conversion node is in an interrupted state;

[0016] Convert the solution of the second integer programming model into searching for the minimum interruption time cyclically within the time range determined by the preset operation period according to the first integer programming model until the minimum interruption time is obtained.

[0017] The present invention has the following beneficial technical effects:

[0018] For any time-varying network, based on the maximum number of interruptions of the time-varying network, through a series of calculations, the shortest duration of each interruption can be determined when the time-varying network has the maximum number of interruptions. Thus, the tolerance of the time-varying network to the duration of a certain number of interruptions can be quantitatively measured in the worst case, achieving the effect of being able to measure the robustness of the time-varying network using the number of interruptions and the duration of each interruption.

[0019] The following will further elaborate on the present invention in conjunction with the accompanying drawings and embodiments. Brief Description of the Drawings

[0020] Figure 1 It is an optional flowchart of the method for obtaining the shortest interruption time under a certain fault tolerance number limit of the time-varying network provided by the embodiment of the present invention;

[0021] Figure 2 It is the conversion schematic diagram of the exemplary undirected time-varying graph to the directed time-varying graph provided by the embodiment of the present invention;

[0022] Figure 3 It is the conversion schematic diagram of the exemplary directed time-varying graph to the line graph provided by the embodiment of the present invention;

[0023] Figure 4A It is the schematic diagram of an exemplary directed time-varying graph provided by the embodiment of the present invention;

[0024] Figure 4B It is provided by the embodiment of the present invention Figure 4A The schematic diagram of the line graph obtained by converting the shown directed time-varying graph. Detailed Embodiments

[0025] The following further describes the present invention in detail with specific embodiments, but the embodiments of the present invention are not limited thereto.

[0026] In the description of the present invention, the terms "first" and "second" are only used for descriptive purposes and cannot be understood as indicating or implying relative importance or implicitly specifying the quantity of the indicated technical features. Thus, the features defined with "first" and "second" may explicitly or implicitly include one or more of such features. In the description of the present invention, "a plurality" means two or more unless otherwise specifically defined.

[0027] In the description of this specification, the descriptions referring to terms such as "one embodiment", "some embodiments", "example", "specific example", or "some examples" etc. mean that the specific features, structures, materials, or characteristics described in connection with the embodiment or example are included in at least one embodiment or example of the present invention. In this specification, the schematic expressions of the above terms do not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials, or characteristics described can be combined in a suitable manner in any one or more embodiments or examples. In addition, those skilled in the art can combine and combine the different embodiments or examples described in this specification.

[0028] Although the present invention has been described in connection with various embodiments herein, however, in the process of implementing the claimed invention, those skilled in the art can understand and achieve other variations of the disclosed embodiments by viewing the accompanying drawings, the disclosure, and the appended claims. In the claims, the word "comprising" does not exclude other components or steps, and "a" or "one" does not exclude a plurality. A single processor or other unit can implement several functions recited in the claims. Certain measures are recited in mutually different dependent claims, but this does not mean that these measures cannot be combined to produce good results.

[0029] Figure 1 is an optional flowchart of a method for obtaining the shortest interruption time under a certain fault tolerance number limit of a time-varying network provided by an embodiment of the present invention, as Figure 1 shown, the method includes the following steps:

[0030] S101. Obtain an undirected time-varying graph representing the time-varying network; the time-varying network corresponds to a preset number of interruptions and a preset operation period; when the number of interruptions of the time-varying network is the preset number of interruptions, the communication of the time-varying network is interrupted; the undirected time-varying graph includes a source node, intermediate nodes, and a target node, and an undirected edge is formed between any two adjacent nodes, and each undirected edge has a preset active time slot.

[0031] In the embodiments of the present invention, the time-varying network (time-varying network) can be a time-varying network in any network form, for example, a mobile social network, a space communication network, a vehicular ad hoc network, etc. in any network form.

[0032] In the embodiments of the present invention, the preset operation period and the active time slot can be set according to actual needs, and the embodiments of the present invention do not make specific limitations thereto.

[0033] In the embodiments of the present invention, the preset number of interruptions can be a value obtained through actual testing or theoretical calculation, and the embodiments of the present invention do not make specific limitations thereto.

[0034] S102. Convert the undirected time-varying graph into a directed time-varying graph according to the correlation degree between the faults in two directions corresponding to each undirected edge and the active time slots of each undirected edge; a first directed edge with an active time slot is formed between any two adjacent nodes in the directed time-varying graph; the two directions of each undirected edge represent the data transmission directions between the two nodes forming the undirected edge.

[0035] In some embodiments, for each undirected edge, the two adjacent nodes forming the undirected edge are the first node and the second node. When the faults in the two directions corresponding to the undirected edge are not correlated, the undirected edge is converted into: a first directed edge pointing from the first node to the second node, and a first directed edge pointing from the second node to the first node; wherein, the active time slot of each first directed edge is the same as the active time slot of the undirected edge; when the faults in the two directions corresponding to the undirected edge are correlated, a first new node and a second new node are inserted between the first node and the second node, and the undirected edge is converted into: a first directed edge pointing from the first node to the first new node, a first directed edge pointing from the first new node to the second new node, a first directed edge pointing from the second new node to the second node, a first directed edge pointing from the second node to the first new node, and a first directed edge pointing from the second new node to the first node; wherein, the active time slot of the first directed edge pointing from the first new node to the second new node is the same as the active time slot of the undirected edge; the active time slots of the first directed edge pointing from the first node to the first new node, the first directed edge pointing from the second new node to the second node, the first directed edge pointing from the second node to the first new node, and the first directed edge pointing from the second new node to the first node are all preset operating cycles; the directed time-varying graph is obtained according to the nodes and the converted first directed edges.

[0036] Exemplarily, Figure 2 is the conversion principle of the undirected time-varying graph to the directed time-varying graph. As Figure 2As shown in the figure, for two adjacent nodes \(u\) and \(v\) in an undirected time-varying graph, the undirected graph can be converted into a directed graph according to whether the two-way errors (faults) of the undirected edge formed by \(u\) and \(v\) are related, and the active time slots \(t1\) and \(t2\) of the undirected edge formed by \(u\) and \(v\). Specifically, two cases can be considered according to whether the two directions of the undirected edge formed by \(u\) and \(v\) are fault-independent. The first case is that the transmission failures (faults) in the two directions are independent of each other. If the transmission in one direction fails, the transmission in the other direction is not affected. The undirected edge can be replaced with two directed edges, namely, the directed edges \(uv\) and \(vu\) in the figure. And the active time slots of the directed edges \(uv\) and \(vu\) are both \(t1\) and \(t2\). In the other case, these two directions usually depend on the same fault, such as an unexpected obstacle appearing between the two nodes, which means that these two directions are both turned on or disabled at the same time. At this time, nodes \(a\) and \(b\) are inserted between nodes \(u\) and \(v\), and directed edges \(ua\), \(va\), \(ab\), \(bu\) and \(bv\) are added. The active time slot of the directed edge \(ab\) is the same as that of the undirected edge formed by \(u\) and \(v\), while the other directed edges are active in all time slots \((1, 2, \cdots, T)\). Because the data communication in any direction between \(u\) and \(v\) has to pass through the same directed edge \(ab\), closing the directed connection \(ab\) can disable the communication directions between \(u\) and \(v\) at the same time. Here, the capacity of each directed edge in each time slot can be a unit capacity.

[0037] Here, the existing methods only regard the undirected graph as a bidirectionally reachable directed graph during conversion, and regard the failures of bidirectional connections as completely independent events, without considering the situation where bidirectional connection errors are related in practice; compared with the prior art, the conversion method proposed by the present invention considers more comprehensively, so the obtained directed graph is more accurate.

[0038] S103. Convert the directed time-varying graph into a linear graph with a source conversion node, a target conversion node, and multiple second directed edges according to the two adjacent nodes corresponding to each first directed edge, the active time slot of this directed edge, the connectivity between different first directed edges, and the source node and the target node; each second directed edge is composed of two adjacent conversion nodes; the two adjacent nodes corresponding to each first directed edge and an active time slot of this directed edge correspond to a conversion node, the source node corresponds to the source conversion node, and the target node corresponds to the target conversion node.

[0039] Exemplarily, Figure 3 FIG. is a schematic diagram of the process of converting a directed time-varying graph into a linear graph. As Figure 3 shown, in the first step, for the source node \(s\) and the target node \(d\) in the directed time-varying graph, a source conversion node \(s\) and a target conversion node \(d\) can be respectively created; in the second step, for each undirected edge in the directed time-varying graph and the active time slot corresponding to this undirected edge, this undirected edge can be converted into conversion nodes corresponding to the number of active time slots of this undirected edge. For example, as Figure 3, for the active time slots t1, t2,..., t x of the directed edge AB, it is correspondingly converted into the conversion nodes V AB,t1 , V AB,t2 ,..., V AB,tx ; In the third step, according to the connectivity between the directed edges in the directed time-varying graph, it can be determined whether the adjacent conversion nodes can form the directed edges in the linear graph. For example, as Figure 3 , for the directed edge AB with the active time slot t i and the directed edge BC with the active time slot t j , since there is a feasible path between the directed edge AB and the directed edge BC, the directed edge AB and the directed edge BC are connected. Therefore, when the active time slot is t i , the conversion node corresponding to the directed edge AB is V AB,ti , and, when the active time slot is t j , the conversion node corresponding to the directed edge BC is V BC,tj , it can make V AB,ti and V BC,tj form a new undirected edge pointing from V AB,ti to V BC,tj ; In the fourth step, it is judged whether the previous node of each conversion node is the source conversion node and whether the next node is the target conversion node. When the previous node of a conversion node is the source conversion node, a directed edge pointing from the source conversion node to the conversion node is added between the source conversion node and the conversion node. When the next node of the conversion node is the target conversion node, a directed edge pointing from the conversion node to the target conversion node is added between the conversion node and the target conversion node. In this way, the corresponding linear graph is obtained.

[0040] Exemplarily, Figure 4A is a schematic diagram of a obtained directed time-varying graph; Figure 4B is the linear graph converted from the directed time-varying graph of Figure 4A . For Figure 4A and Figure 4B , when the preset number of interrupts n is 1, 2, and 3 respectively, the corresponding duration δ of a single interrupt is 3, 2, and 1 respectively. That is to say, for a time-varying network, when n increases, the δ value decreases.

[0041] S104. Construct a first integer programming model for solving the minimum cut value based on the line graph; the optimization objective of the first integer programming model is to minimize the number of second directed edges that are simultaneously in an interrupted state among multiple second directed edges, and the optimization objective represents minimizing the number of interruptions in the time-varying network; the constraint conditions of the first integer programming model include: a Boolean binary variable corresponding to each conversion node, and the Boolean binary variable represents whether the first directed edge corresponding to the conversion node is in an interrupted state within the preset time slot t to time slot t+δ-1, where δ represents the duration of a single interruption, and each path between the source conversion node and the target conversion node is in an interrupted state; among them, both t and δ are integers greater than zero.

[0042] In the embodiment of the present invention, the first integer programming model is as follows:

[0043]

[0044]

[0045]

[0046] Among them, (e,t) represents any conversion node in the line graph, where each conversion node corresponds to a first directed edge e with an active time slot t in the directed time-varying graph; C represents the set of conversion nodes in the line graph; z e,t represents the Boolean binary variable of the first directed edge corresponding to (e,t), where when z e,t is 0, it means that the first directed edge e is not interrupted during the active time slot t, and when z e,t is 1, it means that the first directed edge e is in an interrupted state from the active time slot t to time slot t+δ-1; J sd represents the set of all paths from the source conversion node to the target conversion node composed of second directed edges; J represents any one path in J sd ; R(δ,J) represents the blocking set of J, and R(δ,J) = {(e,t)|(e,t')∈C J , s.t. 0≤t'-t<δ}, C J represents the first directed edges corresponding to all conversion nodes that make up J, where when any first directed edge corresponding to a conversion node that makes up J is in an interrupted state from the active time slot t to time slot t+δ-1, the path J is not passable.

[0047] Here, J consists of (e1,t1)→(e2,t2)......→(e m ,t m) are successively connected by corresponding first directed edges, where m is the number of directed edges on path J. The edges on J must satisfy the following conditions: for any i < m, it holds that: (1) the starting point (e1) is the source transition node, and the ending point (e m ) is the target transition node; (2) the ending point (e i ) = the starting point (e i+1 ); (3) edge e i is in the active state (connected state) at time slot t i ; (4) t i+1 > t i , and t m ≤ T.

[0048] Here, the above first integer programming model defines the minimum cut number (minimum number of interruptions) of the time-varying network under a given interruption time δ, and this model can be solved using the open-source mathematical programming solver Gurobi or CPLEX. In the above first integer programming model, is the first constraint condition, used to characterize that any path J between the source transition node s and the target transition node d must be cut off (not connected), and at least one first directed edge corresponding to the transition nodes in the blocking set R(δ, J) must be cut off (interrupted). is the second constraint condition, used to characterize the binary nature of the Boolean binary variable z e,t .

[0049] Here, the first directed edge e is in the interrupted state from the active time slot t to time slot t + δ - 1, indicating that the first directed edge e is in the interrupted state at time slots t, t + 1,..., t + δ - 1. The interruption of an edge that lasts for a finite period of time like this can be called the δ-removal of edge (e, t), and (e, t) is called the starting edge of the δ-removal.

[0050] S105. Substitute the preset operating cycle as δ into the first integer programming model to obtain the minimum cut value; the minimum cut value is a set including at least one element.

[0051] Here, for a given time-varying network, according to the first integer programming model, the minimum cut value Mincut T between the source node and the target node when the interruption duration δ = T can be calculated. Since T is the operating cycle and also the longest time, the influence of a single interruption is the most long-lasting at this time, and the number of interruptions required is the least. Mincut T represents the minimum spatial minimum cost for interrupting the communication between the source transition node and the target transition node under the most ideal conditions. The purpose of solving for Mincut T is to use it as a standard to predict the preset number of interruptions n, so as to eliminate unsolvable cases in advance and shorten the solving time.

[0052] Here, T can be substituted as δ into the first integer programming model to calculate the blocking set of each path from the source conversion node to the target conversion node, and the obtained blocking set can be substituted into the first integer programming model to obtain Mincut T .

[0053] S106. When the potential of the minimum cut value is less than or equal to the preset number of interruptions, a second integer programming model for solving the minimum interruption time is constructed according to the line graph; the optimization purpose of the second integer programming model is to solve the shortest duration of the preset number of interruptions; the restriction conditions of the second integer programming model include: the number of second directed edges that are simultaneously in an interrupt state among multiple second directed edges is less than or equal to the preset number of interruptions; each second directed edge corresponds to a Boolean binary variable; each path between a source conversion node and a target conversion node is in an interrupt state.

[0054] Here, get Mincut T After that, you can first determine Mincut T Mincut T |(means Mincut T The number of elements contained in ), and |Mincut T |Compare with the preset interruption number n. When |Mincut T | When it is greater than n, it means that the communication between the source conversion node and the target conversion node cannot be interrupted by using n interrupts, and an error is required to exit, because Mincut T When the transformation error duration is δ, the minimum value of all minimum cut sets is obtained, and the minimum value is greater than n, indicating that there is no solution that meets the given conditions. T | is less than or equal to n, indicating that the duration of a single interrupt can be further reduced while satisfying the number of interrupt spaces. n Indicates the minimum duration of each interruption under the preset interruption number n, and still uses the Boolean binary variable z e,t A Boolean binary variable representing the first directed edge corresponding to (e, t), with Δ representing the shortest duration of each interruption to be solved, J sd represents the set of all paths from the source transition node to the target transition node consisting of the second directed edge, and J represents J sd Any path in , R(Δ,J) represents the blocking set of J when the duration of each interruption is Δ, thereby constructing a second integer programming model for solving the minimum interruption time (the shortest duration of the interruption), where the second integer programming model is as follows:

[0055] minΔ

[0056]

[0057]

[0058]

[0059] In the above formula, the meanings of the various symbols are the same as those in the first integer programming model.

[0060] Here, is the first constraint condition, which is used to represent that the number of interruptions needs to be less than or equal to the preset number of interruptions n. is the second constraint condition, which is used to represent that the paths between the source conversion node and the target conversion node are all interrupted. is the third constraint condition, which is used to represent whether the directed edge corresponding to (e, t) is cut (interrupted).

[0061] S107. Convert the solution of the second integer programming model into searching for the minimum interruption time cyclically within the time range determined by the preset operation period according to the first integer programming model until the minimum interruption time is obtained.

[0062] Here, since in the second integer programming model, when Δ is unknown, the blocking set R(Δ, J) cannot be directly obtained. Therefore, the solution problem of the second integer programming model can be converted into searching for the minimum interruption time cyclically within the time range determined by the preset operation period according to the first integer programming model, so as to search out the minimum interruption time.

[0063] In some embodiments, the preset operation period is T, the lower limit value of the time range is 1, and the upper limit value is T; T is an integer greater than 1. Based on this, within the time range [1, T], the binary search method can be used to search for the minimum interruption time cyclically. After each search, an intermediate value is obtained. According to each obtained intermediate value and the first integer programming model, the minimum cut value of each time is calculated. According to the minimum cut value of each time and the preset number of interruptions, the validity of each obtained intermediate value is determined. According to the validity of each obtained intermediate value, the updated left search boundary and right search boundary are obtained, and the validity of the updated left search boundary and right search boundary obtained each time is judged. When the updated left search boundary and right search boundary obtained are valid, the next search is performed according to the updated left search boundary and right search boundary until the updated left search boundary and right search boundary obtained are invalid, and the last intermediate value among all the valid intermediate values obtained is used as the minimum interruption time.

[0064] Specifically, the present invention searches for the time range in an iterative manner. Among them, in the k-th iteration, according to the lower limit value and the upper limit value of the time range [1, T], the search left boundary and the search right boundary of the k-th time are obtained, and according to the search left boundary and the search right boundary of the k-th time, the intermediate value of the k-th time is determined; the intermediate value of the k-th time is a value in the time range [1, T]; substituting the intermediate value of the k-th time into the first integer programming model, the minimum cut value of the k-th time is obtained; when the potential of the minimum cut value of the k-th time is less than or equal to the preset interruption number, it is determined that the intermediate value of the k-th time is valid, otherwise, the intermediate value of the k-th time is invalid; when the intermediate value of the k-th time is valid, based on the intermediate value of the k-th time, the search right boundary of the k-th time is updated to obtain the search left boundary and the search right boundary of the (k + 1)-th time; when the intermediate value of the k-th time is invalid, based on the intermediate value of the k-th time, the search left boundary of the k-th time is updated to obtain the search left boundary and the search right boundary of the (k + 1)-th time; when the search left boundary of the (k + 1)-th time is less than or equal to the search right boundary of the (k + 1)-th time, it is determined that the search left boundary and the search right boundary of the (k + 1)-th time are valid; in the (k + 1)-th iteration, according to the valid search left boundary and search right boundary of the (k + 1)-th time, the intermediate value of the (k + 1)-th time is determined, and the validity of the intermediate value of the (k + 1)-th time is determined. According to the validity of the intermediate value of the (k + 1)-th time, the search left boundary and the search right boundary for the (k + 2)-th iteration are obtained, and the validity of the search left boundary and the search right boundary for the (k + 2)-th iteration is judged until the search left boundary and the search right boundary for the (k + q)-th iteration obtained are invalid, and the last intermediate value among all the valid intermediate values obtained is used as the minimum interruption time; q is an integer greater than or equal to 2.

[0065] In some embodiments, in the k-th iteration, the lower limit value 1 of the time range [1, T] is used as the search left boundary of the k-th time, and the upper limit value T is used as the search right boundary of the k-th time; the average value of the sum of the search left boundary of the k-th time and the search right boundary of the k-th time is used as the intermediate value of the k-th time.

[0066] In some embodiments, the intermediate value of the k-th time is used as δ and substituted into the first integer programming model to calculate the blocking set of each path between the source conversion node and the target conversion node; the blocking set is substituted into the first integer programming model to obtain the minimum cut value of the k-th time.

[0067] In some embodiments, when the intermediate value of the k-th time is invalid, the sum of the intermediate value obtained in the k-th time and 1 is used as the search left boundary of the (k + 1)-th time; the search right boundary of the k-th time is used as the search right boundary of the (k + 1)-th time. When the intermediate value of the k-th time is valid, the difference between the intermediate value of the k-th time and 1 is used as the search right boundary of the (k + 1)-th time; the search left boundary of the k-th time is used as the search left boundary of the (k + 1)-th time.

[0068] Exemplarily, the principle of the binary search method is explained below by way of specific examples.

[0069] First, set three variables low, high, and mid. Among them, low is the left boundary of the search, high is the right boundary of the search, and mid is the middle value. When the initial search time range is [1, T], at the start of the first search, low = 1, high = T (T is the operating cycle of the time-varying network), and substitute mid as δ into the first integer programming model, and calculate to obtain MinCut mid , and determine whether |MinCut mid | is less than or equal to n. If |MinCut mid | is less than or equal to n, it means that all communications between the source conversion node and the target conversion node can be interrupted with less than n interruptions of duration mid. Then it indicates that there is still room for the current duration mid to become smaller. At this time, assign the current mid value to the Δ to be solved, set the right boundary high of the binary search to mid - 1, and at the same time, update the mid value according to the newly set high value for subsequent calculation of the next MinCut mid , and verification of the relationship between |MinCut mid | and n. Because, assuming mid is reduced to mid1, then, according to the relationship of mutual growth and decline between the interruption duration and the number of interruptions that the time-varying network can accommodate, the time-varying network can accommodate a larger number of interruptions than the current one, and more interruptions are required to interrupt the communication of the time-varying network, that is, |MinCut mid1 | > |MinCut mid | (if the increased |MinCut mid1 | is still less than n, it means that the contraction of the right boundary adopted this time is effective). If |MinCut mid | is greater than or equal to n, it means that the currently verified mid value is too small, resulting in the number of interruptions required to interrupt the communication between the interrupt source conversion node and the target conversion node being greater than n. At this time, mid is not a valid value and cannot be assigned to the Δ to be solved. In this case, the left boundary low of the search needs to be shifted to mid + 1, and the mid value is updated again according to the newly set low value for the next calculation of MinCut mid , and verification of the relationship between |MinCut mid | and n. And, each time the search boundary changes, it is necessary to verify whether low is less than or equal to high. If low > high, the search ends, and the currently obtained mid is used as the obtained Δ, so as to obtain the minimum interruption time MinTime n .

[0070] As can be seen from the above, the present invention defines a new metric for measuring the robustness of a time-varying network and a corresponding calculation method. This metric is related to time and is called the shortest interruption time MinTime under a certain number of fault-tolerant connections n n , which represents the shortest duration of a single error when the time-varying network can be interrupted under the condition of cutting (interrupting) the connections of the time-varying network at most n times. This metric reflects the minimum time cost of completely disabling the communication between a given pair of nodes by cutting the network under the resource constraint of a certain attack on the network, that is, under the limitation of the number of cuts on a fixed number of directed edges. The calculation result for this metric can provide a reference for the development of subsequent robustness enhancement schemes; the present invention also defines a mathematical model for the minimum cut value of a time-varying network under a given interruption time δ; and gives an integer programming model for calculating MinTime n , which clearly expresses the optimization objective and constraint conditions of the metric MinTime n ; and also provides an algorithm for obtaining the MinTime n metric based on binary search.

[0071] Compared with the prior art, the present invention takes into account the spatial characteristics of the interruption of the time-varying network and also takes into account the time duration characteristics of the interruption, and examines the robustness of the time-varying network from another perspective: when the maximum number of interruptions that disconnect the communication connections of the time-varying network is n, the shortest duration of each interruption. It reflects the adjustability of the two parameters n and δ from another perspective. That is to say, for any time-varying network, the present invention can determine the shortest duration of each interruption of the time-varying network when the maximum number of interruptions occurs according to the maximum number of interruptions of the time-varying network, so as to quantitatively measure the tolerance of the time-varying network to a certain number of interruptions in the worst case, achieving the effect of being able to measure the robustness of the time-varying network by the number of interruptions and the duration of each interruption.

[0072] The above content is a further detailed description of the present invention in combination with specific preferred embodiments, and it cannot be determined that the specific implementation of the present invention is only limited to these descriptions. For those of ordinary skill in the technical field to which the present invention belongs, without departing from the concept of the present invention, several simple deductions or substitutions can be made, and all should be regarded as belonging to the protection scope of the present invention.

Claims

1. A method for obtaining the shortest interruption time under a certain fault tolerance number limit in a time-varying network, characterized in that Including: Obtaining an undirected time-varying graph for representing a time-varying network; the time-varying network corresponding to a preset number of interruptions and a preset operation period; When the number of interruptions of the time-varying network is the preset number of interruptions, a communication interruption of the time-varying network; the undirected time-varying graph includes a source node, intermediate nodes, and a target node, and an undirected edge is formed between any two adjacent nodes, and each undirected edge has a preset active time slot; Converting the undirected time-varying graph into a directed time-varying graph according to the correlation degree between faults in two directions corresponding to each undirected edge and the active time slot of each undirected edge; a first directed edge with an active time slot is formed between any two adjacent nodes in the directed time-varying graph; the two directions of each undirected edge represent the data transmission direction between the two nodes constituting the undirected edge; Converting the directed time-varying graph into a linear graph with a source conversion node, a target conversion node, and multiple second directed edges according to two adjacent nodes corresponding to each first directed edge, the active time slot of the first directed edge, the connectivity between different first directed edges, and the source node and the target node; each second directed edge is composed of two adjacent conversion nodes; two adjacent nodes corresponding to each first directed edge and an active time slot of the first directed edge correspond to a conversion node, the source node corresponds to the source conversion node, and the target node corresponds to the target conversion node; Constructing a first integer programming model for solving the minimum cut value according to the linear graph; the optimization objective of the first integer programming model is to minimize the number of second directed edges that are simultaneously in an interrupted state among the multiple second directed edges, and the optimization objective represents minimizing the number of interruptions of the time-varying network; the constraint conditions of the first integer programming model include: a Boolean binary variable corresponding to each conversion node, and the Boolean binary variable represents whether the first directed edge corresponding to the conversion node is in an interrupted state within a preset time slot t to time slot t + δ - 1, where δ represents the duration of a single interruption, and each path between the source conversion node and the target conversion node is in an interrupted state; wherein, both t and δ are positive integers; Substituting the preset operation period as δ into the first integer programming model to obtain the minimum cut value; the minimum cut value is a set including at least one element; When the cardinality of the minimum cut value is less than or equal to the preset number of interruptions, constructing a second integer programming model for solving the minimum interruption time according to the linear graph; the optimization objective of the second integer programming model is to solve the shortest duration of the preset number of interruptions; the constraint conditions of the second integer programming model include: the number of second directed edges that are simultaneously in an interrupted state among the multiple second directed edges is less than or equal to the preset number of interruptions; each second directed edge corresponds to the Boolean binary variable; each path between the source conversion node and the target conversion node is in an interrupted state; The solution of the second integer programming model is transformed into cyclically searching for the minimum interruption time within the time range determined by the first integer programming model according to the preset operation period until the minimum interruption time is obtained.

2. The method for obtaining the shortest interruption time under a certain fault tolerance number limit of a time-varying network according to claim 1, wherein The conversion of the undirected time-varying graph into a directed time-varying graph according to the correlation degree between the faults in two directions corresponding to each undirected edge and the active time slots of each undirected edge includes: For each undirected edge, the two adjacent nodes forming this undirected edge are the first node and the second node. When the faults in two directions corresponding to this undirected edge are not correlated, the undirected edge is converted into: a first directed edge pointing from the first node to the second node, and a first directed edge pointing from the second node to the first node; wherein, the active time slot of each first directed edge is the same as the active time slot of this undirected edge; When the faults in two directions corresponding to this undirected edge are correlated, a first new node and a second new node are inserted between the first node and the second node, and this undirected edge is converted into: a first directed edge pointing from the first node to the first new node, a first directed edge pointing from the first new node to the second new node, a first directed edge pointing from the second new node to the second node, a first directed edge pointing from the second node to the first new node, and a first directed edge pointing from the second new node to the first node; wherein, the active time slot of the first directed edge pointing from the first new node to the second new node is the same as the active time slot of this undirected edge; the active time slots of the first directed edge pointing from the first node to the first new node, the first directed edge pointing from the second new node to the second node, the first directed edge pointing from the second node to the first new node, and the first directed edge pointing from the second new node to the first node are all the preset operation period; The directed time-varying graph is obtained according to the nodes and the first directed edges obtained by conversion.

3. The method for obtaining the shortest interruption time under a certain fault tolerance number limit of a time-varying network according to claim 1, wherein The first integer programming model is as follows: Among them, (e, t) represents any conversion node in the line graph, where each conversion node corresponds to a first directed edge e with an active time slot t in the directed time-varying graph; C represents the set of conversion nodes in the line graph; z e,t represents the Boolean binary variable of the first directed edge corresponding to (e, t), where when z e,t is 0, it means that the first directed edge e is not interrupted during the active time slot t, and when z e,t is 1, it means that the first directed edge e is in an interrupted state from the active time slot t to the time slot t + δ - 1; J sd represents the set of all paths composed of second directed edges from the source conversion node to the target conversion node; J represents any one path in J sd ; R(δ, J) represents the blocking set of J, R(δ, J) = {(e, t)|(e, t') ∈ C J , s.t. 0 ≤ t' - t < δ}, C J represents the first directed edges corresponding to all conversion nodes that make up J, where when the first directed edge corresponding to any conversion node that makes up J is in an interrupted state from the active time slot t to the time slot t + δ - 1, the path J is blocked.

4. The method for obtaining the shortest interruption time under a certain fault tolerance number limit of a time-varying network according to claim 3, characterized in that The second integer programming model is as follows: minΔ wherein, Δ represents the minimum interruption time; n represents the preset number of interruptions; R(Δ, J) represents the blocking set of J when δ is Δ.

5. The method for obtaining the shortest interruption time under a certain fault tolerance number limit of a time-varying network according to claim 1, wherein The preset operation period is T, the lower limit value of the time range is 1, and the upper limit value is T; T is an integer greater than 1; the cyclically searching for the minimum interruption time within the time range determined by the preset operation period until the minimum interruption time is obtained includes: In the time range [1, T], the binary search method is used to cyclically search for the minimum interruption time. After each search, an intermediate value is obtained. According to the intermediate value obtained each time and the first integer programming model, the minimum cut value is calculated each time. According to the minimum cut value obtained each time and the preset number of interruptions, the validity of the intermediate value obtained each time is determined. According to the validity of the intermediate value obtained each time, the updated left search boundary and right search boundary are obtained, and the validity of the updated left search boundary and right search boundary obtained each time is judged. When the updated left search boundary and right search boundary obtained are valid, the next search is performed according to the updated left search boundary and right search boundary until the updated left search boundary and right search boundary obtained are invalid, and the last intermediate value among all the valid intermediate values obtained is used as the minimum interruption time.

6. The method for obtaining the shortest interruption time under a certain fault tolerance number limit of a time-varying network according to claim 5, wherein The method of using the binary search method to cyclically search for the minimum interruption time in the time range [1, T], obtaining an intermediate value after each search, calculating the minimum cut value each time according to the intermediate value obtained each time and the first integer programming model, determining the validity of the intermediate value obtained each time according to the minimum cut value obtained each time and the preset number of interruptions, obtaining the updated left search boundary and right search boundary according to the validity of the intermediate value obtained each time, and judging the validity of the updated left search boundary and right search boundary obtained each time. When the updated left search boundary and right search boundary obtained are valid, the next search is performed according to the updated left search boundary and right search boundary until the updated left search boundary and right search boundary obtained are invalid, and the last intermediate value among all the valid intermediate values obtained is used as the minimum interruption time, includes: Search the time range in an iterative manner. Among them, in the k-th iteration, according to the lower limit value and upper limit value of the time range [1, T], the k-th search left boundary and search right boundary are obtained, and according to the k-th search left boundary and search right boundary, the k-th intermediate value is determined; the k-th intermediate value is a value in the time range [1, T]; Substitute the k-th intermediate value into the first integer programming model to obtain the k-th minimum cut value; When the potential of the k-th minimum cut value is less than or equal to the preset number of interruptions, it is determined that the k-th intermediate value is valid, otherwise, the k-th intermediate value is invalid; When the k-th intermediate value is valid, update the k-th search right boundary based on the k-th intermediate value to obtain the (k + 1)-th search left boundary and search right boundary; When the k-th intermediate value is invalid, update the k-th search left boundary based on the k-th intermediate value to obtain the (k + 1)-th search left boundary and search right boundary; When the (k + 1)-th search left boundary is less than or equal to the (k + 1)-th search right boundary, it is determined that the (k + 1)-th search left boundary and search right boundary are valid; At the (k + 1)-th iteration, based on the valid search left boundary and search right boundary of the (k + 1)-th time, determine the intermediate value of the (k + 1)-th time, and determine the validity of the intermediate value of the (k + 1)-th time. According to the validity of the intermediate value of the (k + 1)-th time, obtain the search left boundary and search right boundary for the (k + 2)-th iteration, and judge the validity of the search left boundary and search right boundary for the (k + 2)-th iteration, until the search left boundary and search right boundary for the (k + q)-th iteration obtained are invalid, and take the last intermediate value among all the valid intermediate values obtained as the minimum interruption time; q is an integer greater than or equal to 2.

7. The method for obtaining the shortest interruption time under a certain fault tolerance number limit of a time-varying network according to claim 6, wherein When the intermediate value of the k-th time is valid, updating the search right boundary of the k-th time based on the intermediate value of the k-th time to obtain the search left boundary and search right boundary of the (k + 1)-th time includes: When the intermediate value of the k-th time is valid, use the difference between the intermediate value of the k-th time and 1 as the search right boundary of the (k + 1)-th time; Use the search left boundary of the k-th time as the search left boundary of the (k + 1)-th time.

8. The method for obtaining the shortest interruption time under a certain fault tolerance number limit of a time-varying network according to claim 6 or 7, characterized in that, When the intermediate value of the k-th time is invalid, updating the search left boundary of the k-th time based on the intermediate value of the k-th time to obtain the search left boundary and search right boundary of the (k + 1)-th time includes: When the intermediate value of the k-th time is invalid, use the sum of the intermediate value obtained in the k-th time and 1 as the search left boundary of the (k + 1)-th time; Use the search right boundary of the k-th time as the search right boundary of the (k + 1)-th time.

9. The method for obtaining the shortest interruption time under a certain fault tolerance number limit of a time-varying network according to claim 6, wherein Substituting the intermediate value of the k-th time into the first integer programming model to obtain the minimum cut value of the k-th time includes: Taking the intermediate value of the k-th time as δ and substituting it into the first integer programming model to calculate the blocking set of each path between the source conversion node and the target conversion node; Substituting the blocking set into the first integer programming model to obtain the minimum cut value of the k-th time.

10. The method for obtaining the shortest interruption time under a certain fault tolerance number limit of a time-varying network according to claim 6, characterized in that, At the k-th iteration, obtaining the search left boundary and search right boundary of the k-th time according to the lower limit value and upper limit value of the time range [1, T], and determining the intermediate value of the k-th time according to the search left boundary and search right boundary of the k-th time includes: At the k-th iteration, take the lower limit value 1 of the time range [1, T] as the search left boundary of the k-th time, and take the upper limit value T as the search right boundary of the k-th time; Take the average value of the sum of the search left boundary of the k-th time and the search right boundary of the k-th time as the intermediate value of the k-th time.

Citation Information

Patent Citations

  • Method for acquiring maximum error separation path of fixed-length random interruption scene in time-varying network

    CN113630268A

  • Maximum error independent path calculation method of weighted time-varying network under consumption limitation

    CN113660677A