Path Detection Device Using QUBO Solver for Directed Graphs
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional algorithms for detecting simple closed circuits in directed graphs are inefficient, requiring significant calculation time and space, making them impractical for large-scale graphs.
Innovation Solution
A path detection device that uses a QUBO solver to generate and solve quadratic unconstrained binary optimization problems for strongly connected components, reducing the number of edges in partial graphs until a threshold is reached, thereby detecting simple closed circuits with less computational resources.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If conventional simple closed circuit detection algorithm is used, then closed circuits can be detected in directed graphs, but calculation time and space become prohibitively large for large-scale graphs
Solution Approach 1:
The directed graph is divided into multiple strongly connected components (SCCs). The algorithm detects simple closed circuits within each SCC independently rather than processing the entire graph at once. This segmentation reduces the computational complexity from O((N+E)×(C+1)) to a sum of smaller calculations across individual SCCs, making large-scale graph processing feasible while maintaining detection accuracy.
Solution Approach 2:
The algorithm extracts and removes edges from the directed graph that cannot participate in simple closed circuits. Specifically, edges originating from nodes with in-degree zero or edges terminating at nodes with out-degree zero are identified and removed. This extraction reduces the number of edges E in the graph, directly decreasing the calculation time O((N+E)×(C+1)) while preserving all actual simple closed circuits.
2Measurement precision
If conventional simple closed circuit detection algorithm is used, then all simple closed circuits can be detected, but calculation space becomes excessively large
Solution Approach 1:
The graph is segmented into strongly connected components, and the algorithm processes each component separately. This division reduces the calculation space from needing to store and process the entire graph (O(N+E)) to processing smaller SCCs individually, lowering peak memory requirements while ensuring all simple closed circuits are detected across the complete graph.
Solution Approach 2:
Useless edges (those with in-degree zero or out-degree zero) are extracted and removed from the graph before processing. This reduces the total edge count E, directly decreasing the calculation space requirement O(N+E) while maintaining detection completeness for all valid simple closed circuits.
3Productivity
If the number of edges in the directed graph is reduced by removing useless edges, then calculation time and space are reduced, but the complexity of identifying useless edges increases
Solution Approach 1:
The graph structure itself provides the information needed to identify useless edges. By calculating in-degree and out-degree for each node using the existing graph data, the algorithm automatically identifies edges that cannot participate in simple closed circuits. This self-service approach uses the graph's own properties to simplify processing, reducing calculation time without adding external complexity.
Solution Approach 2:
The algorithm changes the parameters used to analyze edges from examining complex path relationships to simply checking in-degree and out-degree values. This parameter change transforms a potentially complex analysis into a straightforward numerical comparison, improving calculation efficiency while keeping the method simple and systematic.
Data Source
AI summary
A specific-type of simple-closed circuit in a directed graph is detected. A path detection device includes a strongly-connected-component-detection unit, a problem-generation unit, a solution acquisition unit, and a simple-closed-circuit-detection unit. The strongly-connected-component-detection unit detects a strongly-connected-component in the directed graph. The problem-generation unit generates a QUBO problem for the strongly-connected-component. The solution-acquisition unit acquires a solution of the QUBO problem for the strongly-connected-component. The simple-closed-circuit-detection unit detects a simple-closed circuit in a partial graph for the strongly-connected-component. Decision variables in an objective function in the QUBO problem correspond to nodes or edges in the strongly-connected-component. The partial graph may be a part including two or more nodes or two or more edges selected based on the solution in the strongly-connected-component. A QUBO matrix in the objective function is set such that the objective function is minimized when the partial graph satisfies a preset condition.


