rlTD3AgentOptions

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

Описание

Используйте rlTD3AgentOptions объект для задания опций для агентов градиента (TD3) глубокой детерминированной политики с двумя задержками. Чтобы создать агента TD3, используйте rlTD3Agent

Для получения дополнительной информации смотрите Twin-Delayed Deep Deterministic Policy Gradient Agents.

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

Создание

Описание

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

пример

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

Свойства

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

Опции модели шума, заданные как GaussianActionNoise объект или OrnsteinUhlenbeckActionNoise объект. Для получения дополнительной информации о шумовых моделях см. «Модели шума».

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

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

opt = rlTD3AgentOptions;
opt.ExplorationModel.StandardDeviation = [0.1 0.2];
opt.ExplorationModel.StandardDeviationDecayRate = 1e-4;

Целевые опции модели сглаживания шума, заданные как GaussianActionNoise объект. Эта модель помогает политике использовать действия с высокими оценками Q-значений. Для получения дополнительной информации о шумовых моделях см. «Модели шума».

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

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

opt = rlTD3AgentOptions;
opt.TargetPolicySmoothModel.StandardDeviation = [0.1 0.2];
opt.TargetPolicySmoothModel.StandardDeviationDecayRate = 1e-4;

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

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

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

Опция для очистки буфера опыта перед обучением, заданная как логическое значение.

Опция сохранения данных буфера опыта при сохранении агента, заданная как логическое значение. Эта опция применяется как при сохранении агентов-кандидатов во время обучения, так и при сохранении агентов, использующих save функция.

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

Если вы планируете продолжить обучение своего сохраненного агента, можно начать обучение с предыдущего буфера опыта в качестве начальной точки. В этом случае установите SaveExperienceBufferWithAgent на true.

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

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

Количество будущих вознаграждений, используемых для оценки значения политики, заданное как положительное целое число. Для получения дополнительной информации см. раздел [1] (глава 7).

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

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

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

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

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

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

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

rlTD3AgentАгент обучения с подкреплением с двумя задержками в глубоком детерминировании политики

Примеры

свернуть все

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

Создайте rlTD3AgentOptions объект, задающий размер мини-пакета.

opt = rlTD3AgentOptions('MiniBatchSize',48)
opt = 
  rlTD3AgentOptions with properties:

                       ExplorationModel: [1x1 rl.option.GaussianActionNoise]
                TargetPolicySmoothModel: [1x1 rl.option.GaussianActionNoise]
                  PolicyUpdateFrequency: 2
                     TargetSmoothFactor: 0.0050
                  TargetUpdateFrequency: 2
    ResetExperienceBufferBeforeTraining: 1
          SaveExperienceBufferWithAgent: 0
                         SequenceLength: 1
                          MiniBatchSize: 48
                    NumStepsToLookAhead: 1
                 ExperienceBufferLength: 10000
                             SampleTime: 1
                         DiscountFactor: 0.9900

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

opt.SampleTime = 0.5;

Алгоритмы

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

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

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

Не рекомендуемый запуск в R2021a

Не рекомендуемый запуск в R2021a

Ссылки

[1] Саттон, Ричард С. и Эндрю Г. Барто. Обучение с подкреплением: введение. Второе издание. Адаптивные расчеты и машинное обучение. Cambridge, Mass: The MIT Press, 2018.

Введенный в R2020a