一种基于多目标遗传算法的共享单车停放点分配方法组成比例

技术编号:25399194 阅读:67 留言:0更新日期:2020-08-25 23:04
本发明专利技术涉及一种基于多目标遗传算法的共享单车停放点分配方法,包括步骤:S1、服务器收集在某时间点内的若干当前用户请求数据;S2、服务器收集用户的请求数据后,对用户的坐标信息、目的地信息和附近可用停放点位置信息进行统计分析;S3、选择锦标赛算法作为选择算子,选择自交作为交叉算子,选择双参赛模式;S4、利用快速非支配排序将种群分为若干个等级,并计算种群拥挤度;S5、合并种群。本发明专利技术的有益效果是:本发明专利技术提出了基于多目标遗传算法的停放点分配系统,结合了遗传算法和回归算法,并加入了Hypervolume评价指标,讨论算法的改进性能,主要表现为收敛性和分布性,一定程度上对算法的执行效率和执行效果进行了优化。

【技术实现步骤摘要】
一种基于多目标遗传算法的共享单车停放点分配方法
本专利技术涉及共享单车停放点分配领域,尤其包括一种基于多目标遗传算法的共享单车停放点分配方法。
技术介绍
随着国外公共自行车的发展逐渐完善经验化,加上我国城市的发展导致的城市交通问题的日益突出,在这种背景下,低碳环保、节能、方便、快捷和经济实用的共享单车在我国城市中孕育而出。中国的大部分城市都存在严重的交通问题,上下班高峰期时间造成的交通拥堵事件在各大城市十分常见。加上共享单车行业从出现起便是交通与管理热点,单车乱停乱放现象不仅影响市容,更加剧本就恶劣的交通环境。虽然共享单车改善了人们的出行方式,但并不能任其停放问题影响到城市交通。停车问题不仅是用户个人的问题,单车行业没有对用户停放车辆起到引导的作用,停放点的建设也并不成熟,加上用户的规范停放意识低等问题,导致了单车乱停乱放现象随处可见。而且这种现象也在一定程度上引发了一系列问题:比如交通拥堵和租车问题,降低了人们对共享单车行业的好感度;租车问题更是直接影响到用户体验,造成恶性循环。随着共享单车行业规模的增大,与之同时带来了一系列问题,尤其是租赁问题。在车辆调度方面经常表现为空位借不到车、满位停不了车;用户居住地、商业办公区、商场和公园都存在明显的早晚高峰和单车分配不合理现象,导致了共享单车用户体验下降。目前,共享单车停放点的设置已经在建设中,大多数城市中心区域基本都设置了停放点,但单车企业的引导措施和用户的停放意识还没有成熟,因此需要在企业开发的软件中设置停放引导功能,针对性地培养用户的规定停放意识,解决共享单车行业的规范停放问题。另外,单车扎堆问题对后续管理造成了不良的影响,单车很容易在地铁口、商场和旅游景点等区域扎堆停放。现如今基本采取后续车辆调度管理措施,在一定程度上能够缓解车辆扎堆问题,同时还需要用户分散停放来配合调度管理措施,用户停放目的地四周可能还存在着空位较多的停放点但不自知,这时便需要企业来软性调控各停放点之间的密度,也就是停放引导问题。由于共享单车租赁是一个新兴产业,建设初期其运营模式尚在探索中,因此集成商将其他系统上的技术放到业务模式上套用会造成“不合身”的现象。综上所述,提高单车停放区域利用率,为市民提供一个良好的用户体验,设计出一个良性引导的共享单车停放点分配系统刻不容缓。专利201810110235.4《一种结合遗传算法的混合粒子群优化算法》提出了一种结合遗传算法的混合粒子群优化算法,将粒子群优化算法的全局搜索能力与遗传算法的收敛速度相结合。把粒子群优化算法的全局搜索能力带入了算法中,再利用遗传算法的快速收敛,最终达到改进算法的目的。但该专利技术被没有从根本上加速算法的执行,首先粒子群算法和遗传算法同样属于随机搜索算法,算法的初始化对算法本身的影响较大,而粒子群算法和遗传算法在进化的过程中都是盲目的,因此算法的不稳定性并没有得到很好的解决。专利201710068910.7《基于遗传算法的调度方法及装置》公开了一种基于遗传算法的调度方法及装置,涉及智慧仓储
使用二维数组对种群个体进行编码,计算适应度值后,选取具有合适适应度的个体进行交叉处理,并且将每个调度集合中排除元素相同且调度集合相邻的基因外的元素随机组成子代个体中该调度集合的其余基因。基于遗传算法的调度方法虽然提升了调度效率,节省了调度成本,但交叉个体的选择并不合理,实数编码中个体的基因表现并不突出,因此适应度较好的个体并不能代表其某个染色体片段具有良好的基因。
技术实现思路
本专利技术的目的是克服现有技术中的不足,提出一种基于改进的多目标遗传算法,并将其应用在共享单车停放点分配系统上,通过使用Hypervolume评价指标对改进算法与原算法进行评估。这种基于多目标遗传算法的共享单车停放点分配方法,具体包括如下步骤:S1、服务器收集在某时间点内的若干当前用户请求数据;将请求数据中的坐标信息经过Geohash编码成为字符串;将时间分段为T={1,2,3,…,t},请求停车的车辆集合为I={1,2,3,…,i},停放点集合为J={1,2,3,…,j},目的地区域集合为P={1,2,3,…,p};将每个用户的请求数据存放至用户请求信息表中;所述请求数据包括坐标信息、车辆编号、用户编号和目的地区域p;S2、服务器收集用户的请求数据后,对用户的坐标信息、目的地信息和附近可用停放点位置信息进行统计分析;某时间点内的若干当前用户的请求数据组成请求队列,按照时间节点划分请求队列并进行标记,根据目的地信息对其周围停放区域进行搜索并计算距离,生成用户标号距离矩阵;S2.1、种群初始化:生成若干条基因组成相同但排列组合不同的染色体;将请求队列作为遗传算法中的染色体,染色体的基因排序由请求队列的处理顺序组成;在之后的种群迭代过程中保持种群的染色体数不变;S2.2、选择实数编码的NSGA-II作为遗传算法的基因编码方式;用适应度函数区分种群内的染色体差异,并作为筛选染色体的标准:让种群随着迭代朝着更符合优化目标的方向进化,最终得到最适合环境的染色体;适应度函数由优化目标函数和约束条件组成;所述优化目标函数为距离函数f(x)和密度函数g(x);f(x)为待停的单车到停放点的距离代价总和,g(x)为所有停放点之间的停车密度代价总和;优化目标函数的数学模型为:上式中,pj为各停放点的理想停放数;I为待停的车辆集合,I={1,2,3,…,i};J为停放点集合,J={1,2,3,…,j};xij为分配标志位取值为xij∈{0,1},xij取值为1时表示i车辆分配给j停放点,xij取值为0时表示i车辆未分配给j停放点;目标区域p与停放点j之间的距离用dij表示;其中:首先计算距离函数f(x)的矩阵,接着根据距离函数f(x)的矩阵和约束条件按照染色体的基因组成计算密度函数g(x)的矩阵;所述约束条件为:xij∈{0,1}(7)上式(5)至式(7)中,I为待停的车辆集合,I={1,2,3,…,i};J为停放点集合,J={1,2,3,…,j};xij为分配标志位取值为xij∈{0,1},xij取值为1时表示i车辆分配给j停放点,xij取值为0时表示i车辆未分配给j停放点;Bj为每个停放点的车辆容纳上限;S3、选择锦标赛算法作为选择算子,选择自交作为交叉算子,选择双参赛模式;S3.1、锦标赛算法的计算过程如下:S3.1.1、规定筛选后的种群大小为数值Sp,随机选择种群中两个个体p1和p2进行适应度比较;S3.1.2、若p1和p2之间存在支配关系,则淘汰被支配的个体;若两个个体处在同一层非支配解,则跳过淘汰阶段,比赛的轮数由种群中剩下的个体数决定;S3.1.3、继续进行适应度比较,直到种群大小降低至数值Sp;S3.2、自交的计算过程如下:S3.2.1、对种群中的每个个体设定一个基因可交叉长度Lp,该长度不得超过染色体中基因个数的一半;S3.2.2、在本文档来自技高网
...

【技术保护点】
1.一种基于多目标遗传算法的共享单车停放点分配方法,其特征在于,具体包括如下步骤:/nS1、服务器收集在某时间点内的若干当前用户请求数据;将请求数据中的坐标信息经过Geohash编码成为字符串;将时间分段为T={1,2,3,…,t},请求停车的车辆集合为I={1,2,3,…,i},停放点集合为J={1,2,3,…,j},目的地区域集合为P={1,2,3,…,p};将每个用户的请求数据存放至用户请求信息表中;所述请求数据包括坐标信息、车辆编号、用户编号和目的地区域p;/nS2、服务器收集用户的请求数据后,对用户的坐标信息、目的地信息和附近可用停放点位置信息进行统计分析;某时间点内的若干当前用户的请求数据组成请求队列,按照时间节点划分请求队列并进行标记,根据目的地信息对其周围停放区域进行搜索并计算距离,生成用户标号距离矩阵;/nS2.1、种群初始化:生成若干条基因组成相同但排列组合不同的染色体;将请求队列作为遗传算法中的染色体,染色体的基因排序由请求队列的处理顺序组成;在之后的种群迭代过程中保持种群的染色体数不变;/nS2.2、选择实数编码的NSGA-II作为遗传算法的基因编码方式;用适应度函数区分种群内的染色体差异,并作为筛选染色体的标准:让种群随着迭代朝着更符合优化目标的方向进化,最终得到最适合环境的染色体;/n适应度函数由优化目标函数和约束条件组成;所述优化目标函数为距离函数f(x)和密度函数g(x);f(x)为待停的单车到停放点的距离代价总和,g(x)为所有停放点之间的停车密度代价总和;/n优化目标函数的数学模型为:/n...

【技术特征摘要】
1.一种基于多目标遗传算法的共享单车停放点分配方法,其特征在于,具体包括如下步骤:
S1、服务器收集在某时间点内的若干当前用户请求数据;将请求数据中的坐标信息经过Geohash编码成为字符串;将时间分段为T={1,2,3,…,t},请求停车的车辆集合为I={1,2,3,…,i},停放点集合为J={1,2,3,…,j},目的地区域集合为P={1,2,3,…,p};将每个用户的请求数据存放至用户请求信息表中;所述请求数据包括坐标信息、车辆编号、用户编号和目的地区域p;
S2、服务器收集用户的请求数据后,对用户的坐标信息、目的地信息和附近可用停放点位置信息进行统计分析;某时间点内的若干当前用户的请求数据组成请求队列,按照时间节点划分请求队列并进行标记,根据目的地信息对其周围停放区域进行搜索并计算距离,生成用户标号距离矩阵;
S2.1、种群初始化:生成若干条基因组成相同但排列组合不同的染色体;将请求队列作为遗传算法中的染色体,染色体的基因排序由请求队列的处理顺序组成;在之后的种群迭代过程中保持种群的染色体数不变;
S2.2、选择实数编码的NSGA-II作为遗传算法的基因编码方式;用适应度函数区分种群内的染色体差异,并作为筛选染色体的标准:让种群随着迭代朝着更符合优化目标的方向进化,最终得到最适合环境的染色体;
适应度函数由优化目标函数和约束条件组成;所述优化目标函数为距离函数f(x)和密度函数g(x);f(x)为待停的单车到停放点的距离代价总和,g(x)为所有停放点之间的停车密度代价总和;
优化目标函数的数学模型为:






上式中,pj为各停放点的理想停放数;I为待停的车辆集合,I={1,2,3,…,i};J为停放点集合,J={1,2,3,…,j};xij为分配标志位取值为xij∈{0,1},xij取值为1时表示i车辆分配给j停放点,xij取值为0时表示i车辆未分配给j停放点;目标区域p与停放点j之间的距离用dij表示;其中:






首先计算距离函数f(x)的矩阵,接着根据距离函数f(x)的矩阵和约束条件按照染色体的基因组成计算密度函数g(x)的矩阵;
所述约束条件为:






xij∈{0,1}(7)
上式(5)至式(7)中,I为待停的车辆集合,I={1,2,3,…,i};J为停放点集合,J={1,2,3,…,j};xij为分配标志位取值为xij∈{0,1},xij取值为1时表示i车辆分配给j停放点,xij取值为0时表示i车辆未分配给j停放点;Bj为每个停放点的车辆容纳上限;
S3、选择锦标赛算法作为选择算子,选择自交作为交叉算子,选择双参赛模式;
S3.1、锦标赛算法的计算过程如下:
S3.1.1、规定筛选后的种群大小为数值Sp,随机选择种群中两个个体p1和p2进行适应度比较;
S3.1.2、若p1和p2之间存在支配关系,则淘汰被支配的个体;若两个个体处在同一层非支配解,则跳过淘汰阶段,比赛的轮数由种群中剩下的个体数决定;
S3.1.3、继续进行适应度比较,直到种群大小降低至数值Sp;
S3.2、自交的计算过程如下:
S3.2.1、对种群中的每个个体设定一个基因可交叉长度Lp,该长度不得超过染色体中基因个数的一半;
S3.2.2、在染色体中随机设置两个点M1和M2,满足M1和M2之间的距离大于基因可交叉长度Lp,且M1和M2中后置位点的距离染色体末端距离大于基因可交叉长度Lp;
S3.2.3、以M1和M2为锚点,向后端展开两个长度为Lp的基因片段,进行交叉操作;
S4、利用快速非支配排序将种群分为若干个等级,并计算种群拥挤度;
S4.1、利用快速非支配排序将种群分为若干个等级的过程为:
S4.1.1、设种群中个体数为P,其中每个个体有被支配个数np和支配的解Mp这两个参数,其中Mp为数组;
S4.1.2、将该个体被支配个数np取值为0的个体放入数组S1中,作为该种群中的非支配解;
S4.1.3、取消非支配解对支配个体的支配,将S1数组中的个体从种群中排除:对每个在数组S1中的个体,遍历支配的解Mp中的个体,将该个体的被支配个数np参数减1,当前数组S1中的个体被支配个数np取值为-1;
S4.1.4、将剩余个体中被支配个数np取值为0的个体加入数组S2,对数组S2重复执行步骤S4.1.3,直至种群等级划分完毕;
S4.2...

【专利技术属性】
技术研发人员:陈观林施嘉伟翁文勇杨武剑李甜
申请(专利权)人:浙江大学城市学院
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1