Distributed Computational Graph Execution via REST Discovery

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Computational graphs are often too resource-consuming for single devices, particularly in constrained environments like IoT devices, necessitating a distributed execution across multiple devices.

Innovation Solution

A method for distributing the computational graph across a REST-based distributed IoT network, where subsets of operations are assigned to different devices, with each device exposing its output data as a discoverable resource using RESTful operations, enabling dynamic discovery and communication through standardized links.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a computational graph is executed on a single device, then the execution is simple and straightforward, but the device becomes resource-consuming and cannot handle the computational load

Engineering Contradiction:
Improvecomputational capabilityVSAvoidresource consumption
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The computational graph is divided into multiple subgraphs, where each subgraph is assigned to a different device in the distributed network. This segmentation allows the heavy computational workload to be distributed across multiple devices rather than concentrated on a single device, resolving the contradiction between computational capability and resource consumption.

Inventive Principle:
Principle #1Segmentation

2Device complexity

If the computational graph is distributed across multiple devices, then resource consumption is reduced, but data exchange and communication overhead increase

Engineering Contradiction:
Improveresource consumptionVSAvoidcommunication overhead
Core Design Contradiction:
Device complexityVSLoss of energy

Solution Approach 1:

A resource directory is introduced as an intermediary component that manages data exchange between devices. The resource directory stores metadata about computational resources and facilitates efficient data routing, reducing communication overhead by optimizing which devices exchange data and how the data is transmitted.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If devices dynamically discover and communicate through standardized links, then adaptability and interoperability improve, but system complexity and overhead increase

Engineering Contradiction:
Improvedevice discovery capabilityVSAvoidsystem overhead
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

RESTful operations are used as a universal communication protocol that enables different types of devices to discover and interact with each other through standardized links. This universality allows any device in the network to perform discovery and data exchange operations without requiring device-specific communication mechanisms, improving adaptability while managing complexity through standardization.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentEP4078927B1Dynamic distribution of a computational graph
Publication Date: 2025.06.25 TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
  • EP4078927B1 patent drawingFigure 1
  • EP4078927B1 patent drawingFigure 2
  • EP4078927B1 patent drawingFigure 3

AI summary

Dynamic distribution of a computational graph that defines a set of operations comprising a first subset of one or more operations and a second subset of one or more operations. In one aspect, there is a method for generating output data based on the computational graph. The method includes a first device storing information related to the computational graph, the information related to the computational graph comprising information representing the first subset of operations. The method also includes the first device receiving input data and the first device performing the first subset of operations using the received input data, thereby producing first output data corresponding to the first subset of operations. The method further includes the first device exposing the first output data as a discoverable resource so that the first output data is discoverable by other devices.