主要内容

bus2RLSpec

为元素创建强化学习数据规范金宝app公共汽车

描述

例子

规格= bus2RLSpec (busName从Simulink创建一组强化学习数据规范金宝app®指定的总线对象busName.在相应的Simulink总线中为每个叶子元素创建一个规范元素。金宝app使用这些规范来定义Simulink强化学习环境的操作和观察。金宝app

例子

规格= bus2RLSpec (busName名称,值指定使用一个或多个创建规范的选项名称,值对参数。

例子

全部折叠

这个例子展示了如何使用这个函数bus2RLSpec从Simulink®总线对象创建一个观察规范对象。金宝app

创建一个总线对象。

obsBus = 金宝appSimulink.Bus ();

在总线中创建三个元素并指定它们的名称。

obsBus.Elements (1) =金宝app Simulink.BusElement;obsBus.Elements(1)。Name =“sin_theta”;obsBus.Elements (2) =金宝app Simulink.BusElement;obsBus.Elements(2)。Name =“cos_theta”;obsBus.Elements (3) =金宝app Simulink.BusElement;obsBus.Elements(3)。Name =“dtheta”

使用Simulink总线对象创建观察规范对象。金宝app

obsInfo = bus2RLSpec (“obsBus”);

你可以使用obsInfo,结合相应的Simulink模型,创建一个强化学习环境。金宝app例如,请参见训练DDPG Agent用总线信号上摆和平衡摆

这个例子展示了如何调用这个函数bus2RLSpec使用名称和值对从Simulink®总线对象创建操作规范对象。金宝app

创建一个总线对象。

actBus = 金宝appSimulink.Bus ();

在总线中创建一个元素并指定名称。

actBus.Elements (1) =金宝app Simulink.BusElement;actBus.Elements(1)。Name =“执行机构”

使用Simulink总线对象创建观察规范对象。金宝app

actInfo = bus2RLSpec (“actBus”“DiscreteElements”, {“执行机构”[1]});

这指定了'致动器'总线元素可以携带两个可能的值,-1,1

你可以使用actInfo,结合相应的Simulink模型,创建一个强化学习环境。金宝app特别是创建环境使用的函数actInfo以确定代理块的正确总线输出。

例如,请参见训练DDPG Agent用总线信号上摆和平衡摆

输入参数

全部折叠

Simulink金宝app总线对象的名称,指定为字符串或字符向量。

名称-值参数

指定可选的逗号分隔的对名称,值参数。的名字参数名和价值为对应值。的名字必须出现在引号内。可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家

例子:DiscreteElements,{‘力’,(5 0 5)}设置“力”总线元素是具有三个可能值的离散数据规范,-50,5

Simulink模型的名金宝app称,指定为逗号分隔的对,由“模型”和一个字符串或字符向量。当总线对象在模型全局工作空间(例如,在数据字典中)而不是在MATLAB中定义时,指定模型名称®工作区。

要为其创建规范的总线叶元素的名称,指定为由B组成的逗号分隔对usElementNames”和一个字符串数组。要为Simulink总线对象中的元素子集创建观察规范,请指定金宝appBusElementNames.如果没有指定BusElementNames,则为总线中的每个叶元素创建一个数据规范。

请注意

没有指定BusElementNames当创建动作信号的规格时。的RL代理块必须输出全总线信号。

离散总线元素的有限值,指定为逗号分隔对组成“DiscreteElements”以及名称-值对的单元格数组。每个名称-值对由一个总线叶元素名称和一个离散值数组组成。指定的离散值必须可转换为指定动作信号的数据类型。

如果您没有为元素规范指定离散值,则该元素是连续的。

例子:'ActionDiscretElements',{'force',[-10 0 10],'torque',[-5 0 5]}的离散值“力”“扭矩”总线动作信号的叶元素。

输出参数

全部折叠

强化学习行动或观察的数据规范,返回如下:

  • rlNumericSpec对象的单个连续总线元素

  • rlFiniteSetSpec对象的单个离散总线元素

  • 多个总线元素的数据规范对象数组

默认情况下,总线元素的所有数据规范都是rlNumericSpec对象。要为一个或多个总线元素创建离散的规范,请使用DiscreteElements名称-值对。

介绍了R2019a