exponenta event banner

rlPGAgentOptions

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

Описание

Использовать rlPGAgentOptions объект для указания параметров агентов градиента политики (PG). Для создания агента PG используйте rlPGAgent

Дополнительные сведения об агентах PG см. в разделе Агенты градиента политики.

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

Создание

Описание

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

пример

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

Свойства

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

Параметр использования базовой линии для обучения, определяемый как логическое значение. Когда UseBaseline является true, необходимо указать критическую сеть в качестве аппроксиматора базовой функции.

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

Параметр для возврата действия с максимальной вероятностью для моделирования и создания политики, заданного как логическое значение. Когда UseDeterministicExploitation имеет значение true, действие с максимальной вероятностью всегда используется в sim и generatePolicyFunction, что заставляет агента вести себя детерминированно.

Когда UseDeterministicExploitation имеет значение falseагент выполняет выборку действий из распределения вероятностей, что заставляет агента вести себя стохастически.

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

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

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

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

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

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

Ht=E∑k=1Mμk (St 'ü

Здесь:

  • E - вес потери энтропии.

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

  • мкК (St 'startλ) - вероятность осуществления действия Ak, когда в состоянии St следует текущей политике.

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

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

rlPGAgentАгент обучения для усиления градиента политики

Примеры

свернуть все

В этом примере показано, как создать и изменить объект параметров агента PG.

Создайте объект параметров агента PG, указав коэффициент дисконтирования.

opt = rlPGAgentOptions('DiscountFactor',0.9)
opt = 
  rlPGAgentOptions with properties:

                     UseBaseline: 1
               EntropyLossWeight: 0
    UseDeterministicExploitation: 0
                      SampleTime: 1
                  DiscountFactor: 0.9000

Опции можно изменять с помощью точечных обозначений. Например, установите время выборки агента равным 0.5.

opt.SampleTime = 0.5;
Представлен в R2019a