rlPPOAgentOptions

Опции для агента PPO

Описание

Используйте rlPPOAgentOptions объект задать опции для агентов ближайшей оптимизации политики (PPO). Чтобы создать агента PPO, используйте rlPPOAgent

Для получения дополнительной информации об агентах PPO смотрите Ближайших Агентов Оптимизации политики.

Для получения дополнительной информации о различных типах агентов обучения с подкреплением смотрите Агентов Обучения с подкреплением.

Создание

Описание

opt = rlPPOAgentOptions создает rlPPOAgentOptions объект для использования в качестве аргумента при создании агента PPO с помощью всех настроек по умолчанию. Можно изменить свойства объектов с помощью записи через точку.

пример

opt = rlPPOAgentOptions(Name,Value) свойства опции наборов с помощью пар "имя-значение". Например, rlPPOAgentOptions('DiscountFactor',0.95) создает набор опции с коэффициентом дисконтирования 0.95. Можно задать несколько пар "имя-значение". Заключите каждое имя свойства в кавычки.

Свойства

развернуть все

Количество шагов агент взаимодействует со средой перед учением из ее опыта в виде положительного целого числа.

ExperienceHorizon значение должно быть больше или быть равно MiniBatchSize значение.

Фактор клипа для ограничения изменения в каждой политике обновляет шаг в виде положительной скалярной величины меньше, чем 1.

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

Поскольку эпизод продвигается t, энтропийная функция потерь, которая добавляется к функции потерь для обновлений агента:

Ht=Ek=1Mμk(St|θμ)lnμk(St|θμ)

Здесь:

  • E является энтропийным весом потерь.

  • M является количеством возможных действий.

  • μk (St |θμ) является вероятностью принимающего меры Ak когда в St состояния после текущей политики.

Мини-пакетный размер используется в течение каждой эпохи изучения в виде положительного целого числа.

MiniBatchSize значение должно быть меньше чем или равно ExperienceHorizon значение.

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

Метод для оценки значений преимущества в виде одного из следующего:

  • "gae" — Обобщенное средство оценки преимущества

  • "finite-horizon" — Конечная оценка горизонта

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

Коэффициент сглаживания для обобщенного средства оценки преимущества в виде скалярного значения между 0 и 1, включительно. Эта опция применяется только когда AdvantageEstimateMethod опцией является "gae"

Шаг расчета агента в виде положительной скалярной величины.

В окружении Simulink агент выполняется каждый SampleTime секунды времени симуляции.

В среде MATLAB агент выполняется каждый раз усовершенствования среды. Однако SampleTime временной интервал между последовательными элементами в выходном опыте, возвращенном sim или train.

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

Функции объекта

rlPPOAgentБлижайший агент обучения с подкреплением оптимизации политики

Примеры

свернуть все

Создайте объект опций агента PPO, задав горизонт опыта.

opt = rlPPOAgentOptions('ExperienceHorizon',256)
opt = 
  rlPPOAgentOptions with properties:

          ExperienceHorizon: 256
              MiniBatchSize: 128
                 ClipFactor: 0.2000
          EntropyLossWeight: 0.0100
                   NumEpoch: 3
    AdvantageEstimateMethod: "gae"
                  GAEFactor: 0.9500
                 SampleTime: 1
             DiscountFactor: 0.9900

Можно изменить опции с помощью записи через точку. Например, установите шаг расчета агента на 0.5.

opt.SampleTime = 0.5;
Введенный в R2019b