Методические указания к ДЗ-3
Алгоритм решения мультиагентных
1: ПОДГОТОВКА И АНАЛИЗ
Шаг 1. Формализация задачи как стохастической игры
Для N агентов определить:
1. S = {s₁, s₂, ...} - глобальное состояние системы
2. A = A₁ × A₂ × ... × Aₙ - совместное пространство действий
3. P(s'|s, a₁,...,aₙ) - функция переходов (зависит от всех агентов)
4. Rᵢ(s, a₁,...,aₙ, s') - индивидуальные функции вознаграждения
5. Oᵢ ⊆ S - что наблюдает агент i (для POMDP)
6. γ ∈ [0,1] - коэффициент дисконтирования
Шаг 2. Классификация типа взаимодействия
Определить доминирующий тип по матрице:
Конкуренция Кооперация Смешанное
Награды Разные Общие Разные, но коррелиро- ваны
Цель Победить Общий Компромисс
успех
Пример Покер Футбол Рынок
Метод* Nash-Q COMA Actor-Critic
*Nash-Q - для конкурентных сред, ищет равновесие (как в покере). Агенты учатся, предсказывая действия других, чтобы никто не мог выиграть, односторонне меняя стратегию.
COMA - для кооперативных сред (как командная игра). Решает проблему "кому засчитать результат?". У каждого агента есть контрфактический baseline, который показывает, какой была бы награда, если бы он действовал иначе, выделяя его личный вклад в общий успех.
Actor-Critic - универсальная архитектура для любых сред. У каждого агента есть:
· "Актёр" (Actor) - выбирает действие (политика).
· "Критик" (Critic) - оценивает, насколько это действие было хорошим.
Критик даёт обратную связь Актеру,чтобы тот улучшался. В мультиагентном варианте (например, MADDPG*) у Критика есть информация о всех агентах для лучшей оценки.
*MADDPG (Multi-Agent Deep Deterministic Policy Gradient) — это ключевой алгоритм для мультиагентного обучения в непрерывных пространствах действий.
Шаг 3. Определение архитектуры коммуникации
Выбрать одну из схем:
1. Децентрализованная: Агенты → Среда (нет прямой связи)
2. Централизованная: Агенты → Контроллер → Агенты
3. Распределённая: Агенты ↔ Соседи (ограниченная связь)
4. Иерархическая: Агенты → Лидеры → Контроллер
2: ПРОЕКТИРОВАНИЕ РЕШЕНИЯ
Если задача КООПЕРАТИВНАЯ:
- Если коммуникация ПОЛНАЯ →Централизованное обучение с децентрализованным исполнением (MADDPG, COMA)
- Если коммуникация ОГРАНИЧЕННАЯ → Индивидуальное обучение с общей наградой (Независимое Q-learning с распределенными наградами)
Если задача КОНКУРЕНТНАЯ:
- Если агентов МАЛО (2-4) → Теория игр + RL
- Если агентов МНОГО → Mean Field методы
(Mean Field Q-learning)
- Если задача СМЕШАННАЯ:
→ Гибридные подходы
(Actor-Critic с разными reward функциями)
Шаг 5. Проектирование пространства состояний и действий
1. Полная или частичная наблюдаемость?
2. Дискретное или непрерывное пространство?
3. Однородные или гетерогенные агенты?
Шаг 6. Дизайн функции вознаграждения
Создать многоуровневую систему наград:
# 1. Индивидуальная компонента
r_individual = f(личный_успех_агента)
# 2. Социальная компонента (для кооперации)
r_social = α * f(успех_команды)
# 3. Компонента справедливости (предотвращение эксплуатации)
r_fairness = β * (1 - неравенство_в_наградах())
# 4. Штрафы за нежелательное поведение
r_penalty = γ * штраф_за_сговор() + δ * штраф_за_эгоизм()
3: РАЗРАБОТКА АЛГОРИТМА ОБУЧЕНИЯ
Шаг 7. Базовый алгоритм обучения
Централизованное Обучение / Децентрализованное Исполнение:
1. Инициализация:
· Создать N агентов, каждый со своей политикой
· Создать централизованного "критика" (опционально)
· Инициализировать буфер памяти совместных траекторий
2. Цикл обучения (для каждого эпизода):
· Сбор траектории:
a. Начальное состояние среды
b. Для каждого шага:
· Каждый агент выбирает действие на основе своих локальных наблюдений
· Все действия выполняются совместно в среде
· Получаются новые состояния и награды
· Сохраняется опыт (состояние, совместные действия, награды, новое состояние) в общий буфер
· Обучение:
a. Выборка пакета опыта из буфера
b. Централизованная оценка совместных действий (если есть критик)
c. Обновление индивидуальных политик на основе общей оценки
d. Обновление централизованного критика (если есть)
3. Децентрализованное исполнение (после обучения):
· Каждый агент использует только свою локальную политику
· Никакой централизованной координации во время выполнения
Шаг 8. Стратегия исследования в мультиагентной среде
1. На ранних этапах обучения (эпизоды 0-1000):
· Высокий уровень случайных действий (ε = 0.9 → 0.5)
· Агенты активно исследуют пространство
· Собирается базовая информация о среде
2. На средних этапах (эпизоды 1000-5000):
· Уменьшающийся уровень исследований (ε = 0.5 → 0.1)
· Комбинирование: 70% эксплуатация, 30% исследование
· Добавление "умного" исследования (UCB, имитация успешных агентов)
3. На поздних этапах (эпизоды 5000+):
· Низкий уровень исследований (ε = 0.1 → 0.01)
· Преимущественно эксплуатация найденных стратегий
· Случайные инновационные попытки (1% случаев)
4: ВАЛИДАЦИЯ И ОЦЕНКА СИСТЕМЫ
Шаг 9. Определение метрик оценки
Система метрик:
Группа 1: Эффективность
· Социальное благосостояние (сумма наград всех агентов)
· Эффективность по Парето (можно ли улучшить одного, не ухудшив других?)
· Скорость достижения целей
Группа 2: Справедливость
· Индекс Джини (равенство распределения наград)
· Максимин справедливость (благополучие наименее успешного агента)
· Отношение максимальной/минимальной награды
Группа 3: Стабильность и надежность
· Скорость сходимости (число эпизодов до стабильной стратегии)
· Устойчивость к шокам (восстановление после изменений среды)
· Воспроизводимость результатов
Группа 4: Качество взаимодействия
· Уровень кооперации (доля совместных действий)
· Сложность возникающих паттернов (энтропия, фрактальность)
· Эффективность коммуникации (если применимо)
Шаг 10. Протокол тестирования
1. Базовые тесты:
· Запуск 100 эпизодов для оценки
2. Стресс-тесты:
· Изменение количества агентов
· Введение новых типов агентов
· Изменение параметров среды
· Тестирование на незнакомых конфигурациях
3. Сравнительный анализ:
· Сравнение с базовыми алгоритмами
· Сравнение с централизованным решением (верхняя граница)
· Сравнение с полностью случайной стратегией (нижняя граница)