Distributed Controller Communication via Goals and Constraints

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In distributed systems, especially document processing systems, the scalability is limited by centralized control architectures where a single entity manages all tasks and resources, leading to overwhelmed computational capabilities and impractical interfacing with numerous sensors and actuators, especially as system size increases and complexity grows.

Innovation Solution

A method for coordinated control between system elements involves determining goals and constraints for tasks, communicating these through messages, and subscribing to information sources to ensure cooperative activities without overwhelming network resources, using a protocol that includes command and subscription specifications with timestamps.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If a centralized control architecture is used where a single entity manages all tasks and resources, then system coordination is simplified, but scalability is limited due to overwhelmed computational capabilities and impractical interfacing with numerous sensors and actuators

Engineering Contradiction:
Improvesystem coordinationVSAvoidscalability
Core Design Contradiction:
Ease of operationVSAdaptability or versatility

Solution Approach 1:

The system divides the centralized control architecture into multiple distributed controllers, each responsible for specific tasks and resources. This segmentation allows the system to scale by adding more controllers without overwhelming a single computational entity, while maintaining coordinated operation through inter-controller communication protocols.

Inventive Principle:
Principle #1Segmentation

2Reliability

If frequent status updates are implemented among distributed elements, then cooperative processing is ensured, but network bandwidth requirements increase

Engineering Contradiction:
Improvecooperative processingVSAvoidnetwork bandwidth
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The system implements periodic status updates at predetermined time intervals rather than continuous or event-driven communication. This periodic action ensures that distributed controllers maintain synchronized operational awareness while significantly reducing network bandwidth consumption compared to frequent or real-time updates.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

Each distributed controller autonomously determines its own status information and selectively communicates only relevant updates to other controllers. This self-service approach reduces unnecessary network traffic while maintaining cooperative processing, as each controller manages its own communication needs based on its operational state.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS8819103B2Communication in a distributed system
Publication Date: 2014.08.26 GENESEE VALLEY INNOVATIONS LLC
  • US8819103B2 patent drawing
  • US8819103B2 patent drawing
  • US8819103B2 patent drawing

AI summary

Controllers communicate commands in terms of goals and constraints. A goal is an objective. A constraint is information regarding how the goal is to be achieved. For example, a constraint may specify when, or how much of, a resource may be used to achieve a goal. Additionally, or alternatively, a constraint may specify an acceptable or expected accuracy or tolerance regarding how the goal is achieved. Each controller is expected to achieve assigned goals in accord with associated constraints. Thereby, system communication may be reduced. If controllers achieve goals according to specified constraints, the controllers do not need to provide updates or be updated regarding the status of activities of other controllers or regarding other operational context information. In some embodiments, commands are generally not acknowledged. Instead, serving controllers respond to a command with an error message if a goal cannot be met in accord with an associated constraint.