Graph Rendering Engine Using Distance Oracle and Mesh Consolidation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing graph rendering systems become computationally expensive and inefficient as the number of nodes and edges increases, leading to slow performance and the inability to render complex graphs within a reasonable time, especially when dealing with large datasets, resulting in obscure and non-optimal layouts.

Innovation Solution

The method involves generating a fast approximate distance oracle to determine initial distances between points, calculating potential errors, and approximating corrections to adjust point positions, allowing for a computationally efficient initial graph layout that approximates the final layout over time, reducing tangles and instability, and using a rendering engine to generate commands for displaying graphs as a single mesh or object to improve rendering efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If force-directed algorithms are used to layout graphs with increasing number of nodes and edges, then the graph layout comprehensibility is improved, but the computational cost and rendering time increase dramatically

Engineering Contradiction:
Improvegraph layout comprehensibilityVSAvoidrendering time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent segments the graph rendering process into two distinct phases: an initial layout phase that positions all nodes and edges, and a subsequent refinement phase that applies force-directed algorithms only to adjust positions. This segmentation allows the system to avoid the computational burden of applying force-directed algorithms to every node and edge from scratch, thereby reducing rendering time while maintaining layout comprehensibility.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary actions by generating an initial graph layout before applying force-directed algorithms. This preliminary layout establishes the basic structure and positions of all graph elements, so that when force-directed algorithms are later applied, they only need to make incremental adjustments rather than computing complete layouts, significantly reducing computational cost and rendering time.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If separate commands are generated to draw each edge and node, then the graph rendering flexibility is improved, but the number of required commands increases linearly with graph size

Engineering Contradiction:
Improverendering flexibilityVSAvoidnumber of commands
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent merges multiple individual draw commands into a single consolidated command structure. Instead of generating separate commands for each edge and node, the system combines all drawing operations into one unified command that can be processed more efficiently by the rendering engine, reducing the total number of commands while maintaining the ability to render complex graphs.

Inventive Principle:
Principle #5Merging (Combining)

3Adaptability or versatility

If individual commands are used to color each node, then the graph customization capability is improved, but the processing overhead increases with graph size

Engineering Contradiction:
Improvecustomization capabilityVSAvoidprocessing speed
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent merges individual node coloring commands into batched or consolidated coloring operations. By combining multiple coloring commands into fewer operations, the system maintains the ability to customize node colors while reducing the processing overhead associated with handling a large number of individual commands, thereby improving processing speed.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS8830254B2Systems and methods for graph rendering
Publication Date: 2014.09.09 SYMPHONYAI SENSA LLC
  • US8830254B2 patent drawing
  • US8830254B2 patent drawing
  • US8830254B2 patent drawing

AI summary

An exemplary method comprises receiving graph data, generating an edge draw command to draw a first and a second edge as a display object, buffering first and second node positions for first and second sprites, respectively, identifying shader information associated with application of shading of the first sprite and the second sprite, the shader information indicating a change of shade based on distance from a first position and a change of shade based on distance from a second position associated with the second sprite, generating a node draw command to draw at least the first and second sprites, generating a graph shading command to apply shading to at least a portion of the first sprite based and to apply shading to at least a portion of the second sprite based, and providing the edge draw command, node draw command, and graph shading command to a graph execution module.