最近我读了很多关于马尔可夫决策过程(使用价值迭代)的文章,但我根本无法理解它们。我在互联网/书籍上找到了很多资源,但它们都使用了对我的能力来说太复杂的数学公式。
由于这是我在大学的第一年,我发现网络上提供的解释和公式使用的概念/术语对我来说太复杂了,他们假设读者知道某些我从未听说过的事情.
我想在 2D 网格上使用它(充满墙壁(无法到达)、硬币(理想)和移动的敌人(必须不惜一切代价避免))。整个目标是在不接触敌人的情况下收集所有硬币,我想使用马尔可夫决策过程 ( MDP ) 为主要玩家创建一个 AI。这是它的部分外观(请注意,与游戏相关的方面在这里并不是那么重要。我真的很想了解MDP):
据我了解,MDP的粗鲁简化是它们可以创建一个网格,该网格保持我们需要去的方向(一种“箭头”网格,指向我们需要去的地方,从网格上的某个位置开始) 达到某些目标并避免某些障碍。具体到我的情况,这意味着它可以让玩家知道往哪个方向去收集硬币并避开敌人。
现在,使用MDP术语,这意味着它为某个状态(网格上的位置)创建了一个状态集合(网格),其中包含某些策略(要采取的操作 -> 上、下、右、左) )。这些政策由每个州的“效用”价值决定,这些价值本身是通过评估到达那里的短期和长期收益多少来计算的。
这个对吗?还是我完全走错了路?
我至少想知道以下等式中的变量在我的情况下代表什么:
(摘自 Russell & Norvig 的《人工智能 - 一种现代方法》一书)
我知道这s
将是网格中所有方块的列表,a
将是一个特定的动作(上/下/右/左),但其余的呢?
奖励和效用函数将如何实现?
如果有人知道一个简单的链接,该链接显示伪代码以非常缓慢的方式实现与我的情况相似的基本版本,那就太好了,因为我什至不知道从哪里开始。
感谢您的宝贵时间。
(注意:随时添加/删除标签或在评论中告诉我是否应该提供有关某事或类似内容的更多详细信息。)