exponenta event banner

rlDDPGAgentOptions

Параметры агента DDPG

Описание

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

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

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

Создание

Описание

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

пример

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

Свойства

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

Параметры шумовой модели, указанные как OrnsteinUhlenbeckActionNoise объект. Дополнительные сведения о модели шума см. в разделе Модель шума.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

rlDDPGAgentГлубокая детерминированная политика градиентного усиления обучающий агент

Примеры

свернуть все

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

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

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

                           NoiseOptions: [1x1 rl.option.OrnsteinUhlenbeckActionNoise]
                     TargetSmoothFactor: 1.0000e-03
                  TargetUpdateFrequency: 1
    ResetExperienceBufferBeforeTraining: 1
          SaveExperienceBufferWithAgent: 0
                         SequenceLength: 1
                          MiniBatchSize: 48
                    NumStepsToLookAhead: 1
                 ExperienceBufferLength: 10000
                             SampleTime: 1
                         DiscountFactor: 0.9900

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

opt.SampleTime = 0.5;

Алгоритмы

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

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

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

Не рекомендуется начинать с R2021a

В R2020a изменилось поведение

Ссылки

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

Представлен в R2019a