Dynamic Graph Modeling with Binary Decision Diagrams

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Dynamic graphs, such as social network graphs, grow large and require significant memory and computational resources for storage and information extraction, making it expensive to manage and query their data efficiently.

Innovation Solution

Modeling dynamic graphs using Binary Decision Diagrams (BDDs) allows for compact storage and efficient information extraction by representing edges with characteristic functions and using threshold functions to manage edge existence over time, reducing memory footprint and query operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If dynamic graphs are stored using traditional data structures, then the graph can represent arbitrary node and edge relationships, but the memory usage and computational resources required for storage and information extraction become prohibitively large

Engineering Contradiction:
Improvememory usageVSAvoiddata structure complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent transforms the graph representation by changing parameters: nodes are encoded using binary representations of their identifiers, and edges are represented through characteristic functions that evaluate to boolean values. This parameter transformation enables compact storage while maintaining the ability to represent arbitrary graph structures.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent extracts the essential properties of graph relationships into characteristic functions g(t; a; b) that determine edge existence between nodes a and b at time t. By separating the edge existence logic into evaluable functions rather than storing complete adjacency information, the representation achieves compression while preserving query capabilities.

Inventive Principle:
Principle #2Taking out (Extraction)

2Productivity

If traditional graph storage methods are used, then all graph information can be stored explicitly, but information extraction requires significant computational resources and time

Engineering Contradiction:
Improveinformation extraction speedVSAvoidcomputational resources
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent replaces traditional mechanical graph traversal and search operations with binary decision diagram evaluations. The characteristic functions and BDD structures enable information extraction through efficient binary operations rather than linear scanning or complex graph algorithms, dramatically improving extraction speed while reducing computational resource requirements.

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

3Adaptability or versatility

If the graph size increases to accommodate more nodes and edges, then the graph can model larger dynamic systems, but the memory footprint and query complexity increase exponentially

Engineering Contradiction:
Improvegraph size capacityVSAvoidmemory footprint
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The patent merges multiple graph snapshots across different time points into a single unified BDD structure. By combining temporal information with graph structure in the characteristic functions, the system can model arbitrarily large dynamic graphs without proportionally increasing memory footprint, as the BDD structure shares common substructures across different time points and graph configurations.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS8983893B2Modeling dynamic graphs with binary decision diagrams
Publication Date: 2015.03.17 FUJITSU LTD
  • US8983893B2 patent drawing
  • US8983893B2 patent drawing
  • US8983893B2 patent drawing

AI summary

In one embodiment, a dynamic graph having a plurality of nodes is modeled with a Binary Decision Diagram (BDD). Each pair of nodes in the dynamic graph is modeled using a characteristic function, g({right arrow over (t)};{right arrow over (a)};{right arrow over (b)}), where: {right arrow over (t)} denotes a time; {right arrow over (a)} denotes a first node identifier; {right arrow over (b)} denotes a second node identifier; and g evaluates to 1 (or TRUE) if and only if an edge exists and connects nodes {right arrow over (a)} and {right arrow over (b)} at time {right arrow over (t)}. The BDD is a combination of all the characteristic functions corresponding to all unique pairs of nodes in the dynamic graph.