ものづくり

ショウジョウバエの全脳コネクトームを車輪脚ロボットの頭に。「FlyHead」が近づく人から30回逃げる

GitHubアカウント「12sqawdwq」の開発者が2026年11月2日、ショウジョウバエの全脳コネクトーム(FlyWire v783、13万8,639ニューロン)をGPUで動かし、LiDARが捉えた接近を逃避行動に変える研究用ロボット「FlyHead」を公開した。機体は本末科技の車輪脚ロボット「DIABLO」。実機では人が近づく262秒の走行で30回の逃避プログラムを実行した。逃げるタイミングと向きは脳が決め、安全層はその指令を弱めるか止める役に徹する。

人が近づくと、黒い車輪脚ロボットが身をひるがえして離れていく。逃げるタイミングと向きを決めているのは、人が書いた条件分岐ではない。ショウジョウバエの脳の配線図だ。

GitHubアカウント「12sqawdwq」の開発者は2026年11月2日、研究用ロボット「FlyHead」のコードと記録を公開した。成虫のショウジョウバエの全脳コネクトーム(神経細胞どうしのつながりの地図)「FlyWire v783」から作ったモデルをGPUで動かし、ロボットの「頭」として使う。モデルの中身は漏れ積分発火(LIF)型のニューロン13万8,639個と、1,509万1,983件の接続記録だ。

FlyHeadのバナー。「a fly brain, at the wheel.」の文字と、138,639 NEURONS、15,091,983 CONNECTIONS、LOOM > LC4/LPLC2/LC9 > DNs > ESCAPEの処理の流れ、網点で描いた車輪脚ロボットの姿(画像: FlyHead リポジトリ)

首のない刑天に、ハエの脳を載せる

機体は中国の本末科技(Direct Drive Tech)が作る車輪脚ロボット「DIABLO」だ。中国語名は「刑天」で、メーカーの仕様では標準モデルの重さがドッキング機構込みで22.9kg、プロセッサーはRaspberry Pi 4 Model Bになっている。FlyHeadの構成ではUnitreeのLiDAR「L1」を使い、ROS 2 Foxyで動かす。READMEには、首を失っても戦い続けた神話の刑天にちなみ、ここではハエの脳が頭になるという一文がある。

脳のモデルは自前ではない。土台にあるのは、2024年10月にNatureに載った3本の論文だ。Dorkenwaldらは13万9,255個のニューロンと5,000万のシナプスからなる全脳の配線図を、Schlegelらは8,453の細胞型の注釈を公開した。Shiuらはこの配線と神経伝達物質の推定だけから全脳のLIFモデルを作り、摂食や身づくろいの回路の働きを予測して実験で確かめている。FlyHeadは、このモデルをPyTorchなど複数のフレームワークで動かせるようにしたeonsystemspbc/fly-brain(GPL-2.0)を、固定したコミットのまま方程式に手を加えずに使う。

LiDARの「迫り」を、ハエの逃避の神経につなぐ

処理は100ミリ秒ごとに回る。LiDARの点群から床上0.08〜0.50mの点を取り出し、物体が視野の中で広がる速さ(ルーミング)を、接近を感じる視覚系の細胞LC4とLPLC2、前方の空きを示すLC9への入力に換える。

出力として読むのは下行ニューロンだ。ハエでは迫る影から飛び立って逃げる反応に関わる巨大線維(ジャイアントファイバー)DNp01が60Hz以上で発火すると逃避プログラムが始まり、正面からの接近なら秒速0.30mで後退、横からなら離れる向きへ旋回する。前進の速さはDNp09、後退はMDN、左右の旋回はDNa02の左右差から決める。いつ逃げるか、どちらへ逃げるかは脳の発火が決める。人が決めたのは、どのニューロンを読むか、発火を速度に換える式、後退や旋回といった逃避の型までだ。

夜の室内で、黒いDIABLOロボットが車輪脚で向きを変える様子。人が近づく中、ハエの脳モデルが走行を決めている(画像: FlyHead リポジトリ)

実機で脳に走行を任せた試行の1つ(stage5_004、2026年10月10日)では、人がロボットに近づく262秒の走行で逃避プログラムが30回動き、横方向の旋回は最大103度だった。接触は0件とオペレーターが報告している。

脳は決める、安全層は弱めることしかできない

FlyHeadで目を引くのは、脳の扱い方だ。構成文書は「脳が決め、ほかのすべての層はその指令を保留するか、弱めるか、ゼロにすることしかできない」と権限の向きを定める。安全層(エンベロープ)は脳の指令を強めることはできず、ジオフェンスや位置推定の確からしさ(フィットネス)が足りないときも指令を止める。指令はロボット側で0.3秒経つと失効し、通信が2秒途切れれば停止する。実機を動かすには計算ホストとロボットの両方で2つの設定を明示的に有効にする必要があり、既定は動きを封じる「充電ロック」がかかった状態だ。走行中はラジコンを持った監督者を置く。

脳とは別に、保存した地図の上を経路計画で走る従来型のSLAM自律走行の層もあり、脳を切っても建物の巡回はできる。READMEは経路計画の出力を脳の判断として見せないことを明記し、制御の調停を定めた文書によれば、10Hzの制御記録には、その時点で指令を出していたのがどの層かが残る。権限の向きと出どころをはっきりさせる作りは、人のそばで動くロボットを作る人にも参考になる。

公開された失敗も、記録の一部

READMEと実験記録は、うまくいかなかった結果も並べる。stage5_003では接近から逃避判断までの中央値が0.35秒(0.09〜1.08秒)で、12回の接近エピソードのうち4回は逃避判断が出なかった。stage5_004でも、正面か横かの判定が揺れて後退の多くが0.1〜0.6秒で途切れ、下がれた距離は0〜0.2mにとどまった。作者はこれを既知の欠陥として記録し、後のデコーダーで手を入れている。

秒速0.6mで止まらずに突っ込んでくる物体を当てるシミュレーションは、何をしても接触が起きるストレステストだ。ここでは正面からのケースで脳ありの接触が37回と、脳なしの19回より多かった(左右からは脳ありが各21回、脳なしが19回)。逃げても相手がついてくるためで、作者は逃げる距離と方向の問題として未解決の欄に置く。LiDARを細胞入力に換える部分は「工学的な代用」でハエの視覚の再現ではないこと、探索のための歩行や興奮度の項は脳ではなくデコーダー側で足したことも、READMEに自分で書いている。

再利用の面では課題が残る。FlyHead自身のコードにはまだライセンスがなく、作者がすべての権利を保持している。シャーシのドライバー変更などロボット側のコードと、建物の地図データはリポジトリに入っていない。新しくクローンした環境でのシミュレーションの再現は確かめられているが、実機での結果は1台の機体と1つの施設、8回の脳駆動試行に基づく。接触の有無はオペレーターの報告で数える決まりで、8回のうち少なくとも3回(stage5_005、stage5_007、stage5_008)は記録時点で報告が入っていない。

HuRoC 視点

ロボットの動きは長いあいだ、人が1つずつ作り込むものだった。FlyHeadは、生き物が進化の中で配線した逃げ方を、配線図ごと借りてくる。「デザインしないデザイン」の手触りがある。それでも、どの細胞を読み、どこまでの速さを許すかを決めているのは人で、設計の仕事は動きを書くことから、借りた動きをどう囲うかへ移っている。

それを市販の車輪脚ロボットとGPUを積んだ計算機で組み上げ、失敗した試行まで添えてGitHubで公開した。HuRoC Mediaは、3Dプリントした体内の流路でセンサーを合成するタルトゥ大学とIITの蛾型ロボットや、昆虫そのものを使うサイボーグ・ゴキブリを取り上げてきた。FlyHeadはその並びに、脳の配線そのものを手本にする道を加える。ライセンスが決まり、ほかの機体で同じ逃げ方が出るかを試せるようになれば、日本の研究室やメイカーもこの「頭」を自分の機体に載せられる。


出典