文档帮助中心文档
创建金宝app为强化学习模型,利用参考模型的环境
env = createIntegratedEnv (refModel newModel)
[env, agentBlock obsInfo actInfo] = createIntegratedEnv (___)
(___)= createIntegratedEnv (___、名称、值)
env= createIntegratedEnv (refModel,newModel)创建一个模型金宝app®模型与所指定的名称newModel对象,并返回一个强化学习环境env这个模型。包含了一个新的模型RL代理块并使用参考模型refModel作为培训的强化学习环境所指定的代理这一块。
env= createIntegratedEnv (refModel,newModel)
env
refModel
newModel
例子
(env,agentBlock,obsInfo,actInfo)= createIntegratedEnv (___)返回路径RL代理块在新的模型和观测和行动数据参考模型的规范,obsInfo和actInfo,分别。
(env,agentBlock,obsInfo,actInfo)= createIntegratedEnv (___)
agentBlock
obsInfo
actInfo
(___)= createIntegratedEnv (___,名称,值)创建一个模型和使用港口环境界面,观察和操作使用一个或多个指定的信息名称,值对参数。
(___)= createIntegratedEnv (___,名称,值)
名称,值
全部折叠
这个示例使用:
这个例子展示了如何使用createIntegratedEnv创建一个环境对象从一个仿真软件模型,实现了系统的代理。金宝app这样一个系统通常被称为植物,开环系统,或参考系统,而整个系统(集成)包括代理通常被称为闭环系统。
createIntegratedEnv
对于这个示例,使用飞行机器人模型中描述火车DDPG剂来控制飞行机器人(开环)系统作为参考。
打开飞行机器人模型。
open_system (“rlFlyingRobotEnv”)
初始化状态变量和样品时间。
%初始模型状态变量theta0 = 0;x0 = -15;y0 = 0;%样品时间t = 0.4;
创建模型模型金宝appIntegratedEnv包含飞行机器人模型连接在一个封闭的循环来代理。函数返回强化学习环境对象env用于培训。
IntegratedEnv
env = createIntegratedEnv (“rlFlyingRobotEnv”,“IntegratedEnv”)
env = 金宝appSimulinkEnvWithAgent属性:模型:IntegratedEnv AgentBlock: IntegratedEnv / RL代理ResetFcn: [] UseFastRestart:
函数可以返回的块路径RL代理块新的集成模型,以及观察和行动规范的参考模型。
[~,agentBlk observationInfo actionInfo] = createIntegratedEnv (“rlFlyingRobotEnv”,“IntegratedEnv”)
agentBlk = ' IntegratedEnv / RL代理'
observationInfo = rlNumericSpec属性:LowerLimit:无穷UpperLimit:正的名字:“观察”描述:[0 x0字符串]维度:1[7]数据类型:“替身”
actionInfo = rlNumericSpec属性:LowerLimit:无穷UpperLimit:正的名字:“行动”描述:[0 x0字符串]维度:[2 1]数据类型:“替身”
返回块路径和规范是有用的情况下,您需要修改描述,限制,或名字observationInfo和actionInfo。修改规范之后,您可以创建一个环境的集成模型IntegratedEnv使用rl金宝appSimulinkEnv函数。
observationInfo
actionInfo
rl金宝appSimulinkEnv
这个例子显示了如何调用createIntegratedEnv使用名称-值对将指定端口名称。
的第一个参数createIntegratedEnv的名称是什么参考金宝app仿真软件模型,包含系统的代理必须交互。这样一个系统通常被称为植物,或开环系统。对于这个示例,参考系统的模型是一个水箱。
打开开环水箱模型。
open_system (“rlWatertankOpenloop”)
集的样本时间离散积分器块用于生成观察,所以模拟可以运行。
Ts = 1;
输入端口u(而不是行动),第一个和第三个输出端口y和停止(而不是观察和结束)。指定的端口名称使用名称-值对。
u
行动
y
停止
观察
结束
env = createIntegratedEnv (“rlWatertankOpenloop”,“IntegratedWatertank”,…“ActionPortName”,“u”,“ObservationPortName”,“y”,“IsDonePortName”,“停止”)
env = 金宝appSimulinkEnvWithAgent属性:模型:IntegratedWatertank AgentBlock: IntegratedWatertank / RL代理ResetFcn: [] UseFastRestart:
新模型IntegratedWatertank包含了参考模型与代理块连接在一个闭环。强化学习环境的函数也返回对象用于培训。
IntegratedWatertank
参考模型名称,指定为字符串或字符向量。这是实现系统的仿真软件模金宝app型需要与代理。这样一个系统通常被称为植物,开环系统或参考系统,而整个系统(集成)包括代理通常被称为闭环系统。新的仿真软件模型金宝app使用该参考模型的动态模型强化学习环境。
新模型名称,指定为字符串或字符向量。createIntegratedEnv创建一个仿真软件模型金宝app与这个名字,但不保存模型。
指定可选的逗号分隔条名称,值参数。的名字参数名称和吗价值相应的价值。的名字必须出现在引号。您可以指定几个名称和值对参数在任何顺序Name1, Value1,…,的家。
的名字
价值
Name1, Value1,…,的家
“IsDonePortName”、“stopSim”
stopSim
ObservationPortName
“观察”
参考模型观察输出端口名称,指定为逗号分隔组成的“ObservationPortName”和一个字符串或字符向量。指定ObservationPortName当观察输出端口的名称的参考模型“观察”。
“ObservationPortName”
ActionPortName
“行动”
参考模型操作输入端口名称,指定为逗号分隔组成的“ActionPortName”和一个字符串或字符向量。指定ActionPortName当行动的名称输入端口的参考模型“行动”。
“ActionPortName”
RewardPortName
“奖励”
参考模型奖励输出端口名称,指定为逗号分隔组成的“RewardPortName”和一个字符串或字符向量。指定RewardPortName当奖励输出端口的名称的参考模型“奖励”。
“RewardPortName”
IsDonePortName
“结束”
参考模型做国旗输出端口名称,指定为逗号分隔组成的“IsDonePortName”和一个字符串或字符向量。指定IsDonePortName当完成信号输出端口的名称的参考模型“结束”。
“IsDonePortName”
ObservationBusElementNames
观察汽车的名字叶子元素创建规范,指定为一个字符串数组。创建观测规范的一个子集元素在仿真软件总线对象,指定金宝appBusElementNames。如果你不指定BusElementNames,创建一个数据规范在公共汽车上为每个叶子元素。
BusElementNames
ObservationBusElementNames适用于只有当观察输出端口是一个总线信号。
例子:“ObservationBusElementNames”,(“罪”“因为”)为观察总线创建规范的元素名称“罪”和“因为”。
“ObservationBusElementNames”,(“罪”“因为”)
“罪”
“因为”
ObservationDiscreteElements
有限值离散观测规范元素,指定为逗号分隔组成的“ObservationDiscreteElements”和一个单元阵列名称-值对。每一个名称-值对由一个元素名称和离散值的数组。
“ObservationDiscreteElements”
如果观察参考模型的输出端口:
总线信号,指定的叶子元素之一的名称中指定的公共汽车ObservationBusElementNames
Nonbus信号,观察端口的名称,指定为指定的ObservationPortName
指定的离散值必须到指定的数据类型浆料观察信号。
如果你不指定离散值的观测规范元素,该元素是连续的。
例子:ObservationDiscretElements,{“观察”,[1 0 1]}指定nonbus观测信号的离散值与默认端口名称观察。
ObservationDiscretElements,{“观察”,[1 0 1]}
例子:ObservationDiscretElements,{“齿轮”,[1 0 1 2],“方向”,(1 2 3 4)}指定的离散值“装备”和“方向”叶元素总线操作信号。
ObservationDiscretElements,{“齿轮”,[1 0 1 2],“方向”,(1 2 3 4)}
“装备”
“方向”
ActionDiscreteElements
有限值离散行动规范元素,指定为逗号分隔组成的“ActionDiscreteElements”和一个单元阵列名称-值对。每一个名称-值对由一个元素名称和离散值的数组。
“ActionDiscreteElements”
如果操作输入端口的参考模型是:
一个总线信号,指定总线的一片叶子元素的名称
Nonbus信号,指定名称的端口,指定的ActionPortName
指定的离散值必须到指定的数据类型浆料行动信号。
如果你不指定一个操作规范的离散值元素,该元素是连续的。
例子:ActionDiscretElements,{“行动”,[1 0 1]}指定nonbus行动信号离散值与默认端口名称“行动”。
ActionDiscretElements,{“行动”,[1 0 1]}
例子:ActionDiscretElements,{‘力’,(-10 0),“扭矩”,(5 0 5)}指定的离散值“力”和“扭矩”叶元素总线操作信号。
ActionDiscretElements,{‘力’,(-10 0),“扭矩”,(5 0 5)}
“力”
“扭矩”
金宝appSimulinkEnvWithAgent
强化学习环境界面,作为一个返回金宝appSimulinkEnvWithAgent对象。
块路径代理块在新模型中,作为一个特征向量返回。训练一个代理在新的仿真软件模型,必须创建一个代理和指定的代金宝app理名称RL代理块所示agentBlock。
创建代理的更多信息,见强化学习代理。
rlNumericSpec
rlFiniteSetSpec
观测数据规范,返回以下之一:
rlNumericSpec对象为单个连续观测规范
rlFiniteSetSpec对象为单个离散观测规范
数组的数据规范对象为多个规格
规范操作数据,返回以下之一:
rlNumericSpec对象一个连续动作规范
rlFiniteSetSpec对象为一个离散的行动规范
数组数据规范对象的多个操作规范
bus2RLSpec
你有一个修改版的这个例子。你想打开这个例子与编辑?
你点击一个链接对应MATLAB命令:
运行该命令通过输入MATLAB命令窗口。Web浏览器不支持MATLAB命令。金宝app
选择一个网站翻译内容,看到当地事件和提供。根据你的位置,我们建议您选择:。
你也可以从下面的列表中选择一个网站:
选择中国网站(中文或英文)最佳站点的性能。其他MathWorks国家网站不优化的访问你的位置。
联系你当地的办公室