Задайте сигналы вознаграждения

Чтобы направить процесс обучения, обучение с подкреплением использует скалярный сигнал вознаграждения, сгенерированный окружающим окружением. Этот сигнал измеряет эффективность агента относительно целей задачи. Другими словами, за заданное наблюдение (состояние) вознаграждение измеряет эффективность принятия им конкретного действия. Во время обучения агент обновляет свою политику на основе вознаграждений, полученных для различных комбинаций состояний активности. Для получения дополнительной информации о различных типах агентов и том, как они используют сигнал вознаграждения во время обучения, см. «Агенты обучения с подкреплением».

В целом, вы предоставляете положительное вознаграждение, чтобы поощрить определенные действия агента и отрицательное вознаграждение (штраф), чтобы препятствовать другим действиям. Хорошо спроектированный сигнал вознаграждения направляет агента максимизировать ожидание долгосрочного вознаграждения. То, что представляет собой хорошо продуманное вознаграждение, зависит от вашего приложения и целей агента.

Для примера, когда агент должен выполнять задачу как можно дольше, общей стратегией является предоставление небольшого положительного вознаграждения для каждого временного шага, когда агент успешно выполняет задачу, и большого штрафа, когда агент отказывает. Этот подход поощряет более длительные эпизоды тренировки, в то время как сильно обескураживает эпизоды, которые терпят неудачу. Для примера, который использует этот подход, смотрите Обучите агента DQN для балансировки системы тележки с шестом.

Если ваша функция вознаграждения включает несколько сигналов, таких как положение, скорость и усилие по управлению, вы должны учитывать относительные размеры сигналов и масштабировать их вклады в сигнал вознаграждения соответственно.

Можно задать непрерывные или дискретные сигналы вознаграждения. В любом случае вы должны предоставить сигнал вознаграждения, который предоставляет богатую информацию, когда сигналы действия и наблюдения изменяются.

Непрерывные вознаграждения

Непрерывная функция вознаграждения изменяется постоянно с изменениями в наблюдениях окружения и действиях. В целом непрерывные сигналы вознаграждения улучшают сходимость во время обучения и могут привести к более простым структурам сети.

Примером непрерывного вознаграждения является функция стоимости квадратичного регулятора (QR), где долгосрочное вознаграждение может быть выражено как

Ji=(sτTQτsτ+j=iτsjTQjsj+ajTRjaj+2sjTNjaj)

Здесь , Q, R и N являются матрицами веса. - терминальная матрица веса, примененная только в конце эпизода. Кроме того, s - вектор наблюдения, a - вектор действия, а τ - терминальная итерация эпизода. Мгновенное вознаграждение для этой функции затрат

ri=siTQisi+aiTRiai+2siTNiai

Эта структура вознаграждения QR поощряет сведение s к нулю с минимальными усилиями действия. Основанная на QR структура вознаграждения является хорошим вознаграждением, которое можно выбрать для регулирования или стационарных точечных проблем, таких как качание маятника или регулирование положения двойного интегратора. Для примеров обучения, которые используют вознаграждение QR, смотрите Обучите агента DQN для переключения вверх и Балансировки маятника и Обучите агента DDPG для управления системой Double Integrator.

Сглаживайте непрерывные вознаграждения, такие как QR регулятор, хороши для параметров подстройки и могут предоставить политики, подобные оптимальным контроллерам (LQR/MPC).

Дискретные вознаграждения

Дискретная функция вознаграждения изменяется прерывисто с изменениями в наблюдениях окружения или действиях. Эти типы сигналов вознаграждения могут замедлить сходимость и могут потребовать более сложных структур сети. Дискретные вознаграждения обычно реализуются как события, которые происходят в окружении - например, когда агент получает положительное вознаграждение, если оно превышает некоторое целевое значение или штраф, когда это нарушает некоторое ограничение эффективности.

Несмотря на то, что дискретные вознаграждения могут замедлить сходимость, они могут привести агента к лучшим областям вознаграждений в пространстве состояний окружения. Для примера вознаграждение, основанное на области, такое как фиксированное вознаграждение, когда агент близок к целевому местоположению, может эмулировать ограничения конечного состояния. Кроме того, региональное наказание может побудить агента избегать определенных областей пространства состояний.

Смешанные вознаграждения

Во многих случаях предоставление смешанного сигнала вознаграждения, который имеет комбинацию непрерывных и дискретных компонентов вознаграждения, выгодно. Дискретный сигнал вознаграждения может использоваться, чтобы отвести систему от плохих состояний, и непрерывный сигнал вознаграждения может улучшить сходимость, предоставляя плавное вознаграждение вблизи целевых состояний. Например, в Train DDPG Agent to Control Flying Robot, функция вознаграждения имеет три компонента: r 1, r 2 и r 3.

r1=10((xt2+yt2+θt2)<0.5)r2=100(|xt|20|||yt|20)r3=(0.2(Rt1+Lt1)2+0.3(Rt1Lt1)2+0.03xt2+0.03yt2+0.02θt2)r=r1+r2+r3

Здесь:

  • r 1 является непрерывным вознаграждением, основанным на области, которое применяется только вблизи целевого местоположения робота.

  • r 2 является дискретным сигналом, который обеспечивает большой штраф, когда робот перемещается далеко от целевого местоположения.

  • r 3 является непрерывным QR штрафом, который применяется для всех состояний робота.

Похожие темы