Directed-Graph Experiment Controller for Parallel Protocol Execution
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing controllers struggle to manage and execute experimental protocols that include parallel processing, as they are designed to wait for the completion of one processing step before proceeding to the next, making it difficult to efficiently execute experimental protocols created in directed graphs.
Innovation Solution
A controller that receives an experimental protocol designed as a directed graph, generates a dependency list, selects nodes based on this list, instructs the experimental device to execute the selected processing, and updates the list upon completion, allowing for the efficient execution of parallel processing steps.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If a controller sequentially executes each processing step waiting for completion before proceeding, then the control logic is simplified, but the experiment efficiency decreases due to inability to execute parallel processing
Solution Approach 1:
The patent segments the experimental protocol into discrete nodes representing individual processing steps, with edges defining dependencies between them. This segmentation allows the controller to independently manage and execute nodes that have no dependency relationships, enabling parallel execution while maintaining simplified control logic for each individual node.
Solution Approach 2:
The patent transitions from a one-dimensional sequential execution model to a multi-dimensional graph-based execution model. By representing the experimental protocol as a directed graph with nodes and edges, the system can execute processing steps in parallel across different dimensions (simultaneous execution of independent nodes) while still maintaining logical dependencies, thus improving efficiency without complicating individual control logic.
2Productivity
If an experimental protocol uses parallel processing to execute multiple operations simultaneously, then experiment efficiency increases, but the controller complexity increases to manage execution order and dependencies
Solution Approach 1:
The patent applies preliminary action by pre-defining the dependency relationships between processing steps in the directed graph structure before execution begins. The edges in the graph explicitly specify which nodes must complete before other nodes can start, allowing the controller to automatically determine execution order without complex real-time decision-making logic.
Solution Approach 2:
The directed graph structure serves as an intermediary between the experimental protocol design and the controller's execution logic. The graph's nodes and edges abstract the complex dependency management, allowing the controller to execute parallel processing by simply following the graph structure rather than implementing complex dependency resolution algorithms.
3Productivity
If a controller manages parallel processing nodes with dependency relationships, then the experiment can proceed efficiently, but it becomes difficult to manage the execution order of branched processing steps
Solution Approach 1:
The patent segments the execution management into two distinct components: the directed graph structure that defines dependency relationships, and the execution engine that follows this structure. This segmentation allows complex parallel processing with multiple branches to be managed systematically, with each node's execution order determined by its incoming edges from the graph rather than complex controller logic.
Data Source
AI summary
A controller comprises: an input unit that receives an input of an experimental protocol designed in a directed graph; a generation unit that generates a dependency list including first dependency information indicating that start of processing of a second node depends on completion of processing of a first node; a selection unit that selects from a plurality of nodes a node at which processing is started based on the dependency list; a command unit that instructs an experimental device to execute the processing of the selected node; and an updating unit that updates the dependency list when any processing of the plurality of nodes is completed, the updating unit updating the first dependency information from first information to second information, the selection unit selecting the second node when the first dependency information is updated from the first information to the second information.


