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