rlACAgentOptions

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

Описание

Используйте rlACAgentOptions объект, чтобы задать опции для создания агентов актёра-критика (AC). Чтобы создать агента актёра-критика, используйте rlACAgent

Для получения дополнительной информации смотрите Агентов актёра-критика.

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

Создание

Описание

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

пример

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

Свойства

расширить все

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

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

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

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

Здесь:

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

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

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

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

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

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

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

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

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

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

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

rlACAgentАгент обучения с подкреплением актёра-критика

Примеры

свернуть все

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

opt = rlACAgentOptions('DiscountFactor',0.95)
opt = 
  rlACAgentOptions with properties:

             NumStepsToLookAhead: 32
               EntropyLossWeight: 0
    UseDeterministicExploitation: 0
                      SampleTime: 1
                  DiscountFactor: 0.9500

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

opt.SampleTime = 0.5;

Вопросы совместимости

расширить все

Изменение поведения в будущем релизе

Введенный в R2019a