几天前我开始学习强化学习。我想用它来解决资源分配问题,比如给定一个常数,找到将它分成几个实数的最佳方法,每个实数都是非负数。
例如,要将数字 1 分成 3 个实数,分配可以是:
[0.2, 0.7, 0.1]
[0.95, 0.05, 0] ...
我不知道如何表示动作空间,因为每个分配都是 3 维的,每个维度都是实值的,并且彼此相关。
在 actor-critic 架构中,是否有可能在 actor 的网络中由 softmax 激活 3 个输出,每个输出代表分配中的一个维度?
附加:
有一个视频播放列表。用户可以随时切换到下一个视频。如果用户切换到下一个视频,更多的缓冲区会带来更好的观看体验,但会损失更多的带宽。我想以最小的带宽损失优化播放的流畅度。在每个时间步,代理决定下载当前视频和接下来的 2 个视频的带宽分配。所以我猜状态将是带宽,用户的行为和玩家的情况。