MindCopy — 生物真实感神经网络建模软件平台
日期: 2026年6月23日 作者: 费申 V. A.
摘要
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 守护进程,批量模式 |
| BioNeuronStudio | v0.38.4 | GUI:OpenGL 3.3 + Dear ImGui,3D 视口,图形,实验记录,IPC 客户端 |
| BioNeuronSDK | v0.6.0 | 插件工具包:plugin-devkit.h,调度生成器,CMake 模块 |
| BioNeuronOrchestrator | v0.4.0 | 分布式计算:REST API,参数扫描,进化,筛选,个体发生,志愿者仪表板 |
| StudioTestBench | v0.3.1 | 自动化测试:350+ 测试,模糊测试,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 — 通过 dlopen 加载 .so 插件
▼
BioNeuronSDK (生成器、模板、CMake 模块)
BioNeuronOrchestrator (REST API, parameter sweep, evolution, screening, ontogenesis, leaderboard)
│ 管理分布式计算(6 个阶段)
▼
BioNeuronAgent (计算节点上的客户端代理)
核心架构原则 — Studio 与 Core 之间的类型完全隔离。Studio 从不直接包含 Core 的头文件;所有交互都通过 simulation_core_api.h 进行,该文件只暴露不透明指针(void*)和访问器函数。这防止了二进制耦合,并允许两个项目独立演进。
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 兼容
模拟循环(每个 tick 5 个步骤)
每次调用 run_tick(dt) 执行五个连续步骤,具有显式的 q.wait() 屏障:
- 修饰子电流 →
I_buffer逐段(CPU 或 GPU 调度) - 轴向电流 通过
IntraConnection→ 原子累加到I_buffer中 - 跨段扩散:离子、神经递质、ATP、温度、转录信号 — 菲克定律,O(N_conn),CPU
- 突触电流:尖峰 → 释放 → 调制 → 突触后响应 → 清除
- 膜电位更新:V_m += I_buffer / C_m · dt,重置 I_buffer
双调度器 CPU/GPU
- CPU:函数指针表
modifier_current_table[128],通过dlopen从.so插件加载。添加修饰子不需要重新构建 Core。 - GPU:121 个 case 的
switch语句(SYCL 不支持函数指针)。需要重新编译。 - 回退链:CPU 路径 → 插件表 → 生物学回退(编译好的 switch)。
BION v6 格式
二进制神经网络格式。结构体使用 #pragma pack(1):
| 结构体 | 大小 | 用途 |
|---|---|---|
NetworkHeader |
84 字节 | 版本,元素数量,v5+:num_nuclei |
Segment |
988 字节 | 几何,V_m,5+5 离子,14 NT,16 修饰子,ATP |
Modifier |
44 字节 | 类型,密度,state[8],标志 |
Synapse |
824 字节 | 前/后 ID,受体,cleft_nt[14],权重,延迟 |
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 视口 | 轨道摄像机,封闭圆柱 + 端盖圆盘,截锥接头(平滑不同半径段之间的过渡),射线拾取选择,ImGuizmo(平移/旋转),尖峰高亮 |
| 组装面板 | 创建段(胞体、树突、轴突、芽体、棘),网络模板,CPG 模板 |
| 属性面板 | V_m,几何,修饰子,突触受体,关联段 |
| 网络层级 | 树:网络 → 神经元 → 段 → 修饰子 + 突触,上下文菜单,拖放 |
| 图形(ImPlot) | V_m,离子,尖峰光栅,离子/突触电流,环形缓冲区 10000 点,CSV 导出 |
| 「受试体」面板 | 蝌蚪生成(7 条 Roberts 2014 规则),个体发生,感觉层,3D 身体 |
| 转换器 | SWC→BION,形态学度量,段长度设置 |
| 细胞库 | 224 种神经元类型,具有预设的生物物理剖面 |
| 刺激 | I_clamp,电压钳,斜坡,离子/配体注入 |
| 探针 | 插管和电极:记录/刺激/注入,3D 可视化 |
| 实验 | 录制/回放为 .bexp(JSON 头 + 二进制帧),浏览器,播放器 |
| NeuroML | 导入/导出 NeuroML v2:cell/morphology,biophysicalProperties,projection |
| 组织学 | 3 种模式(实际/简约/生物学 1:1),形态学衍生的 N/C 比,核仁,尼氏体,4 种染色 |
| 视频录制 | AVI:未压缩 / MJPEG,异步帧生成 |
| 更新 | 通过 API 在线检查(AES-256-GCM)+ 本地源(.deb/.rpm/.AppImage/.so) |
模拟桥(SimulationBridge)
- 三种模式:CPU(静态链接),GPU(dlopen),IPC(Unix 套接字/TCP 到守护进程)
- 线程安全:互斥锁,快照复制到
NetworkSnapshot供 GUI 使用 - 检查点:保存/加载模拟状态
- USM 指针:GPU 统一共享内存可从 CPU 无需更改地访问
- 多会话:通过
SessionContext隔离会话,GPU 上独立的模拟
2.4. 分布式计算编排器(BioNeuronOrchestrator)
HTTP 服务器(libmicrohttpd)+ 客户端代理(libcurl)。支持在多个计算节点上分布式执行任务。实现为 6 个连续阶段,每个阶段具有完整的测试覆盖。
编排器架构
- Orchestrator Server(C++17,libmicrohttpd):REST API,带优先级的任务队列,通过 MySQL/MariaDB 持久化(IDatabase+MockDatabase 用于无需数据库的测试)
- BioNeuron Agent:计算节点上的轻量客户端,接收任务,以批量模式启动 Core 守护进程(
--batch --load-bion --ticks --params-json --seed),报告结果 - 密码学:AES-256-GCM 加密,ECDSA-P256 签名,PBKDF2 密钥派生(OpenSSL)
- 验证:带范围检查的 JSON 解析器,十六进制验证(SHA-256),URL 和路径检查
- 日志:按大小(10 MB)和文件数(5)轮转,宏 OLOG_INFO/WARN/ERROR,格式
[timestamp] [LEVEL] message - 仪表板:来自数据库的动态节点和任务表,状态徽章,自动刷新
阶段 1:Parameter Sweep(参数扫描)
参数扫描:一个 BION 网络 × N 种参数组合。编排器通过枚举值(线性和对数刻度)生成 sub_jobs,代理接收 .bion + params_json → Core 守护进程批量模式 → .bexp + 指标。Core 守护进程支持 --batch、--params-json、--seed、--bexp-output。IPC 消息 MSG_RUN_TASK_PARAMS(0x090A)。
阶段 2:内存检查 + 分层执行
在分配任务之前,验证节点能力(RAM、GPU 内存、CPU 核心)是否符合任务要求。代理读取 /proc/meminfo → 注册 NodeCapabilities。Core 支持 mmap 分配(MAP_PRIVATE | MAP_ANONYMOUS)和 madvise 提示,以及 HOT/WARM/COLD 段分类(影子验证:默认关闭分层执行,所有计算都是完整的生物物理 tick)。
阶段 3:重复 + 验证
每个 sub_job 分配给 2 个独立代理。结果按指标(按群体的平均 V_m、尖峰计数、同步指数)进行比较,容差为 0.1%。如有分歧,分配第三个代理 — 多数投票决定。状态:TASK_PARTIALLY_VALIDATED → TASK_FULLY_VALIDATED / TASK_DIVERGENT。
阶段 4:进化优化 + 虚拟筛选
遗传算法(锦标赛选择、单点交叉、高斯突变、精英 10%、锦标赛规模 3、早停收敛)在网络参数空间上进行。化合物库虚拟筛选 — 每个分子 → sub_job → 按 efficacy score 排名。
阶段 5:个体发生 + 连接组研究
带检查点的长时间任务。Core:MSG_CHECKPOINT_AND_CONTINUE(0x0804),优雅关闭(SIGTERM → 检查点 → exit(75))。个体发生:4 阶段链(EARLY_TAILBUD → … → FREE_SWIMMING)。连接组:LHS 采样(Latin Hypercube Sampling)突触矩阵。
阶段 6:志愿者仪表板
公共排行榜(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 — 注册节点及能力
POST /api/v1/task/claim — 请求 sub_job
POST /api/v1/task/result — 提交结果及指标
POST /api/v1/task/heartbeat — 心跳及 CPU/GPU/内存指标
GET /api/v1/task/status/:id — 任务状态
POST /api/v1/task/create_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 生成器,从
.desc描述符生成 GPU/SYCL 调度代码 - biocore-plugin.cmake — CMake 模块,用于构建
.so插件(GCC)和生成调度 - 用户自定义类型:ID 121–127(内置:0–120)
- 双调度器:CPU 通过
.so的函数指针,GPU 通过编译好的 switch
2.6. 测试平台(StudioTestBench)
350+ 测试:单元测试(Core 32/32),集成测试(Orch 16/16,SDK 6/6),组件测试(Studio 214),端到端测试,回归测试,冒烟测试,性能测试,安全测试(模糊测试),混沌测试,视觉回归测试。JSON 解析器和日志记录的 70 个测试。守护进程多线程隔离的 7 个测试(守护进程多会话验证)。Valgrind 验证(0 错误)。MockDatabase 用于无需 MySQL 的编排器测试。完整运行:约 30 分钟。
3. 生物物理模型
3.1. 分段-房室架构
每个神经元由一连串独立的电学房室(段)表示,通过细胞内连接(IntraConnection)相连。大小为 988 字节的段包含:
- 几何:位置(x, y, z),长度,半径 → 膜面积 → 电容(C_m = 0.01 pF/μm²)
- 电学:V_m(mV),I_buffer
- 离子浓度:5 种细胞内 + 5 种细胞外(Na⁺, K⁺, Ca²⁺, Cl⁻, Mg²⁺)
- 神经递质:细胞外间隙中的 14 种类型(cleft)
- 修饰子:每段最多 16 种跨膜蛋白
- 代谢:ATP,温度
- 可塑性:
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 mV),电流计算为 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 每个 tick 根据当前浓度重新计算 - 直接离子运动:Ca²⁺、Mg²⁺ 按 GHK 电流比例进入/离开,改变细胞内浓度 - 次级效应:间隙中 K⁺ 的积累或内质网中 Ca²⁺ 的耗尽会改变后续电流的驱动力 - 热力学一致性: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)
- 电突触(间隙连接):V_j-门控(玻尔兹曼)+ Ca²⁺/CaM-门控(希尔),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→抑制 PP1→LTP↑)
- 巩固:MAPK/ERK,IKK/NF-kB,mTORC1,蛋白质合成,Cofilin(肌动蛋白重塑),MMP-9(ECM 降解)— 6 个事件
- 基因表达:36 个基因,转录因子 → 通道,BION v6
3.6. 稳态
- PMCA:质膜 Ca²⁺-ATP 酶
- NCX:Na⁺/Ca²⁺ 交换体(3:1 化学计量)
- KCC2:K⁺-Cl⁻ 共转运体(阶段依赖)
- Na/K-ATP 酶: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、线粒体 ATP、热传感器、CREB 转录。
组 7:通用型(80–81)— 2 种
参数化:state[] 设置 V₁/₂、k、τ、g(电压依赖)或 EC₅₀、g、τ(配体依赖)。从 NeuroML 导入。
组 8:分子 STDP(82–86)— 5 种
CaMKII、Calcineurin、Cav1.x L-型、Kv4.2 A-型 K⁺、eCB 合成(2-AG)。
组 9:巩固(87–92)— 6 种
MAPK/ERK、IKK/NF-kB、mTORC1、蛋白质合成、Cofilin、MMP-9。
组 10:传感器和 CPG(93–95)— 3 种
抑制后反弹(PIR)、饥饿传感器(ATP)、光感受器(松果体)。
组 11:PIR 亚型(96–97)— 2 种
Cav3.x T-型 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-ATP 酶、热噪声(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 | ATP | 神经调制 |
| 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(侧线,水流),ORN(嗅觉),AUDITORY_SENSOR(振动),OTOLITH(重力),SEMICIRCULAR(角加速度),ELECTRORECEPTOR(电场)。
中间神经元(7): dIN(下行,CPG 节律驱动器),cIN(连合,交叉抑制),aIN(上行,GABA 能),dlc_MHR(脑干,运动驱动),TECTUM(视觉整合),DS_IN(方向选择性侧抑制),SER(食欲素能搜索)。
运动神经元(1): mn(运动神经元)。
指令神经元(1): AVOID(网状脊髓逃逸,类 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 | 浦肯野细胞,颗粒细胞,高尔基细胞,篮状细胞,星状细胞,小脑核 |
| 海马体/内嗅皮层/下托 | 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 胶质,Bergmann 胶质 |
| 自主/肠道神经 | 8 | 交感/副交感神经节前/节后,肠道(Auerbach 丛/Meissner 丛) |
| 听觉/前庭 | 10 | 毛细胞(耳蜗、球囊、椭圆囊),螺旋神经节,Scarpa 神经节 |
| 感觉 | 8 | 伤害感受器,温度感受器,机械感受器(Merkel、Meissner、Ruffini、Pacini),本体感受器 |
| 代谢/内分泌 | 9 | 胰腺 β 细胞,α 细胞,褪黑素细胞(松果体细胞),甲状腺细胞,肾上腺皮质细胞 |
| 垂体 | 5 | 促性腺激素细胞,催乳素细胞,生长激素细胞,促肾上腺皮质激素细胞,促甲状腺激素细胞 |
| 血管 | 2 | 内皮细胞,平滑肌细胞 |
| 神经调制 | 5+ | 多巴胺能(SNc、VTA),血清素能(Raphe),去甲肾上腺素能(LC),胆碱能(BF),组胺能(TMN) |
| 纹状体 | 5 | MSN D1 直接通路,MSN D2 间接通路,FSI,ChAT,Pvalb |
| 间脑 | 3 | 上丘脑(缰核),底丘脑 |
8. 蝌蚪连接组:in silico 胚胎发生
实现了 7 条 Roberts 规则(Roberts et al., 2014),用于生成非洲爪蟾蝌蚪 Xenopus laevis 的连接组(4 个阶段:EARLY_TAILBUD → LATE_TAILBUD → HATCHING → FREE_SWIMMING):
- 神经元分化:胞体在指定的背腹/吻尾位置
- 轴突生长:定向生长,具有环境屏障
- 轴突分支:概率性,取决于神经元类型
- 突触形成:自发 + 概率矩阵 10×10
- CPG 回路:保证交叉抑制连接(cIN↔dIN 甘氨酸 + GABA-B),非对称 kickstart
- 胶质细胞:放射状胶质,合胞体,K⁺ 空间缓冲(Kir4.1)
- 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 → 对侧 dIN(AMPA,w=2.0)+ AVOID → 同侧 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:洛伦齐尼壶腹,凝胶通道,低通滤波器,电场。
9.6. 磁感受
MOD_MAGNETITE_MECHANORECEPTOR=119(Fe₃O₄ 链 → 扭矩 → 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/甘氨酸),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,包含理论介绍、生物物理机制描述和逐步实验方案。所有实验均不使用替代品 — 通过完整的生物物理 tick 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,霍奇金-赫胥黎) — 电压依赖性离子通道门控的动力学模型。门控变量 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、多巴胺、血清素、乙酰胆碱、腺苷、去甲肾上腺素、甘氨酸、组胺、内源性大麻素、ATP、褪黑素、Mg²⁺、尼古丁。
段(Segment) — 神经元的一个电学房室。具有长度和半径的圆柱体。可以是胞体、树突、轴突、突触前特化(芽体)或突触后特化(棘)。模拟的基本单位。988 字节。
突触(Synapse) — 段之间的接触(化学、电学)。化学突触通过 PRE/POSTSYNAPSE 特化(芽体 → 棘)。824 字节。
STDP(Spike-Timing-Dependent Plasticity,尖峰时间依赖可塑性) — 依赖性于尖峰时间顺序的可塑性。前-在前-后 → LTP(CaMKII);后-在前-前 → LTD(Calcineurin)。
PIR(Post-Inhibitory Rebound,抑制后反弹) — 强超极化后,T-型 Ca²⁺ 通道(Cav3.x)去失活并打开,产生去极化「反弹」。
IntraConnection — 同一神经元两个段之间的细胞内连接。传递轴向电流。
SYCL — 跨平台并行编程标准(Khronos Group)。在 MindCopy 中,使用 Intel oneAPI DPC++ 实现进行 GPU 加速。
USM(Unified Shared Memory,统一共享内存) — SYCL 中统一的 CPU/GPU 内存。指针可从两个设备访问,无需显式复制。
.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),通过 SYCL 支持 NVIDIA/AMD |
| 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,模糊测试,CI |
| 批量模式 | Core 守护进程 –batch:无头模拟(无 GUI),–params-json,–seed,–bexp-output |
| 检查点 | 每 N tick 自动保存,–resume-from,优雅关闭(SIGTERM) |
| 实验 | 16 个教育 .bexp(学士/硕士/博士),README RU+EN+ZH |
| 分布式计算 | 6 个阶段:扫描、内存、验证、进化、个体发生、仪表板 |
| 许可证管理 | ECDSA-P256 离线密钥 + 在线验证(AES-256-GCM) |
13. 结论
MindCopy 平台为计算神经科学提供了完整的工具包——从分子机制(HH 门控动力学、GHK 电流、STDP、基因表达)到行为反应(趋向性),在一个统一的集成环境中。模块化架构(Core ↔ Studio ↔ SDK ↔ Orchestrator)允许独立演进计算核心、图形界面、插件生态系统和分布式计算基础设施。
分布在 6 个阶段的架构(参数扫描、内存检查、验证重复、进化优化、带检查点的个体发生、志愿者仪表板)使得模拟可以扩展到大量计算节点——从志愿者的家用 PC 到服务器集群。16 个教育实验及三语文档(RU+EN+ZH)确保从神经科学基本概念到高级研究方案的无缝入门。
224 种神经元类型、121 种修饰子、14 种神经递质、36 个基因和 5 种离子提供了详细的生物物理建模,经 Valgrind 分析验证(0 内存错误)和 350+ 自动化测试验证。所有计算都通过完整的生物物理 tick 进行:HH 动力学决定「通道何时打开」,GHK 方程决定「多少离子通过」,没有替代品和简化的电导模型。
系统设计面向未来扩展:GPU/SYCL — 用于高性能计算,POD 结构 — 用于 FPGA HLS,SDK — 用于插件开发者社区,BION v6 — 用于长期二进制兼容性,.bexp 格式 — 用于可重复实验。
2026 俄罗斯克拉斯诺达尔 / Krasnodar, Russia