共享单车调度方法、装置、电子设备及存储介质与流程

文档序号:32657666发布日期:2022-12-23 22:18阅读:41来源:国知局
共享单车调度方法、装置、电子设备及存储介质与流程

1.本技术涉及共享单车技术领域,尤其涉及一种共享单车调度方法、装置、电子设备及存储介质。


背景技术:

2.随着共享单车迅速普及,在方便市民出行的同时,缓解了城市交通污染,但是,共享单车在运维过程中需要调度人员采用调度载具对共享单车进行批量调度,以平衡站点间单车数量,该过程产生的碳排放不容忽视。
3.现有技术中,提出了一种萤火虫优化的共享单车调度方法来对车辆进行管理,使得可以根据环境合理的调度车辆,具体的,通过获取调度区域内的原始单车数据信息,并对原始单车数据信息进行预处理,得到目标单车数据信息,进一步的,根据目标单车数据信息得到调度区域内的多个目标调度单车的位置,进而确定目标调度路径函数,并采用多目标萤火虫优化方法对目标调度路径函数进行优化,得到最优调度路径进行车辆的调度。
4.但是,上述基于萤火虫优化的共享单车调度方法中确定的目标调度路径,仅是利用不同量纲的目标(即距离、时间和费用)赋予主观权重进行求和,并未结合实际应用场景,不具有现实意义,且对环境效益评估不够全面,应用性较差。另外,与大部分共享单车调度方法相同,面对大规模调度问题时,求解难度极大。


技术实现要素:

5.本技术提供一种共享单车调度方法、装置、电子设备及存储介质,可以对环境效益以及经济进行评估,确定共享单车的最优调度路径进行输出,具有较广的应用性,符合实际应用场景。
6.第一方面,本技术提供一种共享单车调度方法,所述方法包括:
7.获取调度区域内的共享单车数据信息,并基于所述共享单车数据信息将所述调度区域划分为多个目标站点;所述目标站点包括需求站点和供给站点;
8.基于贪婪算法分别将所述需求站点连接成对应的目标需求链、所述供给站点连接成对应的目标供给链;
9.利用分块算法分别对所述目标需求链和所述目标供给链进行划分,得到分块区域;每一分块区域内包括对应数量的需求站点和供给站点;
10.针对每一分块区域,利用多目标调度模型计算出调度货车路径,并基于所述贪婪算法将每一分块区域对应的调度货车路径连接起来,生成最优调度路径进行输出;其中,所述调度货车用于装载或卸载共享单车;所述多目标调度模型用于约束所述调度货车的碳排放量以及调度后各目标站点的共享单车数量和预定义目标数量的偏差。
11.可选的,获取调度区域内的共享单车数据信息,并基于所述共享单车数据信息将所述调度区域划分为多个目标站点,包括:
12.获取调度区域内每一站点的共享单车数据信息以及调度货车的容量;
13.针对每一站点,基于预定义目标数量和所述共享单车数据信息确定所述站点的类型;
14.基于所述调度货车的容量和调度区域内所有站点对应的类型将所述调度区域划分为多个目标站点。
15.可选的,基于贪婪算法分别将所述需求站点连接成对应的目标需求链、所述供给站点连接成对应的目标供给链,包括:
16.分别依次选取调度区域内的需求站点作为第一起始位置以及供给站点作为第二起始位置;
17.基于所述第一起始位置连接调度区域内所有的需求站点,得到初始需求链,并基于所述第二起始位置连接调度区域内所有的供给站点,得到初始供给链;
18.分别计算每一初始需求链对应的第一路径距离以及每一初始供给链对应的第二路径距离,并基于贪婪算法分别确定所述第一路径距离中最小值对应的初始需求链和所述第二路径距离中最小值对应的初始供给链,得到对应的目标需求链和对应的目标供给链。
19.可选的,利用分块算法分别对所述目标需求链和所述目标供给链进行划分,得到分块区域,包括:
20.利用分块算法分别对所述目标需求链和所述目标供给链进行划分,得到多个目标需求子链和目标供给子链,使得每一目标需求子链和每一目标供给子链中共享单车数据信息满足预设要求;
21.判断所述目标需求子链对应的第一数量是否等于所述目标供给子链对应的第二数量;
22.若是,则基于所述目标需求子链对应的需求站点和所述目标供给子链对应的供给站点的位置坐标分别计算所述目标需求子链和所述目标供给子链的中心坐标,并基于所述中心坐标确定分块区域;
23.若否,则获取所述多个目标需求子链和目标供给子链对应的共享单车数据信息中最大值,并基于所述最大值再次进行划分,直到所述第一数量等于所述第二数量。
24.可选的,所述多目标调度模型包括目标调度路径函数;所述目标调度路径函数表示为:
[0025][0026]
其中,p表示目标调度路径函数,pc表示碳价格,f表示调度货车空载时碳排放因子,f
*
表示调度货车满载时碳排放因子,y
ij
表示调度货车从站点i到站点j的过程中对应的共享单车数据信息,q表示调度货车的容量,d
ij
表示站点i和站点j之间的距离,x
ij
取值为0或1,x
ij
=1表示站点i直接到站点j,x
ij
=0表示站点i与站点j之间有其它间隔站点,po表示共享单车的骑行费用,t表示共享单车的日周转率,si表示经过调度之后站点i对应的共享单车数据信息,qi表示站点i的预定义目标数量。
[0027]
可选的,利用多目标调度模型计算出调度货车路径,并基于所述贪婪算法将每一分块区域对应的调度货车路径连接起来,生成最优调度路径进行输出,包括:
[0028]
根据所述目标调度路径函数建立多目标调度模型,并采用禁忌搜索算法对所述多
目标调度模型进行搜索,将所述多目标调度模型中的所述目标调度路径函数的最小值对应的调度路径确定为所述分块区域的调度货车路径;
[0029]
获取每一分块区域对应的调度货车路径的结束站点与开始站点,并针对任意两个分块区域,基于所述贪婪算法将一个分块区域对应的结束站点与另一个分块区域对应的开始站点进行连接,生成最优调度路径进行输出;其中,所述最优调度路径为单链开环路径。
[0030]
第二方面,本技术提供一种共享单车调度装置,所述装置包括:
[0031]
获取模块,用于获取调度区域内的共享单车数据信息,并基于所述共享单车数据信息将所述调度区域划分为多个目标站点;所述目标站点包括需求站点和供给站点;
[0032]
连接模块,用于基于贪婪算法分别将所述需求站点连接成对应的目标需求链、所述供给站点连接成对应的目标供给链;
[0033]
划分模块,用于利用分块算法分别对所述目标需求链和所述目标供给链进行划分,得到分块区域;每一分块区域内包括对应数量的需求站点和供给站点;
[0034]
计算模块,用于针对每一分块区域,利用多目标调度模型计算出调度货车路径,并基于所述贪婪算法将每一分块区域对应的调度货车路径连接起来,生成最优调度路径进行输出;其中,所述调度货车用于装载或卸载共享单车;所述多目标调度模型用于约束所述调度货车的碳排放量以及调度后各目标站点的共享单车数量和预定义目标数量的偏差。
[0035]
第三方面,本技术提供一种电子设备,包括:处理器,以及与所述处理器通信连接的存储器;
[0036]
所述存储器存储计算机执行指令;
[0037]
所述处理器执行所述存储器存储的计算机执行指令,以实现如第一方面中任一项所述的方法。
[0038]
第四方面,本技术提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如第一方面中任一项所述的方法。
[0039]
第五方面,本技术提供一种计算机程序产品,包括程序代码,当计算机运行所述计算机程序时,所述程序代码执行如第一方面中任一项所述的方法。
[0040]
综上所述,本技术提供一种共享单车调度方法、装置、电子设备及存储介质,可以通过获取调度区域内的共享单车数据信息,并基于共享单车数据信息将调度区域划分为多个目标站点;目标站点包括需求站点和供给站点;进一步的,基于贪婪算法分别将需求站点连接成对应的目标需求链、供给站点连接成对应的目标供给链,进而利用分块算法分别对目标需求链和目标供给链进行划分,得到分块区域;进一步的,针对每一分块区域,利用多目标调度模型计算出调度货车路径,并基于贪婪算法将每一分块区域对应的调度货车路径连接起来,生成最优调度路径进行输出;其中,每一分块区域内包括对应数量的需求站点和供给站点;调度货车用于装载或卸载共享单车;多目标调度模型用于约束调度货车的碳排放量以及调度后各目标站点的共享单车数量和预定义目标数量的偏差,这样,通过基于供需关系的分块算法,将调度区域进行需求站点和供给站点的划分,使得分块后每一区域内需要被装载或者卸载的共享单车数量均不超过调度货车的容量,减小调度问题的规模,提高了算法求解时间,且设计了多目标调度模型,用于权衡调度过程中调度货车造成的环境影响和调度结束后各站点的单车需求满足程度,具有较广的应用性,符合实际需求。
附图说明
[0041]
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理。
[0042]
图1为本技术实施例提供的一种应用场景示意图;
[0043]
图2为本技术实施例提供的一种共享单车调度方法的流程示意图;
[0044]
图3为本技术实施例提供的一种划分多个目标站点的场景示意图;
[0045]
图4为本技术实施例提供的一种生成目标需求链和目标供给链的场景示意图;
[0046]
图5为本技术实施例提供的一种生成分块区域的场景示意图;
[0047]
图6为本技术实施例提供的一种生成最优调度路径的场景示意图;
[0048]
图7为本技术实施例提供的一种共享单车调度装置的结构示意图;
[0049]
图8为本技术实施例提供的一种电子设备的结构示意图。
[0050]
通过上述附图,已示出本技术明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本技术构思的范围,而是通过参考特定实施例为本领域技术人员说明本技术的概念。
具体实施方式
[0051]
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。
[0052]
为了便于清楚描述本技术实施例的技术方案,在本技术的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。例如,第一设备和第二设备仅仅是为了区分不同的设备,并不对其先后顺序进行限定。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。
[0053]
需要说明的是,本技术中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本技术中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
[0054]
本技术中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b的情况,其中a,b可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。
[0055]
下面首先对申请涉及到的专业术语进行解释:
[0056]
旅行商问题:即tsp问题(traveling salesman problem),还可以译为旅行推销员问题、货郎担问题,可以指的是假设有一个旅行商人要拜访n个城市,则他必须选择所要走的路径,路径的限制是每个城市只能拜访一次,而且最后要回到原来出发的城市对应的问
题,其中,路径的选择目标是要求得的路径路程为所有路径之中的最小值。
[0057]
车辆调度问题:可以指的是通过制定怎样的行车路线,使车辆在满足一定的约束条件下,有序地通过一系列装货点和卸货点,达到诸如路程最短、费用最小、耗时最少等目标对应的问题。
[0058]
共享单车调度问题:可以指的是在实践中,用调度货车将单车过剩站点的单车运输到需要单车的站点,使各站点达到供需平衡的问题,该共享单车调度问题是由于共享单车出行分布的不对称,导致一天结束后一些站点单车数量不足,而另一些站点存在过多的单车,使得共享单车系统无法正常的运行引起的。
[0059]
调度模型:可以指的是针对车辆调度问题和共享单车调度问题建立的模型。
[0060]
np难问题:可以指的是需要超多项式时间才能求解的问题。
[0061]
供需关系:可以指的是调度开始时,站点单车存量与目标数量之间的关系,若站点单车存量大于目标数量,则该站点需要向其他站点供给单车,若站点单车存量小于目标数量,则该站点需要共享单车,可以理解的是,该供需关系来源于供求关系,所述供求关系是指在商品经济条件下,商品供给和需求之间的相互联系、相互制约的关系,用于反映生产和消费之间在市场上的关系。
[0062]
启发式算法:是相对于最优化算法提出的,所述最优化算法指的是求得一个问题的最优解,启发式算法可以指的是一个基于直观或经验构造的算法,在可接受的花费如计算时间和空间下给出待解决组合优化问题对应的每一个实例的一个可行解,该可行解与最优解的偏离程度一般不能被预计。
[0063]
禁忌搜索算法:可以指的是一种元启发式随机搜索算法(启发式算法的改进,是随机算法与局部搜索算法相结合的产物),该禁忌搜索算法从一个初始可行解出发,选择一系列的特定搜索方向(移动)作为试探,选择实现让特定的目标函数值变化最多的移动,并对已经进行的优化过程进行记录和选择,指导下一步的搜索方向,以此建立tabu表。
[0064]
贪婪算法(greedy algorithm):也可以称贪心算法,可以指的是在对问题求解时,总是做出在当前看来是最好的选择的算法。如果不从整体最优上加以考虑,贪婪算法得到的值是在某种意义上的局部最优解。
[0065]
下面结合附图对本技术进行介绍,图1为本技术实施例提供的一种应用场景示意图,本技术提供的一种共享单车调度方法可以应用于如图1所示的应用场景中。该应用场景包括:共享单车数据收集装置101、调度平台102、终端设备103和调度货车104;其中,共享单车数据收集装置101用于收集调度区域内的共享单车数据信息如不同站点内共享单车的数量。
[0066]
具体的,共享单车数据收集装置101可以将收集的调度区域内的共享单车数据信息发送给调度平台102进行处理,得到处理结果,即调度平台102可以基于共享单车数据信息确定共享单车的调度路线,并决策在调度区域内每个站点需要装载或卸载的共享单车数量,进一步的,将处理结果发送给用户的终端设备103进行显示,以使用户基于处理结果驾驶调度货车104进行每个站点的调度操作,实现共享单车的合理部署。
[0067]
上述终端设备可以是无线终端也可以是有线终端。无线终端可以是指向用户提供语音和/或其他业务数据连通性的设备,具有无线连接功能的手持式设备、或连接到无线调制解调器的其他处理设备。无线终端可以经无线接入网(radio access network,简称ran)
与一个或多个核心网设备进行通信,无线终端可以是移动终端,如移动电话(或称为“蜂窝”电话)和具有移动终端的计算机,例如,可以是便携式、袖珍式、手持式、计算机内置的或者车载的移动装置,它们与无线接入网交换语言和/或数据。再例如,无线终端还可以是个人通信业务(personal communication service,简称pcs)电话、无绳电话、会话发起协议(session initiation protocol,简称sip)话机、无线本地环路(wireless local loop,简称wll)站、个人数字助理(personal digital assistant,简称pda)等设备。无线终端也可以称为系统、订户单元(subscriber unit)、订户站(subscriber station),移动站(mobile station)、移动台(mobile)、远程站(remote station)、远程终端(remote terminal)、接入终端(access terminal)、用户终端(user terminal)、用户代理(user agent)、用户设备(user device or user equipment),在此不作限定。可选的,上述终端设备还可以是智能手环、平板电脑等设备。
[0068]
一种可能的实现方式中,车辆调度问题作为np难问题,一直是学术界和工业界研究的难点和热点,尤其以共享单车调度问题为代表,相较于传统的tsp问题,共享单车调度问题的难点在于需要决策每个站点装载或卸载的单车数量,其次,由于调度模型的求解时间随站点规模呈指数增长,因此对大规模的共享单车调度模型的求解的算法计算速率较慢,需要花费大量时间,且对于共享单车调度问题的目标也不再是求解最短路径单目标函数,而是需要考虑多个目标,甚至是量纲不同的多个目标。现有的调度模型中,利用的优化目标是求解最小化停放点未得到满足的单车需求总和,即调度后站点单车数量和目标单车数量的偏差,但是,该调度模型未结合当前环境和共享单车绿色减排,其调度过程中对环境产生影响,且由于量纲问题,环境影响没有与共享单车数量的偏差值进行统一。
[0069]
在此情况下,需要一种可以简化共享单车调度问题的方法,提高求解速度,以及构建一个多目标调度模型,统一多个量纲不同的目标函数。
[0070]
另一种可能的实现方式中,基于上述考虑,提出了一种萤火虫优化的共享单车调度方法来对车辆进行管理,使得可以根据环境合理的调度车辆,具体的,通过获取调度区域内的原始单车数据信息,并对原始单车数据信息进行预处理,得到目标单车数据信息,进一步的,根据目标单车数据信息得到调度区域内的多个目标调度单车的位置,进而确定目标调度路径函数,并采用多目标萤火虫优化方法对目标调度路径函数进行优化,得到最优调度路径进行车辆的调度。
[0071]
其中,上述实现方式的目标调度路径函数具体为:
[0072]
f(x)=αf1(x)+βf2(x)+γf3(x)
[0073][0074]
f3(x)=pf1(x)
[0075]
其中,x为调度路径,f(x)为目标调度路径函数,f1(x)为调度路径对应的距离函数,f2(x)为调度路径对应的时间函数,f3(x)为调度路径对应的费用函数,α、β和γ分别为距离权重、时间权重和费用权重,且α+β+γ=1,ν为目标调度车辆的速度,p为单价。
[0076]
但是,上述基于萤火虫优化的共享单车调度方法中确定的目标调度路径,仅是利用不同量纲的目标(即距离、时间和费用)赋予简单权重进行求和,并未结合实际应用场景,不具有现实意义,且对环境效益评估不够全面,应用性较差。另外,与大部分共享单车调度
方法相同,面对大规模调度问题时,求解难度极大。
[0077]
针对上述问题,本技术提供一种共享单车调度方法,可以通过设计一种基于站点调度供需关系的分块策略,达到了减小共享单车调度问题的规模和减少在每个站点决策装载或卸载单车数量的目的,具体的,基于供需关系的分块算法,将调度区域内共享单车数量进行分块区域的划分,每一分块区域内包括对应数量的需求站点和供给站点,进而使得分块后每一分块区域内需要被装载或者卸载共享单车数量均不超过调度货车的容量,这样,可以减少决策在每个站点需要装载或卸载的共享单车数量,且通过设计多目标调度模型,得到调度货车的最优调度路径,用于权衡调度过程中调度货车造成的环境影响和调度结束后各站点对共享单车需求满足程度,可以解决调度问题中存在的多个量纲(如单车数量的偏差、环境碳排放)不同的优化目标,具有较广的应用性,符合实际应用需求。
[0078]
下面以具体地实施例对本技术的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本技术的实施例进行描述。
[0079]
图2为本技术实施例提供的一种共享单车调度方法的流程示意图,如图2所示,所述共享单车调度方法包括如下步骤:
[0080]
s201、获取调度区域内的共享单车数据信息,并基于所述共享单车数据信息将所述调度区域划分为多个目标站点;所述目标站点包括需求站点和供给站点。
[0081]
本技术实施例中,需求站点可以指的是对应的共享单车的数量少于预定义目标数量,需要调度货车卸载一定数量的共享单车的站点,供给站点可以指的是对应的共享单车的数量多于预定义目标数量,需要调度货车装载一定数量的共享单车的站点,本技术实施例对预定义目标数量对应的具体数值不做限定,其可以为一天开始时该站点的单车数量。
[0082]
在本步骤中,调度平台可以基于获取的调度区域内的共享单车数据信息将调度区域划分为多个目标站点,即可以基于调度区域内的共享单车在不同站点对应的数据信息是否满足预设条件,将调度区域划分为多个需求站点和供给站点;所述预设条件可以为共享单车的数量大于预设阈值,所述调度区域可以指的是调度平台可以管辖的预定范围区域,所述共享单车数据信息可以包括共享单车的数量、共享单车位置信息、共享单车的骑行收费信息等,所述共享单车的数量对应的类型可以调度货车到达之前某站点对应的单车数量、调度货车离开之后某站点对应的单车数量等,本技术实施例对此不做具体限定。
[0083]
需要说明的是,本技术实施例对预设阈值以及预定范围对应的具体数值不做限定,其可以根据不同应用场景设定。
[0084]
s202、基于贪婪算法分别将所述需求站点连接成对应的目标需求链、所述供给站点连接成对应的目标供给链。
[0085]
由于本技术针对的是不设仓库的调度问题,调度货车可从任一站点开始进行调度操作,因此,在本步骤中,可以使用贪婪算法确定需求站点对应的起始点以及供给站点对应的起始点,进而生成两条链,即目标需求链和目标供给链。
[0086]
s203、利用分块算法分别对所述目标需求链和所述目标供给链进行划分,得到分块区域;每一分块区域内包括对应数量的需求站点和供给站点。
[0087]
本技术实施例中,分块算法可以指的是基于站点调度的供需关系将目标站点进行划分的分块策略,以使划分后的每一区域内需要被装载或者卸载共享单车数量均不超过调
度货车的容量或一定阈值。
[0088]
在本步骤中,为了确保每一分块区域中,需要装载的共享单车数量(或需要卸载的共享单车数量)均不超过调度货车的容量q,因此,需要利用分块算法分别对目标需求链和目标供给链进行切分,以使每一分块区域内对应合理数量的需求站点和供给站点。
[0089]
需要说明的是,经过分块算法处理后得到的分块区域,分块内需求站点和供给站点对单车的总需求和总供给均不超过调度货车的容量,因此,每个分块区域的站点的调度操作只需要由一辆调度货车完成,且不需要去决策装载和卸载的单车数量,极大地减少了算法的求解时间。
[0090]
s204、针对每一分块区域,利用多目标调度模型计算出调度货车路径,并基于所述贪婪算法将每一分块区域对应的调度货车路径连接起来,生成最优调度路径进行输出;其中,所述调度货车用于装载或卸载共享单车;所述多目标调度模型用于约束所述调度货车的碳排放量以及调度后各目标站点的共享单车数量和预定义目标数量的偏差。
[0091]
其中,所述多目标调度模型可以通过碳排放带来的经济成本和各目标站点的共享单车对应的偏差造成的订单减少造成经济损失来统一两个量纲不同的目标,所述预定义目标数量可以理解为目标单车数量,即等于一天开始时该站点的单车数量。
[0092]
在本步骤中,针对每一分块区域,均可使用同一个调度模型来解决,如多目标调度模型,进一步的,对每个分块区域应用多目标调度模型,求解出调度货车路径,进而使用贪婪算法对所有分块区域对应的调度货车路径进行最短路的连接,生成最优调度路径进行输出。
[0093]
需要说明的是,本技术提供的共享单车调度方法设定的应用条件为,调度货车在某一分块区域进行调度操作前不携带任何共享单车,在该分块区域完成调度操作后调度货车上也没有剩余的共享单车,所以调度货车上若有多余的共享单车将在每一分块区域的最后一个站点全部卸载。
[0094]
因此,本技术提供一种共享单车调度方法,可以通过获取调度区域内的共享单车数据信息,并基于共享单车数据信息将调度区域划分为多个需求站点和供给站点;进一步的,基于贪婪算法分别将需求站点连接成对应的目标需求链、供给站点连接成对应的目标供给链,进而利用分块算法分别对目标需求链和目标供给链进行划分,得到分块区域;进一步的,针对每一分块区域,利用多目标调度模型计算出调度货车路径,并基于贪婪算法将每一分块区域对应的调度货车路径连接起来,生成最优调度路径进行输出;其中,多目标调度模型用于约束调度货车的碳排放量以及调度后各目标站点的共享单车数量和预定义目标数量的偏差。这样,通过基于供需关系的分块算法,将调度区域进行需求站点和供给站点的划分,使得分块后每一区域内需要被装载或者卸载的共享单车数量均不超过调度货车的容量,减小调度问题的规模,提高了算法求解时间,且设计了多目标调度模型,用于权衡调度过程中调度货车造成的环境影响和调度结束后各站点的单车需求满足程度,具有较广的应用性,符合实际需求。
[0095]
可选的,获取调度区域内的共享单车数据信息,并基于所述共享单车数据信息将所述调度区域划分为多个目标站点,包括:
[0096]
获取调度区域内每一站点的共享单车数据信息以及调度货车的容量;
[0097]
针对每一站点,基于预定义目标数量和所述共享单车数据信息确定所述站点的类
型;
[0098]
基于所述调度货车的容量和调度区域内所有站点对应的类型将所述调度区域划分为多个目标站点。
[0099]
在本步骤中,共享单车在被调度之前,可以根据站点的共享单车的存量(pi)与目标数量(qi)的关系,将站点分为三种类型:需求站点、供给站点和平衡站点;其中,所述需求站点对应为pi《qi,即站点缺少(需要卸载)共享单车,用sd表示;所述供给站点对应为pi》qi,即站点过剩(需要装载)共享单车,用s
p
表示;所述平衡站点对应为pi=qi,即站点已经供需平衡,不需要调度货车进行访问,用sb表示。
[0100]
需要说明的是,在划分目标站点时,需要根据需求调整站点,即对于剩余单车数量(或需要单车数量)大于调度货车容量的站点,将其划分为2个或多个坐标相同但标号不同的站点,用于解决在某个站点内单车数量过多,调度货车不能将其全部装载的问题。
[0101]
示例性的,图3为本技术实施例提供的一种划分多个目标站点的场景示意图,如图3所示,将调度区域内的站点划分为多个目标站点,其中,圆形代表需求站点(sd),三角形代表供给站点(s
p
),星形代表平衡站点(sb)。
[0102]
因此,本技术实施例通过划分目标站点,使得每一站点对应的可调度共享单车数量都是合理的,符合实际应用,提高应用的广泛性。
[0103]
可选的,基于贪婪算法分别将所述需求站点连接成对应的目标需求链、所述供给站点连接成对应的目标供给链,包括:
[0104]
分别依次选取调度区域内的需求站点作为第一起始位置以及供给站点作为第二起始位置;
[0105]
基于所述第一起始位置连接调度区域内所有的需求站点,得到初始需求链,并基于所述第二起始位置连接调度区域内所有的供给站点,得到初始供给链;
[0106]
分别计算每一初始需求链对应的第一路径距离以及每一初始供给链对应的第二路径距离,并基于贪婪算法分别确定所述第一路径距离中最小值对应的初始需求链和所述第二路径距离中最小值对应的初始供给链,得到对应的目标需求链和对应的目标供给链。
[0107]
示例性的,图4为本技术实施例提供的一种生成目标需求链和目标供给链的场景示意图,如图4所示,对于调度区域内所有的需求站点构成的集合,记为sd集合,所有的供给站点构成的集合,记为s
p
集合,则分别对于sd集合和s
p
集合,依次选择集合中的所有站点作为起始位置,进而采用基于距离的贪婪算法求解tsp问题,即选取总距离最小的路径作为初始解,进而生成目标需求链和对应的目标供给链,记为xd和x
p

[0108]
因此,本技术实施例可以选取总距离最小的目标需求链和目标供给链,从而使得确定的调度货车路径的距离最短,减少调度货车的行驶距离,并减少碳排放。
[0109]
可选的,利用分块算法分别对所述目标需求链和所述目标供给链进行划分,得到分块区域,包括:
[0110]
利用分块算法分别对所述目标需求链和所述目标供给链进行划分,得到多个目标需求子链和目标供给子链,使得每一目标需求子链和每一目标供给子链中共享单车数据信息满足预设要求;
[0111]
判断所述目标需求子链对应的第一数量是否等于所述目标供给子链对应的第二数量;
[0112]
若是,则基于所述目标需求子链对应的需求站点和所述目标供给子链对应的供给站点的位置坐标分别计算所述目标需求子链和所述目标供给子链的中心坐标,并基于所述中心坐标确定分块区域;
[0113]
若否,则获取所述多个目标需求子链和目标供给子链对应的共享单车数据信息中最大值,并基于所述最大值再次进行划分,直到所述第一数量等于所述第二数量。
[0114]
本技术实施例中,预设要求可以指的是每一目标需求子链的需求量和每一目标供给子链的供给量接近q,但又不超过q,该q可以设定为调度货车的容量,也可以为设定的其他单车数量阈值,本技术实施例对此不做具体限定。
[0115]
示例性的,图5为本技术实施例提供的一种生成分块区域的场景示意图,如图5所示,在a图中,从每条链(目标需求链和目标供给链)的第一个站点开始,依次访问下一个站点,并计算需求量(或供应量)之和t,进一步的,当访问下一个站点,导致需要装载的单车数量或者卸载的单车数量超过调度货车能力如t》q,则切断xd或x
p
,以确保不超过调度货车的容量,在切断之后,t初始化为0,继续从下一站点开始循环上述操作,直至到达最后一个站点,使得xd和x
p
被拆分为几条子链x
di
(或x
pi
),如b图所示,xd被拆分为x
d1
、x
d2
和x
d3

[0116]
需要说明的是,在划分过程中,需要调整子链的数量,以使供需双方的子链数量相等,当供需双方的子链数量不平衡时,从子链较少的一方,选择共性单车的需求数量(或供给数量)最多的那条子链,将其划分成2条子链,重复上述操作,直至供需双方的子链的数量相同。
[0117]
进一步的,若供需双方的子链数量相等时,需要确定每一子链的位置,用中心坐标表示,如c图中,矩形代表中心坐标,所述中心坐标根据如下几何中心的公式计算:
[0118][0119][0120][0121]
lng=atan2(y,x)
[0122][0123]
lat=atan2(z,hyp)
[0124]
其中,c表示一条子链的中心坐标,lati代表站点i的纬度,lngi代表站点i的经度;经过上述公式计算得到,每一条子链x
di
(x
pi
)的几何中心坐标x
dic
(x
pic
),如x
d1c
(x
p1c
)、x
d2c
(x
p2c
)和x
d3c
(x
p3c
)。
[0125]
在得到每一条子链的中心坐标后,可以基于中心坐标确定分块区域,即将供需子链(目标需求子链和目标供给子链)配对,获得分块区域,并确定每一分块区域的位置,在d图中,将供给分块和需求分块一一匹配,每个x
dic
选择距离它最近的x
pic
进行匹配(i=1,2,3),则可以得到新分块x
dpi
,以及其几何坐标x
dic
+x
pic
=x
dpic

[0126]
因此,本技术实施例可以确保每一分块区域中,需要装载的单车数量(或需要卸载
的单车数量)均满足预设要求,且每一分块区域中包括的目标需求子链和目标供给子链都是距离最近的,通过基于站点单车供需的分块策略,将大规模的需要决策的每个站点装载或卸载单车数量的调度问题,转化成为若干个决策装载和卸载单车数量的问题,从而减少了调度问题的规模。
[0127]
可选的,所述多目标调度模型包括目标调度路径函数;所述目标调度路径函数表示为:
[0128][0129]
其中,p表示目标调度路径函数,pc表示碳价格,f表示调度货车空载时碳排放因子,f
*
表示调度货车满载时碳排放因子,y
ij
表示调度货车从站点i到站点j的过程中对应的共享单车数据信息,q表示调度货车的容量,d
ij
表示站点i和站点j之间的距离,x
ij
取值为0或1,x
ij
=1表示站点i直接到站点j,x
ij
=0表示站点i与站点j之间有其它间隔站点,po表示共享单车的骑行费用,t表示共享单车的日周转率,si表示经过调度之后站点i对应的共享单车数据信息,qi表示站点i的预定义目标数量。
[0130]
可选的,在考虑环境影响和调度后站点单车数量和预定义目标数量之间偏差的多目标调度模型还包括约束目标调度路径函数的约束条件,所述约束条件包括:用于约束调度操作结束之后,每个站点拥有的单车数量,其中,n表示站点的集合,yi表示调度货车在站点i装载或卸载的单车数量,如果yi》0表示装载,yi《0表示卸载,pi表示调度货车到达之前站点i拥有的单车数量;用于约束调度货车访问某一站点后必须离开;用于约束一个站点在调度操作中最多只能被调度货车访问一次;用于约束当p
i-qi>0时,一个站点的共享单车装载数量等于该站点多余的共享单车数量,当p
i-qi<0时,一个站点的单车卸载数量等于该站点需要的单车数量和调度货车上的单车数量之间的较小值,故站点的访问顺序可以决定满足多少需求;用于约束站点装载或卸载的单车数量,等于离开该站点和访问该站点之前调度货车上单车数量的差值;用于约束调度结束时所有装载的单车都应该被卸载;用于消除子环,即使得生成的最优调度路径为单链开环路径,ai表示站点i的辅助变量,ai≥0,m表示一个足够大的数,本技术实施例对此不做具体限定;用于约束装载和卸载的单车数量,调度货车上的单车数量和站点的最终单车数都必须为非负整数。
[0131]
因此,本技术设计了考虑环境影响和调度后站点单车数量和目标数量之间偏差的
多目标调度模型,并通过碳排放带来的经济成本和各目标站点的共享单车对应的偏差造成的订单减少造成经济损失来统一两个量纲不同的目标,可以权衡调度过程中调度货车造成的环境影响和调度结束后各站点的单车需求满足程度,提高应用性。
[0132]
可选的,利用多目标调度模型计算出调度货车路径,并基于所述贪婪算法将每一分块区域对应的调度货车路径连接起来,生成最优调度路径进行输出,包括:
[0133]
根据所述目标调度路径函数建立多目标调度模型,并采用禁忌搜索算法对所述多目标调度模型进行搜索,将所述多目标调度模型中的所述目标调度路径函数的最小值对应的调度路径确定为所述分块区域的调度货车路径;
[0134]
获取每一分块区域对应的调度货车路径的结束站点与开始站点,并针对任意两个分块区域,基于所述贪婪算法将一个分块区域对应的结束站点与另一个分块区域对应的开始站点进行连接,生成最优调度路径进行输出;其中,所述最优调度路径为单链开环路径。
[0135]
示例性的,图6为本技术实施例提供的一种生成最优调度路径的场景示意图,如图6所示,针对每一分块区域应用上述提出的多目标调度模型,并使用禁忌搜索算法来求解模型,以此获得调度货车路径(图6中a,b,c)。进一步的,如图6中d所示,使用贪婪算法对所有分块区域的起始站点s
si
和结束站点s
ei
进行最短路的连接,生成最优调度路径进行输出,所述最优调度路径为s
s1-s
e1-s
s3-s
e3-s
s2-s
e2

[0136]
因此,本技术实施例可以通过禁忌搜索算法对该目标调度路径函数进行优化,得到的最优解是对该分块区域内所有需要调度的单车的最合理的调度路径,进而将每一分块区域的调度路径进行连接,便可以形成最优路径,提高合理性。
[0137]
在前述实施例中,对本技术实施例提供的共享单车调度方法进行了介绍,而为了实现上述本技术实施例提供的方法中的各功能,作为执行主体的电子设备可以包括硬件结构和/或软件模块,以硬件结构、软件模块、或硬件结构加软件模块的形式来实现上述各功能。上述各功能中的某个功能以硬件结构、软件模块、还是硬件结构加软件模块的方式来执行,取决于技术方案的特定应用和设计约束条件。
[0138]
例如,图7为本技术实施例提供的一种共享单车调度装置的结构示意图,如图7所示,该装置包括:获取模块710、连接模块720、划分模块730和计算模块740;其中,所述获取模块710,用于获取调度区域内的共享单车数据信息,并基于所述共享单车数据信息将所述调度区域划分为多个目标站点;所述目标站点包括需求站点和供给站点;
[0139]
所述连接模块720,用于基于贪婪算法分别将所述需求站点连接成对应的目标需求链、所述供给站点连接成对应的目标供给链;
[0140]
所述划分模块730,用于利用分块算法分别对所述目标需求链和所述目标供给链进行划分,得到分块区域;每一分块区域内包括对应数量的需求站点和供给站点;
[0141]
所述计算模块740,用于针对每一分块区域,利用多目标调度模型计算出调度货车路径,并基于所述贪婪算法将每一分块区域对应的调度货车路径连接起来,生成最优调度路径进行输出;其中,所述调度货车用于装载或卸载共享单车;所述多目标调度模型用于约束所述调度货车的碳排放量以及调度后各目标站点的共享单车数量和预定义目标数量的偏差。
[0142]
可选的,所述获取模块710,具体用于:
[0143]
获取调度区域内每一站点的共享单车数据信息以及调度货车的容量;
[0144]
针对每一站点,基于预定义目标数量和所述共享单车数据信息确定所述站点的类型;
[0145]
基于所述调度货车的容量和调度区域内所有站点对应的类型将所述调度区域划分为多个目标站点。
[0146]
可选的,所述连接模块720,具体用于:
[0147]
分别依次选取调度区域内的需求站点作为第一起始位置以及供给站点作为第二起始位置;
[0148]
基于所述第一起始位置连接调度区域内所有的需求站点,得到初始需求链,并基于所述第二起始位置连接调度区域内所有的供给站点,得到初始供给链;
[0149]
分别计算每一初始需求链对应的第一路径距离以及每一初始供给链对应的第二路径距离,并基于贪婪算法分别确定所述第一路径距离中最小值对应的初始需求链和所述第二路径距离中最小值对应的初始供给链,得到对应的目标需求链和对应的目标供给链。
[0150]
可选的,所述划分模块730,具体用于:
[0151]
利用分块算法分别对所述目标需求链和所述目标供给链进行划分,得到多个目标需求子链和目标供给子链,使得每一目标需求子链和每一目标供给子链中共享单车数据信息满足预设要求;
[0152]
判断所述目标需求子链对应的第一数量是否等于所述目标供给子链对应的第二数量;
[0153]
若是,则基于所述目标需求子链对应的需求站点和所述目标供给子链对应的供给站点的位置坐标分别计算所述目标需求子链和所述目标供给子链的中心坐标,并基于所述中心坐标确定分块区域;
[0154]
若否,则获取所述多个目标需求子链和目标供给子链对应的共享单车数据信息中最大值,并基于所述最大值再次进行划分,直到所述第一数量等于所述第二数量。
[0155]
可选的,所述多目标调度模型包括目标调度路径函数;所述目标调度路径函数表示为:
[0156][0157]
其中,p表示目标调度路径函数,pc表示碳价格,f表示调度货车空载时碳排放因子,f
*
表示调度货车满载时碳排放因子,y
ij
表示调度货车从站点i到站点j的过程中对应的共享单车数据信息,q表示调度货车的容量,d
ij
表示站点i和站点j之间的距离,x
ij
取值为0或1,x
ij
=1表示站点i直接到站点j,x
ij
=0表示站点i与站点j之间有其它间隔站点,po表示共享单车的骑行费用,t表示共享单车的日周转率,si表示经过调度之后站点i对应的共享单车数据信息,qi表示站点i的预定义目标数量。
[0158]
可选的,所述计算模块740,具体用于:
[0159]
根据所述目标调度路径函数建立多目标调度模型,并采用禁忌搜索算法对所述多目标调度模型进行搜索,将所述多目标调度模型中的所述目标调度路径函数的最小值对应的调度路径确定为所述分块区域的调度货车路径;
[0160]
获取每一分块区域对应的调度货车路径的结束站点与开始站点,并针对任意两个
分块区域,基于所述贪婪算法将一个分块区域对应的结束站点与另一个分块区域对应的开始站点进行连接,生成最优调度路径进行输出;其中,所述最优调度路径为单链开环路径。
[0161]
本技术实施例提供的一种共享单车调度装置的具体实现原理和效果可以参见上述实施例对应的相关描述和效果,此处不做过多赘述。
[0162]
本技术实施例还提供了一种电子设备的结构示意图,图8为本技术实施例提供的一种电子设备的结构示意图,如图8所示,该电子设备可以包括:处理器801以及与所述处理器通信连接的存储器802;该存储器802存储计算机程序;该处理器801执行该存储器802存储的计算机程序,使得该处理器801执行上述任一实施例所述的方法。
[0163]
其中,存储器802和处理器801可以通过总线803连接。
[0164]
本技术实施例还提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序执行指令,计算机执行指令被处理器执行时用于实现如本技术前述任一实施例中的所述的方法。
[0165]
本技术实施例还提供了一种运行指令的芯片,该芯片用于执行如本技术前述任一实施例中由电子设备所执行的前述任一实施例中所述的方法。
[0166]
本技术实施例还提供了一种计算机程序产品,该程序产品包括程序代码,当计算机运行所述计算机程序时,所述程序代码执行如本技术前述任一实施例中由电子设备所执行的前述任一实施例中所述的方法。
[0167]
本技术的技术方案中,所涉及的金融数据或用户数据等信息的收集、存储、使用、加工、传输、提供和公开等处理,均符合相关法律法规的规定,且不违背公序良俗。
[0168]
在本技术所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0169]
作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案。
[0170]
另外,在本技术各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个单元中。上述模块成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
[0171]
上述以软件功能模块的形式实现的集成的模块,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器执行本技术各个实施例所述方法的部分步骤。
[0172]
应理解,上述处理器可以是中央处理单元(central processing unit,简称cpu),还可以是其它通用处理器、数字信号处理器(digital signal processor,简称dsp)、专用集成电路(application specific integrated circuit,简称asic)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合申请所公开的方法的步骤可以
直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
[0173]
存储器可能包含高速随机存取存储器(random access memory,简称ram),也可能还包括非不稳定的存储器(non-volatile memory,简称nvm),例如至少一个磁盘存储器,还可以为u盘、移动硬盘、只读存储器、磁盘或光盘等。
[0174]
总线可以是工业标准体系结构(industry standard architecture,简称isa)总线、外部设备互连(peripheral component interconnect,简称pci)总线或扩展工业标准体系结构(extended industry standard architecture,简称eisa)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,本技术附图中的总线并不限定仅有一根总线或一种类型的总线。
[0175]
上述存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(static random-access memory,简称sram),电可擦除可编程只读存储器(electrically erasable programmable read only memory,简称eeprom),可擦除可编程只读存储器(erasable programmable read-only memory,简称eprom),可编程只读存储器(programmable read-only memory,简称prom),只读存储器(read-only memory,简称rom),磁存储器,快闪存储器,磁盘或光盘。存储介质可以是通用或专用计算机能够存取的任何可用介质。
[0176]
一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于专用集成电路(application specific integrated circuits,简称asic)中。当然,处理器和存储介质也可以作为分立组件存在于电子设备或主控设备中。
[0177]
以上所述,仅为本技术实施例的具体实施方式,但本技术实施例的保护范围并不局限于此,任何在本技术实施例揭露的技术范围内的变化或替换,都应涵盖在本技术实施例的保护范围之内。因此,本技术实施例的保护范围应以所述权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1