تصور کنید تمام پیچیدگیهای عصبی یک موجود زنده، از پردازش بینایی تا فرمان حرکت، در حافظه یک کارت گرافیک خانگی جای بگیرد. این دیگر یک تخیل علمی نیست، بلکه دستاورد پروژه Fly.exe است که مرز میان نقشهبرداری ایستا و شبیهسازی پویا را جابهجا کرده است.
در ۱۴ سپتامبر ۲۰۲۶، تیم Fly.exe شبیهسازی کاملی از سیستم عصبی مرکزی (CNS) مگس نر را منتشر کرد که در یک محیط بسته و با بدنی فیزیکی تعامل میکند. این دستاورد در حالی رخ میدهد که علوم اعصاب از مرحلهی صرفاً رسم اتصالات (Connectome) به سمت شبیهسازی رفتار در دنیای واقعی حرکت میکند. در حالی که تلاشهای پیشین اغلب بر روی مدارهای کوچک یا مدلهای سادهشده متمرکز بودند، Fly.exe تلاش میکند شکاف بین کنکتوم ساختاری و کنشهای جسممند (Embodied Action) را پر کند. این پروژه از مجموعه داده MaleCNS v1.0 برای ایجاد یک گراف زمان-اجرا استفاده میکند که پیچیدگی بیولوژیکی یک مگس واقعی را منعکس میکند.
همانطور که در تحلیلهای پیشین ما دربارهی مدلهای بنیادی اشاره کردیم، انتقال از مدلهای انتزاعی به مدلهای embodied — یعنی مدلهایی که در یک بدن فیزیکی قرار دارند و با محیط تعامل میکنند — کلید رسیدن به هوش واقعی است. این رویکرد در واقع تکامل یافتهی همان مکانیزمهایی است که در نحوه تبدیل دادههای خام به پیشبینیهای هوش مصنوعی توسط شبکههای عصبی بررسی کرده بودیم، اما با این تفاوت که اکنون دادهها مستقیماً از یک ساختار بیولوژیکی شبیهسازی شده استخراج میشوند.
موتور عصبی و سختافزار
این شبیهسازی توسط GeNN و CUDA قدرت یافته است که اجازه میدهد گراف عظیم عصبی روی یک GPU اجرا شود. برای حفظ عملکرد، سیستم از یک تخصیص اتصال واحد (Single Connectivity Allocation) برای چندین مگس استفاده میکند، در حالی که حالتهای غشا، انطباق، شمارنده اسپایک و نویز را برای هر مگس به صورت مستقل نگه میدارد.
گراف زمان-اجرا دقیقاً زیرگرافی است که توسط وضعیت حاشیهنویسی «Traced» ایجاد شده است؛ تصمیمی که در ADR-2026-002 ثبت شده است. این بخش شامل ۱۶۵,۱۲۲ مورد از ۱۶۶,۷۰۰ بدنه حاشیهنویسی شده در مقاله MaleCNS است. توسعهدهندگان اشاره کردند که گسترش دامنه برای گنجاندن وضعیتهای «Traced+Assign+Anchor» منجر به افزودن ۲,۴۴۳ بدنه (۱.۴۸٪) و ۶۰,۲۸۱ لبه (۰.۲۴٪) میشد.
طبق مستندات پروژه در گیتهاب، شبیهسازی در یک گام عصبی ۱۰۰ میکروثانیه اجرا میشود. برای یک توالی بیولوژیکی ۳۰ ثانیهای، GPU باید تقریباً ۵۹۴ میلیارد بهروزرسانی وضعیت را پردازش کند. روی یک کارت RTX 3060، این امر منجر به زمان اجرای واقعی حدود ۳۳ دقیقه برای هر واریانت میشود و ۴.۲ گیگابایت از حافظه دستگاه را اشغال میکند. این گلوگاه عملکردی مربوط به پهنای باند حافظه است؛ چرا که وضعیت نورونها به تنهایی به حدود ۱.۲ ترابایت بر ثانیه نیاز دارد، در حالی که کارت مذکور تنها ۳۶۰ گیگابایت بر ثانیه ارائه میدهد.

جسممندی و فیزیک
موتور عصبی با NeuroMechFly و MuJoCo جفت شده است تا بدنی فیزیکی با ۱۳۳ مختصات تعمیمیافته (qpos)، ۱۳۲ درجه آزادی مکانیکی (DOF) و ۴۲ جزء محرک فراهم کند. حلقه عملیاتی به شرح زیر طراحی شده است:
- بینایی: یک رمزگذار تحلیلی، موقعیت و شعاع دقیق اشیا را برای مغز فراهم میکند. این کار نیاز به عملیاتهای گرانقیمت مانند Ray Casting، پردازش پیکسلها، انسداد (Occlusion)، رنگ یا بافت را حذف میکند. رمزگذار، جهت (Bearing) و اندازه زاویهای را از این مختصات محاسبه میکند.
- تحریک: دو نرخ جمعیت نزولی (Descending Population Rates) از شبکه، مگس را هدایت میکنند. الگوی راه رفتن یک مولد الگوی منتشر شده (HybridTurningController) است و شبیهسازی طناب عصبی شکمی (Ventral Nerve Cord) نیست.
- فیزیک: کرههای غذایی و ستونها به عنوان هندسههای فیزیکی با جفتهای تماس واقعی در نظر گرفته میشوند. وقتی مگس به شیئی برخورد میکند، توسط حلکننده فیزیکی MuJoCo متوقف میشود، نه توسط یک قانون برنامهنویسی شده. رمزگذار هیچ گذاری از حالت جابجایی ندارد، به این معنی که مگس مسدود شده همچنان فرمان حرکت به جلو را دریافت میکند.
جزئیات مکانیسمهای سیستم
جریان سیگنال عصبی:
به نقل از مستندات فنی، ورودیهای نوری یک سیناپس بعد از گیرندههای نوری وارد میشوند، زیرا تمام ۶۶,۵۳۳ لبه خروجی گیرندههای نوری توسط سیاست «frozen unresolved-sign» صفر شدهاند. سیستم از یک گراف پراکنده با آرایههای هششده استفاده میکند که در هر بار بارگذاری تایید میشود. علامتهای انتقالدهنده (Transmitter signs) برای هر نورون تعریف شدهاند؛ هر علامت حلنشدهای به جای حدس زده شدن، صفر میشود. خروجی نهایی دقیقاً شامل دو عدد (نرخهای جمعیت نزولی) است که بدن را به حرکت در میآورند.
محدودیتهای فیزیکی:
مگسها از شش پا در یک گام سهپایه (Tripod Gait) با سوئیچ چسبندگی برای هر پا استفاده میکنند که همگی توسط MuJoCo حل میشوند. برای بهینهسازی شبیهسازیهای گروهی، مگسها با یکدیگر برخورد نمیکنند. FlyGym به هر هندسه مگس یک contype 0 اختصاص میدهد که اجازه میدهد بدنها از میان یکدیگر عبور کنند. مگسها یکدیگر را به صورت کرههایی با شعاع اعلام شده «میبینند»، و این تنها مکانیسمی است که عاملهای مستقل را به هم متصل میکند.
معماری علی:
سیستم از صفهای علی (Causal Queues) استفاده میکند تا بدن فیزیکی همیشه یک بازه زمانی عقبتر از موتور عصبی باشد، همانطور که در docs/architecture.md توضیح داده شده است. حلقه به طور عمدی محدود (Narrow) است. هرگونه کاهش در واقعیت بیولوژیکی به طور صریح در مستندات پروژه اعلام شده است. اکثر قابلیتهای کنکتوم و بدن در این نمایش غیرفعال (Inert) باقی ماندهاند و فهرست این اجزای غیرفعال به عنوان بخشی از مصنوعات پروژه در نظر گرفته شده است.

نمایش گروهی و نتایج
در یک نمایش خاص، ۱۲ مگس مستقل در یک محیط دیسکی ۳۰ میلیمتری قرار گرفتند که به صورت تصادفی پراکنده و در جهتهای تصادفی قرار گرفته بودند. هر مگس نسخه خاص خود از گراف را در هر بازه جفتشدگی ۱۵ میلیثانیهای اجرا میکند.
شروع حرکت توسط یک تایمر کنترل میشود: هر مگس طبق طراحی به مدت ۱.۵ ثانیه ساکن میماند. سپس نیاز است که محرک آنها برای ۱۵۰ میلیثانیه بالای یک آستانه خاص بماند، به این معنی که هر ۱۲ مگس دقیقاً در ثانیه ۱.۶۶۵ شروع به راه رفتن میکنند. نتایج تضاد شدیدی را میان مگسهای تحریکشده و گروه کنترل (با همان دانه تصادفی و بدنها، اما رمزگذار در سطح پایه) نشان داد:
- تحرک: ۱۲ از ۱۲ مگس تحریکشده وارد حالت جابجایی شدند، در حالی که در گروه کنترل ۰ از ۱۲ مگس چنین کردند.
- هدفگیری: ۱۲ از ۱۲ مگس تحریکشده در فاصله کمتر از ۱ میلیمتری سطح یک شیء متوقف شدند (اندازهگیری شده به عنوان فاصله مرکز توراکس دو بعدی منهای شعاع شیء)، در حالی که ۰ از ۱۲ مگس کنترل این کار را کردند.
- فعالیت عصبی: مگسهای تحریکشده به طور متوسط ۹,۳۳۷ نورون در هر بازه جفتشدگی شلیک کردند، در حالی که این عدد در گروه کنترل تنها ۱۶۴ بود.
- جابجایی: جابجایی خط مستقیم برای مگسهای تحریکشده بین ۵.۰ تا ۲۵.۶ میلیمتر بود، در حالی که مگسهای کنترل تنها ۳.۰ تا ۷.۳ میلیمتر حرکت کردند.
- ترجیح غذا: ۱۲ از ۱۲ مگس تحریکشده در مقابل یک شیء غذایی متوقف شدند (میانه +۱۱.۴۸ میلیمتر)، در حالی که در گروه کنترل ۸ از ۱۲ مگس چنین کردند (میانه +۲.۲۵ میلیمتر). به طور دقیقتر، یازده مگس در مقابل کرههای غذایی و یکی در مقابل یک ستون متوقف شدند.
تحلیل کنترل:
توسعهدهندگان اشاره میکنند که یک بدن ساکن، در امتداد محور خود به جلو میلغزد (Drift). جهتها محدود شدهاند تا غذا در میدان بینایی رمزگذار قرار گیرد، به این معنی که گروه کنترل نیز در همان جهت تمایل دارند. نزدیک شدن به غذا Discriminator اصلی نیست؛ نتیجه کلیدی این است که ۱۲ از ۱۲ مگس تحریکشده در مقابل یک شیء متوقف شدند، در مقابل ۰ از ۱۲ مگس کنترل.

مرزهای مهندسی و محدودیتها
توسعهدهندگان صراحتاً اعلام کردهاند که این پروژه یک «همسانسازی زیستی»، «دوقلوی دیجیتال» یا نسخه بازیابی شده از مگس تصویربرداری شده نیست. این پروژه در سطح «V0 Structural» در نردبان V0–V8 خود قرار دارد. نمایش گروهی هیچ سطحی را دریافت نکرده است (validation_tier_awarded: null)، زیرا هیچ فرضیه بیولوژیکی پیشثبت شدهای برای یک گروه (Swarm) وجود ندارد.
چندین محدودیت حیاتی برای جلوگیری از تفسیرهای بیش از حد اعلام شده است:
- نبود رفتار اجتماعی: مگسها تنها به این دلیل تجمع میکنند که مگس مجاور، شیئی بزرگ در میدان بینایی است و شبکه به سمت اشیای بزرگ حرکت میکند.
- نبود جستوجوی غذا: غذا صرفاً یک کره رنگی است. رمزگذار کانال رنگ ندارد و نمیتواند غذا را از ستون تشخیص دهد؛ تنها معیار، اندازه زاویهای است. هیچ مکانیزم بلع، باز شدن خرطوم یا کانال چشایی وجود ندارد.
- گام مهندسیشده: هیچ بخشی از طناب عصبی شکمی شبیهسازی شده در حرکت پاها نقشی ندارد.
- نبود فردیت: مگسها ۱۲ نسخه پارامتری از یک نمونه هستند که تنها در موقعیت شروع، ورودی بینایی و جریانهای نویز مستقل با هم تفاوت دارند.
- محدودیتهای بینایی: هیچ بینایی نوری وجود ندارد؛ رمزگذار مختصات دقیق را میخواند نه پیکسلها را.
شکافهای اعتبارسنجی:
پروژه فاقد بازوی «مگسهای نامرئی»، حذف خروجیهای خاص گروهی، یا بازوی تطبیقیافته «تنها-کنترلر» است. همچنین تستهای Shuffle فعالیت-تطبیقیافته، ماتریس چند-دانه (Multi-seed) یا تست ترجیح غذا در مقابل ستون با اندازه زاویهای برابر انجام نشده است.
منشأ دادهها و بازتولیدپذیری
برای تضمین یکپارچگی علمی، هر پارامتر در سیستم به یک کلاس منشأ اختصاص یافته است: اندازهگیری شده (M)، پیشین جمعیتی (P)، برازش شده (F)، داربست مهندسی (E) یا غیرقابل بازیابی (I). هر پارامتر همچنین دارای یک شناسه فرض در configs/assumptions.json است.
شکست به عنوان داده تلقی میشود. لاگهای وضعیت پروژه (docs/STATUS.md) شامل «شکست جابجایی-آرایش ۰-از-۳۰» در مسیر A و یک دور شواهد پس گرفته شده است. محیط گروهی (Swarm Arena) خود سومین نسخه ساخته شده بود؛ دو نسخه اول پس از آشکار کردن ویژگیهایی از مسیر بینایی منجمد که آزمایشهای قبلی تست نکرده بودند، دور ریخته شدند (ثبت شده در ADR-2026-023).
تایید از طریق تستهای برابری بیت (Bit-parity) در tests/test_swarm3d.py انجام میشود. یک مگس که تحت فرمانهای یکسان در SwarmWorld و Demo01VisualBody هدایت میشود، در هر یک از ۱۳۳ مؤلفه qpos با مقدار ۰.۰ مطابقت دارد. علاوه بر این، رمزگذار چند-شیئی، رمزگذار تک-نشانه منجمد را با دقت 1.1e-13 هرتز در نرخهای ۱ تا ۴۰۰ هرتز بازتولید میکند.

پیادهسازی و دسترسی
این پروژه بر اساس مجموعهای عظیم از ۱۴ مقاله کامل بنا شده و مقادیر کمی برای دامنههای uEPSC/uEPSP، پارامترهای کوانتال و مقاومت ورودی PN استخراج کرده است. منابع کلیدی شامل Kazama & Wilson (2008, 2009) برای پارامترهای گلومرول و Nagel et al. (2015) برای سینتیک EPSC و مهار پیشسیناپسی است. این سیستم چندین جزء نرمافزاری از جمله Brian2 به عنوان یک اوراکل عددی و مدل LIF کل-مغز Shiu et al. 2024 به عنوان مرجع رگرسیون را ادغام میکند.
پشته فنی و راهاندازی:
- محیط: محیط تولید تثبیت شده لینوکس است که در ویندوز از طریق WSL2 قابل دسترسی است.
- نصب: سیستم از
uvبرای نصب پایتون ۳.۱۲ و مدیریت وابستگیها استفاده میکند. GeNN به عنوان یک بیلد منبع CUDA بومی از طریقscripts/install_genn.shنصب میشود. - مدیریت دادهها: مجموعهدادهها از طریق
flysim data syncدریافت، چکسام شده و در یک قفل داده تغییرناپذیر ثبت میشوند. این شامل کنکتوم MaleCNS v1.0 (تحت CC-BY) و مسیر مفصل آرایش-آنتنی Ozdil et al. 2026 است.
زمینه گسترش یافته
پارامتریسازی بیولوژیکی:
برای مستدل کردن شبیهسازی، تیم دادههای فیزیولوژیک خاصی را از ادبیات گسترده استخراج کرد:
- دینامیک سیناپسی: Kazama & Wilson (2008) دامنههای uEPSC/uEPSP را برای هر گلومرول و افسردگی ۷ هرتزی فراهم کردند. Nagel et al. (2015) سینتیک EPSC دو-مؤلفهای و رساناییها را ارائه دادند.
- معماری مدار: Kazama & Wilson (2009) همگرایی ORN-to-PN و تعداد ORNها در هر گلومرول را تعریف کردند. Gaudry et al. (2012) عدم تقارن رهاسازی ipsi/contra را فراهم کردند.
- ویژگیهای سلولی: Gouwens & Wilson (2009) مقاومت ورودی PN اندازهگیری شده و اصلاحات رسانایی مهروموم (Seal-conductance) را ارائه دادند. Nanami et al. (2024) ثبتهای current-clamp مربوط به PN را به اشتراک گذاشتند.
- پلاستیسیته و رهاسازی: Rozenfeld et al. (2023) تخمینهای مستقل از سایتهای رهاسازی را ارائه کردند، در حالی که Pooryasin et al. (2021) دو جمعیت ماشین رهاسازی (Unc13A و Unc13B) با پلاستیسیته کوتاهمدت متمایز را شناسایی کردند.
دیسیپلین دادهها و اعتبارسنجی:
پروژه از یک سیاست سختگیرانه «صرف» داده برای جلوگیری از بیشبرازش (Overfitting) استفاده میکند:
- دادههای رزرو شده: کارت
stage2-reservations-v1فایلها و ستونهایی را شناسایی میکند که تا زمان باز شدن توسط یک تست پیشثبت شده، باز نمیشوند. - قناریهای مورفولوژی: مجموعه داده
morphology-canariesاز اسکلتهای SWC برای تشخیص هرگونه تغییر بیصدا در رهاسازیها استفاده میکند. - مدلهای مرجع: سیستم در برابر اوراکل عددی Brian2 و مرجع رگرسیون مرحله ۱ Shiu et al. 2024 بررسی میشود.
- منشأ: هر پارامتر به یک کلاس منشأ (M, P, F, E, I) و یک شناسه فرض در
configs/assumptions.jsonمتصل است.
نرمافزار و ابزارها:
- موتور فیزیک: MuJoCo 3.9 فیزیک اجسام صلب و رندرینگ را مدیریت میکند.
- مدل بدن: NeuroMechFly v2 / FlyGym 2.1.0 مختصات تعمیمیافته ۱۳۳ گانه و گام HybridTurningController را فراهم میکند.
- اجرا: GeNN / PyGeNN به عنوان موتور CUDA پراکنده برای گراف کامل عمل میکند.
- CI/CD: خط لوله CI قراردادهای پایتون خالص را با کف پوشش ۵۳٪ اجرا میکند اما کنکتوم را اجرا نمیکند، زیرا فاقد GeNN، CUDA و MuJoCo است.
پژوهشگران و توسعهدهندگان اکنون میتوانند این دینامیکها را از طریق یک آرنا مبتنی بر مرورگر (با استفاده از flysim web serve) یا با اجرای موتور مرجع به صورت محلی بررسی کنند. کد پروژه تحت لایسنس GPL-2.0-or-later است، در حالی که دادههای کنکتوم CC-BY باقی میمانند.
گام بعدی شما
- اگر توسعهدهنده هستید، مخزن گیتهاب Fly.exe را برای بررسی نحوه پیادهسازی گرافهای عصبی پراکنده روی CUDA بررسی کنید.
- برای درک بهتر تعامل بدن و مغز، مستندات MuJoCo را مطالعه کنید تا ببینید چگونه فیزیک سخت را با سیگنالهای نرم ترکیب میکند.
- منتظر گزارشهای بعدی درباره ارتقای سطح شبیهسازی از V0 به V1 باشید تا ببینید آیا رفتارهای پیچیدهتر زیستی نیز بازسازی میشوند یا خیر.
اما داستان سختافزاری این تحول حتی شگفتانگیزتر است — به تحلیل ما دربارهی تراشههای Blackwell و توان پردازشی مدلهای عصبی مراجعه کنید.




گفتگو