Real-time closed-loop TMS–EEG pipeline

Loading...
Thumbnail Image
Journal Title
Journal ISSN
Volume Title
Perustieteiden korkeakoulu | Master's thesis
Date
2023-03-20
Department
Major/Subject
Human Neuroscience and Technology
Mcode
SCI3067
Degree programme
Master’s Programme in Computer, Communication and Information Sciences
Language
en
Pages
54+6
Series
Abstract
Combined transcranial magnetic stimulation and electroencephalography (TMS–EEG) is a useful tool for studying the connectivity of the brain. However, current TMS–EEG techniques are limited in their ability to adjust stimulation parameters, such as the locus of the stimulation, in a real-time closed-loop manner. This Thesis presents a real-time closed-loop TMS–EEG pipeline for a multi-locus TMS (mTMS) system. The pipeline was created using Robot Operating System. To ensure the real-time performance of the pipeline, a real-time operating system, a real-time scheduling policy and priority, and memory locking was used. The pipeline was designed to allow running arbitrary closed-loop stimulation algorithms, which are dynamically loaded during system startup. The algorithms can be written in several programming languages. An existing brain-state-dependent stimulation algorithm was adapted for the pipeline. The algorithm estimated future phases of the sensorimotor mu-rhythm and targeted stimulation to specific phases. In this Thesis, I measured the latency of the pipeline and the estimation accuracy of the brain-state-dependent stimulation algorithm. In addition, I compared the performance of different programming languages for writing closed-loop algorithms. The pipeline had an end-to-end latency between 2.8 ms and 4.0 ms, with a mean of 3.2 ms and a standard deviation of 0.1 ms. Thus, the pipeline was able to execute stimulation which was timed 4.0 ms or more from the EEG sample on which the stimulation decision was based. C++ was the most efficient programming language for implementing closed-loop algorithms. MATLAB, which was compiled into C++, was a bit slower but enabled one to use MATLAB functions and toolboxes in the algorithms. The brain-state-dependent stimulation algorithm timed stimulation a few milliseconds early and had a large circular standard deviation in its estimated phases. If the stimulation was performed only when the power of the mu-rhythm was strong enough, the circular standard deviation decreased by almost 40% and the phases were estimated more accurately. The real-time closed-loop TMS–EEG pipeline presented in this Thesis enables conducting new kinds of experiments using the mTMS system. However, integrating the pipeline with other parts of the mTMS system, such as the targeting of TMS pulses, requires additional work.

Transkraniaalinen magneettistimulaatio yhdistettynä aivosähkökäyriin (TMS–EEG) on hyödyllinen työkalu aivojen yhteyksien tutkimiseen. Nykyisissä TMS–EEG-menetelmissä on kuitenkin rajoituksia etenkin niiden kyvyssä muuttaa stimulaatioparametreja kuten stimulaation kohdetta reaaliaikaisesti. Tämä diplomityö esittelee reaaliaikaisen takaisinkytketyn TMS–EEG-järjestelmän, joka toimii osana monipaikkaista TMS (mTMS) -menetelmää. Järjestelmä luotiin Robot Operating System -kehitysympäristön avulla. Järjestelmän reaaliaikainen toiminta varmistettiin reaaliaikaisella käyttöjärjestelmällä, reaaliaikaisella vuoronnuspolitiikalla ja -prioriteetilla sekä muistin lukituksella. Järjestelmä suunniteltiin tukemaan mielivaltaisia takaisinkytkettyjä algoritmeja, jotka ladataan järjestelmän käynnistyksen yhteydessä. Algoritmit voi kirjoittaa eri ohjelmointikielillä. Aivotilan perusteella toimiva stimulaatioalgoritmi mukautettiin järjestelmään. Algoritmi laski sensorimotorisen mu-rytmin tulevaisuuden vaihetta ja kohdisti stimulaation tiettyyn vaiheeseen. Diplomityössä mitattiin järjestelmän viivettä sekä stimulaatioalgoritmin ennustustarkkuutta. Työssä arvioitiin myös eri ohjelmointikielten suorituskykyä mielivaltaisten takaisinkytkettyjen algoritmien käytössä. Työssä havaittiin, että järjestelmässä oli 2.8–4.0 millisekunnin viive stimulaatiokäskyn välityksessä. Järjestelmä pystyi toteuttamaan kaikki stimulaatiokäskyt, jotka oli ajoitettu yli 4 millisekunnin päähän tulevaisuuteen. Mittausten perusteella C++ oli tehokkain ohjelmointikieli algoritmien toteuttamiseen. C++:ksi käännetty MATLAB oli hieman hitaampi mutta mahdollisti MATLABin kirjastojen käyttämisen. Stimulaatioalgoritmi ajoitti stimulaation muutaman millisekunnin liian aikaisin, ja sen ajoituksissa oli suuri hajonta. Kun stimulaatiota suoritettiin vain mu-rytmin tehon ollessa tarpeeksi suuri, ennustusten keskihajonta laski lähes 40 % ja ajoitukset olivat tarkempia. Tässä työssä esitelty TMS–EEG-järjestelmä mahdollistaa uudenlaisten takaisinkytkettyjen kokeiden suorittamisen. Tulevaisuudessa järjestelmä täytyy vielä integroida tiiviimmin muiden mTMS-menetelmän osien kanssa. Lisäksi järjestelmään voi lisätä useampia vaiheita, esimerkiksi vaiheen EEG-datan esikäsittelyä varten.
Description
Supervisor
Ilmoniemi, Risto
Thesis advisor
Kahilakoski, Olli-Pekka
Keywords
real-time, robot operating system, closed-loop, transcranial magnetic stimulation, electroencephalography
Other note
Citation