我有一个关于强化学习 (RL) 对于我们正在尝试解决的问题的适用性的基本问题。
我们正在尝试使用强化学习进行库存管理 - 其中需求完全随机(它可能在现实生活中具有某种模式,但现在让我们假设我们被迫将其视为纯粹的随机需求)随机的)。
据我了解,强化学习可以帮助学习如何玩游戏(例如国际象棋)或帮助机器人学习走路。 但是所有游戏都有规则,(OpenAI Gym 的)“车杆”也是如此 – 有一些“物理”规则来控制车杆何时倾斜并摔倒。
对于我们的问题来说,没有规则——环境随机变化(对产品的需求)。
强化学习真的适用于这种情况吗?
如果确实如此,那么什么会提高性能?
更多详情: - “环境”中唯一可用的两个刺激是产品“X”的当前可用水平和当前需求“Y” - “ Action ”是二元的 - 我是否订购一定数量的“Q”来重新填充或不订购(离散 Action 空间)。 - 我们正在使用 DQN 和 Adam 优化器。
我们的结果很差 - 我承认我只训练了大约 5,000 或 10,000 - 我应该让它训练几天,因为这是一个随机环境?
谢谢 拉杰什
最佳答案
你说的是非平稳意义上的随机,所以,不,强化学习在这里不是最好的。
强化学习假设您的环境是静止的。在整个学习过程中,环境的潜在概率分布(转换函数和奖励函数)必须保持不变。
当然,强化学习和深度强化学习可以处理一些稍微不稳定的问题,但在这方面却很困难。马尔可夫决策过程 (MDP) 和部分可观察 MDP 假设平稳。因此,专门用于利用类似 MDP 环境的基于值的算法,例如 SARSA、Q-learning、DQN、DDQN、Dueling DQN 等,将很难在非平稳环境中学习任何内容。您越多地采用基于策略的算法,例如 PPO、TRPO,甚至更好的无梯度算法,例如 GA、CEM 等,您的机会就越大,因为这些算法不会尝试利用此假设。此外,调整学习率对于确保代理永不停止学习至关重要。
最好的选择是采用黑盒优化方法,例如遗传算法等。
关于machine-learning - 强化学习适用于随机环境吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52744919/