混合数据类型在操作空间

9的观点(30天)
Sania居尔
Sania居尔 2023年5月13日在7:12
评论道: Shaik 大约8小时前
混合类型的数据的操作空间,这其中将使用rlFiniteSetSpec或rlNumericSpec。我见过一个查询有关观测空间,但它也适用于行动空间吗?

接受的答案

Shaik
Shaik 约19小时前
你好,
之间的选择 rlFiniteSetSpec rlNumericSpec 的行动空间的性质取决于行动你想定义强化学习(RL)环境。
  • rlFiniteSetSpec:使用本规范的行动空间由一组离散的可能的行动。组中的每个动作可以表示为一个独特的价值或标识符。例如,如果您的行动空间由一组有限的离散动作,如“前进”,“左转”,或“右转”,你可以使用rlFiniteSetSpec定义的行动空间。
  • rlNumericSpec:使用本规范的行为空间是连续的或可以表示为一系列的数值。如果你的行动空间需要指定一个连续的值,如控制机械手臂的速度或位置,您可以使用rlNumericSpec定义的行动空间。
当定义RL的行动空间环境中,您需要选择合适的规范基于行动的特点你想代表。你可以混合 rlFiniteSetSpec rlNumericSpec 对象空间中的行动如果您的环境需要离散和连续操作。
关于你提供的链接,它指的是对观测空间查询,但同样的概念也适用于行动的空间。的 rlFiniteSetSpec rlNumericSpec 对象可以用来定义在RL环境中观察和行动空间,这取决于它们所代表的类型的数据。
总之,考虑你的行为的性质(离散或连续)和使用空间 rlFiniteSetSpec rlNumericSpec 因此定义适当的规范的行动空间RL环境。
2的评论
Shaik
Shaik 约2小时前
如果你想保持旋转力离散,同时保持美国“x”和“y”连续的,一种可能是修改状态表示。一种方法可能是角度θ表示为一个整数值(例如,在度或弧度),而不是使用罪(θ),因为(θ)。
这里有一个例子如何修改状态表示:
  1. 定义一个最大和最小角,θ_maxθ_min,分别在角度或弧度,取决于你的偏好。对于这个示例,假设θ可以在-180到180度之间变化。
  2. 定义旋转角度θ,一个整数值θ_min和θ_max之间。您可以使用MATLAB中的“离散化”函数来获取对应的整数值。例如:
theta_bins = linspace (-180、180、num_bins);%(-180、180)范围划分为num_bins等距的间隔
θ=离散化(量化(sin_theta cos_theta) * 180 /π,theta_bins);
在这里, num_bins 是时间间隔的数量你想把范围分成。的 量化 函数用于获取角度从sin_theta cos_theta,然后使用这个角是转化为度 * 180 /π 比例因子。
  1. 更新状态表示使用新的旋转角度θ,而不是罪(θ),因为(θ)。您需要修改观测空间包括新的状态变量,并正确的行动空间离散行动空间映射到连续的控制输入。
你可以尝试不同的值 num_bins ,看看它如何影响旋转角的离散化。更大的价值 num_bins 将导致更好的离散化的角度,增加计算复杂度为代价的和培训时间。

登录置评。

更多的答案(0)

类别

找到更多的在金宝app仿真软件环境帮助中心文件交换

下载188bet金宝搏

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!