Cycling Coordinating Process for Distributed Multi-Component Systems
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing systems for coordinating multiple components, such as robots, face challenges including complexity, lack of robustness, complexity of coordination, data management difficulties, and data insecurity, particularly in complex environments where centralized control is fragile and communication overhead is high.
Innovation Solution
A method where a coordinating process continually cycles through each component, with each component hosting the complete code and transferring only a small execution state, allowing for distributed data and computation while maintaining a global view, eliminating the need for point-to-point communication and negotiation protocols.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If a single coordinating authority is used to direct and coordinate the activities of all team members, then simplicity of implementation and predictability of overall team behavior are improved, but communication overhead increases and system robustness deteriorates
Solution Approach 1:
The patent merges the coordinating process with each individual component, allowing each component to host the complete coordinating process code. This creates multiple copies of the coordinator distributed across components, eliminating the single point of failure while maintaining coordinated behavior through the cycling mechanism.
Solution Approach 2:
The patent introduces dynamic role assignment where components alternately host the coordinating process. The coordinator cycles from one component to another, creating a dynamic distributed architecture that adapts to component availability and maintains robustness while preserving coordination simplicity.
2Device complexity
If a single coordinating authority is used to direct and coordinate the activities of all team members, then simplicity of implementation and predictability of overall team behavior are improved, but communication overhead increases
Solution Approach 1:
The patent extracts the coordinating process from a separate centralized authority and embeds it within each component. This eliminates the need for constant communication with a central coordinator, as each component can independently execute coordination logic when hosting the process, reducing communication overhead.
Solution Approach 2:
Each component is equipped with the complete coordinating process code and can independently perform coordination functions when selected as the host. This self-service capability reduces dependency on continuous centralized communication, lowering overall system communication overhead.
3Reliability
If each robot is assigned an agent status and responsible for its own actions, then system robustness is improved, but coordination complexity and computational costs increase
Solution Approach 1:
The patent makes each component universal by equipping it with the complete coordinating process code. Each component can function both as a local agent and as a temporary coordinator, eliminating the need for separate coordination mechanisms and reducing overall coordination complexity while maintaining robustness.
Solution Approach 2:
Instead of having a central coordinator manage agents, the patent inverts the approach by having agents capable of becoming coordinators. The coordinating process cycles through components, allowing the coordination function to be distributed rather than centralized, reducing complexity while preserving robustness.
4Loss of energy
If biological inspired approaches are used to coordinate without sharing information, then communication overhead is reduced, but lack of common viewpoint makes programming and control difficult
Solution Approach 1:
The patent introduces the cycling coordinating process as an intermediary that temporarily resides in each component. This mediator provides a common viewpoint during its residency, allowing coordinated decision-making without requiring continuous information sharing, thus reducing communication overhead while simplifying programming through the structured cycling mechanism.
Solution Approach 2:
The coordinating process operates periodically, cycling through components in a structured sequence. This periodic action provides regular opportunities for establishing a common viewpoint without requiring continuous communication, reducing overhead while maintaining programmability through the predictable cycling pattern.
Data Source
AI summary
A method and apparatus for controlling and coordinating a multi-component system. Each component in the system contains a computing device. Each computing device is controlled by software running on the computing device. A first portion of the software resident on each computing device is used to control operations needed to coordinate the activities of all the components in the system. This first portion is known as a “coordinating process.” A second portion of the software resident on each computing device is used to control local processes (local activities) specific to that component. Each component in the system is capable of hosting and running the coordinating process. The coordinating process continually cycles from component to component while it is running. The continuous cycling of the coordinating process presents the programmer with a virtual machine in which there is a single coordinating process operating with a global view although, in fact, the data and computation remain distributed across every component in the system.


