一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种车辆跟驰关系管理与角色实时配置方法

2022-12-06 23:47:08 来源:中国专利 TAG:


1.本发明涉及交通运输领域,尤其是涉及一种车辆跟驰关系管理与角色实时配置方法。


背景技术:

2.车辆具有广泛的含义,除了公路交通领域各种类型的载运工具外,轨道交通领域的列车也涵盖在内。自由行驶和跟驰运行,是车辆运行于路网中司空见惯的两种情形。在不同的情形下,车辆承担的角色不同,对自身行为的控制需求也是不同的。目前国内外对车辆行为控制,包括车辆跟驰控制,研究得较多,也积累了大量的理论与应用成果。但是,对车辆在不同情形下承担的角色及其动态变化如何进行有效的管理,为路网车辆管理和车辆行为控制创造良好的条件,却鲜有研究。


技术实现要素:

3.本发明的目的就是为了提供一种车辆跟驰关系管理与角色实时配置方法,增强车-路和车-车协同的紧密程度,提高路网车辆管理与车辆行为控制的水平。
4.本发明的目的可以通过以下技术方案来实现:
5.一种车辆跟驰关系管理与角色实时配置方法,包括以下步骤:
6.步骤1)建立车辆代理模型,所述车辆代理模型中包括子代理模块和统筹协调与调度管理模块,其中,所述统筹协调与调度管理模块承担对子代理模块的监督、协调、调度和资源分配功能,用于根据控制需求对车辆承担的角色进行实时配置;
7.步骤2)将路网中各道路分成无分支的路段,各路段按运行方向建立与各车道相应的单链表数据结构,实现车辆跟驰关系的动态管理,并判别车辆所承担的角色;
8.步骤3)根据车辆当前时刻的控制需求以及车辆所承担的角色,基于车辆代理模型对车辆角色进行实时配置,并完成车辆的控制任务。
9.所述步骤2)包括以下步骤:
10.步骤2-1)将路网中各道路分成无分支的路段,其中,每个路段至少包含一条车道;
11.步骤2-2)各路段按运行方向建立与各车道相应的单链表数据结构,所述单链表数据结构的每一单链表用以实时描述各车道的车辆队列情况,包括依次连接的头指针、车辆代理模型生成的实体对象和尾指针;
12.步骤2-3)单链表初始化;
13.步骤2-4)判断是否有车辆进入路段i第j车道,若有,则基于车辆代理模型生成与所述车辆对应的实体对象插入到单链表中;
14.步骤2-5)判断是否存在车辆变道、超车或两辆车在交叉口因运行方向不同导致前后毗邻关系的变化,若存在,则通过单链表插入、删除操作对链表进行更新,以记录、反映前后毗邻关系的动态变化;
15.步骤2-6)对同一车道同一运行方向前后毗邻的车辆,判断前、后车辆是否具有跟
驰关系;
16.步骤2-7)根据车辆的跟驰关系状态,判别车辆所承担的角色。
17.所述前、后车辆是否具有跟驰关系的判断方法为:
18.如果d
actual
》dr,前、后车辆不具有跟驰关系,后车的行为调整不受前车位置、速度和控制策略的约束,后车根据自身行为优化目标进行自身行为的控制;
19.如果d
actual
≤dr,前、后车辆之间存在跟驰关系,后车的行为调整受前车位置、速度和控制策略的约束,根据安全性、高效性、平稳性和节能运行的优化目标进行自身行为的控制;
20.其中,d
actual
为前、后车辆之间的实际车距,dr为跟驰关系判别临界值:
21.dr=f(min(v
max_vehcile
,v
max_linepermitted
),r
vehicularcoasting
(t))
22.式中,v
max_vehcile
为车辆行驶的最大速度,v
max_linepermitted
为道路允许的车辆最大运行速度,r
vehicularcoasting
(t)为车辆以初速min(v
max_vehcile
,v
max_linepermitted
)惰行直至完全停车的过程中车辆所受的惰行阻力函数。
23.所述车辆所承担的角色包括:车辆处于自由行驶状态,车辆扮演“前车”角色,车辆扮演“后车”角色,车辆身兼“前车”和“后车”两种角色,其中,所述车辆处于自由行驶状态包括两种情形:
24.a1)车辆所在车道除所述车辆外,无其他任何车辆,
25.a2)车辆所在车道存在与所述车辆为毗邻关系的其他车辆,但由于距离超出临界值dr,被判定为不具有跟驰关系;
26.车辆扮演“前车”角色、车辆扮演“后车”角色、车辆身兼“前车”和“后车”两种角色这三种情况的判断前提是所述车辆与其他车辆之间存在跟驰关系。
27.所述步骤3)包括以下步骤:
28.步骤3-1)获取路段i第j车道上的每个车辆所承担的角色;
29.步骤3-2)根据每个车辆所承担的角色,基于车辆代理模型实时对其进行角色配置,具体包括:
30.步骤3-2-1)根据车辆代理模型确定车辆角色实时配置的逻辑真值表;
31.步骤3-2-2)统筹协调与调度管理模块根据控制需求和当前车辆所承担的角色配置激活变量;
32.步骤3-2-3)基于激活变量和逻辑控制表达式确定控制变量;
33.步骤3-2-4)基于控制变量和逻辑真值表,激活车辆代理模型中的不同子代理模块,实现车辆角色实时配置。
34.所述车辆代理模型的子代理模块包括:
35.自由行驶状态的子代理模块,用于完成当前车辆处于自由行驶状态时自身行为的控制任务;
36.扮演前车角色的子代理模块,用于完成当前车辆所承担的角色为“前车”时自身行为的控制任务;
37.扮演后车角色的子代理模块,用于完成当前车辆所承担的角色为“后车”时自身行为的控制任务。
38.所述逻辑控制表达式为:
[0039][0040]
其中,a、b为激活变量,enable0为车辆自由行驶状态的子代理模块的控制变量,enable1为车辆扮演前车角色的子代理模块的控制变量,enable2为车辆扮演后车角色的子代理模块的控制变量。
[0041]
当车辆处在自由行驶状态,统筹协调与调度管理模块配置激活变量ba=00,自由行驶状态的子代理模块被激活,由其实现该车辆在自由行驶状态下的行为控制;
[0042]
当车辆扮演“前车”角色,统筹协调与调度管理模块配置激活变量ba=01,扮演前车角色的子代理模块被激活,由其完成该车辆作为“前车”时的控制任务;
[0043]
当车辆扮演“后车”角色,统筹协调与调度管理模块配置激活变量ba=10,扮演后车角色的子代理模块被激活,由其完成该车辆作为“后车”时的控制任务;
[0044]
当车辆身兼“前车”和“后车”两种角色,统筹协调与调度管理模块配置ba=11,扮演前车角色的子代理模块和扮演后车角色的子代理模块均被激活,由二者完成该车辆身兼“前车”和“后车”两种角色的控制任务。
[0045]
所述车辆代理模型的子代理模块包括:
[0046]
自由行驶状态和扮演前车角色的子代理模块,用于完成当前车辆所承担的角色为“前车”时自身行为的控制任务和当前车辆处于自由行驶状态时自身行为的控制任务;
[0047]
扮演后车角色的子代理模块,用于完成当前车辆所承担的角色为“后车”时自身行为的控制任务。
[0048]
所述车辆代理模型包含车辆实现思维活动和自身行为控制的多个函数,以及反映车辆机械特性、电气特性和动力学、运动学特性的多个参数,车辆代理模型中的函数用于描述车辆作为一个智能体所具有的计算与数据处理、思维、决策和具体的行为过程,其中,所述函数的实现方式包括:数学模型、模糊推理和神经网络构建方法。
[0049]
与现有技术相比,本发明具有以下有益效果:
[0050]
(1)本发明通过跟驰关系的判断,并采用车辆代理模型实现车辆的角色实时配置管理,使得车辆在复杂交通运输场景中承担的角色描述更加清晰,有利于车辆控制水平和质量的进一步提高;
[0051]
(2)本发明将车辆控制与车辆跟驰关系的动态管理结合起来,提出了具体的实现方案,有利于微观车辆行为控制与宏观车辆管理的协同,处理好车辆微观行为的局部优化与整个路网的全局优化的关系,以实现整个路网的效能涌现;
[0052]
(3)本发明提供的车辆跟驰关系管理与角色实时配置方法将有力推动车辆嵌入式操作系统和交通运输管理嵌入式操作系统的研究、开发和进一步完善;
[0053]
(4)本发明中,车辆信息的动态变化可以通过查询与实际车辆对应的车辆代理模型的实体对象的属性参数获知,从而为车辆的角色承担和自身行为控制创造了良好的条件;
[0054]
(5)本发明车辆代理模型中的子代理模块的激活引脚由激活变量来表征,由统筹协调与调度管理模块根据具体场景的控制需求,通过输入的激活变量来激活子代理模块或令其失活,以达到控制的目的,相比于各子代理模块分别激活,不仅减少了控制变量,而且
在逻辑关系上更加严密,更有利于安全行车。
附图说明
[0055]
图1为本发明的方法流程图;
[0056]
图2为本发明车辆代理模型的一种结构示意图;
[0057]
图3为本发明车辆代理模型的另一种结构示意图;
[0058]
图4为单链表数据结构示意图。
具体实施方式
[0059]
下面结合附图和具体实施例对本发明进行详细说明。本实施例以本发明技术方案为前提进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
[0060]
一种车辆跟驰关系管理与角色实时配置方法,包括以下步骤:
[0061]
步骤1)建立车辆代理模型
[0062]
所述车辆代理模型(vehicleagent)中包括子代理模块和统筹协调与调度管理模块centeragent。
[0063]
所述统筹协调与调度管理模块承担对子代理模块的监督、协调、调度和资源分配功能,用于根据控制需求对车辆承担的角色进行实时配置,以完成相应的控制任务。
[0064]
车辆代理模型中的函数可以基于传统的数学模型进行实现,也可以利用模糊推理和神经网络来建构,用于描述车辆作为一个智能体所具有的计算与数据处理、思维、决策和具体的行为过程;所有函数均可根据实际需求设计为由内部中断请求和外部事件触发,以实现车辆agent具有自治和自主行为能力。车辆agent中的参数用来描述车辆的机械特性、电气特性和动力学、运动学特性,并存储与车辆机械特性、电气特性和动力学、运动学特性紧密相关的数据;车辆的意图及其他与车辆行为控制相关的数据均可以参数变量的形式进行描述和存储;参数根据实际需求进行设定,可以是int、float、double、struct和class等数据类型,也可以是agent和其他具有大数据特征的更为复杂的数据类型。
[0065]
一种实施例中,所述车辆代理模型的子代理模块包括:
[0066]
自由行驶状态的子代理模块subagent0,用于完成当前车辆处于自由行驶状态时自身行为的控制任务;
[0067]
扮演前车角色的子代理模块subagent1,用于完成当前车辆所承担的角色为“前车”时自身行为的控制任务;
[0068]
扮演后车角色的子代理模块subagent2,用于完成当前车辆所承担的角色为“后车”时自身行为的控制任务,如图2所示。
[0069]
根据所建车辆代理模型的结构,vehicleagent的软件结构如下:
[0070]
[0071][0072]
另一种实施例中,所述车辆代理模型的子代理模块包括:
[0073]
自由行驶状态和扮演前车角色的子代理模块subagent1,用于完成当前车辆所承担的角色为“前车”时自身行为的控制任务和当前车辆处于自由行驶状态时自身行为的控制任务;
[0074]
扮演后车角色的子代理模块subagent2,用于完成当前车辆所承担的角色为“后车”时自身行为的控制任务,如图3所示。
[0075]
其软件结构可通过对上述vehiclagent模型的软件结构做适当调整加以实现。其中,无跟驰关系时车辆自由行驶和具有跟驰关系时该车辆为前车,这两种情形下该车辆所承担的角色和控制任务均由subagent1负责,可根据控制需求利用函数重载来实现。
[0076]
步骤2)将路网中各道路分成无分支的路段,各路段按运行方向建立与各车道相应的单链表数据结构,实现车辆跟驰关系的动态管理,并判别车辆所承担的角色;
[0077]
步骤2-1)将路网中各道路分成无分支的路段,其中,每个路段至少包含一条车道;
[0078]
步骤2-2)各路段按运行方向建立与各车道相应的单链表数据结构,如图4所示,所
述单链表数据结构的每一单链表用以实时描述各车道的车辆队列情况,包括依次连接的头指针、车辆代理模型生成的实体对象和尾指针;
[0079]
其中,m
l
是路网中各路段所允许的最大车道数量,mr是路网中交叉口车辆变换路段时所允许的分支路段数量,即路段i在某个交叉路口的分支路段数量不超过mr,每一路段的同一方向设置一个头指针headagent和一个尾指针tailagent,headagent和tailagent设置与该路段实际车道数量相同的单链表数据结构,用以车辆跟驰关系的动态管理,vehicleagent(i,j,id1)、vehicleagent(i,j,id2)、vehicleagent(i,j,idn)为vehicleagent生成的车辆实体对象,id1、id1、

、idn为车辆编号。
[0080]
步骤2-3)单链表初始化,即生成一个空的单链表,单链表中只有headagent(i)和tailagent(i),没有车辆;
[0081]
步骤2-4)判断是否有车辆进入路段i第j车道,若有,则基于车辆代理模型生成与所述车辆对应的实体对象插入到单链表中;
[0082]
步骤2-5)判断是否存在车辆变道、超车或两辆车在交叉口因运行方向不同导致前后毗邻关系的变化,若存在,则通过单链表插入、删除操作对链表进行更新,以记录、反映前后毗邻关系的动态变化;
[0083]
步骤2-6)对同一车道同一运行方向前后毗邻的车辆,判断前、后车辆是否具有跟驰关系;
[0084]
如果d
actual
》dr,前、后车辆不具有跟驰关系,后车的行为调整不受前车位置、速度和控制策略的约束,后车根据自身行为优化目标进行自身行为的控制;
[0085]
如果d
actual
≤dr,前、后车辆之间存在跟驰关系,后车的行为调整受前车位置、速度和控制策略的约束,根据安全性、高效性、平稳性和节能运行的优化目标进行自身行为的控制;
[0086]
其中,d
actual
为前、后车辆之间的实际车距,dr为跟驰关系判别临界值:
[0087]dr
=f(min(v
max_vehcile
,v
max_linepermitted
),r
vehicularcoasting
(t))
[0088]
式中,v
max_vehcile
为车辆行驶的最大速度,v
max_linepermitted
为道路允许的车辆最大运行速度,r
vehicularcoasting
(t)为车辆以初速min(v
max_vehcile
,v
max_linepermitted
)惰行直至完全停车的过程中车辆所受的惰行阻力函数,可以描述为一个时变函数;
[0089]
步骤2-7)根据车辆的跟驰关系状态,判别车辆所承担的角色;
[0090]
所述车辆所承担的角色包括:车辆处于自由行驶状态,车辆扮演“前车”角色,车辆扮演“后车”角色,车辆身兼“前车”和“后车”两种角色,其中,所述车辆处于自由行驶状态包括两种情形:
[0091]
a1)车辆所在车道除所述车辆外,无其他任何车辆,
[0092]
a2)车辆所在车道存在与所述车辆为毗邻关系的其他车辆,但由于距离超出临界值dr,被判定为不具有跟驰关系;
[0093]
车辆扮演“前车”角色、车辆扮演“后车”角色、车辆身兼“前车”和“后车”两种角色这三种情况的判断前提是所述车辆与其他车辆之间存在跟驰关系。
[0094]
步骤3)根据车辆当前时刻的控制需求以及车辆所承担的角色,基于车辆代理模型对车辆角色进行实时配置,并完成车辆的控制任务;
[0095]
步骤3-1)获取路段i第j车道上的每个车辆所承担的角色;
[0096]
步骤3-2)根据每个车辆所承担的角色,基于车辆代理模型实时对其进行角色配置,具体包括:
[0097]
步骤3-2-1)根据车辆代理模型确定车辆角色实时配置的逻辑真值表;
[0098]
与图2对应的一种实施例中,控制变量与子代理模块之间的逻辑真值表如表1所示。
[0099]
表1控制变量与子代理模块之间的逻辑真值表
[0100]
enable2enable1enable0subagent0subagent1subagent2000
×××
001激活失活失活010失活激活失活011
×××
100失活失活激活101
×××
110失活激活激活111
×××
[0101]
图2所示激活端的控制变量enable2,enable1,enable0不允许为000,011,101和111四种组态,故表1以符号
×
来表示。
[0102]
车辆代理模型(vehicleagent)中的subagent0、subagent1、subagent2的激活引脚可由激活变量来表征,可在vehicleagent中设置两个输入变量,由车辆agent(vehicleagent)中的centeragent根据具体场景的控制需求,通过这两个输入变量来激活subagent0、subagent1、subagent2或令其失活,以达到控制的目的,相比于各agent分别激活,不仅减少了控制变量,而且在逻辑关系上更加严密,更有利于安全行车。激活变量与控制变量之间的逻辑真值表如表2所示。
[0103]
表2激活变量与控制变量之间的逻辑真值表
[0104][0105]
基于表2,可得逻辑控制表达式为:
[0106][0107]
其中,a、b为激活变量,enable0为车辆自由行驶状态的子代理模块的控制变量,enable1为车辆扮演前车角色的子代理模块的控制变量,enable2为车辆扮演后车角色的子
代理模块的控制变量。
[0108]
步骤3-2-2)统筹协调与调度管理模块根据控制需求和当前车辆所承担的角色配置激活变量a和b;
[0109]
步骤3-2-3)基于激活变量和逻辑控制表达式确定控制变量;
[0110]
步骤3-2-4)基于控制变量和逻辑真值表,激活车辆代理模型中的不同子代理模块,实现车辆角色实时配置;
[0111]
当车辆处在自由行驶状态,统筹协调与调度管理模块配置激活变量ba=00,自由行驶状态的子代理模块被激活,由其实现该车辆在自由行驶状态下的行为控制;
[0112]
当车辆扮演“前车”角色,统筹协调与调度管理模块配置激活变量ba=01,扮演前车角色的子代理模块被激活,由其完成该车辆作为“前车”时的控制任务;
[0113]
当车辆扮演“后车”角色,统筹协调与调度管理模块配置激活变量ba=10,扮演后车角色的子代理模块被激活,由其完成该车辆作为“后车”时的控制任务;
[0114]
当车辆身兼“前车”和“后车”两种角色,统筹协调与调度管理模块配置ba=11,扮演前车角色的子代理模块和扮演后车角色的子代理模块均被激活,由二者完成该车辆身兼“前车”和“后车”两种角色的控制任务。
[0115]
与图3对应的另一种实施例中,其控制逻辑与上述类似,可通过上述控制逻辑的简化操作实现。控制变量与子代理模块之间的逻辑真值表如表3所示。
[0116]
表3控制变量与子代理模块之间的逻辑真值表
[0117]
enable2enable1subagent1subagent200
××
01激活失活10失活激活11激活激活
[0118]
激活变量与控制变量之间的逻辑真值表如表4所示。
[0119]
表4激活变量与控制变量之间的逻辑真值表
[0120][0121]
基于表4,可得逻辑控制表达式为:
[0122][0123]
其中,a、b为激活变量,enable1为自由行驶状态和扮演前车角色的子代理模块的控制变量,enable2为扮演后车角色的子代理模块的控制变量。
[0124]
当车辆处在自由行驶状态或扮演“前车”角色,统筹协调与调度管理模块配置激活
变量ba=01,自由行驶状态和扮演前车角色的子代理模块被激活,由其完成该车辆作为“前车”时的控制任务或处在自由行驶状态时的控制任务;
[0125]
当车辆扮演“后车”角色,统筹协调与调度管理模块配置激活变量ba=10,扮演后车角色的子代理模块被激活,由其完成该车辆作为“后车”时的控制任务;
[0126]
当车辆身兼“前车”和“后车”两种角色,统筹协调与调度管理模块配置ba=11,自由行驶状态和扮演前车角色的子代理模块和扮演后车角色的子代理模块均被激活,由二者完成该车辆身兼“前车”和“后车”两种角色的控制任务。
[0127]
以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术人员无需创造性劳动就可以根据本发明的构思做出诸多修改和变化。因此,凡本技术领域中技术人员依据本发明的构思在现有技术的基础上通过逻辑分析、推理、或者有限的实验可以得到的技术方案,皆应在权利要求书所确定的保护范围内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献