Bipartite graph-oriented maximum balance k-biplex search method
By using the MBKBP model, an interleaved search framework, and a pruning strategy, the problems of noise processing and high computational overhead in maximum equilibrium k-biplex search are solved, and efficient and flexible maximum equilibrium k-biplex search is achieved.
Patent Information
- Application Number
- CN202511708939.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-11-20
- Publication Date
- 2026-02-27
AI Technical Summary
Existing technologies cannot effectively handle noise and incomplete data when solving the maximum equilibrium biclique search problem, and have huge computational overhead, especially with poor scalability in large bipartite graph data.
We propose a maximum balance k-biplex (MBKBP) model, which combines a scale-constrained staggered search framework with three types of pruning optimization strategies, including branch pruning, vertex pruning, and graph reduction pruning, to optimize the search process.
It significantly improves the efficiency of maximum balanced k-biplex search, increasing the computation speed by three orders of magnitude, adapting to noisy and incomplete data, and has greater applicability.
Smart Images

Figure CN121579734A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The application belongs to the technical field of graph data mining, and particularly relates to a maximum balanced k-biplex search method for bipartite graphs. BACKGROUND
[0002] Many relationships among different entities in the real world can be effectively modeled by bipartite graphs, including gene co-expression networks, collaboration networks, customer-product networks, and user-page networks. With the increasing popularity of such applications, researchers have invested a lot of effort in studying many basic problems in the management and analysis of bipartite graph data. Among them, the maximum balanced biclique search problem has received extensive attention.
[0003] Formally, a bipartite graph is composed of two disjoint vertex sets and , where the edge set connects one vertex in to one vertex in . Given a bipartite graph , a subset of vertex set is defined as (i.e. , indicating that is a set of part of vertices in ), and a subset of vertex set is defined as (i.e. , indicating that is a set of part of vertices in ), and a subgraph of bipartite graph is defined as , if there is an edge between any pair of vertices in subgraph , then subgraph is called a biclique. When the number of vertices on both sides of subgraph is the same, subgraph is called a balanced biclique. The maximum balanced biclique (MBBC for short) refers to the balanced biclique with the largest number of vertices in bipartite graph .
[0004] However, the MBBC model faces two major limitations in practical application: first, the model must ensure that the two sides of the vertex are "full-to-full" fully connected. However, real data is generally noisy and missing, and the strict full connectivity condition often cannot be met. In contrast, the "majority-to-majority" connection mode, which allows some missing edges between vertices, is more applicable. Second, the model strictly requires the number of vertices on both sides to be absolutely equal, and lacks tolerance for approximate balance, limiting the scope of the model.
[0005] Currently, there is only a solution algorithm for MBBC in the academic community (C. Lu, L. Chengfei, Z. Rui, X. Jiajie, and L. Jianxin. Efficient exact algorithms for maximum balanced biclique search in bipartite graphs. In Proceedings of SIGMOD, pages 248-260, 2021). Due to the strong dependence of this algorithm on the "full-to-full" connectivity feature, it cannot be directly transferred to MBKBP calculation. Another benchmark method is to use the current most advanced maximal k-biplex enumeration algorithm (Q. Dai, R.-H. Li, D. Cui, M. Liao, Y.-X. Qiu, and G. Wang. Efficient maximal biplex enumerations with improved worst-case time guarantee. In Proceedings of SIGMOD, volume 2, pages 1-26, 2024) to enumerate all maximal k-biplexes in the bipartite graph. For each maximal k-biplex, check whether it satisfies the balance condition. During the enumeration process, continuously record the currently found balanced k-biplex with the most vertices, and after the enumeration is completed, the final result can be obtained. Although this method is relatively intuitive in concept, the computational overhead is extremely large, and the scalability is poor when dealing with large bipartite graphs. The core problem is that this benchmark method needs to traverse all possible maximal balanced k-biplexes, resulting in a large amount of unnecessary computation.
[0006] Therefore, in order to make the balanced k-biplex model truly have landing value, it is urgent to develop a new technology specifically for efficiently solving the maximum balanced k-biplex (MBKBP). SUMMARY
[0007] The present application aims at solving the problems raised in the background art, and proposes a maximum balanced k-biplex search method for bipartite graphs.
[0008] The present application proposes a brand new model - maximum balanced k-biplex, and designs a method for efficiently searching maximum balanced k-biplex in bipartite graphs.
[0009] The technical solution for realizing the present application is as follows:
[0010] Step 1: Propose a maximum balanced k-biplex (MBKBP) model. For a given bipartite graph and an integer , define a subgraph of the bipartite graph ( , i.e. is a subset of the vertex set , , i.e. is a subset of the vertex set ), if each vertex in the subgraph is at most missing edges to the opposite vertex set, then the subgraph is called k-biplex; define as the balance tolerance set by the user, if further satisfying that the difference between the number of vertices on both sides of the subgraph does not exceed , then the subgraph is called balanced k-biplex. MBKBP represents the largest balanced k-biplex in terms of the total number of vertices.
[0011] Step 2: Based on the MBKBP model, a scale-restricted interleaved search framework is proposed. The benchmark method determines the maximum balanced k-biplex by enumerating all the maximal k-biplexes in the bipartite graph. However, this method has a huge computational overhead, and the root cause lies in the large number of maximal k-biplexes obtained by traversal. However, finding MBKBP does not require enumerating all the maximal k-biplexes. Specifically, for the currently discovered balanced k-biplex with the largest number of vertices, the search space can be divided into two subsets: one is the existence of k-biplex with a larger scale, and the other is the existence of k-biplex with a smaller scale. By deleting the latter, the computational resources are concentrated on the potential candidates, thereby improving the search efficiency. To achieve this goal, step 2 can be divided into 4 small steps:
[0012] Step 2.1: Propose a benchmark method for the MBKBP search problem;
[0013] Step 2.2: Introduce the concept of search space;
[0014] Step 2.3: Based on the search space, a novel scale-constrained staggered search framework is proposed. This framework iteratively generates a series of smaller search spaces, ensuring that the input graph... The maximum equilibrium k-biplex (MBKBP) must be contained within the maximum equilibrium k-biplex identified in these smaller search spaces.
[0015] Step 2.4: Searching the problem based on MBKBP By balancing the characteristics, this invention further reduces the size of the search space.
[0016] Because the resulting search spaces are much smaller than the original graph and are limited in number, this framework significantly improves search performance.
[0017] Step 3: Design three types of pruning rules to eliminate unnecessary computations. To improve search performance, this invention proposes three types of optimized pruning strategies: branch pruning, vertex pruning, and graph reduction pruning, to jointly improve search efficiency.
[0018] Step 3.1: Branch pruning can identify and delete invalid branches in advance, avoiding subsequent calculations of worthless branches;
[0019] Step 3.2: Vertex pruning can accurately locate vertices within a branch that are definitely not included in the optimal result, reducing the participation of redundant vertices;
[0020] Step 3.3: Graph reduction pruning identifies vertices that cannot appear in the maximum balanced k-biplex (MBKBP) before the enumeration process begins, thus reducing the search space from the source.
[0021] The significant advancement of this invention compared to existing technologies lies in:
[0022] 1. Model Advantages: Compared with MBBC, MBKBP has advantages in two aspects: (1) By allowing a maximum of k missing neighboring edges, MBKBP relaxes the strict connectivity requirements of MBBC, making it more robust to noise and incomplete data. (2) User-defined balanced tolerance The introduction of this feature allows for a controllable balance between the scales on both sides, which further enhances the flexibility and applicability of the model.
[0023] 2. Algorithm Advantages: This invention proposes a scale-constrained staggered search framework and three types of pruning optimization rules, which can significantly reduce the search space. In real graph data, compared to benchmark algorithms, its computational speed is improved by up to three orders of magnitude, fully demonstrating its efficiency and practicality in bipartite graph analysis.
[0024] For more clearly illustrating the functional characteristics and structural parameters of the present application, the following further describes the present application in conjunction with the accompanying drawings and specific embodiments. BRIEF DESCRIPTION OF DRAWINGS
[0025] Figure 1 For bipartite graph G;
[0026] Figure 2 For scale-limited interleaved search framework schematic diagram;
[0027] Figure 3 For traversed maximum k-biplex schematic diagram;
[0028] Figure 4 For enumeration pruning strategy schematic diagram;
[0029] Figure 5 For graph reduction pruning strategy schematic diagram. DETAILED DESCRIPTION
[0030] The technical solutions in the embodiments of the present application will be clearly and completely described below in conjunction with the accompanying drawings in the embodiments of the present application. Obviously, the described embodiments are only some of the embodiments of the present application, but not all the embodiments of the present application; based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative labor fall within the scope of the present application.
[0031] The present application proposes a new model, Maximum Balanced k-Biplex (MBKBP), based on k-biplex structure. Specifically, for a given bipartite graph G = (A, B, E) and an integer k, , define the subgraph H = (A', B', E') of bipartite graph G, i.e. , (i.e. , is a subset of vertex set A, , is a subset of vertex set B), if each vertex in subgraph H is at most missing k edges in the opposite vertex set, then the subgraph H is called k-biplex; define as the balance tolerance set by the user, if further satisfying that the difference between the number of vertices on both sides of subgraph H does not exceed , then the subgraph H is called balanced k-biplex. MBKBP represents the balanced k-biplex with the largest total number of vertices.
[0032] Step 1 Set the maximum balanced k-biplex corresponding to the MBKBP model;
[0033] Set all graphs as undirected and unweighted bipartite graphs where and are two disjoint vertex sets, is the edge set; where, and denote and , respectively, and denotes the total vertex set, and the subset of vertex set is defined as ; that is, denotes is a set of part of vertices in ; the subset of vertex set is defined as ; that is, denotes is a set of part of vertices in ; is the cardinality symbol of a set, representing the number of vertices in a vertex set, for example, is the number of vertices in vertex set , is the number of vertices in vertex set . In addition, n represents the total number of vertices, and m represents the total number of edges; for each vertex ( ), the neighbor of vertex ( ) is denoted as ; , that is, the neighbor is a set of all vertices in the opposite vertex set directly connected to the corresponding vertex through an edge; the degree of vertex ( ) is defined as , and correspondingly, , that is, the number of vertices in the neighbor; first, the definition of k-biplex is given:
[0034] Definition 1: k-biplex: in a bipartite graph , given a positive integer , the subset of vertex set is , that is, denotes is a set of part of vertices in ; the subset of vertex set is , that is, denotes is The set of vertices in the middle, if satisfying:
[0035] Each vertex in The interior has at most k missing adjacent edges, and Each vertex in A graph is called a bipartite graph if it has at most k missing adjacent edges. Derived subgraph For a k-biplex;
[0036] Given the user-defined balance tolerance , For positive integers:
[0037] Definition 2: Balanced k-biplex: if It satisfies the k-biplex condition, and the difference in the number of vertices on both sides does not exceed 1 / 2. ,Right now Then it is called an derived subgraph. for Balance k-biplex;
[0038] Because many practical applications require vertex sets and The number of vertices in the set is not less than a certain fixed threshold, therefore constraints are set on the size of the vertex sets on both sides, denoted as . and ,Right now and By imposing size constraints, smaller sizes are filtered out. Balance k-biplexes; furthermore, for a given positive integer ,when and hour, The balanced k-biplex is connected; therefore, to ensure the obtained Balanced k-biplexes are connected. and .
[0039] The goal is to find the one with the largest number of vertices. A balanced k-biplex is defined as follows:
[0040] The problem is defined as: maximum Maximum Balanced k-Biplex (MBKBP): Given a bipartite graph A positive integer User-defined balance tolerance Lower bound of the size of the left vertex set and the lower bound of the right vertex set size bipartite graph The largest in A balanced k-biplex refers to a bipartite graph. a subgraph ,satisfy for The most central vertex Balance k-biplex.
[0041]
Example 1
[0042] Step 2: Based on the MBKBP model, a scale-constrained staggered search framework is proposed;
[0043] Step 2.1: Determine the baseline method. As mentioned earlier, the problem of enumerating the maximum k-biplex has been extensively studied in relevant literature. For the MBKBP search problem, the following baseline method can be formed: First, enumerate all maximal k-biplexes using the MBKBPEnumAll algorithm; second, for each enumerated maximal k-biplex, verify whether it satisfies... Balance condition; after enumeration, the maximum value of the input bipartite graph is obtained. Balanced k-biplex (MBKBP).
[0044] The enumeration algorithm uses a branch and bound search framework, defining the search branch as... Each search branch consists of three vertex sets. It means, that is , The definition of a set is as follows:
[0045] Partial set :in and Each represents a partial set the left and right vertex sets in the candidate set , represent vertices that must be contained in any k-biplex within the corresponding branch;
[0046] candidate set : where and represent the left and right vertex sets in the candidate set , i.e. , vertices can be used to extend the vertex set of the partial set ;
[0047] exclusion set : where and represent the left and right vertex sets in the exclusion set , i.e. , vertices represent vertices that are not considered within the corresponding branch;
[0048] For a branch , the size-restricted interleaved search framework iteratively selects one vertex in to extend Subsequently, the branch is split into two sub-branches and : for the branch that does not contain , and for the branch that contains ; and the process is repeated until all vertices in are traversed.
[0049] The reference method of the present application is denoted as the MBKBPEnumAll algorithm, which is used to enumerate all maximal balanced k-biplexes. When the algorithm is executed, it first initializes the variable to an empty set, and represents the maximal balanced k-biplex (MBKBP) found so far; then the MBKBPSearch procedure is called to search for the maximal balanced k-biplex (MBKBP);
[0050] In the MBKBPSearch procedure, if the left candidate vertex set and the right candidate vertex set , as well as the left exclusion vertex set and the right exclusion vertex set are all empty, it indicates that the current subgraph is a maximal k-biplex; at this time, it is necessary to check whether the maximal k-biplex satisfies the balance condition, i.e. and detect whether the size constraint is satisfied simultaneously, i.e. and ; if both are satisfied and the size of the current is less than , then is updated to ; if not, find a vertex v in with the most non-neighbors in the graph G, if the number of non-neighbors of v exceeds k, select a non-neighbor w of v, and generate two branches containing w and not containing w, respectively, and recursively call the MBKBPSearch process; if the number of non-neighbors of v does not exceed k, find a vertex v in with the least non-neighbors in the graph G, and then the algorithm will select vertices one by one from to generate branches.
[0051] Although the benchmark method follows the current most advanced maximum k-biplex enumeration strategy, it still needs to exhaust all the maximum k-biplexes in the graph, and when facing large-scale graph data, the computational overhead is huge and the efficiency is low, so it is urgent to optimize it to improve the search efficiency.
[0052] Step 2.2 uses the concept of search space to divide the search space into two subsets according to the size;
[0053] The benchmark method determines the MBKBP by enumerating all the maximum k-biplexes in the bipartite graph, which raises a key question: Is it necessary to enumerate all the maximum k-biplexes? The answer is no. In the ideal case, define the largest k-biplex found so far as , if there is a mechanism to determine that the size of a certain type of candidate k-biplex cannot exceed , then the algorithm can completely skip the enumeration of this type of k-biplex.
[0054] In other words, the obtained in each round of search will divide the search space into two subsets: one is the maximum k-biplex with a size greater than ; the other is the maximum k-biplex with a size less than ; by omitting the enumeration of the latter subset, the search framework can significantly improve the performance of MBKBP search; to realize the above idea, the present application first proposes the concept of search space, which corresponds to:
[0055] Definition 3: Search space: Given a bipartite graph and two integers , then A search space refers to a maximal subgraph of a bipartite graph denoted as ( V and are subsets of and respectively) and satisfies the following two conditions:
[0056] Condition 1: for any vertex , the degree in ;
[0057] Condition 2: for any vertex , the degree in .
[0058] Step 2.3, based on the search space, set up a scale-restricted interleaved search framework;
[0059] Based on the above analysis, given another positive integer satisfying , if is updated in some search space of the bipartite graph ( is the largest balanced k-biplex found so far), then all k-biplexes with a size greater than in G only exist within search space; in addition, for a given bipartite graph , let be the maximum degree of all vertices in the vertex set , define the final MBKBP as , then it must satisfy ;
[0060] Based on the above analysis, the search space can be generated as follows:
[0061] Let represent the i-th search space, and represent the largest balanced k-biplex found in the i-th search space;
[0062] First, the search framework will generate search spaces, where , represent the floor function, , and getSubsequently, iteratively in Calculate MBKBP in the search space until Until then; ultimately, a bipartite graph. MBKBP Corresponding to the found The largest one in the world. Figure 2 This demonstrates the core idea of this search framework. Since these search spaces are generated using a binary search approach, and the size of each specific search space is significantly smaller than the original bipartite graph... Therefore, the efficiency of the search process has been greatly improved.
[0063] Step 2.4, based on Optimize the search space by balancing characteristics;
[0064] Using the model The balancing property can further narrow down the generated search space, thereby improving search performance. For example... Figure 2 As shown, for a given bipartite graph From linear equations and The defined gray-shaded target area contains all valid... A balanced k-biplex, meaning a k-biplex exceeding a certain range is definitely not... Balanced; therefore, the shadow target area is in harmony with... The intersection of the search spaces is the final search space;
[0065] Let the initial parameters The i-th The search space can be formally defined as follows: max represents taking the maximum value:
[0066] ;
[0067] ;
[0068] The algorithm corresponding to the scale-constrained staggered search framework proposed in this invention is denoted as MBKBPZigzag. Its core function is to efficiently identify the maximum balanced k-biplex (MBKBP) in a bipartite graph. The specific execution process is as follows:
[0069] When the algorithm starts, it first performs initialization: the variable representing the currently found maximum equilibrium k-biplex is initialized. Set it to an empty set; set the initial value of the lower bound of the degree of the left vertex. for Initialize the iteration counter i to 1; after entering the iteration process, the algorithm dynamically calculates the lower limit of the degree of the left vertex corresponding to the current iteration round i. and the lower limit of the right vertex degree ;in, , Where max represents the maximum value; based on the above calculations... and And with the definition of the search space, the MBKBPZigzag algorithm will construct the search space for this round. Search space; then, the algorithm in Within the search space, the MBKBPSearch procedure from the baseline method is invoked to search for the maximum balanced k-biplex, and the results are updated based on the search results. The iterative process continues until the lower bound of the degree of the left vertex is reached in a certain round. Less than the preset lower limit of the left vertex size When the search terminates, the algorithm returns the result. This refers to the maximum equilibrium k-biplex in the bipartite graph G identified through this framework.
[0070]
Example 2
[0071] Following the MBKBPZigzag algorithm procedure, due to the initial parameters... = 8, which will first generate the first search space, namely the (4, 3) search space. At this point, vertices need to be removed from the original graph. Within this search space, the largest [value] was found. The equilibrium k-biplex is Its size | | = 9. Then, calculate... , Therefore, the algorithm generates a second search space, namely the (3, 5) search space. At this point, vertices need to be removed from the original graph again. as well as Within this search space, no search terms larger than [the specified size] were found. of Balance the k-biplex. Because... Therefore, no new search space is generated, and the final MBKBP is obtained. .
[0072] Step 3, optimization using various pruning methods; the pruning methods include enumeration pruning, vertex pruning, and graph reduction pruning;
[0073] The scale-limited zigzag search framework improves performance by generating a series of search spaces. However, within each search space, the framework still relies on the MBKBPSearch procedure to search for MBKBP. To further improve the efficiency of MBKBPSearch, the present invention proposes three types of optimization strategies: enumeration pruning, vertex pruning, and graph reduction pruning, to collectively improve overall performance.
[0074] Step 3.1, enumeration pruning:
[0075] The goal of the enumeration pruning strategy is to identify and remove invalid branches and vertices as early as possible during traversal, including the following three strategies:
[0076] First, upper bound-based pruning: as shown in the MBKBPZigzag algorithm, throughout the search process, the largest balanced k-biplex found so far is always maintained, denoted as ; if the upper bound of the number of vertices of all k-biplexes in a certain branch is less than , the corresponding branch can be directly deleted because it certainly does not contain a larger balanced k-biplex; that is, corresponding to pruning rule 1 and pruning rule 2:
[0077] Pruning rule 1: given a branch , if , then branch can be directly deleted; min represents the minimum value;
[0078] Pruning rule 2: given a branch , two positive integers and , let , ; if , then branch is directly deleted;
[0079] Second, balance-based pruning: due to the existence of the balanced constraint condition, if it can be determined that all k-biplexes within a given branch do not satisfy the balanced restriction condition, then the corresponding branch is pruned in advance; that is, corresponding to pruning rule 3:
[0080] Pruning rule 3: given a branch , if
[0081] or then branch is directly deleted;
[0082] Third, search space pruning: the core goal of search space pruning is to delete the part of search space that cannot generate MBKBP, and thus reduce the search range. According to the above analysis, given a certain search space represents the i-th search space, represents the i-1-th search space, if then the k-biplex contained in the corresponding search space must not be balanced, if then the k-biplex contained in this search space must not be the optimal solution with the largest number of vertices, that is, the corresponding pruning rule 4:
[0083] Pruning rule 4: given a certain search space, if or then all branches in this search space are directly deleted.
[0084] Step 3.2, vertex pruning;
[0085] When adding certain vertices to the candidate set, it will cause the upper bound of the size of the generated k-biplex to decrease; if the upper bound is less than the current optimal solution , then it means that any k-biplex containing the corresponding vertex cannot produce a better solution, so the corresponding vertex is deleted from the candidate set in advance, that is, the corresponding pruning rule 5:
[0086] Pruning rule 5: given a branch and a vertex , if , then the vertex is deleted from .
[0087] [Example 3] Again consider the bipartite graph G in FIG. 1, let . The results of applying the enumeration pruning strategy in the enumeration process of the (4, 3) search space are shown in Figure 4 . The final MBKBP is , which belongs to the sub-branch of branch , and finally is obtained. For branch , since , according to pruning rule 5, vertex will be removed from the candidate set. Remove After that, the total number of vertices in the candidate set and the partial set is reduced to 9. According to pruning rule 1, since 8 < 9, the branch may be pruned. In addition, for the branch , if the selected vertex is , an upper bound of 8 is generated, which is calculated by the formula , and this upper bound is less than = 9. Therefore, according to pruning rule 2, the branch may also be removed.
[0088] Step 3.3, graph reduction pruning;
[0089] The purpose of enumeration pruning is to eliminate unnecessary calculations during the enumeration process, while graph reduction pruning focuses on reducing the size of the search space by identifying vertices that are unlikely to appear in the MBKBP before the enumeration process begins. To achieve this goal, the present application first introduces the concept of "core number":
[0090] Given a bipartite graph and a vertex in the graph , the core number of vertex in graph , denoted as , is the largest possible value c that satisfies the following conditions: there exists a subgraph of bipartite graph containing vertex , such that for any vertex in , the minimum degree ; based on the core number, pruning strategy 6 is determined:
[0091] Pruning rule 6: Given a search space , denoted as , if a vertex v ∈ satisfies , then vertex v should be removed from , because v must not be included in the optimal result;
[0092] In addition, based on the number of neighbors of a vertex, pruning rule 7 and pruning rule 8 are determined:
[0093] Pruning rule 7: Given a search space , denoted as , and a vertex v in , let n be the largest integer that satisfies the following condition: vertex v has at least n neighbors with degree ≥ n−k in ; if Then vertex v should start from Delete it because vertex v is definitely not included in the optimal result;
[0094] Pruning rule 8: Given a ( Search space ,as well as Left vertex set Let m be the largest integer satisfying the following condition: In a given vertex v, let m be the largest integer satisfying the following condition: At least one exists in There are vertices u such that ,in Representing vertices u and v in ( Search space The number of common neighbors within; if satisfied Then vertex v should start from Delete it because vertex v must not be included in the optimal result.
[0095] [Example 4] Reconsider Figure 1 Let G be a bipartite graph in the graph. The result after applying the graph reduction strategy is as follows: Figure 5 As shown in Example 3, in the initial (4,3) search space, =9. Following a scale-constrained staggered search framework, a (3,5) search space is generated, where the vertices of the original graph are... Removed. According to pruning rule 7, any condition that satisfies... All vertices can be deleted from the graph. Because and Since the value of n is 2 for all of them, they can be removed from the search space. According to pruning rule 8, since... The m values all satisfy Therefore, all remaining vertices can be preserved.
[0096] Although embodiments of the invention have been shown and described, it will be understood by those skilled in the art that various changes, modifications, substitutions and alterations can be made to these embodiments without departing from the principles and spirit of the invention, the scope of which is defined by the appended claims and their equivalents.
Claims
1. A maximum balance k-biplex search method for bipartite graphs, characterized in that, The method includes: Step 1: Define the MBKBP model corresponding to the maximum equilibrium k-biplex; Step 2: Based on the MBKBP model, a scale-constrained staggered search framework is proposed; Step 3: Optimize using various pruning methods; pruning methods include enumeration pruning, vertex pruning, and graph reduction pruning.
2. The method according to claim 1, characterized in that, Step 1: Define the MBKBP model corresponding to the maximally balanced k-biplex, including: Assume all graphs are undirected, unweighted, and bipartite graphs. ,in and For two disjoint vertex sets, Let it be an edge set; where, and They refer to and , This represents the entire set of vertices. Additionally, a vertex set is defined. The subset of is ;Right now ,express yes A set consisting of the vertices of a portion of the vertex set; vertex set The subset of is ;Right now ,express yes The set consisting of the vertices of the middle part; is the cardinality symbol for the set, representing the number of vertices in the vertex set; furthermore, n represents the total number of vertices, and m represents the total number of edges; for each vertex... ( ),vertex ( The neighbors of ) are recorded as ; In other words, a neighbor is the set of all vertices in the set of vertices directly connected to the corresponding vertex via an edge; a vertex ( The degree of ) is defined as Accordingly, , that is, the number of vertices in the neighbors; first, the definition of k-biplex is given: Definition 1: k-biplex: in a bipartite graph In the given positive integer Vertex set The subset of is ,Right now ,express yes A set of vertices in the middle; a vertex set subset of Right now ,express yes The set of vertices in the middle, if satisfying: Each vertex in The interior has at most k missing adjacent edges, and Each vertex in A graph is called a bipartite graph if it has at most k missing adjacent edges. Derived subgraph For a k-biplex; Given the user-defined balance tolerance , For positive integers: Definition 2: Balanced k-biplex: if It satisfies the k-biplex condition, and the difference in the number of vertices on both sides does not exceed 1 / 2. ,Right now Then it is called an derived subgraph. for Balance k-biplex; Set constraints on the size of the vertex sets on both sides, denoted as . and ,Right now and By imposing size constraints, smaller sizes are filtered out. Balance k-biplexes; furthermore, for a given positive integer ,when and hour, The balanced k-biplex is connected; therefore, to ensure the obtained Balanced k-biplexes are connected. and ; The goal is to find the one with the largest number of vertices. A balanced k-biplex is defined as follows: The problem is defined as: maximum Maximum Balanced k-Biplex (MBKBP): Given a bipartite graph A positive integer User-defined balance tolerance Lower bound of the size of the left vertex set and the lower bound of the right vertex set size bipartite graph The largest in A balanced k-biplex refers to a bipartite graph. a subgraph ,satisfy for The most central vertex Balance k-biplex.
3. The method according to claim 1, characterized in that, Step 2, based on the MBKBP model, proposes a scale-constrained staggered search framework; including: Step 2.1, determine the baseline method: First, enumerate all maximal k-biplexes using the MBKBPEnumAll algorithm; second, for each enumerated maximal k-biplex, verify whether it satisfies the following conditions. Balance condition; after enumeration, the maximum value of the input bipartite graph is obtained. Balance k-biplex; Step 2.2 Using the concept of search space, divide the search space into two subsets according to its size; Step 2.3: Based on the search space, define a scale-constrained interleaved search framework; Step 2.4, based on The search space is optimized by balancing the properties.
4. The method according to claim 3, characterized in that, Step 2.1, determine the benchmark method, including: The enumeration algorithm uses a branch and bound search framework, defining the search branch as... Each search branch consists of three vertex sets. Indicates, that is , The definition of a set is as follows: Partial set :in and Each represents a partial set The set of vertices on the left and right sides of the middle, i.e. , The vertices in the equation represent the vertices that any k-biplex within the corresponding branch must contain; Candidate set :in and Representing the candidate set respectively The set of vertices on the left and right sides of the middle, i.e. , The vertices in the set can be used to expand the partial set. The vertex; Exclusion set :in and They represent the exclusion set respectively The set of vertices on the left and right sides of the middle, i.e. , The vertices in the diagram represent vertices that are not considered within the corresponding branch; For branches Scale-constrained staggered search framework iteratively selects one of the vertices To expand Subsequently, the branch It was split into two sub-branches and : Not included Branches, For inclusion The branch; and repeat until... All vertices in the array were traversed. When the algorithm is executed, it first initializes the variables. It is an empty set. This represents the largest balanced k-biplex found so far; the MBKBPSearch procedure is then called to search for the largest balanced k-biplex. During the MBKBPSearch process, if the left candidate vertex set... and the right candidate vertex set and the left-side excluded vertex set and the right-side excluded vertex set If all values are empty, it indicates that the current subgraph is a maximal k-biplex; in this case, it is necessary to check whether the maximal k-biplex satisfies the condition. Equilibrium condition, i.e. And check whether the size constraint is satisfied at the same time, i.e. and If all conditions are met and the current condition is met... The size is smaller than Then Updated to If not satisfied, then in Find the vertex v with the most non-neighbors in graph G. If the number of non-neighbors of v exceeds k, select one non-neighbor w of v and generate two branches: one containing w and one not containing w. Recursively call the MBKBPSearch process for each branch. If the number of non-neighbors of v does not exceed k, then... Find the vertex v in graph G that has the fewest non-neighbors. The algorithm will then proceed from... Branches are generated by selecting vertices one by one.
5. The method according to claim 3, characterized in that, Step 2.2 Using the concept of search space, divide the search space into two subsets based on its size; including: In other words, each round of search yields They will divide the search space into two subsets: one is the subset whose size has a greater probability of existence than 100%. The maximal k-biplex; the other is that its size is definitely smaller than The maximal k-biplex; by omitting the enumeration of the latter subset, the search framework can significantly improve the performance of MBKBP search; a proposed... The concept of search space corresponds to: Definition 3: Search space: given a bipartite graph and two integers , ,but The search space refers to the bipartite graph. A maximal subgraph, denoted as ( and They are respectively and A subset of (a set of 0), and satisfying the following two conditions: Condition 1: For any vertex ,exist degree in ; Condition 2: For any vertex ,exist degree in .
6. The method according to claim 3, characterized in that, Step 2.3: Based on the search space, define a scale-constrained interleaved search framework; include: Given another positive integer satisfy If in a bipartite graph one of The search space has been updated. ( The largest found so far If the k-biplex is balanced, then all sizes in G are greater than 1. k-biplexes exist only in Within the search space; furthermore, for a given bipartite graph ,remember For vertex set The maximum degree of all vertices in the range is defined as the final MBKBP. Then it must satisfy ; Generate the search space as follows: use Representing the i-th search space, using This represents the maximum balance k-biplex found in the i-th search space; First, the search framework will generate Search space, in which , This represents rounding down. Within the search space Subsequently, iteratively in Calculate MBKBP in the search space until Until then; ultimately, a bipartite graph. MBKBP Corresponding to the found The largest one in the world.
7. The method according to claim 3, characterized in that, Step 2.4, based on Search space optimization is performed based on balancing characteristics; including: For a given bipartite graph From linear equations and The defined target area includes all valid A balanced k-biplex, meaning a k-biplex exceeding a certain range is definitely not... Balanced; therefore, the target area and The intersection of the search spaces is the final search space; Let the initial parameters The i-th The search space can be formally defined as follows: max represents taking the maximum value: ; ; The algorithm corresponding to the scale-constrained staggered search framework is denoted as MBKBPZigzag. Its core function is to efficiently identify the maximum balanced k-biplex in a bipartite graph. The specific execution process is as follows: When the algorithm starts, it first performs initialization: the variable representing the currently found maximum equilibrium k-biplex is initialized. Set it to an empty set; set the initial value of the lower bound of the degree of the left vertex. for Initialize the iteration counter i to 1; after entering the iteration process, the algorithm dynamically calculates the lower limit of the degree of the left vertex corresponding to the current iteration round i. and the lower limit of the right vertex degree ;in, , Where max represents taking the maximum value; based on and And with the definition of the search space, the MBKBPZigzag algorithm will construct the search space for this round. Search space; then, the algorithm in Within the search space, the MBKBPSearch procedure from the baseline method is invoked to search for the maximum balanced k-biplex, and the results are updated based on the search results. The iterative process continues until the lower bound of the degree of the left vertex is reached in a certain round. Less than the preset lower limit of the left vertex size When the search terminates, the algorithm returns the result. This refers to the maximum equilibrium k-biplex in the bipartite graph G identified through this framework.
8. The method according to claim 1, characterized in that, Enumerated pruning includes: The goal of the enumeration pruning strategy is to identify and delete invalid branches and vertices as early as possible during the traversal process. It includes the following three strategies: First, pruning based on the upper bound: throughout the entire search process, the currently found maximum value is always maintained. To balance the size of k-biplex, use This means that if the upper bound of the number of vertices of all k-biplexes within a specific branch is less than 1 / 2. If so, delete the corresponding branch directly, because the corresponding branch will definitely not contain a larger one. Balance the k-biplex; that is, pruning rule 1 and pruning rule 2: Pruning rule 1: Given a branch ,if So, branches It can be deleted directly; min means take the minimum value; Pruning rule 2: Given a division Two positive integers and ,make , ;if So, branches It was deleted directly; Second, balance-based pruning: due to the existence of The equilibrium constraint condition is one in which it can be determined that all k-biplexes within a given branch do not satisfy the constraint. If the balance constraint is met, the corresponding branch will be pruned in advance; that is, pruning rule 3: Pruning rule 3: Given a branch ,if ; or So, branches It was deleted directly; Third, search space pruning: given a certain Search space Represents the i-th search space, Represents the (i-1)th search space, if Then the k-biplex contained in the corresponding search space must not be Balanced, if Therefore, the k-biplex contained in this search space is definitely not the optimal solution with the largest number of vertices, which corresponds to pruning rule 4: Pruning rule 4: Given a certain Search space, if or If so, all branches within this search space will be deleted directly.
9. The method according to claim 1, characterized in that, Vertex pruning includes: Adding certain vertices to the candidate set will lower the upper bound of the generated k-biplex size; if the upper bound is smaller than the current optimal solution... This means that any k-biplex containing the corresponding vertex cannot produce a better solution, so the corresponding vertex is removed from the candidate set in advance, which corresponds to pruning rule 5: Pruning rule 5: Given a branch and a vertex ,if Then the vertex from Delete it.
10. The method according to claim 1, characterized in that, The diagram shows the reduction and pruning process, including: Given a bipartite graph And the picture one of the vertices ,vertex In the figure The number of cores in the middle is denoted as The maximum possible value c of the number of cores satisfies the following condition, where c is a positive integer: there exists a core containing vertices. bipartite graph subgraph This makes for any vertex in , the minimum degree Based on the number of cores, pruning strategy 6 is determined: Pruning rule 6: Given a Search space, denoted as If some vertex v∈ satisfy Then vertex v should start from... Delete it because v is definitely not included in the optimal result; Furthermore, based on the number of neighbors of a vertex, pruning rules 7 and pruning rule 8 are determined: Pruning rule 7: Given a ( Search space, denoted as ,as well as Let n be the largest integer satisfying the following condition: vertex v is in the... It has at least n neighbors with a degree ≥ n−k; if Then vertex v should start from Delete it because vertex v is definitely not included in the optimal result; Pruning rule 8: Given a ( Search space ,as well as Left vertex set Let m be the largest integer satisfying the following condition: In a given vertex v, let m be the largest integer satisfying the following condition: At least one exists in There are vertices u such that ,in Representing vertices u and v in ( Search space The number of common neighbors within; if satisfied Then vertex v should start from Delete it because vertex v must not be included in the optimal result.