罗 元,任爱珠
(清华大学土木工程系防灾减灾研究所,北京100084)
在虚拟现实模拟中,虚拟车辆在交通流随机因素的影响下很容易产生交通事故或者造成交通堵塞,因此为了模拟现实生活中交通管理部门对交通流的引导,使虚拟车辆能够最大限度的利用道路的通行能力,本文通过蚁群算法来模拟现实生活中交通流的引导优化。
虚拟现实城市道路交通流智能模拟的目的是在虚拟环境中模拟城市道路交通流的运行,并使用智能控制方法对交通流模拟进行优化,使虚拟交通流的运行更加通畅,更加符合实际交通流的运行状况。
虚拟现实城市道路交通流模拟能够让研究者和用户在完全安全的虚拟环境中根据自身需求模拟多种交通运行的状况;此外,通过逼真的交通流运行模拟能够让受训者沉浸在具有高度真实感的三维虚拟环境中,从而无风险地对交通流的运行获得更直观的感受,更好地学习和掌握交通安全技能。
目前国内外关于虚拟现实交通流模拟的相关研究并不多见,其中较为著名的是FORUM 8公司开发的UC-win/Road软件[1]。该软件具有强大的三维建模功能,能够根据用户设定的交通量、车辆分布和信号灯控制等信息生成简单的虚拟交通流,模拟交通流的运行。但是由于UC-win/Road SDK对交通流模拟二次开发的支持不够,用户不能基于该软件开发出多种不同类型的交通运行状况模拟插件,因此使用UC-win/Road软件进行虚拟现实交通流模拟并不是最好的选择。
此外,南京大学的Ye Xiaoling等[2]、英国Swansea大学的Gareth Ayres等[3]、美国 North Carolina大学的 Jur van den Berg等[4]、日本 Takushoku 大学的 Sang Baofeng 等[5]、中国海洋大学的王春[6-7]、天津城市建设学院的费娜[8]以及其他一些研究者也在不同的虚拟现实平台上一定程度地实现了虚拟交通流模拟。在这些研究中,有一些在虚拟现实显示方面取得了一定的成果,能够较为逼真的显示车辆的运行情况,不过这些虚拟现实的交通流模拟都还不完善,对车辆运动的处理过于简单;另一些研究更多的将重点放在交通流的数值模拟方面,没有能够很好地解决如何在保证虚拟现实表现质量的基础上实现交通流运动特征的模拟问题。
在蚁群算法交通流数值优化方面,温州大学的Yang A-long等[9]、北京交通大学的谷远利等[10]、华南理工大学的林泉等[11]、东南大学的张文洁等[12]都通过蚁群算法对路网最优路径进行求解或是对交通流量进行预测和分配。这些研究都以求解固定的单一最优解为目标,但是这些算法都无法满足虚拟现实交通流模拟的要求。在虚拟现实交通流模拟中,智能优化必须要在动态的环境下进行,随着虚拟车辆的运动最优解也随时在改变,而目前国内外尚没有相关研究去探索动态的交通流智能优化方法。
本文研究如何在现有条件下模拟具有高沉浸感、高人机交互的智能化城市道路虚拟交通流运行,以进一步探索虚拟现实交通流智能模拟的方法与技术,验证虚拟现实技术在交通流研究中的适用性以及发展前景。本文讨论了蚁群算法在城市道路虚拟交通流模拟中的适用性,结合城市道路虚拟交通流模拟的特征,对蚁群算法做出了适当的改进,通过数值试验获得关键参数的取值,实现了城市道路虚拟交通流的智能模拟,最终通过实例对本文模拟方法的有效性进行了验证。
蚁群算法是20世纪90年代才发展出来的一种新型的模拟蚂蚁群体行为的智能仿生优化算法,它通过模拟蚂蚁社群在觅食过程中的协作机制来实现解的优化[13]。由于蚁群算法具有自组织性,能够通过自学习不断提高个体的适应性,而且算法不依赖优化问题本身的严格数学性质,因此蚁群算法常常被用于解决复杂的非线性问题,试图通过该算法求得全局最优解。
蚁群算法自从诞生以来,迅速成为国际仿生模拟研究的热点,人们对蚁群算法进行了各种各样的改进,并把它应用到不同的领域试图解决一些用别的方法不能很好解决的问题,除了商旅问题之外,还包括车间作业调度问题、网络路由问题、车辆路径问题、机器人路径问题、电力分配等。
对比虚拟现实城市道路交通流智能模拟的要求和蚁群算法的特点可以发现:虚拟现实交通流是由智能化的车辆构成的,要实现交通流整体优化,必须实现单体车辆的路径优化,而解决这一问题的关键在于车辆与车辆之间信息的交流沟通,让每一辆车都能够全面的了解整体交通状况,根据现有的实时交通信息,选择对自己最有利的路径;虚拟现实交通流智能模拟的问题空间,也就是道路网络,实际上就是以车道为节点的有向图,节点与节点之间的连接则是车辆的运动如直行、转弯等;城市道路交通流智能化控制的目的是通过车辆之间信息的共享和取舍 (包括挥发),让车辆能够根据实时交通状况调整自身路线,找到最优路径,从而实现城市道路交通流的整体优化。以上这些特点与蚁群算法的求解方式和过程都非常类似,因此本文选择使用蚁群算法来对城市道路虚拟交通流进行智能模拟。
但是应该指出,虚拟现实城市道路交通流智能模拟问题和一般的蚁群算法应用问题有很大的差别,主要表现在:
(1)虚拟现实城市道路交通流的道路网络是由车道节点和节点之间的关系 (直行、变道、转弯等)构成的,这与一般的道路网络正好相反。
(2)虚拟现实道路网络节点之间的关系有相邻 (相邻车道)和相接 (后续连接车道)两种,而每种关系又有2~4种连接,使网络节点之间的关系复杂度远超过一般道路网络。如果直接把普通的蚁群算法应用在虚拟现实交通流道路网络中,计算量和计算速度都不能保证满足实时性的要求。
(3)虚拟城市道路交通流智能优化的目标,是能够实时地根据全局交通状态,为每辆车都找到一条费用最小的路径。如果把每辆智能化的车辆看成一只人工蚂蚁的话,那么交通流优化与蚁群算法不同的是,每辆车都有自己的目标,而且每辆车都希望找到最优或者近似最优解,但是单独的一只人工蚂蚁则没有明确的目标,也不要求找到最优或者近似最优解。
(4)在城市道路虚拟交通流智能模拟中,虚拟车辆自身的运动会对最优解造成影响:对于拥有同样起点和终点的一系列虚拟车辆,如果它们全部都驶入同一条最优路径,很容易造成该路径的拥堵,从而该路径也就不再是真正的最优路径。每一辆虚拟车辆的运动都在对它自身的最优解造成影响,所以城市道路虚拟交通流智能化模拟的最优解并不是固定不变的,而是随着道路网络中车辆的运动在随时改变的。
因此可见如果使用蚁群算法来优化城市道路智能交通流必须要让算法更快更准确地收敛,才能够满足虚拟现实模拟的需求,所以要将蚁群算法应用于虚拟交通流智能优化,必须要做相应的改进,以使算法能够尽快、尽可能准确地计算出车辆实时路径,满足城市道路交通流优化要求。
城市道路虚拟交通流智能控制的目标,是让交通流中的车辆能够根据实时交通信息和自身目标决策行车路线,在初始路线的基础上进行调整,以使车辆行驶的费用最小。本文取道路通行时间作为车辆行驶的费用。
为了将蚁群算法应用到交通流智能优化中来,本文将具有智能化能力的车辆作为人工蚂蚁,一辆车就是一只蚂蚁,而车辆释放的信息素则取为道路通行速度Q=v,每辆车在通过某条道路以后计算出车辆在该道路上的平均通行速度v=l/t,其中l为道路长度,t为在道路上行驶的时间,那么道路的信息素就是所有通过道路的车辆的平均速度的均值,这样信息素越大的道路通行能力越强,越能够吸引车辆使用该道路,反之亦然。需要注意,在无车辆行驶的道路中,车辆的通行速度为该道路限速。通过信息素的传播,可以让别的车辆了解道路的通行能力,从而决定是否更换路径。在此基础上,本文对蚁群算法做出的改进详述如下。
1.1.1 绝对感知阈值
车辆行驶时,驾驶员通过自己的观察 (视觉、听觉)来感知周围交通环境的变化。心理学上把恰好能够引起感觉的最小刺激量定义为绝对感觉阈限AST(absolute sensor threshold)[13]。
车辆驾驶员同样存在自己的AST。在真实交通流中,驾驶员按照自己的既定路线前进,同时观察对比周围道路上交通流的情况。如果原路线的交通流运行顺畅,那么即使别的道路交通流更加顺畅,驾驶员一般也不愿意更改既定路线、走别的路到达目标。即人的心理活动存在一定的惰性,不愿意轻易使用未知的、具有风险的方案而放弃原有的已知的、有一定缺点的方案。只有在自己原计划行驶的道路的交通流出现明显的堵塞,而别的路线交通流状况明显优于目前路线的情况下,驾驶员才会考虑更换线路。
本文设计当相互连接的道路信息量与原始路径的道路信息量的差值ΔQ未超过驾驶员AST时,让驾驶员忽略该刺激的存在,仍然选择原有路径前进。只有当信息量差值较大,超过了驾驶员AST时,驾驶员才在信息素刺激下趋于选择信息量较大的路径。这样能够有利于车辆向最优方向进行搜索,加速路径可行解收敛,也节约了大量的计算时间。
1.1.2 基于距离的启发函数
研究表明,启发函数对于蚁群算法的收敛速度有很大的影响,好的启发函数能够加速算法收敛,同时不影响蚁群算法中路径选择的多样性,因此选择一个合适的启发函数h是非常重要的。本文以车辆当前道路连接的道路到目的地的距离为基准,计算启发函数如下
式中:hij——从第i个节点转移到第j个节点的启发函数,dj——第j个节点到目的地的欧氏距离。
于是可以得到车辆从第i个节点转移到第j个节点的状态转移概率为
式中:allowedi——车辆下一步可以选择的节点,Qj——第j个节点的信息量,α——信息因子,表示信息量的相对重要性,其值越大,车辆越倾向于选择通行能力强的道路,车辆之间的协作性越强,β是启发因子,表示启发函数 (也就是距离)的相对重要性,其值越大,车辆受节点相对距离的影响越大。
1.1.3 信息素扩散
本文为了提高蚁群算法的全局收敛性,更真实地模拟蚁群信息系统,研究了蚂蚁信息素的扩散方法,以使车辆之间的整体协作更强。
当车辆在一条道路上行驶到道路终点后,它会根据行驶的时长和道路长度计算出行驶的平均速度,然后释放出信息素,并将该信息素存储在道路信息数据中。同时,该信息素会以该道路节点为中心向外扩散,影响附近其它节点的信息素量,从而影响附近车辆的路径选择。通过这样的协作,其它车辆能够更好的了解附近整体道路网络的通行能力,从而提高算法的收敛速度。
鉴于道路本身比较长,一条道路的通行能力对离得太远的道路上的车辆路径选择影响很小,因此本文仅考虑信息素的一级扩散,即车辆在当前道路上释放的信息量只会扩散到与该道路相连接的道路上 (包括进入该道路的道路和从该道路出去的道路)。则可得到每条道路的信息量为
式中:Qi——第i条道路上的信息素总量,Qj——道路i上的车辆释放的信息量,Onroadi——行驶过道路i的车辆,m——道路i上的车辆数量;Qk——道路i相邻道路上的车辆释放的信息素,Nexti——所有与i相邻道路上的车辆,n——相邻道路上车辆的数量;η——信息扩散因子,它决定了扩散的信息量的多少,η越大,信息量扩散得越多,当前道路通行能力对周围车辆的影响就越大。
1.1.4 信息素挥发
信息素的数据存储在道路对象中,每隔一段时间就需要进行一次挥发,其目的是为了避免之前的经验过多的影响后来的车辆的选择。
在一般的蚁群算法中,信息素的积累和挥发都是在所有蚂蚁完成一次迭代以后进行的,但是在虚拟现实交通流优化控制中,因为要照顾交通信息的实时性,所以必须每隔一段时间就进行一次更新。本文中具体的做法是:在道路对象中存储最多cl/6个通过本道路的车辆信息量 (c为道路车道数,l为道路长度,6为每辆车在道路中所占长度的平均值)作为信息队列,求取道路信息量时取这些信息量的均值,在交通流模拟开始的时候将这些信息量都初始化为道路限速,然后每通过一辆车,就用该车辆的信息量顶替当前排在第一个的信息量,先入先出,循环往复,这样就能够实时更新道路信息量的大小了。需要注意的是,对于长时间没有车辆驶入的道路,本文每隔t/c的时间就为该道路自动塞入一个大小为该道路限速的信息量,t为该道路出口信号灯周期,这样就能够保证道路信息量与其通行能力相称。
1.1.5 算法设计
通过以上改进,就可以得到应用于城市道路虚拟交通流智能仿生优化的蚁群算法,详述如下:
(1)车辆进入道路,检查是否到终点,否则继续;
(2)计算下一步骤的道路的信息量与原计划道路信息量差值是否超过车辆AST,是则继续,否则按照原计划路径继续前进,回到步骤 (1);
(3)按照信息量的多少和启发函数 (如式 (1))计算下一步骤的道路;
(4)车辆驶出当前道路,计算平均速度,将其作为信息素赋予道路对象,同时在当前道路周围扩散信息素;
(5)进入下一条道路,检查是否到达终点,如果否,则回到步骤 (3)。
为了评价上述算法的执行效率,需要考察算法的时间复杂度。算法的时间复杂度是指算法中执行加减乘除等基本操作的次数,假设车辆数目为n,道路网络中道路节点数量为m,表1将算法中各个步骤的时间复杂度分别列出。
表1 虚拟交通流蚁群优化算法时间复杂度
当m、n足够大时,低次幂的时间复杂度可以忽略,则由上表可知,虚拟交通流蚁群优化算法的时间复杂度为
对于有m个道路节点的城市道路虚拟交通流网络来说,每一辆车辆有3m-2/2种不同的路径,求解最优解最准确的办法是使用全局搜索,以路径对比为基本操作,则全局搜索需要3m-2/2-1次操作才能保证得到最优解,当m=40时需要15天才能找到一个最优解。相比而言,蚁群算法能够大大提高计算的时间效率。
虚拟交通流蚁群优化算法的时间复杂度主要取决于道路网络中节点的数量,在网络范围不太大时,其时间复杂度优于遗传算法和神经元网络算法[14-16]。由于目前用于城市道路虚拟交通流模拟道路网络节点一般都不超过100个,所以蚁群算法仍然具有优势,是一种比较有效的算法。
蚁群算法收敛性的研究相比其应用而言并不广泛,也不充分,很多蚁群算法的收敛性无法得到理论上的证明[13]。本文试图探讨虚拟交通流蚁群优化算法与一般蚁群算法的区别及其收敛性。
城市道路虚拟交通流蚁群优化算法的目标是达成在全局范围内的最优,而一般的蚁群算法的目标是通过蚁群寻找到一条最优路径。此外在城市道路虚拟交通流蚁群优化算法中,所谓最优路径实际上是动态最优,与人工蚂蚁(车辆)的运动是直接相关的。因此在研究城市道路虚拟交通流蚁群优化算法收敛性时,无法忽略这两个不同点,尤其是无法忽略最优解与人工蚂蚁运动的关联性。
假设在一个稳定交通流的环境里,某车辆n在第k次迭代中寻找到了它的最优路径,则在其最优路径中的某个道路节点i处,车辆选择该节点的概率为
由于交通流处于稳定状态,因此Qi,k是一个常数,且存在 Qi,k> Qj,k,di< dj,因此 pi,k> pj,k。由于向节点 i转移的状态概率更大,因此会有更多车向节点i转移,驶入最优路径。但是这个过程并不长,因为驶入i的车越多,其通行能力越差,从而导致Qi,k下降,而某一个或几个Qj,k则升高,最终会出现pi,k<pj,k的情况,于是车辆又改变自己的选择,驶入节点j,这时节点j又成为了新的最优路径。同样的,当驶入节点j的车辆过多时,节点i会重新成为最优路径,车辆就在这样的动态平衡中不断更换自己的道路选择,实现交通流的全局最优。可见,城市道路虚拟交通流蚁群优化算法是不能收敛到某一个固定解的,本算法没有一个固定最优解,不过无论是节点i或是j,它们能够在某一时刻成为车辆最优解,说明他们在某些特殊情况下是时间费用最小的路径,这样的解称为较优解。城市道路虚拟交通流蚁群优化算法对于不同线路 (即起点终点不同)的车辆可以拥有多个较优解。
为了获得合理的城市道路虚拟交通流蚁群优化算法参数取值范围,本文使用数值试验的方法对算法中参数的值影响算法的程度进行了考察。
1.3.1 绝对感知阈值
首先需要确定的是绝对感知阈值AST=ΔQ的取值。本文在4×4(个道路节点)、6×6、8×8、10×10等不同规格的道路网络中,分别取不同的交通流量值和AST值,多次统计考察车辆改变初始路径的频率,得到了一系列有规律的结果,以4×4的道路网络为例 (6×6、8×8、10×10的道路网络结果类似),结果见表2。
从表2可以看出,当道路网络中车辆总数在500至800之间时,交通状况处于不拥堵到拥堵之间的正常水平,AST的取值能够比较大的影响车辆路径的选择,如图1所示。
表2 改变路径的车辆比例 (%,4×4道路网络)
图1 绝对感知阈值AST对车辆路径选择的影响
从图1中可见,在相同的AST取值下,车流密度越大,选择改变初始路径的车辆比例就越少,而在相同的车流密度时,AST越大,选择改变初始路径的车辆也越少,这是符合常识的——车流密度较大时,出现拥堵的可能性也增大,改变路线的难度和风险也都随之增大;AST较大时,更难出现满足其要求的不同线路,能够改变路径的机会也减小。经过观察可以得出,当AST位于15km/h至20km/h之间时,改变路径的车辆比例较为合理,在5%至65%之间,因此本文选择AST=15km/h作为车辆是否更换初始路径的绝对感知阈值。
1.3.2 信息因子和启发因子
信息因子α和启发因子β之间互相作用影响蚂蚁对路径的选择,它们的功能既互相补充又互相牵制,因此本文将它们合在一起考虑。
车辆的路径最优解与车辆本身的运动密切相关,因此在某些时刻求得精确的最优解难度较大,而由于每辆车都要求尽可能地找到适合自身的较优解,因此对算法的速度有较高的要求。本文通过数值试验,考察不同的α与β的取值组合对算法的影响。本文在4×4、6×6、8×8、10×10的道路网络中针对不同密度的均匀交通流进行了模拟,都得到了类似的结果,但是由于尺寸较小的网络中解的好坏差异和算法收敛速度的差异不明显,因此本文以8×8的道路网络、车辆总数为3200的情况为例考察α与β的取值。
首先考察不同的α与β的取值对进行算法收敛速度的影响,如表3所示。表中的数据是单一车辆求解得到最优解或较优解的平均迭代次数。从表中可以看出,求解最优解或较优解的平均迭代次数最少时,α与β分别等于5和20。总体来看,当α越来越大时,信息量所起的引导作用就越来越明显,求解的效率也会相应地增加,但是当α过大时,反而会导致有时求解效率不如同样β水平下α较小的时候的求解效率,例如表中β取10、20和30时,当α等于10时,求解效率反而不如α等于5时的效率,这是因为车辆路径选择过分追求信息量以后,会出现车辆被别的不相干的道路上的信息量所吸引导致走了多余的行程。从表中可以看出,当α在2到5之间时求解的总体效率是比较高的。而当β越来越大时,离目的地的距离所起的引导作用就越来越明显,求解的总体效率也会增加。但是与α取值的情况类似的,当β过大时,反而会导致求解效率降低,例如表中当α取2和5时,β等于30时的迭代次数多于β等于20时的迭代次数,这是因为过分重视距离的远近,会导致车辆固执地选择距离更近但是通行能力较差的道路,所以导致解的质量下降。从表中可以看出,当β在10到20之间时求解的总体效率较高。图2显示了不同的α与β取值对算法收敛性的影响。
表3 不同的α与β取值对算法收敛性的影响
图2 不同的α与β取值对算法收敛性的影响
为了确定α与β的取值还需要考察解的精确性。如表4所示,表中的数据是在不同的α与β的取值时,经过数次迭代之后某路线车辆的最优解或较优解 (即较短的行驶时间)。该线路的理论最优解为196.3s,从表中可以看到,当α为2、β为10时,能够获得最接近理论最优解的较优解214.2s。与表3的情况类似,α越大解越优,但是α过大时的解不如α稍小一些时的解;β越大解越优,但当β过大时解不如β稍小一些时的解。总体来看,当α在2到5之间、β在10到20之间时获得的解是比较好的。图3显示了不同的α与β取值对解精确性的影响。
表4 不同的α与β取值对解精确性的影响 (s)
图3 不同的α与β取值对解精确性的影响
本文还模拟验证了当道路网络中车辆总数为1000、2000和4000时α与β的取值对虚拟交通流蚁群优化算法的影响,结果发现不同密度的交通流对以上所述的结论没有太大的影响。
综上所述,考虑到本文的道路网络 (五道口地区)尺寸,本文选择了α=5、β=10作为本文虚拟交通流蚁群优化算法的信息因子和启发因子。
1.3.3 信息扩散因子
信息扩散因子η的作用是通过信息素的局部扩散来增强虚拟交通流蚁群优化算法的全局性,因此可以通过考察局部范围内交通流的整体速率得知交通流的运行状况,从而从侧面反映扩散因子的效果。本文在5×5的道路网络中以正常范围内的交通状况模拟验证信息扩散因子η对交通流整体运行速率的影响。
图4是在道路网络中总车辆为1300辆时,交通流完全均匀的状态下扩散因子η与交通流整体旅行时间的关系,所有用来计算旅行时间的车辆都拥有相同的起点和终点。图中横坐标为η的取值,纵坐标为平均旅行时间 (s)。从图中可以看出,当交通流完全均匀时,η越大则交通流的整体旅行时间越长,即总体速率越慢,这是因为在完全均匀的交通状态中,道路的通行能力没有差别,扩散因子会增加非优解中道路的吸引力,使车辆选择这些不必要的道路的几率增大,导致车辆绕路,旅行时间提升。
但在现实生活中几乎不会遇到道路网络中交通状况完全均匀的情况,总是或多或少会有一些偏差,这时扩散因子η就能够发挥它的正面作用:引导车辆向车少速度快的道路上前进。为了研究在交通流不完全均匀时扩散因子η对交通流整体速率的影响,首先要定义交通流的偏差值d。本文定义交通流的整体偏差值d为道路网络中不同道路的通行能力的最大差值,用通行速率来表示,例如在5×5的道路网络中,所有道路的通行速率的最大差值为30km/h,则称该道路网络中交通流的整体偏差值d为30km/h。
图4 均匀交通流中η对平均旅行时间的影响 (s)
表5列出了在不同的交通流整体偏差值水平下扩散因子η与交通流平均旅行时间的关系。图5显示了不同偏差值下扩散因子η对车辆平均旅行时间的影响 (s)。从表5中可以发现,随着偏差值的增大,扩散因子η的图形中出现了一个波谷:一开始η增加时,交通流平均旅行时间会减小,当到达某个谷底后,η再增加,平均旅行时间就会增加。这是因为在交通流偏差值增大后,不同道路之间的通行能力差别变大,所以η增加时,能够吸引更多的车辆驶往通行能力强的道路,从而使道路网络的整体通行能力上升,车辆速度增加,平均旅行时间减小;而当η增大到一定程度以后,道路网络的整体信息量都提升了,因此车辆有更大的几率选择非优解的道路,导致了车辆绕远路,从而旅行时间上升。
表5 扩散因子对交通流平均旅行时间的影响 (s)
图5 不同偏差值下η对平均旅行时间的影响 (s)
为了观察不同交通流密度下η值对平均交通旅行时间的影响,本文使用不同的交通流密度进行了数值试验,结果如表6所示,表中数据是在不同的交通流密度下,交通流整体偏差值为30km/h时,不同η值对交通流平均旅行时间的影响。
表6 不同密度下η对平均旅行时间的影响 (s)
从表6中可以看出,随着交通流密度的增加,η值对交通流平均旅行时间的优化作用越来越小,这是因为交通流密度大时,总体的交通状况不好,车辆通过局部的路径改变很难取得更小的时间花费,而此时如果一味增加η值,会提升道路网络的总体信息量,使车辆盲目选择路径,导致总体旅行时间增加。
总起来说,当η值在0.01至0.03之间时,能够比较有效地提升交通流的整体速度,优化交通流运行,即使在交通流密度较大或是交通流偏差量较小的情况下,0.01至0.03之间的η值也不会显著增加交通流的总体旅行时间。相比而言,当η值取0.03时对交通流的优化效果更好,因此本文取信息扩散因子η为0.03。
本文以北京市海淀区五道口地区为模板建立了面积为1100 m×1100 m的虚拟环境,并使用城市道路虚拟交通流蚁群优化算法对虚拟环境中的车流进行了模拟,通过将模拟结果与五道口地区的实际交通流进行对比,验证了算法的有效性。
首先作者对五道口地区的交通流量和信号灯周期进行了统计,结果如表7和表8所示 (五道口地区平面图见图6)。
通过计算每条道路上车辆的平均时距,再结合车辆速度、道路的长度和车道数可以估算出,在交通通畅时,五道口地区的车辆总数约为900辆;在交通拥堵时,五道口地区的车辆总数约为1400辆。因此,根据以上数据设置好模拟的初始化变量以后,本文对道路网络中车辆总数分别为900和1400时的虚拟交通流运行进行了模拟 (虚拟模拟效果如图7),并统计了虚拟交通流模拟中几条道路双向横截面的交通流量,这几条道路分别是:成府路中段、中关村东路北段、荷清路中段和双清路南段 (如图8所示),统计结果见表9。
表7 五道口地区交通流量统计
表8 五道口地区信号灯周期
图8 交通流统计检验横截面
表9 虚拟交通流模拟系统道路横截面交通流统计
虚拟交通流模拟道路横截面交通流量与表7中真实交通流相同道路横截面交通流量的对比如图9所示,其中横坐标的1是成府路中段由东向西方向,2是成府路中段由西向东方向,3是中关村东路北段由南向北方向,4是中关村东路北段由北向南方向,5是荷清路中段由南向北方向,6是荷清路中段由北向南方向,7是双清路南段由南向北方向,8是双清路南段由北向南方向。
通过在两种交通状况下虚拟交通流量和真实交通流量的对比可以发现,在总体交通密度较小时,虚拟交通流在大部分道路横截面上 (除了双清路的两个方向以外)交通量都大于真实交通流,但是两者之间的差别并不大,除了双清路两个方向的交通量差别较大,其余的横截面交通量差距都不超过22.0%(成府路中段由东向西方向)。这是因为在实际的交通流中,由于双清路西侧与铁道相近,该铁路经常有火车通过,此时双清路必须封闭道路,导致出现短暂的堵塞;而在铁路以东50米,又有一个道路交叉口(双清路与清华东路交叉口,不在本文地图中),该交叉口与地图中的B交叉口 (双清路与荷清路交叉口)距离过近,导致常常出现两个交叉口之间的车辆堵塞;此外,B交叉口处人流量和非机动车流量极大,且往往不遵从红灯停、绿灯行的交通规则,常常乱穿马路,导致车辆通过道路交叉口时容易迟滞。因此真实交通流在双清路与荷清路的道路交叉口处极易形成交通堵塞,减缓车流的前进。而在虚拟现实交通流模拟中,由于使用了蚁群算法对交通流进行优化,车辆会自动选择车少的路径前进,使堵塞不容易发生,这样使交通流能够通过自身的调节能力将原本可能过度集中形成堵塞的交通流分散在整个道路网络中,让交通流的运行更通畅;而且虚拟车辆的运行完全按照理论进行,不会出现抢道等现象,效率很高;此外虚拟环境中没有行人、非机动车、火车等交通干扰因素。综合以上3个原因,导致在虚拟环境中很难出现如同真实交通中常见的堵塞,所以车辆运转更通畅,道路网络的整体交通流量也增加。在虚拟环境的双清路的两个截面中,由于原本的堵塞没有形成,很多原本应该走双清路的车辆改换了别的道路,所以导致双清路的交通流量反而下降了很多。
图9 不同密度下的虚拟与真实交通量
而当总体交通流密度增大以后,虚拟环境中的交通流量与真实交通流量差别仍然不大 (最大差别为中关村东路由南向北方向,14.8%)。虚拟环境中所有道路截面交通量相比总体交通密度较小时都有所增加,真实世界中的情况也类似,除了双清路截面。这是因为在真实世界中交通流密度增大后,双清路过于拥堵,导致车辆行驶过于缓慢,所以双清路的交通流量反而下降了。但是在虚拟环境中,由于上文所分析的原因,很难出现交通堵塞,所以双清路的交通流量比起交通流密度较小时仍然有所上升。
综合以上分析可见,城市道路虚拟交通流蚁群优化算法能够较准确地模拟真实世界中交通流运行的情况,能够在很大程度上使交通流向现实生活中一样运行,而且该算法能够让交通流更合理地利用交通资源,使交通流整体运行更通畅,更不容易形成交通堵塞,能够为现实生活中的交通流引导提供参考。
本文深入研究了蚁群算法的特点,结合虚拟现实城市道路交通流智能模拟的需求,对蚁群算法在绝对感知阈值、启发函数、信息素的扩散和挥发等方面做出了改进,通过数值模拟获得了算法关键参数的取值,成功地将蚁群算法应用于虚拟交通流智能模拟,并通过实例验证了算法的有效性。研究结果表明,城市道路虚拟交通流蚁群优化算法能够较好地模拟实际交通流的运行情况,实现对交通流的引导,让道路设施得到最大化的利用,是一种能够有效模拟交通流运行的算法。
[1]HE Zheng,Ito Y.The application of VR simulation software in Civil Engineering[C]//Shanghai:The 2nd Engineering,Construction& Computer Applications Innovation Forum,2009:256-261(in Chinese).[何征,伊藤裕二.虚拟现实仿真软件在土木工程中的应用[C]//上海:第二届工程建设计算机应用创新论坛,2009:256-261.]
[2]Ye X,Yang Y,Zou L.Research on the application of virtual reality technology in transportation[C]//Wuhan:Mechanic Automation and Control Engineering,2010:2887-2890.
[3]Ayres G,Mehmood R.On discovering road traffic information using virtual reality simulations[C]//Cambridge:11th Computer Modelling and Simulation,2009:411-416.
[4]Van den Berg J,Sewall J,Lin M,et al.Virtualized traffic:Reconstructing traffic flows from discrete spatiotemporal data[C]//LA:Virtual Reality Conference,2009:183-190.
[5]Sang B,Mizuno K,Fukui Y,et al.Introducing recognition ratios for urban traffic flow simulation in virtual cities[C]//NY:Proceedings of the 8th International Conference on Virtual Reality Continuum and its Applications in Industry,2009:267-270.
[6]Wang C,Chen G,Liu Y,et al.Virtual-reality based integrated traffic simulation for urban planning[C]//Wuhan:Computer Science and Software Engineering,2008:1137-1140.
[7]WANG C.Application and research of virtual city microscopic traf-fic simulation system based on VR/GISintegration[D].Qingdao:School of Information Science and Engineering,Ocean University of China(in Chinese).[王春.基于VR/GIS一体化城市微观交通虚拟仿真系统的研究与应用[D].青岛:中国海洋大学信息科学与工程学院,2010.]
[8]FEI N.Research of the application of virtual reality technology in urban traffic simulation system [D].Tianjin:Electronics and Information Engineering Department,Tianjin Institute of Urban Construction,(in Chinese).[费娜.虚拟现实技术在城市交通仿真系统中的应用研究[D].天津:天津城市建设学院电子与信息工程系,2009.]
[9]Yang A,Chen W,Gao L.Minmum-cost of road network planning based on max-min ant algorithm [C]//Hangzhou:2nd Information Science and Engineering,2010:2171-2174.
[10]GU Yuanli,LI Shanmei,SHAO Chunfu.Study on cooperation of traffic control and route guidance based on ant algorithm [J].Journal of System Simulation,2008,20(10):2754-2781(in Chinese).[谷远利,李善梅,邵春福.基于蚁群算法的交通控制与诱导协同研究[J].系统仿真学报,2008,20(10):2754-2761.]
[11]LIN Quan,XU Lunhui,TANG Dehua.Study on application of improved ant algorithm in dynamic traffic assignment[J].Science Techno logy and Engineering,2009,9(18):5410-5414(in Chinese).[林泉,许伦辉,唐德华.改进蚁群算法在动态交通分配中的应用研究 [J].科学技术与工程,2009,9(18):5410-5414.]
[12]ZHANG Wenjie,DENG Wei.Application of dynamic route select problem based on ant colony algorithm [J].Technology& Economy in Areas of Communications,2009,11(1):51-53(in Chinese).[张文洁,邓卫.基于蚁群算法的动态路径选择问题 [J].交通科技与经济,2009,11(1):51-53.]
[13]DUAN Haibin.Principles and application of ant colony algorithm[M].Beijing:Science Press,2005(in Chinese).[段海滨.蚁群算法原理及其应用[M].北京:科学出版社,2005.]
[14]HAN Ruifeng.Principles and application of genetic algorithms[M].Beijing:China North Industries Group Press,2010(in Chinese).[韩瑞峰.遗传算法原理与应用实例[M].北京:兵器工业出版社,2010.]
[15]MA Rui.Principles of artificial neural network [M].Beijing:China Machine Press,2010(in Chinese).[马锐.人工神经网络原理[M].北京:机械工业出版社,2010.]
[16]LIU Qing.Artifical neural network algorithms improving and application in the hydraulic measuring technique[D].Jiangsu:Hohai University,2005(in Chinese).[刘清.人工神经网络算法的改进及其在水利测量技术中的应用[D].江苏:河海大学水利水电工程专业,2005.]