基于隐马尔可夫链的行为预测算法

基于隐马尔可夫模型预测算法的无人车行为预测
无人车的行为预测问题一直都是无人车研究的一个重要问题,因为只有在无人车可以对周围环境以及交通参与者有了很好的理解和预测的基础上,在能保证无人车可以安全的在道路上行驶。但是在实际道路中,交通情况有是十分复杂的,我们无法对道路上的每个交通参与者的行为做出完全准确地预测,所以预测问题最终归结为概率问题。
1、隐马尔可夫模型
在介绍隐马尔科夫模型之前,为了读者更好更全面的理解隐马尔可夫模型首先介绍一些基础知识做铺。
马尔科夫性:在一个过程当中,某一时刻的状态只和前一时刻的状态相关,这样的性质叫做马尔可夫性。满足马尔科夫性质的随机过程叫做马尔科夫决策过程
隐马尔科夫模型和马尔可夫模型的不同之处在于隐马尔科夫模型的一些状态是不可见的,例如,一个赌徒拿着三个骰子去赌博,其中两个骰子是有问题的骰子,在赌博过程中赌徒有随意切换骰子的习惯,所以我们不知到赌徒每次用的是什么骰子,这在隐马尔可夫链中就是那些隐藏的状态。
隐马尔科夫链用数学的方式可以表示称一个五元数组,五元数组例分别包含一个状态转移概率,输出概率、初始概率分布、隐藏状态所组成的集合还有可观测状态所组成的集合。
2、预测算法
和隐马尔科夫模型相关的预测算法有维特比算法和近似算法,这里我们不做详细介绍,可参考其他文献。我们采用维特比算法做预测,维特比算法可分为三个步骤:初始化、递推、终止
3、模型建立
考虑在一个没有红绿灯的十字路口,车流从四个大车道涌来,每个车道又包含四个小车道(假设每个大车道都有四辆车准备过路),分别是直行和转弯道。假设无人车在其中一个大车道上形式,现在以其他三个大车道为被测实体,用隐马尔科夫链来预测的这个十字路口的交通情况。
假设实验前我们已经得到一组数据{straight ,turn,straight}
我们设十字路口其余三个大车道分别为lane1、lane2、lane3
Q为所有隐藏状态组成的集合,Q={lane1、lane2、lane3}
V为可观测状态组成的集合,V={staright turn}
开始时设车流分别从一、二、三车道的概率为0.2,0.4,0.4,即初始概率分布为{0.2,0.4,0.4}
车流驶来的规则如下:
1、若当前的车辆来自于一车道,则下一辆车也来自与一车道的概率为0.5,第二个车道来车的概率是0.2,第三个车道来车的概率为0.3
2、若当前的车辆来自于二车道,则下一辆车也来自与二车道的概率为0.5,第一个车道来车的概率是0.3,第三个车道来车的概率为0.2
3、若当前的车辆来自于三车道,则下一辆车也来自与三车道的概率为0.5,第一个车道来车的概率是0.2,第三个车道来车的概率为0.3
基于隐马尔可夫链的行为预测算法_第1张图片
基于隐马尔可夫链的行为预测算法_第2张图片
由此我们便完成了隐马尔科夫模型的建立。
然后我们用预测算法进行求解,公式太麻烦了,我在平板上输入不方便。所以就直接给出计算结果了。结果如下:最可能的隐藏序列为{2,2,3},也就是说最有可能的交通情况是先从第二车道出来两辆车,最后从第三车道出一辆车。最后,其实可以发现这个模型其实有一个很大的缺点,它只能预测从那个车道来车,并不能预测来的车的具体行为,所以,这个模型当作尝试试一试可以,但是还需要有很大的改进。

你可能感兴趣的:(笔记)