一种交通信号灯的控制方法、装置、终端设备和存储介质与流程

未命名 07-18 阅读:106 评论:0


1.本技术涉及设备控制技术领域,尤其涉及一种交通信号灯的控制方法、装置、终端设备和存储介质。


背景技术:

2.随着社会生活水平的提高,人们拥有车辆的数量不断增加,导致城市的交通拥堵问题愈发严重。在交通路口,一般使用交通信号灯维持车辆的通行秩序,然而现有的交通信号灯的相位转换次序和相位保持时间一般是提前设置好的,没有考虑到当前实际的交通情况。即便目前部分现有技术已提出基于强化学习的信号灯控制方法,但这些方法基本上只根据交通路口中各个车道的车辆排队长度等静态信息来确定下一时刻的信号灯配时策略,仍然存在配时不准,车辆通行效率较低的问题。


技术实现要素:

3.有鉴于此,本技术实施例提供了一种交通信号灯的控制方法、装置、终端设备和存储介质,能够提高交通路口信号灯配时的准确度,从而提升车辆通行效率。
4.本技术实施例的第一方面提供了一种交通信号灯的控制方法,包括:
5.获取交通路口中每个车辆的行驶状态数据,所述行驶状态数据包括对应车辆在所述交通路口的未来行驶方向;
6.将所述行驶状态数据输入至已训练的信号灯控制模型进行处理,通过所述信号灯控制模型输出的状态动作价值函数,对所述交通路口的信号灯进行控制;
7.其中,所述信号灯控制模型为基于深度强化学习算法训练得到的图神经网络,所述图神经网络的节点为信号灯的各个相位,各个所述节点的特征数据为对应相位下所有可通行车道的车辆的行驶状态数据,所述深度强化学习算法的状态为车辆的行驶状态数据,所述深度强化学习算法的动作为信号灯的各个相位。
8.在本技术实施例中,首先,获取交通路口中每个车辆的行驶状态数据,行驶状态数据中包括对应车辆在交通路口的未来行驶方向,例如直行、左转或者右转等;然后,将这些行驶状态数据输入至一个预先完成训练的信号灯控制模型进行处理,通过该信号灯控制模型输出的状态动作价值函数能够确定执行的信号灯相位,从而实现对交通路口信号的控制。其中,该信号灯控制模型是基于深度强化学习算法训练得到的图神经网络,其节点为信号灯的各个相位,其节点的特征数据为对应相位下所有可通行车道的车辆的行驶状态数据;使用的深度强化学习算法的状态为车辆的行驶状态数据,动作为信号灯的各个相位。本技术实施例使用的输入信息包含了交通路口中各个车辆的未来行驶方向,由于未来行驶方向代表着车辆在该交通路口中未来的空间位置信息,因此该交通路口中所有车辆的未来行驶方向共同表征着该交通路口的空间动态特征,也即车辆运行方向的动态信息。信号灯控制算法根据空间动态特征能够考虑到交通路口中各个方位未来的车流量,从而更智能且更合理地转换信号灯相位,因此能够提高信号灯配时的准确度,提升车辆通行效率。
9.在本技术实施例的一种实现方式中,所述信号灯控制模型可以通过以下方式训练得到:
10.通过所述深度强化学习算法的智能体从经验池中抽取设定数量的经验记录;其中,每条所述经验记录包含所述智能体与所述交通路口进行交互时得到的状态更新信息、执行动作以及所述交通路口反馈的奖励;
11.以所述设定数量的经验记录作为训练集,对已构建的图神经网络进行优化训练,得到所述信号灯控制模型。
12.在本技术实施例的一种实现方式中,在通过所述深度强化学习算法的智能体从经验池中抽取设定数量的经验记录之前,还可以包括:
13.构建评估网络和目标网络;其中,所述评估网络和所述目标网络为结构相同的图神经网络;
14.基于所述评估网络,通过所述智能体与所述交通路口交互的方式,生成多条所述经验记录;
15.将多条所述经验记录存入所述经验池;
16.所述以所述设定数量的经验记录作为训练集,对已构建的图神经网络进行优化训练,得到所述信号灯控制模型,包括:
17.以所述设定数量的经验记录作为训练集,利用基于所述评估网络输出的状态动作价值函数和所述目标网络输出的状态动作价值函数构建的损失函数,对所述评估网络进行优化训练,得到所述信号灯控制模型。
18.进一步的,所述基于所述评估网络,通过所述智能体与所述交通路口交互的方式,生成多条所述经验记录,可以包括:
19.获取第一时刻所述交通路口中每个车辆的行驶状态数据;
20.对第一时刻所述交通路口中每个车辆的行驶状态数据进行预处理,得到各个所述节点的第一节点特征数据;
21.将各个所述节点的第一节点特征数据作为第一状态输入所述评估网络进行处理,由所述智能体根据所述评估网络输出的状态动作价值函数从动作空间中选取目标动作;
22.根据所述目标动作控制所述信号灯切换相位;
23.在所述信号灯切换相位后,获取第二时刻所述交通路口中每个车辆的行驶状态数据;
24.对第二时刻所述交通路口中每个车辆的行驶状态数据进行预处理,得到各个所述节点的第二节点特征数据,并将所述第二节点特征数据作为第二状态;
25.获取所述交通路口反馈至所述智能体的目标奖励;
26.根据所述第一状态、所述目标动作、所述目标奖励和所述第二状态,生成一条所述经验记录。
27.进一步的,所述对第一时刻所述交通路口中每个车辆的行驶状态数据进行预处理,得到各个所述节点的第一节点特征数据,可以包括:
28.对第一时刻所述交通路口中每个车辆的行驶状态数据中的未来行驶方向进行独热编码处理;
29.针对每个所述节点,获取第一时刻所述交通路口中每个车辆的行驶状态数据中,
与所述节点对应的相位下所有可通行车道的所有车辆的行驶状态数据,并对所述所有车辆的行驶状态数据进行融合处理,得到所述节点的第一节点特征数据。
30.更进一步的,所述对所述所有车辆的行驶状态数据进行融合处理,得到所述节点的第一节点特征数据,可以包括:
31.将所述所有车辆的行驶状态数据进行叠加,得到所述节点的第一节点特征数据;
32.或者,使用多层感知机对所述所有车辆的行驶状态数据进行融合,得到所述节点的第一节点特征数据。
33.进一步的,所述获取所述交通路口反馈至所述智能体的目标奖励,可以包括:
34.获取所述交通路口在所述第二时刻的车辆排队长度和车辆等待时间;
35.根据所述车辆排队长度和所述车辆等待时间,计算得到所述目标奖励。
36.在本技术实施例的一种实现方式中,所述获取交通路口中每个车辆的行驶状态数据,可以包括:
37.通过每个所述车辆的导航设备获取导航数据;
38.从所述导航数据中提取每个所述车辆的行驶状态数据。
39.本技术实施例的第二方面提供了一种交通信号灯的控制装置,包括:
40.车辆数据获取模块,用于获取交通路口中每个车辆的行驶状态数据,所述行驶状态数据包括对应车辆在所述交通路口的未来行驶方向;
41.信号灯控制模块,用于将所述行驶状态数据输入至已训练的信号灯控制模型进行处理,通过所述信号灯控制模型输出的状态动作价值函数,对所述交通路口的信号灯进行控制;
42.其中,所述信号灯控制模型为基于深度强化学习算法训练得到的图神经网络,所述图神经网络的节点为信号灯的各个相位,各个所述节点的特征数据为对应相位下所有可通行车道的车辆的行驶状态数据,所述深度强化学习算法的状态为车辆的行驶状态数据,所述深度强化学习算法的动作为信号灯的各个相位。
43.本技术实施例的第三方面提供了一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如本技术实施例的第一方面提供的交通信号灯的控制方法。
44.本技术实施例的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如本技术实施例的第一方面提供的交通信号灯的控制方法。
45.本技术实施例的第五方面提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行如本技术实施例的第一方面提供的交通信号灯的控制方法。
46.可以理解的是,上述第二方面至第五方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。
附图说明
47.图1是本技术实施例提供的一种交通信号灯的控制方法的流程图;
48.图2是本技术实施例提供的交通信号灯的控制方法在一个实际应用场景下的操作
流程示意图;
49.图3是本技术实施例提供的图神经网络的一种节点结构示意图;
50.图4是本技术实施例提供的一种交通信号灯的控制装置的结构示意图;
51.图5是本技术实施例提供的一种终端设备的示意图。
具体实施方式
52.以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本技术实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本技术。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本技术的描述。另外,在本技术说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
53.交通信号灯的控制策略对于维护交通路口的车辆通行秩序以及提升车辆通行效率十分关键,然而现有的控制策略基本上只考虑交通路口中各个车道的车辆排队长度等静态信息,没有考虑到路口各个车辆的动态特征(例如速度和变道趋势)和每一个路口的车辆运行空间特征给当前路口及其下游路口带来的影响。因此,现有的控制策略存在信号灯配时不准,车辆通行效率较低的问题。有鉴于此,本技术实施例提供了一种交通信号灯的控制方法、装置、终端设备和存储介质,能够提高交通路口信号灯配时的准确度,从而提升车辆通行效率。关于本技术实施例更具体的技术实现细节,请参照下文所述的方法实施例。
54.应当理解,本技术各个方法实施例的执行主体为各种类型的终端设备或服务器,例如可以是手机、平板电脑、可穿戴设备、车载设备、增强现实(augmented reality,ar)/虚拟现实(virtual reality,vr)设备、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,umpc)、上网本、个人数字助理(personal digital assistant,pda)、大屏电视,等等,本技术实施例对该终端设备和服务器的具体类型不作任何限制。
55.请参阅图1,示出了本技术实施例提供的一种交通信号灯的控制方法,包括:
56.101、获取交通路口中每个车辆的行驶状态数据,行驶状态数据包括对应车辆在交通路口的未来行驶方向;
57.本方法实施例的执行主体可以是用于控制交通路口中各个信号灯的任意类型的终端设备。首先,终端设备获取交通路口中每个车辆的行驶状态数据。行驶状态数据可以包括但不限于:车辆在交通路口的未来行驶方向(例如直行、左转、右转或者掉头等)、车速和距离交通路口的距离,等等。这些行驶状态数据可以通过每个车辆的导航设备或者设置于交通路口的激光雷达等设备获取,并发送至该终端设备。
58.在本技术实施例的一种实现方式中,所述获取交通路口中每个车辆的行驶状态数据,可以包括:
59.(1)通过每个所述车辆的导航设备获取导航数据;
60.(2)从所述导航数据中提取每个所述车辆的行驶状态数据。
61.通过每个车辆的导航设备(例如车载的导航设备或者驾驶员使用的手机等)可以方便地获取到车辆的导航数据,这些导航数据中包括车辆的速度、在当前交通路口的未来行驶方向、距离交通路口的距离以及路口摄像头位置等信息。一方面,终端设备可以通过和
交通路口中每个车辆的导航设备进行无线交互,从而获取到每个车辆的导航数据;另一方面,每个车辆的导航数据一般都是由车辆导航系统的服务器提供的,因此终端设备可以通过和该服务器进行无线交互,从而获取到每个车辆的导航数据。终端设备在获取到交通路口中每个车辆的导航数据之后,即可从中提取所需的部分数据作为车辆的行驶状态数据,例如可以提取导航数据中的车速、在当前交通路口的未来行驶方向以及距离交通路口的距离等数据。
62.102、将行驶状态数据输入至已训练的信号灯控制模型进行处理,通过信号灯控制模型输出的状态动作价值函数,对交通路口的信号灯进行控制。
63.在本方法实施例中,基于深度强化学习算法预先训练一个图神经网络作为信号灯控制模型。终端设备在获取到交通路口中每个车辆的行驶状态数据之后,可以将这些行驶状态数据作为输入信息,输入至该信号灯控制模型,通过该信号灯控制模型输出的状态动作价值函数实现对交通路口的信号灯的控制。其中,图神经网络的节点设置为信号灯的各个相位(一个相位表示交通路口中所有信号灯的一种显示状态,例如“东西直行”相位表示交通路口中东西直行方向的信号灯显示绿灯,其它方向的信号灯显示红灯,以此类推),每个节点的特征数据为对应相位下所有可通行车道的车辆的行驶状态数据,例如,针对“东西直行”相位,其特征数据为东西方向直行的车道上的所有车辆的行驶状态数据;使用的深度强化学习算法的状态s为车辆的行驶状态数据,动作a为信号灯的各个相位。具体的,通过该信号灯控制模型输出的状态动作价值函数可以确定当前执行的动作a,从而将该交通路口中的各个信号灯设置为动作a对应的相位。
64.在本技术实施例的一种实现方式中,所述信号灯控制模型可以通过以下方式训练得到:
65.(1)通过所述深度强化学习算法的智能体从经验池中抽取设定数量的经验记录;其中,每条所述经验记录包含所述智能体与所述交通路口进行交互时得到的状态更新信息、执行动作以及所述交通路口反馈的奖励;
66.(2)以所述设定数量的经验记录作为训练集,对已构建的图神经网络进行优化训练,得到所述信号灯控制模型。
67.在设计图神经网络时,将信号灯的每个相位作为图表示的一个节点,各节点之间用边相连,每一条边的特征为被指向节点的信号灯相位编码(一般可以是权重系数),每个节点的特征数据分别为对应相位下所有可通行车道的车辆的行驶状态数据,这里可以对该相位下所有可通行车道的所有车辆的行驶状态数据进行一定的处理,将处理后的数据作为节点的特征数据。例如,可以将所有车辆的行驶状态数据进行叠加后作为节点的特征数据,也可以将所有车辆的行驶状态数据进行拼接输入到一个全连接神经网络中,然后将该全连接神经网络的输出作为节点的特征数据,还可以根据其它应用需要对所有车辆的行驶状态数据进行各类不同的处理。在数据处理结束后,构建出一个图神经网络,作为交通路口动态特征以及空间特征的提取器,该图神经网络也是深度强化学习算法(dqn算法)所需要的神经网络。
68.在深度强化学习算法的应用中,可以通过智能体和交通路口进行交互的方式生成多条经验记录,其中每条经验记录包含智能体与交通路口进行交互时得到的状态更新信息、执行动作以及交通路口反馈的奖励。生成的经验记录可以存入算法的经验池,在训练图
神经网络时,可以通过深度强化学习算法的智能体从经验池中抽取设定数量(例如可以按照设置的batch-size的大小进行随机抽取)的经验记录,然后以抽取的这些经验记录作为训练集,对之前构建的图神经网络进行优化训练,优化训练后的图神经网络即作为前文所述的信号灯控制模型。
69.在本技术实施例的一种实现方式中,在通过所述深度强化学习算法的智能体从经验池中抽取设定数量的经验记录之前,还可以包括:
70.(1)构建评估网络和目标网络;其中,所述评估网络和所述目标网络为结构相同的图神经网络;
71.(2)基于所述评估网络,通过所述智能体与所述交通路口交互的方式,生成多条所述经验记录;
72.(3)将多条所述经验记录存入所述经验池。
73.深度强化学习算法需要构建两个结构相同的图神经网络,分别称作评估网络(评估网络也可称作主网络)和目标网络,评估网络的权重参数用θ表示,目标网络的权重参数用θ'表示。基于该评估网络,深度强化学习算法的智能体和交通路口(作为外部环境)每交互一次可以生成一条经验记录,通过多次交互后可以生成多条经验记录,当生成足够数量的经验记录时(也即交互步数达到设定阈值时),将这些经验记录全部存入经验池。
74.所述以所述设定数量的经验记录作为训练集,对已构建的图神经网络进行优化训练,得到所述信号灯控制模型,可以包括:
75.以所述设定数量的经验记录作为训练集,利用基于所述评估网络输出的状态动作价值函数和所述目标网络输出的状态动作价值函数构建的损失函数,对所述评估网络进行优化训练,得到所述信号灯控制模型。
76.在获得足够数量的经验记录并存入经验池之后,即可对该评估网络进行优化训练,以获得最终的信号灯控制模型。此时,深度强化学习算法的智能体会从经验池中抽取一定数量的经验记录作为训练集,对该评估网络进行优化训练,通过最小化损失函数的方式来使智能体学习到最优的信号灯相位控制策略。这里的损失函数可以基于评估网络输出的状态动作价值函数q
θ

和目标网络输出的状态动作价值函数q
θ
构建,例如可以采用以下损失函数:
77.loss=e(r+γmaxq
θ
′-q
θ
)278.其中,loss表示损失函数,e表示求数学期望,r表示交通路口反馈给智能体的奖励,γ表示衰减因子。
79.在通过最小化损失函数对评估网络进行优化训练时可以采用多轮训练的方式,每隔n个训练轮数,可以将评估网络的权重参数θ赋值给目标网络的权重参数θ',从而完成目标网络的权重参数更新。在经过重复执行的多轮训练之后,智能体可以学习到最优的信号灯相位控制策略,此时结束训练过程,并将训练优化后得到的评估网络作为信号灯控制模型。
80.具体的,所述基于所述评估网络,通过所述智能体与所述交通路口交互的方式,生成多条所述经验记录,可以包括:
81.(1)获取第一时刻所述交通路口中每个车辆的行驶状态数据;
82.(2)对第一时刻所述交通路口中每个车辆的行驶状态数据进行预处理,得到各个
所述节点的第一节点特征数据;
83.(3)将各个所述节点的第一节点特征数据作为第一状态输入所述评估网络进行处理,由所述智能体根据所述评估网络输出的状态动作价值函数从动作空间中选取目标动作;
84.(4)根据所述目标动作控制所述信号灯切换相位;
85.(5)在所述信号灯切换相位后,获取第二时刻所述交通路口中每个车辆的行驶状态数据;
86.(6)对第二时刻所述交通路口中每个车辆的行驶状态数据进行预处理,得到各个所述节点的第二节点特征数据,并将所述第二节点特征数据作为第二状态;
87.(7)获取所述交通路口反馈至所述智能体的目标奖励;
88.(8)根据所述第一状态、所述目标动作、所述目标奖励和所述第二状态,生成一条所述经验记录。
89.在基于评估网络,通过智能体与交通路口交互的方式,生成经验记录的时候。首先,在交互开始的时候,假设当前时刻为第一时刻,则获取第一时刻该交通路口中每个车辆的行驶状态数据;然后,对每个车辆的行驶状态数据进行预处理,这里主要是将每个节点对应相位下的可通行车道的所有车辆的行驶状态数据进行融合处理,从而分别得到各个节点的节点特征数据(用第一节点特征数据表示);接着,将各个节点的第一节点特征数据作为状态s(用第一状态表示)输入评估网络进行处理,评估网络可以输出一个对应的状态动作价值函数(深度强化学习算法中的q值,也即q(s,a)),由智能体根据该状态动作价值函数从动作空间(对应保存的各个信号灯相位)中选择一个动作a(相位),用目标动作表示;动作a确定后,交通路口的信号灯按照动作a执行相应的相位切换,交通路口的车辆情况也随之发生变化;之后,假设这个时候为第二时刻,再次获取第二时刻该交通路口中每个车辆的行驶状态数据,采用相同的方法进行预处理得到各个节点的第二节点特征数据,各个节点的第二节点特征数据可以作为下一个状态s’(用第二状态表示);另外,通过交通路口也可以反馈给智能体一个奖励r(用目标奖励表示),奖励r的作用在于引导智能体在学习训练时不断调整策略,以提升交通路口的通行效率。
90.具体的,获取交通路口反馈至智能体的目标奖励,可以包括:
91.(1)获取交通路口在第二时刻的车辆排队长度和车辆等待时间;
92.(2)根据车辆排队长度和车辆等待时间,计算得到目标奖励。
93.奖励r的设计可以包含交通路口当前各个车道的排队长度和各个车辆的等待时间等信息,也可以根据应用需要合理添加其它指标参数。具体的,可以获取该交通路口在第二时刻各个车道的车辆排队长度和车辆等待时间,然后根据该车辆排队长度和车辆等待时间,采用预设的公式计算得到对应的目标奖励r。
94.至此,可以得到一条经验记录(s,a,r,s’),并将该经验记录存入经验池。接下来,可以将状态s’作为当前状态,继续输入评估网络进行处理,不断重复相同的处理过程,直至经验池存储足够数量的经验记录。
95.在每一个决策的时间步,将状态s输入到评估网络时,评估网络会执行相应的信息传递操作,其中对于特定的节点v,信息传递操作可用以下公式表示:
[0096][0097][0098]
其中,为节点v在t+1时间步接受到的信息,n(v)为节点v的所有邻接节点,为节点v在t时间步的特征向量(即节点特征数据),e
vw
为节点v和节点w之间的边特征,m
t
为预设的消息函数,u
t
为预设节点更新函数。状态s在经过上述信息传递操作的处理后,会生成对应的q值。
[0099]
进一步的,所述对第一时刻所述交通路口中每个车辆的行驶状态数据进行预处理,得到各个所述节点的第一节点特征数据,可以包括:
[0100]
(1)对第一时刻所述交通路口中每个车辆的行驶状态数据中的未来行驶方向进行独热编码处理;
[0101]
(2)针对每个所述节点,获取第一时刻所述交通路口中每个车辆的行驶状态数据中,与所述节点对应的相位下所有可通行车道的所有车辆的行驶状态数据,并对所述所有车辆的行驶状态数据进行融合处理,得到所述节点的第一节点特征数据。
[0102]
在对车辆的行驶状态数据进行预处理时,可以将其中的未来行驶方向进行独热编码处理。例如,在进行独热编码后,“直行”可以为[1,0,0,0]、“左转”可以为[0,1,0,0]、“右转”可以为[0,0,1,0],“掉头”可以为[0,0,0,1]。通过将未来行驶方向进行独热编码处理,后续能够很方便地将各个车辆的未来行驶方向进行融合。针对每个节点,首先获取与该节点对应的相位下所有可通行车道的所有车辆的行驶状态数据,然后将所有车辆的行驶状态数据进行融合处理,最终得到该节点的节点特征数据。例如,针对“东西直行”相位节点,其对应的可通行车道是东西方向直行的车道,假设东西方向直行的车道上行驶的车辆是10个车辆,则可以将这10个车辆的行驶状态数据进行融合处理,从而得到“东西直行”相位节点的节点特征数据。显然,每个节点都可以采用上述相同的方式获得对应的节点特征数据。
[0103]
更进一步的,所述对所述所有车辆的行驶状态数据进行融合处理,得到所述节点的第一节点特征数据,可以包括:
[0104]
将所述所有车辆的行驶状态数据进行叠加,得到所述节点的第一节点特征数据;
[0105]
或者,使用多层感知机对所述所有车辆的行驶状态数据进行融合,得到所述节点的第一节点特征数据。
[0106]
在将车辆的行驶状态数据进行融合处理时,一种方式是将各个车辆的行驶状态数据进行叠加,也即求和处理,得到对应节点最终的节点特征数据。另一种方式是使用多层感知机(mlp),通过多层感知机可以将各个车辆的行驶状态数据进行融合,从而得到对应节点最终的节点特征数据。关于多层感知机的具体工作原理可以参照现有技术,在此不再赘述。
[0107]
本技术实施例的技术关键点在于获取交通路口每个车辆的未来行驶方向,在对未来行驶方向进行独热编码后融合成图神经网络各个节点的特征数据。未来行驶方向代表了车辆在交通路口未来的空间位置信息,当前路口所有方向的车辆的未来行驶方向共同表征了路口的空间动态特征,也即路口车辆运行方向的动态信息。因此,路口所有车辆的未来行驶方向的独热编码可以表示未来时刻路口所有车辆的空间动态特征。空间动态特征对于路口的信号灯控制策略是及其重要的,信号灯控制实际上是通过信号相位变换来控制路口各
个方向的车流量,从而提高路口的通行效率,减缓拥堵情况。然而,上游路口与下游路口之间是密切相关的,上游路口的车流量也会影响下游路口的车辆通行效率,因此不能单纯使用静态的排队长度和车辆数量数据作为信号控制策略的输入,其并没有表示车辆未来的行驶方向,因此控制模型很难制定更合理的策略来控制路口的车流量。上述提出的被独热编码的未来行驶方向信息可以很好的刻画未来时刻路口每一辆车的空间动态特征,控制模型可以根据这些空间动态特征智能地转换信号灯的相位。由于每一辆车在信号灯的控制下,会从路口原始方位的驶入方向转换到路口其他方位的驶出方向,之后进入驶出方向的车辆又变成下游路口对应方位的驶入方向,因此从相位角度来看,车辆相当于是从图神经网络的一个节点转移到另一个节点,其被编码的未来行驶方向数据也从当前节点通过数据流转移到另一节点,作为另一节点的特征数据。经过独热编码的空间动态特征数据经过图神经网络不断进行的信息传递与反向传播操作,可以挖掘出路口的空间特征。深度强化学习算法的智能体可以根据图神经网络的输出信息不断交互学习,最终学习到最优的路口空间特征与信号灯相位变化的映射关系。
[0108]
在本技术实施例中,首先,获取交通路口中每个车辆的行驶状态数据,行驶状态数据中包括对应车辆在交通路口的未来行驶方向,例如直行、左转或者右转等;然后,将这些行驶状态数据输入至一个预先完成训练的信号灯控制模型进行处理,通过该信号灯控制模型输出的状态动作价值函数能够确定执行的信号灯相位,从而实现对交通路口信号的控制。其中,该信号灯控制模型是基于深度强化学习算法训练得到的图神经网络,其节点为信号灯的各个相位,其节点的特征数据为对应相位下所有可通行车道的车辆的行驶状态数据;使用的深度强化学习算法的状态为车辆的行驶状态数据,动作为信号灯的各个相位。本技术实施例使用的输入信息包含了交通路口中各个车辆的未来行驶方向,由于未来行驶方向代表着车辆在该交通路口中未来的空间位置信息,因此该交通路口中所有车辆的未来行驶方向共同表征着该交通路口的空间动态特征,也即车辆运行方向的动态信息。信号灯控制算法根据这些空间动态特征能够考虑到交通路口中各个方位未来的车流量,从而更智能且更合理地转换信号灯相位,因此能够提高信号灯配时的准确度,提升车辆通行效率。
[0109]
为便于理解本技术实施例提供的交通信号灯的控制方法,以下列举一个实际的应用场景。如图2所示,为本技术实施例提供的交通信号灯的控制方法在一个实际应用场景下的操作流程示意图。
[0110]
在图2中,首先获取路口所有车辆的导航数据,对导航数据进行处理得到车辆的行驶状态数据,行驶状态数据包括车辆的速度、距路口的距离和未来行驶方法;然后,构造图神经网络,将信号灯的相位作为图节点,如图3所示,为图神经网络的一种节点结构示意图,在图3中包含“南北直行”、“东西直行”、“南北左转”和“东西左转”共4个不同信号灯相位对应的节点;对每个相位对应的车辆行驶状态数据进行融合处理,得到图神经网络每个节点的特征数据,也即深度强化学习算法的状态s;接着,通过深度强化学习算法的智能体与路口进行交互的方式,收集经验记录并存储至经验池;之后,从经验池中抽取一定数量的经验记录训练优化图神经网络,使智能体学习到最优的控制策略,得到最终的信号灯控制模型;最后,使用该信号灯控制模型完成对交通路口的信号灯的控制。
[0111]
综上所述,本技术实施例通过把交通路口的所有信号灯相位构造成一个图表示,综合考虑当前路口各相位的空间特征,利用图神经网络节点之间的数据传输与数据融合等
特性,基于路口的动态数据挖掘抽取路口空间特征,从而获得路口各个方向车辆运行的空间关系,同时采用深度强化学习算法学习路口时空特征与信号灯控制之间的映射关系来实现信号灯的最优序列控制。在图神经网络挖掘路口空间特征的强大能力加持下,深度强化学习算法的智能体可以根据路口动态信息制定最优的信号灯控制策略,从而提高路口的车辆通行效率。
[0112]
应理解,上述各个实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本技术实施例的实施过程构成任何限定。
[0113]
上面主要描述了一种交通信号灯的控制方法,下面将对一种交通信号灯的控制装置进行描述。
[0114]
请参阅图4,本技术实施例中一种交通信号灯的控制装置的一个实施例包括:
[0115]
车辆数据获取模块401,用于获取交通路口中每个车辆的行驶状态数据,所述行驶状态数据包括对应车辆在所述交通路口的未来行驶方向;
[0116]
信号灯控制模块402,用于将所述行驶状态数据输入至已训练的信号灯控制模型进行处理,通过所述信号灯控制模型输出的状态动作价值函数,对所述交通路口的信号灯进行控制;
[0117]
其中,所述信号灯控制模型为基于深度强化学习算法训练得到的图神经网络,所述图神经网络的节点为信号灯的各个相位,各个所述节点的特征数据为对应相位下所有可通行车道的车辆的行驶状态数据,所述深度强化学习算法的状态为车辆的行驶状态数据,所述深度强化学习算法的动作为信号灯的各个相位。
[0118]
在本技术实施例的一种实现方式中,所述交通信号灯的控制装置还可以包括:
[0119]
经验记录抽取模块,用于通过所述深度强化学习算法的智能体从经验池中抽取设定数量的经验记录;其中,每条所述经验记录包含所述智能体与所述交通路口进行交互时得到的状态更新信息、执行动作以及所述交通路口反馈的奖励;
[0120]
图神经网络训练模块,用于以所述设定数量的经验记录作为训练集,对已构建的图神经网络进行优化训练,得到所述信号灯控制模型。
[0121]
在本技术实施例的一种实现方式中,所述交通信号灯的控制装置还可以包括:
[0122]
网络构建模块,用于构建评估网络和目标网络;其中,所述评估网络和所述目标网络为结构相同的图神经网络;
[0123]
经验记录生成模块,用于基于所述评估网络,通过所述智能体与所述交通路口交互的方式,生成多条所述经验记录;
[0124]
经验记录存储模块,用于将多条所述经验记录存入所述经验池;
[0125]
所述图神经网络训练模块具体可以用于:以所述设定数量的经验记录作为训练集,利用基于所述评估网络输出的状态动作价值函数和所述目标网络输出的状态动作价值函数构建的损失函数,对所述评估网络进行优化训练,得到所述信号灯控制模型。
[0126]
进一步的,所述经验记录生成模块可以包括:
[0127]
第一车辆数据获取单元,用于获取第一时刻所述交通路口中每个车辆的行驶状态数据;
[0128]
第一数据预处理单元,用于对第一时刻所述交通路口中每个车辆的行驶状态数据
进行预处理,得到各个所述节点的第一节点特征数据;
[0129]
车辆数据输入单元,用于将各个所述节点的第一节点特征数据作为第一状态输入所述评估网络进行处理,由所述智能体根据所述评估网络输出的状态动作价值函数从动作空间中选取目标动作;
[0130]
相位切换单元,用于根据所述目标动作控制所述信号灯切换相位;
[0131]
第二车辆数据获取单元,用于在所述信号灯切换相位后,获取第二时刻所述交通路口中每个车辆的行驶状态数据;
[0132]
第二数据预处理单元,用于对第二时刻所述交通路口中每个车辆的行驶状态数据进行预处理,得到各个所述节点的第二节点特征数据,并将所述第二节点特征数据作为第二状态;
[0133]
路口奖励获取单元,用于获取所述交通路口反馈至所述智能体的目标奖励;
[0134]
经验记录生成单元,用于根据所述第一状态、所述目标动作、所述目标奖励和所述第二状态,生成一条所述经验记录。
[0135]
进一步的,所述第一数据预处理单元可以包括:
[0136]
独热编码处理单元,用于对第一时刻所述交通路口中每个车辆的行驶状态数据中的未来行驶方向进行独热编码处理;
[0137]
数据融合处理单元,用于针对每个所述节点,获取第一时刻所述交通路口中每个车辆的行驶状态数据中,与所述节点对应的相位下所有可通行车道的所有车辆的行驶状态数据,并对所述所有车辆的行驶状态数据进行融合处理,得到所述节点的第一节点特征数据。
[0138]
更进一步的,所述数据融合处理单元可以包括:
[0139]
数据叠加处理子单元,用于将所述所有车辆的行驶状态数据进行叠加,得到所述节点的第一节点特征数据;
[0140]
数据融合处理子单元,用于使用多层感知机对所述所有车辆的行驶状态数据进行融合,得到所述节点的第一节点特征数据。
[0141]
更进一步的,所述路口奖励获取单元可以包括:
[0142]
路口排队数据获取子单元,用于获取所述交通路口在所述第二时刻的车辆排队长度和车辆等待时间;
[0143]
路口奖励计算子单元,用于根据所述车辆排队长度和所述车辆等待时间,计算得到所述目标奖励。
[0144]
在本技术实施例的一种实现方式中,所述车辆数据获取模块可以包括:
[0145]
导航数据获取单元,用于通过每个所述车辆的导航设备获取导航数据;
[0146]
车辆数据提取单元,用于从所述导航数据中提取每个所述车辆的行驶状态数据。
[0147]
本技术实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一实施例描述的交通信号灯的控制方法。
[0148]
本技术实施例还提供一种计算机程序产品,当该计算机程序产品在终端设备上运行时,使得终端设备执行如上述任一实施例描述的交通信号灯的控制方法。
[0149]
图5是本技术一实施例提供的终端设备的示意图。如图5所示,该实施例的终端设
备5包括:处理器50、存储器51以及存储在所述存储器51中并可在所述处理器50上运行的计算机程序52。所述处理器50执行所述计算机程序52时实现上述各个交通信号灯的控制方法的实施例中的步骤,例如图1所示的步骤101至102。或者,所述处理器50执行所述计算机程序52时实现上述各装置实施例中各模块/单元的功能,例如图4所示模块401至402的功能。
[0150]
所述计算机程序52可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器51中,并由所述处理器50执行,以完成本技术。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序52在所述终端设备5中的执行过程。
[0151]
所称处理器50可以是中央处理单元(central processing unit,cpu),还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现成可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0152]
所述存储器51可以是所述终端设备5的内部存储单元,例如终端设备5的硬盘或内存。所述存储器51也可以是所述终端设备5的外部存储设备,例如所述终端设备5上配备的插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)等。进一步地,所述存储器51还可以既包括所述终端设备5的内部存储单元也包括外部存储设备。所述存储器51用于存储所述计算机程序以及所述终端设备所需的其他程序和数据。所述存储器51还可以用于暂时地存储已经输出或者将要输出的数据。
[0153]
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本技术的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0154]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0155]
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
[0156]
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
[0157]
在本技术所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的系统实施例仅仅是示意性的,例如,所述模块或单元的划分,
仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
[0158]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本技术实施例方案的目的。
[0159]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0160]
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括是电载波信号和电信信号。
[0161]
以上所述实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的精神和范围,均应包含在本技术的保护范围之内。

技术特征:
1.一种交通信号灯的控制方法,其特征在于,包括:获取交通路口中每个车辆的行驶状态数据,所述行驶状态数据包括对应车辆在所述交通路口的未来行驶方向;将所述行驶状态数据输入至已训练的信号灯控制模型进行处理,通过所述信号灯控制模型输出的状态动作价值函数,对所述交通路口的信号灯进行控制;其中,所述信号灯控制模型为基于深度强化学习算法训练得到的图神经网络,所述图神经网络的节点为信号灯的各个相位,各个所述节点的特征数据为对应相位下所有可通行车道的车辆的行驶状态数据,所述深度强化学习算法的状态为车辆的行驶状态数据,所述深度强化学习算法的动作为信号灯的各个相位。2.如权利要求1所述的控制方法,其特征在于,所述信号灯控制模型通过以下方式训练得到:通过所述深度强化学习算法的智能体从经验池中抽取设定数量的经验记录;其中,每条所述经验记录包含所述智能体与所述交通路口进行交互时得到的状态更新信息、执行动作以及所述交通路口反馈的奖励;以所述设定数量的经验记录作为训练集,对已构建的图神经网络进行优化训练,得到所述信号灯控制模型。3.如权利要求2所述的控制方法,其特征在于,在通过所述深度强化学习算法的智能体从经验池中抽取设定数量的经验记录之前,还包括:构建评估网络和目标网络;其中,所述评估网络和所述目标网络为结构相同的图神经网络;基于所述评估网络,通过所述智能体与所述交通路口交互的方式,生成多条所述经验记录;将多条所述经验记录存入所述经验池;所述以所述设定数量的经验记录作为训练集,对已构建的图神经网络进行优化训练,得到所述信号灯控制模型,包括:以所述设定数量的经验记录作为训练集,利用基于所述评估网络输出的状态动作价值函数和所述目标网络输出的状态动作价值函数构建的损失函数,对所述评估网络进行优化训练,得到所述信号灯控制模型。4.如权利要求3所述的控制方法,其特征在于,所述基于所述评估网络,通过所述智能体与所述交通路口交互的方式,生成多条所述经验记录,包括:获取第一时刻所述交通路口中每个车辆的行驶状态数据;对第一时刻所述交通路口中每个车辆的行驶状态数据进行预处理,得到各个所述节点的第一节点特征数据;将各个所述节点的第一节点特征数据作为第一状态输入所述评估网络进行处理,由所述智能体根据所述评估网络输出的状态动作价值函数从动作空间中选取目标动作;根据所述目标动作控制所述信号灯切换相位;在所述信号灯切换相位后,获取第二时刻所述交通路口中每个车辆的行驶状态数据;对第二时刻所述交通路口中每个车辆的行驶状态数据进行预处理,得到各个所述节点的第二节点特征数据,并将所述第二节点特征数据作为第二状态;
获取所述交通路口反馈至所述智能体的目标奖励;根据所述第一状态、所述目标动作、所述目标奖励和所述第二状态,生成一条所述经验记录。5.如权利要求4所述的控制方法,其特征在于,所述对第一时刻所述交通路口中每个车辆的行驶状态数据进行预处理,得到各个所述节点的第一节点特征数据,包括:对第一时刻所述交通路口中每个车辆的行驶状态数据中的未来行驶方向进行独热编码处理;针对每个所述节点,获取第一时刻所述交通路口中每个车辆的行驶状态数据中,与所述节点对应的相位下所有可通行车道的所有车辆的行驶状态数据,并对所述所有车辆的行驶状态数据进行融合处理,得到所述节点的第一节点特征数据。6.如权利要求5所述的控制方法,其特征在于,所述对所述所有车辆的行驶状态数据进行融合处理,得到所述节点的第一节点特征数据,包括:将所述所有车辆的行驶状态数据进行叠加,得到所述节点的第一节点特征数据;或者,使用多层感知机对所述所有车辆的行驶状态数据进行融合,得到所述节点的第一节点特征数据。7.如权利要求4所述的控制方法,其特征在于,所述获取所述交通路口反馈至所述智能体的目标奖励,包括:获取所述交通路口在所述第二时刻的车辆排队长度和车辆等待时间;根据所述车辆排队长度和所述车辆等待时间,计算得到所述目标奖励。8.如权利要求1至7任一项所述的控制方法,其特征在于,所述获取交通路口中每个车辆的行驶状态数据,包括:通过每个所述车辆的导航设备获取导航数据;从所述导航数据中提取每个所述车辆的行驶状态数据。9.一种交通信号灯的控制装置,其特征在于,包括:车辆数据获取模块,用于获取交通路口中每个车辆的行驶状态数据,所述行驶状态数据包括对应车辆在所述交通路口的未来行驶方向;信号灯控制模块,用于将所述行驶状态数据输入至已训练的信号灯控制模型进行处理,通过所述信号灯控制模型输出的状态动作价值函数,对所述交通路口的信号灯进行控制;其中,所述信号灯控制模型为基于深度强化学习算法训练得到的图神经网络,所述图神经网络的节点为信号灯的各个相位,各个所述节点的特征数据为对应相位下所有可通行车道的车辆的行驶状态数据,所述深度强化学习算法的状态为车辆的行驶状态数据,所述深度强化学习算法的动作为信号灯的各个相位。10.一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至8任一项所述的交通信号灯的控制方法。11.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至8任一项所述的交通信号灯的控制
方法。

技术总结
本申请涉及设备控制技术领域,提出一种交通信号灯的控制方法、装置、终端设备和存储介质。该方法包括:获取交通路口中每个车辆的行驶状态数据,行驶状态数据包括对应车辆在交通路口的未来行驶方向;将行驶状态数据输入至已训练的信号灯控制模型进行处理,通过信号灯控制模型输出的状态动作价值函数,对交通路口的信号灯进行控制;其中,信号灯控制模型为基于深度强化学习算法训练得到的图神经网络,图神经网络的节点为信号灯的各个相位,各个节点的特征数据为对应相位下所有可通行车道的车辆的行驶状态数据,深度强化学习算法的状态为车辆的行驶状态数据,动作为信号灯的各个相位。采用该方法能够提高信号灯配时的准确度,从而提升车辆通行效率。提升车辆通行效率。提升车辆通行效率。


技术研发人员:李荦 杨唐涛 王邓江 胡汇泽
受保护的技术使用者:苏州万集车联网技术有限公司
技术研发日:2022.12.26
技术公布日:2023/5/31
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐