用可变动作强化学习

时间:2011-03-07 04:34:09

标签: machine-learning reinforcement-learning planning

我读过的所有reinforcement learning算法通常都应用于具有固定操作数的单个代理。是否有任何强化学习算法用于在考虑可变数量的动作的情况下做出决定?例如,如何在玩家控制N名士兵的计算机游戏中应用RL算法,并且每名士兵根据其条件有随机数量的动作?你不能为全球决策者(即“将军”)制定固定数量的行动,因为随着士兵被创造和杀死,可用的行动会不断变化。而且你不能在士兵级别制定固定数量的行动,因为士兵的行动是基于其直接环境的条件。如果士兵看不到对手,那么它可能只能行走,而如果它看到10个对手,那么它有10个新的可能动作,攻击10个对手中的1个。

2 个答案:

答案 0 :(得分:3)

你所描述的并不罕见。强化学习是一种找到Markov Decision Process的价值函数的方法。在MDP中,每个州都有自己的一系列行动。要继续强化学习应用程序,您必须明确定义问题中的状态,操作和奖励。

答案 1 :(得分:1)

如果您根据某些条件为每个士兵提供了许多可用或不可用的操作,那么您仍然可以将其建模为一组固定操作的选择。例如:

  • 为每名士兵的每一套完整行动创建“实用价值”
  • 选择最高价值的操作,忽略那些在给定时间不可用的操作

如果您有多个可能的目标,则适用相同的原则,除非您将效用函数建模为将目标指定作为附加参数,并多次运行评估函数(每个目标一个)。您选择具有最高“攻击效用”的目标。