MindCopy — программная платформа биологически-реалистичного моделирования нейронных сетей

MindCopy — программная платформа биологически-реалистичного моделирования нейронных сетей

Дата: 23 июня 2026 г. Автор: Фешин В. А.


Аннотация

MindCopy представляет собой интегрированную программную платформу для построения, визуализации и симуляции биологически-реалистичных нейронных сетей с компартментной (сегментной) морфологией. Платформа включает вычислительное ядро (BioNeuronCore), среду визуального моделирования (BioNeuronStudio), инструментарий разработки плагинов (BioNeuronSDK) и платформу автоматизированного тестирования (StudioTestBench). Поддерживается CPU- и GPU-исполнение (Intel SYCL/oneAPI DPC++), бинарный формат BION v6, 121 тип трансмембранных модификаторов, библиотека из 224 типов нейронов (24 головастика Xenopus laevis + 200 человека), 14 нейромедиаторов, 5 ионов, 36 генов ядерной регуляции. Все ионные токи рассчитываются по формализму Гольдмана-Ходжкина-Катца (GHK). Система обеспечивает полный цикл: от эмбрионального развития коннектома до поведенческих реакций (хемотаксис, фототаксис, аудиотаксис, вестибулярные рефлексы, электро-/магниторецепция).

Ключевые слова: вычислительная нейронаука, компартментное моделирование, GHK-формализм, GPU-симуляция, SYCL, нейронная сеть, коннектом, головастик, CPG, нейромодуляция, STDP, BION-формат.


1. Введение

Современная вычислительная нейронаука требует инструментов, способных симулировать сети из тысяч нейронов с детальной биофизикой каждого сегмента, сохраняя при этом интерактивность визуализации и возможность экспериментального протоколирования. Платформа MindCopy создана для заполнения этого пробела — она объединяет высокопроизводительное ядро симуляции, научный GUI и экосистему плагинов в единую среду.

1.1. Мотивация

Большинство существующих симуляторов (NEURON, NEST, Brian) ориентированы либо на детальное моделирование одиночных нейронов, либо на крупномасштабные сети с упрощённой динамикой. MindCopy занимает промежуточную нишу: полнобиофизическая сегментная модель с 121 типом ионных каналов/рецепторов/насосов на сетях до 10⁴ нейронов и 10⁵ сегментов с интерактивной 3D-визуализацией.

1.2. Состав платформы

Компонент Версия Назначение
BioNeuronCore v0.19.3 Вычислительное ядро: C++17 + SYCL 2020, GHK-токи, диффузия, пластичность, демон IPC, batch mode
BioNeuronStudio v0.38.4 GUI: OpenGL 3.3 + Dear ImGui, 3D-вьюпорт, графика, запись экспериментов, IPC-клиент
BioNeuronSDK v0.6.0 Инструментарий плагинов: plugin-devkit.h, генератор dispatch, CMake-модули
BioNeuronOrchestrator v0.4.0 Распределённые вычисления: REST API, parameter sweep, эволюция, скрининг, онтогенез, волонтёрский дашборд
StudioTestBench v0.3.1 Автоматизированное тестирование: 350+ тестов, fuzzing, valgrind
examples 16 образовательных экспериментов (.bexp) с трёхъязычными README (RU+EN+ZH)

2. Архитектура системы

2.1. Принципиальная схема

BioNeuronStudio (GUI, OpenGL 3.3, Dear ImGui)
    │  simulation_core_api.h — opaque C API (void*) или IPC-транспорт
    ▼
BioNeuronCore (libbiocore_gcc.a / libbiocore_gpu_backend.so / biocore-daemon --batch)
    │  plugin-devkit.h — загрузка .so плагинов через dlopen
    ▼
BioNeuronSDK (генераторы, шаблоны, CMake-модули)

BioNeuronOrchestrator (REST API, parameter sweep, evolution, screening, ontogenesis, leaderboard)
    │  управление распределёнными вычислениями (6 этапов)
    ▼
BioNeuronAgent (клиентский агент на вычислительных узлах)

Ключевой архитектурный принцип — полная изоляция типов между Studio и Core. Studio никогда не включает заголовки Core напрямую; всё взаимодействие осуществляется через simulation_core_api.h, который экспонирует только opaque-указатели (void*) и accessor-функции. Это предотвращает бинарное связывание и позволяет независимую эволюцию обоих проектов.

2.2. Вычислительное ядро (BioNeuronCore)

Язык: C++17 + SYCL 2020 (Intel oneAPI DPC++) Сборка: GCC (CPU, libbiocore_gcc.a) и Intel DPC++ (GPU, libbiocore_gpu_backend.so) Модель данных: POD (Plain Old Data), #pragma pack(1), фиксированные массивы — совместимость с GPU/USM

Цикл симуляции (5 шагов на тик)

Каждый вызов run_tick(dt) выполняет пять последовательных шагов с явными q.wait()-барьерами:

  1. Токи модификаторовI_buffer посегментно (CPU или GPU dispatch)
  2. Аксиальные токи через IntraConnection → атомарное накопление в I_buffer 2.5. Межсегментная диффузия: ионы, нейромедиаторы, АТФ, температура, транскрипционный сигнал — закон Фика, O(N_conn), CPU
  3. Синаптические токи: спайк → выброс → модуляция → пост-ответ → клиренс
  4. Обновление мембранного потенциала: V_m += I_buffer / C_m · dt, сброс I_buffer

Двойной диспетчер CPU/GPU

  • CPU: таблица function pointer’ов modifier_current_table[128], загружаемая из .so плагинов через dlopen. Не требует пересборки Core при добавлении модификаторов.
  • GPU: switch-оператор на 121 case (SYCL не поддерживает function pointers). Требует перекомпиляции.
  • Fallback chain: CPU путь → таблица плагинов → биологический fallback (скомпилированный switch).

Формат BION v6

Бинарный формат нейронной сети. Структуры с #pragma pack(1):

Структура Размер Назначение
NetworkHeader 84 байта Версия, кол-во элементов, v5+: num_nuclei
Segment 988 байт Геометрия, V_m, 5+5 ионов, 14 NT, 16 модификаторов, АТФ
Modifier 44 байта Тип, плотность, state[8], флаги
Synapse 824 байта pre/post ID, рецепторы, cleft_nt[14], weight, delay
Nucleus 332 байта 36 генов (gene_activity + protein_level), v5→v6 миграция
IntraConnection 12 байт Сегмент-сегмент
Neuron 24 байта Идентификатор, флаги
ConsolidationEvent 36 байт Данные консолидации

Обратная совместимость: v3→v4→v5→v6 с миграцией на лету при загрузке.

2.3. Графическая студия (BioNeuronStudio)

Фреймворки: OpenGL 3.3 Core, Dear ImGui (docking), ImGuizmo, ImPlot Язык: C++17 Локализация: русский, английский, китайский (i18n JSON)

Основные панели и окна

Компонент Функциональность
3D-вьюпорт Орбитальная камера, закрытые цилиндры + торцевые диски, frustum-стыки (сглаживание переходов между сегментами разного радиуса), ray-cast-выделение, ImGuizmo (translate/rotate), подсветка спайков
Панель сборки Создание сегментов (сома, дендрит, аксон, бутон, шипик), шаблоны сетей, CPG-шаблон
Панель свойств V_m, геометрия, модификаторы, рецепторы синапсов, связанные сегменты
Иерархия сети Дерево: Сеть → Нейроны → Сегменты → Модификаторы + Синапсы, контекстные меню, drag-and-drop
Графики (ImPlot) V_m, ионы, спайк-растр, ионные/синаптические токи, кольцевой буфер 10000 точек, CSV-экспорт
Панель «Подопытные» Генерация головастика (7 правил Roberts 2014), онтогенез, сенсорный слой, 3D-тело
Конвертер SWC→BION, метрики морфологии, настройка длин сегментов
Библиотека клеток 224 типа нейронов с предзаданными биофизическими профилями
Стимуляция I_clamp, voltage clamp, ramp, ионные/лигандные инжекции
Пробы Канюли и электроды: запись/стимуляция/инжекция, 3D-визуализация
Эксперименты Запись/воспроизведение в .bexp (JSON-заголовок + бинарные кадры), браузер, плеер
NeuroML Импорт/экспорт NeuroML v2: cell/morphology, biophysicalProperties, projection
Гистология 3 режима (фактический/минималистичный/биологический 1:1), N/C ratio из морфологии, ядрышки, Ниссль-вещество, 4 окраски
Запись видео AVI: несжатый / MJPEG, асинхронная генерация кадров
Обновления Онлайн-проверка через API (AES-256-GCM) + локальный источник (.deb/.rpm/.AppImage/.so)

Симуляционный мост (SimulationBridge)

  • Три режима: CPU (статический линк), GPU (dlopen), IPC (Unix-сокет/TCP к демону)
  • Потокобезопасность: мьютекс, копирование снапшотов в NetworkSnapshot для GUI
  • Чекпоинты: сохранение/загрузка состояния симуляции
  • USM-указатели: GPU Unified Shared Memory доступны с CPU без изменений
  • Multi-session: изоляция сессий через SessionContext, независимые симуляции на GPU

2.4. Оркестратор распределённых вычислений (BioNeuronOrchestrator)

HTTP-сервер (libmicrohttpd) + клиентский агент (libcurl). Обеспечивает распределённое выполнение задач на множестве вычислительных узлов. Реализован в виде 6 последовательных этапов, каждый с полным тестовым покрытием.

Архитектура оркестратора

  • Orchestrator Server (C++17, libmicrohttpd): REST API, очередь задач с приоритетами, персистентность через MySQL/MariaDB (IDatabase+MockDatabase для тестирования без БД)
  • BioNeuron Agent: лёгкий клиент на вычислительных узлах, получает задачи, запускает Core daemon в batch-режиме (--batch --load-bion --ticks --params-json --seed), отчитывается о результатах
  • Криптография: AES-256-GCM шифрование, ECDSA-P256 подпись, PBKDF2 деривация ключей (OpenSSL)
  • Валидация: JSON-парсер с range-check’ами, hex-валидация (SHA-256), проверка URL и путей
  • Логирование: ротация по размеру (10 МБ) и количеству файлов (5), макросы OLOG_INFO/WARN/ERROR, формат [timestamp] [LEVEL] message
  • Дашборд: динамические таблицы узлов и задач из БД, статус-бейджи, автообновление

Этап 1: Parameter Sweep (пакетный режим)

Параметрическая развёртка: одна BION-сеть × N комбинаций параметров. Оркестратор генерирует sub_jobs перебором значений (линейная и логарифмическая шкала), агенты получают .bion + params_json → Core daemon в batch-режиме → .bexp + метрики. Core daemon поддерживает --batch, --params-json, --seed, --bexp-output. IPC-сообщение MSG_RUN_TASK_PARAMS (0x090A).

Этап 2: Проверка памяти + Tiered Execution

Перед назначением задачи проверяется соответствие возможностей узла (RAM, GPU-память, CPU-ядра) требованиям задачи. Агент читает /proc/meminfo → регистрирует NodeCapabilities. Core поддерживает mmap-аллокацию (MAP_PRIVATE | MAP_ANONYMOUS) с madvise-подсказками и классификацию сегментов HOT/WARM/COLD (shadow validation: tiered execution выключен по умолчанию, все вычисления — полный биофизический тик).

Этап 3: Дублирование + Валидация

Каждая sub_job назначается на 2 независимых агента. Результаты сравниваются по метрикам (mean V_m по популяциям, spike count, synchrony index) с допуском 0.1%. При расхождении назначается третий агент — решение большинством голосов (majority vote). Статусы: TASK_PARTIALLY_VALIDATED → TASK_FULLY_VALIDATED / TASK_DIVERGENT.

Этап 4: Эволюционная оптимизация + Виртуальный скрининг

Генетический алгоритм (tournament selection, single-point crossover, Gaussian mutation, elite 10%, tournament size 3, early-stop convergence) на пространстве параметров сети. Виртуальный скрининг библиотек соединений — каждая молекула → sub_job → ранжирование по efficacy score.

Этап 5: Онтогенез + Коннектом-исследование

Долгие задачи с чекпоинтами. Core: MSG_CHECKPOINT_AND_CONTINUE (0x0804), graceful shutdown (SIGTERM → чекпоинт → exit(75)). Онтогенез: 4-стадийная цепочка (EARLY_TAILBUD → … → FREE_SWIMMING). Коннектом: LHS-сэмплинг (Latin Hypercube Sampling) синаптической матрицы.

Этап 6: Волонтёрский дашборд

Публичный leaderboard (GET /api/v1/leaderboard?limit=100), личная статистика волонтёра, система баллов (base_points = ticks/1000 × capability_multiplier), бейджи: «First Contribution», «10 Tasks», «100K Ticks», «1M Ticks», «Validated», «Ontogeny Pioneer», «Evolution Master», «7-Day Streak». Трёхъязычный интерфейс (RU+EN+ZH).

API

POST   /api/v1/node/register        — регистрация узла с capabilities
POST   /api/v1/task/claim           — запросить sub_job
POST   /api/v1/task/result          — отправить результат с метриками
POST   /api/v1/task/heartbeat       — heartbeat с метриками CPU/GPU/память
GET    /api/v1/task/status/:id      — статус задачи
POST   /api/v1/task/create_sweep    — создать parameter sweep
POST   /api/v1/task/create_evolution — создать эволюционный прогон
POST   /api/v1/task/create_screening — создать виртуальный скрининг
POST   /api/v1/task/create_experiment — создать эксперимент (.bexp)
GET    /api/v1/leaderboard          — таблица лидеров (публичный)
GET    /api/v1/volunteer/:id/stats   — статистика волонтёра (публичный)

2.5. Инструментарий плагинов (BioNeuronSDK)

  • plugin-devkit.h — самодостаточный заголовок (POD-типы, константы, API, макросы, хелперы)
  • biocore-gen-dispatch.py — Python-генератор GPU/SYCL dispatch-кода из .desc дескрипторов
  • biocore-plugin.cmake — CMake-модуль для сборки .so плагинов (GCC) и генерации dispatch
  • Пользовательские типы: ID 121–127 (встроенные: 0–120)
  • Двойной диспетчер: CPU через function pointer’ы из .so, GPU через скомпилированный switch

2.6. Платформа тестирования (StudioTestBench)

350+ тестов: модульные (Core 32/32), интеграционные (Orch 16/16, SDK 6/6), компонентные (Studio 214), E2E, регрессионные, smoke, performance, security (fuzzing), chaos, visual regression. 70 тестов JSON-парсера + логирования. 7 тестов многопоточной изоляции демона (daemon multi-session validation). Valgrind-валидация (0 ошибок). MockDatabase для тестирования оркестратора без MySQL. Полный прогон: ~30 минут.


3. Биофизическая модель

3.1. Сегментно-компартментная архитектура

Каждый нейрон представлен цепочкой независимых электрических компартментов (сегментов), соединённых внутриклеточными связями (IntraConnection). Сегмент размером 988 байт содержит:

  • Геометрия: позиция (x, y, z), длина, радиус → площадь мембраны → ёмкость (C_m = 0.01 пФ/мкм²)
  • Электрические: V_m (мВ), I_buffer
  • Ионные концентрации: 5 внутриклеточных + 5 внеклеточных (Na⁺, K⁺, Ca²⁺, Cl⁻, Mg²⁺)
  • Нейромедиаторы: 14 типов во внеклеточном пространстве (cleft)
  • Модификаторы: до 16 трансмембранных белков на сегмент
  • Метаболизм: АТФ, температура
  • Пластичность: transcription_signal (CREB-зависимый)

3.2. Гибрид HH+GHK: кинетика ворот — Ходжкин-Хаксли, ток — Гольдман-Ходжкин-Катц

В платформе MindCopy используется гибридный подход, разделяющий кинетику воротного механизма и уравнение ионного тока:

  • Кинетика ворот (Ходжкин-Хаксли, HH): активационные (m) и инактивационные (h) переменные описываются дифференциальными уравнениями первого порядка: \[\frac{dm}{dt} = \alpha_m(V) \cdot (1 - m) - \beta_m(V) \cdot m, \quad \frac{dh}{dt} = \alpha_h(V) \cdot (1 - h) - \beta_h(V) \cdot h\] где α(V) и β(V) — потенциал-зависимые скорости перехода между состояниями. HH-кинетика реализована в 59 встроенных плагинах (hh_biological.cpp).

  • Уравнение тока (Гольдман-Ходжкин-Катц, GHK): вместо классического линейного приближения I = g·(V − E_rev) используется электро-диффузионное уравнение GHK: \[I_{ion} = P_{ion} \cdot m^p \cdot h^q \cdot z^2 \cdot \frac{VF^2}{RT} \cdot \frac{[ion]_i - [ion]_o \cdot e^{-zVF/RT}}{1 - e^{-zVF/RT}}\] где P_ion — максимальная проницаемость, z — валентность, F — постоянная Фарадея, R — газовая постоянная, T — температура.

Принципиальное отличие от классического HH: в стандартной модели Ходжкина-Хаксли реверсивный потенциал E_rev задаётся константой (например, E_Na = +50 мВ), и ток вычисляется как I = g_max · m³h · (V − E_rev). Это приближение справедливо лишь при постоянных ионных концентрациях. В MindCopy E_rev никогда не задаётся константой — он вычисляется динамически из реальных внутри- и внеклеточных концентраций по уравнению Нернста: \[E_{rev} = \frac{RT}{zF} \ln\frac{[ion]_o}{[ion]_i}\]

Таким образом, HH отвечает за «когда открывается», GHK — за «сколько проходит». Это особенно критично для Ca²⁺ и Mg²⁺, чьи концентрации меняются на порядки в ходе симуляции.

Преимущества гибридного подхода: - Автоматический реверсивный потенциал: E_rev пересчитывается каждый тик из текущих концентраций - Прямое движение ионов: Ca²⁺, Mg²⁺ входят/выходят пропорционально GHK-току, меняя внутриклеточные концентрации - Вторичные эффекты: накопление K⁺ в щели или истощение Ca²⁺ из ER меняет движущую силу последующих токов - Термодинамическая согласованность: GHK-уравнение выводится из уравнения Нернста-Планка, а не постулируется

Все 121 тип модификаторов мигрированы на GHK (v0.15.0). Хардкодных E_rev в системе нет.

3.3. Диффузия (закон Фика)

Межсегментная диффузия для ионов, нейромедиаторов и метаболитов:

\[J = -D \cdot \frac{A}{L} \cdot \Delta C\]

где D — коэффициент диффузии (Стокс-Эйнштейн: D = kT/(6πηr)), A/L — геометрический фактор сегмента, ΔC — градиент концентрации.

3.4. Синаптическая передача

  • Химические синапсы: пресинаптический спайк → выброс нейромедиатора в щель (cleft_nt[NT]) → активация постсинаптических рецепторов → постсинаптический ток → клиренс (tau_clearance)
  • Электрические синапсы (gap junctions): V_j-гейт (Больцман) + Ca²⁺/CaM-гейт (Hill), connexin-36 (MOD_CONNEXIN_CX36)
  • Пресинаптические модуляторы: 12 типов, GPCR-каскады, модуляция вероятности выброса
  • Вероятностный выброс: xorshift32, seed = synapse_id ⊕ tick ⊕ (V_m · 1000)

3.5. Молекулярная пластичность

  • STDP (Spike-Timing-Dependent Plasticity): CaMKII (LTP) / Calcineurin (LTD) — кальциевый детектор совпадений
  • BCM-правило: скользящий порог θ_m (Ca²⁺-зависимый)
  • PP1/DARPP-32: дофамин-зависимая модуляция пластичности (D1→PKA→inhibit PP1→LTP↑)
  • Консолидация: MAPK/ERK, IKK/NF-kB, mTORC1, синтез белка, Cofilin (актиновое ремоделирование), MMP-9 (ECM-деградация) — 6 событий
  • Генная экспрессия: 36 генов, транскрипционные факторы → каналы, BION v6

3.6. Гомеостаз

  • PMCA: Ca²⁺-АТФаза плазмалеммы
  • NCX: Na⁺/Ca²⁺ обменник (3:1 стехиометрия)
  • KCC2: K⁺-Cl⁻ котранспортёр (стадийно-зависимый)
  • Na/K-АТФаза: 3Na⁺/2K⁺, поддержание градиентов
  • Ca²⁺-буфер: парвальбумин-подобный (быстрый/медленный пулы)

4. Каталог модификаторов (121 тип)

Группа 1: Базовые (0–7)

Ионотропные каналы (Na/K, Ca, Cl), метаботропный GPCR, миелин, синаптический выброс, физический сенсор, Na/K-насос.

Группа 2: Ионотропные рецепторы (8–16)

AMPA, NMDA, каинатный, GABA-A, глициновый, никотиновый, 5-HT3, P2X, TRPV1.

Группа 3: Метаботропные Gi/o (17–40) — 24 типа

GABA-B, 5-HT1(A/B/D/F), D2/D3/D4, M2/M4, A1/A3, mGluR(2/3/4/6/7/8), α2, CB1/CB2, H3, MT1/MT2. Ингибиторные: ↓cAMP, ↑K⁺-проводимость (GIRK), ↓Ca²⁺-токи.

Группа 4: Метаботропные Gs (41–51) — 11 типов

5-HT(4/6/7), D1/D5, A2A/A2B, β1/β2, H2, TAAR1. Возбуждающие: ↑cAMP → PKA → ↑Ca²⁺/Na⁺-токи.

Группа 5: Метаботропные Gq/11 (52–62) — 11 типов

5-HT2(A/B/C), α1A/α1B, M1/M3/M5, mGluR1/mGluR5, H1. Возбуждающие: ↑IP3/DAG → ↑Ca²⁺ (из ER) + ↑PKC.

Группа 6: Neuroblox-совместимые (63–79) — 17 типов

Расширенные биофизические модели: MoradiFullNMDAR, AMPA-STA, D1/D2-модуляторы MSN, α7-nAChR (Markov), TRPM4 (I_CAN), мускариновый (I_NCM), Destexhe-осцилляторы (AMPA/NMDA/GABA-A/GABA-B), MsnNMDAR/AMPAR, митохондриальный АТФ, термальный, CREB-транскрипция.

Группа 7: Генерические (80–81) — 2 типа

Параметрические: state[] задаёт V₁/₂, k, τ, g (вольтаж-зависимые) или EC₅₀, g, τ (лиганд-зависимые). Импорт из NeuroML.

Группа 8: Молекулярная STDP (82–86) — 5 типов

CaMKII, Calcineurin, Cav1.x L-type, Kv4.2 A-type K⁺, eCB-синтез (2-AG).

Группа 9: Консолидация (87–92) — 6 типов

MAPK/ERK, IKK/NF-kB, mTORC1, синтез белка, Cofilin, MMP-9.

Группа 10: Сенсоры и CPG (93–95) — 3 типа

Постингибиторный отскок (PIR), сенсор голода (АТФ), фоторецептор (pineal).

Группа 11: PIR-подтипы (96–97) — 2 типа

Cav3.x T-type Ca²⁺, HCN Ih.

Группа 12: Гомеостаз (98–102) — 5 типов

PMCA, NCX, KCC2, Ca²⁺-утечка, Ca²⁺-буфер.

Группа 13: Каналы ритмогенеза и специализированные (103–120) — 18 типов

SK, BK, NaP, Kir, K2P, обонятельный рецептор, Kir4.1 глиальный, глиальная Na/K-АТФаза, термальный шум (Johnson-Nyquist), Kv7 M-ток, PP1/DARPP-32, Connexin-36, вибрационный сенсор, отолитовая волосковая клетка, полукружный канал, ампулярный электрорецептор, магнетитовый механорецептор, криптохромный магнитный сенсор.


5. Нейромедиаторы (14 типов)

ID Название Тип
0 Глутамат Возбуждающий
1 ГАМК (GABA) Тормозный
2 Дофамин Нейромодулятор
3 Серотонин (5-HT) Нейромодулятор
4 Ацетилхолин Возбуждающий/модулятор
5 Аденозин Нейромодулятор
6 Норадреналин Нейромодулятор
7 Глицин Тормозный
8 Гистамин Нейромодулятор
9 Эндоканнабиноид Ретроградный
10 АТФ Нейромодулятор
11 Мелатонин Нейромодулятор
12 Mg²⁺ Блокатор NMDA
13 Никотин Агонист nAChR

6. Ионы (5 типов)

Na⁺, K⁺, Ca²⁺, Cl⁻, Mg²⁺. Каждый сегмент отслеживает внутри- и внеклеточные концентрации. Диффузия между сегментами. Ионные токи через GHK автоматически обновляют концентрации.


7. Библиотека нейронов (224 типа)

7.1. Головастик Xenopus laevis (24 типа)

Сенсорные (8): RB (Rohon-Beard, тактильный), PINEAL (фоторецептор), LL (lateral line, поток), ORN (обонятельный), AUDITORY_SENSOR (вибрация), OTOLITH (гравитация), SEMICIRCULAR (угловое ускорение), ELECTRORECEPTOR (E-поле).

Интернейроны (7): dIN (нисходящий, CPG-водитель ритма), cIN (комиссуральный, перекрёстное торможение), aIN (восходящий, GABA-ергический), dlc_MHR (ствол мозга, локомоторный драйв), TECTUM (зрительная интеграция), DS_IN (direction-selective lateral inhibition), SER (орексинергический поисковый).

Моторные (1): mn (мотонейрон).

Командные (1): AVOID (ретикулоспинальный escape, Mauthner-подобный).

Модуляторные (1): HYPOTHALAMIC (интероцептивный, голод).

Глия (2): GLIA_RADIAL (радиальная, K⁺-буфер), Ependymal cell (эпендимоцит).

Дополнительные (4): Kolmer-Agduhr cell (CSF-c), Skin touch receptor, Muscle spindle afferent, MAGNETORECEPTOR.

7.2. Человек (200 типов по категориям)

Категория Количество Ключевые представители
Кора головного мозга 14 Пирамидные (L2/3, L5, L6), интернейроны (PV, SST, VIP), звёздчатые, веретенообразные
Мозжечок 12 Пуркинье, гранулярные, Golgi, корзинчатые, звёздчатые, ядра мозжечка
Гиппокамп/Энторинальная кора/Субикулюм 9 Пирамидные CA1/CA3, гранулярные DG, интернейроны, субикулярные
Таламус 8 Релейные (LGN, MGN, VPL/VPM), ретикулярные, интраламинарные
Базальные ганглии 7 MSN D1/D2 (средние шипиковые), холинергические, PV-интернейроны
Ствол мозга 17 Моноаминергические (D RN, 5-HT RN, LC NE), ретикулярная формация, ядра шва, PAG
Черепные нервы 11 III (глазодвигательный), V (тройничный), VII (лицевой), VIII (вестибулокохлеарный), X (блуждающий)
Спинной мозг 14 α-мотонейроны, γ-мотонейроны, интернейроны (Ia, Ib, II), Renshaw
Сетчатка 15 Фоторецепторы (палочки, колбочки L/M/S), биполярные (ON/OFF), ганглиозные (midget, parasol, ipRGC), горизонтальные, амакриновые
Обонятельная луковица 4 Митральные, гранулярные, перигломерулярные
Гипоталамус 14 Орексиновые, MCH, вазопрессиновые, окситоциновые, GnRH, TRH, CRH, соматостатиновые, дофаминовые TIDA
Миндалина 3 Пирамидные BLA, центральные CeA
Лимбическая система 4 Прилежащее ядро (NAc MSN), септальные, поясная кора
Глия 11 Астроциты, олигодендроциты, микроглия, NG2⁺ предшественники, эпендимоциты, радиальная глия, Müller-глия, Бергман-глия
Автономная/Энтеральная 8 Симпатические/парасимпатические пре-/постганглионарные, энтеральные (плексус Ауэрбаха/Мейсснера)
Аудиторная/Вестибулярная 10 Волосковые клетки (улитка, саккулюс, утрикулюс), спиральный ганглий, Scarpa-ганглий
Сенсорная 8 Ноцицепторы, терморецепторы, механорецепторы (Меркель, Мейсснер, Руффини, Пачини), проприоцепторы
Метаболическая/Эндокринная 9 β-клетки поджелудочной, α-клетки, мелатониновые (пинеалоциты), тироциты, адренокортикоциты
Гипофиз 5 Гонадотрофы, лактотрофы, соматотрофы, кортикотрофы, тиротрофы
Сосудистая 2 Эндотелиальные, гладкомышечные
Нейромодуляторные 5+ Дофаминовые (SNc, VTA), серотониновые (Raphe), норадреналиновые (LC), ацетилхолиновые (BF), гистаминовые (TMN)
Стриатум 5 MSN D1 прямой путь, MSN D2 непрямой путь, FSI, ChAT, Pvalb
Промежуточный мозг 3 Эпиталамус (habenula), субталамус

8. Коннектом головастика: эмбриогенез in silico

Реализованы 7 правил Робертс (Roberts et al., 2014) для генерации коннектома головастика Xenopus laevis (4 стадии: EARLY_TAILBUD → LATE_TAILBUD → HATCHING → FREE_SWIMMING):

  1. Дифференцировка нейронов: сома в заданной дорсовентральной/ростральной позиции
  2. Рост аксонов: направленный рост с барьерами среды
  3. Ветвление аксонов: вероятностное, зависит от типа нейрона
  4. Формирование синапсов: спонтанные + вероятностная матрица 10×10
  5. CPG-контур: гарантированные перекрёстные тормозные связи (cIN↔︎dIN глицин + GABA-B), асимметричный kickstart
  6. Глия: радиальная глия, синцитий, K⁺-пространственная буферизация (Kir4.1)
  7. STDP/консолидация: назначение пластичности, подкрепление функциональных связей

Параметры сети на стадии FREE_SWIMMING: ~238 нейронов, ~5000 сегментов, ~28000 связей, ~7400 синапсов.


9. Поведенческие таксисы

9.1. Хемотаксис

SER-нейрон (орексинергический) + ORN → клинотаксис (swim_phase → nostril_offset ±40%). Градиент концентрации → асимметрия CPG → поворот к источнику.

9.2. Фототаксис

TECTUM → AVOID (GABA, w=3.0, торможение избегания). Тень → TECTUM падает → AVOID растормаживается → C-поворот. AVOID → contra-dIN (AMPA, w=2.0) + AVOID → ipsi-cIN (AMPA, w=1.5).

9.3. Аудиотаксис

AUDITORY_SENSOR=15, MOD_VIBRATION_SENSOR=115. Вибрация/звук → механотрансдукция → CPG-асимметрия.

9.4. Вестибулярный аппарат

OTOLITH=16 (гравитация + линейное ускорение), SEMICIRCULAR=17 (угловое ускорение). MET-каналы → Ca²⁺-адаптация.

9.5. Электрорецепция

MOD_ELECTRORECEPTOR_AMPULLARY=118: ампулы Лоренцини, гель-канал, low-pass фильтр, E-поле.

9.6. Магниторецепция

MOD_MAGNETITE_MECHANORECEPTOR=119 (Fe₃O₄-цепи → torque → MET) + MOD_CRYPTOCHROME_MAGNETIC=120 (Cry4, радикальные пары, свето-зависимый).


10. Образовательные эксперименты

В состав платформы входит пакет из 16 образовательных экспериментов в формате .bexp, распределённых по трём уровням:

Бакалавриат (4): action_potential (потенциал действия — HH Na⁺/K⁺ каналы, порог, рефрактерность), passive_cable (пассивный кабель — λ и τ, затухание сигнала), synaptic_integration (синаптическая интеграция — EPSP/IPSP, временная и пространственная суммация), lateral_inhibition (латеральное торможение — GABA-A, контрастное усиление).

Магистратура (8): motion_detection (детекция движения — задержанное торможение), direction_selective (направленная селективность — Barlow-Levick DS), cpg_rhythm (CPG-ритм — половинный центр, GABA-B/Glycine), working_memory (рабочая память — обоюдное торможение), receptive_field (рецептивное поле — центр-периферия), stdp_ltp (STDP долговременная потенциация — CaMKII), stdp_ltd (STDP долговременная депрессия — Calcineurin), stdp_learning (STDP обучение — зашумлённый вход, синаптическая конкуренция).

Аспирантура (4): epileptiform (эпилептиформная активность — ↑[K⁺]ₒ + GABA-A блок), pharmacology (фармакология — блокаторы и агонисты каналов), homeostatic_plasticity (гомеостатическая пластичность — PMCA/NCX/KCC2, скользящий порог BCM), bifurcations (бифуркации — раздвоение нейрональной динамики при вариации g_Na).

Каждый эксперимент сопровождается README на трёх языках (русский, английский, китайский) с теоретическим введением, описанием биофизических механизмов и пошаговым протоколом. Все эксперименты выполняются без суррогатов — через полный биофизический тик core_run_tick_impl (HH-кинетика ворот + GHK-токи + диффузия + пластичность).


11. Глоссарий

BION (Binary Neuronal Object Notation) — бинарный формат хранения нейронной сети. Компактное представление с #pragma pack(1). Версия 6.

CPG (Central Pattern Generator) — центральный генератор ритма. Нейронная цепь, производящая ритмический моторный паттерн (плавание) без сенсорной обратной связи.

GHK (Goldman-Hodgkin-Katz) — формализм расчёта ионных токов через мембрану. Учитывает реальные концентрации ионов, валентность, температуру. Заменяет упрощённое I = g·(V − E_rev).

HH (Hodgkin-Huxley) — кинетическая модель потенциал-зависимых ворот ионных каналов. Gate-переменные m (активация), h (инактивация) описываются дифференциальными уравнениями первого порядка. В MindCopy HH-кинетика определяет «когда канал открыт» (m^p · h^q), тогда как сам ионный ток вычисляется по GHK-уравнению, а не по классическому I = g·(V − E_rev). Гибрид HH+GHK: кинетика от HH, проводимость от GHK.

Модификатор (Modifier) — трансмембранный белок, добавляемый на сегмент. Может быть ионным каналом, рецептором, насосом, обменником, сенсором или компонентом сигнального каскада. Задаётся типом (0–120) и плотностью (density ∈ [0,1]). Размер структуры: 44 байта.

Нейромедиатор (Neurotransmitter) — химическое вещество в синаптической щели, активирующее постсинаптические рецепторы. 14 типов: глутамат, GABA, дофамин, серотонин, ацетилхолин, аденозин, норадреналин, глицин, гистамин, эндоканнабиноид, АТФ, мелатонин, Mg²⁺, никотин.

Сегмент (Segment) — электрический компартмент нейрона. Цилиндр с длиной и радиусом. Может быть сомой, дендритом, аксоном, пресинаптической специализацией (бутон) или постсинаптической (шипик). Основная единица симуляции. 988 байт.

Синапс (Synapse) — контакт между сегментами (химический, электрический). Химические синапсы проходят через PRE/POSTSYNAPSE-специализации (бутон → шипик). 824 байта.

STDP (Spike-Timing-Dependent Plasticity) — зависимая от временного порядка спайков пластичность. Пре-перед-пост → LTP (CaMKII); пост-перед-пре → LTD (Calcineurin).

PIR (Post-Inhibitory Rebound) — постингибиторный отскок. После сильной гиперполяризации T-type Ca²⁺-каналы (Cav3.x) де-инактивируются и открываются, производя деполяризующий «отскок».

IntraConnection — внутриклеточное соединение между двумя сегментами одного нейрона. Передаёт аксиальные токи.

SYCL — кроссплатформенный стандарт параллельного программирования (Khronos Group). В MindCopy используется реализация Intel oneAPI DPC++ для GPU-ускорения.

USM (Unified Shared Memory) — единая память CPU/GPU в SYCL. Указатели доступны с обоих устройств без явного копирования.

.bexp — бинарный формат записи экспериментов. JSON-заголовок (метаданные, конфигурация пробов) + бинарные кадры (посегментные V_m, ионы, NT).

.desc — JSON-дескриптор плагина. Содержит id, name, category, description, release (флаг пресинаптического модулятора).

POD (Plain Old Data) — структура данных без виртуальных функций, указателей и динамической памяти. Совместима с SYCL/USM и FPGA HLS.


12. Технические характеристики

Параметр Значение
Язык ядра C++17 + SYCL 2020
Язык студии C++17
Графика OpenGL 3.3 Core, Dear ImGui (docking), ImGuizmo, ImPlot
Сборка CMake, GCC (CPU), Intel DPC++ (GPU)
Платформа Linux x86-64
GPU Intel GPU (Intel oneAPI), поддержка NVIDIA/AMD через SYCL
FPGA Совместимость с Vitis HLS (POD, без new/malloc, минимальное ветвление)
Локализация Русский, English, 中文 (i18n JSON)
Комментарии Русский язык, идентификаторы — английский
Формат сети BION v6 (бинарный, #pragma pack(1))
Формат эксперимента .bexp (JSON + бинарные кадры)
NeuroML v2 импорт/экспорт
SWC Импорт/экспорт (ASCII, 7 колонок)
Видео AVI (несжатый / MJPEG), асинхронная генерация
Обновления HTTPS API + AES-256-GCM + локальный .deb/.rpm/.AppImage/.so
Тестирование 350+ тестов (Core 32, Orch 16, SDK 6, Studio 214, остальные — TestBench), Valgrind 0, fuzzing, CI
Batch mode Core daemon –batch: headless-симуляция без GUI, –params-json, –seed, –bexp-output
Чекпоинты Автосохранение каждые N тиков, –resume-from, graceful shutdown (SIGTERM)
Эксперименты 16 образовательных .bexp (Bachelor/Master/Doctoral), README на RU+EN+ZH
Распределённые вычисления 6 этапов: sweep, memory, validation, evolution, ontogenesis, dashboard
Лицензирование ECDSA-P256 оффлайн-ключ + онлайн-проверка (AES-256-GCM)

13. Заключение

Платформа MindCopy предоставляет полный инструментарий для вычислительной нейронауки — от молекулярных механизмов (HH-кинетика ворот, GHK-токи, STDP, генная экспрессия) до поведенческих реакций (таксисы) в единой интегрированной среде. Модульная архитектура (Core ↔︎ Studio ↔︎ SDK ↔︎ Orchestrator) позволяет независимо развивать вычислительное ядро, графический интерфейс, экосистему плагинов и инфраструктуру распределённых вычислений.

Распределённая архитектура из 6 этапов (parameter sweep, проверка памяти, дублирование с валидацией, эволюционная оптимизация, онтогенез с чекпоинтами, волонтёрский дашборд) позволяет масштабировать симуляцию на множество вычислительных узлов — от домашних ПК волонтёров до серверных кластеров. Пакет из 16 образовательных экспериментов с трёхъязычной документацией (RU+EN+ZH) обеспечивает плавный вход в платформу — от базовых концепций нейронауки до продвинутых исследовательских протоколов.

224 типа нейронов, 121 модификатор, 14 нейромедиаторов, 36 генов и 5 ионов обеспечивают детальное биофизическое моделирование, валидированное Valgrind-анализом (0 ошибок памяти) и 350+ автоматизированными тестами. Все вычисления происходят через полный биофизический тик: HH-кинетика определяет «когда канал открыт», GHK-уравнение — «сколько ионов проходит», без суррогатов и упрощённых моделей проводимости.

Система спроектирована с прицелом на будущее расширение: GPU/SYCL — для высокопроизводительных вычислений, POD-структуры — для FPGA HLS, SDK — для сообщества разработчиков плагинов, BION v6 — для долгосрочной бинарной совместимости, формат .bexp — для воспроизводимых экспериментов.


2026 Краснодар, Россия / Krasnodar, Russia

Библиотека клеток

Конвертер

3D-головастик