Complex network robustness prediction method and system based on low-rank matrix completion
By extracting specific elements in the pattern matrix based on low-rank matrix completion method, building a binary graph and feasibility verification are carried out, the problem of robustness evaluation of complex networks under structured perturbation is solved, and efficient robustness is achieved predict.
Patent Information
- Application Number
- CN202411252266.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-09
- Publication Date
- 2024-12-24
AI Technical Summary
The prior art is difficult to effectively evaluate and predict the robustness of complex networks under structured perturbations, especially when the edge weight information is unknown or difficult to obtain, resulting in complex and impractical robustness analysis.
Using a method based on low-rank matrix completion, a binary graph is constructed by extracting fixed zero elements, general value elements and missing elements in the pattern matrix, and a random sampling algorithm and k-order maintaining base can be used for feasibility verification and completion judgment. , determine the robustness of the network.
It realizes the robustness of high probability prediction of complex networks in polynomial time, provides robustness evaluation and prediction tools under structured perturbation, and is suitable for networks with unknown edge weights, simplifying the robustness analysis process.
Smart Images

Figure CN119179872A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of robustness prediction, and in particular to a complex network robustness prediction method and system based on low-rank matrix completion. Background Art
[0002] Network robustness is a core concept in network science, which describes the ability of a network to maintain its basic functions in the face of various internal and external disturbances. Whether it is the Internet, power grid, social network or biological network, complex network systems in the real world need to have a certain degree of robustness to resist potential threats such as hardware failures, malicious attacks or natural disasters. Therefore, evaluating and predicting the robustness of the network is the key to ensuring its stable operation and security.
[0003] Traditional network robustness analysis methods often rely on the knowledge of the complete structure and weight information of the network. However, in many practical situations, this information may be difficult to obtain, especially the edge weight information. In addition, as the size of the network grows, directly analyzing the network structure becomes increasingly complex and impractical. Summary of the invention
[0004] The purpose of this application is to provide a complex network robustness prediction method and system based on low-rank matrix completion, which realizes the evaluation and prediction of the robustness of the network under structured disturbances.
[0005] To achieve the above objectives, this application provides the following solutions:
[0006] In a first aspect, the present application provides a complex network robustness prediction method based on low-rank matrix completion, comprising:
[0007] Extracting a pattern matrix from the network to be predicted, and initializing an estimated upper bound of the minimum rank and an estimated lower bound of the minimum rank of the pattern matrix; the elements in the pattern matrix include: fixed zero elements, general value elements, and missing elements;
[0008] Determine the low-rank matrix completion problem based on fixed zero elements, general-valued elements, and missing elements, and compute the common rank of the pattern matrix based on the bipartite graph associated with the pattern matrix;
[0009] Using random sampling algorithm, the feasibility of low-rank matrix completion problem is verified based on pattern matrix;
[0010] Using a k-order maintainable basis, the complementability determination is performed based on the pattern matrix;
[0011] Use the maximum matching completion condition verification to verify whether the pattern matrix meets the specific completion condition;
[0012] Determine the robustness of the network to be predicted; the robustness is rank k robust or rank k non-robust.
[0013] Optionally, extract a pattern matrix from the network to be predicted, including:
[0014] From the network to be predicted, obtain the dimension and zero-non-zero pattern of the pattern matrix reflecting the structure of the network to be predicted;
[0015] Construct a pattern matrix based on the dimensions and the zero-nonzero pattern.
[0016] Optionally, based on each fixed zero element, general value element and missing element, a low-rank matrix completion problem is determined, and based on a bipartite graph associated with the pattern matrix, a common rank of the pattern matrix is calculated, including:
[0017] Obtain a set of fixed zero elements, a set of general value elements, and a set of missing elements in a pattern matrix;
[0018] According to the structure of the pattern matrix, a bipartite graph is constructed. Figure 2 The left and right vertices of the points correspond to the rows and columns of the pattern matrix, respectively;
[0019] Based on the bipartite graph, the Hopcroft-Karp algorithm is used to calculate the maximum number of matches;
[0020] The universal rank of the pattern matrix is defined as the rank that the pattern matrix can achieve by randomly taking values of the missing elements in the pattern matrix.
[0021] Optionally, a random sampling algorithm is used to verify the feasibility of the low-rank matrix completion problem based on the pattern matrix, including:
[0022] Initialize the flag and iteration counter of the random sampling algorithm;
[0023] Using the random sampling algorithm, a plurality of column indexes are randomly extracted from all columns of the pattern matrix to obtain an index set;
[0024] Verify whether the index set forms a preservable basis of the pattern matrix, and determine the maximum number of matches of the matrix corresponding to the verified preservable basis;
[0025] Check whether the tenable basis satisfies certain conditions;
[0026] If yes, set the flag bit to 1 and end the iteration;
[0027] If not, the iteration counter is increased, and the process returns to "using the random sampling algorithm to randomly extract multiple column indexes from all columns of the pattern matrix to obtain an index set" for iteration; until a specific condition is met or the number of iterations reaches a preset upper limit, the iteration ends;
[0028] Based on the flag at the end of the iteration, the feasibility of the low-rank matrix completion problem is determined.
[0029] Optionally, a k-order tenable basis is used to perform a completeness determination based on a pattern matrix, including:
[0030] Set the target rank and dimension of the pattern matrix for completion;
[0031] Identify a set of column subsets in the pattern matrix that form a k-order tenable basis;
[0032] Based on the k-order preservable basis, a submatrix is constructed from the pattern matrix;
[0033] Analyze the rank condition of the submatrix to determine whether there is a completion solution so that the rank of the completed submatrix is equal to nk; n is the number of rows of the pattern matrix;
[0034] Perform rank condition verification on the completed submatrix to ensure that it is indeed nk;
[0035] The rank condition verification results of all k-order preservable bases are logically integrated to form a comprehensive judgment on the completeness of the entire pattern matrix;
[0036] If the condition rank(M[K,I])=nk is met, then "Completion is possible" is output, indicating the possibility of a completion solution that meets the rank condition; M[K,I] represents the submatrix, and rank() represents the rank function;
[0037] If there is no k-order basis that satisfies the condition, the output is "Completion is impossible".
[0038] Optionally, the maximum matching completion condition verification is used to verify whether the pattern matrix satisfies specific completion conditions, including:
[0039] Initialize the target rank, the estimated upper bound of the minimum rank, and the estimated lower bound of the minimum rank;
[0040] The optimal value of the target rank is determined by a binary search method, and the intermediate value is calculated based on the rank estimate upper bound and the rank estimate lower bound;
[0041] Based on the median value, randomly select nr mid Different column indexes constitute a set; r mid is the middle value;
[0042] Using the selected k-order preservable basis, the complement of the matrix corresponding to the pattern matrix is analyzed;
[0043] Construct a bipartite graph associated with the matrix corresponding to the pattern matrix and calculate the maximum number of matches of the bipartite graph;
[0044] Based on the maximum number of matches and the middle value, determine whether the completion condition is met;
[0045] If the completion condition is met and a completion solution that meets the completion condition is found, then r high =r mid -1, and returns "determine the optimal value of the target rank through a binary search method, and calculate the intermediate value based on the rank estimate upper bound and the rank estimate lower bound"; until r high <r low When r high is the estimated upper bound of the minimum rank, r low is the estimated lower bound of the minimum rank;
[0046] If the completion condition is not met: then r low =r mid +1, and return "Determine the optimal value of the target rank by binary search method, and calculate the intermediate value based on the rank estimate upper bound and rank estimate lower bound"; until r high <r low When , the iteration terminates;
[0047] At the end of the iteration, the output r = r high +1; r is the estimate of the minimum rank, r = r high +1 means that for the pattern matrix, there exists a completion scheme so that the rank of the completed matrix does not exceed r.
[0048] Optionally, the robustness of the network to be predicted is determined, including:
[0049] Check the binary search and completion conditions to verify whether the convergence conditions are met; the convergence conditions are to reach the predetermined number of iterations or to find a completion solution that meets the conditions;
[0050] If the feasibility verification and completeness judgment are passed, the judgment result is output.
[0051] Optionally, output the determination result, including:
[0052] If the completion condition is met, the output is "rank k is not robust", indicating that for a given pattern matrix, there is at least one completion scheme so that the rank of the completed matrix does not exceed the predetermined rank nk. The network with unknown edge weights is not robust under structured perturbations.
[0053] If the completion condition is not met, "rank k robust" is output, indicating that under the current conditions, no completion solution that meets the rank condition is found. The rank of the network with unknown edge weights is not less than n-k+1 under structured perturbations, which is robust relative to the preset rank perturbation indicator.
[0054] In a second aspect, the present application provides a complex network robustness prediction system based on low-rank matrix completion, comprising:
[0055] A matrix extraction module is used to extract a pattern matrix from the network to be predicted, and initialize an estimated upper bound and an estimated lower bound of the minimum rank of the pattern matrix; the elements in the pattern matrix include: fixed zero elements, general value elements and missing elements;
[0056] A bipartite graph determination module is used to determine the low-rank matrix completion problem based on each fixed zero element, general value element and missing element, and calculate the common rank of the pattern matrix based on the bipartite graph associated with the pattern matrix;
[0057] A feasibility verification module is used to verify the feasibility of the low-rank matrix completion problem based on the pattern matrix using a random sampling algorithm;
[0058] A completability determination module, used for performing a completability determination based on a pattern matrix using a k-order maintainable basis;
[0059] A completion condition judgment module is used to verify whether the pattern matrix satisfies a specific completion condition by using the maximum matching completion condition verification;
[0060] The robustness prediction module is used to determine the robustness of the network to be predicted; the robustness is rank k robust or rank k non-robust.
[0061] Optionally, extract a pattern matrix from the network to be predicted, including:
[0062] From the network to be predicted, obtain the dimension and zero-non-zero pattern of the pattern matrix reflecting the structure of the network to be predicted;
[0063] Construct a pattern matrix based on the dimensions and the zero-nonzero pattern.
[0064] According to the specific embodiments provided in this application, this application discloses the following technical effects:
[0065] The present application discloses a method and system for predicting the robustness of complex networks based on low-rank matrix completion. It does not require complete complex network information, but evaluates the robustness of complex networks by analyzing the rank loss of the pattern matrix corresponding to the network under the perturbation of the edge weights of a specific set (the size of the rank perturbation caused by the edge perturbation). It is particularly suitable for the case where the network edge weights are unknown, and can predict the robustness of complex networks with high probability in polynomial time. In this way, the robustness of complex networks under structured perturbations can be effectively evaluated and predicted, providing important theoretical support and practical tools for the design and maintenance of complex networks; through initialization and pattern matrix analysis, feasibility verification based on random sampling, completion based on k-order maintainable basis, completion condition verification based on maximum matching, and the final complex network robustness prediction result output, it can effectively solve the problem of complex network robustness evaluation, and provide a new theoretical basis and practical tool for robustness evaluation / prediction of networks (or graphs) with unknown edge weights under structured perturbations. BRIEF DESCRIPTION OF THE DRAWINGS
[0066] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.
[0067] Figure 1 A schematic flow chart of a complex network robustness prediction method based on low-rank matrix completion provided in one embodiment of the present application;
[0068] Figure 2 Schematic diagram of numerical simulation verification results;
[0069] Figure 3 A schematic diagram of the structure of a computer device provided in one embodiment of the present application. DETAILED DESCRIPTION
[0070] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.
[0071] The purpose of this application is to provide a complex network robustness prediction method and system based on low-rank matrix completion, aiming to achieve the evaluation and prediction of the robustness of the network under structured disturbances.
[0072] In order to make the above-mentioned objects, features and advantages of the present application more obvious and easy to understand, the present application is further described in detail below in conjunction with the accompanying drawings and specific implementation methods.
[0073] In an exemplary embodiment, Figure 1 As shown, the complex network robustness prediction method based on low-rank matrix completion in this embodiment includes:
[0074] Step 1: Extract the pattern matrix from the network to be predicted, and initialize the estimated upper bound of the minimum rank and the estimated lower bound of the minimum rank of the pattern matrix; the elements in the pattern matrix include: fixed zero elements, general value elements and missing elements.
[0075] As an optional implementation, extracting a pattern matrix from the network to be predicted in step 1 includes:
[0076] Step 11: From the network to be predicted, obtain the dimension and zero-non-zero pattern of the pattern matrix reflecting the structure of the network to be predicted.
[0077] Step 12: Construct a pattern matrix based on the dimensions and the zero-nonzero patterns.
[0078] Specifically, the purpose of step 1 is to extract the pattern matrix from the network structure to be predicted, set initial conditions and parameters for the algorithm, and ensure that the algorithm can operate on specific network robustness determination / analysis problems.
[0079] The specific operation of step 1 includes: obtaining the dimensions n and m of the pattern matrix M reflecting its structure and its zero-non-zero pattern from the network to be predicted, where n is the number of rows of the pattern matrix and m is the number of columns of the pattern matrix. The acquisition method is as follows: n is the total number of nodes in the network to be predicted, and m is the sum of the number of externally driven nodes in the network to be predicted and n. If no node is externally driven, then m=n. Let M ij is the element in the i-th row and j-th column of M. When 1≤i,j≤n, there is an edge from node j to node i in the network to be predicted, and the edge is not disturbed, then M ij =*; when 1≤i,j≤n, the edge weight from node j to node i in the network to be predicted may be disturbed (before the disturbance, there may be no edge from node j to node i in the network to be predicted. At this time, the weight disturbance indicates that a new edge from node j to node i has been added), then M ij =? ; When node i is driven externally, 1≤i≤n, then M i,n+i =*. In addition, M ij is a fixed zero, that is, M ij =0.
[0080] Initialize two thresholds, namely r high and r low , rhigh is the estimated upper bound of the minimum rank of the pattern matrix M, r low is the estimated lower bound of the minimum rank of the pattern matrix M. Usually, r high can be set to n, and r low Can be set to 0. Input integer k, 1≤k≤n, k is the rank missing indicator, which means whether there is a value for the * element (the value of the perturbed edge weight) such that the rank of the pattern matrix M after perturbation does not exceed nk under general meaning (that is, for almost all the values of the * elements).
[0081] Step 2: Determine the low-rank matrix completion problem based on the fixed zero elements, general value elements, and missing elements, and calculate the common rank of the pattern matrix based on the bipartite graph associated with the pattern matrix.
[0082] As an optional implementation, step 2 includes:
[0083] Step 21: Obtain a set of fixed zero elements, a set of general value elements, and a set of missing elements in the pattern matrix.
[0084] Step 22: Based on the structure of the pattern matrix, construct a bipartite graph. Figure 2 The left and right vertices of the points correspond to the rows and columns of the pattern matrix, respectively.
[0085] Step 23: Based on the bipartite graph, use the Hopcroft-Karp algorithm to calculate the maximum number of matches.
[0086] Step 24: Define the universal rank of the pattern matrix as the rank that the pattern matrix can achieve by randomly taking values of the missing elements in the pattern matrix.
[0087] Specifically, the purpose of step 2 is to obtain the fixed zeros, general values, and missing elements in the pattern matrix M according to its structure, corresponding to the elements with values of 0, *, and ? in M, respectively, to obtain an equivalent low-rank matrix completion problem, and to calculate the common rank of the pattern matrix M through the bipartite graph associated with M.
[0088] The specific operations of step 2 include: obtaining the fixed zero element set Ω0 and the general value element set Ω in the pattern matrix M * And the missing element set Ω ? , which correspond to the positions of 0, *, and ? in M, respectively. The robustness analysis problem is equivalent to: determine whether the value of the missing element ? can be completed so that the rank of the completed pattern matrix M does not exceed nk. According to the structure of the pattern matrix M, a related bipartite graph G(M) is constructed. The left and right vertices of the bipartite graph correspond to the rows and columns of the pattern matrix M, respectively. There is an edge between the left vertex i and the right vertex j if and only if M i,n+i=*. Based on the bipartite graph G(M), the Hopcroft-Karp algorithm is used to calculate the maximum matching of G(M), denoted as mt(G(M)). The general rank of M is defined as the rank that can be achieved by randomly taking the value of the * element in M (the rest of the elements are 0), denoted as grank(M) (the general rank is also equal to the rank that can be achieved by taking the rank of the * element). According to matrix knowledge, grank(M) = mt(G(M)).
[0089] Step 3: Use the random sampling algorithm to verify the feasibility of the low-rank matrix completion problem based on the pattern matrix.
[0090] As an optional implementation, step 3 includes:
[0091] Step 31: Initialize the flag and iteration counter of the random sampling algorithm.
[0092] Step 32: Using a random sampling algorithm, randomly extract multiple column indexes from all columns of the pattern matrix to obtain an index set.
[0093] Step 33: Verify whether the index set constitutes a preservable basis of the pattern matrix, and determine the maximum number of matches of the matrix corresponding to the verified preservable basis.
[0094] Step 34: Check whether the tenable basis satisfies certain conditions.
[0095] Step 35: If yes, set the flag bit to 1 and end the iteration.
[0096] Step 36: If not, increase the iteration counter and return to "using a random sampling algorithm to randomly extract multiple column indexes from all columns of the pattern matrix to obtain an index set" to iterate; until a specific condition is met or the number of iterations reaches a preset upper limit, the iteration ends.
[0097] Step 37: Based on the flag at the end of the iteration, determine the feasibility of the low-rank matrix completion problem.
[0098] Specifically, step 3 includes:
[0099] (1) Initialization.
[0100] Purpose: Prepare the initial state required by the algorithm.
[0101] Operation: Set the flag to 0, indicating that no feasible solution has been found. Initialize the iteration counter ite to 0 to record the number of iterations.
[0102] (2) Random sampling.
[0103] Purpose: Randomly select a subset of columns from the set of columns in the pattern matrix for analysis.
[0104] Operation: In each iteration, from the pattern matrix M∈{0,*,?} n×m Randomly select n-1 different column indexes from the column set to form an index set
[0105] (3) Base verification can be maintained.
[0106] Purpose: Verify that the selected set of indices I forms a tenable basis for the pattern matrix M.
[0107] Operation: Check whether index set I satisfies in, is the pattern matrix obtained by replacing all ? elements with *, represent The submatrix is composed of columns indexed by I; grank() represents the common rank of the matrix.
[0108] (4) Calculate the maximum matching.
[0109] Purpose: Determine the maximum number of matchings of the matrix M[I] that can be verified to preserve basis correspondence.
[0110] Operation: Use the maximum bipartite graph matching algorithm to calculate the maximum matching number mt(G(M[I])) of M[I], where G(M[I]) is the bipartite graph associated with the matrix M[I]. The construction rule of the matrix M[I] is as follows: if the j-th column index j∈I of M, and the element M in M ij is missing (i.e. M ij =? ), then in the matrix M[I], the element M ij Replace with a general value*. If M ij If ∈I is a general value or fixed to zero, it remains unchanged in M[I]. In this way, for all j∈I, the matrix M[I] is obtained, which will be used for subsequent completion condition verification and completeness analysis.
[0111] (5)Condition check.
[0112] Purpose: Checks whether the selected tenable basis satisfies certain conditions.
[0113] Operation: For each column i∈J m \I, check the following conditions:
[0114] or and Where, B*={J n \w:w∈B}, B is formed by the set K with grank(M[K,I])=n-1 and |K|=n-1, and are the row index sets of the * and ? elements in the ith column, respectively, where M[K,I] represents a submatrix of M consisting of rows indexed by K and columns indexed by J.
[0115] (6)Iterative update.
[0116] Operation: If a holdable basis that meets the conditions is found, set flag to 1 and end the iteration. Otherwise, increase the iteration counter ite and return to random sampling to continue the iteration.
[0117] (7) The algorithm terminates.
[0118] Condition: When the number of iterations reaches the preset upper limit T m Or when flag is set to 1, the algorithm terminates.
[0119] (8)Output.
[0120] The algorithm finally outputs a flag. If the flag is 1, it means that the LRMC problem of the given structured pattern matrix is feasible for almost all general element realizations; if the flag is 0, it means that the problem is infeasible.
[0121] Step 4: Use the k-order maintainable basis to make a completeness determination based on the pattern matrix.
[0122] As an optional implementation, step 4 includes:
[0123] Step 41: Set the dimension of the completed target rank and pattern matrix.
[0124] Step 42: Identify a set of column subsets in the pattern matrix that form a k-order tenable basis.
[0125] Step 43: Based on the k-order preservable basis, construct a submatrix from the pattern matrix.
[0126] Step 44: Analyze the rank condition of the submatrix to determine whether there is a completion solution so that the rank of the completed submatrix is equal to nk; n is the number of rows of the pattern matrix.
[0127] Step 45: Perform rank condition verification on the completed submatrix to ensure that it is indeed nk.
[0128] Step 46: Logically integrate the rank condition verification results of all k-order preservable bases to form a comprehensive judgment on the completeness of the entire pattern matrix.
[0129] Step 47: If the condition rank(M[K,I])=nk is met, then “completion is possible” is output, indicating the possibility of a completion solution that meets the rank condition; M[K,I] represents the submatrix, and rank() represents the rank of the matrix.
[0130] Step 48: If there is no k-order preservable basis that satisfies the condition, output “Completion is impossible”.
[0131] Specifically, step 4 includes:
[0132] (1) Initialization.
[0133] Determine the target rank k: Set the target rank k of the completion, which is the rank that the matrix is expected to reach after completion.
[0134] Determine the pattern matrix dimension: Given a pattern matrix M∈{0,*,?} n×m .
[0135] (2) The k-th order can preserve the identification of the basis.
[0136] Purpose: Identify a specific subset of columns in the pattern matrix M This subset forms a k-order preservable basis.
[0137] Condition: A k-order preservable basis means that when the elements in these columns are completed to general values*, the rank of the completed matrix can be guaranteed to be nk.
[0138] (3) Submatrix construction.
[0139] Subset K selection: select a subset of n rows
[0140] Submatrix formation: Using the identified k-order preservable basis I, construct a submatrix M[K,I] from the pattern matrix M.
[0141] (4) Analysis of complementability conditions.
[0142] For the submatrix M[K,I], its rank condition is analyzed to determine whether there is a completion solution so that the rank of the completed submatrix is equal to nk.
[0143] (5) Rank condition verification.
[0144] Rank verification: Perform rank condition verification on the completed submatrix M[K,I] to ensure that its rank is indeed nk.
[0145] (6) Logical integration of judgment results: Logically integrate the verification results of all k-order preservable bases to form a comprehensive judgment on the completeness of the entire pattern matrix.
[0146] (7) Output judgment result: If the rank of the submatrix M[K,I] satisfies the condition rank(M[K,I]) = nk, the algorithm outputs "Completion possible", indicating the possibility of a completion solution that satisfies the given rank condition. If there is no k-order preservable basis that satisfies the condition, the algorithm outputs "Completion impossible".
[0147] Step 5: Use the maximum matching completion condition verification to verify whether the pattern matrix meets the specific completion condition.
[0148] As an optional implementation, step 5 includes:
[0149] Step 51: Initialize the target rank, the estimated upper bound of the minimum rank, and the estimated lower bound of the minimum rank.
[0150] Step 52: Determine the optimal value of the target rank through a binary search method, and calculate the intermediate value based on the rank estimate upper bound and the rank estimate lower bound.
[0151] Step 53: Based on the median value, randomly select nr mid Different column indexes constitute a set; r mid is the middle value.
[0152] Step 54: Analyze the completeness of the matrix corresponding to the pattern matrix using the selected k-order preservable basis.
[0153] Step 55: Construct a bipartite graph associated with the matrix corresponding to the pattern matrix, and calculate the maximum number of matches of the bipartite graph.
[0154] Step 56: Based on the maximum matching number and the intermediate value, determine whether the completion condition is met.
[0155] Step 57: If the completion condition is met and a completion solution that meets the completion condition is found, then r high =r mid -1, and return to step 52; until r high <r low When r high is the estimated upper bound of the minimum rank, r low is an estimated lower bound for the minimum rank.
[0156] Step 58: If the completion condition is not met: then r low =r mid +1, and return to step 52 until r high <r low When , the iteration terminates.
[0157] Step 59: At the end of the iteration, output r = r high +1; r is the estimate of the minimum rank, r = r high+1 means that for the pattern matrix, there exists a completion scheme so that the rank of the completed matrix does not exceed r.
[0158] Specifically, step 5 includes:
[0159] (1) Initialization parameters.
[0160] Determine the pattern matrix dimension: Determine the pattern matrix M∈{0,*,?} n×m The dimensions n and m.
[0161] Determine target rank k: Set the target rank k for completion.
[0162] Rank estimation upper and lower bounds: Initialize r high for in, is the rank of the submatrix consisting of non-zero elements in the pattern matrix M; initialize r low is 0.
[0163] (2) Binary search.
[0164] Intermediate value calculation: Determine the optimal value of the target rank k through the binary search method and calculate the intermediate value r mid =[(r high +r low ) / 2].
[0165] (3) Selection of k-th order preservable basis.
[0166] Column index collection: based on the current r mid Value, randomly selected nr mid different column indices constitute set I.
[0167] (4) Analysis of base rank conditions can be maintained.
[0168] Using the selected k-order preservable basis I, we analyze the complement of the matrix M[I] corresponding to the pattern matrix M, with the goal of making rank(M[I])≤r mid .
[0169] (5) Maximum matching calculation.
[0170] Bipartite graph construction: Construct a bipartite graph G(M[I]) associated with the matrix M[I].
[0171] Maximum number of matches: Calculate the maximum number of matches mt(G(M[I])) of G(M[I]).
[0172] (6) Verification of completion conditions.
[0173] Completion condition: If mt(G(M[I]))=r mid , then the completion condition is satisfied.
[0174] (7) Update the threshold.
[0175] Satisfy the conditions: If a completion solution that satisfies the conditions is found, then r high =r mid -1.
[0176] The condition is not met: Otherwise, r low =r mid +1.
[0177] (8) Iteration termination.
[0178] Iteration termination condition: r high <r low When , the iteration terminates.
[0179] (9) Output results
[0180] Minimum rank estimation: final output r = r high +1 means that for a given pattern matrix M, there exists a completion scheme such that the rank of the completed matrix does not exceed r.
[0181] Step 6: Determine the robustness of the network to be predicted; the robustness is rank k robust or rank k non-robust.
[0182] As an optional implementation, step 6 includes:
[0183] Step 61: Check the binary search and completion conditions to verify whether the convergence condition is met; the convergence condition is to reach a predetermined number of iterations or to find a completion solution that meets the condition.
[0184] Step 62: If the feasibility verification and the completeness determination are passed, the determination result is output.
[0185] As an optional implementation, step 62 includes:
[0186] Step 621: If the completion condition is met, "rank k is not robust" is output, indicating that for a given pattern matrix, there is at least one completion scheme so that the rank of the completed matrix does not exceed the predetermined rank nk, and the network with unknown edge weights is not robust under structured perturbations.
[0187] Step 622: If the completion condition is not met, "rank k robust" is output, indicating that under the current conditions, no completion solution that meets the rank condition is found, and the rank of the network with unknown edge weights is not lower than n-k+1 under structured perturbations, which is robust relative to the preset rank perturbation index.
[0188] In an exemplary embodiment, the method of the present application is verified using four methods and a random network (random graph) containing 50 nodes.
[0189] The observed elements (marked with *) account for a percentage ρ* of the total elements of the matrix, which varies between 0.1 and 0.9, and their positions in the matrix are determined randomly.
[0190] (1) Random matrix generation:
[0191] For each value of ρ*, 500 random matrices are generated, where the values of the * elements are randomly chosen from the interval [-0.5, 0.5].
[0192] (2) Implementation steps:
[0193] The method of the present application is used to determine the completeness of each randomly generated matrix.
[0194] (3) Parameter settings:
[0195] When implementing the method of the present application, the parameter T m =30, and The maximum sampling cardinality for the lower bound estimate in the algorithm; The maximum sampling base used to determine whether a specific completion condition is met.
[0196] (4) Effect comparison and analysis:
[0197] In order to demonstrate the effect of the method of the present application, it is implemented in Figure 2 In the paper, the proposed method is compared with the existing Nuclear Norm Minimization (NNM) (implemented by SemiDefinite Programming version 3 (SDPT3)) and Singular Value Thresholding (SVT) algorithms.
[0198] The upper bound version of the method of the present application provides a minimum complementary rank estimate comparable to the NNM and SVT methods.
[0199] The lower bound version of the proposed method generally returns lower rank estimates than other methods, which demonstrates its conservatism and reliability in predicting the robustness of complex networks.
[0200] (5) Advantages of the method of the present application:
[0201] The advantage of the method of the present application lies in its independence from the network edge weights. The method of the present application only requires that the network edge weights are unknown but obey an independent distribution, and the set of disturbed edges is given, but the edge weights can be disturbed arbitrarily, without any prior knowledge about their exact weights. Even in the case of incomplete weights, the method of the present application can provide reliable prediction results, providing a solid basis for the robustness prediction of complex networks.
[0202] Conclusion: Through the above verification, it is determined that the method of this application shows effectiveness and accuracy in network robustness prediction problems, proving its application potential
[0203] This application also conducts numerical simulation experiments to verify the general properties, including:
[0204] (1) Random matrix generation:
[0205] First, a pattern matrix M of size n×n is randomly generated, and then 100 realizations of M are generated by randomly selecting values in the interval [-0.5, 0.5] for the * element in M.
[0206] (2) Implementation steps:
[0207] For each realization of M, use a naive combinatorial search to find out whether there is a completion X such that rank(X)≤r. Specifically, this naive combinatorial search assumes that there are r columns of X, denoted by X l1 ,...X lr , So that for each i∈{1,...,n}\{l1,...,lr}, there exists (a i1 ,...a ir )∈Cr such that Xi=a i1 X l1 +...a ir X lr .
[0208] (3) Solving polynomial equations:
[0209] For each group We verify whether this assumption is feasible by solving a set of n (nr) polynomial equations, using the Python package Sympy. This process iterates over all possible {l1, ..., lr} until a solution is found, or there is no solution at all.
[0210] (4) Computational complexity considerations:
[0211] Since the computational complexity of this combinatorial search strategy is exponential in n and r, we only implement it on small-scale problems, more specifically, when n = 4, 5, 6 and r = 2, 3.
[0212] (5) Result recording and analysis:
[0213] In particular, the results for the following three representative pattern matrices (M1, M2, M3) are recorded, and it can be seen from Table 1 that for each pattern matrix, all 100 randomly generated realizations obtain the same robustness results of the corresponding LRMC. This verifies the versatility of the method of this application.
[0214] Table 1 Robustness prediction results on small-scale networks (100 random tests)
[0215]
[0216] In an exemplary embodiment, a complex network robustness prediction system based on low-rank matrix completion is provided, comprising:
[0217] The matrix extraction module is used to extract the pattern matrix from the network to be predicted and initialize the estimated upper bound and the estimated lower bound of the minimum rank of the pattern matrix; the elements in the pattern matrix include: fixed zero elements, general value elements and missing elements.
[0218] The bipartite graph determination module is used to determine the low-rank matrix completion problem based on the fixed zero elements, general value elements and missing elements, and calculate the common rank of the pattern matrix based on the bipartite graph associated with the pattern matrix.
[0219] The feasibility verification module is used to verify the feasibility of the low-rank matrix completion problem based on the pattern matrix using a random sampling algorithm.
[0220] The completability determination module is used to perform completability determination based on a k-order maintainable basis and a pattern matrix.
[0221] The completion condition judgment module is used to verify whether the pattern matrix satisfies a specific completion condition by using the maximum matching completion condition verification.
[0222] The robustness prediction module is used to determine the robustness of the network to be predicted; the robustness is rank k robust or rank k non-robust.
[0223] As an optional implementation, extracting a pattern matrix from the network to be predicted includes:
[0224] From the network to be predicted, the dimension and zero-nonzero pattern of the pattern matrix reflecting the structure of the network to be predicted are obtained.
[0225] Construct a pattern matrix based on the dimensions and the zero-nonzero pattern.
[0226] In an exemplary embodiment, a computer device is provided, including: a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement a complex network robustness prediction method based on low-rank matrix completion.
[0227] In an exemplary embodiment, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, a complex network robustness prediction method based on low-rank matrix completion is implemented.
[0228] In an exemplary embodiment, a computer program product is provided, comprising a computer program, which, when executed by a processor, implements a complex network robustness prediction method based on low-rank matrix completion.
[0229] In an exemplary embodiment, a computer device is provided. The computer device may be a server or a terminal. The internal structure diagram thereof may be as follows: Figure 3 As shown. The computer device includes a processor, a memory, an input / output interface (Input / Output, referred to as I / O) and a communication interface. Among them, the processor, the memory and the input / output interface are connected through a system bus, and the communication interface is connected to the system bus through the input / output interface. Among them, the processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program and a database. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The input / output interface of the computer device is used to exchange information between the processor and an external device. The communication interface of the computer device is used to communicate with an external terminal through a network connection. When the computer program is executed by the processor, a complex network robustness prediction method based on low-rank matrix completion is implemented.
[0230] Those skilled in the art will understand that Figure 3 The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.
[0231] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with relevant regulations.
[0232] Those of ordinary skill in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to the memory, database or other medium used in the embodiments provided in the present application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM may be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM).
[0233] The database involved in each embodiment provided in this application may include at least one of a relational database and a non-relational database. The non-relational database may include a distributed database based on blockchain, etc., but is not limited thereto. The processor involved in each embodiment provided in this application may be a general-purpose processor, a central processing unit, a graphics processor, a digital signal processor, a programmable logic device, a data processing logic device based on quantum computing, etc., but is not limited thereto.
[0234] The technical features of the above embodiments may be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0235] This article uses specific examples to illustrate the principles and implementation methods of this application. The description of the above embodiments is only used to help understand the method and core ideas of this application. At the same time, for those skilled in the art, according to the ideas of this application, there will be changes in the specific implementation methods and application scope. In summary, the content of this specification should not be understood as limiting this application.
Claims
1. A complex network robustness prediction method based on low-rank matrix completion, characterized in that: The complex network robustness prediction method based on low-rank matrix completion includes: Extracting a pattern matrix from the network to be predicted, and initializing an estimated upper bound of the minimum rank and an estimated lower bound of the minimum rank of the pattern matrix; the elements in the pattern matrix include: fixed zero elements, general value elements, and missing elements; Determine the low-rank matrix completion problem based on fixed zero elements, general-valued elements, and missing elements, and compute the common rank of the pattern matrix based on the bipartite graph associated with the pattern matrix; Using random sampling algorithm, the feasibility of low-rank matrix completion problem is verified based on pattern matrix; Using a k-order maintainable basis, the complementability determination is performed based on the pattern matrix; Use the maximum matching completion condition verification to verify whether the pattern matrix meets the specific completion condition; Determine the robustness of the network to be predicted; the robustness is rank k robust or rank k non-robust.
2. The complex network robustness prediction method based on low-rank matrix completion according to claim 1, characterized in that: Extract the pattern matrix from the network to be predicted, including: From the network to be predicted, obtain the dimension and zero-non-zero pattern of the pattern matrix reflecting the structure of the network to be predicted; Construct a pattern matrix based on the dimensions and the zero-nonzero pattern.
3. The complex network robustness prediction method based on low-rank matrix completion according to claim 2, characterized in that: Based on the fixed zero elements, general value elements and missing elements, determine the low-rank matrix completion problem, and based on the bipartite graph associated with the pattern matrix, calculate the common rank of the pattern matrix, including: Obtain a set of fixed zero elements, a set of general value elements, and a set of missing elements in a pattern matrix; According to the structure of the pattern matrix, a bipartite graph is constructed, and the left vertices and right vertices of the bipartite graph correspond to the rows and columns of the pattern matrix respectively; Based on the bipartite graph, the Hopcroft-Karp algorithm is used to calculate the maximum number of matches; The universal rank of the pattern matrix is defined as the rank that the pattern matrix can achieve by randomly taking values of the missing elements in the pattern matrix.
4. The complex network robustness prediction method based on low-rank matrix completion according to claim 3, characterized in that: Using random sampling algorithm, the feasibility of low-rank matrix completion problem is verified based on pattern matrix, including: Initialize the flag and iteration counter of the random sampling algorithm; Using the random sampling algorithm, a plurality of column indexes are randomly extracted from all columns of the pattern matrix to obtain an index set; Verify whether the index set forms a preservable basis of the pattern matrix, and determine the maximum number of matches of the matrix corresponding to the verified preservable basis; Check whether the tenable basis satisfies certain conditions; If yes, set the flag bit to 1 and end the iteration; If not, the iteration counter is increased, and the process returns to "using the random sampling algorithm to randomly extract multiple column indexes from all columns of the pattern matrix to obtain an index set" for iteration; until a specific condition is met or the number of iterations reaches a preset upper limit, the iteration ends; Based on the flag at the end of the iteration, the feasibility of the low-rank matrix completion problem is determined.
5. The complex network robustness prediction method based on low-rank matrix completion according to claim 4, characterized in that: The completion determination is performed based on the pattern matrix based on the k-order maintainable basis, including: Set the target rank and dimension of the pattern matrix for completion; Identify a set of column subsets in the pattern matrix that form a k-order tenable basis; Based on the k-order preservable basis, a submatrix is constructed from the pattern matrix; Analyze the rank condition of the submatrix to determine whether there is a completion solution so that the rank of the completed submatrix is equal to nk; n is the number of rows of the pattern matrix; Perform rank condition verification on the completed submatrix to ensure that it is indeed nk; The rank condition verification results of all k-order preservable bases are logically integrated to form a comprehensive judgment on the completeness of the entire pattern matrix; If the condition rank(M[K,I])=nk is met, then "Completion is possible" is output, indicating the possibility of a completion solution that meets the rank condition; M[K,I] represents the submatrix, and rank() represents the rank function; If there is no k-order basis that satisfies the condition, the output is "Completion is impossible".
6. The complex network robustness prediction method based on low-rank matrix completion according to claim 5, characterized in that: Use the maximum matching completion condition verification to verify whether the pattern matrix meets specific completion conditions, including: Initialize the target rank, the estimated upper bound of the minimum rank, and the estimated lower bound of the minimum rank; The optimal value of the target rank is determined by a binary search method, and the intermediate value is calculated based on the rank estimate upper bound and the rank estimate lower bound; Based on the median value, randomly select nr mid Different column indexes constitute a set; r mid is the middle value; Using the selected k-order preservable basis, the complement of the matrix corresponding to the pattern matrix is analyzed; Construct a bipartite graph associated with the matrix corresponding to the pattern matrix and calculate the maximum number of matches of the bipartite graph; Based on the maximum number of matches and the middle value, determine whether the completion condition is met; If the completion condition is met and a completion solution that meets the completion condition is found, then r high =r mid -1, and returns "determine the optimal value of the target rank through a binary search method, and calculate the intermediate value based on the rank estimate upper bound and the rank estimate lower bound"; until r high <r low When r high is the estimated upper bound of the minimum rank, r low is the estimated lower bound of the minimum rank; If the completion condition is not met: then r low =r mid +1, and return "Determine the optimal value of the target rank by binary search method, and calculate the intermediate value based on the rank estimate upper bound and rank estimate lower bound"; until r high <r low When , the iteration terminates; At the end of the iteration, the output r = r high +1; r is the minimum rank estimate, r = r high +1 means that for the pattern matrix, there exists a completion scheme so that the rank of the completed matrix does not exceed r.
7. The complex network robustness prediction method based on low-rank matrix completion according to claim 6, characterized in that: Determine the robustness of the network to be predicted, including: Check the binary search and completion conditions to verify whether the convergence conditions are met; the convergence conditions are to reach the predetermined number of iterations or to find a completion solution that meets the conditions; If the feasibility verification and completeness judgment are passed, the judgment result is output.
8. The complex network robustness prediction method based on low-rank matrix completion according to claim 7, characterized in that: Output judgment results, including: If the completion condition is met, "rank k is not robust" is output, indicating that for a given pattern matrix, there is at least one completion scheme so that the rank of the completed matrix does not exceed the predetermined rank nk. The network with unknown edge weights is not robust under structured perturbations. If the completion condition is not met, "rank k robust" is output, indicating that under the current conditions, no completion solution that meets the rank condition is found. The rank of the network with unknown edge weights is not less than n-k+1 under structured perturbations, which is robust relative to the preset rank perturbation index.
9. A complex network robustness prediction system based on low-rank matrix completion, characterized in that: The complex network robustness prediction system based on low-rank matrix completion includes: A matrix extraction module is used to extract a pattern matrix from the network to be predicted, and initialize an estimated upper bound and an estimated lower bound of the minimum rank of the pattern matrix; the elements in the pattern matrix include: fixed zero elements, general value elements and missing elements; A bipartite graph determination module is used to determine the low-rank matrix completion problem based on each fixed zero element, general value element and missing element, and calculate the common rank of the pattern matrix based on the bipartite graph associated with the pattern matrix; A feasibility verification module is used to verify the feasibility of the low-rank matrix completion problem based on the pattern matrix using a random sampling algorithm; A completability determination module, used for performing a completability determination based on a pattern matrix using a k-order maintainable basis; A completion condition judgment module is used to verify whether the pattern matrix satisfies a specific completion condition by using the maximum matching completion condition verification; The robustness prediction module is used to determine the robustness of the network to be predicted; the robustness is rank k robust or rank k non-robust.
10. The complex network robustness prediction system based on low-rank matrix completion according to claim 9, characterized in that: Extract the pattern matrix from the network to be predicted, including: From the network to be predicted, obtain the dimension and zero-non-zero pattern of the pattern matrix reflecting the structure of the network to be predicted; Construct a pattern matrix based on the dimensions and the zero-nonzero pattern.
