getActionInfo

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

Описание

пример

actInfo = getActionInfo(env) извлекает информацию о действии из окружения обучения с подкреплением env.

actInfo = getActionInfo(agent) извлекает информацию о действии от агента обучения с подкреплением agent.

Примеры

свернуть все

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

Окружение обучения с подкреплением для этого примера является простой продольной динамикой для эго-автомобиля и свинцового автомобиля. Цель обучения состоит в том, чтобы заставить эго-автомобиль перемещаться с заданной скоростью при сохранении безопасного расстояния от свинцового автомобиля путем управления продольным ускорением (и торможением). В этом примере используется та же модель транспортного средства, что и в примере Adaptive Cruise Control System Using Model Predictive Control (Model Predictive Control Toolbox).

Откройте модель и создайте окружение обучения с подкреплением.

mdl = 'rlACCMdl';
open_system(mdl);
agentblk = [mdl '/RL Agent'];
% create the observation info
obsInfo = rlNumericSpec([3 1],'LowerLimit',-inf*ones(3,1),'UpperLimit',inf*ones(3,1));
obsInfo.Name = 'observations';
obsInfo.Description = 'information on velocity error and ego velocity';
% action Info
actInfo = rlNumericSpec([1 1],'LowerLimit',-3,'UpperLimit',2);
actInfo.Name = 'acceleration';
% define environment
env = rlSimulinkEnv(mdl,agentblk,obsInfo,actInfo)
env = 
SimulinkEnvWithAgent with properties:

           Model : rlACCMdl
      AgentBlock : rlACCMdl/RL Agent
        ResetFcn : []
  UseFastRestart : on

Обучение с подкреплением окружения env является SimulinkWithAgent объект с указанными выше свойствами.

Извлеките информацию о действии и наблюдении из окружения обучения с подкреплением env.

actInfoExt = getActionInfo(env)
actInfoExt = 
  rlNumericSpec with properties:

     LowerLimit: -3
     UpperLimit: 2
           Name: "acceleration"
    Description: [0x0 string]
      Dimension: [1 1]
       DataType: "double"

obsInfoExt = getObservationInfo(env)
obsInfoExt = 
  rlNumericSpec with properties:

     LowerLimit: [3x1 double]
     UpperLimit: [3x1 double]
           Name: "observations"
    Description: "information on velocity error and ego velocity"
      Dimension: [3 1]
       DataType: "double"

Информация о действии содержит значения ускорения, в то время как информация о наблюдении содержит значения ошибки скорости и скорости автомобиля , оборудованного датчиком.

Входные параметры

свернуть все

Окружение обучения с подкреплением, из которой должна быть извлечена информация о действии, заданная как SimulinkEnvWithAgent объект.

Для получения дополнительной информации о средах обучения с подкреплением см. Окружения «Создание окружений обучения с подкреплением Simulink».

Агент обучения с подкреплением, из которого должна быть извлечена информация о действии, заданный как один из следующих объектов:

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

Выходные аргументы

свернуть все

Спецификации данных о действии, извлеченные из окружения обучения с подкреплением, возвращаются как массив одного из следующих:

Введенный в R2019a