一只赛博果蝇被全网玩出花,能打游戏、下棋,还能炒比特币
过去一周,果蝇突然成了程序员手里最忙的动物之一。
有人把它塞进《毁灭战士》和《超级马里奥》的游戏里,让一套来自真实果蝇的神经网络控制角色移动、转向和开火;也有开发者做了一只会下国际象棋的“果蝇”,并开放网页让网友直接和它对弈。
还有一些开发者 开始训练果蝇如何“停车”:神经模型控制一只模拟果蝇的腿,再由腿去转动 CARLA 仿真环境里的方向 盘。
(来源:X) 还有一只果蝇,甚至在模拟世界里拧起了魔方...
(来源:X) 除此之外,更有开发者还让果蝇玩起了《节奏光剑》《我的世界》,根据不同音调摆出 Y、M、C、A 四种姿势,观看动画时记录整套神经网络的活动,甚至把它丢进各种模拟环境里,观察它在受到外部刺激后会怎么逃跑和做出选择。
这些项目的玩法可以说千奇百怪,但底层思路基本一致: 开发者拿一张真实果蝇的神经连接图,给它补上一套简化的神经活动规则,再把游戏画面、行情变化等外部信息变成对神经元的刺激,最后读取网络的输出,转换成转向、开火、下棋、拧魔方等动作。
让一只赛博果蝇,拿 100 美元去炒币
这波“电子果蝇”里,最离谱的项目之一叫 Stonkfly。
开发者 Alex Wormuth 给 这只果蝇安排了一份新工作:盯着 Coinbase 的比特币行情,自己决定买入、卖出还是继续持有。 值得一提的是,他也是那只在《毁灭战士》游戏里开火果蝇的作者。
(来源:X) 不过,这只果蝇看到的其实并不是价格数字。Stonkfly 会先把实时行情画成一张价格图,再把图像转换成对果蝇视觉神经元的刺激。信号进入约 16.67 万个神经元组成的网络后,程序再从一组与运动有关的下行神经元中读取活动,把结果解释成“买入、卖出或持有”。
开发者还人为加入了一套简单的反馈机制,赚钱时刺激一组多巴胺神经元,亏钱时刺激另一组神经元,再允许部分神经连接随结果发生调整。 可以粗略理解成,交易赚钱就给它一个“奖励信号”,亏钱则给另一个反馈,看看网络之后会不会改变决策。
Wormuth 还做了一个公开网页,可以实时查看这只果蝇的持仓、交易记录、神经活动和账户盈亏。
(来源:Stonkfly) 至少目前,它还没有表现出什么投资天赋。最新界面中,账户以 100 美元虚拟资金起步,完成 12 笔交易后剩下 99.81 美元,亏了 0.19 美元。
而且这里的“炒币”和“学习”都要打上引号。Stonkfly 默认使用模拟资金,所谓赚钱刺激多巴胺,也只 是开发者人为规定的反馈规则。它确实会根据行情产生不同的神经活动,并据此做出交易动作,但这还不能说明一只果蝇真正理解了价格、利润或者投资。
更准确地说,Stonkfly 是把真实果蝇的神经线路接进金融市场,看看这样一套生物网络在持续输入和反馈下,会产生什么样的行为。 最近爆火的这些“电子果蝇”,基本也都是这个逻辑:换一个环境,重新定义输入和输出,再看这套神经网络会做出什么反应。
但为什么偏偏是最近,一下子冒出了这么多果蝇项目?
为什么突然冒出这么多“电子果蝇”?
(来源:X) 它由 HHMI Janelia、剑桥大学 MRC LMB、Google Research 等团队合作完成,覆盖果蝇的大脑、视叶和腹神经索,包含约 16.67 万个神经元和约 1.25 亿个突触连接。9 月 3 日,相关研究正式发表在《Cell》。
严格来说,这套数据并不是 9 月才出现。MaleCNS v1.0 在 6 月就已经开放下载,但随着论文正式发表,它才迅速进入更多开发者的视野。
关键在于,这次开放的并不只是一张果蝇大脑的三维地图。 神经元类型、神经递质预测、突触位置和连接关系等信息已经被整理成机器可读的数据,开发者既可以直接下载,也可以通过 neuPrint 用程序查询。
这相当于把过去主要供神经科学家阅读的一张“脑图”,变成了一套程序可以直接加载的网络结构。
而且,相比 2024 年 FlyWire 公布的成年雌性果蝇脑连接组,MaleCNS 还把腹神经索纳入了重建。腹神经索在功能上可以粗略类比脊髓,其中包含大量与运动相关的神经元。 这样一来,从视觉等感觉输入,到中枢处理,再到下行运动控制,可以在同一套连接组中串起来。
对于想让果蝇“动起来”的开发者来说,这一点尤其重要:他们不仅知道信息应该从哪些神经元送进去,也更容易找到哪些神经活动可以被读取出来,映射成移动、转向或者其他动作。
但只有线路图,仍然不够。连接组主要告诉我们“谁和谁连接”,并没有告诉计算机每一个神经元在现实中究竟应该怎样活动。要让这张静态线路真正运行起来,还需要人为补上一套神经动力学规则。
这一步同样已经有人做了大量铺垫。2024 年,一项发表在《Nature》的研究就曾根据果蝇连接组和神经递质信息,将整个网络转化成可以运行的漏电积分-发放神经模型,用它模拟和预测果蝇进食、梳理等行为相关的神经活动。
此外,随着近期模型能力的大幅提升,把这些现成组件重新拼起来的成本也突然降低了。
比如让果蝇玩《超级马里奥 64》的开发者 Jessica Paquette 就在 GitHub 上写道, 整个项目“100% vibe coded with GPT Astra” 。简单说,她并不是从头研究怎么模拟果蝇大脑,而是借助 GPT Astra,把已有的连接组数据、神经模拟代码和游戏接口接到了一起。
最后形成的系统其实很简单,游戏画面刺激果蝇的视觉神经元,神经信号在网络里传播,再把部分输出神经元的活动翻译成 Mario 的移动、转向和跳跃。这也是为什么后面的玩法扩散得如此快的原因。
当然,现在的“电子果蝇”距离真正的数字果蝇仍然很远。
MaleCNS 主要记录神经元之间的连接关系,并没有完整保存每个神经元真实的膜电位、离子通道、突触动力学、神经调质、激素和记忆状态。 许多项目只能用统一或简化的参数补上这些空缺;输入怎样映射到感觉神经元、哪些神经元应该对应什么游戏动作,也包含大量人工设计。
因此,现在这些项目更准确的描述,仍然是真实果蝇的神经线路,加上一套近似的神经活动规则,再被接进一个人为设计的虚拟世界。
真正有意思的变化可能还在另一层。过去,连接组首先是一种供科学家研究的实验数据;现在,它正在变成普通开发者可以下载、运行、修改和 remix 的计算对象。
参考链接:
1.https://github.com/nftechie/stonkfly
2.https://stonkfly-three.vercel.app/
3.https://github.com/nftechie/doomfly
4.https://male-cns.janelia.org/
5.https://www.janelia.org/project-team/flyem/male-cns-connectome