具有多个 "continuous actions" 的深度强化学习

Deep reinforcement learning with multiple "continuous actions"

下面是我的代理应该是什么样子的高级图表,以便能够与我制作的自定义健身房环境进行交互。

状态和动作

环境有三个状态 [s1, s2, s3] 和六个动作 [a1, a2, a3, a4, a5, a6] 状态和动作可以是 0 到 1 之间的任何值

问题:

哪些算法适合我的问题?我知道有些算法擅长处理连续动作 space,例如(DDPG、PPO 等),但我看不出当它们应该在每个时间步长输出多个动作时它们会如何运行。 最后,是否有任何健身房环境具有所描述的 属性(多个动作),是否有任何 python 解决这些特定环境的实现?

正如你在问题中提到的,PPO、DDPG、TRPO、SAC等确实适合处理强化学习问题的连续动作空间。 这些算法将给出一个大小等于您的动作维度的向量,并且该向量中的每个元素都是实数而不是离散值。请注意,像 PPO 这样的随机算法会给出一个多元概率分布,您可以从中对操作进行采样。

Mujoco-py, PyBullet, Robosuite等中的大部分机器人环境都是具有多个连续动作空间的环境。这里的动作空间可以是 [torque_for_joint_1, torque_for_join_2, ..., torque_for_joint_n] 的形式,其中 torque_for_joint_i 可以是一个实数值,由该关节移动多少决定。

关于解决这些环境的实现,robosuite 确实提供了示例解决方案,用于使用不同算法对环境进行基准测试。您还可以查找 stable-baselines 或标准 RL 库之一。