چیتشیت
مذاکره، شبیهسازی و اقتصادهای ایجنتی
Negotiation, Simulation and Agent Economies
شبکه قراردادها، چانهزنی OG-Narrator، حافظه اسمالویل، آزمونهای نظریه ذهن، تخصیص اعتبار شپلی و حراجهای قیمت دوم.
فهرست مطالب
بازار وظایف Contract Net
گامبهگام- مدیروظیفه را به واحدهای کوچکتر تجزیه میکند.
- مدیرپیام
cfpرا همراه با شرح وظیفه برای کارگزاران همهپخشی میکند. - پیشنهاددهندهیک propose حاوی
(price, eta, confidence)یا یک refuse بازمیگرداند. - مدیرپیشنهادهای با قیمت درون بودجه و زمان تحویل درون مهلت را نگه میدارد.
- مدیربیشینه نسبت conf/price را انتخاب کرده و پیام accept-proposal میفرستد.
- مدیربه بازندگان پیام reject-proposal میفرستد. آنها برای وظایف دیگر پیشنهاد میدهند.
سازوکارهای مذاکره
مفهومها- OG-Narrator
- یک تولیدکنندهی پیشنهاد قطعی قیمت را محاسبه میکند. مدل زبانی فقط روایت میکند.
- تولیدکنندهی پیشنهاد
- چانهزنی روبینشتاین، استراتژی زوتن یا عمل متقابل (tit-for-tat) روی قیمت.
- قاعده
- بگذارید LLM روایت کند. نگذارید پیشنهاد را محاسبه کند.
- پیشنهاد ساختاریافته
- مدل زبانی پیشنویس میکند. قبل از ارسال با اسکیما اعتبارسنجی کنید.
- پنهانسازی CoT
- برندگان استراتژی را بهطور خصوصی محاسبه میکنند. کانال عمومی فقط پیشنهاد را نمایش میدهد.
- دستکاری پرسونا
- پرسونای استیصال و ناچاری حدود 20% بازده بیشتری میدهد.
چانهزنی در کد
کدpython
state = BargainState(buyer_max=buyer_max, seller_min=seller_min)
og_narrator_bargain(state, rng, concession=0.35) # پیشنهاد خریدار
seller_response(state, rng, concession=0.3) # پیشنهاد متقابل فروشنده
move = max(1, int(concession * (state.seller_offer - prior)))
candidate = min(candidate, state.buyer_max) # هرگز فراتر از سقف خود نرود
naive_llm_bargain(state, rng) # واریانس بالا، اغلب خارج از ZOPA
bench_deal_rate(buyer_fn, label, trials=1000) # نرخ توافق به درصد
winner = max(feasible, key=lambda b: b.confidence / max(b.price, 1))
حلقهی ایجنت زایا
معماریبازیابی حافظه
کدpython
top = retrieve_top_k(stream, query="party cafe", tick=4, k=3)
recency = math.exp(-0.3 * (tick - m.ts)) # زوال نمایی بر اساس قدمت
importance = m.importance / 10.0 # خودامتیازدهی از 1 تا 10
relevance = 0.6 if any(w in m.content.lower() for w in query.lower().split()) else 0.1
score = recency + importance + relevance # مرتبشده، نگهداشتن [:k]
a.reflect(tick) # اهمیت >= 6 در 5 تیک زمانی اخیر
a.update_plan(tick) # باور، ساختار Plan(tick=5, where="HobbsCafe") را اضافه میکند
action = a.act(tick) # حرکت هنگام فرارسیدن تیک زمانی برنامه
نظریه ذهن و هماهنگی
مفهومها- مرتبه صفر
- بدون مدلی از دیگران. ایجنت فقط بر اساس مشاهدات خودش عمل میکند.
- مرتبه اول
- مدلی از باورهای هر ایجنت دیگر. «آلیس باور دارد X.»
- مرتبه دوم
- باورهای بازگشتی. «آلیس باور دارد که باب باور دارد X.»
- وضعیت ToM
- ویژگی
other_models. آن را بهصورت{agent_id: belief_list}نگه دارید. - معیارهای ریدل
- تمایز وابسته به هویت، مکملبودن هدفمحور، همافزایی مرتبهبالا.
- سیگنالهای واقعی
- مکملبودن در طول زمان، پیشبینی و اصلاح تا نوبت گفتوگو T+2.
- دمو
- دستور
run_trial(n_agents, n_boxes, tom, seed, max_turns=10)تکرارها را میشمارد.
سازوکارهای اقتصادی در کد
کار و کد| وظیفه | کد |
|---|---|
| شپلی دقیق، N کوچک | shapley_exact(value_fn, agents) |
| شپلی نمونهبرداریشده | shapley_sampled(value_fn, agents, samples, rng) |
| حراج صادقانه | second_price(bids) |
| برنده پرداخت میکند | payment = sorted_bids[1].value |
| مخزن اعتبار | Reputation(alpha=0.95, floor=0.1) |
| بهروزرسانی پس از یک وظیفه | rep.update(agent, quality) |
| مسیریابی بر اساس اعتبار | weighted_choice(agents, rep.weights(agents), rng) |
اجرای دموها
دستورها| دستور | عملکرد |
|---|---|
`python3 code/main.py` in 16-16 | مدل زبانی خام توافق ~65-75%، روش OG-Narrator توافق ~85-95% |
`python3 code/main.py` in 16-17 | 3 ایجنت از 5 ایجنت در مهمانی همگرا میشوند |
`python3 code/main.py` in 16-18 | تکرارهای ToM حدود ~5%، مرتبه صفر ~35% |
`python3 code/main.py` in 16-21 | مسیریابی بر اساس اعتبار 10-20% بهبود کیفیت میدهد |
پیشفرضها در کد درس
پیشفرضها| تنظیم | پیشفرض | نکته |
|---|---|---|
max_rounds | 5 | دورهای چانهزنی در هر آزمون |
Buyer `concession` | 0.35 | فروشنده از 0.3 استفاده میکند |
Bargain `trials` | 1000 | بنچمارک ToM از 200 استفاده میکند |
Retrieval `k` | 3 | k حافظه برتر در پرامپت |
Reflection trigger | 150 | مجموع اهمیت خاطرات پردازشنشده |
max_turns | 10 | بودجه جمعآوری توکن در ToM |
alpha | 0.95 | زوال اعتبار |
floor | 0.1 | پایینترین امتیاز اعتبار |
اعداد کلیدی برای بهخاطرسپردن
مفهومها- OG-Narrator
- جهش نرخ توافق از 26.67% به 88.88%.
- رقابت
- ~180 هزار مذاکره. ایجنتهای پنهانکار برنده شدند.
- جفتهای متقارن
- نتایج نابرابر در حدود 40% از سناریوها.
- اسمالویل
- 25 ایجنت. 24 نفر از مهمانی اطلاعی نداشتند.
- هزینهی شپلی
- به ازای N=3 دارای 6 جایگشت. به ازای N=10 دارای 3.6 میلیون جایگشت.
- نمونهبرداری شپلی
- 100-1000 چینش ترتیبی.
حالتهای شکست
عیبیابیپیشنهادهای خارج از ZOPA
- علت
- مدل زبانی قیمت را محاسبه میکند
- راهحل
- تولیدکنندهی پیشنهاد قطعی
طرف مقابل از سقف شما باخبر است
- علت
- قیمت رزرو در یک ردگیری محاسبات آشکار
- راهحل
- فضای چرکنویس خصوصی و مجزا
ایجنتها وارد فروشگاههای بسته میشوند
- علت
- خطاهای هنجارهای مکانی
- راهحل
- تشخیص صریح موارد نقض قانون
افزایش هزینهی بازیابی
- علت
- سرریز حافظه
- راهحل
- خلاصهسازی و هرس، زوال موارد با اهمیت پایین
روابط ساختگی و مندرآوردی
- علت
- توهم در مرحله تأمل
- راهحل
- قراردادن شناسههای حافظهی منبع در پرامپت
هماهنگی فقط در دموها دیده میشود
- علت
- ظاهرسازی با پرامپت، نبود کنترل
- راهحل
- شرایط کنترل و
p < 0.05
انتساب باور به ایجنت اشتباه
- علت
- افق زمانی بلند، محدودیت کانتکست
- راهحل
- مخزن ToM صریح یا خارجی
یک مجری اعتبار را بهطور کاذب باد میکند
- علت
- حمله سیبیل (Sybil)
- راهحل
- شناسههای DID و هزینه جعل اعتبار
پرسشها
پرسش و پاسخ- آیا مدل بزرگتر بهتر چانهزنی میکند؟
- خیر. فقط متن بهتری مینویسد اما با همان خطای استراتژیک مشابه.
- چرا Contract Net برای بیش از 100 کارگزار مقیاسپذیر است؟
- چون بر مبنای همهپخشی و پاسخ است، نه چت همگام.
- کدام بخش اسمالویل را میتوان حذف کرد؟
- هیچکدام. هر ابطالسنجی به باورپذیری آسیب میزند.
- چرا حراج قیمت دوم؟
- تحت تجمیع یکنواخت، ایجنتها ارزش واقعی خود را پیشنهاد میدهند.
- چه زمانی اقتصادهای ایجنتی منطقی هستند؟
- شبکههای باز، خروجیهای قابلراستیآزمایی، کارهای با افق زمانی بلند.
چکلیست استقرار
نکتهها- چانهزنی را به 3-5 دور محدود کنید. در بنبست کار را به یک میانجی ارجاع دهید.
- پیشنهادهای خارج از ZOPA را در مرز پروتکل رد کنید.
- حافظه فقطافزودنی است. اصلاحات بهصورت ورودیهای جدید ثبت میشوند.
- k حافظه برتری را که محرک هر اقدام بودند لاگ کنید.
- کار را با اعتبار شروع کنید، نه توکن.
- قبل از پاداشدادن راستیآزمایی کنید.