Список сокращений и условных обозначений 3
Введение 4
1. Проект Memristive Spinal Cord 6
2. Анализ нейросимуляторов NCS6, NeuroGPU и NEST 8
3. Реализация GRAS (GPU Reflex Arc Simulator) 10
3.1. Сравнение стандартов и фреймворков параллелизации программного кода нейросимулятора 10
3.1.1. CPU архитектура: OpenMP, MPI и OpenCL 10
3.1.2. GPU архитектура: OpenCL, OpenACC и CUDA 13
3.1.3. Структуры AoS, AoaS и SoA вычислительного принципа SIMT 16
3.2. Соответствие нейросимулятором био-правдоподобности .... 18
3.2.1. Разработка упрощенной модели нейрона ESRN для расчетов в реальном времени 18
3.2.2. Создание модели синапса для передачи сигнала 25
3.3. Архитектура GRAS 28
3.4. Воссоздание работы центрального генератора упорядоченной активности отдела спинного мозга в вычислительной модели GRAS 33
3.5. Ускорение работы нейросимулятора для видеокарты Nvidia K80 36
4. Результаты GRAS симуляции модели отдела спинного мозга крысы . 41
Заключение 44
Список литературы
По данным Всемирной организации здравоохранения (ВОЗ) ежегодно в мире получают травму спинного мозга от 250 000 до 500 000 человек. Подобное повреждение в разной степени приводит к общему ухудшению здоровья и даже к угрозе жизни (смертность с травмой выше в 2-5 раз, чем у не травмированных людей) [73]. В крупных городах России (на 2011 год) частота получения травмы спинного мозга примерно составляет 0.58-0.6 случаев на 10 000 человек [75], в то время как в США (на 2012 год) частота случаев приблизительно равна 0.54 на 10 000 человек [55].
Восстановление способности к самостоятельной ходьбе является одной из приоритетных задач реабилитации пациентов со спинальными травмами. Существуют два способа восстановления: (1) полная операция на спинной мозг с трансплантацией нервных клеток с дальнейшей послеоперационной физиотерапией в клинике, и (2) мало-инвазивные операции или без-операционные вмешательства с упором на физиотерапии с системами для восстановления ходьбы. Процесс восстановления двигательной активности дорогостоящий, занимает много времени (от одного года), требует постоянных тренировок и обследования специалистов [47].
Исследования и работы в области травм спинного мозга очень актуальны. Американский медицинский центр Mayo Clinic (Рочестер, штат Миннесота) активно проводит испытания по компенсации двигательных нарушений пациентов при травме спинного мозга [22]. Их исследования [19; 37; 39] базируются на постоянной электростимуляции отдела спинного мозга без изменения паттерна сигнала. В данном подходе отсутствует адаптация сигнала в зависимости от кожного входа стопы, что не позволяет пациенту носить стимулятор в повседневной жизни, что сэкономило бы денежные средства пациента при нахождении в стационаре или реабилитационном центре.
В связи с этим, возникает проблема отсутствия протезного устройства, которое может в режиме реального времени адаптироваться под шаг пациента и заменять работу отдела спинного мозга для восстановления двигательной активности (ходьбы) после травмы без круглосуточного надзора специалистов.
Цель - создать нейросимулятор, который в режиме реального времени может обрабатывать кожные входы, перестраивать паттерн шага и выводить результат работы на внешний стимулятор, чтобы заменить работу отдела спинного мозга, отвечающего за ходьбу.
Для достижения цели были поставлены следующие задачи:
• сравнить существующие нейросимуляторы, найти их плюсы и минусы, выделить особенности для создания нового инструмента;
• подобрать оптимальный инструмент распараллеливания и тип структур данных для SIMT (single instruction, multiple threads) подхода;
• написать код нейросимулятора и модели центрального генератора упорядоченной активности (ЦГУА) на языке C++;
• провести эксперимент по работе нейросимулятора в аппаратном комплексе с цифро-аналоговым преобразователем для будущей стимуляции нервов сгибательной мышцы (руки или ноги) человека.
Объект исследования: био-совместимая симуляция функционального отдела мозга, состоящего из рефлекторной дуги и ЦГУА, способная заменить его поврежденную активность (нейропротезирование).
Предмет исследования: разработка био-правдоподобного нейросимулятора, работающего в режиме реального времени, для симуляции центрального генератора упорядоченной активности.
Цель дипломной работы выполнена в полном объёме - реализован нейросимулятор GRAS на базе архитектуры GPU, работающий в режиме реального времени, имитирующий био-правдоподобную топологию ЦГУА и выводящий симулируемую активность мотонейронов через цифро-аналоговый преобразователь. На базе проведенного сравнения существующих нейросимуляторов появилось понимание трендов в разработке био-инспирированных систем. GRAS уже активно используется лабораторией в проекте по созданию протеза сегмента спинного мозга для реабилитации людей, которые получили травму данного отдела и стали парализованными. Для возможности симуляции в режиме реального времени были использованы имеющиеся средства ускорения работоспособности и проделана подробная работа по ее анализу В будущих реализациях нейросимулятора планируется перенос архитектуры на одноплатные маломощные устройства, чтобы проводить вычисления для носимых нейропротезов или робототехнических систем. Простота нейросимулятора позволяет использовать дополнительную интеграцию с периферийными устройствами.
По результатам дипломной работы и проекта memristive spinal cord были написаны научные статьи для зарубежных журналов в соавторстве [40; 41; 68]. Кроме того, планируется к публикации в этом году статья в известном мировом журнале Nature Communication, аккумулирующая все результаты и наработки проекта лаборатории.
Код нейросимулятора GRAS и дополнительные Python-скрипты для визуализации данных и других экспериментальных наработок опубликованы в репозитории проекта лаборатории нейроморфных вычислений и нейросимуляций КФУ: github.com/research-team/memristive-spinal-cord/tree/master/GRAS.