فاز 16 · درس 17

ایجنت‌های زایا و شبیه‌سازی نوظهور: معماری اسمال‌ویل

نوع
مفهومی و ساختنی
زمان
حدود 75 دقیقه
زبان‌ها
Python (stdlib)
پیش‌نیاز
فاز 16 · 04 (مدل‌های اولیه)، فاز 16 · 13 (حافظه‌ی مشترک)
نمایی دوبعدی و ایزومتریک از یک شهر کوچک شبیه‌سازی‌شده همراه با مسیرها، کافه و نشانگرهای نمادین حافظه در اطراف خانه‌ها
فهرست مطالب
  1. صورت مسئله
  2. مفاهیم پایه
  3. سه مؤلفه‌ی اصلی
  4. چرا هر سه بخش ضروری هستند؟ (آزمون مقایسه‌ای سیستماتیک)
  5. چگونگی پدیدار شدن مهمانی روز ولنتاین
  6. حالت‌های شکست مستندشده
  7. قوانین پیاده‌سازی معماری سه‌بخشی
  8. ایجنت‌های زایا فراتر از Smallville
  9. چرا این موضوع در مهندسی چندایجنتی اهمیت دارد؟
  10. پیاده‌سازی از صفر
  11. استفاده از ابزارهای واقعی
  12. خروجی این درس
  13. تمرین‌ها
  14. اصطلاحات کلیدی
  15. برای مطالعه‌ی بیشتر

بیشتر سیستم‌های چندایجنتی که امروز می‌بینیم، سناریونویسی صلب و خطی دارند؛ یک ایجنت وظیفه‌ی برنامه‌ریزی دارد، دیگری کد می‌زند و سومی بررسی می‌کند. با این که این روش برای خط لوله‌های توسعه‌ی نرم‌افزار مفید است، اما از مدل‌سازی رفتارهای زنده، اجتماعی و پیش‌بینی‌نشده در یک جهان باز کاملاً عاجز می‌ماند. اگر قصد شبیه‌سازی جوامع انسانی، تحقیقات بازار، یا ساخت شخصیت‌های غیربازیکن (NPC) پویا در بازی‌های ویدئویی را داشته باشید، اتکا به اسکریپت‌های ثابت عملاً بن‌بست است.

مقاله و معماری شاخص Smallville (پارک و همکاران، 2023) دقیقاً این گره را باز کرد. این معماری نشان داد چطور ترکیب سه‌گانه‌ی «جریان حافظه»، «تأمل» و «برنامه‌ریزی بالا به پایین» به ایجنت‌ها اجازه می‌دهد بدون ناظر مرکزی و فقط از طریق گفتگو و تعاملات محلی، رفتارهای پیچیده‌ی نوظهوری مثل تدارک یک مهمانی گروهی را شکل دهند.

در این درس ساختار داخلی این معماری، نحوه‌ی امتیازدهی و بازیابی حافظه، خطاهای مرسوم مانند نقض هنجارهای فیزیکی و روش پیاده‌سازی این الگو را در قالب پایتون استاندارد یاد می‌گیرید تا بتوانید پایه‌های شبیه‌سازی‌های اجتماعی پایدار را پیاده کنید.

پارک و همکاران در سال 2023 (UIST '23, arXiv:2304.03442) محیط ساندباکسی (sandbox) با 25 ایجنت به نام Smallville ساختند که بر پایه‌ی یک معماری سه‌بخشی بنا شده بود: جریان حافظه (memory stream) (لاگ ثبت وقایع به زبان طبیعی)، تأمل (reflection) (ترکیب و تحلیل‌های سطح بالاتری که ایجنت از جریان حافظه‌ی خود تولید می‌کند) و برنامه (plan) (رفتار در سطح کل روز و سپس خرده‌برنامه‌ها). دستاورد شاخص این پژوهش، پدیدار شدن خودبه‌خودی مهمانی روز ولنتاین بود: به یک ایجنت این ایده داده شد که «می‌خواهد یک مهمانی روز ولنتاین برگزار کند»؛ بدون هیچ سناریونویسی اضافه‌ای، دعوت‌نامه‌ها میان جمعیت پخش شد، قرارها هماهنگ گردید و در نهایت مهمانی با حضور ایجنت‌هایی برگزار شد که 24 تای آن‌ها در ابتدا هیچ اطلاعی از ماجرا نداشتند. آزمون‌های مقایسه‌ای سیستماتیک نشان می‌دهند که هر سه مؤلفه برای باورپذیری رفتارها ضروری هستند. حالت‌های شکست ثبت‌شده در این سیستم شامل خطاهای هنجار فضایی است (ورود به مغازه‌های بسته، استفاده‌ی هم‌زمان از سرویس بهداشتی تک‌نفره). این ساختار، معماری مرجع برای شبیه‌سازی ایجنت‌ها و ارزیابی اجتماعی چندایجنتی در سال 2026 محسوب می‌شود.

صورت مسئله

بیشتر سیستم‌های چندایجنتی، تیم‌هایی هستند که رفتارهایشان مو‌به‌مو سناریونویسی شده است: برنامه‌ریز طرح می‌ریزد، کدنویس کد می‌زند و بازبین بررسی می‌کند. این رویکرد برای وظایف کاملاً مشخص جواب می‌دهد، اما رفتارهای نوظهور و پیش‌بینی‌نشده‌ای را ثبت نمی‌کند که حاصل تعامل ایجنت‌های دارای حافظه، اولویت‌ها و یک جهان باز هستند. پروژه‌های پژوهشی، شبیه‌سازی‌های اجتماعی و به‌طور فزاینده‌ای هوش مصنوعی بازی‌ها به این رویکرد دوم نیاز دارند.

معماری Smallville معیار سنجش این رویکرد است. تا پیش از مقاله‌ی پارک در سال 2023، بهترین شبیه‌سازی‌های ایجنتی صرفاً مجریان سطحیِ سناریوهای ازپیش‌نوشته‌شده بودند؛ پس از آن، این الگو به استاندارد پیش‌فرض ایجنت‌های زایا در جهان‌های باز تبدیل شد. اگر در سال 2026 شبیه‌سازی ایجنتی می‌سازید، یا باید از سه مؤلفه‌ی Smallville استفاده کنید یا دلیلی محکم برای کنار گذاشتن آن‌ها داشته باشید.

مفاهیم پایه

سه مؤلفه‌ی اصلی

جریان حافظه. یک لاگ صرفاً الحاقی (append-only) از مشاهدات، اقدامات، تأملات و برنامه‌ها. هر مدخل دارای برچسب زمانی، یک نوع، شرحی به زبان طبیعی و فراداده‌های استخراج‌شده است: تازگی (recency)، اهمیت (importance) (امتیازدهی 1 تا 10 توسط خود ایجنت) و ارتباط (relevance) (شباهت کسینوسی با پرسش جاری).

[2026-02-14 09:12:03] observation: Isabella Rodriguez asked me if I like jazz
[2026-02-14 09:14:22] reflection:   I enjoy long conversations about music
[2026-02-14 10:05:00] plan:         Attend Isabella's Valentine's Day party tonight

بازیابی حافظه این سه امتیاز را ترکیب می‌کند: score = w_recency * e^(-decay * age) + w_importance * importance + w_relevance * cos_sim. موارد برتر (top-k) وارد پرامپت جاری می‌شوند.

تأمل. ایجنت به‌صورت دوره‌ای (هر N حافظه یک‌بار یا هنگام وقوع رویدادهای مهم)، تحلیل‌های سطح بالاتری از حافظه‌های اخیر تولید می‌کند. این مدخل‌های تأمل به جریان حافظه بازمی‌گردند و مثل هر حافظه‌ی دیگری قابل بازیابی هستند. ایجنت‌ها به این ترتیب «فهم و بینش» می‌سازند؛ چیزی که در این معماری معادل باورهای بلندمدت است.

برنامه. خرد کردن اهداف از بالا به پایین. ابتدا یک برنامه‌ی کلی در سطح روز («رفتن به سر کار، شام خوردن با کلاوس»). سپس برنامه‌های ساعتی و پس از آن برنامه‌هایی در سطح اقدام‌های ریز. این برنامه‌ها بازنگری‌پذیرند: وقتی مشاهده‌ای با برنامه در تضاد باشد، ایجنت بخش مربوطه را دوباره برنامه‌ریزی می‌کند.

چرا هر سه بخش ضروری هستند؟ (آزمون مقایسه‌ای سیستماتیک)

پارک و همکاران آزمون‌های مقایسه‌ای سیستماتیکی را با حذف تک‌تک بخش‌های مشاهده، تأمل و برنامه اجرا کردند. حذف هر کدام به باورپذیری سیستم ضربه می‌زند:

  • بدون مشاهده، ایجنت زمینه را از دست می‌دهد و بر اساس باورهای قدیمی عمل می‌کند.
  • بدون تأمل، ایجنت توانایی شکل دادن به باورهای سطح بالاتر را ندارد؛ تعاملات در سطحی‌ترین حالت باقی می‌مانند.
  • بدون برنامه، رفتار ایجنت به واکنشی تصادفی و پر سر و صدا تبدیل می‌شود؛ اهداف رنگ می‌بازند.

امتیازات باورپذیری از سوی ارزیاب‌های انسانی، زمانی به بالاترین حد می‌رسد که هر سه مؤلفه حاضر باشند؛ حذف هر یک باعث افت محسوس کیفیت می‌شود.

چگونگی پدیدار شدن مهمانی روز ولنتاین

به یکی از ایجنت‌ها به نام ایزابلا رودریگز این هدف اولیه داده شد: «می‌خواهد یک مهمانی روز ولنتاین در کافه هابز در روز 14 فوریه ساعت 5 بعدازظهر برگزار کند.» به 24 ایجنت دیگر هیچ اطلاعاتی داده نشد. در طول روزهای شبیه‌سازی:

  1. برنامه‌ی ایزابلا شامل دعوت کردن دیگران می‌شود.
  2. هر دعوت‌نامه به‌صورت یک مشاهده در جریان حافظه‌ی همسایه‌اش ثبت می‌شود.
  3. تأمل آن همسایه باوری جدید می‌سازد: «ایزابلا دارد مهمانی می‌گیرد.»
  4. برنامه‌ی همسایه عبارت «شرکت در مهمانی 14 فوریه» را درون خود می‌گنجاند.
  5. همسایه‌ها به بقیه هم می‌گویند. دعوت‌نامه بدون هیچ هماهنگی مرکزی پخش می‌شود.
  6. در روز 14 فوریه ساعت 5 بعدازظهر، چند ایجنت در کافه هابز دور هم جمع می‌شوند.

این دقیقاً مفهوم فنی پدیدار شدن (emergence) است: رفتاری در سطح کل سیستم (مهمانی) از دل تعاملات محلی (دعوت‌های دوطرفه + برنامه‌ریزی فردی) و بدون هیچ هماهنگ‌کننده‌ی مرکزی پدید آمد.

حالت‌های شکست مستندشده

پارک و همکاران این خطاها را به‌روشنی ثبت کرده‌اند:

  • خطاهای هنجار فضایی. ایجنت‌ها وارد مغازه‌های بسته می‌شوند. سعی می‌کنند هم‌زمان از یک سرویس بهداشتی تک‌نفره استفاده کنند. در اتاق‌هایی غذا می‌خورند که جای غذا خوردن نیست. مدل نمی‌تواند هنجارهای اجتماعی-فیزیکی را فقط از روی محیط استنتاج کند.
  • سرریز حافظه. اجرای شبیه‌سازی‌های عمیق باعث بالا رفتن هزینه‌ی بازیابی حافظه می‌شود. راهکار عملی: فشرده‌سازی دوره‌ای حافظه (خلاصه‌سازی و هرس کردن) و اعمال ضریب زوال بر روی ورودی‌های کم‌اهمیت.
  • توهم در تأمل. تأملات ممکن است روابطی را بسازند که هیچ ردی در جریان حافظه ندارند. راهکار: گنجاندن شناسه‌های حافظه‌ی مبدأ در پرامپت‌های تأمل و اعتبارسنجی آن‌ها در زمان بازیابی.

این‌ها حالت‌های شکستی هستند که در محیط عملیاتی (پروداکشن) اهمیت دارند؛ هر شبیه‌سازی ایجنتی در سال 2026 این خطاها را به ارث می‌برد.

قوانین پیاده‌سازی معماری سه‌بخشی

  1. حافظه فقط الحاقی است. هرگز یک مدخل حافظه را دستکاری نکنید. اصلاحات در قالب مدخل‌های جدید ثبت می‌شوند.
  2. امتیازدهی اهمیت کم‌هزینه است. در زمان ذخیره، از LLM بخواهید اهمیت را بین 1 تا 10 امتیازدهی کند و آن را کَش کنید.
  3. بازیابی بر اساس رتبه‌بندی است، نه فیلتر کردن. موارد برتر (top-k) بر اساس امتیاز ترکیبی انتخاب می‌شوند؛ از فیلترهای سفت‌وسخت (که بافتار و زمینه را از بین می‌برند) استفاده نکنید.
  4. تأمل به‌صورت دوره‌ای اجرا می‌شود. زمانی آن را اجرا کنید که مجموع امتیاز اهمیتِ حافظه‌های پردازش‌نشده از یک آستانه (مثلاً 150) بالاتر برود.
  5. برنامه‌ها قابل بازنگری هستند. وقتی مشاهده‌ی جدیدی با برنامه تعارض دارد، فقط همان بخش تحت تأثیر را دوباره بسازید، نه کل برنامه را.

ایجنت‌های زایا فراتر از Smallville

پژوهش‌های سال‌های 2024 تا 2026 این معماری را گسترش داده‌اند:

  • شبیه‌سازی اجتماعی چندایجنتی برای پژوهش‌های سیاستی و بازار. جمعیتی شبیه Smallville رفتار کاربران را در واکنش به قابلیت‌ها شبیه‌سازی می‌کنند؛ این کار بسیار سریع‌تر از تست‌های A/B است، هرچند دقت نتایج هنوز محل مناقشه است.
  • هوش مصنوعی شخصیت‌های غیربازیکن (NPC) در بازی‌ها. بازی‌های نقش‌آفرینی مجهز به ایجنت‌های Smallville به‌جای کوئست‌های سناریونویسی‌شده، خطوط داستانی غیرمنتظره و نوظهوری می‌سازند.
  • بنچ‌مارک‌های ارزیابی ایجنت‌های زایا. به‌جای دقت در انجام وظایف، معیارهایی چون باورپذیری و یکدستی رفتارها در طولانی‌مدت مبنای سنجش قرار می‌گیرند.

این معماری همچنان مرجع اصلی است. توسعه‌های بعدی شاید مؤلفه‌ها را جابه‌جا کنند (پایگاه داده‌ی برداری به‌جای حافظه، تأمل با بازیابی افزوده، یا برنامه‌ریزی نوروسیمبولیک)، اما شاکله‌ی سه‌بخشی آن دست‌نخورده باقی می‌ماند.

چرا این موضوع در مهندسی چندایجنتی اهمیت دارد؟

پروژه‌ی Smallville اثبات کرد که اگر مؤلفه‌ها درست انتخاب شوند، رفتارهای نوظهور در سیستم‌های چندایجنتی ارزان تمام می‌شوند. این معماری روی مدل‌های متن‌باز نیز پیاده‌سازی شده است (LLMهای کوچک‌تر باورپذیری را به‌آرامی از دست می‌دهند، نه ناگهانی). هر سیستم عملیاتی که به رفتارهای اجتماعی نوظهور نیاز دارد، از این الگو استفاده می‌کند. در مقابل، هر سیستمی که به اجرای دقیق وظایف محتاج است، از الگوهای ناظر، نقش‌ها و الگوهای پایه‌ای درس‌های قبل این فاز بهره می‌برد.

حلقه‌ی ایجنت مولدجریان، بازاندیشی، برنامه‌ریزی
GENERATIVE AGENT LOOPSmallville agents keep an append-only memory stream scored by recency, importance, and relevance. Periodically the agent synthesizes recent memories into a reflection, which drops back into the stream and feeds top-down plans from day level to action level. Ablate any of the three and believability drops: this loop is what let one seeded party idea spread through 24 unscripted agents.جریان حافظهمشاهدهمشاهدهمشاهدهمشاهدهمشاهدهبازاندیشیسنتز و ترکیب مرتبه‌بالاتربازاندیشیبرنامهروز، ساعت، عملمشاهده، بازاندیشی، برنامه‌ریزی · بازاندیشی‌ها دوباره وارد جریان شده و مثل هر حافظه‌ای بازیابی می‌شوند
ایجنت‌های اسمال‌ویل (Smallville) یک جریان حافظه‌ی فقط‌افزودنی (append-only) نگه می‌دارند که بر اساس تازگی، اهمیت و ارتباط امتیازدهی می‌شود. ایجنت به‌صورت دوره‌ای خاطرات اخیر را در قالب یک «بازاندیشی» (reflection) ترکیب می‌کند که دوباره به جریان حافظه بازمی‌گردد و برنامه‌های بالا به پایین را از سطح روزانه تا سطح عمل تغذیه می‌نماید. حذف هر یک از این سه بخش، باورپذیری را کاهش می‌دهد؛ همین حلقه است که باعث شد ایده‌ی یک مهمانی اولیه میان 24 ایجنت بدون فیلم‌نامه از پیش تعیین‌شده پخش شود.

پیاده‌سازی از صفر

فایل code/main.py این سه مؤلفه را با کتابخانه‌ی استاندارد پایتون و سیاست‌های سناریونویسی‌شده برای ایجنت‌ها (بدون LLM واقعی) پیاده می‌کند. این دمو، ماجرای مهمانی ولنتاین را در مقیاس کوچک بازسازی می‌کند:

  • MemoryStream — لاگ فقط الحاقی همراه با بازیابی مبتنی بر تازگی، اهمیت و ارتباط.
  • reflect(stream) — تأمل سناریونویسی‌شده روی حافظه‌های مهم اخیر.
  • plan(agent_state) — برنامه‌ریزی‌های روزانه و ساعتی بر مبنای باورهای جاری.
  • سناریو: 5 ایجنت. ایجنت اول با «برگزاری مهمانی در ساعت 5 بعدازظهر» شروع می‌کند. با گذشت گام‌های زمانی شبیه‌سازی، دعوت‌نامه دست‌به‌دست شده و ایجنت‌ها در یک نقطه به هم می‌رسند.

اجرا:

python3 code/main.py

خروجی مورد انتظار: ردگیری محاسبات گام به گام. تا آخرین گام، حداقل 3 ایجنت از 5 ایجنت این مهمانی را در برنامه‌ی خود دارند و در محل مهمانی جمع می‌شوند. این هماهنگی فقط از دل یک ایده و بدون هیچ هماهنگ‌کننده‌ای شکل گرفته است.

استفاده از ابزارهای واقعی

فایل outputs/skill-simulation-designer.md طراحی یک شبیه‌سازی با ایجنت‌های زایا را مشخص می‌کند: تعداد ایجنت‌ها، ساختار حافظه، دوره‌های تأمل، افق برنامه‌ریزی و معیار ارزیابی.

خروجی این درس

قوانینی برای شبیه‌سازی‌ها در محیط عملیاتی:

  • حافظه همان دیتابیس است. در مقیاس بالا از یک ذخیره‌ساز واقعی (پایگاه داده‌ی برداری، Postgres) استفاده کنید. استفاده از حافظه‌ی رم فقط برای پیش‌نمونه‌هاست.
  • ردگیری محاسبات بازیابی را ثبت کنید. به ازای هر اقدام، لاگ موارد top-k حافظه را که محرک آن تصمیم بوده‌اند نگه دارید. این کار تنها ابزار دیباگ سیستم شماست.
  • برای مصرف توکن به ازای هر ایجنت بودجه بگذارید. فرایند بازیابی + تأمل + برنامه‌ریزی برای هر ایجنت در هر گام به معنای O(k)O(k) فراخوانی LLM است. N ایجنت × T گام زمانی × تعداد فراخوانی در هر گام خیلی زود بودجه‌تان را می‌بلعد.
  • حافظه را به‌صورت دوره‌ای فشرده کنید. ورودی‌های کم‌اهمیت را خلاصه‌سازی و هرس کنید. سیاست نگهداری داده‌ها یک تصمیم معماری است، نه یک جزئیات کم‌اهمیت.
  • نقض هنجارهای فضایی یا اجتماعی را صراحتاً تشخیص دهید. این معماری هنجارها را به‌صورت خودکار یاد نمی‌گیرد.

تمرین‌ها

  1. کد code/main.py را اجرا کنید. مطمئن شوید که 3 یا تعداد بیشتری از ایجنت‌ها در مهمانی حضور می‌یابند. تعداد ایجنت‌ها را به 10 افزایش دهید؛ آیا هنوز هم این رفتار پدیدار می‌شود؟
  2. مرحله‌ی تأمل را حذف کنید. رفتارها چه شکلی می‌شوند؟ نتایج را با یافته‌های آزمون مقایسه‌ای سیستماتیک در مقاله‌ی پارک 2023 تطبیق دهید.
  3. یک هدف اولیه‌ی رقیب اضافه کنید («کلاوس می‌خواهد در ساعت 5 بعدازظهر یک سخنرانی پژوهشی ارائه دهد»). آیا ایجنت‌ها دو دسته می‌شوند یا یک هدف بر دیگری غلبه می‌کند؟ چه عاملی تعیین‌کننده‌ی این موضوع است؟
  4. محدودیت‌های فضایی وضع کنید: کافه هابز حداکثر ظرفیت 4 ایجنت را دارد. آیا شبیه‌سازی سرریز جمعیت را به‌درستی مدیریت می‌کند، یا دچار الگوی شکست «سرویس بهداشتی تک‌نفره» می‌شود؟
  5. بخش 6 مقاله‌ی پارک و همکاران (arXiv:2304.03442) درباره‌ی آزمایش‌های رفتارهای نوظهور را بخوانید. رفتاری را پیدا کنید که در دموی شما بازتولید نشده است. برای پیاده‌سازی آن باید کدام بخش معماری را تقویت کنید؟

اصطلاحات کلیدی

اصطلاح معنایی که برداشت می‌شود مفهوم واقعی
جریان حافظه (Memory stream) «دفترچه‌ی خاطرات ایجنت» لاگ فقط الحاقی از مشاهدات، اقدامات، تأملات و برنامه‌ها.
تازگی (Recency) «میزان جدید بودن حافظه» امتیاز زوال نمایی متناسب با زمان سپری‌شده.
اهمیت (Importance) «میزان اهمیت موضوع برای ایجنت» امتیازدهی شخصی بین 1 تا 10 در زمان نوشتن؛ کش‌شده.
ارتباط (Relevance) «میزان شباهت به پرسش فعلی» شباهت کسینوسی (مبتنی بر امبدینگ).
تأمل (Reflection) «باور سطح بالاتر» تحلیلی ترکیبی از حافظه‌های اخیر که به‌عنوان یک حافظه‌ی تازه ثبت می‌شود.
برنامه (Plan) «شکست کار به روز، ساعت و اقدام» درخت برنامه‌ریزی بالا به پایین؛ قابل بازنگری هنگام تعارض با مشاهدات.
اسمال‌ویل (Smallville) «ساندباکس مقاله‌ی پارک 2023» شبیه‌سازی 25 ایجنت که رفتار پدیدار شدن مهمانی ولنتاین را نشان داد.
باورپذیری (Believability) «معیار کیفیت» امتیازی که ارزیاب انسانی به طبیعی بودن و محتمل بودن رفتار ایجنت می‌دهد.

برای مطالعه‌ی بیشتر

سؤالات متداول

سه مؤلفه‌ی اصلی معماری اسمال‌ویل (Smallville) چیستند؟

جریان حافظه (Memory Stream) به عنوان لاگ فقط الحاقی، تأمل (Reflection) برای ساخت باورهای انتزاعی و سطح بالا، و برنامه (Plan) برای خرد کردن اهداف روزانه و ساعتی.

بازیابی حافظه در ایجنت‌های زایا بر چه اساسی انجام می‌شود؟

بازیابی بر اساس رتبه‌بندی امتیاز ترکیبی سه معیار تازگی (Recency)، اهمیت (Importance) و ارتباط معنایی (Relevance کسینوسی) انجام شده و موارد top-k به پرامپت منتقل می‌شوند.

خطاهای رایج مستندشده در این شبیه‌سازی‌ها کدام‌اند؟

خطاهای هنجار فضایی (مثل ورود به مغازه بسته یا سرویس بهداشتی شلوغ)، سرریز و پرهزینه شدن حافظه در طول زمان، و توهم در مرحله‌ی تأمل.

ما رو توی گوگل بیشتر ببین

با افزودن نکست ادمین به «منابع ترجیحی» گوگل، درس‌ها و مطالب ما را در بخش اخبار برتر جستجو بیشتر می‌بینید.