欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

理解POMDP详解 - 第一章:透视部分可观测的马尔可夫决策过程

最编程 2024-07-29 15:01:21
...

        如果你不知道什么是马尔可夫决策过程(MDP),请查看(待更新)

        首先介绍一下部分可观察马尔可夫决策过程(POMDP),一个POMDP被定义为(S,A,T,R,\Omega ,O,\gamma )元组,其中S是状态空间,A是动作空间,T是过渡模型,R是奖励函数,\Omega 是观测空间,O是观测模型,\gamma \in [0,1]是折扣因子。在每个时间段,环境处于某种状态s\in S,智能体在当前状态s采取动作a\in A会过渡到状态s',其概率为T(s,a,s')=P(s'|s,a)。之后智能体接收到环境的观测o\in O,它取决于环境的新状态,概率为O(o,s',a)=P(o|s',a),解释为在采取动作a并以新状态s'结束后观察到某一观测的概率。

        这里我们假设读者熟悉常规离散马尔可夫决策过程(MDPS)的值迭代算法。但是,我们需要将它们与部分可观测马尔可夫决策过程(POMDP)区别开来,我们也可以将它们称为离散马尔可夫决策过程。因此,我们将更熟悉的马尔可夫决策过程(MDP)称为完全可观测的马尔可夫决策过程(CO-MDP),强调它们是完全可观测的(completely observable)。

        向马尔可夫决策过程(MDP)添加部分可观察性(partially observable)并不是一件容易的事。CO-MDP的解决方案过程为每个状态提供了价值(values)或策略(policies)。这些解决方案的使用要求状态在任何时候都是完全已知的,并且具有完全可观测性,这没有问题。部分可观察性就像使当前状态的概念蒙上了一层阴影。不再有关于当前状态的确定性,这使得基于当前状态进行选择动作(例如在 CO-MDP中)不再有效。

        一个POMDP真的只是一个MDP ; 我们有一组状态,一组动作,过渡和即时奖励。动作对POMDP中状态的影响与在MDP中完全相同。唯一的区别在于我们是否可以观察过程的当前状态。在POMDP中,我们向模型添加了一组观测值。因此,"状态"不再是直接观察当前的状态,而是提供给我们一个观测结果,该观测结果提供了有关处于何种状态的提示。因此,我们还需要指定观测模型。这个观测模型简单地告诉我们模型中每个状态的每个观测的概率。

        尽管POMDP的基本动力仍然是马尔可夫式的,但由于我们无法直接访问当前状态,因此我们的决策可能需要跟踪整个过程的历史,从而使之成为非马尔可夫式的过程。给定时间点的历史包括我们对开始处境的了解,所执行的所有操作以及所观察到的所有观测结果。

        幸运的是,事实证明,仅维护所有状态的概率分布就可以为我们提供与维护完整历史记录相同的信息。在CO-MDP中,我们跟踪我们的当前状态并在每次操作后对其进行更新。这在CO-MDP中是微不足道的,因为它是完全可以观察到的。在POMDP中,我们必须维护状态之间的概率分布。当我们执行动作并进行观察时,我们必须更新分布。更新分布非常容易,仅涉及使用过渡和观测概率。为了防止一些小伙伴看到公式头就晕,我们就不在这里展示公式了。

        下一节,https://www.jianshu.com/p/4febfe251676

       这是本人阅读完自http://cs.brown.edu/research/ai/pomdp/tutorial/的理解,有兴趣的可以自己去看看哟。

       感谢阅读,如果看完了还有疑问的话可以留言哦!