一个比特能聊出什么?机器人觅食实验给出三种答案
两台巴掌大的机器人,站在一米见方的场地里,谁也不知道食物藏在哪儿。它们唯一能做的交流,是发出一个只有开和关两种状态的信号,连一个字母都算不上。这就是这篇论文搭建的实验场景。读到这里你可能会想,这么贫瘠的沟通条件,机器人之间能聊出什么名堂?答案出乎意料地丰富。有的机器人学会了用这个比特说"我在食物这儿...
两台巴掌大的机器人被放进一米见方的场地,食物藏在哪儿,它们事先都不知道。彼此之间唯一的交流手段,是一个只有开、关两种状态的信号,连一个字母都凑不上。这正是论文搭起来的实验场景。沟通条件这么贫瘠,机器人之间还能折腾出什么花样?
答案比预想的丰富得多。有的机器人学会用这个比特表达"我在食物这儿";有的把它当成灯塔,不停闪烁,好让同伴循着找过来;还有的索性不交流,各找各的。三条路子完全不同,最终成绩却打成平手。更深一层的问题是:通讯究竟怎样从无到有长出来,又是什么决定了它出现与否。
**信息不值钱的时候,没人愿意开口**
研究者的出发点很朴素:一个信号,只有在接收者自己拿不到这条信息时,才值得发出去。
这话听着像废话,落到实验设计上却分量不轻。不少做 communication 的研究,会让机器人的控制器直接拿到目标方位这类"外挂"输入,演化起来省事,机器人很快就能学会找目标。问题是,这样一来,即便机器人学会了发信号,也说不清这个信号是不是真被需要,抑或只是演化过程顺带捏出来的噪音。
这篇论文走的是相反的路。两只 e-puck 机器人——一种常见的教育和科研用小型轮式机器人,体型跟一个马克杯差不多大——只能靠脚底的地面传感器发现食物区,必须真的开过去才知道那里是食物,远远看着是看不出来的。
地面传感器装在机器人底部,测的是地面的反射率。普通地板反射强,食物区颜色更深、反射弱,机器人就靠这个差异判断"我是不是正站在食物上"。
机器人身上没有指南针,也没有 GPS。能换来信息的渠道,只有那一个比特的信号,再加上自己八个红外测距传感器和三个地面传感器收集到的本地信息。
打个比方:两个人被扔进一间漆黑的仓库找一件藏起来的东西,唯一的通讯方式是对方能不能听见你敲一下墙。屋里要是有盏灯,两人都看得清东西在哪儿,敲墙这个动作根本演化不出意义——看得见的人没必要听你敲墙,他自己就知道答案。没有灯,敲墙的节奏和方向就可能慢慢变成某种暗号,比如一直敲代表"我找到了",断断续续敲代表"往这边来"。论文真做了这个对照实验:给机器人一个指南针,直接告诉它食物的方向和远近,结果信号使用率在不到 90 代内就跌到零,彻底消失。拿掉指南针,三次独立实验里有两次演化出了双方都会依赖的信号。
这个结果印证了一条此前容易被忽略的常识:通讯不会因为有一条可用的通道就自动冒出来,它出现,是因为传递了接收方自己拿不到的东西。
**三条不同的路,同样的终点**
没有指南针、场地又小的条件下,三次独立演化实验跑出了三种截然不同的策略,最终得分却几乎一样,统计检验看不出显著差异。
第一种策略像是在说"我在食物这儿"。机器人站在食物上时,96.3% 的时间都在发信号;离开食物后,发信号的概率只剩 1.3%。研究者称之为 referential signal,也就是指代特定信息的信号,这里专指能明确传达"食物位置"这一具体含义的那种。关掉这个信号,整体表现下降 0.128 分(满分 1 分),相当于每只机器人少待在食物上 7.7 秒。把信号的方向打乱——接收端仍知道对方发了信号,但不知道从哪个方向发来——成绩掉得更狠,降到 0.353。可见接收方真的在用信号传来的方向信息,而不只是"有没有收到信号"这个二元事实。
第二种策略是什么都不说。两只机器人各自搜索,谁也不依赖谁。正常、关闭、打乱方向三种信号条件下,成绩完全一样,说明这台机器人压根没把信号纳入决策逻辑。
第三种打法叫“灯塔”式。机器人发信号的频率几乎不间断,哪怕自己并没踩在食物上,只有偶尔站上食物那会儿信号才断一下。同伴于是能一直朝着信号源走,信号一消失,就说明对方正好在食物上。把信号关掉之后,这台机器人的成绩从 0.6 跌到 0.103。这个数字其实得留个心眼:它发信号发得太密,突然掐掉,接收方等于少了一个早已习惯依赖的输入,成绩下滑有一部分恐怕是系统被“打断”后震荡造成的,未必全是信息没了。研究者又测了一个版本,方向打乱但信号照发,成绩为 0.203,说明接收方确实在利用方向信息,只是不如第一种策略用得那么纯。
这三条路径,像极了语言学里讲的历史偶然性:几个说同一种方言的村子,各自演化出不同的俚语系统,沟通效率却可能差不多。没有哪种是"正确答案",只有在当时条件下活下来的解法。
**场地变大之后,话说得好不好开始见真章**
小场地里三种策略打平手,很容易让人得出一个结论:通讯这事儿可有可无。研究者没停在这里,他们把场地从 1 米见方扩大到 1.5 米见方,任务时长从 60 秒延长到 90 秒,把之前在小场地里演化出来的几个冠军个体重新测了一遍。
结果挺有意思。referential signal 那一支成绩只掉了 5%,几乎没受影响;什么都不说的策略掉了 36%;灯塔策略掉得最惨,23%。
这组数字说明:场地变大,两只机器人找到对方、找到食物的难度都上升了。一个清楚指出"食物在哪"的信号,价值随之被放大——瞎找的成本变高,有用情报的含金量也水涨船高。灯塔信号指的是伙伴的位置,不是食物的位置。场地越大,跟着伙伴走反而越容易把两只机器人一起带偏:伙伴自己也不知道食物在哪儿,两个人一起迷路的概率,比一个人瞎撞还高。
就像两个人在小公园里找长椅,完全不说话,瞎溜达几步也能撞见。换到一座没有地图的大公园,如果一个人已经找到长椅,喊一声"长椅在这儿",价值就完全不一样了,这一嗓子能帮同伴省下大半时间。可要是喊的是"我在这儿"而不是"长椅在这儿",同伴跑过来发现你压根没找到长椅,两人反而一起在公园里瞎逛——这就是灯塔策略在大场地里失效的原因。
研究者另外设了一组对照:不在小场地里先训练再拿来测试,而是直接让机器人在大场地上从零开始演化,一共跑了三次。通讯出现的概率还是三分之二,和小场地持平——任务变难,并没有让更多团队转向通讯。不过这回referential signal明显压过沉默策略,领先0.165分,折算下来每只机器人多待在食物上15秒。灯塔策略这次排在最后,连什么都不说都不如。
这个结果纠正了一个想当然的判断。不少人觉得任务越难、越需要配合,通讯自然就会更频繁。数据说的不是这么回事:任务难度改变的并非通讯出现的概率,而是通讯内容的价值分化。说得好的信号在难任务里更受用,说得不好的信号反倒成了负担。
**给机器人装一套本能,反而帮了倒忙**
论文的第二条主线,围绕一个叫EASA的控制架构展开。
EASA是Embedded Action Selection Architecture的缩写,这套机器人控制系统模仿的是脊椎动物基底神经节的工作方式。基底神经节是大脑里一组神经核团,负责“在多个竞争行为中选出一个来执行”,EASA把这套机制搬到了机器人身上。
研究者的设想顺理成章:给机器人预置一些与生俱来的反射行为,撞到障碍物就自动躲开、随机探索周围环境,让这些反射去处理基础生存问题,演化出来的神经网络就能腾出精力,专注学习更复杂、更“高级”的策略,比如怎么用信号跟同伴配合。机器人学里有类似先例,叫分层控制架构——低层管紧急和基础任务,高层管复杂决策,两边互不干扰。
GRU指门控循环单元(Gated Recurrent Unit),是一种能记住先前信息的神经网络结构。论文里机器人的“大脑”核心,就是16个GRU单元组成的小型网络,外加一条从输入直连输出的捷径(残差连接)。有了它,网络既能靠记忆做决策,也能对眼前的信号做出不经过记忆的直接反应。
实际结果和设想正好相反。EASA一共三个版本——手工设定权重的安全版、加了“吃东西”反射的进食版、权重随网络一起演化的版本——表现全都比不上没有任何内置反射、纯靠GRU网络自己学习的版本。差距很明显:GRU组平均得分0.587,EASA演化组平均只有0.362,统计检验的p=0.0001,几乎可以排除偶然。成对对比的测试场次里,GRU平均每只机器人多待在食物上13.5秒。
问题出在哪?研究者往下挖,找到两个具体机制。其一,躲避反射会把靠近的同伴也当成障碍物来躲。机器人站在食物上、同伴靠近的那些时刻,躲避行为被触发的比例高达12%;同伴距离远时,这个比例是零。也就是说,这个反射恰好挑在“两只机器人该聚在一起”的时机把它们推开。其二,内置的探索和躲避通道会抢走大约三分之一步数的控制权,而且抢的方向几乎总是背离食物。网络好不容易学会的搜索和靠近策略,时不时就被一套写死的本能打断重来。
这有点像给刚学会骑车的孩子硬塞一套出厂设置的防摔反射系统:只要身边有人靠近,就自动往外打方向盘。孩子想和朋友并肩骑,身体却不听使唤地往外躲,摔得比不装这套系统还频繁。本能是按一个人骑车设计的,没考虑过身边还会有另一个人需要配合。
更耐人寻味的是演化给出的回应。研究者让EASA里那17个决策权重跟着网络一起演化,不再手工定死,三次独立实验的结果高度一致地朝同一方向调整:障碍物对躲避反射的驱动权重,从手工设定的0.9全部降到0.53到0.79之间,反射被明显削弱;障碍物对网络通道的抑制,从-0.3减弱到接近零,甚至转成正数,网络被障碍物“打断”的力度也在变小;饥饿感对探索通道的驱动,从0.6大幅下降,某次实验里甚至变成了负数。
三次独立实验,三个完全独立的随机种子,却不约而同地往“削弱内置反射、让学习来的网络拿到更多控制权”这个方向演化。这不是巧合。演化等于在用脚投票,告诉研究者:你们设计的这套本能,在这个需要配合的任务里是累赘,不是帮手。
**几个数字拼出来的全貌**
| 实验条件 | 测试得分 | 关键发现 |
|---|---|---|
| 单纯GRU网络(小场地,三次实验均值) | **0.587** | 三种策略分化,但表现持平 |
| EASA手工权重 + 进食反射 | 0.336 | 内置反射拖累表现 |
| EASA手工权重,仅安全反射 | 0.257 | 表现最差 |
| EASA权重跟随演化(三次实验均值) | 0.362 | 明显优于手工版本,但仍不及纯GRU |
| GRU网络 + 指南针 | **0.928** | 信号使用率降为零 |
| 大场地从头演化,referential signal | **0.551** | 明显优于沉默策略(0.387) |
| 大场地从头演化,灯塔策略 | 0.229 | 不如完全沉默 |
**写在后面**
读完这篇论文,让我最意外的不是通讯本身,而是EASA那部分实验结果。
过去大家一直觉得,给AI系统塞一些写死的、经过设计的先验知识,怎么也比完全从零学好,至少更保险。这篇论文却用一组很干净的实验把这个假设推翻了:任务本身是社会性的、要靠两个个体互相配合时,一套为单独个体设计的本能,就算出发点是好的,比如躲障碍,也可能反过来添乱。演化自己能找到这个问题,而且修正方式高度一致——三次独立实验,三次都在压同一批反射权重。这种一致性,比任何一次单独的实验结果都更有分量。
还有个细节值得琢磨:场地变大之后,通讯并没有跟着变频繁,三分之二这个比例一直没动,变的是通讯质量的差距被放大了。我们常以为“任务越难越会逼出合作”,可真实的演化压力未必这么走——它挑的从来不是“有没有在交流”,而是“交流的内容值不值钱”。
论文没来得及做的事也很清楚:所有实验都还在仿真里,尽管这套仿真模型已经相当细致地对照过真实的Webots机器人模型并做过验证。两只电子小车真被放到实体地面上互相比拼,会不会冒出仿真预测不到的意外,这是留给后续工作的悬念。
Q&A
Q1:明明有指南针,e-puck机器人的通讯信号为什么还是彻底消失了?
A:信号能传的那点信息——食物在哪个方向——这时靠指南针就能直接拿到,接收方不用再等同伴发信号,通讯也就没了存在的理由,不到90代的演化里使用率就掉到了零。
Q2:EASA架构的表现,为什么反而不如单纯的GRU神经网络?
A:EASA自带的躲避反射会把凑近的同伴当成障碍物,主动躲开;另外内置的探索、躲避通道常常抢走约三分之一步数的控制权,方向还偏着食物,把网络自己学出来的搜索和配合策略搅乱了。
Q3:场地变大以后,referential signal(指代性信号)为什么明显比灯塔式信号好用?答案在于referential signal直接点出食物位置,场地越大、乱找的代价越高,这种信号就越值钱;灯塔式信号只告诉同伴在哪儿,场地一大,两只机器人容易一起迷路,效果甚至不如干脆不通讯。