rlSARSAAgentOptions

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

Описание

Использование rlSARSAAgentOptions объект для задания опций для создания агентов SARSA. Чтобы создать агента SARSA, используйте rlSARSAAgent

Для получения дополнительной информации об агентах SARSA см. Раздел «Агенты SARSA».

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

Создание

Описание

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

пример

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

Свойства

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

Опции эпсилоново-жадных исследований, заданные как EpsilonGreedyExploration объект со следующими свойствами.

СвойствоОписаниеЗначение по умолчанию
EpsilonПорог вероятности для случайного выбора действия или для выбора действия, которое максимизирует функцию ценности состояния активности. Большее значение Epsilon означает, что агент случайным образом исследует пространство действий с более высокой частотой.1
EpsilonMinМинимальное значение Epsilon0.01
EpsilonDecayСкорость распада0.0050

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

Epsilon = Epsilon*(1-EpsilonDecay)

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

Чтобы задать опции исследования, используйте запись через точку после создания rlSARSAAgentOptions opt объекта. Для примера установите значение эпсилона 0.9.

opt.EpsilonGreedyExploration.Epsilon = 0.9;

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

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

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

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

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

rlSARSAAgentАгент обучения с подкреплением SARSA

Примеры

свернуть все

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

Создайте rlSARSAAgentOptions объект, который задает шаг расчета агентом.

opt = rlSARSAAgentOptions('SampleTime',0.5)
opt = 
  rlSARSAAgentOptions with properties:

    EpsilonGreedyExploration: [1x1 rl.option.EpsilonGreedyExploration]
                  SampleTime: 0.5000
              DiscountFactor: 0.9900

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

opt.DiscountFactor = 0.95;

См. также

Введенный в R2019a