Directed Graph Engine for Complex Model Calculation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Complex models require substantial computation, with many intermediate values and dependencies, making it challenging to determine an efficient order for calculations to avoid unnecessary recalculation and reduce computational costs.
Innovation Solution
A method involving the construction of a directed graph data structure to assign depth values to nodes, allowing for the efficient calculation of values by processing depth lists and identifying terminal and non-terminal nodes, with circular node processing to handle dependencies across time periods.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If complex models with many intermediate values and dependencies are solved using traditional calculation methods, then the model can be solved, but the computational cost and number of calculation steps increase substantially
Solution Approach 1:
The patent applies preliminary action by constructing a directed graph data structure that represents all calculation dependencies before performing the actual calculations. This graph is built in advance to identify the optimal calculation order, allowing the system to process values in an efficient sequence that minimizes redundant calculations. The graph construction and depth assignment are preliminary steps that enable subsequent efficient evaluation.
Solution Approach 2:
The patent segments the complex calculation process into distinct depth levels based on dependency relationships. By assigning depth values to nodes in the directed graph, the calculation process is divided into multiple passes where each pass handles nodes at a specific depth level. This segmentation allows independent parallel processing of nodes at the same depth and ensures that calculations are performed in the correct dependency order without unnecessary repetitions.
2Productivity
If the same values are recalculated multiple times in complex models, then the calculation can be completed, but computational resources are wasted
Solution Approach 1:
The patent implements feedback by tracking which nodes have been evaluated and using this information to avoid redundant calculations. The system maintains state information about calculated values and uses the directed graph structure to determine which dependencies have been satisfied. This feedback mechanism ensures that once a value is calculated, it is not recalculated, and dependent nodes are only processed when all their dependencies are met.
Solution Approach 2:
The patent changes the parameter representation by using depth values assigned to each node in the directed graph. Instead of repeatedly checking dependency satisfaction through complex queries, the system uses the pre-calculated depth parameters to determine calculation order. Nodes at the same depth level can be processed in parallel, and the depth parameter provides a simple criterion for when to process each node, eliminating redundant dependency checks.
3Productivity
If a detailed directed graph data structure is constructed to track all dependencies, then calculation efficiency improves, but the complexity of the data structure increases
Solution Approach 1:
The patent creates a simplified copy or representation of the complex model dependencies in the form of a directed graph data structure. Rather than working directly with the full complexity of the original model's dependency relationships, the system constructs a graph that captures only the essential dependency information needed for ordering calculations. This copied structure is easier to traverse and analyze than the original complex model.
Solution Approach 2:
The directed graph data structure serves as an intermediary between the complex model definition and the calculation execution. The graph translates the complex web of dependencies into a structured format with nodes and edges that can be systematically processed. This intermediary representation allows the system to apply graph algorithms for topological sorting and depth assignment, which would be difficult to apply directly to the original complex model structure.
Data Source
AI summary
A method of efficiently computing values for a data structure having cells having dependencies is disclosed. The data structure may encode complex system. The complex system data structure is traversed to produce a directed graph. The nodes of the directed graph are assigned a depth and labeled as circular or non-circular. Nodes having a base depth are terminal and correspond to cells having known values. The nodes are assigned to depth lists, which are processed until all values have been calculated or a maximum number of attempts to process the lists is reached.


