Підкріплювальне навчання та автономні агентні системи
Основи MDP та Q-learning
Карта, компас і мета
На відміну від навчання з учителем, де моделі вчаться за готовими відповідями, у навчанні з підкріпленням (RL) агент діє методом проб і помилок. Уявіть робота на складі, який має доставляти пакунки. Він не знає найкращого маршруту заздалегідь. Натомість він навчається, рухаючись, отримуючи винагороди (наприклад, +10 за успішну доставку) або штрафи (-1 за кожен крок, щоб стимулювати швидкість).
Щоб формалізувати це завдання, ми використовуємо (MDP). Це математична структура, що описує середовище в RL. Вона складається з кількох ключових елементів:
Кожен крок агента — це перехід від одного стану до іншого, що приносить певну винагороду. Мета агента — не просто отримати максимальну винагороду за один крок, а максимізувати сукупну винагороду протягом усього епізоду. Але як він може оцінити, наскільки «хорошим» є той чи інший стан?
Рівняння для майбутнього
Щоб зрозуміти цінність перебування в певному стані, агент використовує функцію цінності (Value Function). Вона прогнозує очікувану сукупну винагороду, яку можна отримати, починаючи з цього стану. Основою для розрахунку цієї цінності є s, яке пов'язує цінність поточного стану з цінністю наступних можливих станів.
Рівняння Беллмана є теоретичною основою. Але як агенту діяти, коли він не знає точних ймовірностей переходів або функції винагороди ? Тут на сцену виходить Q-learning.
Навчання через дію
Q-learning — це алгоритм, який дозволяє агенту навчатися оптимальній політиці дій без моделі середовища. Замість того, щоб обчислювати цінність стану , він обчислює цінність пари «стан-дія», відому як Q-значення, або . Це значення відповідає на питання: «Яку сукупну винагороду я очікую отримати, якщо виконаю дію в стані , а потім буду дотримуватися оптимальної політики?».
Агент зберігає всі Q-значення у звичайній таблиці, яка називається Q-table. Рядки представляють стани, а стовпці — можливі дії.
| Стан (локація) | Рух вгору | Рух вниз | Рух вліво | Рух вправо |
|---|---|---|---|---|
| A1 | 0 | 0 | 0 | 0 |
| A2 | 0 | 0 | 0 | 0 |
| B1 | 0 | 0 | 0 | 0 |
| B2 | 0 | 0 | 0 | 0 |
На початку таблиця заповнена нулями. Коли агент взаємодіє з середовищем, він оновлює ці значення за допомогою формули оновлення Q-learning:
Простими словами, нове Q-значення — це середньозважене значення між старим значенням та новою інформацією (винагорода + максимальна майбутня винагорода).
З кожним кроком агент оновлює комірку в Q-таблиці, і з часом ці значення сходяться до оптимальних. Обираючи дію з найвищим Q-значенням для поточного стану, агент слідує найкращому відомому йому шляху.
Дилема дослідника
Якщо агент завжди обиратиме дію з найвищим Q-значенням, він може застрягти на першому ж знайденому «хорошому» шляху, так і не дізнавшись про існування кращого. Це класична дилема: дослідження (exploration) проти використання (exploitation).
- Використання: Використовувати наявні знання для отримання гарантованої винагороди.
- Дослідження: Пробувати нові дії з надією знайти ще кращу винагороду.
Щоб збалансувати ці два підходи, використовується (epsilon-greedy). Агент обирає випадкову дію з імовірністю (епсилон) і найкращу відому дію з імовірністю .
Цей простий механізм дозволяє агенту час від часу відхилятися від перевіреного шляху, щоб відкривати нові, потенційно ефективніші маршрути. Таким чином, робот на складі може знайти коротший шлях, про який спочатку навіть не здогадувався.
Тепер, коли ми розуміємо основи, час перевірити свої знання.
Чим фундаментально навчання з підкріпленням (RL) відрізняється від навчання з учителем?
Що зберігається в Q-таблиці в алгоритмі Q-learning?
Озброївшись цими фундаментальними концепціями, ви готові перейти до більш складних методів, де таблиці замінюються нейронними мережами для вирішення задач з величезним простором станів.
