基于复杂网络的自动驾驶汽车复杂环境模型、认知系统及认知方法
技术领域
本发明涉及自动驾驶汽车应用
技术领域
,尤其涉及一种基于复杂网络的自动驾驶汽车复杂环境模型、认知系统及认知方法。背景技术
复杂网络是呈现高度复杂性的网络,是复杂系统的抽象,一般具有自组织、自相似、吸引子、小世界、无标度中的部分或全部性质。复杂网络的特性是复杂性,具体表现在:网络规模大,连接结构复杂,节点复杂性(如:节点动力学复杂性和节点多样性),网络时空演化过程复杂,网络连接的稀疏性,多种重复杂性融合等。复杂网络的复杂性研究方法,如:节点复杂性、连接结构复杂性和网络时空演化过程复杂性等研究方法,已成为复杂系统建模和研究的重要工具。
自动驾驶汽车是一个集环境感知、规划决策、控制执行等功能于一体的综合系统。由于激光雷达、毫米波雷达、摄像头等传感器技术的迅速发展,环境感知方法得到深入研究,取得了很大进展。当前,建立环境的个体类型、位置、运动等底层感知信息与个体行为风格、层次化局部环境、全局环境认知之间的关联,支撑从环境感知到个体认知、局部认知到交通综合态势全局认知的发展,已成为保障自动驾驶汽车自主决策与运动规划安全性的重要前提。然而,自动驾驶汽车所面临的环境是一个复杂系统,在这个复杂系统中,个体的运动行为不仅依赖于该个体自身,而且受周边其它个体运动行为及驾驶环境的影响,具有复杂的多维耦合性和动态不确定性。因此,基于复杂网络,建立自动驾驶汽车复杂环境模型、认知方法及装置,揭示自动驾驶汽车所面临环境的非线性动态演化规律,已成为解决高级别自动驾驶环境认知难题的重要环节。
发明内容
为解决上述技术问题,本发明提供一种基于复杂网络的自动驾驶汽车复杂环境模型、认知系统及认知方法,在感知自动驾驶汽车外部环境的基础上,首先,针对个体驾驶行为认知的复杂性问题,依据用于表示驾驶操控激进程度和模式转移偏好的驾驶特征参数,进行驾驶风格识别;其次,依据环境中运动主体的群体行为特征,在驾驶风格识别的基础上,基于复杂网络,以运动主体为节点,以道路为约束,建立时变复杂动态网络作为自动驾驶汽车复杂环境模型;最后,对复杂环境模型中的节点进行参数化表述,实现对复杂环境的节点差异化认知,采用凝聚算法对复杂环境模型中的节点进行分层,实现对复杂环境的层次化认知,建立复杂环境模型的无序程度度量方法,实现对复杂环境的全局风险态势认知。
本发明基于复杂网络的自动驾驶汽车的认知系统包括:驾驶风格识别模块,复杂环境模型模块,节点差异化认知模块,层次化认知模块,全局风险态势认知模块。
所述驾驶风格识别模块,是在提取驾驶特征参数的基础上,构造驾驶风格特征矩阵CJ,将驾驶风格特征矩阵CJ输入随机森林分类器Rf,通过随机森林分类器Rf输出驾驶风格类别Kdrive。
所述驾驶特征参数,包括纵向驾驶特征参数、横向驾驶特征参数和模式转移特征参数。所述纵向驾驶特征参数是指有限时窗内的纵向加速度a+、跟弛时距dtime,所述横向驾驶特征参数是指有限时窗内的横向加速度均方根RMS(a-)、横摆角速度标准差SD(r),所述模式转移特征参数有限时窗内的左换道状态转移概率P(lc)和右换道状态转移概率P(rc)。
所述驾驶风格特征矩阵CJ,是指由纵向驾驶特征参数、横向驾驶特征参数和模式转移特征参数构成的三维六自由度特征矩阵:
所述随机森林分类器Rf通过如下步骤生成:对驾驶风格数据组成的原始训练集进行有放回随机抽样,生成m个训练集,对每个训练集选择n个特征,分别训练m个决策树分类模型,对于每个分类模型根据信息增益比选择最好的样本特征进行分裂,直到所有训练样例都属于同一类,最后将生成的所有决策树分类模型组成随机森林,通过投票法输出驾驶风格类别Kdrive。
所述驾驶风格类别Kdrive包括激进型、平和型、保守型三类:
Kdrive=Rf(CJ) (2)
所述复杂环境模型模块,是为了刻画自动驾驶汽车复杂环境的随机、动态、非线性演化规律,基于复杂网络理论,以运动主体为节点,构造时变复杂动态网络G作为复杂环境模型:
G=(V,B,X,P,Θ) (3)
其中,G是时变复杂动态网络,V是时变复杂动态网络G中节点集合,B是时变复杂动态网络G中边的集合,表示节点之间的连线,X是时变复杂动态网络G中节点的状态向量,P为复杂动态网络G中边的强度函数,表示节点间的耦合关系,Θ为时变复杂动态网络G的区域函数,表示对时变复杂动态网络G的动态约束。
将时变复杂动态网络G等效为具有N个节点的连续时间动态系统,设第i节点的状态变量为xi,则第i节点的动力学方程为:
其中,f(xi)为第i节点状态变量的自变函数,ξ>0为共同连接关系强度系数,pij(t)为第i节点和第j节点之间的耦合系数,H(xj)为节点间的内联函数,是驾驶风格和节点距离的函数。
记X=[x1,x2,…,xN]T,F(X)=[f(x1),f(x2),…,f(xN)]T,P(t)=[(pij(t))]∈RN×N,H(X)=[H(x1),H(x2),…,H(xN)]T,则时变复杂动态网络G的节点系统动力学方程为:
其中,X为时变复杂动态网络G中节点的状态向量,F(X)为时变复杂动态网络G中节点的动态方程向量,P(t)为时变复杂动态网络G中节点间的耦合矩阵,H(X)为时变复杂动态网络G中节点的内联向量。
在复杂环境模型中,随着节点的运动和环境的变化,节点的位置和状态处于动态变化中,有节点汇入和流出网络,节点间的耦合关系和网络区域函数也随之变化,复杂网络系统随时间不断地演化发展。
所述节点差异化认知模块,就是用复杂环境模型中节点的量gi、度ki、点权si和重要度I(i)共四个参数来表述了网络节点的差异性,并用正态分布图对所有节点进行差异化分析。
所述节点的量gi,用第i节点的结构尺寸表示。
所述节点的度ki,是用与第i节点直接相连的节点数目表示。
所述节点的点权si,表示第i节点所有邻边的边权和。
所述节点的重要度I(i):
I(i)=K(i)+∑jpij(t) (6)
(6)式中,pij(t)为节点间的耦合系数,K(i)为第i节点的度中心性因子:
(7)式中,<k>=∑ki/N,表示模块的平均度;表示模块的平均单位权。
所述层次化认知模块,是采用凝聚算法对复杂环境模型中的节点进行层次划分,实现对自动驾驶汽车复杂环境的层次化、阶梯性认知,操作步骤如下:
第一步,以自动驾驶汽车为中心节点,与中心节点存在耦合关系的节点和中心节点组成内层模块;
第二步,对内层模块的非中心节点进行重要度排序,依次寻找耦合系数最大的点组成中间层模块;
第三步,对中间层模块的节点进行重要度排序,依次寻找耦合系数最大的点组成外层模块;
第四步,其它节点组成边缘层模块。
所述全局风险态势认知模块,是依据熵理论的基本思想,用系统熵和熵变对复杂环境模型的无序程度进行度量,描述整体风险及变化态势,实现对全局共性的状态认知。
所述系统熵:
S=Vn/Θ+D(P)+D(U) (8)
其中,Vn为复杂环境模型的节点数量,Θ为复杂环境模型的网络区域,D(P)表示耦合系数的方差,D(U)为复杂环境模型中节点速度的方差。
所述熵变:
其中,d表示计算相应变量的微分,表示其变化趋势。
根据上述基于复杂网络的自动驾驶汽车的认知系统,本发明提出的自动驾驶汽车的认知方法包括如下步骤:
步骤1)提取纵向驾驶特征参数、横向驾驶特征参数和模式转移特征参数,构造驾驶风格特征矩阵CJ,生成随机森林分类器Rf,将驾驶风格特征矩阵CJ输入随机森林分类器Rf,随机森林分类器Rf的输出驾驶风格类别Kdrive,将驾驶风格识别为激进型、平和型、保守型三类;
步骤2)构造时变复杂动态网络G作为复杂环境模型,用于描述复杂环境整体关联特征,进一步建立复杂环境模型中的节点动力学方程,再组合时变复杂动态网络G中所有节点的特征形成动态方程向量F(X)、时变复杂动态网络G中节点间的耦合矩阵P(t)和节点的内联向量H(X),建立时变复杂动态网络G的节点系统动力学方程,用于描述复杂环境的动态特性;
步骤3)构造复杂环境模型中节点的量gi、度ki、点权si和重要度I(i)四个参数,并用正态分布图对节点进行差异化分析,实现节点差异化认知;
步骤4)采用凝聚算法对复杂环境模型中节点进行层次划分,实现对自动驾驶汽车复杂环境的层次化、阶梯性认知;
步骤5)依据熵理论的基本思想,用系统熵和熵变对复杂环境模型的无序程度进行度量,描述整体风险及变化态势,实现对全局共性的状态认知。
本发明在感知自动驾驶汽车外部环境的基础上,首先,针对个体驾驶行为认知的复杂性问题,依据表示驾驶操控激进程度和模式转移偏好的驾驶特征参数,进行驾驶风格识别;其次,依据复杂环境中运动主体的群体行为特征,在驾驶风格识别的基础上,基于复杂网络,以运动主体为节点,以道路为约束,构造时变复杂动态网络G作为自动驾驶汽车复杂环境模型;最后,对复杂环境模型中的节点进行参数化表述,实现对复杂环境的节点差异化认知,采用凝聚算法对复杂环境模型中的节点进行分层,实现对复杂环境的层次化认知,建立复杂环境模型的无序程度度量方法,实现对复杂环境的全局风险态势认知,从而建立基于复杂网络的自动驾驶汽车复杂环境模型、认知方法及装置,为自动驾驶汽车的安全驾驶和控制策略设计打下了良好的基础。
本发明的有益效果:
1、本发明建立了驾驶风格识别方法,在提取驾驶特征参数的基础上,构造驾驶风格特征矩阵Cj,将驾驶风格特征矩阵CJ输入随机森林分类器Rf,随机森林分类器Rf输出驾驶风格类别Kdrive,实现驾驶风格识别;
2、本发明基于复杂网络理论,以运动主体为节点,构造时变复杂动态网络G作为复杂环境模型,刻画了自动驾驶汽车复杂环境的随机、动态、非线性演化规律,还建立了时变复杂动态网络G的节点系统动力学方程,描述复杂环境的动态特性;
3、本发明构造复杂环境模型中节点的量gi、度ki、点权si和重要度I(i)四个参数,并用正态分布图对节点进行差异化分析,实现对自动驾驶汽车复杂环境的节点差异化认知;
4、本发明以节点耦合关系为依据,采用凝聚算法对复杂环境模型中的节点进行层次划分,实现对自动驾驶汽车复杂环境的层次化、阶梯性认知;
5、本发明构造自动驾驶汽车复杂环境模型的系统熵和熵变对复杂环境模型的无序程度进行度量,描述整体风险及变化态势,实现对自动驾驶汽车复杂环境全局共性的状态认知。
附图说明
图1是驾驶风格识别模块结构流程图。
图2自动驾驶汽车复杂环境模型模块结构流程图。
图3是节点差异化认知模块结构图。
图4是层次化认知模块结构流程图。
图5全局风险态势认知模块结构图。
图6基于复杂网络的自动驾驶汽车认知系统的结构示意图。
具体实施方式
下面结合附图对本发明作进一步说明。
如图1所示,是驾驶风格识别模块结构流程,首先,提取纵向驾驶特征参数、横向驾驶特征参数和模式转移特征参数,所述纵向驾驶特征参数是指有限时窗内的纵向加速度a+、跟弛时距dtime,所述横向驾驶特征参数是指有限时窗内的横向加速度均方根RMS(a_)、横摆角速度标准差SD(r),所述模式转移特征参数有限时窗内的左换道状态转移概率P(lc)和右换道状态转移概率P(rc);接着,构造驾驶风格特征矩阵CJ,所述驾驶风格特征矩阵CJ,是指由纵向驾驶特征参数、横向驾驶特征参数和模式转移特征参数构成的三维六自由度特征矩阵;然后,将驾驶风格特征矩阵CJ输入随机森林分类器Rf,输出驾驶风格类别Kdrive,所述驾驶风格类别Kdrive包括激进型、平和型、保守型三类,实现了驾驶风格识别。
如图2所示,自动驾驶汽车复杂环境模型模块结构流程,首先,构造时变复杂动态网络G作为复杂环境模型:G=(V,B,X,P,Θ);接着,将时变复杂动态网络G等效为具有N个节点的连续时间动态系统,建立节点的动力学方程:
然后,根据节点的动力学方程,建立节点系统动力学方程:最后将节点系统动力学方程输入复杂环境模型,用于描述复杂环境的动态特性。
如图3所示,节点差异化认知模块结构,联合使用复杂环境模型中节点的量gi、度ki、点权si和重要度I(i)共四个参数来表述了网络节点的差异性,并用正态分布图对所有节点进行差异化分析,实现对节点的差异化认知。
如图4所示,层次化认知模块结构流程,采用凝聚算法,对复杂环境模型中的节点进行层次划分,将第杂环境模型中的节点依次划分并分别组成内层模块、中间层模块、外层模块、边缘层模块,实现对复杂环境的层次化认知。
如图5所示,全局风险态势认知模块结构,联合使用系统熵:S=Vn/Θ+D(P)+D(U)和熵变:对复杂环境模型的无序程度进行度量,描述整体风险及变化态势,实现对复杂环境全局共性的状态认知。
如图6所示,基于复杂网络的自动驾驶汽车的认知系统包括驾驶风格识别模块,复杂环境模型模块,节点差异化认知模块,层次化认知模块,全局风险态势认知模块。所述驾驶风格识别模块将识别的节点驾驶风格输入复杂环境模型模块,用于构造节点间的内联函数H(xj);所述节点差异化认知模块、层次化认知模块、全局风险态势认知模块接收复杂环境模型模块中V,B,X,P,Θ参数的数据,分别实现节点差异化认知、层次化认知和全局风险态势认知。
一种基于复杂网络的自动驾驶汽车的认知方法包括如下步骤:
步骤1)提取纵向驾驶特征参数、横向驾驶特征参数和模式转移特征参数,构造驾驶风格特征矩阵CJ,生成随机森林分类器Rf,将驾驶风格特征矩阵CJ输入随机森林分类器Rf,随机森林分类器Rf的输出驾驶风格类别Kdrive,将驾驶风格识别为激进型、平和型、保守型三类,具体步骤为:
(A)提取纵向驾驶特征参数、横向驾驶特征参数和模式转移特征参数;
(B)构造驾驶风格特征矩阵CJ;
(C)生成随机森林分类器Rf;
(D)将驾驶风格特征矩阵CJ输入随机森林分类器Rf,随机森林分类器Rf的输出驾驶风格类别Kdrive,将驾驶风格识别为激进型、平和型、保守型三类;
步骤2)构造时变复杂动态网络G作为复杂环境模型,用于描述复杂环境整体关联特征,进一步建立复杂环境模型中的节点动力学方程,再组合时变复杂动态网络G中所有节点的特征形成动态方程向量F(X)、时变复杂动态网络G中节点间的耦合矩阵P(t)和节点的内联向量H(X),建立时变复杂动态网络G的节点系统动力学方程,用于描述复杂环境的动态特性,具体步骤为:
(A)构造时变复杂动态网络G作为复杂环境模型;
(B)基于复杂环境模型中的参数,建立复杂环境模型中的节点动力学方程;
(C)基于节点动力学方程,建立时变复杂动态网络G的节点系统动力学方程,用于描述复杂环境的动态特性;
步骤3)构造复杂环境模型中节点的量gi、度ki、点权si和重要度I(i)四个参数,并用正态分布图对所有节点进行差异化分析,实现节点差异化认知,具体步骤为:
(A)构造复杂环境模型中节点的量gi、度ki、点权si和重要度I(i)四个参数;
(B)用上述四个参数分别描述复杂环境模型中所有节点;
(C)用正态分布图对所有节点进行差异化分析,实现节点的差异化认知;
步骤4)采用凝聚算法对复杂环境模型中节点进行层次划分,实现对自动驾驶汽车复杂环境的层次化、阶梯性认知,具体步骤为:
(A)以自动驾驶汽车为中心节点,与中心节点存在耦合关系的节点和中心节点组成内层模块;
(B)对内层模块的非中心节点进行重要度排序,依次寻找耦合系数最大的点组成中间层模块;
(C)对中间层模块的节点进行重要度排序,依次寻找耦合系数最大的点组成外层模块;
(D)其它节点组成边缘层模块;
步骤5)依据熵理论的基本思想,用系统熵和熵变对复杂环境模型的无序程度进行度量,描述整体风险及变化态势,实现对全局共性的状态认知,具体步骤为:
(A)使用系统熵:S=Vn/Θ+D(P)+D(U)对复杂环境模型的无序程度进行度量,描述复杂环境整体风险;
(B)使用熵变:dS=d(Vn/Θ)+d(D(P))+d(D(U))对复杂环境模型的无序程度进行度量,描述复杂环境整体风险的变化态势,实现对全局共性的状态认知。
本发明的具体实施例:使用Python编写驾驶风格识别模块,基于Scikit-leam第三方机器学习库构造驾驶风格特征矩阵CJ,生成随机森林分类器Rf,实现驾驶风格识别;使用MATLAB/Simulink编写数学模型构成复杂环境模型模块;使用Python编写节点差异化认知模块、层次化认知模块、全局风险态势认知模块,在PyTorch框架中实现自动驾驶汽车复杂环境的差异化、层次化、全局风险态势认知方法;基于Ubuntu系统编写MATLAB、Scikit-learn和PyTorch接口,在工业控制计算机中安装和配置,实现基于复杂网络的自动驾驶汽车复杂环境模型、认知方法及装置。
上文所列出的一系列的详细说明仅仅是针对本发明的可行性实施方式的具体说明,它们并非用以限制本发明的保护范围,凡未脱离本发明技术所创的等效方式或变更均应包含在本发明的保护范围之内。