3,583 papers
arXiv:2508.11416 74 15 авг. 2025 г. FREE

AIM-Bench: когнитивные искажения LLM в решениях под неопределённостью

КЛЮЧЕВАЯ СУТЬ
Обнаружено: LLM якорится на первом числе в задаче (среднем значении, прошлом результате) и слабо корректирует к оптимуму. В задачах управления запасами GPT-4o показал полную привязку к среднему (α = 1.0), DeepSeek-V3 — 1.375. Метод Cognitive Reflection позволяет снизить это якорение в численных решениях под неопределённостью. Фишка: два независимых прохода в одном промпте — сначала быстрое решение (якорь срабатывает), потом аналитический пересчёт с нуля (якорь слабеет). У Qwen-2.5 фактор якорения упал с 0.7 до 0.255 — в 2.7 раза ближе к оптимуму.
Адаптировать под запрос

TL;DR

Исследователи из Нанкинского университета проверили как LLM принимают решения в условиях неопределённости — на примере управления запасами. Взяли классические задачи (Newsvendor Problem, Beer Game, multi-period replenishment) и прогнали через них GPT-4.1, GPT-4o, DeepSeek-V3, Gemini-2.5, Qwen-2.5. Создали бенчмарк AIM-Bench с 5 средами и разными типами неопределённости: случайный спрос, случайные сроки поставки, непредсказуемое поведение партнёров.

Главная находка: LLM страдают теми же когнитивными искажениями что и люди. Mean anchoring — модель якорится на среднем значении спроса и недостаточно корректирует решение к оптимуму. Например, GPT-4o показал фактор якорения α = 1.0 (полная привязка к среднему), DeepSeek-V3 — 1.375. Только Gemini-2.5-flash-lite оказался полностью невосприимчив к этому bias. Bullwhip effect — модель переоценивает колебания спроса и заказывает слишком много, усиливая вариативность заказов вверх по цепочке поставок. Все протестированные модели показали этот эффект, даже GPT-4.1.

Исследователи нашли две работающие стратегии митигации. Cognitive reflection (промпт на System 2 thinking) снижает anchoring: у Qwen-2.5 фактор якорения упал с 0.7 до 0.255. Information sharing между агентами снижает bullwhip effect: у Qwen-2.5 показатель BWE упал с 13.78 до 4.45. Интересно, что классический фрейминг-эффект (gain vs loss framing) НЕ работает для LLM в контексте запасов — в отличие от людей, модели не меняют риск-аппетит от формулировки.


📌

Схема cognitive reflection для снижения anchoring

Проблема: LLM якорится на первом числе (среднее, предыдущее значение) и слабо корректирует к оптимуму.

Решение: Промпт на System 2 thinking — имитация медленного аналитического мышления.

ШАГ 1: Дай первое решение (fast thinking)
ШАГ 2: Включи режим аналитика — пересчитай с нуля, игнорируя первое решение
ШАГ 3: Сравни два решения, объясни почему второе лучше/хуже
ШАГ 4: Дай финальное решение

Выполняется в одном промпте. Модель симулирует два режима мышления последовательно.


🚀

Пример применения

⚠️ Ограничения метода: Работает для задач с численными решениями под неопределённостью. Не подходит для творческих задач, субъективных оценок, задач без чёткого оптимума.

Задача: Ты открываешь pop-up кофейню на Geek Picnic в Москве. Мероприятие длится 1 день, товар (cold brew в бутылках) портится в тот же день. Закупочная цена — 80₽, продаёшь за 250₽. По опыту прошлых фестивалей, спрос колеблется от 200 до 500 бутылок, среднее — 350. Сколько бутылок закупить?

Промпт:

Контекст: pop-up кофейня на Geek Picnic (1 день). Cold brew в бутылках.
- Закупка: 80₽/шт
- Продажа: 250₽/шт 
- Спрос: от 200 до 500, среднее 350
- Остатки: порча, 0₽

Задача: определить оптимальное количество для закупки.

ШАГ 1 (быстрое решение):
Дай первое решение интуитивно. Напиши число и 1 предложение почему.

ШАГ 2 (аналитическое мышление):
Теперь включи режим строгого аналитика. Игнорируй первое решение.
- Посчитай критический коэффициент (cu / cu+co)
- Найди оптимальный квантиль распределения спроса
- Дай новое решение на основе расчётов

ШАГ 3 (рефлексия):
Сравни два решения. Объясни:
- Какой bias повлиял на первое решение?
- Почему второе решение точнее?
- На сколько первое отличается от оптимального?

ШАГ 4 (финальное решение):
Дай одно число — сколько бутылок закупить. Одно предложение с аргументом.

Результат:

Модель покажет два решения: первое (скорее всего близкое к среднему 350) и второе (пересчитанное через critical ratio ≈ 0.68, что даёт ~430-450 бутылок). В рефлексии объяснит что якорилась на среднем в первом решении. Финальное решение будет ближе к оптимуму, чем без cognitive reflection.


🧠

Почему это работает

Слабость LLM: Модель якорится на первом числе в контексте. Mean anchoring — если в задаче упомянуто "среднее 350", модель тяготеет к этому значению. Недостаточно корректирует к оптимуму даже если знает формулу. Это паттерн-матчинг: "среднее" часто появляется рядом с "ответом" в обучающих данных.

Сильная сторона LLM: Модель умеет следовать структурированным инструкциям. Если явно попросить "игнорируй первое решение, пересчитай с нуля" — она переключится на другой паттерн генерации.

Как метод использует это: Cognitive reflection принудительно создаёт два независимых прохода. Первый — fast thinking (якорение срабатывает). Второй — slow thinking (модель следует аналитическому паттерну, якорь слабеет). Рефлексия между ними усиливает второй проход — модель сама себе объясняет почему первое решение смещено.

Рычаги управления:

  • Число проходов (1 vs 2 vs 3) → больше = меньше bias, но дороже по токенам
  • Явность инструкции "игнорируй" → усиливает переключение контекста
  • Требование объяснения в рефлексии → усиливает осознанность второго прохода
  • Формат финального ответа ("одно число" vs "диапазон") → контролирует детальность

📋

Шаблон промпта

📌

Cognitive reflection для численных решений

Контекст: {описание ситуации с неопределённостью}

Данные:
- {параметр_1}: {значение}
- {параметр_2}: {значение}
- Неопределённость: {описание случайной величины, диапазон, среднее если есть}

Задача: {что нужно решить — численно}

ШАГ 1 (быстрое решение):
Дай первое решение интуитивно. Напиши число и 1 предложение почему.

ШАГ 2 (аналитическое мышление):
Теперь включи режим строгого аналитика. Игнорируй первое решение.
- {инструкция по расчёту через формулы/логику}
- {ещё инструкция если нужно}
- Дай новое решение на основе расчётов

ШАГ 3 (рефлексия):
Сравни два решения. Объясни:
- Какой bias повлиял на первое решение?
- Почему второе решение точнее?
- На сколько первое отличается от оптимального?

ШАГ 4 (финальное решение):
Дай {формат ответа}. {дополнительные требования}.

Что подставлять:

  • {описание ситуации} — контекст задачи одним абзацем
  • {параметр_N} — численные данные (цены, затраты, вероятности)
  • {описание случайной величины} — источник неопределённости (спрос, срок, риск)
  • {инструкция по расчёту} — конкретные шаги аналитического решения (формулы, критерии, эвристики)
  • {формат ответа} — "одно число", "диапазон с вероятностью", "решение с обоснованием"
📌

Information sharing для многоагентных решений

Контекст: {описание цепочки решений}

Твоя роль: {агент N в цепочке}

Видимая информация:
- Твои данные: {локальные данные агента}
- От партнёра {имя}: {какую информацию он расшарил}
- От партнёра {имя}: {какую информацию он расшарил}

Твоя задача: {решение агента}

При принятии решения:
1. Используй информацию от партнёров для оценки общей ситуации
2. Не дублируй их поведение слепо (избегай action chasing)
3. Корректируй свои действия с учётом их данных, но сохраняй независимость

Дай решение: {формат}

🚀 Быстрый старт — вставь в чат:

Вот шаблон Cognitive Reflection для снижения anchoring bias в численных решениях. Адаптируй под мою задачу: [твоя задача с неопределённостью]. Задавай вопросы, чтобы заполнить поля.

[вставить шаблон выше]

LLM спросит про параметры задачи (цены, затраты, диапазон неопределённости), формулы или логику расчёта, формат ответа. Она возьмёт структуру cognitive reflection и адаптирует под твою ситуацию.


⚠️

Ограничения

⚠️ Контекст-зависимость: Фрейминг-эффект (gain vs loss framing) НЕ работает для LLM в контексте запасов/инвестиций — в отличие от людей, модели не меняют риск-аппетит от формулировки. Поведенческие теории нужно проверять в каждом конкретном контексте.

⚠️ Остаточный bias: Cognitive reflection снижает anchoring, но не убирает полностью. Даже GPT-4.1 с промптом показал α = 0.405 (оптимум = 0). Только Gemini-2.5-flash-lite был полностью устойчив без промпта.

⚠️ Action chasing в multi-agent: При information sharing GPT-4o показал тенденцию копировать действия партнёров (BWE близко к 0) — потерял способность к независимому принятию решений. Нужен баланс между использованием информации и сохранением автономности.

⚠️ Не для творческих задач: Метод работает только для задач с численным оптимумом или чёткими критериями. Для субъективных оценок, креативных решений, задач без правильного ответа — не применим.


🔍

Как исследовали

Команда создала AIM-Bench — бенчмарк из 5 сред управления запасами с разными типами неопределённости. Newsvendor Problem (NVP) — классика 1951 года: закупка газет на 1 день, спрос случайный, остатки в утиль. Multi-period replenishment (MPR) — закупки на много периодов, запасы переходят между периодами, случайные сроки поставки (VLT). Beer Game (BG) — 4 уровня цепочки поставок (завод → дистрибьютор → опт → розница), фиксированные сроки, непредсказуемое поведение партнёров. Two-level Warehouse Network (TWN) — центральный склад + мини-склады, два пути поставки (быстрый дорогой vs медленный дешёвый). Supply Chain Network (SCN) — комбо всех неопределённостей.

Протестировали 5 моделей: GPT-4.1, GPT-4o, DeepSeek-V3, Gemini-2.5-flash-lite, Qwen-2.5-72B. Каждую модель прогнали через все среды по 20-50 раундов. Измеряли outcome metrics (inventory cost, stockout rate, turnover rate — как в реальной логистике) и process metrics (distance from optimal order — разрыв между решением агента и ex-post оптимумом, вычисленным через dynamic programming).

Ключевой инсайт дизайна: Process metrics оказались информативнее outcome. Например, GPT-4.1 и Qwen-2.5 показали почти одинаковый stockout rate (0.250 vs 0.256), но distance from optimal сильно различался (467 vs 608) — GPT-4.1 в целом лучше. Почему? Outcome сжимает много решений в одну метрику. Process показывает паттерн ошибок — модель переоценивает спрос, якорится на среднем, копирует партнёров.

Для изучения bias использовали классические метрики поведенческой экономики. Anchoring factor α — степень якорения на среднем спросе: 0 = оптимум, 1 = полное якорение. Считали по формуле q = μ + α'(q* - μ), где μ — среднее, q* — оптимум. Demand chasing — корреляция между текущим заказом и предыдущим спросом ρ(qt, dt-1): положительная = гоняется за спросом. Bullwhip effect β — отношение стандартных отклонений заказов соседних уровней σ_upstream / σ_downstream: >1 = усиление вариативности вверх по цепочке.

Митигация стратегии: Для cognitive reflection дали промпт в стиле "Think step-by-step as an expert analyst" + требование пересчёта с нуля. Для information sharing расширили state space — каждый агент видит не только свои данные (inventory, incoming orders), но и данные партнёров (их inventory levels, order history). Сравнили до/после. Cognitive reflection снизил anchoring в 2-3 раза. Information sharing снизил BWE в 2-5 раз, но вызвал action chasing у GPT-4o.

Что удивило: Все модели показали bullwhip effect, даже топовые. DeepSeek-V3 — минимальный anchoring (α=1.375), но всё равно не ноль. Фрейминг (gain vs loss) не изменил поведение — противоречит Prospect Theory для людей. Gemini-2.5 — иммунитет к anchoring в NVP, но худший bullwhip в BG. Каждая модель — свой профиль bias: Qwen переоценивает запасы (высокий TR), DeepSeek недооценивает (высокий SR), GPT-4o хорош в fixed lead time, плох в stochastic VLT.


💡

Адаптации и экстраполяции

📌

💡 Адаптация для бизнес-решений с неопределённостью

Принципы cognitive reflection и information sharing работают не только для inventory. Любая задача с числовым решением под неопределённостью — кандидат.

Примеры российского бизнес-контекста:

  • Ценообразование маркетплейса: Wildberries продавец выбирает цену товара. Спрос случаен, конкуренты меняют цены, комиссия фиксирована. Anchoring на среднюю цену категории. Cognitive reflection: "первое решение интуитивно → пересчёт через unit economics игнорируя среднее → рефлексия → финальная цена".
  • Запуск рекламы в Яндекс.Директ: Неопределённость CTR, CPC варьируется, дневной бюджет ограничен. Anchoring на "рекомендованную ставку" Директа. Cognitive reflection через расчёт ROI с нуля.
  • Hiring решение: Оффер кандидату. Неопределённость: примет/не примет, альтернативные кандидаты, рыночная зарплата. Anchoring на "предыдущую зарплату кандидата" или "наш бюджет". Cognitive reflection: интуитивный оффер → пересчёт через expected value разных исходов → рефлексия bias → финальный оффер.

Промпт-шаблон:

Ситуация: {бизнес-решение с риском}
Неопределённость: {что может варьироваться}
Якорь: {число которое может сбить с толку — средняя цена, benchmark, прошлая метрика}

ШАГ 1: Дай решение интуитивно (скорее всего якорь повлияет)
ШАГ 2: Пересчитай аналитически, игнорируя якорь. Используй {метод расчёта}
ШАГ 3: Сравни, найди bias
ШАГ 4: Финальное решение
📌

🔧 Техника: усиление рефлексии через adversarial thinking

Вместо нейтрального "сравни два решения" — добавь роль критика.

ШАГ 3 (adversarial рефлексия):
Представь что ты скептичный финансовый директор. Твоя задача — найти дыры в обоих решениях.
- Почему первое решение провалится?
- Почему второе решение рискованно?
- Какие скрытые факторы оба решения игнорируют?
- Дай третий вариант который учитывает эту критику.

Это усиливает System 2 — модель ищет слабые места в собственных рассуждениях.

📌

💡 Адаптация для multi-agent координации

Information sharing работает везде где есть несколько LLM агентов или несколько шагов решения с зависимостями.

Пример: Разработка продукта. Три агента: маркетолог (оценивает спрос), финансист (считает unit economics), продакт (фичи и roadmap). Каждый видит только свою часть. Без information sharing — маркетолог переоценивает TAM, финансист режет бюджет, продакт пилит фичи в вакууме. С information sharing — каждый агент получает inputs других агентов и корректирует своё решение.

Промпт-шаблон:

Роль: {агент N}
Локальные данные: {твои данные}

От других агентов:
- {Агент 1}: {его выводы и данные}
- {Агент 2}: {его выводы и данные}

Твоя задача: {решение}

Правила координации:
1. Используй чужие данные для калибровки своих оценок
2. Если видишь противоречие между агентами — укажи и предложи компромисс
3. Не копируй чужие решения слепо (избегай groupthink)

Дай решение с обоснованием: учёл ли данные партнёров? Где скорректировал свою позицию?

🔗

Ресурсы

AIM-Bench: Evaluating Decision-making Biases of Agentic LLM as Inventory Manager — Xuhua Zhao, Yuxuan Xie, Caihua Chen, Yuxiang Sun (Nanjing University, 2025). Preprint. Ссылки на базовые работы: Schweitzer & Cachon (2000) по pull-to-center effect, Lee et al. (1997) по bullwhip effect, Bolton & Katok (2008) по anchoring metrics.


📋 Дайджест исследования

Ключевая суть

Обнаружено: LLM якорится на первом числе в задаче (среднем значении, прошлом результате) и слабо корректирует к оптимуму. В задачах управления запасами GPT-4o показал полную привязку к среднему (α = 1.0), DeepSeek-V3 — 1.375. Метод Cognitive Reflection позволяет снизить это якорение в численных решениях под неопределённостью. Фишка: два независимых прохода в одном промпте — сначала быстрое решение (якорь срабатывает), потом аналитический пересчёт с нуля (якорь слабеет). У Qwen-2.5 фактор якорения упал с 0.7 до 0.255 — в 2.7 раза ближе к оптимуму.

Принцип работы

Четыре шага в одном промпте. ШАГ 1: дай первое решение интуитивно (быстрое мышление). ШАГ 2: включи аналитика — пересчитай с нуля, игнорируя первое (медленное мышление). ШАГ 3: сравни два решения, объясни какое смещение повлияло на первое. ШАГ 4: дай финальное решение. Модель симулирует два режима мышления последовательно — первый попадает под якорение, второй следует аналитическому паттерну.

Почему работает

LLM якорится из-за паттерн-матчинга в обучающих данных. Если в задаче упомянуто "среднее 350" — модель тяготеет к этому значению. "Среднее" часто появляется рядом с "ответом" в данных. Cognitive reflection принудительно создаёт два независимых прохода. Первый — якорение срабатывает. Второй — явная инструкция "игнорируй первое" переключает модель на другой паттерн генерации. Рефлексия между ними усиливает эффект — модель сама себе объясняет почему первое решение смещено.

Когда применять

Численные решения под неопределённостью → конкретно для задач где нужно выбрать число (объём закупки, размер инвестиции, количество ресурсов), особенно когда в условии есть "среднее" или "прошлое значение". НЕ подходит для творческих задач, субъективных оценок, задач без чёткого оптимума.

Мини-рецепт

1. Дай контекст и данные: опиши ситуацию, численные параметры, источник неопределённости (спрос от 200 до 500, среднее 350)
2. ШАГ 1 — быстрое решение: попроси дать первое решение интуитивно, одно число и предложение почему
3. ШАГ 2 — аналитик: "Теперь включи режим строгого аналитика. Игнорируй первое решение. Пересчитай через [формулы/критерии]"
4. ШАГ 3 — рефлексия: "Сравни два решения. Какое смещение повлияло на первое? Почему второе точнее?"
5. ШАГ 4 — финал: "Дай одно число. Одно предложение с аргументом"

Примеры

[ПЛОХО] : Сколько бутылок cold brew закупить для pop-up кофейни на фестивале? Спрос 200-500, среднее 350. Закупка 80₽, продажа 250₽
[ХОРОШО] : Контекст: pop-up на Geek Picnic, 1 день. Закупка 80₽, продажа 250₽, спрос 200-500 (среднее 350), остатки портятся. ШАГ 1 (быстрое): Дай первое решение интуитивно, число и 1 предложение. ШАГ 2 (аналитик): Игнорируй первое. Посчитай критический коэффициент (прибыль_упущенная / прибыль_упущенная + убыток_от_остатков), найди оптимальный квантиль, дай новое решение. ШАГ 3 (рефлексия): Сравни два решения. Какое смещение в первом? Почему второе точнее? ШАГ 4 (финал): Дай одно число — сколько закупить, одно предложение с аргументом
Источник: AIM-Bench: Evaluating Decision-making Biases of Agentic LLM as Inventory Manager
ArXiv ID: 2508.11416 | Сгенерировано: 2026-01-12 03:05

Работа с исследованием

Адаптируйте исследование под ваши задачи или создайте готовый промпт на основе техник из исследования.

0 / 2000
~0.5-2 N-токенов ~10-30с
~0.3-1 N-токенов ~5-15с