
1.本发明涉及车辆技术领域,更具体地,涉及基于网格的车辆调度方法和服务器。
背景技术:2.目前,通过共享车辆出行已经成为城市中新兴的出行方式,可以有效解决城市人群的出行需求。为了便于管理、运营共享车辆,共享车辆的运营方会根据地理网格来进行车辆的调度,提高网格提高车辆调度的效率成为关注的问题。
技术实现要素:3.本公开实施例的一个目的是提供一种新的基于网格的车辆调度方案以提升调度效率。
4.根据本发明的第一方面,提供了一种基于网格的车辆调度方法。该方法包括:获取地理网络中的车辆在第一时间窗口内的历史订单数据,所述历史订单数据包括车辆编号、起始网格、结束网格、发生时间以及结束时间;根据所述历史订单数据确定目标网格对于目标网格的每一辆初始归属车辆在第一时间窗口内的历史订单的贡献值,所述目标网格是所述地理网络中的任一个网格,所述目标网格的初始归属车辆是在第一时间窗口的起始时刻归属于所述目标网格的车辆;将目标网格对于其初始归属车辆在第一时间窗口内的历史订单的贡献值的平均值作为目标网格在第一时间窗口内的单车期望收益;根据地理网络的网格在第一时间窗口内的单车期望收益对地理网络进行单车调度。
5.根据本发明的第二方面,提供了一种服务器,包括存储器和处理器,所述存储器用于存储计算机指令,所述处理器用于从所述存储器中调用所述计算机指令,以执行第一方面所述的车辆调度方法。
6.本公开实施例提供的基于网格的车辆调度方法,将车辆订单归因到网格中,能够更好的体现网格对于订单的贡献和收益,为共享车辆的调度提供依据,从而提高车辆调度的整体效率。
7.为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
8.为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍。应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定。对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
9.图1示出了本公开实施例提供的共享车辆运营系统的示意图;
10.图2示出了本公开实施例提供的车辆调度方法的流程图;
11.图3示出了本公开实施例提供的服务器的示意图。
具体实施方式
12.现在将参照附图来详细描述本公开的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。
13.以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。
14.对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
15.在这里示出和讨论的所有例子中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它例子可以具有不同的值。
16.应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
17.<共享车辆运营系统>
18.如图1所示,共享车辆的运营系统100包括服务器1000、终端2000、车辆3000、网络4000。
19.服务器1000是提供处理能力、数据库、通讯设施的业务点。服务器1000可以是整体式服务器或是跨多计算机或计算机数据中心的分散式服务器。在一些实施例中,每个服务器可以包括硬件,软件,或用于执行服务器所支持或实现的合适功能的内嵌逻辑组件或两个或多个此类组件的组合。例如,服务器例如刀片服务器、云端服务器等,或者可以是由多台服务器组成的服务器群组。
20.在一个例子中,服务器1000可以如图1所示,包括处理器1100、存储器1200、接口装置1300、通信装置1400、显示装置1500、输入装置1600。尽管服务器也可以包括扬声器、麦克风等等,但是,这些部件与本发明无关,故在此省略。其中,处理器1100例如可以是中央处理器cpu、微处理器mcu等。存储器1200例如包括rom(只读存储器)、ram(随机存取存储器)、诸如硬盘的非易失性存储器等。接口装置1300例如包括usb接口、串行接口、红外接口等。通信装置1400例如能够进行有线或无线通信。显示装置1500例如是液晶显示屏、led显示屏触摸显示屏等。输入装置1600例如可以包括触摸屏、键盘等。
21.在本实施例中,运营人员持有的终端2000是具有通信功能、业务处理功能的电子设备。终端2000可以是运营人员所持有的移动终端,例如手机、便携式电脑、平板电脑、掌上电脑等等,其上搭载有相应的app,运营人员可以通过app接收车辆调度任务、回收故障车辆任务等。
22.如图1所示,终端2000可以包括处理器2100、存储器2200、接口装置2300、通信装置2400、显示装置2500、输入装置2600、输出装置2700、摄像装置2800,等等。其中,处理器2100可以是中央处理器cpu、微处理器mcu等。存储器2200例如包括rom(只读存储器)、ram(随机存取存储器)、诸如硬盘的非易失性存储器等。接口装置2300例如包括usb接口、耳机接口等。通信装置2400例如能够进行有线或无线通信,例如包括wifi通信模块、蓝牙通信模块、2g/3g/4g通信模块等。显示装置2500例如是液晶显示屏、触摸显示屏等。输入装置2600例如可以包括触摸屏、键盘或者麦克风等。输出装置2700用于输出信息,例如可以是扬声器,用于为运营人员输出语音信息。摄像装置2800用于拍摄故障车辆,例如对故障车辆进行扫码
以登记故障车辆,例如拍摄故障车辆的故障处的图片上传到服务器等,摄像装置2800例如是摄像头等。终端2000可以包括定位装置(图中没有示出),例如可以包括gps定位模块、北斗定位模块等gnss定位模块。
23.车辆3000是任何可以分时或分地出让使用权供不同用户共享使用的车辆,例如,用于共享的共享自行车、共享助力车、共享电动车、共享车等等。车辆3000可以是自行车、三轮车、电动助力车、摩托车以及四轮乘用车等各种形态。
24.如图1所示,车辆3000可以包括处理器3100、存储器3200、接口装置3300、通信装置3400、输出装置3500、输入装置3600、定位装置3700、传感器3800,等等。其中,处理器3100可以是中央处理器cpu、微处理器mcu等。存储器3200例如包括rom(只读存储器)、ram(随机存取存储器)、诸如硬盘的非易失性存储器等。接口装置3300例如包括usb接口、耳机接口等。通信装置3400例如能够进行有线或无线通信,例如包括wifi通信模块、蓝牙通信模块、2g/3g/4g通信模块等。输出装置3500例如可以是输出信号的装置,可以是显示装置,例如液晶显示屏、触摸显示屏等,也可以是扬声器等输出语音信息等。输入装置3600例如可以包括按键、触摸屏、键盘等,也可以包括麦克风用于输入语音信息。定位装置3700用于提供定位功能,例如可以包括gps定位模块、北斗定位模块等gnss定位模块。传感器3800用于获取车辆姿态信息,例如可以是加速度计、陀螺仪、或者三轴、六轴、九轴微机电系统(mems)等。
25.网络4000可以是无线通信网络也可以是有线通信网络,可以是局域网也可以是广域网。在图1所示的车辆系统中,车辆3000与服务器1000、终端2000与服务器1000,可以通过网络4000进行通信。此外,车辆3000与服务器1000、终端2000与服务器1000通信所基于的网络4000可以是同一个,也可以是不同的。
26.应当理解的是,尽管图1仅示出一个服务器1000、终端2000、车辆3000,但不意味着限制对应的数目,运营系统100中可以包含多个服务器1000、多个终端2000、多个车辆3000。
27.图1所示的运营系统100仅是解释性的,并且决不是为了要限制本发明、其应用或用途。尽管在图1中对服务器1000、终端2000、车辆3000示出了多个装置,但是,本发明可以仅涉及其中的部分装置。
28.应用于本发明的实施例中,服务器1000的存储器1200用于存储指令,该指令用于控制处理器1100进行操作以执行本公开实施例提供的车辆调度方法。本领域技术人员可以根据本发明所公开方案设计指令。指令如何控制处理器进行操作是本领域公知技术,故在此不再详细描述。
29.<车辆调度方法>
30.本公开实施例还提供了一种车辆调度方法,包括步骤s202
‑
s208。
31.s202、获取地理网络中的车辆在第一时间窗口内的历史订单数据,历史订单数据包括车辆编号、起始网格、结束网格、发生时间以及结束时间。
32.s204、根据历史订单数据确定目标网格对于目标网格的每一辆初始归属车辆在第一时间窗口内的历史订单的贡献值,目标网格是地理网络中的任一个网格,目标网格的初始归属车辆是在第一时间窗口的起始时刻归属于目标网格的车辆。
33.在一个例子中,网格可以是将地理网络均匀划分的地理单元。在一个例子中,网格可以是地理网络中的预先设置的停车围栏,只允许用户将车辆停放到停车围栏中。
34.在一个例子中,将历史订单数据输入马尔可夫归因模型,以输出目标网格对于其
每一辆初始归属车辆在第一时间窗口内的历史订单的贡献值。
35.s206、将目标网格对于其初始归属车辆在第一时间窗口内的历史订单的贡献值的平均值作为目标网格在第一时间窗口内的单车期望收益。
36.s208、根据地理网络的网格在第一时间窗口内的单车期望收益对地理网络进行单车调度。
37.在一个例子中,根据地理网络的网格在第一时间窗口内的单车期望收益,基于收益最大化原则设置地理网络的车辆调度策略。
38.在一个例子中,步骤s204包括步骤s2042
‑
s2048。该步骤s2042
‑
s2048可以通过马尔可夫归因模型实现。
39.本公开实施例中预先设置固定的转移时长,以转移时长为间隔对第一时间窗口进行切割,确定每一个转移时刻。例如,转移时长为15分钟,则按照15分钟为间隔对第一时间窗口进行切割,得到n个转移时刻,n为正整数,n个转移时刻分别为t(1),t(2),
…
,t(n),其中,任意相邻两个转移时刻之间的时长为15分钟。t(1)转移时刻为第一时间窗口的起始时刻,也就是第一时间窗口中的第1个转移时刻。t(n)转移时刻为对应于第一时间窗口的结束时刻的转移时刻,也就是第一时间窗口中的第n个(也就是最后1个)转移时刻。t(m)转移时刻为第一时间窗口中的第m个转移时刻,m为正整数并且1≤m≤n。
40.s2042、根据历史订单数据确定地理网络的网格在每个转移时刻对应的马尔可夫转移概率。
41.式子1:
42.p
ij
(t(m))=trips
ij
(t(m))/expose_bikes
i
(t(m))
43.假设地理网络中一共有l个网格,用i和j代表地理网络中的网格的序号,i和j为正整数,1≤i≤l,1≤j≤l,则s
i
表示第i个网格,s
j
表示第j个网格,s
ij
表示从第i个网格到第j个网格,
44.为t(m)转移时刻归属于s
i
网格的车辆的数量。如果某辆车在t(m)转移时刻停放在s
i
网格中,则这辆车在第m个转移时刻归属于s
i
网格。如果在t(m
‑
1)转移时刻到t(m)转移时刻的时间区间内,某辆车进入到s
i
网格进行停放,则这辆车在t(m)转移时刻归属于s
i
网格。
45.trips
ij
(t(m))为在t(m)转移时刻到t(m+1)转移时刻的时间区间内,从s
i
网格转移到s
j
网格且停放到s
j
网格的车辆的数量。如果i=j,即s
i
网格和s
j
网格为同一个网格,trips
ij
(t(m))为在t(m)转移时刻到t(m+1)转移时刻的时间区间内,车辆停留在s
i
网格中没有被转移出的车辆的数量。
46.p
ij
(t(m))为s
i
网格在t(m)转移时刻的马尔可夫转移概率。
47.p
t(m)
是地理网络的全部网格在t(m)转移时刻的马尔可夫转移概率构成的转移矩阵,该矩阵为l*l的矩阵,其矩阵元素为p
ij
(t(m))。
48.s2044、根据目标网格的初始归属车辆在第一时间窗口的起始时刻停放在地理网络的任一网格的初始状态概率和目标网格的初始归属车辆在每个转移时刻对应的马尔可夫转移概率,得到目标网格的初始归属车辆在每个转移时刻停放在地理网络的任一网格的状态概率。
49.目标网格的初始归属车辆是指在第一时间窗口内的初始时刻,也就是t(1)转移时
刻归属于目标网格的车辆。
50.式子2:
51.prob
t(m+1)
=prob
t(m)
*p
t(m)
52.p
t(m)
是地理网络的全部网格在t(m)转移时刻的马尔可夫转移概率构成的转移矩阵,该矩阵为l*l的矩阵,其矩阵元素为p
ij
(t(m))。
53.prob
t(1)
为目标网格的初始归属车辆在t(1)转移时刻对应的状态概率,为数组形式,其中含有与l个网格一一对应的l个元素,分别为q1,q2,q3,
…
,q
l
。假设目标网格为第i个网格,则q
i
为1,其余元素为0。prob
t(m)
为目标网格的初始归属车辆在t(m)转移时刻对应的状态概率
54.prob
t(m+1)
为目标网格的初始归属车辆在t(m+1)转移时刻对应的状态概率。
55.s2046、根据目标网格的初始归属车辆在每个转移时刻停放在地理网络的任一网格的概率,确定目标网格的初始归属车辆在第一时间窗口中的t(c)转移时刻到第一时间窗口结束时刻内的期望订单数。
56.式子3:
57.expectedtrips
[t(m),t(m+1)]
=prob
t(m)
*p
t(m)_with_diagonal_zero
[0058]
式子4:
[0059][0060]
在式子4中,c为正整数,取值区间为1≤c≤n
‑
1,m的取值范围为[c,n
‑
1]。
[0061]
其中,矩阵p
t(m)_with_diagonal_zero
是转移矩阵prob
t(m)
的主对角线上的元素归零得到的矩阵。
[0062]
expectedtrips
[t(m),t(m+1)]
是目标网格的初始归属车辆从t(m)转移时刻到t(m+1)转移时刻的期望订单数。
[0063]
expectedtrips
[t(c),t(n)]
是目标网格的初始归属车辆从t(c)转移时刻到第一时间窗口结束时刻内的总期望订单数,∏为连续求积符号。
[0064]
s2048、根据以下式子目标网格对于其每一辆归属车辆在第一时间窗口内的历史订单的贡献值。
[0065]
式子5:
[0066]
假设目标网格为s
i
网格,bike
r
代表目标网格的第r个初始归属车辆,r为正整数。假设目标网格的第r个初始归属车辆在第一时间窗口内一共有h个历史订单,按照时间顺序依次记录为d1,d2,d3,
…
,d
h
。d
h
为目标网格的第r个初始归属车辆在第一时间窗口内的第h个历史订单,h为正整数并且1≤h≤h。t(d1)代表第1个订单的发生时间所对应的转移时刻,t(d
h
)代表第h个订单的发生时间所对应的转移时刻。
[0067]
alltrips(bike
r
)为目标网格的第r个初始归属车辆在第一时间窗口内的总历史订单数。
[0068]
是目标网格的第r个初始归属车辆在第一时间窗口内的第1个历史订单所对应的转移时刻到第一时间窗口结束时刻的期望订单数。
[0069]
是目标网格的第r个初始归属车辆在第一时间窗口内的第h个历史订单
所对应的转移时刻到第一时间窗口结束时刻的期望订单数。
[0070]
是目标网格的第r个初始归属车辆在第一时间窗口内的全部h个历史订单所对应的转移时刻到第一时间窗口结束时刻的期望订单数的总和。
[0071]
alltripsbike
r
(s
i
)为目标网格对于第r个初始归属车辆在第一时间窗口内的历史订单的贡献值。
[0072]
本公开实施例提供的基于网格的车辆调度方法,将车辆订单归因到网格中,可以避免简单周转指标的不稳定和不准确的缺点,有能够更好的体现网格对于订单的贡献和收益,为共享车辆的调度提供依据,从而提高车辆调度的整体效率。归因后的周转是更稳定准确的指标,更好的反应围栏的调度收益的大小。
[0073]
<服务器>
[0074]
在本实施例中,还提供一种服务器200。如图3所示,该服务器200包括:
[0075]
存储器210,用于存储计算机指令。
[0076]
处理器220,用于从存储器210中调用计算机指令,以执行上述实施例提供的任意一项车辆调度方法。
[0077]
在本实施例中,服务器200可以具体各种实体形式。例如,服务器200可以是云端服务器。服务器200还可以是如图1所示的服务器1000。
[0078]
<计算机可读存储介质>
[0079]
在本实施例中,还提供一种计算机可读存储介质,其上存储有计算机可读指令,所述计算机可读指令被处理器执行时,实施上述实施例提供的任意一项车辆调度方法。
[0080]
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于服务器实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0081]
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
[0082]
本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
[0083]
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、静态随机存取存储器(sram)、便携式压缩盘只读存储器(cd
‑
rom)、数字多功能盘(dvd)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输
的电信号。
[0084]
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
[0085]
用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(isa)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,编程语言包括面向对象的编程语言—诸如smalltalk、c++等,以及常规的过程式编程语言—诸如“c”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(fpga)或可编程逻辑阵列(pla),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。
[0086]
这里参照根据本公开实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
[0087]
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
[0088]
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
[0089]
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的
专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。对于本领域技术人员来说公知的是,通过硬件方式实现、通过软件方式实现以及通过软件和硬件结合的方式实现都是等价的。
[0090]
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。本发明的范围由所附权利要求来限定。