MDP Based 基于马尔科夫决策的路径规划

文章目录解法 MDP in(马尔科夫决策)CostRTDP算法
前言
这里的更多的是决策树的概念,从起点到终点可能存在多条路径,需要我们根据环境的变化,选择最优的去执行 。并且当前的都是假设在最完美的情况下执行的,且机器人对状态估计也是完美的 。
但是现实中是不会这么完美的 。
in
现在假设所有干扰都是自然产生的,现在的路径规划是机器人与自然两者博弈的结果 。这与之前的是有很大的不同的 。
【MDP Based基于马尔科夫决策的路径规划】 Model
通常会假设两个空间,一个是机器人的动作空间,一个是自然的扰动空间,两空间相互独立,通过优化损失函数,来找到一条最优路径 。
Model
同样假设机器人与自然的空间,现在是自然动作空间条件依赖于机器人空间,两者不相互独立了 。现在就是在自然参与情况下,为机器人寻找最优的路径 。
以上这是两种不同的模型,会采用不同的解决方法 。
解法Model 解法
机器人无法预测自然的行为,现在采取类似贪心的思想,就是无论机器人怎么做,自然的动作都是最不利的行为,先穷举所有自然扰动,再选一个最不利的,看机器人如何把这个最不利的降低到最低 。
Model解法
这种情况是机器人每做一个动作,自然就施加一个扰动,决策树思想,需要走一步看一步 。
从One Step推广到多步
一个 With 的定义,主要包括如下几个要素,State SpaceX {X} X,还包括了 Statex s {x}_{s} xs?,以及Goal SetX F {X}_{F} XF?,需要定义机器人动作空间以及自然动作空间 。
再一个就是State,其描述了在 X {X} X状态下,机器人执行u {u} u,自然执行θ {\theta} θ,我们的状态是怎样变化的 。
同时,从单步扩展到多步,我们需要一个 K {K} K来表征机器人在每一步都遇到了什么状态,执行了什么动作 。最后是 k {k} k个连续的step实现从初始状态到终点的规划 。
同时,为了评价规划的好坏,我们定义了这个cost ,这个costL {L} L是对所有可能的 x k , u k , θ k {x}_{k},{u}_{k},{\theta}_{k} xk?,uk?,θk?的组合的评价,这个公式是囊括了每一个路径的评价 。
MDP in(马尔科夫决策)
问题描述:在一个栅格地图当中,机器人如何从 X I {X}_{I} XI?的位置移动到黄色区域 X G {X}_{G} XG?周边,中间绿色为障碍物 。
最难的一步是,机器人一个 X K {X}_{K} XK?的位置执行了一个 U K {U}_{K} UK?的动作,然后把动作的执行模拟成一个高斯分布,就是实际上机器人到达的位置,除了从起点加上所执行的动作,还存在一些误差 σ ( θ 1 , θ 2 ) \sigma({\theta}_{1},{\theta}_{2}) σ(θ1?,θ2?) 。相当于是一种连续的Model方式了 。
之前的路径规划当中,因为没有的存在,找到一条可行的路径就直接走过去了,但是现在因为有了这些不确定的约束,就会导致每执行一步,就是走一个栅格,都会出现一些偏差 。决策树的形式,每走一步,都会产生干扰,所以需要“走一步看一步 。”
MDP的输出不像是传统的路径规划的输出一条准确的路径,这MDP的路径因为每走一步都会产生一些随机的误差,所以需要利用决策树的思想,每走一步再来规划下一步,所以基于MDP的路径规划的解的输出是一种决策树的形式,那这样会不会使得效率低下?
Cost-to-Goal
根据不同的Plan,又可以诱导出不同的 set,在这个set的基础上,又定义出了cost to goal,针对不同的 model,给出了不同的cost to go的定义方式 。
如何用以上这两种cost to go去解决的问题?
比如在 的Model下,我们倾向于使用多步的Worst-case 去定义cost to go;在下,我们更倾向于-case 。