Voronoi Treemap Generation Using GPU Parallel Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing visualization mechanisms, such as treemaps, are inflexible and inefficient in representing large amounts of tree-structured data, particularly in terms of processing time and maintaining a clear hierarchical structure, especially when dealing with non-rectangular shapes and avoiding overlaps or holes.

Innovation Solution

The use of programmable graphical processing units to generate Voronoi treemaps, which allow for the division of areas into non-regular shapes with a desired aspect ratio, avoiding overlaps and holes, and leveraging parallel computing to reduce processing time, while maintaining unambiguous hierarchical structures.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If conventional treemaps with rectangular areas are used, then the hierarchical structure is clearly represented, but the visualization becomes inflexible and visually unappealing when resizing nodes

Engineering Contradiction:
Improveflexibility of visualizationVSAvoidvisual quality of treemap
Core Design Contradiction:
Adaptability or versatilityVSManufacturing precision

Solution Approach 1:

The patent applies Voronoi diagrams to transform the traditional rectangular treemap cells into polygonal shapes with curved boundaries. These Voronoi cells are generated by dividing the visualization space based on proximity to representative points, creating organic, non-rectangular shapes that adapt flexibly to different node sizes while maintaining visual appeal and avoiding the thin, meaningless rectangles problem of conventional treemaps

Inventive Principle:
Principle #14Spheroidality (Curvature)

2Adaptability or versatility

If Voronoi treemaps with non-rectangular shapes are generated, then flexibility and visual appeal are improved, but processing time increases significantly

Engineering Contradiction:
Improveflexibility of visualizationVSAvoidprocessing time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent replaces traditional CPU-based sequential computation with GPU-based parallel processing. By leveraging the massively parallel architecture of graphical processing units, the system can compute Voronoi cell boundaries and assign pixels to nodes simultaneously across thousands of cores, reducing the processing time from minutes to seconds while maintaining the flexibility benefits of Voronoi treemaps

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Adaptability or versatility

If areas in Voronoi treemap are allowed to move and resize freely, then adaptability is improved, but determining precise pixel-level locations becomes ambiguous

Engineering Contradiction:
Improveresizability of areasVSAvoidpixel-level location precision
Core Design Contradiction:
Adaptability or versatilityVSMeasurement precision

Solution Approach 1:

The patent employs an iterative optimization algorithm where the Voronoi treemap automatically adjusts cell shapes and positions to satisfy multiple constraints simultaneously. The algorithm iteratively refines the placement of representative points and computes Voronoi boundaries until convergence, ensuring that each node's area is proportional to its data value while maintaining precise pixel-level boundaries and avoiding overlaps or holes in the visualization

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS9569868B2Generating Voronoi treemaps
Publication Date: 2017.02.14 MICROSOFT TECHNOLOGY LICENSING LLC
  • US9569868B2 patent drawing
  • US9569868B2 patent drawing
  • US9569868B2 patent drawing

AI summary

A system described herein includes a receiver component that receives a tree-structured dataset that includes multiple branches that are hierarchically related to one another. The system also includes an executor component that causes a programmable graphical processing unit to generate a Voronoi treemap based at least in part upon the tree-structured dataset, wherein the Voronoi treemap comprises a plurality of subareas that correspond to the multiple branches, and wherein the Voronoi treemap represents hierarchical relationships between the multiple branches.