工具大全
数字果蝇实验室

在线玩数字果蝇

下面三个交互全部在你的浏览器里实时算物理(MuJoCo 编译成 WebAssembly),不是动画。点「启动」加载,点一下画面再用键盘操作。

开一只果蝇走障碍赛

三档难度对应三层神经控制:第 1 档由中枢模式发生器(CPG)替你协调六条腿,第 2 档你直接指挥左右两组「三足」,第 3 档一键一条腿——你会立刻明白果蝇为什么不用「想」怎么走路。

1/2/3 切换档位 · 第 1 档 W/A/S/D 前进转向、Q 停 · 第 2 档 G/H 左右三足前迈、F/J 后退 · 空格重来 · 支持手柄

飞行沙盒:翅膀每秒拍 200 多次

翅膀按真实果蝇的拍打波形自动扇动,升力来自 MuJoCo 的流体模型,自稳控制器只调左右翅的微小不对称。你只给方向意图,松手即悬停。浏览器里跑的是真物理,所以固定 0.2 倍慢放。

W/S 前进后退 · A/D 左右转 · 空格上升 · Shift 下降 · R 重来

3D 解剖台:逐个关节掰果蝇的腿

NeuroMechFly 的完整身体模型:拖动滑杆驱动每个关节,打开接触力、关节轴和执行器力的可视化,看清一只昆虫的腿是怎么装配的。

鼠标拖动旋转 · 滚轮缩放 · 右侧面板拖滑杆

全脑模型驱动的行为录像

13.9 万个神经元在浏览器里还跑不动,所以这部分是我们在 Mac mini 上用 FlyWire 全脑 LIF 模型 + 物理身体算好的录像。每段都写了它到底证明了什么。

尝到糖 → 转身去吃腿部味觉神经元喂进 13.9 万神经元的全脑模型,下行神经元左右放电之差驱动转向。行为 3.48 秒,0.66 秒起进入进食状态。
看到黑球逼近 → 巨纤维逃跑复眼 → 视觉模型 T4/T5 → 全脑 LIF。右侧 LPLC2 在 1.83 秒放电,右巨纤维 DNp01 在 1.89 秒放电(峰值 66.7 Hz),身体后退。
不给任何输入,它自己动了只加膜噪声和放电适应:30 秒里自发切换 46 次,静止 34%、前进 21%、后退 14%、梳理 30%。
第一版自发行为:节奏像节拍器全脑阵发间隔的变异系数只有 0.05——太规整,不像活物。对照上一段看改进。
CPG 步态:六条腿三足交替耦合振荡器网络协调六条腿,左右下行信号不对称就会转弯。
真实果蝇走路动作回放把实验室 3D 追踪到的真实果蝇关节角度,逐帧灌进物理身体。
翅膀振动发生器自由飞翅膀振动发生器(WBPG)按真实果蝇波形、约 218 Hz 拍动翅膀。
训练好的策略跟踪真实轨迹Janelia/DeepMind 用强化学习训练的飞行策略,跟踪误差约 0.5 毫米。
真实果蝇的扫视与逃逸飞行flybody 数据集里真实果蝇的飞行轨迹,作为仿真的参考答案。

一次「尝到糖」时,全脑在干什么

用 200 Hz 刺激糖味觉神经元 0.3 秒:全脑 384 个神经元被带动,共发出 5,125 个脉冲。每一行是一个神经元,每个点是一次放电。

糖味觉刺激下的全脑脉冲栅格图

常见问题

为什么果蝇动得这么慢?

因为是真物理。行走的仿真步长 0.1 毫秒、飞行 0.05 毫秒,浏览器满速也只有实时的几分之一,所以固定慢放(行走约 0.1 倍、飞行 0.2 倍),让不同电脑手感一致。右上角会显示实际达到的倍率。

手机能玩吗?

三个交互都需要键盘(行走也支持游戏手柄),手机上可以看,但没法操作。下面的录像手机上可以正常看。

加载要多久?

行走和 3D 解剖台首次约 4~5 MB,飞行沙盒约 22 MB(果蝇的高精度网格)。资源走 Cloudflare CDN,第二次打开有缓存。

这是谁做的,代码在哪?

行走游戏和 3D 解剖台来自 EPFL 的 NeuroMechFly(flygym),飞行模型来自 Janelia 的 flybody,都是 Apache-2.0 开源;飞行沙盒的自稳控制器和全脑闭环实验是本站在它们之上做的。完整过程见专栏里的实测报告。

数据与引用

  • Dorkenwald et al. 2024, Neuronal wiring diagram of an adult brain. Nature. doi:10.1038/s41586-024-07558-y
  • Schlegel et al. 2024, Whole-brain annotation and multi-connectome cell typing of Drosophila. Nature. doi:10.1038/s41586-024-07686-5
  • Shiu et al. 2024, A Drosophila computational brain model reveals sensorimotor processing. Nature. code
  • 身体与物理:NeuroMechFly / flygym · flybody (Apache-2.0) · Eon fly-brain
  • FlyWire 连接组数据按 CC BY-NC 4.0 许可使用(署名、非商用);本专栏为非商业科普用途。