【问题标题】:Q learning for ludo game?Q学习ludo游戏?
【发布时间】:2017-02-21 10:23:10
【问题描述】:

我目前正在尝试使用 Q-learning 实现一个 AI 玩家来对抗 2 个不同的随机玩家..

我不确定 Q-learning 是否适用于 Ludo 游戏,所以我对此有点怀疑..

我为游戏定义了 11 个状态。每个状态都是根据其他玩家的位置来定义的。

我可能的行动是 6,(受骰子限制)。

理论上我可以有四种不同的状态(每个 Ludo 令牌一个) 哪个可以执行骰子选择的动作,但我只会选择移动具有最高 Q(s,a) 的令牌并执行动作..

我不明白的是,在更新阶段会发生什么。

我知道我用新值更新了以前的值?..

基于 wiki 的更新如下:

我不明白奖励值与旧值有何不同? 它是如何定义的,对于矩阵中的这些值有何不同?

【问题讨论】:

  • 你实现播放器成功了吗?
  • 是的,我让它工作了。很多代码。
  • 好人!那个项目是开源的吗?你可以和我分享你的代码吗?我试图实现相同的东西,只是为了学习目的,但没有成功

标签: c++ q-learning


【解决方案1】:

奖励是做出某个动作的奖励,旧的 q-value 是 q-table 中被选为动作的值,在给定状态下是最有吸引力的。此处的奖励将更新该条目,以便算法将来知道该举动是否有益或使结果更糟。

【讨论】: