Результаты обучения
После изучения урока вы сможете:
- Объяснять отличие RL от обучения с учителем и без учителя.
- Различать агента, среду, состояние, действие, награду и эпизод.
- Объяснять политику, функцию ценности и дисконтированный возврат.
- Различать exploration и exploitation.
- Описывать Q-learning, policy-based и actor–critic методы на концептуальном уровне.
- Формулировать учебную RL-задачу и выявлять риски награды и небезопасного исследования.
1. Чем RL отличается от других режимов обучения
В supervised learning каждому обучающему примеру соответствует известный целевой ответ. В unsupervised learning заранее заданных меток нет, и алгоритм ищет структуру в данных. В Reinforcement Learning (RL) агент взаимодействует со средой: выбирает действие, получает новое состояние и сигнал награды.
Главное отличие — последовательность решений. Действие влияет не только на ближайшую награду, но и на будущие состояния и доступные варианты поведения. Поэтому важно оценивать долгосрочный результат.
Примеры: робот учится двигаться, игровой агент — выбирать ходы, а контроллер в симуляции — поддерживать комфортную температуру при ограничении энергопотребления.
2. Элементы задачи: агент, среда, состояние, действие, награда
| Элемент | Значение | Пример для здания |
|---|---|---|
| Агент | Принимает решения. | Виртуальный контроллер отопления. |
| Среда | Система, в которой действуют решения. | Модель здания, погоды и тепловой инерции. |
| Состояние s | Описание ситуации. | Температура, время, прогноз погоды. |
| Действие a | Выбор агента. | Повысить, снизить или сохранить мощность. |
| Награда r | Числовой сигнал о результате. | Баланс комфорта, затрат и ограничений. |
| Переход | Правило изменения состояния. | Температура меняется с учётом погоды и инерции. |
Формально часто используют Markov Decision Process (MDP): состояния S, действия A, функцию награды R, вероятности перехода P и начальное распределение состояний. Эпизод — ограниченная последовательность взаимодействий до условия завершения.
3. Награда, возврат и дисконтирование
Награда — числовой сигнал, который среда возвращает после действия или перехода. Она может быть положительной, нулевой или отрицательной. Сумма наград за последовательность шагов называется возвратом (return).
Коэффициент γ (gamma) от 0 до 1 задаёт относительный вес будущих наград. При меньшем γ агент сильнее ориентируется на ближайшие последствия, при значении ближе к 1 — учитывает более отдалённые результаты.
Награда не равна человеческой цели. Если система поощряется только за экономию энергии, она может добиться её за счёт недопустимого снижения комфорта. Поэтому ограничения безопасности, допустимые диапазоны и аварийные режимы задаются отдельно.
4. Политика, ценность, исследование и эксплуатация
- Политика (policy, π) — правило выбора действия по состоянию или наблюдению.
- Функция ценности оценивает ожидаемый будущий возврат из состояния.
- Q(s, a) оценивает ожидаемый возврат при выполнении действия a в состоянии s и последующем следовании политике.
Exploration — исследование действий, последствия которых пока известны недостаточно. Exploitation — использование действия, которое по текущей оценке лучше. Если только исследовать — агент не использует опыт; если только эксплуатировать слишком рано — он может не найти лучшую стратегию.
5. Основные семейства алгоритмов
- Value-based: оценивают состояния или пары «состояние — действие». Пример — Q-learning.
- Policy-based: непосредственно настраивают политику, то есть распределение вероятностей действий. Пример — policy gradient.
- Actor–critic: сочетают actor, выбирающий действие, и critic, оценивающий состояние или действие.
- Model-based RL: используют модель динамики среды для планирования.
- Deep RL: используют нейронные сети для представления политики или функций ценности при сложных пространствах состояний.
Это не взаимоисключающие категории: Deep RL может быть value-based, policy-based или actor–critic. Выбор зависит от типа действий, стоимости взаимодействия, доступности модели среды и требований к устойчивости.
6. Пример постановки задачи: здание в симуляции
Представим, что агент управляет отоплением только в безопасной симуляции. Состояние включает текущую и наружную температуру, время суток и прогноз погоды. Действия — немного увеличить мощность, уменьшить её или оставить без изменения. Награда может учитывать отклонение от комфортного диапазона и энергозатраты.
7. Практика: минимальный Q-learning на Python
Игрушечная одномерная среда содержит пять состояний: агент начинает в позиции 0 и должен достичь позиции 4. Действия — шаг влево или вправо. За достижение цели начисляется +1, за промежуточный шаг — штраф −0,02. Внешние библиотеки не нужны; требуется Python 3.10+.
import random
random.seed(7)
N_STATES = 5
ACTIONS = (-1, 1) # left, right
Q = [[0.0, 0.0] for _ in range(N_STATES)]
alpha, gamma, epsilon = 0.2, 0.95, 0.2
def step(state, action):
next_state = max(0, min(N_STATES - 1, state + action))
done = next_state == N_STATES - 1
reward = 1.0 if done else -0.02
return next_state, reward, done
for episode in range(400):
state = 0
for _ in range(10):
if random.random() < epsilon:
action_index = random.randrange(len(ACTIONS))
else:
action_index = max(range(2), key=lambda i: Q[state][i])
action = ACTIONS[action_index]
next_state, reward, done = step(state, action)
best_next = 0.0 if done else max(Q[next_state])
target = reward + gamma * best_next
Q[state][action_index] += alpha * (target - Q[state][action_index])
state = next_state
if done:
break
state, path = 0, [0]
for _ in range(10):
action_index = max(range(2), key=lambda i: Q[state][i])
state, _, done = step(state, ACTIONS[action_index])
path.append(state)
if done:
break
print(" -> ".join(map(str, path)))
Как работает код
Q[state][action_index]хранит оценку действия в состоянии.epsilonзадаёт вероятность случайного исследования.targetобъединяет немедленную награду и лучшую оценку следующего действия.- Параметр
alphaзадаёт скорость обновления Q-оценки, аgamma— вес будущей награды.
Ожидаемый вывод: 0 -> 1 -> 2 -> 3 -> 4. Это иллюстрация механизма Q-learning, а не доказательство пригодности алгоритма для реального оборудования.
8. Ограничения и типичные ошибки
- Неверная награда: агент оптимизирует формальный сигнал, не совпадающий с реальной целью.
- Небезопасное исследование: случайные действия в реальной среде могут быть недопустимы.
- Высокая стоимость опыта: часто требуются многочисленные взаимодействия или симулятор.
- Разрыв simulation-to-reality: поведение из симуляции может не перенестись на реальную систему.
- Частичная наблюдаемость и нестабильность: агент может не видеть важных факторов, а результат зависит от seed и настроек.
RL не гарантирует безопасное или оптимальное управление. Нужны тестирование, независимые ограничения, мониторинг и возможность остановить или отменить действие.
9. Главное из урока
- RL учит агента через взаимодействие со средой и награду.
- Действия имеют последовательные последствия, поэтому важен долгосрочный возврат.
- Политика выбирает действия, функции ценности оценивают результат.
- Exploration и exploitation требуют баланса.
- Качество зависит от постановки задачи, награды, ограничений и среды.
Самостоятельное задание
Опишите RL-задачу для учебной симуляции здания: укажите три наблюдения, разрешённые действия, пример награды, условие завершения эпизода и два жёстких ограничения безопасности. Объясните, какое нежелательное поведение возникнет, если награда учитывает только энергопотребление.