CN107330586A - 一种基于改进蚁群算法的公共自行车动态调度方法 - Google Patents
一种基于改进蚁群算法的公共自行车动态调度方法 Download PDFInfo
- Publication number
- CN107330586A CN107330586A CN201710458464.0A CN201710458464A CN107330586A CN 107330586 A CN107330586 A CN 107330586A CN 201710458464 A CN201710458464 A CN 201710458464A CN 107330586 A CN107330586 A CN 107330586A
- Authority
- CN
- China
- Prior art keywords
- mrow
- point
- truck
- scheduling
- lease
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06312—Adjustment or analysis of established resource schedule, e.g. resource or task levelling, or dynamic rescheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0645—Rental transactions; Leasing transactions
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Human Resources & Organizations (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Strategic Management (AREA)
- General Physics & Mathematics (AREA)
- Economics (AREA)
- Accounting & Taxation (AREA)
- Entrepreneurship & Innovation (AREA)
- Development Economics (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Finance (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Data Mining & Analysis (AREA)
- Educational Administration (AREA)
- Mathematical Physics (AREA)
- Game Theory and Decision Science (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种基于改进蚁群算法的公共自行车动态调度方法。本发明的方法包括如下步骤:S1选定研究范围,采集基础资料;S2确定调度区域和调度量;S3建立公共自行车动态调度路径优化模型;S4求解方法,采用改进的蚁群算法来求解TSPPD模型;S5制定调度方案,计算调度区域内各租赁点的调度需求,利用公共自行车动态调度路径优化模型将动态调度问题建模,并采用改进的蚁群算法进行求解,制定公共自行车高峰小时动态调度方案。本发明能够缓解高峰小时公共自行车供需不平衡问题。
Description
技术领域:
本发明涉及一种基于改进蚁群算法的公共自行车动态调度方法,属于车辆调度与优化技术领域。
背景技术:
城市公共自行车系统(Public Bicycle-Sharing system,PBS)由于具有低碳、便捷、经济适用性等优点,在全世界广泛发展。截止2016年,中国已有215个市、县,开展公共自行车项目,中国已成为是世界上公共自行车系统发展规模最大的国家。
由于公共自行车系统具有“单向借还”特点,即用户租赁和归还自行车在不同租赁点,导致不同租赁点自行车的供给和需求不均衡。一方面,如果一个租赁点某一时间段内有很大的借车需求,该租赁点的自行车数量会在短期内急剧减少,用户就不能在这个租赁点正常租赁自行车。另一方面,如果一个租赁点某一时间段内有很大的还车需求,该租赁点的自行车数量会在短期内急剧增加,甚至超过租赁点的自行车容量,租赁点不能提供足够的车桩来安置这些过多的自行车,用户就不能在这些租赁点正常归还自行车。这种供需不平衡现象可能造成可用自行车数量减少、公共自行车系统服务水平下降等后果。由于公共自行车系统这种使用的不便性和增加的潜在出行成本,用户对公共自行车系统的使用需求将会降低。
发明内容
本发明的目的是克服现有技术不能实现公共自行车高峰小时前动态调度以满足公共自行车单向借还特点的缺点和不足,提供一种基于改进蚁群算法的公共自行车动态调度方法,缓解高峰小时公共自行车供需不平衡问题。
上述的目的通过以下技术方案实现:
一种基于改进蚁群算法的公共自行车动态调度方法,该方法包括如下步骤:
S1选定研究范围,采集基础资料,包括各公共自行车租赁点位置、锁车桩数量、实际配车数量、用户IC卡刷卡数据;
S2确定调度区域和调度量,根据用户刷卡数据分析各租赁点自行车数量的时空变化规律,得到高峰小时借还供求关系,通过D值表示租赁点瞬时最大自行车周转量,D值为租赁点自行车借还量差值的绝对值,反映一定时间段内租赁点增加或减少的自行车数量,从而确定动态调度区域以及各调度租赁点的自行车调度量,其中正值为取车量,负值为配送量;
S3建立公共自行车动态调度路径优化模型,将公共自行车动态调度问题看作“同时取货和配送的旅行商问题”,提出调度卡车最大效用服务原则,以调度卡车在完成调度任务时求解最短调度路径为目标提出公共自行车动态调度路径优化模型;
S4求解方法,采用改进的蚁群算法来求解TSPPD模型,调度卡车被视为负重的蚂蚁,调度卡车寻找下一个调度租赁点前需要检查自行车装载量,筛选出目前装载量能够服务的租赁点,卡车向下一个目标移动前需根据自身装载量、服务点调度量以及路径距离计算出下一步可达节点的概率,并按此概率实现一步移动,服务完毕后更新装载量再搜索下一服务租赁点,重复此过程至调度任务完成或无法搜索下一服务点为止;
S5制定调度方案,计算调度区域内各租赁点的调度需求,利用公共自行车动态调度路径优化模型将动态调度问题建模,并采用改进的蚁群算法进行求解,制定公共自行车高峰小时动态调度方案。
所述的基于改进蚁群算法的公共自行车动态调度方法,步骤S2中所述的确定调度区域和调度量的具体步骤包括:
S21根据用户刷卡数据利用描述性统计方法分析公共自行车借还时间分布规律:找出典型的需要动态调度的高峰时段。
S22根据用户数卡数据利用描述性统计方法分析公共自行车借还空间分布规律:找出典型的需要动态调度的租赁点,并计算瞬时最大自行车周转量,确定调度量。
所述的基于改进蚁群算法的公共自行车动态调度方法,步骤S3中所述的建立公共自行车动态调度路径优化模型具体步骤包括:
S31问题描述和假设:公共自行车系统动态调度问题可以规约为“同时取货和配送的旅行商问题”,需要配送的租赁点根据需求分为取车点和配送点,调度卡车从任意租赁点开始在各取车点和配送点之间进行调配,每个租赁点的取车量或配送量不为零,每个租赁点仅访问一次,配送区域内全部租赁点均被访问过后以任意租赁点为结束点,为便于求解,令调度卡车的初始装载量为零,每个租赁点的需求量均小于调度卡车的额定装载量,TSPPD模型属于NP-难问题,根据问题描述建立混合整数规划模型,基于以上公共自行车系统动态调度问题描述,对模型做出以下假设:
①调度路径目标:在完成调度需求的基础上调度卡车行程距离最短;
②行驶原则:调度区域范围内起点和终点均为任意租赁点,调度卡车的初始装载量为零;
③调度任务结束后调度卡车的装载量可以不为零,每个租赁点仅访问一次;
④自行车调度OD:调度卡车将自行车从取车需求点运送至配送需求点;
⑤服务原则:调度卡车基于最大效用原则服务于每个租赁点;
⑥当租赁点的调度需求超过卡车的额定装载量时,调度卡车访问一次只能完成部分调度任务。
S32调度原则:以Si表示租赁点i的调度需求,其中正值表示取车量,负值表示配送量,基于调度卡车的装载量,公共自行车系统动态调度的服务模式可以分为4种,其中Ca表示卡车的额定装载量,Bn表示卡车的装载量:
(1)取走租赁点全部需求量服务模式:
①当Bn=0,0<Si<Ca时,卡车在这个点的调度量为Si;
②当0<Bn≤Ca,Si<Ca-Bn时,卡车在这个点的调度量为Ca-Bn;
(2)取走部分自行车直至卡车满载服务模式:
①当Bn=0,Si≥Ca时,卡车在这个点的调度量为Ca;
②当0<Bn≤Ca,Si≥Ca-Bn时,卡车在这个点的调度量为Ca-Bn;
(3)卸载全部自行车服务模式:
①当0<Bn<Ca,-Si≥Bn时,卡车在这个点的调度量为Bn;
②当Bn=Ca,-Si≥Ca时,卡车在这个点的调度量为-Si-Ca;
(4)卸载部分自行车服务模式:
①当0<Bn<Ca,-Si<Bn时,卡车在这个点的调度量为-Si;
②当Bn=Ca,-Si<Ca时,卡车在这个点的调度量为-Si,
在实际操作过程中,若遇租赁点需求量大于调度卡车装载量的情况,将该点的调度需求进行分割,将该点切分为虚拟的几个租赁点,坐标相同且相互间的距离为零,配送卡车可多次访问这个租赁点直至满足调度需求;
S33模型建立:
TSPPD混合整数规划模型:
目标函数H0:
s.t.:
gij≤Caxijk, (3-6)
参数说明:
H:调度区域租赁点集合,H={1,2,...,n};
R:调度路径的总距离;
K:调度卡车数量;
dij:租赁点i与租赁点j间距离,i,j∈H,i≠j;
gij:通过弧(i,j)时,调度卡车上装载的未配送的公共自行车总量,i,j∈H,i≠j;
xijk:决策变量;
模型说明:模型的目标函数(3-1)是以调度卡车行驶总路程最短为目标建立的;约束(3-2)保证每个租赁点有且仅有1辆调度卡车访问一次;约束(3-3)保证卡车到达租赁点提供调度服务后并离开;约束(3-4)确保每个租赁点最多只被1辆卡车提供服务;约束(3-5)保证每个租赁点的调度需求都被满足;约束(3-6)保证在任何时刻卡车上的自行车数量都不超过额定载货量;约束(3-7)为变量取值约束。
所述的基于改进蚁群算法的公共自行车动态调度方法,步骤S4中所述的采用改进的蚁群算法来求解TSPPD模型的具体方法包括:
S41改进的蚁群算法:调度卡车被视为负重的蚂蚁,调度卡车寻找下一个调度租赁点前需要检查自行车装载量,筛选出目前装载量能够服务的租赁点,卡车向下一个目标移动前需根据自身装载量、服务点调度量以及路径距离等信息计算出下一步可达节点的概率,并按此概率实现一步移动,卡车在搜索过程或找到一个解后,会评估该解或解的部分优化程度,并把评价信息保存到相关连接路径的信息素中,在调度区域集合H中,卡车依次选择各租赁点之间路径的信息素浓度大的路径服务,服务完毕后更新装载量再搜索下一服务租赁点,重复这个过程至调度任务完成或无法搜索下一服务点为止,即找到最优解;
S42改进的蚁群算法计算步骤如下:
①参数初始化;初始化蚂蚁的调度任务、所携带的自行车数量;初始化信息素矩阵、启发因子和信息素消减系数等参数;
②随机为蚂蚁选择开始调度的租赁点,开始新迭代;
③搜索最近的未被服务的租赁点,并移动至该点完成调度任务;
④更新调度任务和自身携带的自行车数量;
⑤搜索下一个租赁点,并计算租赁点被选中的概率;
⑥选择租赁点进行服务;
⑦返回步骤3,直至无下一个可服务租赁点;
⑧更新信息素;
⑨返回步骤2,直至达到最大迭代数。
S43蚂蚁移动遵循的转移规则与各路径上的信息素浓度和期望值有关,蚂蚁k在租赁点i上选择租赁点j的概率计算公式如下:
式中:
未被访问的租赁点集;
α:信息素启发因子,表示蚂蚁运动过程中所积累的信息量在指导蚁群搜索中的相对重要程度,反映了蚁群在路径搜索中随机性因素作用的强度,α值越大,蚂蚁选择以前走过的路径的可能性越大,搜索的随机性越弱,α越小,蚁群搜索会过早陷于局部最优。α值可通过仿真实验分析来确定,
β:自启发式因子,反映蚂蚁在运动过程中启发信息在指导蚁群搜索中的相对重要程度。其大小反映了蚁群在路径搜索中的先验性、确定性因素作用的强度,β值越大,蚂蚁在局部点上选择局部最短路径的可能性越大,提高了收敛速度,但在最优路径搜索过程中的随机性减弱,易陷入局部最优。β值可通过仿真实验分析来确定,
τ:信息素强度,反映蚁群在路段上的先验经验,是蚂蚁在运动过程中所积累的信息,
租赁点i,j之间路段上的信息素总量;
租赁点i,j之间路段上更新前的信息素总量;
租赁点i,j之间路段上的信息素增量;
ρ:常量,反映信息素的蒸发速度,取值区间为[0,1],针对具体问题其大小根据实验结果进行适当调整;
k:蚂蚁序号;
S44求解质量直接影响信息素增量的计算结果,本发明采用ant-weight策略来计算信息素增量,计算公式如下:
路段(ij)属于蚂蚁k的路径
Q:信息素增加强度系数,影响算法的收敛速度,Q值可通过仿真实验分析来确定,
fk:第k只蚂蚁在整个搜索路径中的目标函数值;
dij:租赁点i,j间的距离;
N:第k条路径上的节点数(N>2);
η:能见度,反映的是蚂蚁在运动过程中的启发信息,与路段长度相关。
ant-weight策略由两部分组成:是全局信息,表示第k只蚂蚁所经过的路径上的信息素增量总和,是局部信息,表示每条路径分担信息素增量的比例,该比例是根据每条路径对整个方案贡献来确定的。
S45结合各租赁店的调度需求数据制定调度方案。
有益效果:
本发明与现有技术相比,具有如下优点与有益效果:
1.结合公共自行车用户刷卡数据进行统计分析,有针对性的选定调度时间和调度需求租赁点,根据调度时间和调度需求进行调度方案确定,有效减少高峰期需求分布广泛带来的调度盲目性。
2.将公共自行车动态调度问题看作“同时取货和配送的旅行商问题(TSPPD)”,提出公共自行车动态调度路径优化模型,并用改进的蚁群算法来求解动态调度路径优化模型,该算法结构简单、收敛速度快、性能稳定、运行结果良好,可以有效节省计算时间,确保高峰期及时调度。
3.本发明与普通的车辆路径问题相比算法主要进行了以下优化:调度卡车每经过个租赁点后,需重新计算车上自行车数量,并且在选择下一站点之前,考虑了调度卡车容量约束和下一站点补给约束,缩小搜索范围。
4.本发明提出的ant-weight策略综合考虑全局和局部信息,使信息素增量分配更加合理:更优路径分配更多的信息素,更好地引导后续搜索,使更优方案在后续搜索中更具吸引力并提高收敛速度。
附图说明
图1为本发明的技术路线图
图2为本发明的公共自行车动态调度方法流程图。
图3为案例公共自行车借还时间分布图。
图4为案例公共自行车租赁点过度借还现象空间分布图,其中图4a为公共自行车租赁点过度还车现象空间分布图,图4b为公共自行车租赁点过度借车现象空间分布图。
图5为案例典型租赁点的借还时间分布,其中图5a为典型过度还车租赁点的借还时间分布,图5b为典型过度借车租赁点的借还时间分布。
图6为案例最短调度路径示意图。
图7为平均路径和最短路径的收敛曲线。
具体实施方式
下面结合具体实施方式,进一步阐明本发明,应理解下述具体实施方式仅用于说明本发明而不用于限制本发明的范围。
本发明所述的基于改进蚁群算法的公共自行车动态调度方法,通过分析公共自行车系统的借还时空分布特性,找出需要动态调度的租赁点以及各租赁点动态调度的自行车数量。将公共自行车动态调度问题看作“同时取货和配送的旅行商问题(TravelingSalesman Problem with Pickup and Delivery,TSPPD)”,基于一些基本假设以调度卡车最短行程为目标函数建立混合整数规划模型来描述TSPPD,采用改进的蚁群算法求解TSPPD模型,公共自行车高峰小时动态调度方案。
如图1所示,本实施例所述的公共自行车高峰期调度方法,包括以下步骤:
1)选定研究范围,采集基础资料,包括各公共自行车租赁点位置、锁车桩数量、实际配车数量、用户IC卡刷卡数据(包括借车时间、还车时间、借车站点、还车站点、使用时间、租赁点编号)等信息。
2)确定调度区域和调度量,根据用户刷卡数据分析各租赁点自行车数量的时空变化规律,得到高峰小时借还供求关系,通过D值表示租赁点瞬时最大自行车周转量,D值为租赁点自行车借还量差值的绝对值,反映一定时间段内租赁点增加或减少的自行车数量,从而确定动态调度区域以及各调度租赁点的自行车调度量,其中正值为取车量,负值为配送量。
3)建立公共自行车动态调度路径优化模型,将公共自行车动态调度问题看作“同时取货和配送的旅行商问题”(Traveling Salesman Problem with Pickup andDelivery,TSPPD),提出调度卡车最大效用服务原则,以调度卡车在完成调度任务时求解最短调度路径为目标提出公共自行车动态调度路径优化模型;
4)求解方法,采用改进的蚁群算法来求解TSPPD模型,调度卡车被视为负重的蚂蚁,调度卡车寻找下一个调度租赁点前需要检查自行车装载量,筛选出目前装载量能够服务的租赁点。卡车向下一个目标移动前需根据自身装载量、服务点调度量以及路径距离等信息计算出下一步可达节点的概率,并按此概率实现一步移动,服务完毕后更新装载量再搜索下一服务租赁点,重复此过程至调度任务完成或无法搜索下一服务点为止。为使信息素更好地指引后续的搜索,本发明提出了ant-weight策略来更新信息素增量,加快算法的收敛速度;
5)制定调度方案,采用本发明的方法,计算调度区域内各租赁点的调度需求,利用公共自行车动态调度路径优化模型将动态调度问题建模,并采用改进的蚁群算法进行求解,制定公共自行车高峰小时动态调度方案。
在步骤2)中分析确定调度区域和调度量步骤包括:
2.1)根据用户刷卡数据利用描述性统计方法分析公共自行车借还时间分布规律:找出典型的需要动态调度的高峰时段。
2.2)根据用户数卡数据利用描述性统计方法分析公共自行车借还空间分布规律:找出典型的需要动态调度的租赁点,并计算瞬时最大自行车周转量,确定调度量。
选取许昌市主城区36个公共自行车租赁点随机收集其2014年7月至2015年6月中82天的刷卡数据,其中包含工作日52天、周末22天和节假日8天,一共197,201条刷卡数据。
分析用户借还公共自行车借还时间分布规律,许昌市公共自行车系统的日均借还次数为15400次/日,图3反映了工作日各时刻的自行车借还量分布。图中有两个明显的峰值,早高峰为7:00-9:00,晚高峰为17:00-19:00,其中晚高峰的借还量略高于早高峰。
分析公共自行车系统晚高峰(17:00-19:00)时段的借还数据进行空间分布特性。晚高峰期间,由于租赁点附近不同的土地利用性质和通勤出行导致公共自行车租赁点借还不均衡现象显著。一些租赁点自行车数量锐减,导致用户无车可借,然而一些租赁点自行车数量激增,导致用户无法还车。图4别反映了过度还车和过度借车租赁点晚高峰期间的借还特征。图中横轴表示租赁点编号,主纵轴表示自行车数量,次纵轴表示D值。绿色竖条表示借车数量,黄色竖条表示还车数量,蓝色折线表示各租赁点的容量,红色折线表示D值。D值为租赁点自行车借还量差值的绝对值,反映一定时间段内租赁点增加或减少的自行车数量,表示租赁点瞬时最大自行车周转量。
由图4a可知,研究范围内一共有16个租赁点过度还车现象严重。这些租赁点大多靠近居住区、商业区和休闲娱乐场所。晚高峰期间,大量用户骑车到这些租赁点,导致车桩短缺,无法安置这些过多的自行车。供需失衡最严重的是9号租赁点,该租赁点最大自行车周转量为191辆,然而该租赁点的容量仅30辆。
与此相反,图4b反映了研究范围内10个租赁点的过度借车现象。这些租赁点大多位于办公大楼、医院、学校、长途汽车站附近。晚高峰期间,大量用户从这些租赁点借车,造成租赁点自行车短缺。其中借车现象最严重的是1号租赁点,该租赁点的容量为40辆,但最大自行车周转量高达224辆。
为探究过度还车和借车租赁点的特性并确定调度量,重点分析过度借还现象最严重的两个租赁点的时间分布特性(如图5所示)。
9号租赁点(图5a)位于城市主干路交叉口,靠近商场和银行以及居住区。该租赁点的车桩数为30桩,晚高峰期间,该租赁点的借车数和还车数均超过租赁点的容量,但还车数远超过借车数,最大瞬时周转量为43辆,意味着该租赁点在晚高峰期间动态调度的最大取车量为43辆。1号租赁点(图5b)位于城市长途汽车站附近,周围建有一些办公写字楼。该租赁点的车桩数为40桩,晚高峰期间,该租赁点的还车数远超过租赁点的容量,最大瞬时周转量为49辆,意味着该租赁点在晚高峰期间动态调度的最小配送量为49辆。
根据租赁点借还时空特性分析确定研究区域范围内共有26个租赁点需要调度,其中包括16个取车点和10个配送点。表1表示了个租赁点的详细信息,包括租赁点编号、调度需求量以及大地坐标系坐标,调度需求量正值为取车量,负值为配送量。
表1调度区域租赁点信息
在步骤3)中,建立公共自行车动态调度路径优化模型的主要步骤包括:
3.1)问题描述和假设:公共自行车系统动态调度问题可以规约为“同时取货和配送的旅行商问题(Traveling Salesman Problem with Pickup and Delivery,TSPPD)”。需要配送的租赁点根据需求分为取车点和配送点。调度卡车从任意租赁点开始在各取车点和配送点之间进行调配,每个租赁点的取车量或配送量不为零,每个租赁点仅访问一次,配送区域内全部租赁点均被访问过后以任意租赁点为结束点。为便于求解,假设调度卡车的初始装载量为零,每个租赁点的需求量均小于调度卡车的额定装载量。TSPPD模型属于NP-难问题,可以根据问题描述建立混合整数规划模型。基于以上公共自行车系统动态调度问题描述,对模型做出以下假设:
①调度路径目标:在完成调度需求的基础上调度卡车行程距离最短;
②行驶原则:调度区域范围内起点和终点均为任意租赁点,调度卡车的初始装载量为零;
③调度任务结束后调度卡车的装载量可以不为零,每个租赁点仅访问一次;
④自行车调度OD:调度卡车将自行车从取车需求点运送至配送需求点;
⑤服务原则:调度卡车基于最大效用原则服务于每个租赁点;
⑥当租赁点的调度需求超过卡车的额定装载量时,调度卡车访问一次只能完成部分调度任务。
3.2)调度原则:假设Si表示租赁点i的调度需求,其中正值表示取车量,负值表示配送量。基于调度卡车的装载量,公共自行车系统动态调度的服务模式可以分为4种。其中Ca表示卡车的额定装载量,Bn表示卡车的装载量。
(1)取走租赁点全部需求量服务模式:
①当Bn=0,0<Si<Ca时,卡车在这个点的调度量为Si;
②当0<Bn≤Ca,Si<Ca-Bn时,卡车在这个点的调度量为Ca-Bn;
(2)取走部分自行车直至卡车满载服务模式:
①当Bn=0,Si≥Ca时,卡车在这个点的调度量为Ca;
②当0<Bn≤Ca,Si≥Ca-Bn时,卡车在这个点的调度量为Ca-Bn;
(3)卸载全部自行车服务模式:
①当0<Bn<Ca,-Si≥Bn时,卡车在这个点的调度量为Bn;
②当Bn=Ca,-Si≥Ca时,卡车在这个点的调度量为-Si-Ca;
(4)卸载部分自行车服务模式:
①当0<Bn<Ca,-Si<Bn时,卡车在这个点的调度量为-Si;
②当Bn=Ca,-Si<Ca时,卡车在这个点的调度量为-Si。
在实际操作过程中,若遇租赁点需求量大于调度卡车装载量的情况,可将该点的调度需求进行分割,将该点切分为虚拟的几个租赁点,坐标相同且相互间的距离为零,配送卡车可多次访问这个租赁点直至满足调度需求。以上假设基本符合公共自行车动态调度系统的实际情况,同时也对现实情境进行简化,方便建模和求解。
3.3)模型建立
TSPPD混合整数规划模型:
目标函数H0:
s.t.:
gij≤Caxijk, (3-6)
参数说明:
H:调度区域租赁点集合,H={1,2,...,n};
R:调度路径的总距离;
K:调度卡车数量;
dij:租赁点i与租赁点j间距离,i,j∈H,i≠j;
gij:通过弧(i,j)时,调度卡车上装载的未配送的公共自行车总量,i,j∈H,i≠j;
xijk:决策变量;
模型说明:模型的目标函数(3-1)是以调度卡车行驶总路程最短为目标建立的;约束(3-2)保证每个租赁点有且仅有1辆调度卡车访问一次;约束(3-3)保证卡车到达租赁点提供调度服务后并离开;约束(3-4)确保每个租赁点最多只被1辆卡车提供服务;约束(3-5)保证每个租赁点的调度需求都被满足;约束(3-6)保证在任何时刻卡车上的自行车数量都不超过额定载货量。约束(3-7)为变量取值约束。
在步骤4)中,求解公共自行车动态调度路径优化模型的主要步骤包括:
4.1)改进的蚁群算法:蚁群在觅食过程中总能找到一条从蚁巢到食物源的最短路径。蚁群算法的基本思路是:蚁群在寻找食物时,会在路径上释放一种特殊的信息素,当蚂蚁遇到一个未走过的路口就随机挑选一条路径前行,同时释放出与路径长度有关的信息素,路径越长释放的信息素浓度越低,后来的蚂蚁再次经过这个路口时选择信息素浓度较高路径的概率会相对较大,形成一个正反馈。最优路径上的信息素浓度越来越大而其他路径上的信息素浓度随时间流逝而消减,最终整个蚁群总能找到一条从食物到巢穴之间的最优路径。本发明在蚁群算法的基础上进行改进用于求公共自行车动态调度路径优化模型最优解。算法中,调度卡车被视为负重的蚂蚁,调度卡车寻找下一个调度租赁点前需要检查自行车装载量,筛选出目前装载量能够服务的租赁点。卡车向下一个目标移动前需根据自身装载量、服务点调度量以及路径距离等信息计算出下一步可达节点的概率,并按此概率实现一步移动。卡车在搜索过程或找到一个解后,会评估该解或解的部分优化程度,并把评价信息保存到相关连接路径的信息素中。在调度区域集合H中,卡车依次选择各租赁点之间路径的信息素浓度大的路径服务,服务完毕后更新装载量再搜索下一服务租赁点,重复这个过程至调度任务完成或无法搜索下一服务点为止,即找到最优解。
4.2)改进的蚁群算法计算步骤如下:
①参数初始化;初始化蚂蚁的调度任务、所携带的自行车数量;初始化信息素矩阵、启发因子和信息素消减系数等参数;
②随机为蚂蚁选择开始调度的租赁点,开始新迭代;
③搜索最近的未被服务的租赁点,并移动至该点完成调度任务;
④更新调度任务和自身携带的自行车数量;
⑤搜索下一个租赁点,并计算租赁点被选中的概率;
⑥选择租赁点进行服务;
⑦返回步骤3,直至无下一个可服务租赁点;
⑧更新信息素;
⑨返回步骤2,直至达到最大迭代数。
4.3)蚂蚁移动遵循的转移规则与各路径上的信息素浓度和期望值有关,蚂蚁k在租赁点i上选择租赁点j的概率计算公式如下:
式中:
未被访问的租赁点集;
α:信息素启发因子,表示蚂蚁运动过程中所积累的信息量在指导蚁群搜索中的相对重要程度,反映了蚁群在路径搜索中随机性因素作用的强度,α值越大,蚂蚁选择以前走过的路径的可能性越大,搜索的随机性越弱,α越小,蚁群搜索会过早陷于局部最优。α值可通过仿真实验分析来确定。
β:自启发式因子,反映蚂蚁在运动过程中启发信息在指导蚁群搜索中的相对重要程度。其大小反映了蚁群在路径搜索中的先验性、确定性因素作用的强度,β值越大,蚂蚁在局部点上选择局部最短路径的可能性越大,提高了收敛速度,但在最优路径搜索过程中的随机性减弱,易陷入局部最优。β值可通过仿真实验分析来确定。
τ:信息素强度,反映蚁群在路段上的先验经验,是蚂蚁在运动过程中所积累的信息。
租赁点i,j之间路段上的信息素总量;
租赁点i,j之间路段上更新前的信息素总量;
租赁点i,j之间路段上的信息素增量;
ρ:常量,反映信息素的蒸发速度,取值区间为[0,1],针对具体问题其大小根据实验结果进行适当调整;
k:蚂蚁序号;
4.4)求解质量直接影响信息素增量的计算结果,本发明采用ant-weight策略来计算信息素增量,计算公式如下:
路段(ij)属于蚂蚁k的路径
Q:信息素增加强度系数,影响算法的收敛速度,Q值可通过仿真实验分析来确定。
fk:第k只蚂蚁在整个搜索路径中的目标函数值;
dij:租赁点i,j间的距离;
N:第k条路径上的节点数(N>2);
η:能见度,反映的是蚂蚁在运动过程中的启发信息,与路段长度相关。
ant-weight策略由两部分组成:是全局信息,表示第k只蚂蚁所经过的路径上的信息素增量总和。是局部信息,表示每条路径分担信息素增量的比例,该比例是根据每条路径对整个方案贡献来确定的。ant-weight策略综合考虑全局和局部信息,信息素增量分配更加合理:更优路径分配更多的信息素,更好地引导后续搜索。该算法可以从先前的搜索中得到更多的有效信息,在更好的区域内进行更详细的搜索,以使更优方案在后续搜索中更具吸引力并提高收敛速度。
在本案例中,m表示调度区域内租赁点数量,为26;卡车额定装载量Ca为55辆/车,参数α,β,ρ,Q基于大量实验及文献资料所取的最优值设置,α=1,β=5,ρ=0.1,Q=100。考虑样本容量以及运算时间,最大回归次数设置为200。主要的参数取值见表2。
表2参数取值
参数名 | m | α | β | ρ | Q | Ca | 最大回归数 |
取值 | 26 | 1 | 5 | 0.1 | 100 | 55 | 200 |
4.5)结合各租赁店的调度需求数据制定调度方案。
在步骤5)中采用本发明的方法,计算调度区域内各租赁点的调度需求,利用公共自行车动态调度路径优化模型将动态调度问题建模,并采用改进的蚁群算法进行求解,制定公共自行车高峰小时动态调度方案。
模型算法计算结果如表3所示,经计算,调度区域内1只蚂蚁可以完成调度任务,最短调度距离为13.838km,最短调度路径如图6所示。取车量总量为275辆,配送量总量为270辆,取车量大于配送量,证明算法是有效的。模型的收敛性验证结果如图7所示,模型在回归116次后达到收敛,即取得最优值13.838km,且经过多次试验,所得结果大体相当。改进的算法具有良好的适应性,性能稳定,收敛速度快。
表3运算结果
从最优路径和平均路径的演化过程(图7)来看,从23次循环后每次循环的最短路径较为稳定,说明算法收敛速度块。平均路径随着循环次数增加逐渐收敛至小范围内波动,加强搜索范围,使得到相对更优解的概率加大,最优路径与平均路径差异较小。结果证明,改进的蚁群算法对解决TSPPD模型是有效的,该算法结构简单、收敛速度快、性能稳定、运行结果良好。
以上所述之实施例子只为本发明之较佳实施例,并非以此限制本发明的实施范围,故凡依本发明之形状、原理所作的变化,均应涵盖在本发明的保护范围内。
Claims (4)
1.一种基于改进蚁群算法的公共自行车动态调度方法,其特征在于,该方法包括如下步骤:
S1选定研究范围,采集基础资料,包括各公共自行车租赁点位置、锁车桩数量、实际配车数量、用户IC卡刷卡数据;
S2确定调度区域和调度量,根据用户刷卡数据分析各租赁点自行车数量的时空变化规律,得到高峰小时借还供求关系,通过D值表示租赁点瞬时最大自行车周转量,D值为租赁点自行车借还量差值的绝对值,反映一定时间段内租赁点增加或减少的自行车数量,从而确定动态调度区域以及各调度租赁点的自行车调度量,其中正值为取车量,负值为配送量;
S3建立公共自行车动态调度路径优化模型,将公共自行车动态调度问题看作“同时取货和配送的旅行商问题”,提出调度卡车最大效用服务原则,以调度卡车在完成调度任务时求解最短调度路径为目标提出公共自行车动态调度路径优化模型;
S4求解方法,采用改进的蚁群算法来求解TSPPD模型,调度卡车被视为负重的蚂蚁,调度卡车寻找下一个调度租赁点前需要检查自行车装载量,筛选出目前装载量能够服务的租赁点,卡车向下一个目标移动前需根据自身装载量、服务点调度量以及路径距离计算出下一步可达节点的概率,并按此概率实现一步移动,服务完毕后更新装载量再搜索下一服务租赁点,重复此过程至调度任务完成或无法搜索下一服务点为止;
S5制定调度方案,计算调度区域内各租赁点的调度需求,利用公共自行车动态调度路径优化模型将动态调度问题建模,并采用改进的蚁群算法进行求解,制定公共自行车高峰小时动态调度方案。
2.根据权利要求1所述的基于改进蚁群算法的公共自行车动态调度方法,其特征在于,步骤S2中所述的确定调度区域和调度量的具体步骤包括:
S21根据用户刷卡数据利用描述性统计方法分析公共自行车借还时间分布规律:找出典型的需要动态调度的高峰时段。
S22根据用户数卡数据利用描述性统计方法分析公共自行车借还空间分布规律:找出典型的需要动态调度的租赁点,并计算瞬时最大自行车周转量,确定调度量。
3.根据权利要求1所述的基于改进蚁群算法的公共自行车动态调度方法,其特征在于,步骤S3中所述的建立公共自行车动态调度路径优化模型具体步骤包括:
S31问题描述和假设:公共自行车系统动态调度问题可以规约为“同时取货和配送的旅行商问题”,需要配送的租赁点根据需求分为取车点和配送点,调度卡车从任意租赁点开始在各取车点和配送点之间进行调配,每个租赁点的取车量或配送量不为零,每个租赁点仅访问一次,配送区域内全部租赁点均被访问过后以任意租赁点为结束点,为便于求解,令调度卡车的初始装载量为零,每个租赁点的需求量均小于调度卡车的额定装载量,TSPPD模型属于NP-难问题,根据问题描述建立混合整数规划模型,基于以上公共自行车系统动态调度问题描述,对模型做出以下假设:
①调度路径目标:在完成调度需求的基础上调度卡车行程距离最短;
②行驶原则:调度区域范围内起点和终点均为任意租赁点,调度卡车的初始装载量为零;
③调度任务结束后调度卡车的装载量可以不为零,每个租赁点仅访问一次;
④自行车调度OD:调度卡车将自行车从取车需求点运送至配送需求点;
⑤服务原则:调度卡车基于最大效用原则服务于每个租赁点;
⑥当租赁点的调度需求超过卡车的额定装载量时,调度卡车访问一次只能完成部分调度任务。
S32调度原则:以Si表示租赁点i的调度需求,其中正值表示取车量,负值表示配送量,基于调度卡车的装载量,公共自行车系统动态调度的服务模式可以分为4种,其中Ca表示卡车的额定装载量,Bn表示卡车的装载量:
(1)取走租赁点全部需求量服务模式:
①当Bn=0,0<Si<Ca时,卡车在这个点的调度量为Si;
②当0<Bn≤Ca,Si<Ca-Bn时,卡车在这个点的调度量为Ca-Bn;
(2)取走部分自行车直至卡车满载服务模式:
①当Bn=0,Si≥Ca时,卡车在这个点的调度量为Ca;
②当0<Bn≤Ca,Si≥Ca-Bn时,卡车在这个点的调度量为Ca-Bn;
(3)卸载全部自行车服务模式:
①当0<Bn<Ca,-Si≥Bn时,卡车在这个点的调度量为Bn;
②当Bn=Ca,-Si≥Ca时,卡车在这个点的调度量为-Si-Ca;
(4)卸载部分自行车服务模式:
①当0<Bn<Ca,-Si<Bn时,卡车在这个点的调度量为-Si;
②当Bn=Ca,-Si<Ca时,卡车在这个点的调度量为-Si,
在实际操作过程中,若遇租赁点需求量大于调度卡车装载量的情况,将该点的调度需求进行分割,将该点切分为虚拟的几个租赁点,坐标相同且相互间的距离为零,配送卡车可多次访问这个租赁点直至满足调度需求;
S33模型建立:
TSPPD混合整数规划模型:
目标函数H0:
<mrow>
<mi>M</mi>
<mi>i</mi>
<mi>n</mi>
<mi>i</mi>
<mi>m</mi>
<mi>i</mi>
<mi>z</mi>
<mi>e</mi>
<mi>R</mi>
<mo>=</mo>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>k</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>K</mi>
</munderover>
<munder>
<mo>&Sigma;</mo>
<mrow>
<mi>i</mi>
<mo>&Element;</mo>
<msub>
<mi>H</mi>
<mn>0</mn>
</msub>
</mrow>
</munder>
<munder>
<mo>&Sigma;</mo>
<mrow>
<mi>j</mi>
<mo>&Element;</mo>
<mi>H</mi>
</mrow>
</munder>
<msub>
<mi>x</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
<mi>k</mi>
</mrow>
</msub>
<msub>
<mi>d</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
</mrow>
</msub>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>3</mn>
<mo>-</mo>
<mn>1</mn>
<mo>)</mo>
</mrow>
</mrow>
s.t.:
<mrow>
<munderover>
<mi>&Sigma;</mi>
<mrow>
<mi>k</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>K</mi>
</munderover>
<munder>
<mi>&Sigma;</mi>
<mrow>
<mi>i</mi>
<mo>&Element;</mo>
<mi>H</mi>
</mrow>
</munder>
<msub>
<mi>x</mi>
<mi>ijk</mi>
</msub>
<mo>=</mo>
<mn>1</mn>
<mo>,</mo>
<mo>&ForAll;</mo>
<mi>j</mi>
<mo>&Element;</mo>
<mi>H</mi>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>3</mn>
<mo>-</mo>
<mn>2</mn>
<mo>)</mo>
</mrow>
</mrow>
<mrow>
<munder>
<mi>&Sigma;</mi>
<mrow>
<mi>i</mi>
<mo>&Element;</mo>
<mi>H</mi>
</mrow>
</munder>
<msub>
<mi>x</mi>
<mi>ijk</mi>
</msub>
<mo>-</mo>
<munder>
<mi>&Sigma;</mi>
<mrow>
<mi>i</mi>
<mo>&Element;</mo>
<mi>H</mi>
</mrow>
</munder>
<msub>
<mi>x</mi>
<mi>jik</mi>
</msub>
<mo>=</mo>
<mn>0</mn>
<mo>,</mo>
<mo>&ForAll;</mo>
<mi>j</mi>
<mo>&Element;</mo>
<mi>H</mi>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>3</mn>
<mo>-</mo>
<mn>3</mn>
<mo>)</mo>
</mrow>
</mrow>
<mrow>
<munder>
<mo>&Sigma;</mo>
<mrow>
<mi>j</mi>
<mo>&Element;</mo>
<mi>H</mi>
</mrow>
</munder>
<msub>
<mi>x</mi>
<mrow>
<mn>0</mn>
<mi>j</mi>
<mi>k</mi>
</mrow>
</msub>
<mo>&le;</mo>
<mn>1</mn>
<mo>,</mo>
<mi>k</mi>
<mo>=</mo>
<mn>1</mn>
<mo>,</mo>
<mn>2</mn>
<mo>,</mo>
<mo>...</mo>
<mo>,</mo>
<mi>K</mi>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>3</mn>
<mo>-</mo>
<mn>4</mn>
<mo>)</mo>
</mrow>
</mrow>
<mrow>
<munder>
<mi>&Sigma;</mi>
<mrow>
<mi>j</mi>
<mo>&Element;</mo>
<mi>H</mi>
<mo>,</mo>
<mi>i</mi>
<mo>&NotEqual;</mo>
<mi>j</mi>
</mrow>
</munder>
<msub>
<mi>g</mi>
<mi>ji</mi>
</msub>
<mo>-</mo>
<munder>
<mi>&Sigma;</mi>
<mrow>
<mi>j</mi>
<mo>&Element;</mo>
<mi>H</mi>
<mo>,</mo>
<mi>i</mi>
<mo>&NotEqual;</mo>
<mi>j</mi>
</mrow>
</munder>
<msub>
<mi>g</mi>
<mi>ij</mi>
</msub>
<mo>=</mo>
<msub>
<mi>S</mi>
<mi>i</mi>
</msub>
<mo>,</mo>
<mo>&ForAll;</mo>
<mi>i</mi>
<mo>&Element;</mo>
<mi>H</mi>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>3</mn>
<mo>-</mo>
<mn>5</mn>
<mo>)</mo>
</mrow>
</mrow>
gij≤Caxijk, (3-6)
<mrow>
<mo>&ForAll;</mo>
<mi>i</mi>
<mo>&Element;</mo>
<mi>H</mi>
<mo>,</mo>
<mo>&ForAll;</mo>
<mi>j</mi>
<mo>&Element;</mo>
<mi>H</mi>
<mo>,</mo>
<mi>i</mi>
<mo>&NotEqual;</mo>
<mi>j</mi>
<mo>,</mo>
<mi>k</mi>
<mo>=</mo>
<mn>1,2</mn>
<mo>,</mo>
<mo>.</mo>
<mo>.</mo>
<mo>.</mo>
<mo>,</mo>
<mi>K</mi>
<mo>,</mo>
<msub>
<mi>x</mi>
<mi>ijk</mi>
</msub>
<mo>&Element;</mo>
<mo>{</mo>
<mn>0,1</mn>
<mo>}</mo>
</mrow>
<mrow>
<msub>
<mi>g</mi>
<mi>ij</mi>
</msub>
<mo>></mo>
<mn>0</mn>
<mo>&ForAll;</mo>
<mi>i</mi>
<mo>&Element;</mo>
<mi>H</mi>
<mo>,</mo>
<mo>&ForAll;</mo>
<mi>j</mi>
<mo>&Element;</mo>
<mi>H</mi>
<mo>,</mo>
<mi>i</mi>
<mo>&NotEqual;</mo>
<mi>j</mi>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>3</mn>
<mo>-</mo>
<mn>7</mn>
<mo>)</mo>
</mrow>
</mrow>
参数说明:
H:调度区域租赁点集合,H={1,2,...,n};
R:调度路径的总距离;
K:调度卡车数量;
dij:租赁点i与租赁点j间距离,i,j∈H,i≠j;
gij:通过弧(i,j)时,调度卡车上装载的未配送的公共自行车总量,i,j∈H,i≠j;
xijk:决策变量;
模型说明:模型的目标函数(3-1)是以调度卡车行驶总路程最短为目标建立的;约束(3-2)保证每个租赁点有且仅有1辆调度卡车访问一次;约束(3-3)保证卡车到达租赁点提供调度服务后并离开;约束(3-4)确保每个租赁点最多只被1辆卡车提供服务;约束(3-5)保证每个租赁点的调度需求都被满足;约束(3-6)保证在任何时刻卡车上的自行车数量都不超过额定载货量;约束(3-7)为变量取值约束。
4.根据权利要求1所述的基于改进蚁群算法的公共自行车动态调度方法,其特征在于,步骤S4中所述的采用改进的蚁群算法来求解TSPPD模型的具体方法包括:
S41改进的蚁群算法:调度卡车被视为负重的蚂蚁,调度卡车寻找下一个调度租赁点前需要检查自行车装载量,筛选出目前装载量能够服务的租赁点,卡车向下一个目标移动前需根据自身装载量、服务点调度量以及路径距离等信息计算出下一步可达节点的概率,并按此概率实现一步移动,卡车在搜索过程或找到一个解后,会评估该解或解的部分优化程度,并把评价信息保存到相关连接路径的信息素中,在调度区域集合H中,卡车依次选择各租赁点之间路径的信息素浓度大的路径服务,服务完毕后更新装载量再搜索下一服务租赁点,重复这个过程至调度任务完成或无法搜索下一服务点为止,即找到最优解;
S42改进的蚁群算法计算步骤如下:
①参数初始化;初始化蚂蚁的调度任务、所携带的自行车数量;初始化信息素矩阵、启发因子和信息素消减系数等参数;
②随机为蚂蚁选择开始调度的租赁点,开始新迭代;
③搜索最近的未被服务的租赁点,并移动至该点完成调度任务;
④更新调度任务和自身携带的自行车数量;
⑤搜索下一个租赁点,并计算租赁点被选中的概率;
⑥选择租赁点进行服务;
⑦返回步骤3,直至无下一个可服务租赁点;
⑧更新信息素;
⑨返回步骤2,直至达到最大迭代数。
S43蚂蚁移动遵循的转移规则与各路径上的信息素浓度和期望值有关,蚂蚁k在租赁点i上选择租赁点j的概率计算公式如下:
<mrow>
<msub>
<mi>p</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
</mrow>
</msub>
<mrow>
<mo>(</mo>
<mi>k</mi>
<mo>)</mo>
</mrow>
<mo>=</mo>
<mfenced open = '{' close = ''>
<mtable>
<mtr>
<mtd>
<mrow>
<mfrac>
<mrow>
<msubsup>
<mi>&tau;</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
</mrow>
<mi>&alpha;</mi>
</msubsup>
<mo>&times;</mo>
<msubsup>
<mi>&eta;</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
</mrow>
<mi>&beta;</mi>
</msubsup>
</mrow>
<mrow>
<msubsup>
<mi>&Sigma;&tau;</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
</mrow>
<mi>&alpha;</mi>
</msubsup>
<mo>&times;</mo>
<msubsup>
<mi>&eta;</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
</mrow>
<mi>&beta;</mi>
</msubsup>
</mrow>
</mfrac>
<mo>,</mo>
<mi>j</mi>
<mo>&NotElement;</mo>
<mover>
<mi>H</mi>
<mo>&OverBar;</mo>
</mover>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mn>0</mn>
<mo>,</mo>
<mi>o</mi>
<mi>t</mi>
<mi>h</mi>
<mi>e</mi>
<mi>r</mi>
<mi>w</mi>
<mi>i</mi>
<mi>s</mi>
<mi>e</mi>
</mrow>
</mtd>
</mtr>
</mtable>
</mfenced>
</mrow>
3
式中:
未被访问的租赁点集;
α:信息素启发因子,表示蚂蚁运动过程中所积累的信息量在指导蚁群搜索中的相对重要程度,反映了蚁群在路径搜索中随机性因素作用的强度,α值越大,蚂蚁选择以前走过的路径的可能性越大,搜索的随机性越弱,α越小,蚁群搜索会过早陷于局部最优。α值可通过仿真实验分析来确定,
β:自启发式因子,反映蚂蚁在运动过程中启发信息在指导蚁群搜索中的相对重要程度。其大小反映了蚁群在路径搜索中的先验性、确定性因素作用的强度,β值越大,蚂蚁在局部点上选择局部最短路径的可能性越大,提高了收敛速度,但在最优路径搜索过程中的随机性减弱,易陷入局部最优。β值可通过仿真实验分析来确定,
τ:信息素强度,反映蚁群在路段上的先验经验,是蚂蚁在运动过程中所积累的信息,
<mrow>
<msubsup>
<mi>&tau;</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
</mrow>
<mrow>
<mi>n</mi>
<mo>+</mo>
<mn>1</mn>
</mrow>
</msubsup>
<mo>=</mo>
<mi>&rho;</mi>
<mo>&times;</mo>
<msubsup>
<mi>&tau;</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
</mrow>
<mi>n</mi>
</msubsup>
<mo>+</mo>
<msubsup>
<mi>&Sigma;&Delta;&tau;</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
</mrow>
<mi>k</mi>
</msubsup>
</mrow>
租赁点i,j之间路段上的信息素总量;
租赁点i,j之间路段上更新前的信息素总量;
租赁点i,j之间路段上的信息素增量;
ρ:常量,反映信息素的蒸发速度,取值区间为[0,1],针对具体问题其大小根据实验结果进行适当调整;
k:蚂蚁序号;
S44求解质量直接影响信息素增量的计算结果,本发明采用ant-weight策略来计算信息素增量,计算公式如下:
Q:信息素增加强度系数,影响算法的收敛速度,Q值可通过仿真实验分析来确定,
fk:第k只蚂蚁在整个搜索路径中的目标函数值;
dij:租赁点i,j间的距离;
N:第k条路径上的节点数(N>2);
η:能见度,反映的是蚂蚁在运动过程中的启发信息,与路段长度相关。
<mrow>
<msub>
<mi>&eta;</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
</mrow>
</msub>
<mo>=</mo>
<mfrac>
<mn>1</mn>
<msub>
<mi>d</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
</mrow>
</msub>
</mfrac>
<mo>,</mo>
</mrow>
ant-weight策略由两部分组成:是全局信息,表示第k只蚂蚁所经过的路径上的信息素增量总和,是局部信息,表示每条路径分担信息素增量的比例,该比例是根据每条路径对整个方案贡献来确定的。
S45结合各租赁店的调度需求数据制定调度方案。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710458464.0A CN107330586A (zh) | 2017-06-16 | 2017-06-16 | 一种基于改进蚁群算法的公共自行车动态调度方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710458464.0A CN107330586A (zh) | 2017-06-16 | 2017-06-16 | 一种基于改进蚁群算法的公共自行车动态调度方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107330586A true CN107330586A (zh) | 2017-11-07 |
Family
ID=60195584
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710458464.0A Pending CN107330586A (zh) | 2017-06-16 | 2017-06-16 | 一种基于改进蚁群算法的公共自行车动态调度方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107330586A (zh) |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107657353A (zh) * | 2017-11-09 | 2018-02-02 | 东峡大通(北京)管理咨询有限公司 | 租赁物的调度方法及系统 |
CN107766994A (zh) * | 2017-12-04 | 2018-03-06 | 长沙理工大学 | 一种共享自行车调度方法与调度系统 |
CN107909811A (zh) * | 2017-12-05 | 2018-04-13 | 北京摩拜科技有限公司 | 车辆调度方法、服务器、客户端及系统 |
CN108197793A (zh) * | 2017-12-27 | 2018-06-22 | 南京邮电大学 | 一种基于潮汐模型和粒子群算法的共享单车调配方法 |
CN108388999A (zh) * | 2018-03-09 | 2018-08-10 | 北京摩拜科技有限公司 | 车辆调度方法、服务器、客户端及系统 |
CN108389387A (zh) * | 2018-04-28 | 2018-08-10 | 程俊 | 一种共享公共自行车智能调度方法及系统 |
CN108399212A (zh) * | 2018-02-02 | 2018-08-14 | 深圳市微埃智能科技有限公司 | 物联网终端的时间序列数据处理和神经网络趋势预测方法 |
CN108629522A (zh) * | 2018-05-11 | 2018-10-09 | 东南大学 | 一种基于聚类分析的公共自行车调度方法 |
CN108776852A (zh) * | 2018-06-22 | 2018-11-09 | 北京京东金融科技控股有限公司 | 无桩车辆调度方法和系统 |
CN109635912A (zh) * | 2018-11-16 | 2019-04-16 | 佛山科学技术学院 | 一种基于双向蚁群与动态规划的管道布设方法及装置 |
CN110807921A (zh) * | 2019-10-24 | 2020-02-18 | 上海钧正网络科技有限公司 | 车辆调度方法、装置、设备和存储介质 |
CN110930687A (zh) * | 2017-12-18 | 2020-03-27 | 北京物资学院 | 高峰用车时间段车辆调度的方法及系统 |
CN111062629A (zh) * | 2019-12-20 | 2020-04-24 | 上海钧正网络科技有限公司 | 车辆调度方法、装置、计算机设备和存储介质 |
WO2021042833A1 (zh) * | 2019-09-06 | 2021-03-11 | 平安科技(深圳)有限公司 | 基于调度模型的车辆调度方法、装置、计算机设备及存储介质 |
-
2017
- 2017-06-16 CN CN201710458464.0A patent/CN107330586A/zh active Pending
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107657353A (zh) * | 2017-11-09 | 2018-02-02 | 东峡大通(北京)管理咨询有限公司 | 租赁物的调度方法及系统 |
CN107766994A (zh) * | 2017-12-04 | 2018-03-06 | 长沙理工大学 | 一种共享自行车调度方法与调度系统 |
CN107909811A (zh) * | 2017-12-05 | 2018-04-13 | 北京摩拜科技有限公司 | 车辆调度方法、服务器、客户端及系统 |
CN110930687B (zh) * | 2017-12-18 | 2020-12-25 | 北京物资学院 | 高峰用车时间段车辆调度的方法及系统 |
CN110930687A (zh) * | 2017-12-18 | 2020-03-27 | 北京物资学院 | 高峰用车时间段车辆调度的方法及系统 |
CN108197793A (zh) * | 2017-12-27 | 2018-06-22 | 南京邮电大学 | 一种基于潮汐模型和粒子群算法的共享单车调配方法 |
CN108399212A (zh) * | 2018-02-02 | 2018-08-14 | 深圳市微埃智能科技有限公司 | 物联网终端的时间序列数据处理和神经网络趋势预测方法 |
CN108388999A (zh) * | 2018-03-09 | 2018-08-10 | 北京摩拜科技有限公司 | 车辆调度方法、服务器、客户端及系统 |
CN108388999B (zh) * | 2018-03-09 | 2021-01-05 | 汉海信息技术(上海)有限公司 | 车辆调度方法、服务器、客户端及系统 |
CN108389387A (zh) * | 2018-04-28 | 2018-08-10 | 程俊 | 一种共享公共自行车智能调度方法及系统 |
CN108629522B (zh) * | 2018-05-11 | 2020-06-16 | 东南大学 | 一种基于聚类分析的公共自行车调度方法 |
CN108629522A (zh) * | 2018-05-11 | 2018-10-09 | 东南大学 | 一种基于聚类分析的公共自行车调度方法 |
CN108776852A (zh) * | 2018-06-22 | 2018-11-09 | 北京京东金融科技控股有限公司 | 无桩车辆调度方法和系统 |
CN109635912A (zh) * | 2018-11-16 | 2019-04-16 | 佛山科学技术学院 | 一种基于双向蚁群与动态规划的管道布设方法及装置 |
CN109635912B (zh) * | 2018-11-16 | 2023-10-31 | 佛山科学技术学院 | 一种基于双向蚁群与动态规划的管道布设方法及装置 |
WO2021042833A1 (zh) * | 2019-09-06 | 2021-03-11 | 平安科技(深圳)有限公司 | 基于调度模型的车辆调度方法、装置、计算机设备及存储介质 |
CN110807921A (zh) * | 2019-10-24 | 2020-02-18 | 上海钧正网络科技有限公司 | 车辆调度方法、装置、设备和存储介质 |
CN111062629A (zh) * | 2019-12-20 | 2020-04-24 | 上海钧正网络科技有限公司 | 车辆调度方法、装置、计算机设备和存储介质 |
CN111062629B (zh) * | 2019-12-20 | 2021-07-06 | 上海钧正网络科技有限公司 | 车辆调度方法、装置、计算机设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107330586A (zh) | 一种基于改进蚁群算法的公共自行车动态调度方法 | |
CN104102953B (zh) | 一种物流送货线路优化生成方法及系统 | |
Park et al. | An effects analysis of logistics collaboration in last-mile networks for CEP delivery services | |
Karadimas et al. | GIS-based modelling for the estimation of municipal solid waste generation and collection | |
Qu et al. | An integrated inventory–transportation system with modified periodic policy for multiple products | |
Wyatt | The development of a GIS-based property information system for real estate valuation | |
CN109117993A (zh) | 一种车辆路径优化的处理方法 | |
Englin et al. | Modeling recreation demand in a Poisson system of equations: An analysis of the impact of international exchange rates | |
CN112434849B (zh) | 基于改进多目标算法的危险品运输路径动态规划方法 | |
CN103794053A (zh) | 一种城市短途物流单目标配送时间模糊预测方法及系统 | |
CN108734413A (zh) | 一种高铁站路网评价方法及装置 | |
Jabbarzadeh et al. | A multi-objective model for location of transfer stations: case study in waste management system of Tehran | |
CN116629738A (zh) | 一种物流路径优化方法、相关方法、装置、设备及介质 | |
CN106600180A (zh) | 物流管理系统的运输路径优化方法和系统 | |
CN109409955A (zh) | 需求变化下分期分时定制公交票价制定方法 | |
CN110276499A (zh) | 一种垃圾清运路线优化计算方法 | |
Friedrich et al. | Urban consolidation centers and city toll schemes–Investigating the impact of city tolls on transshipment decisions | |
CN111915078B (zh) | 一种基于数据驱动的柔性化卷烟配送线路规划方法及系统 | |
CN112241809A (zh) | 一种卷烟物流配送线路优化方法 | |
CN116227817A (zh) | 一种动态车辆路径全链路问题分析与模型求解方法 | |
CN117610747A (zh) | 基于智能算法的卷烟送货线路的优化方法 | |
Nagrockienė et al. | The effect of waste from mineral wool manufacturing on the properties of concrete | |
KR102374342B1 (ko) | 음식물쓰레기 관리 지원 장치 및 방법 | |
Paschke et al. | Implementation of vehicle relocation for carsharing services in the multi-agent transport simulation matsim | |
de Palma et al. | Application of UrbanSim in Paris (Ile-de-France) case study |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20171107 |
|
RJ01 | Rejection of invention patent application after publication |