Enhanced Directed Dependency Graph for Cyclic CAD Systems
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional CAD systems face complexity in evaluating dependencies between elements due to cyclic dependencies, which requires complex solving techniques and constraint solvers, making it difficult to determine the correct evaluation order for dependent nodes.
Innovation Solution
The method introduces an enhanced directed dependency graph with invertible edges and delay nodes to create a conditionally acyclic graph, allowing for the evaluation of dependencies using an activation algorithm, which suppresses edges and provides a specific activation order, enabling the evaluation of cyclic systems without the need for complex constraint solvers.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If conventional dependency graphs are used to represent cyclic dependencies in CAD systems, then the system can model complex relationships between elements, but determining the evaluation order becomes complex requiring constraint solvers
Solution Approach 1:
The patent segments the cyclic dependency graph into multiple evaluation passes, where each pass evaluates a subset of nodes. By dividing the evaluation process into discrete passes that process nodes in specific groups, the system maintains the ability to handle cyclic dependencies while avoiding the need for complex constraint solvers. Each pass evaluates nodes that are ready based on current dependency satisfaction, and the process repeats until all nodes are evaluated.
Solution Approach 2:
The patent implements a dynamic evaluation approach where the dependency graph structure is actively manipulated during evaluation. Nodes are temporarily removed from the graph after evaluation, and the graph is re-evaluated in subsequent passes. This dynamic modification of the graph structure allows the system to progressively resolve cyclic dependencies without requiring complex solving techniques, as the evaluation order emerges naturally through the iterative process.
2Productivity
If topological sort is used to evaluate acyclic dependency graphs, then the evaluation order can be determined efficiently, but this method cannot handle cyclic dependencies
Solution Approach 1:
The patent applies periodic action by implementing multiple evaluation passes that repeat the topological sort process. Each pass evaluates a portion of the dependency graph using efficient topological sorting, and then the graph is updated for the next pass. This periodic repetition of the evaluation process allows the system to efficiently handle cyclic dependencies by breaking them into manageable segments that can be processed using proven efficient algorithms.
Data Source
AI summary
Methods for representing and evaluating dependency systems are provided. In one implementation a method is provided. The method includes receiving a file. The file includes a node array having data entries corresponding to one or more nodes. The file also includes an edge array having data entries corresponding to one or more edges, the edge entries identifying an invertability state of an edge, a suppressed state of an edge, and one or more partner edge linking a first and a second edge in the edge array. The method also include processing the received file. In another implementations a method for evaluating dependencies in a cyclic system is provided as well as a method for evaluating an enhanced directed dependency graph.


