基于最小生成树聚类改进遗传算法的相邻交叉口干道协调控制方法转让专利

申请号 : CN201510121744.3

文献号 : CN104700634B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 杨新武王巧慧薛慧斌

申请人 : 北京工业大学

摘要 :

基于最小生成树聚类改进遗传算法的相邻交叉口干道协调控制方法,包括相邻交叉口干道协调控制模型的建立;进行个体编码、初始化数据,并设定参数;进行种群初始化;计算种群内个体的适应度值;对种群进行最小生成树聚类;选择种群内个体参加遗传操作;对选择的个体进行交叉和变异操作;重复迭代直到得到最佳个体。本发明以车辆总延误为性能指标通过分析车队到达路口前遇到的信号灯状态以及路口前车辆在放行期间是否完全放行建立了更完善的相邻交叉口干道协调控制模型,并采用改进的遗传算法作为优化算法,同时以周期长度、信号配时、相位差三个因素作为参数进行优化求解。

权利要求 :

1.一种相邻交叉口干道协调控制模型的建立方法,其特征在于:分析与建立过程如下:以相邻交叉口系统建立数学模型,并从路口A到路口B下行,分析计算从路口A放行车队到达路口B的延误时间;定义路口A第一相位绿灯启亮时刻为0时刻,按照上游路口A放行车队的队首与队尾车辆到达下游路口B遇到的信号灯状态,以及下游路口B在放行期间是否达到平衡点分以下几种情况:

1)当车队头部到达路口B遇到第一红灯,将路口A绿灯启亮时刻作为0时刻,第一红灯,即路口B在0时刻后对应相位的信号灯第一次为红灯的状态,且车队尾部到达路口B遇到第二红灯即路口B在0时刻后对应相位的信号灯第二次为红灯的状态,在路口B绿灯放行期间,达到平衡点,即到达车辆与放行车辆达到平衡,到达车辆直接通过路口,满足如下条件车队头部到达路口B的时刻:车队尾部到达路口B的时刻:

绿灯启亮时刻与达到平衡点时刻的时间间隔:其中,L为两路口间的距离,Lchu为车队到达下游路口B时的初始排队长度,vl为车辆行驶的自由车速,NAB为上游路口A放行后的车队总车辆数,有NAB=sd*gA,sd为饱和流率即放行率,q0为车辆到达率;gA为上游路口A的绿灯时间长,gB为下游路口B的绿灯时间长,rB为下游路口B的红灯时间长,T为相位差,C为周期长度,n1为初始排队车辆数,有 Vr为一辆车的平均车身长度,车辆数与车队长度的换算值为4;

该车队延误描述下,t1为车队头部到达路口B的时刻,t2为车队尾部到达路口B的时刻,t为车队到达路口B在绿灯放行期间达到平衡点的时刻,该车队的受阻时间长,受阻延误Dxia为:

2)车队头部到达路口B遇到第一红灯,且车队尾部到达路口B遇到第二红灯,在路口B绿灯放行期间,未达到平衡点,即处于过饱和状态,满足如下条件车队头部到达路口B的时刻:

车队尾部到达路口B的时刻:

未达到平衡状态,处于过饱和状态:NAB+n1>sd*gB车队受阻描述下,受阻延误Dxia为:

3)车队头部到达路口B遇到第一红灯,且车队尾部到达路口B遇到绿灯,且在队尾最后一辆车到达路口B前,已经达到平衡状态,满足如下条件车队头部到达路口B的时刻:

车队尾部到达路口B的时刻:

达到平衡状态:

车队受阻描述如下,受阻延误Dxia为:

4)车队头部到达路口B遇到第一红灯,且车队尾部到达路口B遇到绿灯,但在该绿灯时长内达到平衡点前,队尾最后一辆车已经到达路口B,没有车辆继续到达,平衡点时刻即为车队最后一辆车放行时刻,满足如下条件车队头部到达路口B的时刻:

车队尾部到达路口B的时刻:

在达到平衡点前,车队最后一辆车已到达路口B:车队受阻描述如下,受阻延误Dxia为:

5)车队头部到达路口B遇到第一红灯,且车队尾部到达路口B遇到绿灯,但队尾最后一辆车到达路口B前都未达到平衡点,即虽然车队在绿灯结束前已经到达路口B,但在绿灯时长内未完全把车队放行,满足如下条件车队头部到达路口B的时刻:

车队尾部到达路口B的时刻:

路口B绿灯时长内未完全把车队放行:NAB+n1>sd*gB车队受阻描述如下,受阻延误Dxia为:

6)车队头部到达路口B遇到第一红灯,且车队尾部到达路口B也遇到第一红灯,且在路口B的绿灯时长内把车队车辆完全放行,满足如下条件车队头部到达路口B的时刻:

车队尾部到达路口B的时刻:

路口B绿灯时长内未完全把车队放行:NAB+n1≤sd*gB车队受阻描述如下,受阻延误Dxia为:

7)车队头部到达路口B遇到第一红灯,且车队尾部到达路口B也遇到第一红灯,且在路口B的绿灯时长内车队车辆未完全放行,满足如下条件车队头部到达路口B的时刻:

车队尾部到达路口B的时刻:

路口B绿灯时长内未完全把车队放行:NAB+n1>sd*gB车队受阻描述如下,受阻延误Dxia为:

8)车队头部到达路口B遇到绿灯,且初始排队车辆未消散,车队尾部到达路口B遇到红灯,在路口B绿灯放行期间,达到平衡点,满足如下条件车队头部到达路口B的时刻:

车队尾部到达路口B的时刻:

达到平衡点:

上述公式中,L'chu为车队头部到达路口B时的车辆排队长度,n2为车队头部到达路口B时的排队等候的车辆数,有: 这两个参数同时满足如下条件:n2=n1-(t1-T)*sd

得到:

车队受阻描述如下,受阻延误Dxia为:

9)车队头部到达路口B遇到绿灯,且初始排队车辆未消散,车队尾部到达路口B遇到红灯,但在路口B绿灯放行期间,未达到平衡点,即路口B处于过饱和状态,车队未完全放行,满足如下条件车队头部到达路口B的时刻:

车队尾部到达路口B的时刻:

未达到平衡点,处于过饱和状态:NAB+n2>sd*(T+gB-t1)车队受阻描述如下,受阻延误Dxia为:

10)车队头部到达路口B遇到绿灯,且初始排队车辆未消散,同时车队尾部到达路口B时也遇到绿灯,且在车队最后一辆车到达前,已达到平衡点,满足如下条件车队头部到达路口B的时刻:车队尾部到达路口B的时刻:

未达到平衡点,处于过饱和状态:x1

11)车队头部到达路口B遇到绿灯,且初始排队车辆未消散,同时车队尾部到达路口B时也遇到绿灯,且车队在剩余绿灯时长内完全放行,但在达到平衡点前,车队最后一辆车已经到达路口B,满足如下条件车队头部到达路口B的时刻:

车队尾部到达路口B的时刻:

未达到平衡点,处于过饱和状态:NAB+n2

12)车队头部到达路口B遇到绿灯,且初始排队车辆未消散,同时车队尾部到达路口B时也遇到绿灯,但车队在剩余绿灯时长内未完全放行,未达到平衡点,满足如下条件车队头部到达路口B的时刻:车队尾部到达路口B的时刻:

未达到平衡点,处于过饱和状态:NAB+n2>sd*(T+gB-t1)车队受阻描述如下,受阻延误Dxia为:

13)车队头部到达路口B遇到绿灯,且初始排队车辆完全消散,车队尾部到达路口B时遇到红灯,满足如下条件车队头部到达路口B的时刻:

车队尾部到达路口B的时刻:

初始排队车辆完全消散:L'chu=L-t1*vl≤0,车队受阻描述如下,受阻延误Dxia为:

14)车队头部到达路口B遇到绿灯,且初始排队车辆完全消散,车队尾部到达路口B时也遇到绿灯车队头部到达路口B的时刻:

车队尾部到达路口B的时刻:

初始排队车辆完全消散:L'chu=L-t1*vl≤0,Dxia=0

以上所有的延误受阻的所有不同情况,从下游路口B到达上游路口A的上行车队,同样分为上述14种情况,且得出上行车队的总延误Dshang,因此该相邻交叉口的总延误为:D=Dxia+Dshang   (14)至此,相邻交叉口的干道协调控制系统的数学模型已完成建立;

同时考虑分析上游放行车队的队首与队尾到达下游路口时遇到的信号灯状态以及在下游路口放行期间路口前车队是否完全放行,得到14种不同情况下的车队延误描述,建立了相邻交叉口干道协调控制模型。

2.一种基于最小生成树聚类改进遗传算法的相邻交叉口干道协调控制方法,其特征在于:该方法包括以下步骤:步骤一,进行个体编码、初始化数据,并设定参数;

针对相邻交叉口的交通控制中周期长度、绿灯配时以及相位差三因素做优化,译码方法如下:周期长度计算公式为

其中,n为对应二进制位数;MinC为周期长度最小值,取80s;MaxC为周期长度最大值;取

120s由于最大为120,因此周期长度需要6位二进制表示,即n为6;X为对应二进制转换成10进制的十进制数值,令 用fi表示一个个体中的第i个参数值,上式转化为:Cycle=MinC+INT[(MaxC-MinC)*f1]各路口各相位的绿灯配时需要5位二进制表示,计算公式为:G=MinG+INT{(Cycle-2*MinG)*f2}其中,MinG为最小绿灯时长,取40s;

相位差需要6位二进制表示,计算公式为:Offset=INT[Cycle*f4]步骤二,进行种群初始化,随机产生popsize个22位个体组成的种群;

步骤三,计算种群内个体的适应度值;

步骤四,对种群进行最小生成树聚类;

步骤五,选择种群内个体参加遗传操作;

对种群内个体采用轮盘赌选择两个个体,如果两个个体不属于同一类,则两个个体被选定,参与到遗传操作中产生后代个体;如果两个个体属于同一类,判断两个个体的适应度值大小,将适应度值大的个体淘汰,重新选择,直到选到的个体属于不同类为止;

步骤六,对步骤五选择的个体进行交叉和变异操作;

交叉操作,采用单点交叉,随机产生交叉位,互组父代个体之间的基因位,形成两个新的个体;

变异操作,对交叉后产生的两个个体,以一定的概率进行变异,0变1,或1变0,变异后产生个体还需要解码后判断是否满足ti的条件,如果满足,将其归入下一代种群,直到产生大小为popsize的后代种群,作为下一代操作的父代种群;如果不满足,则直接淘汰产生的新个体,同时计数器不进行累加,保证最后产生popsize个后代个体;

步骤七,重复执行步骤四~六,得到最佳个体;

所述步骤一中,同时对影响交通控制的参数周期长度、绿灯配时以及相位差三因素进行个体编码;所述步骤三中,计算适应度的适应度函数为相邻交叉口的总延误公式(14)。

说明书 :

基于最小生成树聚类改进遗传算法的相邻交叉口干道协调控

制方法

技术领域

[0001] 本发明属于城市交通控制中相邻交叉口信号配时的优化问题,首先建立相邻交叉口干道协调控制模型,然后采用基于聚类改进的遗传算法对其进行优化,是一种利用计算机技术、遗传算法、聚类分析方法以及数学建模方法来实现对城市相邻交叉口信号配时控制的方法。

背景技术

[0002] 由于当前城市交通拥挤状况日益加剧,对交叉口的信号控制就显得尤为重要,尤其是对车流量较大的干道交叉口,因此合理的协调控制干道交叉口的交通信号可有效缓解交通拥挤状况。对于干道交叉口的信号控制,传统的方法有图解法与数解法,它们是以最大绿波宽度为目标进行求解控制,其中数解法作为最常用的一种数值计算方法,已在一些干道系统设计中得到广泛应用,但其在计算过程中,考虑的因素过少,致使得到的信号解并不能获得较好的实际控制效果。
[0003] 针对传统的干道协调控制方法存在的考虑因素太少,未充分考虑实际交通流的特点等问题,许多学者进行了研究并提出了各种模型与智能控制算法。王进等人以获取最大排队长度为研究目标,建立了关联交叉口排队长度计算模型,详细的分析了交叉口前的排队生成机理,但其仅仅是验证了该计算方法的精确性,并没有建立完善的交通控制模型;卢凯、徐建闽以最小延误为性能指标,建立了干道协调控制相位差模型,但其优化方法采用枚举法实现,有待进一步改进;谷远利等人同样以最小延误为性能指标,建立了相邻交叉口相位差优化模型,且加入了外进口道与内进口道的研究分析,同时考虑了车辆的离散型,但其优化方法采用了存在较多缺陷的简单遗传算法,并且没有给出详细的遗传算法的设计过程。刘广萍、裴玉龙提出了在非饱和,饱和以及过饱和情况下的交叉口延误计算方法,但仅仅是以单交叉路口为研究目标提出了一种计算延误的方法,和王进等人一样并没有提出完善的交通控制模型。
[0004] 因此,本发明以车辆总延误为性能指标,通过分析车队到达路口前遇到的信号灯状态以及路口前车辆在放行期间是否完全放行建立了更完善的相邻交叉口干道协调控制模型,并采用改进的遗传算法作为优化算法,同时以周期长度、信号配时、相位差三个因素作为参数进行优化求解。最后与采用标准遗传算法以及传统的数解法分别作为优化算法得到的结果进行比较,验证所建立的干道协调控制模型以及改进遗传算法的有效性、合理性。

发明内容

[0005] 本发明的目的是以两相邻交叉口间干道路口前车辆的总延误最小为优化目标建立一个更完善的相邻交叉口干道协调控制模型,利用基于最小生成树聚类改进遗传算法对该模型进行优化求解,得到合理有效的周期长度、绿灯配时以及相位差,从而对相邻交叉口进行交通控制。
[0006] 本发明的干道协调控制模型的假设:针对相邻交叉口(图1)的干道协调控制系统采用常见的二相位(仅有直行相位)设计方法,建立相应的交通控制模型,相位转换之间不考虑信号损失时间;不考虑车辆离散情况,车辆到达率为一固定值,保证有连续的车辆到达;不考虑驾驶员以及行人等因素。
[0007] 以图1所示的相邻交叉路口系统建立数学模型,并以从路口A到路口B下行为例,分析计算从路口A放行车队到达路口B的延误时间。定义路口A第一相位绿灯启亮时刻为0时刻,按照上游路口A放行车队的队首与队尾车辆到达下游路口B遇到的信号灯状态,以及下游路口B在放行期间是否达到平衡点分以下几种情况:
[0008] 1)当车队头部到达路口B遇到第一红灯(将路口A绿灯启亮时刻作为0时刻,第一红灯即路口B在0时刻后对应相位的信号灯第一次为红灯的状态),且车队尾部到达路口B遇到第二红灯(即路口B在0时刻后对应相位的信号灯第二次为红灯的状态),在路口B绿灯放行期间,达到平衡点(即到达车辆与放行车辆达到平衡,到达车辆可直接通过路口),满足如下条件
[0009] 车队头部到达路口B的时刻:
[0010] 车队尾部到达路口B的时刻:
[0011] 绿灯启亮时刻与达到平衡点时刻的时间间隔:
[0012] 其中,L为两路口间的距离,Lchu为车队到达下游路口B时的初始排队长度,vl为车辆行驶的自由车速,NAB为上游路口A放行后的车队总车辆数,有NAB=sd*gA,sd为饱和流率(放行率),q0为车辆到达率。gA为上游路口A的绿灯时间长,gB为下游路口B的绿灯时间长,rB为下游路口B的红灯时间长,T为相位差,C为周期长度,n1为初始排队车辆数,有 Vr为一辆车的平均车身长度(车辆数与车队长度的换算值,本文假设为4)。
[0013] 该车队延误描述如图2所示。
[0014] 图中,t1为车队头部到达路口B的时刻,t2为车队尾部到达路口B的时刻,t为车队到达路口B在绿灯放行期间达到平衡点的时刻,
[0015] 图中阴影部分面积即为该车队的受阻时间长,受阻延误Dxia为:
[0016]
[0017] 2)车队头部到达路口B遇到第一红灯,且车队尾部到达路口B遇到第二红灯,在路口B绿灯放行期间,未达到平衡点,即处于过饱和状态,满足如下条件
[0018] 车队头部到达路口B的时刻:
[0019] 车队尾部到达路口B的时刻:
[0020] 未达到平衡状态,处于过饱和状态:NAB+n1>sd*gB
[0021] 车队受阻描述如图3所示。
[0022] 受阻延误Dxia为:
[0023]
[0024] 3)车队头部到达路口B遇到第一红灯,且车队尾部到达路口B遇到绿灯,且在队尾最后一辆车到达路口B前,已经达到平衡状态,满足如下条件
[0025] 车队头部到达路口B的时刻:
[0026] 车队尾部到达路口B的时刻:
[0027] 达到平衡状态:
[0028] 车队受阻描述如图4所示。
[0029] 受阻延误Dxia为:
[0030]
[0031] 4)车队头部到达路口B遇到第一红灯,且车队尾部到达路口B遇到绿灯,但在该绿灯时长内达到平衡点前,队尾最后一辆车已经到达路口B,没有车辆继续到达,平衡点时刻即为车队最后一辆车放行时刻,满足如下条件
[0032] 车队头部到达路口B的时刻:
[0033] 车队尾部到达路口B的时刻:
[0034] 在达到平衡点前,车队最后一辆车已到达路口B:
[0035] 车队受阻描述如图5所示
[0036] 受阻延误Dxia为:
[0037]
[0038] 5)车队头部到达路口B遇到第一红灯,且车队尾部到达路口B遇到绿灯,但队尾最后一辆车到达路口B前都未达到平衡点,即虽然车队在绿灯结束前已经到达路口B,但在绿灯时长内未完全把车队放行,满足如下条件
[0039] 车队头部到达路口B的时刻:
[0040] 车队尾部到达路口B的时刻:
[0041] 路口B绿灯时长内未完全把车队放行:NAB+n1>sd*gB
[0042] 车队受阻描述如图6所示
[0043] 受阻延误Dxia为:
[0044]
[0045] 6)车队头部到达路口B遇到第一红灯,且车队尾部到达路口B也遇到第一红灯,且在路口B的绿灯时长内可以把车队车辆完全放行,满足如下条件
[0046] 车队头部到达路口B的时刻:
[0047] 车队尾部到达路口B的时刻:
[0048] 路口B绿灯时长内未完全把车队放行:NAB+n1≤sd*gB
[0049] 车队受阻描述如图7所示
[0050] 受阻延误Dxia为:
[0051]
[0052] 7)车队头部到达路口B遇到第一红灯,且车队尾部到达路口B也遇到第一红灯,且在路口B的绿灯时长内车队车辆未完全放行,满足如下条件
[0053] 车队头部到达路口B的时刻:
[0054] 车队尾部到达路口B的时刻:
[0055] 路口B绿灯时长内未完全把车队放行:NAB+n1>sd*gB
[0056] 车队受阻描述如图8所示
[0057] 受阻延误Dxia为:
[0058]
[0059] 8)车队头部到达路口B遇到绿灯,且初始排队车辆未消散,车队尾部到达路口B遇到红灯,在路口B绿灯放行期间,达到平衡点,满足如下条件
[0060] 车队头部到达路口B的时刻:
[0061] 车队尾部到达路口B的时刻:
[0062] 达到平衡点:
[0063] 上述公式中,L'chu为车队头部到达路口B时的车辆排队长度,n2为车队头部到达路口B
[0064] 时的排队等候的车辆数,有: 这两个参数同时满足如下条件:
[0065] n2=n1-(t1-T)*sd
[0066]
[0067] 可得到:
[0068]
[0069] 车队受阻描述如图9所示
[0070] 受阻延误Dxia为:
[0071]
[0072] 9)车队头部到达路口B遇到绿灯,且初始排队车辆未消散,车队尾部到达路口B遇到红灯,但在路口B绿灯放行期间,未达到平衡点,即路口B处于过饱和状态,车队未完全放行,满足如下条件
[0073] 车队头部到达路口B的时刻:
[0074] 车队尾部到达路口B的时刻:
[0075] 未达到平衡点,处于过饱和状态:NAB+n2>sd*(T+gB-t1)
[0076] 车队受阻描述如图10所示
[0077] 受阻延误Dxia为:
[0078]
[0079] 10)车队头部到达路口B遇到绿灯,且初始排队车辆未消散,同时车队尾部到达路口B时也遇到绿灯,且在车队最后一辆车到达前,已达到平衡点,满足如下条件[0080] 车队头部到达路口B的时刻:
[0081] 车队尾部到达路口B的时刻:
[0082] 未达到平衡点,处于过饱和状态:x1
[0083] 车队受阻描述如图11所示
[0084] 受阻延误Dxia为:
[0085]
[0086] 11)车队头部到达路口B遇到绿灯,且初始排队车辆未消散,同时车队尾部到达路口B时也遇到绿灯,且车队在剩余绿灯时长内完全放行,但在达到平衡点前,车队最后一辆车已经到达路口B,满足如下条件
[0087] 车队头部到达路口B的时刻:
[0088] 车队尾部到达路口B的时刻:
[0089] 未达到平衡点,处于过饱和状态:NAB+n2
[0090] 车队受阻描述如图12所示
[0091] 受阻延误Dxia为:
[0092]
[0093] 12)车队头部到达路口B遇到绿灯,且初始排队车辆未消散,同时车队尾部到达路口B时也遇到绿灯,但车队在剩余绿灯时长内未完全放行,未达到平衡点,满足如下条件车队头部到达路口B的时刻:
[0094] 车队尾部到达路口B的时刻:
[0095] 未达到平衡点,处于过饱和状态:NAB+n2>sd*(T+gB-t1)
[0096] 车队受阻描述如图13所示
[0097] 受阻延误Dxia为:
[0098]
[0099] 13)车队头部到达路口B遇到绿灯,且初始排队车辆完全消散,车队尾部到达路口B时遇到红灯,满足如下条件
[0100] 车队头部到达路口B的时刻:
[0101] 车队尾部到达路口B的时刻:
[0102] 初始排队车辆完全消散:L'chu=L-t1*vl≤0,
[0103] 车队受阻描述如图14所示
[0104] 受阻延误Dxia为:
[0105]
[0106] 14)车队头部到达路口B遇到绿灯,且初始排队车辆完全消散,车队尾部到达路口B时也
[0107] 遇到绿灯
[0108] 车队头部到达路口B的时刻:
[0109] 车队尾部到达路口B的时刻:
[0110] 初始排队车辆完全消散:L'chu=L-t1*vl≤0,
[0111]
[0112] 以上所有的延误受阻的所有不同情况,从下游路口B到达上游路口A的上行车队,同样分为上述14种情况,且可得出上行车队的总延误Dshang,因此该相邻交叉口的总延误为:
[0113] D=Dxia+Dshang  (14)
[0114] 至此,相邻交叉口的干道协调控制系统的数学模型已完成建立,下面需要寻找一种合适的优化方法,对该模型进行优化求解,本发明采用遗传算法,同时在遗传算法中引入聚类思想,形成改进的遗传算法,利用改进的遗传算法对该数学模型进行优化求解。
[0115] 本发明在标准遗传算法(Standard Genetic Algorithm,CGA)中引入种群聚类思想,形成聚类遗传算法(Clustering Genetic Algorithm,CGA),其中个体间距离采用常用的欧式距离进行计算,通过最小生成树聚类算法将种群划分归类,在交叉操作中使用属于不同类别的个体进行单点交叉,由于处于不同类别的个体间距离大,相似性小,这样可以使产生的后代种群维持多样性,从而抑制了未成熟收敛现象的产生。
[0116] 一种基于最小生成树聚类改进遗传算法的相邻交叉口干道协调控制方法,包括以下步骤:
[0117] 步骤一,进行个体编码、初始化数据并设定参数。
[0118] 初始化种群大小,设定个体长度、交叉概率Pc及变异概率Pm。
[0119] 步骤二,进行种群初始化。
[0120] 步骤三,计算种群内个体的适应度值。
[0121] 以相邻交叉口干道路口前的车辆总延误最小作为优化目标,即遗传算法中的目标函数,也是适应度函数,即公式(14)。
[0122] 步骤四,对种群进行最小生成树聚类。
[0123] (1)计算个体间的欧式距离,构成一个有权无向图。
[0124] (2)用Prim算法求出无向图的最小生成树。
[0125] (3)确定最小生成树的断边阈值。
[0126] (4)遍历最小生成树的边,将权重大于阈值的边去掉,形成一个森林。
[0127] (5)深度遍历森林,对个体分类进行保存。
[0128] 步骤五,选择种群内个体参加遗传操作。
[0129] 对种群内个体采用轮盘赌选择两个个体,如果两个个体不属于同一类,则两个个体被选定,参与到遗传操作中产生后代个体;如果两个个体属于同一类,判断两个个体的适应度值大小,将适应度值大的个体淘汰,重新选择,直到选到的个体属于不同类为止。
[0130] 步骤六,对步骤五选择的个体进行交叉和变异操作。
[0131] 步骤七,重复执行步骤四~六,得到最佳个体。
[0132] 与现有技术相比,本发明具有以下优点:
[0133] 1).本发明以下行方向的车辆为例,分析了上游路口放行的车队到达下游路口前遇到的不同信号状态以及在下游路口放行期间是否完全放行,得到多种情况的延误描述,建立了更完善的干道协调控制模型。
[0134] 2).本发明采用了基于最小生成树聚类改进遗传算法对建立的干道协调控制模型进行优化求解,改进的遗传算法通过对种群进行最小生成树聚类,使物种内的个体具有很高的相似度,而物种间的相似度较低,利用物种间的交叉可以维持种群多样性,抑制未成熟收敛现象;
[0135] 3).将本发明可以得到有效的周期长度、绿灯配时以及相位差三个重要的控制因素的值,使得干道路口前车辆的总延误最小,从而进行交通控制。

附图说明

[0136] 图1为相邻交叉口的图示;
[0137] 图2–图14为对应情况下的车辆受阻描述图;
[0138] 图15为遗传算法中的编码体制图;
[0139] 图16为本发明所涉及方法的主流程图;

具体实施方式

[0140] 下面结合附图和具体实施例子对本发明做进一步说明。
[0141] 本发明针对两相位控制条件下的相邻交叉口(图1所示)建立干道协调控制模型,并利用改进遗传算法对该模型进行优化求解,得到相邻交叉口两路口的周期长度(统一)、绿灯配时以及相位差,进而对相邻交叉口进行干道协调控制。本发明所涉及方法的主流程图如图16所示,包括以下步骤:
[0142] 步骤一,进行个体编码、设定参数。
[0143] (1)个体编码
[0144] 本发明主要对相邻交叉口的交通控制中周期长度、绿灯配时以及相位差三因素做优化,编码体制如图15所示。
[0145] 本发明中译码方法如下:
[0146] 周期长度计算公式为
[0147]
[0148] 其中,n为对应二进制位数;MinC为周期长度最小值,取本文80s;MaxC为周期长度最大值;本文取120s由于最大为120,因此周期长度需要6位二进制表示,即n为6;X为对应二进制转换成10进制的十进制数值,令 用fi表示一个个体中的第i个参数值(图15所示),上式转化为:
[0149] Cycle=MinC+INT[(MaxC-MinC)*f1]  (16)
[0150] 各路口各相位的绿灯配时需要5位二进制表示,计算公式为:
[0151] G=MinG+INT{(Cycle-2*MinG)*f2}  (17)
[0152] 其中,MinG为最小绿灯时长,本发明中取40s;
[0153] 相位差需要6位二进制表示,计算公式为:
[0154] Offset=INT[Cycle*f4]  (18)
[0155] (2)设定参数
[0156] 设定种群大小为50,交叉概率Pc为0.4,变异概率Pm为0.03,个体长度22位(图15),相邻交叉路口间距为200m,车辆行驶的自由车速为6.7m/s,车辆到达率为0.4Veh/s,饱和流率(放行率)为0.6Veh/s。
[0157] 步骤二,进行种群初始化。
[0158] 随机产生popsize个22位个体组成的种群。
[0159] 步骤三,计算种群内个体的适应度值。
[0160] 以在相邻交叉口干道路口前的车队受到的车辆总延误(上、下行)最小作为优化目标,即遗传算法中的目标函数,也是适应度函数,按照上文中模型建立方法,即为公式(14)[0161] 步骤四,对种群进行最小生成树聚类,包括以下内容:
[0162] (1)计算popsize个个体间的欧式距离作为两个个体建立的边的权重,构成一个有权无向图。
[0163] (2)利用Prim算法求出这个无向图的最小生成树。
[0164] (3)确定最小生成树的断边阈值δ*M,M为最小生成树中popsize-1条边的平均权重,δ是一个大于0小于1的调节因子,这里取0.999。
[0165] (4)通过切断生成树中的边进行分类:从最小生成树起点开始遍历,将权重大于阈值的边去掉,形成一个森林,属于同一个树的边就属于同一类。
[0166] (5)对森林进行深度遍历,对每一类进行记录保存,同时对每类中的个体按照适应度值大小进行排序。
[0167] 步骤五,选择种群内个体参加遗传操作。
[0168] 对种群内个体采用轮盘赌选择两个个体,如果两个个体不属于同一类,则两个个体被选定,参与到遗传操作中产生后代个体;如果两个个体属于同一类,判断两个个体的适应度值大小,将适应度值大的个体淘汰,重新选择,直到选到的个体属于不同类为止。
[0169] 步骤六,对步骤五选择的个体进行交叉和变异操作。
[0170] 交叉操作,采用常用的单点交叉,随机产生交叉位,互组父代个体之间的基因位,形成两个新的个体。
[0171] 变异操作,对交叉后产生的两个个体,以一定的概率进行变异,0变1,或1变0,变异后产生个体还需要解码后判断是否满足ti的条件,如果满足,将其归入下一代种群,直到产生大小为popsize的后代种群,作为下一代操作的父代种群;如果不满足,则直接淘汰产生的新个体,同时计数器不进行累加,保证最后产生popsize个后代个体。
[0172] 步骤七,重复执行步骤四~六,得到最佳个体。
[0173] 达到进化代数gen=50时终止计算,得到最佳个体并应用于交通控制。
[0174] 下面给出本发明的实验结果。
[0175] 为了证明本发明所述方法在相邻交叉口干道协调控制中的有效性,分别采用本发明CGA、SGA(Standard Genetic Algorithm,标准遗传算法)及传统的数解法对相邻交叉口的干道进行优化,共进行10次实验,求取平均值后得到实验结果如表1所示。
[0176] 表1 CGA与数解法、SGA的结果对比
[0177]  周期长度 A绿灯时长 B绿灯时长 相位差 总延误
CGA 80 40 40 46 953
SGA 82 41 41 34 1019
数解法 80 44 44 58 1116
[0178] 由表1可知,本发明中采用的CGA方法得到的车队总延误不仅明显小于传统数解法得到的车队延误,也小于采用SGA方法得到的排队长度。因此,本发明不仅在以车辆延误为性能指标,通过分析车队到达路口前遇到的信号灯状态以及路口前车辆在放行期间是否完全放行建立了更完善的相邻交叉口干道协调控制模型,并且利用本发明中采用的改进遗传算法与现有技术应用于该模型相比,本发明可以得到更有效的控制参数值,从而减少交叉口前的车辆延误。