负载预定义的动态仿真模块环境
强化学习工具箱™软件提供预定义的Simulink®已经定义了行动、观察、奖励和动态的环境。您可以使用这些环境来:
学习强化学习的概念。
熟悉强化学习工具箱软件功能。
测试你自己的强化学习剂。
方法可以加载以下预定义的Simulink环境rlPredefinedEnv
函数。
环境 | 代理任务 |
---|---|
简单摆的Simulink模型 | 使用离散或连续的动作空间摆动和平衡一个简单的钟摆。 |
Cart-pole Simscape™模型 | 通过使用离散或连续的动作空间对推车施加力,使移动的推车上的杆保持平衡。 |
对于预定义的Simulink环境,在相应的Simulink模型中定义环境动力学、观察结果和奖励信号。的rlPredefinedEnv
函数创建一个SimulinkEnvWithAgent
对象,火车
函数用来与Simulink模型交互。
单摆动态仿真模块模型
这种环境是一个简单的无摩擦的钟摆,最初悬挂在向下的位置。训练目标是用最小的控制力使钟摆直立而不跌倒。中定义了此环境的模型rlSimplePendulumModel
仿真软件模型。
open_system (“rlSimplePendulumModel”)
有两种简单的钟摆环境变体,它们因代理动作空间而不同。
离散-代理可以应用任意一个扭矩T马克斯,
0
,或者,T马克斯到钟摆那里去T马克斯是max_tau
变量在模型工作区中。连续-代理可以应用任何扭矩范围内[-T马克斯,T马克斯]。
要创建简单的钟摆环境,请使用rlPredefinedEnv
函数。
离散行动空间
env = rlPredefinedEnv (“SimplePendulumModel-Discrete”);
持续的行动空间
env = rlPredefinedEnv (“SimplePendulumModel-Continuous”);
有关在简单摆环境中训练代理的示例,请参见:
行动
在简单的摆环境中,代理与环境交互使用单一动作信号,即施加在摆底部的扭矩。环境包含这个动作信号的规范对象。对环境有:
离散的动作空间,规格是一个
rlFiniteSetSpec
对象。连续动作空间,规格是一个
rlNumericSpec
对象。
有关从环境获取操作规范的更多信息,请参见getActionInfo
.
观察
在简单摆环境中,代理接收到以下三个观测信号,它们构造于创建的观察子系统。
摆角的正弦
摆角的余弦
摆角的导数
对于每个观测信号,环境包含一个rlNumericSpec
观测规范。所有的观察都是连续的、无界的。
有关从环境获取观测规范的详细信息,请参见getObservationInfo
.
奖励
这个环境的奖励信号,是在计算奖励子系统,是
在这里:
θt是摆距直立位置的位移角。
是摆角的导数。
ut - 1是来自前一个时间步骤的控制努力。
Cart-PoleSimscape模型
在预定义的推车-杆环境中,代理的目标是通过向推车施加水平力来平衡移动推车上的杆。如果满足以下两个条件,则认为极点平衡成功:
极点角保持在垂直位置的给定阈值内,其中垂直位置为零弧度。
推车位置的大小保持在给定的阈值以下。
中定义了此环境的模型rlCartPoleSimscapeModel
仿真软件模型。该模型的动力学定义使用Simscape多体™.
open_system (“rlCartPoleSimscapeModel”)
在环境子系统中,使用Simscape组件定义模型动力学,使用Simulink块构建奖励和观察。
open_system (“rlCartPoleSimscapeModel /环境”)
有两种车极环境变体,它们因代理动作空间而不同。
离散-代理可以应用的力
15
,0
,或-15年
购物车。连续-代理可以应用范围内的任何力[
-15年
,15
]。
要创建车杆环境,请使用rlPredefinedEnv
函数。
离散行动空间
env = rlPredefinedEnv (“CartPoleSimscapeModel-Discrete”);
持续的行动空间
env = rlPredefinedEnv (“CartPoleSimscapeModel-Continuous”);
有关在此车杆环境中训练代理的示例,请参见训练DDPG代理人摆动和平衡车杆系统.
行动
在车杆环境中,代理使用一个单独的动作信号(施加在车上的力)与环境进行交互。环境包含这个动作信号的规范对象。对环境有:
离散的动作空间,规格是一个
rlFiniteSetSpec
对象。连续动作空间,规格是一个
rlNumericSpec
对象。
有关从环境获取操作规范的更多信息,请参见getActionInfo
.
观察
在车极环境中,agent接收到以下5个观测信号。
极角的正弦
角的余弦
摆角的导数
车的位置
推车位置导数
对于每个观测信号,环境包含一个rlNumericSpec
观测规范。所有的观察都是连续的、无界的。
有关从环境获取观测规范的详细信息,请参见getObservationInfo
.
奖励
这个环境的奖励信号是两个组成部分的和(r=rqr+rn+rp):
二次调节器控制奖励,构造在
环境/ qr奖励
子系统。一个推车限制处罚,构造在
环境/ x限制处罚
子系统。当推车位置的大小超过一个给定的阈值时,这个子系统产生一个负奖励。
在这里:
x是推车的位置。
θ是极点从直立位置的位移角。
ut - 1是来自前一个时间步骤的控制努力。