1 背景
在前面的博客中,为读者朋友们阐述了自动驾驶Planning模块基于MCTS行为规划的文章《自动驾驶---Behavior Planning之MCTS》,博客中引用的论文的主要思想是以蒙特卡洛树来实现行为规划。今天,我们继续探寻另一种行为规划的策略,主角依然是香港科技大学。
熟悉的读者大概有些印象,笔者之前也写过一篇香港科技大学沈劭劼教授(同时是大疆车载负责人)团队的Motion Planning的内容《自动驾驶---Motion Planning之构建SLT Driving Corridor》,这次主要研究其使用到的行为规划算法,其中有些细节和上面的MCTS算法有相似之处。参考论文:《Efficient Uncertainty-aware Decision Making for Automated Driving Using Guided Branching》。
2 内容介绍
在正式介绍论文正式内容之前,先熟悉论文中提到的前辈们的工作。
2.1 相关内容介绍
(1)POMDP
POMDP(Partially Observable Markov Decision Process,部分可观察马尔科夫决策过程)是一种用于建模具有不完全信息的决策问题的数学框架,在自动驾驶领域具有广泛的应用。在自动驾驶中,POMDP被用来解决那些存在隐含变量或不完全观测信息的决策问题。
POMDP由五个关键元素组成:状态空间、动作空间、观测空间、转移概率和奖励函数。其中,状态空间表示系统的所有可能状态,动作空间包含所有可能的驾驶行为或决策,观测空间则描述了如何通过传感器观测到系统状态的信息。转移概率定义了状态之间的转移可能性,而奖励函数则用于评估不同决策的效果,通常根据是否达到预定目标(如安全到达终点)或避免不利情况(如碰撞)来设定。
在自动驾驶的应用中,POMDP通过基于当前置信状态计算使未来折扣奖励最大的策略。这意味着,自动驾驶车辆会根据当前的观测结果和过去的经验,预测未来的可能情况,并选择一个能够最大化长期奖励的驾驶策略。这种策略选择不仅考虑了当前的驾驶环境,还考虑了未来的不确定性因素,从而实现了在不确定环境下的鲁棒决策。
但是自动驾驶场景直接使用POMDP进行运算可能会消耗较大的计算资源,因此在线实现可能比较困难。为了解决这个问题,研究者们通常会采用一些优化方法,如近似解法或启发式算法,来降低计算复杂度,同时保持决策的有效性。
下面举个例子,假设有两种状态state{S1,S2}。Agent一开始可能在两种状态中的一种,并且有两种可能的Action{A1,A2}。 在状态S1的时候Reward为0, B的时候Reward为10。从A出发只有0.8的概率会达到B,0.2的概率出发然后再回到A,从B出发同理。
MDP:
已知agent一开始是在状态S1,
Q(S1, A1) = U0 + [0.8 * 0 + 0.2 * 10] = 0 + 2 = 2
Q(S1, A2) = U0