科学・技術
macOSデスクトップ上の3Dショウジョウバエ、実際のFlyWireコネクトームで駆動
A 3D fruit fly on macOS desktop powered by the real FlyWire connectome (github.com)
要約
macOSデスクトップ上で動作する3Dショウジョウバエのシミュレーションが登場しました。これは、実際のショウジョウバエの神経回路網(コネクトーム)のライブスパイクシミュレーションによって駆動されており、ハエは実際の神経細胞と同じニューロンを使ってウィンドウ上を歩き回ったり、毛づくろいをしたり、眠ったりします。カーソルが近づくと逃避行動を起こすなど、リアルな振る舞いを再現しています。
全文翻訳
DesktopFly 🪰 macOSデスクトップ上で動作する3Dショウジョウバエ。実際のFlyWireコネクトームのライブスパイクシミュレーションによって駆動されています。
ウィンドウ上を歩き回り、毛づくろいをし、眠り、カーソルから逃げようとします。これらはすべて、実際のハエが使用するニューロンと同じニューロンによって行われます。
ハエの脳ウィンドウ: FlyWire v783からの実際のニューロンソーマ位置23,210個を表示し、実際のニューロン位置でライブスパイクが点滅します。
2つの光る黄色いマーカーは、逃避コマンドニューロンであるGiant Fibersです。
任意の領域をクリックして刺激できます。
何がリアルか
23,210個の実際のニューロンソーマ位置(FlyWire v783の139,255個のうち)が、スーパークラス(FlyWireの大まかな細胞タイプグループ)で色分けされた回転する脳ウィンドウをレンダリングします。
約19,000個の実際のシナプス結合(神経伝達物質予測で符号化されたシナプス数)を持つ668ニューロン回路が、1 kHzのリーキーインテグレート・アンド・ファイア(LIF)シミュレーションとして実行されます。
LC4 (104) + LPLC2 (210) 接近検出視覚ニューロン
DNp01 / Giant Fiber (GF) (2) — 逃避コマンドニューロン
DNa01 + DNa02 (4) 操舵ニューロン
DNp09 (2) 前進歩行
DNg11 (6) 毛づくろい
MDN (4) 後退歩行(「ムーンウォーカー」)
DNp02/DNp04/DNp11 (6) 逃避操作(羽)ニューロン
それらの330個の最も強力なパートナー、上昇性(固有受容性)および感覚性(風)ニューロンを含む
逃避はスクリプト化されていません。
カーソルの接近が実際のLC4/LPLC2細胞への接近入力となり、ハエはGiant Fiberが実際のシナプスを介して実際にスパイクしたときにのみ飛び立ちます。
約1,200個のフィードフォワード抑制シナプスが反発するため、ゆっくりとした接近は許容され、速い突進は実際の動物と同様に約4ミリ秒で逃避を引き起こします。
体自体は手続き的に生成されます(FlyWireは脳コネクトームであり、体の幾何学的形状は存在しません)。三脚歩行、見える羽ばたき、高度スケールされた飛行、毛づくろい、睡眠姿勢を備えています。
インストール
要件: macOS 13以降、Xcode Command Line Tools(Swift 5.9以降)。
権限やエンタイトルメントは不要です — 感知するすべて(カーソル、ウィンドウフレーム、クリックとしてのタップ、熱状態)は権限フリーです。
git clone https://github.com/DenisSergeevitch/desktop-fly.git
cd desktop-fly
./build.sh
./DesktopFly
メニューバーに🪰アイテムが表示されます。そこから終了できます。
ハエは、クリックで透過するオーバーレイ上でデスクトップをさまよいます — マウスやキーボードを妨げることはありません。
コントロール(メニューバーの🪰)
アイテム | 効果
---|---
Pause / Resume | 世界をフリーズさせる
Show/Hide Brain | ライブ脳ウィンドウの表示/非表示を切り替える
Escape Test (loom) | 接近刺激を注入し、GFの発火を見る
Move to Next Display | モニター間でハエをホップさせる(複数ディスプレイの場合に表示)
Add / Remove Fly | 追加のハエ(フライ#1のみが脳を搭載)
Scare Flies | 全てのハエを驚かせる
脳ウィンドウはインタラクティブです。
ホバーすると回転が一時停止し、領域をクリックすると約60個の最も近い回路ニューロンが400ミリ秒間「光遺伝学的に」刺激されます。
ハエの反応は、実際のネットワークが下流で何をするかです — Giant Fiberをクリックすると逃避します。DNg11をクリックすると毛づくろいをします。片側のDNa01/02をクリックすると旋回します。
実際のニューロンがどのように体を駆動するか
体の行動 | ニューロン駆動
---|---
逃避離陸 | DNp01 giant fiber spike
歩行 vs. 静止、歩行速度 | DNp09 rate
操舵 | DNa01+DNa02 左右レート差
毛づくろい | DNg11 rate
後退スキート | MDN burst
神経ダーティング | LC4/LPLC2 population rate
羽ばたき努力、脅威 | wing-raise DNp02/04/11 rate
自発的離陸 | whole-population arousal
ループは体→脳にも閉じられます。
歩行リズムは、脚と同期して回路の実際の昇順(固有受容性)ニューロンにフィードされ、速いカーソルモーションは感覚性(風)パートナーを刺激します。
デスクトップ生態系(すべて権限フリーのmacOSセンサー)
ウィンドウ地形: ウィンドウの上端は棚です — ハエはそれに着地し、その上を歩き、ドラッグするウィンドウに乗って、足元でウィンドウが閉じると驚きます。
ウィンドウの接近: ハエの近くに表示されるウィンドウは、接近経路にフィードされ、回路はダイアログから逃げるかどうかを決定します。
クリックは基質タップです。ハエの隣をクリックすると、風→GF経路を通じて驚かせます。
タイピングは振動です(アイドル時間API — キーが押されたことを知っており、どのキーかは決して知りません)。
概日リズム: 夜明け/夕暮れに活動のピークがあり、日中に昼寝をし、夜は静止します。
睡眠: 夜間にアイドル状態 → ゆっくりと呼吸しながら眠りにつき、覚醒閾値が上昇します。目覚めた後に毛づくろいをします。
温度: ハエは外温動物です — 熱いMacはより速いハエです。
データの再生成
data/ にはコンパクトな派生ファイルが含まれています。
生のFlyWire Codexダンプ(約60 MBのダウンロード)からそれらを再構築するには:
mkdir -p /tmp/flywire && cd /tmp/flywire
B=https://storage.googleapis.com/flywire-data/codex/data/fafb/783
curl -O "$B/classification.csv.gz" -O "$B/coordinates.csv.gz" \
-O "$B/connections.csv.gz" -O "$B/consolidated_cell_types.csv.gz"
cd - && python3 etl.py /tmp/flywire
診断
./DesktopFly --simtest # 回路不変量: GFは静止時に沈黙、4 msの接近遅延、...
./DesktopFly --behaviortest # 17のエンドツーエンドチェック: ニューロンを刺激 -> 体が反応
./DesktopFly --snapshot f.png # オフスクリーンハエレンダリング
./DesktopFly --brainshot b.png # オフスクリーン脳レンダリング
モデル化されたもの vs. 測定されたもの
正直セクション: コネクトームは配線を提供しますが、生理学は提供しません。
LIFダイナミクス、神経伝達物質の符号(ACh+, GABA−, Glu−)、LC→GFおよび風→GFのギャップ結合ブースト(文書化された電気的結合)、シナプス遅延、感覚変換(カーソル → 接近値)は、実際のグラフに重ねられた標準的なモデリングの選択です。
感覚ニューロンの下流 — 誰が誰に、どれだけ強く接続されているか — はすべてFlyWireデータです。
ライセンスと引用
コードはMITです。
data/ のファイルはFlyWire(FAFB v783)から派生しており、CC BY-NC 4.0です — data/DATA_LICENSE.mdを参照してください。
これを使用する場合、以下を引用してください:
Dorkenwald, S. et al. Neuronal wiring diagram of an adult brain. Nature 634, 124–138 (2024). https://doi.org/10.1038/s41586-024-07558-y
Schlegel, P. et al. Whole-brain annotation and multi-connectome cell typing of Drosophila. Nature 634, 139–152 (2024). https://doi.org/10.1038/s41586-024-07686-5