基于改进蜂群算法的城市公交网络设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于改进蜂群算法的城市公交网络设计
张辉;赵鹏
【摘要】针对公交网络设计问题,基于OD矩阵提出了一种贪婪算法生成初始公交线路集,利用改进蜂群算法通过循环迭代对初始解集进行改进,从而生成最优公交线
路集.模型以乘客总乘车时间与加权换乘次数之和为优化目标,以乘客平均乘车时间、乘客换乘次数占比为评价指标.最后,利用瑞士Mandl网络对算法进行验证,结果表明:与既有研究相比,利用改进蜂群算法所得的线路集合乘客平均乘车时间更少,直达乘客比例更高.与遗传算法、爬山算法和禁忌算法比较,改进蜂群算法耗时更少,能够有效的应用于大规模的公交网络设计.
【期刊名称】《北京交通大学学报》
【年(卷),期】2015(039)004
【总页数】7页(P118-124)
【关键词】城市交通;公交网络设计;换乘次数;贪婪算法;蜂群算法
【作者】张辉;赵鹏
【作者单位】北京交通大学交通运输学院,北京100044;北京交通大学交通运输学院,北京100044
【正文语种】中文
【中图分类】U491.12
随着城市交通需求的不断增加,城市机动车数量呈现爆发式增长,带来了严重的交通
拥堵和环境污染等问题.公共交通已被公认为是解决城市交通问题的有效方法,然而
很多公交网络设计不合理,造成乘客出行距离长、换乘次数多等问题,严重影响乘客选择公交出行的积极性.
城市公交网络设计是城市公交系统的基础,也是公交系统规划设计的核心内容,公交网络结构直接决定了乘客的乘车距离和换乘次数.解决好公交网络设计问题主要有两个关键点:①在网络设计时合理考虑换乘次数;②高效解决大规模公交网络设计问题.
对于公交网络设计的研究,单连龙等[1]建立了一个双层规划模型来描述连续平衡公交网络设计问题,设计了基于灵敏度分析的算法.马宇红等[2]针对接运网络设计问题,引入中垂线分区和最短路分区两种聚类方法化解公交线路重叠问题,并利用遗传算法求解.赵淑芝等[3]建立了基于站点容量限制的公交效率网络设计模型,结合k最短路径和流量分配求解.任华玲等[4]从公交管理部门和乘客两方面考虑,建立了一个双层规划的动态公交网络设计模型,并设计混沌优化求解算法.孙杨等[5]以接运乘客量最大化、乘客成本最小化和运营成本最小化为目标,引入Logit模型分析乘客对接运交通方式的选择行为,并建立了数学模型,利用遗传算法求解.上述研究很好地考虑了客流特征,但是均没有考虑乘客换乘次数这一网络设计的关键点.
公交网络设计问题是一个NP-Hard问题,其最优解很难求得,是公认的难度大、挑战性高的问题.目前,求解公交网络设计的算法主要是启发式算法和元启发式算法,如遗传算法[6]、粒子群算法[7]、禁忌搜索算法[8]、模拟退火算法[9]等.既有方法多应用于中小规模网络,随着网络规模的扩大、乘客直达需求的增加、其他交通方式的竞争力增强,大规模公交网络设计的算法在效率和结果上的提高仍有较大空间. 本文作者结合公交网络设计的特点,将乘客总乘车时间和换乘次数结合起来建立优化目标.利用贪婪算法来构造初始解,然后利用蜂群算法来改进初始解.通过构建新型启发式算法,有效地改善了算法效率和提高了模型解的精度,增加对大规模网络设计的适用性.
常用的公交网络表示方法有两种,即邻接矩阵和线路站点矩阵.
邻接矩阵定义如下,公交网络可以表示为G= (V,E),其中V表示站点集,E表示区间集.这里G是一个N×N的邻接矩阵{eij|i,j∈[1,2,…,N]},其中N表示网络的大小,如果节点i和j之间存在边eij=1,否则,eij=0.定义dij为站点i到站点j所研究时间段的公交需求人数,D为OD需求矩阵D={dij|i,j∈[1,2,…,N]}.定义wij为站点i到站点j车内乘车时间,W为乘车时间矩阵W= {wij|i,j∈[1,2,…,N]}.
公交线路站点矩阵定义为L={lij|i,j∈[1,2,…,N]},在这个矩阵中,每一行表示一条线路,每一列表示站点,每一条线路的站点按顺序排列,图1中3条线路可以表示为:①1-2-3-4-5-6;②7-8 -9-3-10-11-12;③13-5-14-15-10-16.
本文所研究的公交网络设计问题是在给定OD需求、潜在站点及其潜在站点之间的连接距离或时间的条件下,在给定公交线路的数量的条件下,用贪婪算法和蜂群算法找出最优的线路集.
2.1 模型假设
1)假设每条线路上有足够的车辆,即只考虑线路不考虑车辆.
2)整个线路网络是连通的,即不存在没有被覆盖的站点.
3)线路不包括环和回路.
4)交通需求和线路时间、距离是对称的.
5)所研究的时间段内交通需求不变化.
6)每条线路的站点个数不小于设定的最小个数,同时不大于设定的最大个数.
7)乘客的路径选择基于最短的出行时间.
2.2 模型构建
为有效的将换乘考虑进来,本文作者结合公交网络设计研究的通用做法[10],引入换乘惩罚系数,构建模型如下:
式(1)中:F是乘客出行总时间;T为所有乘客总的车内行驶时间;Vt为网络所有乘客总
换乘次数;Vu为不能通过公交网络到达目的地的乘客数量;α1、α2为换乘惩罚系数,α1每次换乘惩罚为5 min,α2为每人次1 000 min.式(2)是线路站点个数约束,Zi是第i条线路站点数量,Zmin、Zmax分别是给定的线路最小最大站点数量,S 是公交线路集合.
2.3 模型求解
一般来说,一个好的公交网络应当具备如下特点:
1)整个网络的OD需求得到满足,即没有需求不能满足的乘客.
2)大多数的乘客都能享受直达服务,即0次换乘的比例比较高.
3)所有乘客的平均出行时间尽可能低.
4)公交线路的长度比较合理,设置最小和最大的公交线路长度.
5)公交网络能覆盖整个城市的道路网络.
模型主要包括两部分,第一部分即用贪婪算法找到初始线路集合,第二部分用蜂群算法进行线路的修改.
2.3.1 构建初始解
假定公交线路l的始末点分别为i和j,此公交线路包含着站点i和站点j之间最短路径上所有的站点,定义{Nl|l∈S}为线路l上的所有站点的集合.这条公交线路既为一些乘客提供直达服务,又为一些乘客提供换乘服务.线路l提供直达服务乘客的总人数为
式中:cij为线路l提供直达服务乘客的总人数;m,n为线路l上的站点;dmn为站点m与n之间的公交需求人数.
定义C为直达乘客数量的相配矩阵:C={cij| i,j∈[1,2,…,N]}.
利用贪婪算法给出初始解.在算法中,通过尝试将cij值大的节点对连接起来,具体的步骤如下:
Step 1 设定需要设计的公交线路数量Sn,公交线路的集合设定为U.令U=>,t=1.
Step 2 寻找cij最大值的两个端点(a,b),点a和点b为新线路的两个顶点,寻找这两个顶点之间的最短路径,最短路上的点就是属于这条线路上的站点,将线路加入U. Step 3 升级矩阵C,不再考虑那些交通需求已经满足的乘客.
Step 4 如果t=Sn,停止;否则,令t=t+1,返回到Step 2.
2.3.2 解的改进
利用蜂群算法改进初始解,直到其解符合设计要求.蜂群算法是一种新的群智能算法,源于对蜂群内部分工机制及觅食行为的模拟[11],目前被广泛的应用于多种优化问题[12-14].本文将蜜蜂分为雇佣蜂和非雇佣蜂,不考虑侦查蜂,通过为蜜蜂提供不同改进方式来跳出局部最优,最终找到符合要求的线路集合.
假定生成了Sn条线路,则为每条线路分配B ×Sn个蜜蜂,其中B为正整数.进入循环,每个蜜蜂对初始解进行改进,改进的方案有3种:增加节点,减少节点,更换线路.如图2所示,增加节点就是选中要改进的线路,然后在两个头节点中任意选择一个为活跃节点,再与这个活跃节点相连的节点中任选一个节点进行相连.减少节点即选择活跃节点然后把它删除.更改线路即随机选择线路中任一节点为活跃节点,将此节点作为新线路的头节点,然后在其他节点中任意选择一个节点为另一头节点,两个节点之间的最短路径即为新线路.蜜蜂选择哪种对解的改进方式是随机的.
蜜蜂对初始解进行一次改进后就对自己的解进行评估,当所有的蜜蜂都进行了改进后便返回蜂巢进行信息交换.每个蜜蜂都会根据自己解的状况决定是否要忠于自己的解,若忠于自己的解,则这只蜜蜂被称为雇佣蜂;若蜜蜂放弃了自己的解,则称为非雇佣蜂.非雇佣蜂在下次寻找新解时就会跟随一只雇佣蜂一同改造一条线路,改进的方式仍然是独立的.每个蜜蜂目标函数标准化形式为
式中:Fi为第i个蜜蜂解的目标函数值;Fmax、Fmin为所有蜜蜂解之中的最大、最小值.
蜜蜂忠于自己解的概率为pi=eKi-Kmin,当蜜蜂放弃自己的解变为非雇佣蜂时,它选
择跟随哪个雇佣蜂服从概率
式中:Ka、Kb分别为第a个和第b个被选择解的目标函数值;R为雇佣蜂个数.
蜂群算法解的流程如图3所示,图3(a)每条线路分配一个蜜蜂,蜜蜂2为线路L2增
加一点n5,蜜蜂3为线路Ln增加一点n7,蜜蜂1未能发现更好的解.通过产生一个
随机数与各自蜜蜂忠于自己解的概率比较,蜜蜂1决定放弃自己的解,然后再根据概率决定跟随蜜蜂2继续修改线路L2,如图3(b)所示,其中“|”表示蜜蜂忠于自己解
的概率,“❋”表示产生0到1之间一个随机数.这个过程不断的进行,直至循环达到设定的次数或结果达到收敛的条件为止.
3.1 数据说明
使用瑞士Mandl网络来对算法进行验证[15].瑞士Mandl网络包含15个节点、
21条边和15 570个乘客需求,这个网络已经成为公交网络设计中的一个基准网络
来使用.Mandl网络如图4所示,边周围的数字代表公交车区间运行时间,单位为min.
Mandl网络自1979年被提出使用后,被众多的学者用来验证算法的有效性,本文同样使用这个网络来验证所提出的蜂群算法.除了网络结构外,公交网络设计需要交通
需求数据,表1给出了Mandl网络的OD需求.值得注意的是第15个点没有交通需求,即没有乘客从这个站点到其他站点,也没有乘客从其他站点到达这个站点.
3.2 结果分析
本案例中每条线路的最小最大站点个数设为3和10,线路条数分别设为4条、6条、7条和8条.每个网络算法迭代次数为100,取10次试验的中的最优值.表2给出了
用贪婪算法初始生成线路与蜂群算法改进后最终的线路集.
在公交网络设计中,常用乘客换乘次数比例和乘客平均出行时间来衡量公交网络的
表现,其中¯f为乘客平均出行时间,即F除以总的交通需求人数,单位:min.这些指标
将目标函数进行了细化分析,是对目标函数的进一步说明.表3~表6分别给出了本
文生成网络与之前研究在乘客直达比例、一次换乘比例、两次换乘比例和乘客的平均出行时间上的比较,结果表明蜂群算法得出的网络在乘客直达比例和乘客平均出行时间上均优于既有研究.
3.3 算法效率分析
为了验证算法的效率,本文作者使用Matlab 2014b在配有英特尔i5处理器、4G 内存的计算机对不同规模的网络进行了计算.随着网络规模的增加,程序消耗时间逐渐增加,蜂群算法计算Mandl网络耗时为320 ms,网络规模为70个节点时,耗时3 min,当网络规模为1 000个节点时,则需5.3 h.本文使用相同的算法构造初始网络,分别用遗传算法、爬山算法、禁忌算法和蜂群算法进行计算,图5结果表明蜂群算法在耗时方面明显小于其他3种算法.
本文作者结合换乘,构建了一套完整的城市公交网络设计模型,根据OD需求利用贪婪算法生成初始公交线路集,然后利用蜂群算法进行改进,得到最优线路集.
1)与既有结果相比,本算法能有效提高直达乘客的比例,减少乘客换乘次数,乘客出行时间显著减小.
2)通过与遗传算法、爬山算法和禁忌算法比较,蜂群算法在求解大规模网络设计问题效率有明显优势,耗时较短,表明该算法适用于大规模公交网络设计问题.
3)并没有考虑车辆的使用情况,且假设所研究时间段内交通需求是固定的,结合可变需求进行时刻表的制定是后续的研究内容.
【相关文献】
[1]单连龙,高自友.城市公交系统连续平衡网络设计的双层规划模型及求解算法[J].系统工程理论与实践,2000 (7):85-93.SHAN Lianlong,GAO Ziyou.A bilevel programming model for continuous equilibrium network design and its solution algorithm for urban transit system[J].Systems Engineering-Theory and Practice,2000(7):85-93.(in Chinese)
[2]马宇红,张芳芳.基于分区聚类方法求解接运公交网络设计问题[J].西北师范大学学
报,2014,50(1):27-33.MA Yuhong,ZHANG Fangfang.Solving the feeder bus network design problem by partition cluster approaches[J].Journal of Northwest Normal
University,2014,50 (1):27-33.(in Chinese)
[3]赵淑芝,田庆飞,曹阳.基于站点容量限制的公交效率网络设计模型[J].吉林大学学报:工学
版,2011,41(1): 81-84.ZHAO Shuzhi,TIAN Qingfei,CAO Yang.Transit efficiency network design model based on the restriction of station capacity[J].Journal of Jilin University:Engineering and Technology Edition,2011,41(1):81-84.(in Chinese)
[4]任华玲,高自友.动态公交网络设计的双层规划模型及算法研究[J].系统工程理论与实
践,2007(5):82-89.REN Hualing,GAO Ziyou.Research on bi-level model and solution algorithm for dynamic transit design problem[J].Systems Engineering-Theory and Practice,2007 (5):82-89.(in Chinese)
[5]孙杨,宋瑞,何世伟.弹性需求下的接运公交网络设计[J].吉林大学学报:工学版,2011,41(2):349-354.SUN Yang,SONG Rui,HE Shiwei.Feeder bus network design under elastic
demand[J].Journal of Jilin U-niversity:Engineering and Technology Edition,2011,41 (2):349-354.(in Chinese)
[6]许旺土,何世伟,宋瑞,等.基于改进遗传算法的接运公交线路生成优化模型[J].北京交通大学学
报,2009,33(3):40-44.XU Wangtu,HE Shiwei,SONG Rui,et al.Route generation optimization model for feeder bus based on advanced genetic algorithm[J].Journal of Beijing Jiaotong University,2009,33(3):40-44.(in Chinese)
[7]Kechagiopoulos P N,Beligiannis G N.Solving the urban transit routing problem using a particle swarm optimization based algorithm[J].Applied Soft Computing,2014,21:654-676.
[8]KilçF,Gøk M.A demand based route generation algorithm for public trans it network design[J].Computer and Operations Research,2014,51:21-29.
[9]Fan L,Mumford C L.A metaheuristic approach to the urban transit routing
problem[J].Journal of Heuristics,2010,16(3):353-372.
[10]Nayeem M A,Rahman M K,Rahman M S.Transit network design by genetic algorithm with elitism[J].Transportation Research Part C,2014,46:30-45.
[11]Karaboga D.An idea based on honey bee swarm for numerical
optimization[R].Technical Report,Computer Engineering Department,Engineering Faculty,Erciyes University,2005.
[12]王志刚,夏慧明.求解车辆路径问题的人工蜂群算法[J].计算机工程与科学,2014,36(6):1088-1094.WANG Zhigang,XIA Huiming.An artificial bee colony algorithm for the vehicle routing problem[J].Computer Engineering and Science,2014,36(6):1088-1094.(in Chinese) [13]成鹏飞,方国华,黄显峰.基于改进人工蜂群算法的水电站水库优化调度研究[J].中国农村水利水电,2013 (4):109-112.CHENG Pengfei,FANG Guohua,HUANG Xianfeng.Optimal operation of hydropower station reservoir based on improved bee colony algorithm[J].China Rural Water and Hydropower,2013(4):109-112.(in Chinese)
[14]米肖肖,李宜萱,程军蕊,等.基于ABC算法改进AEA算法的研究及其应用[J].控制工程,2014,21 (6):858-866.MI Xiaoxiao,LI Yixuan,CHENG Junrui,et al.An improved AEA based on ABC algorithm and its application[J].Control Engineering of China,2014,21(6): 858-866.(in Chinese)
[15]Mandl C.Applied network optimization[M].London: Academic Press,1979.
[16]Baaj M H,Mahmassani H.An Ai-based approach for transit route system planning and design[J].Journal of Advanced Transportation,1991,25(2):187-210.
[17]Kidwai F A.Optimal design of bus transit network:a genetic algorithm based approach[D].Kanpur:Indian Institute of Technology,1998.
[18]Charkroborty P,Dwivedi T.Optimal route network design for transit systems using genetic algorithms[J].Engineering Optimization,2002,34(1):83-100.
[19]Fan W,Machemehl R B.Tabu search strategies for the public transportation network optimizations with variable transit demand[J].Computer-Aided Civil and Infrastructure,2008,23(7):502-520.
[20]Mumford C L.New heuristic and evolutionary operators for the multi-objective urban transit routing problem[C]//IEEE Congress on Evolutionary
Computation,Cancun,2013:939-946.。