Skip to content

Commit 47a902c

Browse files
authored
Update paper.md
1 parent eb7edb9 commit 47a902c

1 file changed

Lines changed: 6 additions & 5 deletions

File tree

paper.md

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@ authors:
1616
orchid: 0000-0001-5175-2374
1717
equal-contrib: true
1818
affiliation: 2
19+
- name: Parisa Sarikhani
20+
affiliation: 1
1921
- name: Yuyu Yao
2022
affiliation: 2
2123
- name: Jake Fleischer
@@ -29,8 +31,6 @@ authors:
2931
affiliation: 5
3032
- name: Andrew Branen
3133
affiliation: 6
32-
- name: Parisa Sarikhani
33-
affiliation: 1
3434
- name: Gautam Kumar
3535
affiliation: 6
3636
- name: Mayuresh V. Kothare
@@ -61,20 +61,21 @@ bibliography: paper.bib
6161
# Summary
6262
Closed-loop Vagus Nerve Stimulation (VNS) based on physiological feedback signals is a promising approach to regulating organ functions and developing therapeutic devices. Designing closed-loop neurostimulation systems requires simulation environments and computing infrastructures that support i) modeling the physiological responses of organs under neuromodulation, also known as physiological models (PMs), and ii) the interaction between the PMs and the neuromodulation control algorithms. However, existing simulation platforms do not support closed-loop VNS control systems modeling without extensive rewriting of computer code and manual deployment and configuration of programs.
6363

64-
The CONTROL-CORE framework aims to develop a flexible software platform for designing and implementing closed-loop VNS systems. The CONTROL-CORE framework consists of the _concore_ protocol at its core. In addition, it contains a visual _concore_ editor and a Mediator architecture that facilitates a distributed execution of _concore_ studies.
64+
The CONTROL-CORE framework aims to develop a flexible software platform for designing and implementing closed-loop VNS systems. The CONTROL-CORE framework consists of the _concore_ protocol at its core. The _concore_ protocol allows seamless synchronized communication between the programs (such as PMs and controllers) that compose a study as a workflow. _concore_ allows simulations to run on different operating systems, be developed in various programming languages (such as Matlab, Python, C++, and Verilog), and be run locally, in containers, and in a distributed fashion. CONTROL-CORE also consists of a Mediator implementation that facilitates the distributed execution of _concore_ studies through REST calls over the Internet.
6565

6666

67-
This paper presents the _concore_ protocol, which allows seamless communication between the programs (such as PMs and controllers) that compose a study. _concore_ allows simulations to run on different operating systems, be developed in various programming languages (such as Matlab, Python, C++, and Verilog), and be run locally, in containers, and in a distributed fashion. The _concore_ Editor lets the users to create studies from the programs in a visual drag-and-drop manner and store them as a GraphML file. _concore_ consists of a parser that parses the studies represented in the GraphML file and start the execution of the studies until the specified maxtime value is met.
67+
CONTROL-CORE contains a lightweight browser-based visual _concore_ editor, which lets the users create studies from the programs in a drag-and-drop manner. It allows creation of directed hypergraphs to represent the studies with closed-loop from modular programs and exporting the directed hypergraph workflows as GraphML files. _concore_ consists of a parser that parses and interprets the studies represented in the GraphML file and execute the studies seamlessly as modular workflows until a specified maxtime value for the study (exit condition, to ensure the closed-loop workflow does not execute forever) is met.
6868

6969

7070
We tested _concore_ in the context of closed-loop control of cardiac physiological models, including pulsatile and nonpulsatile rat models. These were tested using various controllers such as Model Predictive Control and Long-Short-Term Memory-based controllers. Our wide range of use cases and evaluations show the performance, flexibility, and usability of _concore_. The scientific contributions of _concore_ protocol and the CONTROL-CORE framework, along with these sample closed-loop neuromodulation control systems studies have been extensively discussed in our previous work [@kathiravelu2022control].
7171

7272

7373
# Statement of need
7474

75-
Workflow frameworks can run a series of containerized programs, with predefined start and end steps, as a modular workflow. Such workflows do not have a cycle, by definition. A neuromodulation control system comprises feedback loops represented by directed cycles (dicycles). The presence of a dicycle violates the core tenet of classic workflow frameworks, such as Common Workflow Language (CWL) and Workflow Description Language (WDL), which expect the studies to be represented by a directed acyclic graph (DAG). Furthermore, control systems run the same program multiple times as part of the execution with feedback. Consequently, overheads imposed by workflow frameworks, significantly when handling implementations across diverse programming languages and execution environments, are magnified in the case of a closed-loop execution.
75+
Existing software ecosystems are not tailored for the modeling and simulation of closed-loop control systems developed in multiple programming languages. Containerization with frameworks such as Docker has become popular across the scientific community as containerization enables reproducible science with minimal effort. Workflow frameworks can execute a series of containerized programs without human-in-the-loop, with services/programs as predefined start and end step. Workflows facilitate a modular development as they enable execution of a series of a programs without manually managing the each program individually. Typically, these programs are developed and shared across the users containerized services. Such workflows do not have a cycle, by definition. On the other hand, a neuromodulation control system comprises feedback loops represented by directed cycles (dicycles). The presence of a dicycle violates the core tenet of classic workflow frameworks, such as Common Workflow Language (CWL) and Workflow Description Language (WDL), which expect the studies to be represented by a directed acyclic graph (DAG). Furthermore, control systems run the same program multiple times as part of the execution with feedback. Consequently, overheads imposed by workflow frameworks, significantly when handling implementations across diverse programming languages and execution environments, are magnified in the case of a closed-loop execution.
7676

7777
Interoperability plays a significant role in scientific research. Therefore, we should support the modeling and simulation of studies composed of programs (such as the controllers and PMs) developed in different programming languages, executing on different execution modes (local, distributed, or containerized). _concore_ is designed for efficiency in control systems' specific use cases, supporting interoperable communication and data exchange between programs from independent researchers. The simple file-based communication and synchronization, without a centralized workflow orchestrator, enables interoperable executions with high performance.
78+
7879
# Acknowledgment
7980

8081
This work was supported in part by the National Institutes of Health under Grant OT2OD030535 and Google Summer of Code (GSoC) 2021 and 2022 projects. The authors acknowledge the guidance from Tyler Best and Herbert Sauro. The authors appreciate the assistance with OSPARC that they received from the staff at IT'IS, especially Sylvain Anderegg, Pedro Crespo-Valero, Elisabetta Iavarone, Andrei Neagu, Esra Neufeld, and Katie Zhuang.

0 commit comments

Comments
 (0)