rlNumericSpec

为强化学习环境创建连续的动作或观察数据规范

描述

一个rlNumericSpec对象指定用于增强学习环境的连续操作或观测数据规范。

创建

描述

例子

规范= rlNumericSpec (尺寸)为连续操作或观察创建数据规范,并设置财产。

规范= rlNumericSpec (尺寸,名称,值)属性使用名称-值对参数。

属性

全部展开

数据空间的下限,指定为与数据空间大小相同的标量或矩阵。当假定下限指定为标量,rlNumericSpec它适用于数据空间中的所有条目。

数据空间的上限,指定为与数据空间大小相同的标量或矩阵。当UpperLimit指定为标量,rlNumericSpec它适用于数据空间中的所有条目。

的名称rlNumericSpec对象,指定为字符串。

的描述rlNumericSpec对象,指定为字符串。

此属性是只读的。

数据空间的尺寸,指定为数值向量。

此属性是只读的。

有关数据类型的信息,指定为字符串。

对象的功能

rl万博1manbetxSimulinkEnv 创建使用中实现动态模型的增强学习环境万博1manbetx
rlFunctionEnv 使用函数指定自定义强化学习环境动态
rlRepresentation (不推荐)用于增强学习代理的模型表示

例子

全部折叠

对于本例,考虑rlSimplePendulumModel万博1manbetx仿真软件模型。该模型是一个简单的无摩擦摆,最初是挂在向下的位置。

打开模型。

mdl ='rlSimplePendulumModel';open_system (mdl)

分配代理块路径信息,并创建rlNumericSpecrlFiniteSetSpec对象为观察和动作信息。可以使用点符号来分配属性值rlNumericSpecrlFiniteSetSpec对象。

agentBlk = [MDL' / RL代理'];obsInfo = rlNumericSpec([3 1])
Inf Name: [0x0 string]描述:[0x0 string]维度:[3 1]数据类型:"double"
actInfo = rlFiniteSetSpec([2 1])
Name: [0x0字符串]Description: [0x0字符串]维度:[11 1]数据类型:"double"
obsInfo。Name =“观察”;actInfo。Name =“扭矩”;

使用前面步骤中提取的信息为Simulink模型创建增强学习环境。万博1manbetx

env = rl万博1manbetxSimulinkEnv (mdl agentBlk、obsInfo actInfo)
ENV = 万博1manbetxSimulinkEnvWithAgent具有属性:型号: “rlSimplePendulumModel” AgentBlock: “rlSimplePendulumModel / RL代理” ResetFcn:[] UseFastRestart: '接通'

还可以使用点符号包含一个reset函数。对于本例,考虑随机初始化theta0在模型工作区中。

env。ResetFcn = @(in) setVariable(in,'theta0'randn,“工作区”,MDL)
ENV = 万博1manbetxSimulinkEnvWithAgent具有属性:型号: “rlSimplePendulumModel” AgentBlock: “rlSimplePendulumModel / RL代理” ResetFcn:@(在)setVariable(在 'theta0',randn, '工作区',MDL)UseFastRestart: '接通'

介绍了R2019a