一种行人与非机动车微观行为建模方法
未命名
09-29
阅读:83
评论:0

1.本公开涉及自动驾驶仿真技术领域,具体涉及一种行人与非机动车微观行为建模方法。
背景技术:
2.自动驾驶技术是未来交通的发展趋势及核心,自动驾驶仿真技术可以为自动驾驶汽车提供高保真、高标准的虚拟仿真环境,是推进自动驾驶技术研发和测试中不可或缺的一部分。然而,现有的自动驾驶仿真平台如apollo、carla、51sim-one等,往往更加侧重车辆动力学仿真、车辆传感器仿真以及仿真场景中各类物体的建模仿真,对于交通参与者行为仿真关注较少,其背景交通流大多通过导入交通流仿真平台如vissim、sumo中的数据。一方面这些交通仿真平台往往服务于交通工程领域,并不适用于自动驾驶仿真测试,另一方面都是基于规则的逻辑框架生成的交通流,将交通参与者之间的交互过程简单的划分为跟驰、换道、避让等基本交互行为,对于非车辆的交通参与者与车辆的冲突过程仅通过赋予不同的优先权来规避,交通参与者运行状态理想,优先权明确,无法生成能够与自动驾驶汽车产生较为复杂交互的背景交通参与者,对自动驾驶汽车的决策控制算法训练和测试意义有限。
3.同时针对目前大量的道路交通环境中涵盖着机动车、行人、非机动车等交通参与者的现况,其中行人与骑行者高效灵活的行为运动方式使得城市的交通场景更为复杂且随机、更为难以建模,车辆与行人和非机动车的交互也更加频繁。自上世纪八十年代以来,对行人运动进行建模分析引起许多学者的关注,并相继提出了多种描述行人运动的模型。现有的用于描述行人运动的微观模型主要有社会力模型、元胞自动机模型、磁力模型等,其中社会力模型能在一定程度上描述行人与交通环境之间的作用机理,因此应用广泛。但现有的基于社会力的行人模型仍然存在一定的不足,首先是未考虑车辆对于行人运动行为的影响,或者仅仅将车辆视为障碍物进行考虑,没有考虑行人与机动车驾驶员之间的博弈行为。同时社会力模型没有考虑行人在复杂场景的决策行为,仅凭由力学原理构建的模型难以实现对行人与交通环境微观交互机理的精确描述。而对于非机动车微观模型,目前研究方法与研究体系尚不成熟,一般借鉴机动车或者行人模型中的方法来描述其行为。因此,亟需为自动驾驶仿真软件构建一种能够准确描述城市交通场景下行人和非机动车微观交通行为的仿真模型,为自动驾驶汽车提供真实丰富的道路交通环境,以满足自动驾驶汽车的决策控制算法的训练和测试环境的真实性需求,对加速自动驾驶汽车的落地等方面均具有重要意义。
技术实现要素:
4.针对上述问题,本公开的目的是提供一种行人和非机动车微观行为建模方法,通过设计通用框架,贴近人类认知过程,来模拟城市行人和非机动车的交通行为,为自动驾驶汽车提供真实丰富的道路交通环境,以满足其训练和仿真测试的真实性需求。
5.为实现上述目的,本公开采取以下技术方案:
6.本公开第一方面提供的一种行人与非机动车微观行为建模方法,包括:
7.根据道路拓扑结构确定被控交通参与者的可执行的离散目标点集合,根据所述可执行的离散目标点集合中各离散点的连通关系构建有向图并确定有向图的邻接矩阵,所述被控交通参与者包括行人与非机动车;
8.按照以下步骤从所述可执行的离散目标点集合中根据被控交通参与者到达的当前目标点确定下一目标点并设定目标速度:利用根据所述有向图的邻接矩阵得到的与当前目标点具有连通关系的目标点构建候选目标点集合,将所述候选目标点集合中处于交叉路口内且交通信号灯为红灯的目标点从候选目标点集合中删除,得到更新后的候选目标点集合,若所述更新后的候选目标点集合中无元素,则将当前目标点选择为下一目标点并设定目标速度,若所述更新后的候选目标点集合中存在元素,则将所述更新后的候选目标点集合中安全风险最小的目标点选择为下一目标点并设定目标速度;
9.根据所述下一目标点、所述目标速度和当前交通参与者的状态计算被控交通参与者所受的社会力合力,所述被控交通参与者所受的社会力合力包括行人和非机动车对被控交通参与者的社会力、车辆对被控交通参与者的社会力以及被控交通参与者在交通场景中受到的自驱力;所述车辆对被控交通参与者的社会力是通过结合车辆当前位置至未来时刻位置所涵盖的区域投影至被控交通参与者目标点坐标系下形成抽象的车辆形状,同时将横纵向距离较近的车辆合并抽象为一辆车,分开计算车辆对被控交通参与者的横向社会力和纵向社会力,并根据被控交通参与者相对车辆的位置约束横向社会力和纵向社会力的大小所得到的参数;
10.根据所述被控交通参与者所受的社会力合力更新下一时刻的被控交通参与者的状态。
11.可选地,所述目标点坐标系的定义为:若被控交通参与者从初始点p0开始运动,当前目标点为p1,则目标点坐标系的原点为p0,y轴及其正方向为从p0到p1的向量,x轴由y轴顺时针旋转π/2得到;当被控交通参与者选取下一目标点p2时,同步更新目标点坐标系,其原点更新为被控交通参与者当前目标点p1,y轴及其正方向为从p1到p2的向量,x轴由y轴顺时针旋转π/2得到。
12.可选地,设由在被控交通参与者一定感知范围内的行人和非机动车在所述目标点坐标系下的状态构成的集合为状态集合s
sur
,所述行人和非机动车对被控交通参与者的社会力f
sur
为在所述目标点坐标系下的值,按照下式计算得到:
[0013][0014][0015][0016]
其中,n是状态集合s
sur
中行人和非机动车的数量,是状态集合s
sur
中行人或非机动车的编号,a
sur
是第一强度系数,b
sur
是第一距离系数,是状态集合s
sur
中行人或非机动
车对被控交通参与者的各向异性系数,是状态集合s
sur
中行人或非机动车的椭圆力场短半轴长度,β是各向异性参数,是状态集合s
sur
中行人或非机动车与被控交通参与者位置的连线方向与该被控交通参与者速度方向的夹角,是状态集合s
sur
中行人或非机动车在当前时刻的速度,是状态集合s
sur
中行人或非机动车在当前时刻的位置,p是被控交通参与者在当前时刻的位置,δt是预测时间,以和为焦点,做经过p的椭圆,为该椭圆上位于p处方向朝外的法向向量。
[0017]
可选地,设由在被控交通参与者一定感知范围内的车辆在所述目标点坐标系下的状态构成的集合为状态集合s
veh
,所述车辆对被控交通参与者的社会力f
veh
为在所述目标点坐标系下的值,按照以下步骤得到:
[0018]
根据状态集合s
veh
中各车辆的当前状态计算预测时间t
p
后状态集合s
veh
中各车辆外形的角点坐标,并更新各车辆的状态,得到更新后的状态集合s
′
veh
;
[0019]
遍历更新后的状态集合s
′
veh
中的各车辆,进行以下车辆形状合并判断:若相邻车辆之间的横向最短距离和纵向最短距离均小于设定的距离阈值,则认为相邻车辆满足形状合并条件,将满足形状合并条件的相邻车辆合并为一个车辆群,并计算车辆群的状态,后续将单个车辆群视为一个车辆参与计算,否则,认为车辆不满足形状合并条件,不对其进行合并处理;从而得到经过车辆形状合并判断的状态集合;
[0020]
按照下式计算状态集合中所有车辆对被控交通参与者的横向力
[0021][0022][0023][0024][0025][0026]
其中,是状态集合中车辆对被控交通参与者的横向力;m为状态集合中所含车辆的数量;a
veh
是第二强度系数;b
veh
是第二距离系数;是被控交通参与者所能承受的车辆对其社会力的上限值;是被控交通参与者与状态集合中车辆的横向距离;是状态集合中车辆对被控交通参与者的各向异性系数;是状态集合中车辆对被控交通参与者的横向方向系数,用于计算的方向,当被控交通参与者在状态集合中车辆左侧时取-1,右侧时取1;是状态集合中车辆对被控交通参与者的衰减系数,用于约束的大小,当被控交通参与者相对于状态集合中车辆的横向位置的绝对值小于
时,取1,当大于且小于时,按比例衰减,和分别为状态集合中车辆的长和宽,当大于一定距离时,认为被控交通参与者不受状态集合中车辆带来的横向力的影响,取0;是状态集合中车辆的形状轮廓的横向外延距离,用于计算被控交通参与者与车辆边界的纵向距离,是状态集合中车辆的形状轮廓的纵向外延距离,用于计算被控交通参与者与车辆的横向距离;是被控交通参与者相对于状态集合中车辆的纵向位置;
[0027]
按照下式计算状态集合中所有车辆对被控交通参与者的纵向力
[0028][0029][0030][0031][0032]
其中,是状态集合中车辆对被控交通参与者的纵向力;是状态集合中车辆的纵向方向系数,用于计算的方向,当被控交通参与者在状态集合中车辆的下方时取-1,上方时取1;是被控交通参与者与状态集合中车辆的纵向距离;
[0033]
根据状态集合中所有车辆对被控交通参与者的横向力和所有车辆对被控交通参与者的纵向力得到车辆对被控交通参与者的社会力f
veh
。
[0034]
可选地,设所述更新后的状态集合s
′
veh
中车辆的状态包括车辆的横坐标纵坐标速率、朝向角长和宽其中速率保持不变,其余参数的计算公式如下:
[0035][0036][0037][0038]
[0039][0040]
其中,分别为更新后车辆的形状在当前时刻和预测时间t
p
四个角点的横坐标,分别为更新后车辆的形状在当前时刻和预测时间t
p
四个角点的纵坐标。
[0041]
可选地,设需要进行合并处理构成的单个车辆群的状态为包括车辆群的横坐标x
″
、纵坐标y
″
、朝向角长l
″
和宽w
″
,按照下式计算得到:
[0042][0043][0044][0045][0046][0047][0048]
其中,分别为车辆群中车辆的横坐标、纵坐标、朝向角、长和宽。
[0049]
可选地,所述被控交通参与者在交通场景中受到的自驱力f
self
为在所述目标点坐标系下的值,按照以下步骤得到:
[0050]
按照下式计算原始自驱力
[0051][0052]
其中,是当前时刻被控交通参与者的目标点pc中的目标速度,是被控交通参与者的当前位置指向目标点pc的单位向量,v是被控交通参与者在当前时刻的速度,τ是调整时间,是被控交通参与者在交通场景中受到的原始横向自驱力,是被控交通参与者在交通场景中受到的原始纵向自驱力;
[0053]
按照下式对原始自驱力进行修正得到被控交通参与者在交通场景中受到的自驱力f
self
:
[0054]
[0055][0056][0057]
其中,sign(
·
)为符号函数,当数值大于0时取1,等于0时取0,小于0时取-1;和分别为被控交通参与者在交通场景中受到的横向自驱力和纵向自驱力;为车辆纵向力的阈值,由与车辆边界的安全距离d
safe
计算得到:a
veh
是第二强度系数,b
veh
是第二距离系数。
[0058]
可选地,根据所述被控交通参与者所受的社会力合力更新下一时刻的被控交通参与者的状态,包括:
[0059]
按照下式计算当前时刻被控交通参与者的加速度a
t
:
[0060][0061]
其中,f
t
是被控交通参与者t时刻受到的社会力合力,m是被控交通参与者的质量;
[0062]
按照下式计算被控交通参与者下一时刻的状态:
[0063]vt+1
=v
t
+a
t
·
t
[0064][0065]
其中,p
t
是被控交通参与者当前时刻的位置,v
t
是被控交通参与者当前时刻的速度;
[0066]
按照如下公式对被控交通参与者在下一时刻的状态进行修正:
[0067][0068][0069][0070][0071]
其中,是被控交通参与者的横向最大偏移距离,和分别是修正后被控交通参与者在下一时刻的横向位置和纵向位置,p
x,t
和p
y,t
分别是被控交通参与者在当前时刻的横向位置和纵向位置;
[0072]
将修正后的被控交通参与者在下一时刻的状态转换至大地坐标系下的值。
[0073]
本公开第二方面实施例提供的一种行人与非机动车微观行为建模装置,包括:
[0074]
第一模块,被配置为根据道路拓扑结构确定被控交通参与者的可执行的离散目标点集合,根据所述可执行的离散目标点集合中各离散点的连通关系构建有向图并确定有向图的邻接矩阵,所述被控交通参与者包括行人与非机动车;
[0075]
第二模块,被配置为按照以下步骤从所述可执行的离散目标点集合中根据被控交通参与者到达的当前目标点确定下一目标点并设定目标速度:利用根据所述有向图的邻接矩阵得到的与当前目标点具有连通关系的目标点构建候选目标点集合,将所述候选目标点集合中处于交叉路口内且交通信号灯为红灯的目标点从候选目标点集合中删除,得到更新后的候选目标点集合,若所述更新后的候选目标点集合中无元素,则将当前目标点选择为下一目标点并设定目标速度,若所述更新后的候选目标点集合中存在元素,则将所述更新后的候选目标点集合中安全风险最小的目标点选择为下一目标点并设定目标速度;
[0076]
第三模块,被配置为根据所述下一目标点、所述目标速度和当前交通参与者的状态计算被控交通参与者所受的社会力合力,所述被控交通参与者所受的社会力合力包括行人和非机动车对被控交通参与者的社会力、车辆对被控交通参与者的社会力以及被控交通参与者在交通场景中受到的自驱力;所述车辆对被控交通参与者的社会力是通过结合车辆当前位置至未来时刻位置所涵盖的区域投影至被控交通参与者目标点坐标系下形成抽象的车辆形状,同时将横纵向距离较近的车辆合并抽象为一辆车,分开计算车辆对被控交通参与者的横向社会力和纵向社会力,并根据被控交通参与者相对车辆的位置约束横向社会力和纵向社会力的大小所得到的参数;
[0077]
第四模块,被配置为根据所述被控交通参与者所受的社会力合力更新下一时刻的被控交通参与者的状态。
[0078]
本公开第四方面实施例提供的一种计算机可读存储介质,所述计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行根据本公开第一方面任一实施例所述的行人与非机动车微观行为建模方法。
[0079]
本公开的特点及有益效果:
[0080]
本公开提出的一种行人与非机动车微观行为建模方法,其特点在于基于人类的认知过程,与传统的交通流领域中的模型相比,整体逻辑架构清晰明了,易于拓展,具体表现在:其一为构建的交通参与者可执行目标点集时仅考虑地图拓扑信息,简单高效。其二为建立了被控交通参与者选择下一目标点和设定目标速度模块,相较于现有的模型仅通过简单规则描述交通参与者决策的不足,结合被控交通参与者当前交通场景下的安全风险对于其决策的影响,更为接近实际情况。其三为对现有社会力模型进行了修正,通过坐标转换,结合车辆未来轨迹将其外轮廓投影至行人目标点坐标系下形成新的外轮廓,同时合并横纵向距离较近的车辆为同一个车辆群,分开计算车辆对被控交通参与者的横向社会力和纵向社会力,并根据被控交通参与者相对车辆的位置约束横纵向社会力的大小,为防止更新状态时被控交通参与者横向偏移过大以及纵向位置减小等问题,修正了被控交通参与者状态更新方式。
[0081]
综上所述,本公开提出的建模方法仅用少数参数就能描述被控交通参与者的复杂动态的运动,更加符合真实交通场景。
附图说明
[0082]
图1是本公开第一方面实施例提供的行人与非机动车微观行为建模方法的流程图。
[0083]
图2是本公开第一方面实施例中用于构建离散目标点集的示意图。
[0084]
图3是本公开第一方面实施例中用于计算车群的示意图。
[0085]
图4是本公开第一方面实施例中用于计算车辆横纵向力的示意图。
[0086]
图5是本公开第三方面实施例提供的电子设备的结构示意图。
具体实施方式
[0087]
为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细描述。应当理解,此处所描述的具体实施例仅仅用于解释本技术,并不用于限定本技术。
[0088]
相反,本技术涵盖任何由权利要求定义的在本技术精髓和范围上做的替代、修改、等效方法以及方案。进一步,为了使公众对本技术有更好的了解,在下文对本技术的细节描述中,详尽描述了一些特定的细节部分。对本领域技术人员来说没有这些细节部分的描述也可以完全理解本技术。
[0089]
如图1所示,本公开第一方面实施例提供的一种行人与非机动车微观行为建模方法,包括以下步骤:
[0090]
1)确定可执行的离散目标点集合
[0091]
根据道路拓扑结构确定被控交通参与者可执行的离散目标点集合,被控交通参与者包括行人与非机动车,根据可执行的离散目标点集合中各离散点的连通关系构建有向图并确定邻接矩阵。
[0092]
作为本技术的一个实施例,步骤1)的具体实现过程如下:
[0093]
本实施例中被控交通参与者可执行的离散目标点集合的生成不考虑静态障碍物和动态交通参与者的信息,只根据含车道线信息的地图,采用道路结构、路面标识、交通法规等交通驾驶的静态信息,结合被控交通参与者,制定其可执行的离散目标点集合。制定该离散目标点集合需要获取的已知信息为地图道路中心线信息c={ci},其中ci为地图中编号为i的车道中心线信息,ci=[p
lane
,j
previous
,j
next
]i,p
lane
是车道中心线离散点的集合,为车道中心线中编号为j的离散点,是车道中心线中离散点的横、纵坐标,i
inter
为车道是否处于交叉路口内的标记,当i
inter
=0时,表示车道未处于交叉路口内,当i
inter
=1时,表示车道处于交叉路口内,j
previous
为车道中心线之前的车道编号集合,j
next
为车道中心线之后的车道编号集合。针对图2所示交叉路口场景示例,已知起点非机动车道为终点非机动车道为的后续车道编号集合后续车道为的车道编号集合遍历和中车道编号集合,计算每两条车道的中心线的最小值,返回最小值为0的车道集合其中的终点和的起点修正为二者的交点,图2中为点p
34
。被控交通参与者的可行车道集合为将各车道中心线离散点的集合p
lane
存为被控交通参与者可执行的离散目标点集合p={p1,p2…
},各离散目标点的连通关系存为有向图,并构建有向图的邻接矩阵为a={a
ab
},当a
ab
=0,表示离散目标点pa与离散目标点pb不存在连通关系,当a
ab
=1,表示离散目标点pa与离散目标点pb存在连通关系。
[0094]
2)选择下一目标点并设定目标速度
[0095]
按照以下步骤从步骤1)确定的可执行的离散目标点集合中根据被控交通参与者到达的当前目标点确定下一目标点并设定目标速度:利用根据有向图的邻接矩阵得到的与当前目标点具有连通关系的目标点构建候选目标点集合,将候选目标点集合中处于交叉路口内且交通信号灯为红灯的目标点从候选目标点集合中删除,得到更新后的候选目标点集合,若更新后的候选目标点集合中无元素,则将当前目标点选择为下一个目标点并设定目标速度,若更新后的候选目标点集合中存在元素,则将更新后的候选目标点集合中安全风险最小的目标点选择为下一个目标点并设定目标速度。
[0096]
作为本技术的一个实施例,步骤2)的具体实现过程如下:
[0097]
被控交通参与者的可行离散目标点集合p={p1,p2…
},当被控交通参与者到达当前目标点pc一定范围内时,按照以下步骤选择下一个目标点p
c+1
:根据邻接矩阵a可得与当前目标点pc具有连通关系的候选目标点集合p
next
={p
i,
},遍历p
next
中各目标点,若目标点所在车道的标记设其对应的交叉路口内交通信号灯标识为当当时,表示为非红灯,设定目标点pi的速度v
target
=v
mean
,当时,表示为红灯,设定目标点pi的速度v
target
=0,并且删除pc与pi的连通关系,即将候选目标点集合p
next
中目标速度v
target
为0的目标点删除;若目标点pi所在车道的标记设定目标点pi的速度v
target
=v
mean
,v
mean
为被控交通参与者运动的平均速度,通常非机动车取v
mean
=3.0m/s,行人取v
mean
=1.0m/s。设更新之后的目标点集合为若无元素,则下一目标点p
c+1
依旧取pc,若有元素,则考虑当前时刻沿待选目标点集中各目标点执行的安全风险值,取安全风险最小的目标点为下一目标点,计算公式为:
[0098]
p
c+1
=pk
*
[0099][0100]
其中,为被控交通参与者到达编号为k的目标点的安全风险值,k
*
为最小安全风险对应的目标点编号。
[0101]
进一步地,达到目标点安全风险值可通过目前已有的计算车辆行车风险方法计算得到,典型的驾驶风险指标如碰撞时间,计算被控交通参与者到达目标点的行进路线与周围机动车以当前速度的行进路线产生的冲突点,以所有车辆到达冲突点的时间中最短的时间的倒数作为该被控交通参与者到达目标点的安全风险值。
[0102]
3)计算交通参与者所受的社会力合力
[0103]
根据下一目标点、目标速度和当前交通参与者的状态计算被控交通参与者所受的社会力合力,该被控交通参与者所受的社会力合力包括行人和非机动车对被控交通参与者的社会力、车辆对被控交通参与者的社会力以及被控交通参与者在交通场景中受到的自驱力;其中,车辆对被控交通参与者的社会力是通过结合车辆当前位置至未来时刻位置所涵盖的区域投影至被控交通参与者目标点坐标系下形成抽象的车辆形状,同时将横纵向距离较近的车辆合并抽象为一辆车,分开计算车辆对被控交通参与者的横向社会力和纵向社会力,并根据被控交通参与者相对车辆的位置约束横向社会力和纵向社会力的大小所得到的参数。
[0104]
作为本技术的一个实施例,步骤3)的具体实现过程如下:
[0105]
本实施例采用改进的社会力模型来计算被控交通参与者所受的社会力合力f,该社会力合力由三个分量组成:交通环境中的行人和非机动车对被控交通参与者的社会力f
sur
、车辆对被控交通参与者的社会力f
veh
,以及被控交通参与者在交通场景中受到的自驱力f
self
,即满足:f=f
sur
+f
veh
+f
self
。其中,本公开实施例通过引入车辆对被控交通参与者的社会力f
veh
,仅用少量参数即可描述被控交通参与者在复杂动态的交通环境中的运动,使建模结果更加符合真实交通场景。现对社会力合力f的计算过程按照坐标系转换、计算行人和非机动车对被控交通参与者的社会力f
sur
、计算车辆对被控交通参与者的社会力f
veh
及计算被控交通参与者在交通场景中受到的自驱力f
self
的顺序进行详细描述。
[0106]
3.1)坐标系转换
[0107]
设被控交通参与者在大地坐标系g(x,y)下的状态集合为sg,表达式如下:
[0108][0109]
其中,xg,yg分别为被控交通参与者在大地坐标系g(x,y)下的横纵坐标,v为运动速率(为标量),为朝向角。
[0110]
设周围交通参与者在大地坐标系g(x,y)下的状态集合为:
[0111][0112][0113]
其中,为周围行人和非机动车在大地坐标系g(x,y)下的状态集合,由在被控交通参与者一定感知范围内的行人和非机动车在大地坐标系g(x,y)下的状态组成,组成,分别为编号为的行人或非机动车在大地坐标系下的横纵坐标、运动速度、朝向角;为周围车辆在大地坐标系g(x,y)下的状态集合,由在被控交通参与者一定感知范围内的车辆在大地坐标系g(x,y)下的状态组成,组成,分别为编号为q的车辆在大地坐标系下的横纵坐标、运动速度、朝向角、长、宽。
[0114]
需要说明的是,社会力合力f及其三个分量均在目标点坐标系r(x,y)下进行计算,将目标点坐标系r(x,y)定义为:若被控交通参与者从初始点p0开始运动,当前目标点为p1,则目标点坐标系r(x,y)的原点为p0,y轴及其正方向为从p0到p1的向量,x轴由y轴顺时针旋转π/2得到;当被控交通参与者根据步骤2)中规则选取下一目标点p2时,同步更新目标点坐标系r(x,y),其原点更新为被控交通参与者当前目标点p1,y轴及其正方向为从p1到p2的向量,x轴由y轴顺时针旋转π/2得到。于是被控交通参与者以及周围交通参与者的状态均需要转化为目标坐标系r(x,y)下进行计算和更新,得到被控交通参与者的状态集合周围行人和/或非机动车的状态集合和周围车辆的状态集合转换公式如下:
[0115][0116]
其中,xg、yg、是交通参与者(包括被控交通参与者以及被控交通参与者周围的车辆、行人和非机动车)在大地坐标系g(x,y)下的横纵坐标和朝向角,r
x
、ry是目标点坐标系r(x,y)的原点在大地坐标系下的横纵坐标,是目标点坐标系r(x,y)的x轴相对于大地坐标系x轴的旋转角度,xr、yr、是交通参与者在目标点坐标系r(x,y)下的横纵坐标和朝向角。若无特殊声明,下文中出现的x,y,f
sur
,f
self
,f
veh
,s
sur
,s
veh
等均为目标点坐标系r(x,y)下的值。
[0117]
3.2)计算行人和非机动车对被控交通参与者的社会力f
sur
[0118]
由于本公开实施例的建模方法主要聚焦于交通参与者与机动车的交互性,因此不考虑运动的行人和非机动车的几何形态的影响,而是直接以其中心位置表征社会力的作用位置,遍历周围行人和/或非机动车的状态集合s
sur
,按照下式计算行人和非机动车对被控交通参与者的社会力f
sur
:
[0119][0120][0121][0122]
其中,f
sur
是被控交通参与者受到的作为行人和非机动车的社会力的合力,n是在被控交通参与者一定感知空间内的行人和非机动车的数量,即状态集合s
sur
中行人和非机动车的数量,a
sur
是第一强度系数,b
sur
是第一距离系数,是状态集合s
sur
中行人或非机动车对被控交通参与者的各向异性系数,是状态集合s
sur
中行人或非机动车的椭圆力场短半轴长度,β是各向异性参数,β∈[0,1],是状态集合s
sur
中行人或非机动车与被控交通参与者位置的连线方向与被控交通参与者速度方向的夹角,是状态集合s
sur
中行人或非机动车在当前时刻的速度,是状态集合s
sur
中行人或非机动车在当前时刻的位置,p是被控交通参与者在当前时刻的位置,δt是预测时间,以和为焦点,做经过p的椭圆,为该椭圆上位于p处方向朝外的法向向量。
[0123]
3.3)计算车辆对被控交通参与者的社会力f
veh
[0124]
3.3.1)在本模型中,设所有车辆的外形轮廓均为长方形,为归一化处理以及简化计算复杂度,考虑车辆从当前时刻位置到预测时刻位置所涵盖的区域,将其形状投影至目标点坐标系,按照以下步骤修正车辆形状:
[0125]
3.3.1.1)遍历周围车辆的状态集合s
veh
,根据车辆当前的位置速度朝向角以及长宽计算当前时刻车辆形状的四个角点坐标,计算
公式如下:
[0126][0127]
其中,分别是车辆的右后方、右前方、左后方、左前方四个角点的坐标。
[0128]
3.3.1.2)考虑到真实情况,行人会对车辆未来轨迹进行预测而避免与车辆发生碰撞冲突,因此在本模型中同样引入预测机制,避免被控交通参与者与车辆发生碰撞。具体方法为:
[0129]
计算车辆未来时刻四个角点的坐标:采用匀速递推的方式,以t
p
为预测时间,计算预测时间t
p
后车辆的位置为:
[0130][0131][0132]
利用步骤3.3.1.1)中的公式可计算出预测时间t
p
后的车辆外形四个角点的坐标
[0133]
3.3.1.3)按照下式更新周围车辆的状态集合s
veh
中各车辆的状态,得到更新后的周围车辆状态集合s
′
veh
:
[0134][0135][0136][0137][0138][0139]
其中,分别为更新后车辆的横纵坐标、朝向角、长
和宽,分别为更新后车辆在当前时刻和未来时刻四个角点的横坐标,分别为更新后车辆在当前时刻和未来时刻四个角点的纵坐标,各车辆的速率保持不变,则得到更新后的周围车辆状态集合s
′
veh
。
[0140]
3.3.2)车辆形状合并
[0141]
如图3所示,由于在本模型中车辆的形状并非真正的形状,而是考虑预测信息和投影目标点坐标系后的抽象形状,其形状一定比真正的车辆形状大,因此若由步骤3.3.1)修正后得到的车辆形状与其他车辆形状重叠,或相邻车辆形状间的距离未超过设定距离阈值,说明在真实情况下车辆相距较近,车辆与车辆之间的间隔不支持行人或者非机动车穿行,直接计算车辆对被控交通参与者产生的社会力会导致其穿行,这显然不符合实际交通场景,同时若车辆偏多,计算社会力需要消耗大量计算资源,计算效率第,因此为符合真实情况以及提高计算效率,可将这些车辆视为一个车辆群,按一辆车进行计算,步骤如下:
[0142]
若相邻车辆之间的横向最短距离小于横向距离阈值d
x
且相邻两车辆之间的横向最短距离小于纵向距离阈值dy,则认为相邻车辆满足形状合并条件,将满足形状合并条件的相邻车辆合并为一个车辆群,并计算车辆群的状态,后续将单个车辆群视为一个车辆参与计算,否则,认为车辆不满足形状合并条件,不对其进行合并处理;从而得到经过车辆形状合并判断的状态集合该状态集合中的车辆包含经过合并处理得到的车辆群和无需进行合并处理的车辆,其中,设需要进行合并处理构成的单个车辆群的状态为,包括车辆群的横坐标x
″
、纵坐标y
″
、朝向角长l
″
和宽w
″
,其参数按照下式计算得到:
[0143][0144][0145][0146][0147][0148][0149]
其中,分别为车辆群中车辆的横坐标、纵坐标、朝向角、长和宽。针对图3中合并车辆的实例,已知行人视野域中的三辆机动车veh1,veh2,veh3的状态信息,通过3.3.1)中步骤更新其长宽,更新后的各车辆形状如图3中虚线所示,其中veh1和veh2横纵向距离d
x
,dy符合合并条件,因此veh1,veh2视为一个车辆群,合并后车辆群的外轮廓如
图3中黑色实线所示。
[0150]
3.3.3)计算车辆对被控交通参与者的社会力f
veh
[0151]
3.3.3.1)计算被控交通参与者相对于车辆的横纵坐标:
[0152][0153][0154]
其中x,y是被控交通参与者的横纵坐标,是中车辆的横纵坐标,是被控交通参与者相对于车辆的横纵坐标。
[0155]
3.3.3.2)按照下式计算所有车辆对被控交通参与者的横向力
[0156][0157][0158][0159][0160][0161]
其中,是状态集合中车辆对被控交通参与者的横向力,a
veh
是第二强度系数,b
veh
是第二距离系数,是被控交通参与者所能承受的车辆对其社会力的上限值,是被控交通参与者与状态集合中车辆的横向距离,是状态集合中车辆对被控交通参与者的各向异性系数,参照步骤3.2)中的计算公式计算得到,是状态集合中车辆对被控交通参与者的横向方向系数,用于计算横向力的方向,当被控交通参与者在状态集合中车辆左侧时取-1,右侧时取1,是状态集合中车辆对被控交通参与者的衰减系数,用于约束横向社会力的大小,当被控交通参与者相对于状态集合中车辆的横向位置的绝对值小于时,取1,当大于且小于时,按比例衰减,为状态集合中车辆的长,当大于一定距离时,认为被控交通参与者不受状态集合中车辆带来的的横向社会力的影响,取0,是状态集合中车辆的形状轮廓的横向外延距离,用于计算被控交通参与者与车辆边界的纵向距离,一般地,可取1m~2m,是状态集合中车辆的形状轮廓的纵向外延距离,用于计算被控交通参与者与车辆的横向距离,一般地,可取为2m~3m。
[0162]
3.3.3.3)按照下式计算所有车辆对被控交通参与者的纵向力
[0163][0164][0165][0166][0167]
其中,是状态集合中车辆对被控交通参与者的纵向力,是中车辆的纵向方向系数,用于计算纵向力的方向,当被控交通参与者在中车辆的下方时取-1,上方时取1,是被控交通参与者与中车辆的纵向距离。
[0168]
如图4所示,展示了和以及交通参与者α和交通参与者β与车辆的横纵向距离。
[0169]
3.3.3.3)按照下式计算车辆对被控交通参与者的社会力f
veh
:
[0170][0171]
3.4)计算被控交通参与者在交通场景中受到的自驱力f
self
[0172]
3.4.1)按照下式计算原始社会力模型中的自驱力:
[0173][0174]
其中,是当前时刻被控交通参与者的目标点pc中的目标速度,是其当前位置指向当前阶段目标点pc的单位向量,v是被控交通参与者在当前时刻的速度,τ是调整时间,τ的取值越大,表明被控交通参与者有速度v变化到所需的时间越长,τ的取值越小,表明被控交通参与者有速度v变化到所需的时间越短,是被控交通参与者在交通场景中受到的原始横向自驱力,是被控交通参与者在交通场景中受到的原始纵向自驱力。
[0175]
3.4.2)修正原始自驱力:为符合实际交通情形,若车辆横向力的数值大于零,则横向自驱力置为0,若所受车辆纵向社会力纵向力的方向与纵向自驱力方向相反且其数值大于某个阈值,说明交通参与者在纵方向上离车辆边界很近,需要给予一个与自驱力方向相反的力,修正公式为:
[0176][0177][0178]
其中sign(
·
)为符号函数,当数值大于0时取1,等于0时取0,小于0时取-1,为车辆纵向力的阈值,通常由与车辆边界的安全距离d
safe
计算:
[0179][0180]
因此修正后的自驱力为:
[0181][0182]
3.4)计算社会力合力:
[0183]
f=f
self
+f
veh
+f
sur
[0184]
4)根据被控交通参与者所受的社会力合力更新下一时刻的被控交通参与者的状态。
[0185]
作为本技术的一个实施例,步骤4)的具体实现过程如下:
[0186]
4.1)计算当前时刻被控交通参与者的加速度:
[0187][0188]
其中,f
t
是被控交通参与者t时刻受到的社会力合力,m是被控交通参与者的质量;
[0189]
4.2)计算被控交通参与者下一时刻的状态:按牛顿运动定律更新被控交通参与者下一时刻的横纵坐标和横纵向速度,公式如下:
[0190]vt+1
=v
t
+a
t
·
t
[0191][0192]
其中,p
t
是被控交通参与者当前时刻的位置,v
t
是被控交通参与者当前时刻的速度,考虑到实际情况,被控交通参与者不会因为反向纵向力纵向速度减速至0后产生“倒车”,以及横向偏移过大的情况,因此按照如下公式对被控交通参与者在下一时刻的状态进行修正:
[0193][0194][0195][0196][0197]
其中,是横向最大偏移距离,和分别是修正后被控交通参与者在下一时刻的横纵向位置,p
x,t
和p
y,t
分别是被控交通参与者在当前时刻的横纵向位置。需要注意的是,当前计算的状态是在目标点坐标系r(x,y)下的数值,还需要利用步骤3.1)中的坐标变换公式转换为大地坐标系g(x,y)下的值。
[0198]
本公开第二方面实施例提供的一种行人和非机动车微观行为建模装置,包括:
[0199]
第一模块,被配置为根据道路拓扑结构确定被控交通参与者可执行的离散目标点集合,所述被控交通参与者包括行人与非机动车,根据所述可执行的离散目标点集合中各离散点的连通关系构建有向图并确定有向图的邻接矩阵;
[0200]
第二模块,被配置为按照以下步骤从所述可执行的离散目标点集合中根据所述被控交通参与者到达的当前目标点确定下一目标点并设定目标速度:根据所述邻接矩阵得到与所述当前目标点具有连通关系的目标点构建候选目标点集合,将候选目标点集合中处于交叉路口内且交通信号灯为红灯的目标点从候选目标点集合中删除,得到更新后的候选目
标点集合,若更新后的候选目标点集合中无元素,则将当前目标点选择为下一个目标点并设定目标速度,若更新后的候选目标点集合中存在元素,则将更新后的候选目标点集合中安全风险最小的目标点选择为下一个目标点并设定目标速度;
[0201]
第三模块,被配置为根据所述下一目标点、所述目标速度和当前交通参与者的状态计算被控交通参与者所受的社会力合力,所述被控交通参与者所受的社会力合力包括行人和非机动车对被控交通参与者的社会力、车辆对被控交通参与者的社会力以及被控交通参与者在交通场景中受到的自驱力;所述车辆对被控交通参与者的社会力是通过结合车辆当前位置至未来时刻位置所涵盖的区域投影至被控交通参与者目标点坐标系下形成抽象的车辆形状,同时将横纵向距离较近的车辆合并抽象为一辆车,分开计算车辆对被控交通参与者的横向社会力和纵向社会力,并根据被控交通参与者相对车辆的位置约束横向社会力和纵向社会力的大小所得到的参数;
[0202]
第四模块,被配置为根据所述被控交通参与者所受的社会力合力更新下一时刻的被控交通参与者的状态。
[0203]
进一步地,第三模块计算的被控交通参与者所受的社会力合力是在目标点坐标系r(x,y)下的值,该目标点坐标系的定义为:若被控交通参与者从初始点p0开始运动,当前目标点为p1,则目标点坐标系r(x,y)的原点为p0,y轴及其正方向为从p0到p1的向量,x轴由y轴顺时针旋转π/2得到;当被控交通参与者根据步骤2)中规则选取下一目标点p2时,同步更新目标点坐标系r(x,y),其原点更新为被控交通参与者当前目标点p1,y轴及其正方向为从p1到p2的向量,x轴由y轴顺时针旋转π/2得到。
[0204]
为了实现上述实施例,本公开实施例还提出一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行,用于执行上述实施例的行人和非机动车微观行为建模方法。
[0205]
下面参考图5,其示出了适于用来实现本公开实施例的电子设备的结构示意图。其中,需要说明的是,本公开实施例中的电子设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、pda(个人数字助理)、pad(平板电脑)、pmp(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字tv、台式计算机、服务器等等的固定终端。图5示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
[0206]
如图5所示,电子设备可以包括处理装置(例如中央处理器、图形处理器等)101,其可以根据存储在只读存储器(rom)102中的程序或者从存储装置108加载到随机访问存储器(ram)103中的程序而执行各种适当的动作和处理。在ram 103中,还存储有电子设备操作所需的各种程序和数据。处理装置101、rom 102以及ram 103通过总线104彼此相连。输入/输出(i/o)接口105也连接至总线104。
[0207]
通常,以下装置可以连接至i/o接口105:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风等的输入装置106;包括例如液晶显示器(lcd)、扬声器、振动器等的输出装置107;包括例如磁带、硬盘等的存储装置108;以及通信装置109。通信装置109可以允许电子设备与其他设备进行无线或有线通信以交换数据。虽然图5示出了具有各种装置的电子设备,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
[0208]
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图中所示方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置109从网络上被下载和安装,或者从存储装置108被安装,或者从rom 102被安装。在该计算机程序被处理装置101执行时,执行本公开实施例的方法中限定的上述功能。
[0209]
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、rf(射频)等等,或者上述的任意合适的组合。
[0210]
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
[0211]
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备执行上述行人和非机动车微观行为建模方法。
[0212]
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c++、python,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
[0213]
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本技术的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结
合和组合。
[0214]
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本技术的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
[0215]
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本技术的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本技术的实施例所属技术领域的技术人员所理解。
[0216]
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得程序,然后将其存储在计算机存储器中。
[0217]
应当理解,本技术的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。
[0218]
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤,可以通过程序来指令相关的硬件完成,所开发的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
[0219]
此外,在本技术各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
[0220]
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本技术的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本技术的限制,本领域的普通技术人员在本技术的范围内可以对上述实施例进行变化、修改、替换和变型。
技术特征:
1.一种行人与非机动车微观行为建模方法,其特征在于,包括:根据道路拓扑结构确定被控交通参与者的可执行的离散目标点集合,根据所述可执行的离散目标点集合中各离散点的连通关系构建有向图并确定有向图的邻接矩阵,所述被控交通参与者包括行人与非机动车;按照以下步骤从所述可执行的离散目标点集合中根据被控交通参与者到达的当前目标点确定下一目标点并设定目标速度:利用根据所述有向图的邻接矩阵得到的与当前目标点具有连通关系的目标点构建候选目标点集合,将所述候选目标点集合中处于交叉路口内且交通信号灯为红灯的目标点从候选目标点集合中删除,得到更新后的候选目标点集合,若所述更新后的候选目标点集合中无元素,则将当前目标点选择为下一目标点并设定目标速度,若所述更新后的候选目标点集合中存在元素,则将所述更新后的候选目标点集合中安全风险最小的目标点选择为下一目标点并设定目标速度;根据所述下一目标点、所述目标速度和当前交通参与者的状态计算被控交通参与者所受的社会力合力,所述被控交通参与者所受的社会力合力包括行人和非机动车对被控交通参与者的社会力、车辆对被控交通参与者的社会力以及被控交通参与者在交通场景中受到的自驱力;所述车辆对被控交通参与者的社会力是通过结合车辆当前位置至未来时刻位置所涵盖的区域投影至被控交通参与者目标点坐标系下形成抽象的车辆形状,同时将横纵向距离较近的车辆合并抽象为一辆车,分开计算车辆对被控交通参与者的横向社会力和纵向社会力,并根据被控交通参与者相对车辆的位置约束横向社会力和纵向社会力的大小所得到的参数;根据所述被控交通参与者所受的社会力合力更新下一时刻的被控交通参与者的状态。2.根据权利要求1所述的行人与非机动车微观行为建模方法,其特征在于,所述目标点坐标系的定义为:若被控交通参与者从初始点p0开始运动,当前目标点为p1,则目标点坐标系的原点为p0,y轴及其正方向为从p0到p1的向量,x轴由y轴顺时针旋转π/2得到;当被控交通参与者选取下一目标点p2时,同步更新目标点坐标系,其原点更新为被控交通参与者当前目标点p1,y轴及其正方向为从p1到p2的向量,x轴由y轴顺时针旋转π/2得到。3.根据权利要求2所述的行人与非机动车微观行为建模方法,其特征在于,设由在被控交通参与者一定感知范围内的行人和非机动车在所述目标点坐标系下的状态构成的集合为状态集合s
sur
,所述行人和非机动车对被控交通参与者的社会力f
sur
为在所述目标点坐标系下的值,按照下式计算得到:系下的值,按照下式计算得到:系下的值,按照下式计算得到:其中,n是状态集合s
sur
中行人和非机动车的数量,是状态集合s
sur
中行人或非机动车的编号,a
sur
是第一强度系数,b
sur
是第一距离系数,是状态集合s
sur
中行人或非机动车
对被控交通参与者的各向异性系数,是状态集合s
sur
中行人或非机动车的椭圆力场短半轴长度,β是各向异性参数,是状态集合s
sur
中行人或非机动车与被控交通参与者位置的连线方向与该被控交通参与者速度方向的夹角,是状态集合s
sur
中行人或非机动车在当前时刻的速度,是状态集合s
sur
中行人或非机动车在当前时刻的位置,p是被控交通参与者在当前时刻的位置,δt是预测时间,以和为焦点,做经过p的椭圆,为该椭圆上位于p处方向朝外的法向向量。4.根据权利要求2所述的行人与非机动车微观行为建模方法,其特征在于,设由在被控交通参与者一定感知范围内的车辆在所述目标点坐标系下的状态构成的集合为状态集合s
veh
,所述车辆对被控交通参与者的社会力f
veh
为在所述目标点坐标系下的值,按照以下步骤得到:根据状态集合s
veh
中各车辆的当前状态计算预测时间t
p
后状态集合s
veh
中各车辆外形的角点坐标,并更新各车辆的状态,得到更新后的状态集合s'
veh
;遍历更新后的状态集合s'
veh
中的各车辆,进行以下车辆形状合并判断:若相邻车辆之间的横向最短距离和纵向最短距离均小于设定的距离阈值,则认为相邻车辆满足形状合并条件,将满足形状合并条件的相邻车辆合并为一个车辆群,并计算车辆群的状态,后续将单个车辆群视为一个车辆参与计算,否则,认为车辆不满足形状合并条件,不对其进行合并处理;从而得到经过车辆形状合并判断的状态集合按照下式计算状态集合中所有车辆对被控交通参与者的横向力中所有车辆对被控交通参与者的横向力中所有车辆对被控交通参与者的横向力中所有车辆对被控交通参与者的横向力中所有车辆对被控交通参与者的横向力中所有车辆对被控交通参与者的横向力其中,是状态集合中车辆对被控交通参与者的横向力;m为状态集合中所含车辆的数量;a
veh
是第二强度系数;b
veh
是第二距离系数;是被控交通参与者所能承受的车辆对其社会力的上限值;是被控交通参与者与状态集合中车辆的横向距离;是状态集合中车辆对被控交通参与者的各向异性系数;是状态集合中车辆对被控交通参与者的横向方向系数,用于计算的方向,当被控交通参与者在状态集合中车辆
左侧时取-1,右侧时取1;是状态集合中车辆对被控交通参与者的衰减系数,用于约束的大小,当被控交通参与者相对于状态集合中车辆的横向位置的绝对值小于时,取1,当大于且小于时,按比例衰减,和分别为状态集合中车辆的长和宽,当大于一定距离时,认为被控交通参与者不受状态集合中车辆带来的横向力的影响,取0;是状态集合中车辆的形状轮廓的横向外延距离,用于计算被控交通参与者与车辆边界的纵向距离,是状态集合中车辆的形状轮廓的纵向外延距离,用于计算被控交通参与者与车辆的横向距离;是被控交通参与者相对于状态集合中车辆的纵向位置;按照下式计算状态集合中所有车辆对被控交通参与者的纵向力中所有车辆对被控交通参与者的纵向力中所有车辆对被控交通参与者的纵向力中所有车辆对被控交通参与者的纵向力中所有车辆对被控交通参与者的纵向力其中,是状态集合中车辆对被控交通参与者的纵向力;是状态集合中车辆的纵向方向系数,用于计算的方向,当被控交通参与者在状态集合中车辆的下方时取-1,上方时取1;是被控交通参与者与状态集合中车辆的纵向距离;根据状态集合中所有车辆对被控交通参与者的横向力和所有车辆对被控交通参与者的纵向力得到车辆对被控交通参与者的社会力f
veh
。5.根据权利要求4所述的行人与非机动车微观行为建模方法,其特征在于,设所述更新后的状态集合s'
veh
中车辆的状态包括车辆的横坐标纵坐标速率、朝向角长和宽其中速率保持不变,其余参数的计算公式如下:其中速率保持不变,其余参数的计算公式如下:其中速率保持不变,其余参数的计算公式如下:
其中,分别为更新后车辆的形状在当前时刻和预测时间t
p
四个角点的横坐标,分别为更新后车辆的形状在当前时刻和预测时间t
p
四个角点的纵坐标。6.根据权利要求4所述的行人与非机动车微观行为建模方法,其特征在于,设需要进行合并处理构成的单个车辆群的状态为包括车辆群的横坐标x”、纵坐标y”、朝向角长l”和宽w”,按照下式计算得到:,按照下式计算得到:,按照下式计算得到:,按照下式计算得到:,按照下式计算得到:,按照下式计算得到:其中,分别为车辆群中车辆的横坐标、纵坐标、朝向角、长和宽。7.根据权利要求2所述的行人与非机动车微观行为建模方法,其特征在于,所述被控交通参与者在交通场景中受到的自驱力f
self
为在所述目标点坐标系下的值,按照以下步骤得到:按照下式计算原始自驱力按照下式计算原始自驱力其中,是当前时刻被控交通参与者的目标点p
c
中的目标速度,是被控交通参与者的当前位置指向目标点p
c
的单位向量,v是被控交通参与者在当前时刻的速度,τ是调整时间,是被控交通参与者在交通场景中受到的原始横向自驱力,是被控交通参与者在
交通场景中受到的原始纵向自驱力;按照下式对原始自驱力进行修正得到被控交通参与者在交通场景中受到的自驱力f
self
:::其中,sign(
·
)为符号函数,当数值大于0时取1,等于0时取0,小于0时取-1;和分别为被控交通参与者在交通场景中受到的横向自驱力和纵向自驱力;为车辆纵向力的阈值,由与车辆边界的安全距离d
safe
计算得到:a
veh
是第二强度系数,b
veh
是第二距离系数。8.根据权利要求2所述的行人与非机动车微观行为建模方法,其特征在于,根据所述被控交通参与者所受的社会力合力更新下一时刻的被控交通参与者的状态,包括:按照下式计算当前时刻被控交通参与者的加速度a
t
:其中,f
t
是被控交通参与者t时刻受到的社会力合力,m是被控交通参与者的质量;按照下式计算被控交通参与者下一时刻的状态:v
t+1
=v
t
+a
t
·
t其中,p
t
是被控交通参与者当前时刻的位置,v
t
是被控交通参与者当前时刻的速度;按照如下公式对被控交通参与者在下一时刻的状态进行修正:按照如下公式对被控交通参与者在下一时刻的状态进行修正:按照如下公式对被控交通参与者在下一时刻的状态进行修正:按照如下公式对被控交通参与者在下一时刻的状态进行修正:其中,是被控交通参与者的横向最大偏移距离,和分别是修正后被控交通参与者在下一时刻的横向位置和纵向位置,p
x,t
和p
y,t
分别是被控交通参与者在当前时刻的横向位置和纵向位置;将修正后的被控交通参与者在下一时刻的状态转换至大地坐标系下的值。
9.一种行人与非机动车微观行为建模装置,其特征在于,包括:第一模块,被配置为根据道路拓扑结构确定被控交通参与者的可执行的离散目标点集合,根据所述可执行的离散目标点集合中各离散点的连通关系构建有向图并确定有向图的邻接矩阵,所述被控交通参与者包括行人与非机动车;第二模块,被配置为按照以下步骤从所述可执行的离散目标点集合中根据被控交通参与者到达的当前目标点确定下一目标点并设定目标速度:利用根据所述有向图的邻接矩阵得到的与当前目标点具有连通关系的目标点构建候选目标点集合,将所述候选目标点集合中处于交叉路口内且交通信号灯为红灯的目标点从候选目标点集合中删除,得到更新后的候选目标点集合,若所述更新后的候选目标点集合中无元素,则将当前目标点选择为下一目标点并设定目标速度,若所述更新后的候选目标点集合中存在元素,则将所述更新后的候选目标点集合中安全风险最小的目标点选择为下一目标点并设定目标速度;第三模块,被配置为根据所述下一目标点、所述目标速度和当前交通参与者的状态计算被控交通参与者所受的社会力合力,所述被控交通参与者所受的社会力合力包括行人和非机动车对被控交通参与者的社会力、车辆对被控交通参与者的社会力以及被控交通参与者在交通场景中受到的自驱力;所述车辆对被控交通参与者的社会力是通过结合车辆当前位置至未来时刻位置所涵盖的区域投影至被控交通参与者目标点坐标系下形成抽象的车辆形状,同时将横纵向距离较近的车辆合并抽象为一辆车,分开计算车辆对被控交通参与者的横向社会力和纵向社会力,并根据被控交通参与者相对车辆的位置约束横向社会力和纵向社会力的大小所得到的参数;第四模块,被配置为根据所述被控交通参与者所受的社会力合力更新下一时刻的被控交通参与者的状态。10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行权利要求1~8中任一项所述的行人与非机动车微观行为建模方法。
技术总结
本公开提供的一种行人与非机动车微观行为建模方法,根据道路拓扑结构确定被控交通参与者的可执行的离散目标点集合;选择下一目标点并设定目标速度;计算被控交通参与者的社会力合力,其中车辆对被控交通参与者的社会力是通过结合车辆当前位置至未来时刻位置所涵盖的区域投影至被控交通参与者目标点坐标系下形成抽象的车辆形状,同时将横纵向距离较近的车辆合并抽象为一辆车,分开计算车辆对被控交通参与者的横向社会力和纵向社会力,并根据被控交通参与者相对车辆的位置约束横纵向社会力的大小所得到;根据被控交通参与者所受的社会力合力更新其下一时刻的状态。本公开仅用少数参数即可描述被控交通参与者复杂动态的运动,更加符合真实交通场景。更加符合真实交通场景。更加符合真实交通场景。
技术研发人员:李升波 易穗荣 王立坤 陈晨 朴盈汐 熊杰
受保护的技术使用者:清华大学
技术研发日:2023.06.30
技术公布日:2023/9/23
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/
上一篇:一种地刀手车预防式联锁装置的制作方法 下一篇:一种生物膜法污水处理系统的制作方法