Последние несколько недель были напряженными, так как я работал над созданием компьютерных моделей для имитации различных состояний сердца. В частности, я сосредоточился на моделировании тахикардии и терапии антитахикардической стимуляцией (АТС) с помощью синхронизированных автоматов. Здесь я расскажу об основных принципах моделей, основных структурах моделей, сделанных мной предположениях и шагах, которые я предприму дальше, чтобы сделать эти модели как можно более клинически релевантными.

Что такое временные автоматы?

Автоматы с таймером - это тип автоматов, включающих конечные состояния, которые контролируются постоянно тикающими часами. Как и обычные автоматы, симуляция может переключаться между состояниями при выполнении определенных условий и выполнять разные задачи в каждом состоянии. Эти условия и задачи жестко закодированы в программе моделирования. Однако в автоматах с синхронизацией статус всех состояний динамически меняется по мере того, как таймер тикает вниз (или вверх). Другими словами, пока некоторые задачи выполняются в одном состоянии, состояние другого состояния может измениться по прошествии определенного количества временных шагов.

Оказывается, синхронизированные автоматы особенно полезны для моделирования работы сердца. Давайте рассматривать всю предсердную ткань как одно конечное состояние в модели временного автомата. Давайте рассматривать всю ткань желудочка как еще одно конечное состояние. При нормальном ритме узел SA деполяризуется сам по себе. Фронт волны деполяризации будет проходить через ткани предсердий к желудочкам. За миллисекунды электрический импульс достигнет желудочков, и теперь предсердия будут рефрактерными. Другими словами, импульс будет переходить из одного конечного состояния в другое, а предсердное состояние изменит свой статус с потенциала покоя на рефрактерный.

Теперь импульсу требуется немного больше времени, чтобы завершить деполяризацию остальной части миокарда желудочков. За это время состояние предсердий снова изменится с рефрактерного на потенциал покоя. Другими словами, предсердное состояние меняет статус, как только выполняется временное условие, и все это происходит отдельно от желудочкового состояния. Это временное состояние соответствует продолжительности рефрактерного периода ткани предсердий. То, как временные условия переводятся в единицы реального времени, является произвольным и зависит от прихоти программиста. При работе с моделями сердца один временной шаг обычно соответствует одной миллисекунде.

Как я использую временные автоматы

Симулинк

Вместо того, чтобы использовать синхронизированные автоматы (в единственном числе: автомат) для моделирования всего сердца, я сосредоточился на использовании синхронизированных автоматов для создания абстрактных моделей возвратных контуров в желудочках. См. мою статью о реентерабельных схемах здесь. Для моих целей конечные состояния разбиты на две категории: узлы и пути. Пути всегда связаны с узлами на обоих концах, поэтому для того, чтобы импульс достиг пути, он должен сначала пройти через узел.

Первая модель, которую я построил, была создана с помощью MathWorks Simulink. В этой модели узлы могут иметь 1 из 3 различных состояний: отдых, эффективный рефрактерный период (ERP) или относительный рефрактерный период (RRP). Ткань в ERP не способна проводить какие-либо входящие импульсы. Ткань в RRP способна проводить входящие импульсы, но результирующий потенциал действия будет менее крутым и более широким, чем нормальный потенциал действия. Ткани в состоянии покоя способны нормально проводить импульсы. Я обрабатывал импульсы, достигающие тканей в RRP, так же, как и импульсы, достигающие тканей в состоянии покоя, но я планирую реализовать эффекты RRP позже. Наиболее важными параметрами для узлов являются таймер отдыха, таймер ERP и таймер RRP.

Пути в модели Simulink могут иметь 1 из 4 различных состояний: бездействие, антеградная проводимость, ретроградная проводимость или двойная. Двойной статус возникает, когда дорожка не закончена, проводя в одном направлении, но приходит импульс с другого направления. Наиболее важным параметром для путей является таймер проводимости. После установки таймера проведения он одинаков для антеградного и ретроградного направлений.

МАТЛАБ

Позже я решил воссоздать модель Simulink в MATLAB. Я основывал свой код MATLAB на более сложной модели, которая ранее была разработана в UPenn для моделирования реципрокной тахикардии AV-узла (AVNRT). Я смог смоделировать то же самое, что и раньше, но с небольшими отличиями в значениях параметров. Например, в модели MATLAB я могу настроить таймеры антеградной и ретроградной проводимости на разные значения. Опять же, для простоты я опустил эффекты RRP.

Модель MATLAB состоит из основного сценария, функции обновления, функции автомата узла, функции автомата пути и эмулятора ATP. Основной сценарий вызывает функцию обновления, которая, в свою очередь, вызывает функции автомата узла и пути на каждом временном шаге. В зависимости от количества узлов и путей функции автомата узла и пути будут вызываться столько раз, сколько необходимо, прежде чем функция обновления окончательно обновит основной скрипт. Затем основной сценарий может увеличить таймер, перейти к следующему временному шагу и отобразить результирующий сердечный ритм. Эмулятор ATP вызывается из основного сценария и активирует соответствующий узел (узлы) в нужное время — как если бы импульс стимуляции был доставлен прямо в место цепи.

Можно представить, что при наличии нескольких узлов и путей таблицы были бы полезны для хранения всех их параметров. Файлы данных MATLAB можно создавать с помощью отдельного сценария для хранения этих информационных таблиц, которые затем можно загрузить в основном сценарии, просто набрав «загрузить», а затем имя файла. Таким образом, MATLAB удобен для моделирования повторного входа — отслеживать все мои числа в одном файле очень просто!

До сих пор я моделировал в своих моделях только экстрастимулы и кардиостимуляцию. Я предположил, что всегда знаю состояние цепи, поэтому я могу решить, когда доставляются импульсы АТФ. Я также предположил, что импульсы доставляются непосредственно в схему повторного входа. На самом деле существует барьер из промежуточной ткани между местом стимуляции и цепью, которая имеет собственные рефрактерные периоды и время проводимости. Я планирую развивать свой код дальше, чтобы отказаться от этих предположений и создать более клинически релевантную модель. Я также планирую разработать алгоритм автоматизированного ATP (AATP), который сможет определять состояние реентерабельного контура после проведения ATP-стимуляции. Такой алгоритм будет корректировать последующую стимуляцию ATP в ответ на ускорение или сброс схемы, чтобы более эффективно завершить ее. На данный момент мои следующие шаги заключаются в реализации основных алгоритмов ATP. Базовый ATP не может определять состояние цепи, как это делает AATP, но подробнее об этом в следующем посте…

Базовая антитахикардическая стимуляция

Базовый ATP поставляется в 3 различных вариантах: взрыв, сканирование и линейное изменение. Пакетный ATP имеет постоянную, предварительно запрограммированную длину цикла для каждой отправляемой последовательности. Перед прекращением тахикардии можно отправить несколько последовательностей. Существует два типа пакетной стимуляции: асинхронная и частотно-адаптивная. Асинхронная пакетная стимуляция отправляет последовательности с одинаковой длиной цикла, несмотря ни на что. Однако при частотно-адаптивной пакетной стимуляции длина цикла последовательности будет изменяться в ответ на изменения продолжительности цикла тахикардии. Как и при любой ATP-стимуляции, последовательности доставляются с определенным процентом от продолжительности обнаруженного цикла тахикардии — обычно не короче 88%, чтобы избежать ускорения или перерождения в фибрилляцию.

Scan ATP аналогичен пакетному ATP с адаптацией к скорости в том, что длина цикла изменяется между последовательностями. Однако при сканировании АТФ эти изменения запрограммированы заранее и будут происходить независимо от продолжительности цикла тахикардии. Ramp ATP, с другой стороны, видит изменения длины цикла внутри последовательности. Грубая диаграмма, любезно предоставленная автором, представлена ​​ниже.

Следующие две недели я проведу в Технологическом институте Джорджии, изучая высокоточные 3D-модели сердца. Ожидайте обновления в ближайшее время!