一. 马尔可夫Markov的原理:
首先,马尔可夫过程的大概意思就是未来只与现在有关,与过去无关。即定义如下:
F t n , t 1 , t 2 … … t n ? 1 ( x n ∣ x 1 , x 2 … … x n 1 ) = F t n t n ? 1 ( x n ∣ x n 1 ) F_{t_{n}, t_{1}, t_{2} \ldots \ldots t_{n-1}}\left(x_{n} \mid x_{1}, x_{2} \ldots \ldots x_{n} 1\right)=F_{t_{n} t_{n-1}}\left(x_{n} \mid x_{n} 1\right) Ftn?,t1?,t2?……tn?1??(xn?∣x1?,x2?……xn?1)=Ftn?tn?1??(xn?∣xn?1)
这种“下一时刻的状态至于当前状态有关,与上一时刻状态无关”的性质,称为无后效性或者马尔可夫性。而具有这种性质的过程就称为马尔可夫过程。
在马尔可夫过程中有两个比较重要的概念:转移分布函数、转移概率
【自动驾驶笔记和知识分享|规划代码ros移植-POMDP预测规划(一)】马氏过程 X t X_{t} Xt? ,称条件概率 F s , t = P { X t ≤ y ∣ X s = x } F_{s, t}=P\left\{X_{t} \leq y \mid X_{s}=x\right\} Fs,t?=P{Xt?≤y∣Xs?=x}为过程的转移分布函数。
称 P ( X t n = x n ∣ X t n = x n ? 1 ) P\left(X_{t_{n}}=x_{n} \mid X_{t_{n}}=x_{n-1}\right) P(Xtn??=xn?∣Xtn??=xn?1?)为转移概率。
二. 部分马尔可夫决策原理(POMDP):
MDP的原理:网上太多,这里不展开。
POMDP的原理:
有涉及POMDP的论文,都会讲解其基础原理,比如:
链接: DESPOT: Online POMDP Planning with Regularization.
注意以下几点:
1.相比 MDP,POMDP 无法得到s t a t e state state,只能得到o b s e r v a t i o n observation observation;
2.由于引入了o b s e r v a t i o n observation observation,增加了 o b s e r v a t i o n observation observation基于s t a t e state state 和a c t i o n action action 的分布 ;
3. h i s t o r y history history表示为:
h t = { a 1 , o 1 , … , a t , o t } h_{t}=\left\{a_{1}, o_{1}, \ldots, a_{t}, o_{t}\right\} ht?={a1?,o1?,…,at?,ot?}
h t , a t + 1 = { a 1 , o 1 , … , a t , o t , a t + 1 } h_{t} ,a_{t+1}=\left\{a_{1}, o_{1}, \ldots, a_{t}, o_{t}, a_{t+1}\right\} ht?,at+1?={a1?,o1?,…,at?,ot?,at+1?}
且被定义为a c t i o n action action和o b s e r v a t i o n observation observation的 sequence;
4. b e l i e f belief belief被定义为s t a t e state state 基于h i s t o r y history history 的分布;
详细基础解释:POMDP基础.
三. 使用despot求解的POMDP整体框架:
1.输入b(置信空间),通过buliddespot模型得到l(lowerbound)
2.找到最大l的a(动作)
3.如果置信空间的策略得到的奖励比选择的a大,此时用b原有的策略选择出a
4.执行动作a
5.接受观测量z
6.根据观测量,动作,以及当前的状态,得到下一时刻的状态
其中,builddespot的框架:
1.从K个场景中得到一系列的
2.建立一个新的despot模型,将一个新的点作为根节点
3.初始化U,L,l,u
4.得到e(b0)=u(b0)-l(b0)
5.当e(b0)>e,并且运行时间小于最大的运行时间的时候:
6.b=EXPLORE(D,b)
7.BACKUP(D,b)
8.e(b0)=u(b0)-l(b0)
return l
推荐阅读
- 考研408|计算机考研408(数据结构(持续更新))
- 前沿技术|深度学习框架中的自动微分及高阶导数
- 算法|【机器学习基础】数学推导+纯Python实现机器学习算法26(随机森林)
- LeetCode|450. 删除二叉搜索树中的节点
- 数据结构与算法|数据结构(第二章(一))
- 算法刷题小模版|八大排序的思想及其代码
- 算法|递归和非递归详解
- OJ|OJ---腐烂的橘子
- leetcode|算法之快慢指针