Hierarchical Product Structure Filtering With On-Demand Expansion
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for filtering and displaying large, complex hierarchical product structures in CAD systems are inefficient, requiring extensive traversal and processing to provide a meaningful and responsive user interface, especially when applying filters to large datasets.
Innovation Solution
A computer-implemented method that utilizes a pre-constructed query index to identify unconfigured paths in a hierarchical data structure, applying a filter to determine displayable and expandable branch values, allowing for deferred evaluation and on-demand expansion to optimize processing and reduce computational load.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If a cache of the configured product and its explosion into occurrences of parts and part assemblies is used, then searching and configuring speed is improved, but the number of caches required increases significantly due to change management and historical configurations
Solution Approach 1:
The patent segments the product structure into unconfigured and configured portions, maintaining a single cache for configured portions while leaving unconfigured portions to be processed on-demand. This divides the data management burden into manageable segments rather than requiring complete caching of all possible configurations
Solution Approach 2:
The patent performs preliminary configuration of product portions that are likely to be searched or modified, creating a cache in advance. This preliminary action allows fast searching for common configurations while avoiding the need to cache all possible historical and variant configurations
2Speed
If database indexing of paths through the product structure is used, then searching is improved for short time periods, but path explosion occurs over longer time periods due to revisions of parts and part assemblies
Solution Approach 1:
The patent implements a dynamic approach where the product structure is configured on-demand based on user interaction and search patterns. Rather than maintaining static indexes that explode over time, the system dynamically configures only the necessary paths when needed, adapting to actual usage patterns and avoiding path explosion
Solution Approach 2:
The patent changes the configuration state parameter of product portions from permanently configured to dynamically configurable. This allows the system to adjust the level of configuration based on current search and display needs, preventing the accumulation of exploded paths over time
3Loss of information
If the entire product structure is configured and displayed, then complete information is provided, but computational cost and processing time increase significantly for large hierarchical structures
Solution Approach 1:
The patent applies partial configuration by configuring only the necessary portions of the product structure that are relevant to current user needs, rather than configuring the entire structure. This partial action provides sufficient information for most search and display operations while dramatically reducing computational cost
4Measurement precision
If extensive traversal and processing is performed to apply filters to large datasets, then accurate filtering results are achieved, but user interface responsiveness deteriorates
Solution Approach 1:
The patent performs preliminary filtering by applying filter criteria during the on-demand configuration process. This preliminary action identifies and configures only those product portions that match the filter criteria, avoiding extensive traversal of the entire structure and maintaining interface responsiveness while achieving accurate filtering results
Data Source
AI summary
A computer-implemented method of providing a view of a filtered hierarchical data structure is described. A user views an initial view of a hierarchical data structure showing at least one branch value at an nth level expansion and provides a filter. A pre-constructed query index corresponding to the filter is queried against the hierarchical data structure to identify unconfigured paths to descendant values of a first child of nth level branch value. The descendant value and branch values between the descendant value and the branch value shown in the nth level expansion are marked as displayable when the filter is met. The process is repeated for all other branch values shown in the initial view. A revised view showing only those values from the initial view in which the branch value, a child value, or a descendant value were marked as displayable is then displayed to the user.


