CN111033535B - 用于乘车订单调度的系统和方法 - Google Patents
用于乘车订单调度的系统和方法 Download PDFInfo
- Publication number
- CN111033535B CN111033535B CN201880001535.7A CN201880001535A CN111033535B CN 111033535 B CN111033535 B CN 111033535B CN 201880001535 A CN201880001535 A CN 201880001535A CN 111033535 B CN111033535 B CN 111033535B
- Authority
- CN
- China
- Prior art keywords
- layer
- input
- sequence
- hidden
- neural network
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 119
- 238000013528 artificial neural network Methods 0.000 claims abstract description 116
- 238000012549 training Methods 0.000 claims description 148
- 230000009471 action Effects 0.000 claims description 108
- 238000003860 storage Methods 0.000 claims description 25
- 239000013598 vector Substances 0.000 claims description 22
- 230000008878 coupling Effects 0.000 claims description 15
- 238000010168 coupling process Methods 0.000 claims description 15
- 238000005859 coupling reaction Methods 0.000 claims description 15
- 238000006073 displacement reaction Methods 0.000 claims description 14
- 230000008859 change Effects 0.000 claims description 10
- 230000002787 reinforcement Effects 0.000 claims description 9
- 230000006870 function Effects 0.000 description 63
- 238000012546 transfer Methods 0.000 description 24
- 239000003795 chemical substances by application Substances 0.000 description 20
- 230000000875 corresponding effect Effects 0.000 description 18
- 230000000750 progressive effect Effects 0.000 description 14
- 238000004891 communication Methods 0.000 description 12
- 238000010801 machine learning Methods 0.000 description 12
- 230000008569 process Effects 0.000 description 12
- 230000006872 improvement Effects 0.000 description 11
- 238000012360 testing method Methods 0.000 description 11
- 230000007704 transition Effects 0.000 description 10
- 230000008901 benefit Effects 0.000 description 8
- 238000011156 evaluation Methods 0.000 description 8
- 210000002569 neuron Anatomy 0.000 description 8
- 238000013459 approach Methods 0.000 description 7
- 238000005457 optimization Methods 0.000 description 6
- 238000006243 chemical reaction Methods 0.000 description 5
- 230000006399 behavior Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 239000010432 diamond Substances 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000005070 sampling Methods 0.000 description 4
- 238000004088 simulation Methods 0.000 description 4
- 230000006978 adaptation Effects 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 3
- 210000004027 cell Anatomy 0.000 description 3
- 238000002474 experimental method Methods 0.000 description 3
- 239000006260 foam Substances 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 238000000844 transformation Methods 0.000 description 3
- 238000007792 addition Methods 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 229910003460 diamond Inorganic materials 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 230000008014 freezing Effects 0.000 description 2
- 238000007710 freezing Methods 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000002441 reversible effect Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 238000013526 transfer learning Methods 0.000 description 2
- 101100272279 Beauveria bassiana Beas gene Proteins 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012854 evaluation process Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 230000007786 learning performance Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 210000003813 thumb Anatomy 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000014616 translation Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
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
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/40—Business processes related to the transportation industry
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- 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/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
- G06Q10/047—Optimisation of routes or paths, e.g. travelling salesman problem
-
- 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/06316—Sequencing of tasks or work
-
- 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/10—Office automation; Time management
- G06Q10/105—Human resources
- G06Q10/1057—Benefits or employee welfare, e.g. insurance, holiday or retirement packages
-
- 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/02—Marketing; Price estimation or determination; Fundraising
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Economics (AREA)
- General Physics & Mathematics (AREA)
- Entrepreneurship & Innovation (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Tourism & Hospitality (AREA)
- Development Economics (AREA)
- Operations Research (AREA)
- Game Theory and Decision Science (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Quality & Reliability (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Mathematical Physics (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- Computational Linguistics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Educational Administration (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biophysics (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- Primary Health Care (AREA)
- Traffic Control Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供了用于乘车订单调度的系统和方法。所述方法可以包括获取关于车辆的位置的信息和输入到训练后的第二神经网络算法中的时间;以及基于从训练后的第二神经网络算法产生的策略,获取车辆的动作信息,所述动作信息包括:停留在车辆的当前位置、重新定位车辆或接受乘车订单。
Description
技术领域
本发明涉及一种用于乘车订单调度的方法和设备。
背景技术
车辆调度平台可以自动将交通请求分配给相应的车辆以提供交通服务。每个车辆司机都可以因提供交通服务而获得奖励。然而,确定最大化每个车辆司机的收益的乘车订单调度方法一直具有挑战性
发明内容
本发明公开的各种实施例可以包括被配置为调度乘车订单的系统、方法和非暂时性计算机可读介质。根据其中一个方面,用于乘车订单调度的方法包括:获取关于车辆的位置信息和时间信息以输入到训练后的第二神经网络算法中。基于从训练后的第二神经网络算法产生的策略,获取车辆的动作信息,所述动作信息包括:停留在车辆的当前位置,重新定位车辆或接受乘车订单,其中。所述策略最大化车辆驾驶员的累积奖励。所述第二神经网络算法由一个或多个第一网络权重以及与第二区域相关联的第二乘车订单调度数据训练,以获取一个或多个第二网络权重。所述一个或多个第一网络权重通过在第一训练中利用与第一区域相关联的第一乘车订单调度数据训练第一神经网络算法获取。所述第二神经网络算法包括输入层、第一隐藏层序列、第二隐藏层序列和输出层。所述第一序列中的每个隐藏层具有相应地耦合到第二序列中的一个隐藏层和输出层的输出。对于所述输入层,所述第二乘车订单调度数据包括(1)用于输入到第二隐藏层序列中的一个或多个第二状态输入和(2)用于输入到第一隐藏层序列中的一个或多个第一状态输入。所述第一序列包括一个或多个第一网络权重,在第二训练中一个或多个第一网络权重将被冻结。第一序列中的每个隐藏层的输出将基于第一序列中的对应隐藏层和对应的第一网络权重来确定。
在一些实施例中,非暂时性计算机可读介质可以耦合到处理器并且包括在由处理器执行时使处理器执行本文描述的各种方法的指令。所述指令可以包括训练后的第一神经网络算法,训练后的第二神经网络算法和/或策略(例如,训练后的第一和第二神经网络算法和策略可以与介质中的内存位置相关联)。
在一些实施例中,所述第一神经网络算法与所述第二神经网络算法具有相同的网络结构。所述第一神经网络算法包括另一个输入层、第三隐藏层序列、第四隐藏层序列和另一个输出层。第三序列中的每个隐藏层具有相应地耦合到第四序列中的一个隐藏层和所述另一个输出层的另一个输出。对于所述另一个输入层,所述第一乘车订单调度数据包括(1)用于输入到所述第三隐藏层序列中的一个或多个第三状态输入以及(2)用于输入到所述第四隐藏层序列中的一个或多个第四状态输入。在所述第一训练之前,所述一个或多个第一网络权重是所述另一输入层、所述第三层序列和所述另一输出层中的相邻层之间的可训练权重。在所述第一次训练之后,训练后的一个或多个第一网络权重相应地转移到所述第一序列用于所述第二训练。
在一些实施例中,所述第二神经网络算法还包括输出到输出层的第三隐藏层序列。对于输入层,所述第二乘车订单调度数据进一步包括用于输入到第三隐藏层序列中的一个或多个动作输入。动作输入与停留、重新定位或接受分配中的至少一个相关联。状态输入与以下至少一个相关联:模拟车辆的地理坐标、时间或在距离地理坐标的距离范围内的需求、供应和订单履行的统计。输出层包括与累积奖励相关联的状态动作值输出。
在一些实施例中,所述第二状态输入包括与区域相关的状态输入。所述第一状态输入包括与区域无关的状态输入。
在一些实施例中,所述第二状态输入包括时空矢量。所述第一状态输入包括时空位移矢量以及一个或多个实时上下文特征。所述时空位移矢量包括模拟车辆的地理坐标的变化和时间上的变化。所述实时上下文特征包括以下中的至少一个:空闲驾驶员的实时数、在过去一个时间段内创建的实时订单数量、客户应用程序使用的泡沫计数、过去另一时间段内乘客的平均上车等候时间、或者在再另一个过去的时间段内由司机应答的订单数量。
在一些实施例中,所述第二隐藏层序列包括层Bx,X为1、2、3…N。所述输入层与层B1耦合。层BN的输出耦合到所述输出层。层Bx的输出作为一个输入耦合到层Bx+1,除了层BN以外。所述第一隐藏层序列包括层Ax。所述输入层与层A1耦合。层AN的输出耦合到所述输出层。层Ax的输出作为一个输入耦合到层Ax+1,除了层AN以外。层Ax的输出作为一个输入耦合到层Bx+1,除了层AN以外。所述输入层和层B1之间、第二序列中相邻层之间以及层BN和所述输出层之间的耦合与所述第二网络权重相关联。所述输入层和层A1之间、第一序列中相邻层之间以及层AN和所述输出层之间的耦合与所述第一网络权重相关联。层Bx基于层Ax-1和层Bx-1获取。所述输出层基于层AN和层BN获取。
在一些实施例中,为了训练第一神经网络算法,所述第一网络权重将被更新以获取第一策略。所述第一策略最大化关于第一区域的累积奖励。为了训练第二神经网络算法,第二网络权重将被更新以获得第二策略,所述第二策略最大化关于第二区域的累积奖励。
根据本发明的另一方面,一种用于乘车订单调度的系统,可实现在服务器上,包括处理器和存储指令的非暂时性计算机可读存储介质,所述指令在由所述处理器执行时使所述系统执行一种方法,所述方法包括:获取关于车辆的位置信息和时间信息以输入到训练后的第二神经网络算法中。基于从训练后的第二神经网络算法产生的策略,获取车辆的动作信息,所述动作信息包括:停留在车辆的当前位置,重新定位车辆或接受乘车订单。所述第二神经网络算法由一个或多个第一网络权重以及与第二区域相关联的第二乘车订单调度数据训练,以获取一个或多个第二网络权重。所述一个或多个第一网络权重通过在第一训练中利用与第一区域相关联的第一乘车订单调度数据训练第一神经网络算法获取。所述第二神经网络算法包括输入层、第一隐藏层序列、第二隐藏层序列和输出层。第一序列中的每个隐藏层具有相应地耦合到第二序列中的一个隐藏层和输出层的输出。对于输入层,所述第二乘车订单调度数据包括(1)用于输入到第二隐藏层序列中的一个或多个第二状态输入和(2)用于输入到第一隐藏层序列中的一个或多个第一状态输入。
根据本发明的另一方面,一种非暂时性计算机可读存储介质,用于存储指令,所述指令在由处理器执行时使所述处理器执行乘车订单调度方法,所述方法包括:获取关于车辆的位置的信息和输入到训练后的第二神经网络算法中的时间。基于从训练后的第二神经网络算法产生的策略,获取车辆的动作信息,所述动作信息包括:停留在车辆的当前位置,重新定位车辆或接受乘车订单。使所述动作信息在与车辆的驾驶员相关联的设备上播放。所述第二神经网络算法由一个或多个第一网络权重以及与第二区域相关联的第二乘车订单调度数据训练,以获取一个或多个第二网络权重。所述一个或多个第一网络权重通过在第一训练中利用与第一区域相关联的第一乘车订单调度数据训练第一神经网络算法获取。所述第二神经网络算法包括输入层、第一隐藏层序列、第二隐藏层序列和输出层。第一序列中的每个隐藏层具有相应地耦合到第二序列中的一个隐藏层和输出层的输出。对于输入层,所述第二乘车订单调度数据包括(1)用于输入到第二隐藏层序列中的一个或多个第二状态输入和(2)用于输入到第一隐藏层序列中的一个或多个第一状态输入。
本申请公开的系统、方法和非暂时性计算机可读介质的这些和其他特征,以及相关结构元件的操作方法和功能以及零部件和制造经济的组合,在参考附图以考虑以下描述和所附权利要求时,将变得更加明显,所有的这些将形成本说明书的一部分,其中相同的附图标记在各个附图中表示相应的部分。然而,要明确理解的是,附图仅用于说明和描述的目的,并不意图作为本发明的限制。
附图说明
本发明的多个实施例的某些特征在所附权利要求中进行具体说明。参考以下详细描述可以获得对本发明的特征和优点的更好理解,其中阐述了利用了本发明的原理的说明性实施例以及附图,其中:
图1是根据本发明的一些实施例所示的一个示例性乘车订单调度系统;
图2是根据本发明的一些实施例所示的一个示例性乘车订单调度系统;
图3A是根据本发明的一些实施例所示的一个示例性神经网络框架;
图3B是根据本发明的一些实施例所示的一个用于乘车订单调度的示例性神经网络框架;
图3C是根据本发明的一些实施例所示的一个用于乘车订单调度的示例性动作搜索;
图3D是根据本发明的一些实施例所示的一个用于乘车订单调度的示例性算法;
图3E是根据本发明的一些实施例所示的另一个用于乘车订单调度的示例性算法;
图3F是根据本发明的一些实施例所示的三种转移方法:微调、渐进网络和相关特征渐进转移(CFPT);
图3G是根据本发明的一些实施例所示的两种类型的输入之间的性能比较:原始时空状态和具有上下文拓展特征的状态;
图3H根据本发明的一些实施例所示的小批量训练的平均Q值;
图3I是根据本发明的一些实施例所示的D市120个抽样位置箱的V值;
图3J是根据本发明的一些实施例所示的在四个城市的具有动作搜索的DQN训练曲线;
图3K是根据本发明的一些实施例所示的在训练阶段的五个不同检查点对四个城市的具有动作搜索的DQN的检测评估;
图3L是根据本发明的一些实施例所示的空间转移的训练曲线和测试曲线;图3L(a)至(c)表示训练曲线,图3L(d)至(f)表示在训练过程中不过检查点的测试奖励;
图3M是根据本发明的一些实施例所示的时间转移的训练曲线和测试曲线;图3M(a)至(c)表示训练曲线,图3M(d)至(f)表示在训练过程中不过检查点的测试奖励;
图3N是根据本发明的一些实施例所示的在DQN训练和CFPT训练的D城市的平均小批量Q值之间的比较;
图4A是根据本发明的一些实施例所示的用于乘车订单调度的示例性流程图;
图4B是根据本发明的一些实施例所示的用于乘车订单调度的示例性流程图;
图5是根据本发明的一些实施例所示的用于实现本发明中描述的任一实施例的示例性计算机系统的框图。
具体实施方式
车辆平台可以用于提供交通服务。这样的车辆平台也可以被称为车辆预约或车辆调度平台,可通过诸如安装有平台应用程序的移动电话之类的设备进行访问。通过应用程序,用户(乘车请求者)可以将交通请求(例如,乘车位置、目的地、用户当前位置)传送到车辆平台。车辆平台可以基于各种因素(例如,接近请求者的位置或乘车位置)将请求传送给车辆驾驶员。车辆驾驶员可以从请求中进行选择,并且每个人都可以选择一个接受,完成请求并相应地得到奖励。在每次行程之后,车辆驾驶员可以搜索更多请求或从基于推送的调度平台接收更多请求,并且搜索结果和/或接收结果可以根据对车辆服务的需求而变化。例如,如果车辆在周末的晚上处于一个酒吧区域,则可能会返回许多请求,或者如果车辆在工作日晚上处于一个长途行程中,则可能不会返回请求。
为了使车辆驾驶员的收益最大化(例如,在一天中),车辆平台帮助他们作出最明智的决定是很重要的,例如建议驾驶员等待、重新定位或在显示结果时接受一个行程。已公开的系统和方法可以基于历史数据(例如关于时间和位置的各种行程和奖励)来训练机器学习算法,以获得优于历史数据中反映的奖励最大化的决策制定策略的最优策略。根据机器制定的策略,车辆平台可以自动调度车辆,并且帮助车辆驾驶员每天获得更多收入,而不仅仅是依靠个人经验,从而提高他们的工作效率。
一些现有的机器学习技术仅考虑车辆空闲时的位置状态(车上没有顾客)。由于顾客出行会影响车辆的位置转换,所以这种方法是不充分的。至少减轻了现有技术的缺陷,本发明所披露的系统和方法对单个驾驶员(代理)订单分派的问题建模,其根据单个驾驶员进行一系列行程决策以最大化全天的总收入。这个问题可以通过马尔科夫决策过程(MDP)来解决,通过这个过程估算驾驶员的的状态-动作值函数,从而生成一个支配每一步决策的最优策略。该状态-动作值函数表明在一天的特定地点和时间对价值最大化的长期目标做出的决策有多好。在多个实施例中,采用具有函数逼近的无模型强化学习(RL)方法来确定乘车订单调度。例如,使用深度Q网络(DQN
)框架,其中状态-动作值函数通过多层神经网络(或多层感知机(MLP))来近似表达。由此产生的Q网络可以用作多驾驶员调度系统中的一个组件。基于在状态空间和/或行动空间中的学习,状态-动作值函数可以学习使用转换历史行程数据来最大化驾驶员的每个状态位置处的未来可能收入。模拟产生的策略有助于车辆平台在现实中管理订单调度。
一些现有方法使用在离散表格状态空间中执行策略评估,其具有若干限制。由于价值函数的表格形式,模型的表现对于每个城市都是唯一的。但是,不同城市的交通模式通常是不同的,导致每个城市的相应策略差异很大。如果为每个新城市建立新模型,效率将很低。另外,状态评估可以根据不同的实时因素(例如交通供给和需求)而变化,但是表格模型通常难以实时并入和响应这样的上下文信息。换句话说,代理必须能够以超出历史数据来进行概括。此外,不同城市中的行程构成不同的MDP,这些MDP也具有许多共同的结构。以表格方法分别处理每个MDP,并没有提供数据在城市间传递的可行机制。此外,现有技术的策略改进是一个单独的步骤,必须至少在一天内在线执行。为了收敛,通常需要几十次评估改进迭代,而这可能需要数周时间。
为了克服现有技术中的问题,本发明公开了一种基于Q学习的订单调度框架。所公开的系统和方法可以获得一种离线策略方法,这种方法可以更有效地学习,同时避免直接在线学习的风险。与独特的表格状态空间相比,使用深度网络作为策略模型更有利于跨不同城市的部署。由所公开的系统和方法使用的机器学习算法可以包括改进的神经网络(例如,深度神经网络(DNN))和强化学习(RL)算法的组合。与RL算法的结合消除了对输入和输出的校正以及次优动作纠正的要求,以可扩展的方式利用DNN的强大功能。此外,如下面在多个实施例(例如,图3F)中所描述的,有效地重新使用先前训练过的网络可以用来提高学习效率。尽管不同城市的交通模式通常不同,但它们仍可能共享一些共同的特性。例如,不同城市之间在繁忙时间内市区和住宅区之间的交通需求可能相似。与其将每个策略的优化视为一个新问题,先前训练过的网络模型可以重新用于为大型系统训练新的网络模型。由于不再需要为每个新城市建造新模型,因此可以提高计算能力的使用效率。
本发明公开的各种实施例包括被配置为确定和调度乘车订单或者以其他方式提供可以在整个时段期间内(例如,一天)最大化车辆驾驶员的总收入的决策序列的系统、方法和非暂时性计算机可读介质。在一些实施例中,用于乘车订单调度的方法可以包括获得关于车辆的位置信息和时间信息(例如,一天中的某个时刻)以输入到训练后的第二神经网络算法中;基于从训练后的第二神经网络算法生成的策略,获得车辆的动作信息。所述动作信息可以包括:停留在车辆的当前位置、重新定位车辆、接受乘车订单或其他动作。所述第二神经网络算法可以用一个或多个第一网络权重以及第二训练中与第二区域相关联的第二乘车订单调度数据来训练以获得一个或多个第二网络权重。所述一个或多个第一网络权重是通过利用第一训练中与第一区域相关联的第一乘车订单调度数据来训练第一神经网络算法而获得的。所述第二神经网络算法包括输入层、第一序列隐藏层、第二序列隐藏层和输出层。第一序列中的每个隐藏层具有一个相应地耦合到第二序列中的一个隐藏层和所述输出层的输出。对于所述输入层,所述第二乘车订单调度数据包括(1)用于输入到第二隐藏层序列中的一个或多个第二状态输入和(2)用于输入到第一隐藏层序列中的一个或多个第一状态输入。本发明公开的系统和方法至少在以下方面是有利的:更高的起步(学习开始时更好的性能)、更快的朝向收敛的学习以及更高的收敛性能。
在一些实施例中,本发明提供了用于乘车订单调度的计算系统。所述计算系统可以包括服务器,该服务器被配置为获得关于车辆的位置信号和输入到训练好的第二神经网络算法中的时间;基于从训练好的第二神经网络算法生成的策略,获得车辆的动作信息,所述动作信息包括:停留在车辆的当前位置、重新定位车辆、接受乘车订单或其他动作;并且使得所述动作信息在与车辆的驾驶员相关联的设备上显示。
图1是根据本发明的一些实施例所示的用于调度乘车订单的示例性系统100。如图1所示,所述示例性系统100可以包括至少一个计算系统102,所述计算系统102包括一个或多个处理器104和存储器106。存储器106可以是非暂时性的并且是计算机可读的。存储器106可以存储由一个或多个处理器104执行时使一个或多个处理器104实现在此描述的各种操作的指令。系统102可以在诸如移动电话、平板电脑、服务器、计算机、可穿戴设备(智能手表)等的各种设备上或作为所述各种设备来实现。上述系统102可以安装有适当的软件(例如平台程序等)和/或硬件(例如,网线、无线连接等)来访问系统100的其他设备。
系统100可以包括系统102可访问的一个或多个数据存储(例如,数据存储108)和一个或多个计算设备(例如,计算设备109)。在一些实施例中,系统102可以被配置为从数据存储108(例如历史交通行程的数据库或数据集)和/或计算设备109(例如,计算机、服务器、由获取交通行程信息(例如时间、位置和费用)的驾驶员或乘客使用的移动电话)获得数据(例如,第一训练数据和第二训练数据,例如多个历史车辆交通行程的位置、时间和费用)。系统102可以使用所获得的数据来训练用于乘车订单调度的算法。所述位置可以包括车辆的GPS(全球定位系统)坐标。
系统100还可以包括耦合到系统102的一个或多个计算设备(例如,计算设备110和111)。计算设备110和111可以包括诸如手机、平板电脑、计算机、可穿戴设备(智能手表)等设备。计算设备110和111可以将数据发送到系统102或从系统102接收数据。
在一些实施例中,系统102可以实现在线信息或服务平台。所述服务可以与交通工具(例如,汽车、自行车、船舶、飞机等)相关联,并且所述平台可以被称为交通工具(服务呼叫或乘车订单调度)平台。所述平台可以接受交通请求、识别车辆以完成请求、安排接驾以及处理交易。例如,用户可以使用计算设备110(例如,安装有与平台相关联的软件应用的移动电话)通过平台请求交通服务。系统102可以接收该请求并将其继续发送给多个车辆驾驶员(例如,通过将请求发布给由驾驶员携带的移动电话)。车辆驾驶员可以使用计算设备111(例如,安装有与平台相关联的应用的另一个移动电话)接受所发布的交通请求并获得接驾位置信息。费用(例如交通费用)可以在系统102和计算设备110和111之间交易。一些平台数据可以存储在存储器106中或可以从数据存储108和/或计算设备109、110中获取,例如,对于每次行程,系统102可以获得起始地和目的地的位置(例如,由计算设备111发送的)、费用和时间。
在一些实施例中,系统102和一个或多个计算设备(例如,计算设备109)可以集成在单个设备或系统中。或者,系统102和一个或多个计算设备可以作为单独的设备来操作。数据存储可以是系统102可访问的任何位置,例如,存储器106中、计算设备109中、耦合到系统102的另一设备(例如,网络存储设备)或另一存储位置(例如基于云的存储系统、网络文件系统等)等。虽然在图1中系统102和计算设备109被示出为单个组件,但是可以理解的是,系统102和计算设备109可以由耦合在一起的单个设备或多个设备实现。系统102可以由彼此耦合的单个系统或多个系统实现。通常,系统102、计算设备109、数据存储108以及计算设备110和111可以通过一个或多个有线或无线网络(例如,互联网)进行通信,数据可以通过该网络进行传输。系统100的各个方面的描述可以参考图2至图5。
图2是根据本发明的一些实施例所示的用于调度乘车订单的示例性系统200。图2中所示的并在下面呈现的操作是说明性的。在多个实施例中,系统102可以从数据存储108和/或计算设备109获得数据202(例如,包括以下描述的针对历史行程的状态、动作和奖励的第一训练数据和第二训练数据)。所获得的数据202可被存储在存储器106中。系统102可以利用所获得的数据202训练算法以学习用于调度乘车订单的模型。在不提供模型的情况下学习模型的算法可以被称为无模型强化学习算法。计算设备111可以向系统102发送查询204。计算设备111可以与服务车辆的驾驶员相关联,该服务车辆包括,例如,出租车,网约服务车辆等。查询204可以包括诸如车辆的当前位置、当前时间、完整行程(起点、目的地、时间、费用)等的信息。相应地,系统102可以将数据207发送到计算设备111或一个或多个其他设备。数据207可以包括用于动作的指令或推荐,例如在当前位置等待、重新定位到另一个位置、接受新的请求等。
如所提到的,由本发明所公开的系统和方法使用的机器学习算法可以包括改进的(例如,深度神经网络(DNN))和强化学习(RL)算法的组合。所述RL算法可以利用函数逼近(例如,在深度Q网络(DQN)框架中)进行无模型化,其中状态-动作值函数通过多层神经网络或多层感知机(MLP)来近似。由此产生的Q网络可以用作多驾驶员调度系统中的一个组件。在多个实施例中,为了生成支配每个步骤的决策的最优策略,可以估计驾驶员的相应的状态动作值函数(在下面进行描述)。这个函数可以表明在一天的特定地点和时间对长期目标做出的决定有多好。机器学习算法或者至少部分实现机器学习算法的系统或设备可以被称为“代理”。对于训练,所述代理在定义的环境中采取行动,可以为给定行为分配奖励(例如,完成乘车订单的乘坐费用、对于等待没有任何奖励),假设车辆驾驶员遵循代理的决定,并且随着时间的推移通过强化学习算法,所述代理可以学习再现该行为以最大化奖励,并帮助车辆司机做出最佳决策。
在深度神经网络中,神经元可以作为基本构件。神经元可以接收输入信号(例如,输入数据),使用逻辑计算功能对其进行处理,并根据计算结果发送输出信号(例如,输出数据)。当这些神经元排列成网络时,它们被称为神经网络。网络中的每一列神经元都称为一个层,一个网络可以具有多个层,并且每一层中可以有多个神经元。具有单个神经元的网络被称为感知器,具有多层神经元的网络称为多层感知器(MLP)。例如,图3B中所示的具有两个隐藏层的MLP(层A1和层A2),其中输入层包括到网络的输入(状态输入和动作输入)。输入层也称为可见层,因为这可能是网络中唯一暴露的部分。隐藏层以不同比例或分辨率从输入层中获取特征,以形成高阶特征,并在输出层输出一个值或一个向量值。在每个隐藏层上,网络可以按如下方式计算特征:
A1=f(W1*X)
A2=f(W2*A1)
Q=f(W3*A2)
其中,f是采用权重组合(例如W1,W2,W3)和前一层的输出的函数,并输出一个值。函数f对于所有隐藏层可以是相同的,或者可以是不同的。A1,A2和Q是第一隐藏层、第二隐藏层和最终输出层的连续输出。对于给定的一行数据X作为网络的输入,网络可以处理输入以获得A1,A2并最终获得预测的输出Q。这可以被称为正向传递。
神经网络的权重需要通过训练来更新,以准确反映决策过程。在常规DNN中,可以将预测输出Q与预期输出(例如,独立验证结果、手动获得的结果、交叉检查结果)进行比较以使用损失函数来计算错误。然后使用反向传播算法通过网络将该误差传回,以根据随机梯度下降更新每个层的权重W1、W2、W3,一次一层。这可以称为反向传递。在一些实施例中,RL算法与DNN结合使用以基于目标值和预测值计算损失函数,并在此基础上使用反向传播更新神经网络的权重,详细描述如下。
RL算法建立在马尔可夫决策过程(MDP)基础上,乘车订单调度的环境可以被制定为MDP。在多个实施例中,所述代理在不连续的步骤中与环境交互。在每个步骤中,所述代理执行一个动作(例如,等待、重新定位、接受乘车订单),并且相应地从环境中,所述代理接收一个观察(例如,下面描述的奖励和下一个状态)。也就是说,所述代理从一组可用动作中选择一个动作,并且转移到新的状态,同时确定与转换相关的奖励。在一个示例性转换中,驾驶员与行程订单匹配,花费时间行进到行程起点位置,并且该行程花费时间将驾驶员移动到目的地位置,为此驾驶员从该转换中获得即时奖励(行程费用)。所述代理的目标是收集尽可能多的奖励。为了进一步描述MDP公式,下面将描述一些术语。所公开的MDP公式使用更细粒度的状态和动作信息并学习状态动作值函数。
状态,s:驾驶员选择行程订单时驾驶员的地理坐标和时间(例如,以秒为单位的当日时间)。例如,s=(l,t),其中l是GPS坐标对(纬度,经度),t是时间。s可能与对应于所选择的行程订单的交通行程的实际起点不同。s可以包含表征时空空间(l,t)的附加特征,例如,在(l,t)附近的需求、供应和订单履行的统计,以f表示。例如,s可以扩展为(l,t,f)。此外,由于不同的交通需求和模式,工作日和周末的时间可以不同。
动作,a:动作是由行程目的地和下车时间定义的对于驾驶员而言的特定行程的分配(例如,乘客接送和交通分配)。因此,状态动作对可以是(s0,s1)。
奖励,r:行程所收取的总费用。
场景:一整天,从上午0点到下午23点59分。因此,终止状态是t分量对应于23:59pm的状态。或者,可以使用时段的其他场景定义。
状态-动作值函数,Q(s,a):如果车辆驾驶员以状态s开始并采取动作a,则驾驶员将获得直到场景结束时的预期累积奖励。这里, 其中,S,A和R分别为s,a和r的随机变量版本。T是到终止状态的步数,γ是未来奖励的折扣因子。在本发明公开的系统和方法的训练过程中,可以将γ设置为,例如,0.9。状态动作值函数也可以称为Q函数或Q值。这个Q值函数给出了在策略π(如下所述)及折扣因子γ下以状态s执行动作a的预期总回报。
状态值函数,V(s):如果驾驶员以状态s开始,则驾驶员将获得直到场景结束时的预期累积奖励。假定使用关于Q函数的贪心策略,状态值V(s)=maxa∈AQ(s,a)。
策略,π(a|s):一个将状态s映射到动作空间(随机策略)或特定动作(确定性策略)上的分布的函数。关于学习Q(s,a)的贪心策略由下式给出π(s)=maxaQ(s,a)。
在多个实施例中,可以将动作搜索添加到现有的DQN框架以获得改进的神经网络架构。图3A示出了没有动作搜索的DQN示例。DQN假设一个小的离散动作空间,只使用状态作为输入,并且对应于每个动作的动作值的多个输出(例如,Q(s,a=1),Q(s,a=2)和Q(s,a=3))。输出的最大值用于更新神经网络。图3B示出了根据本发明的的一些实施例所示的具有对乘车订单调度进行动作搜索的DQN示例。这种具有动作搜索的DQN的网络结构可以应用于本发明描述的各种机器学习算法(例如,第一机器学习算法、第二机器学习算法)。在图3的体系结构中,状态s和动作a都被用作网络输入以获得作为单个输出的Q值。隐藏层可以是全连接层或卷积层,具体取决于应用。可以有比图3B中所示的更多的隐藏层。与图3B对应的伪代码(算法1)在图3D中提供。下面关于DQN的描述可以指图3B中的DQN。
因此,在一些实施例中,神经网络算法可以包括:包括一个或多个动作输入和一个或多个状态输入的输入层,一个或多个隐藏层以及包括状态动作值输出的输出层。所述动作可以包括与执行车辆行程相关的目的地和下车时间。所述状态可以包括车辆的地理坐标和与车辆行程相关的上车时间。所述状态动作值可以包括累积奖励。所述输入层、所述隐藏层和所述输出层可以按照顺序排列并且每两个相邻层可以与一个或多个权重相关联。
在一些实施例中,训练神经网络算法可以包括:将输入传输通过隐藏层对车辆行程建模来获得输出,并且更新权重以获得策略,所述策略与在相应状态下执行动作以及最大化累积奖励相关联。每个车辆行程可以与对应于起点的第一状态、对应于目的地的第二状态、对应于履行从起点到目的地的乘车订单的动作以及对应于该行程的费用的奖励相关联。
DQN(例如,体现在状态动作值函数中)将被用各种场景的训练数据训练,直到,例如,状态动作值函数收敛。网络可以在每次采取行动之后或以小批量的形式进行更新,例如,采取一些行动。每个小批量可以看作状态动作(Q)值函数中的一小组采样点。这样的小批量将高度相关。先前经验可以保存在存储器中(例如,上述的存储器106),并且在每次采取行动之后,可以从该存储器中提取一小批的经验以执行更新。在一个例子中,通过反向传播的小批量更新解决了在DQN框架中具有以下损失函数的引导回归问题:
其中θ′包括先前迭代的Q网络的权重(类似于上面针对相应层所描述的权重W1,W2),A是动作空间。这里,Q(s0,a|θ)可以表示预测:具有预测权重θ的神经网络的近似Q函数;可能表示目标。损失函数可以用来更新神经网络,例如θ′可以用θ进行更新。
为了进一步提高训练稳定性,可以使用双DQN。例如,目标Q网络被维持并与原始Q网络周期性地同步。公式(1)中的目标可以被修改,以便目标网络评估argmax:
也就是说,深度神经网络可以包括两个深度Q网络。公式(1)中的目标可以用公式(2)代替,公式(2)和Q(s0,a|θ)之间的差值可用于更新神经网络。
在一些实施例中,不同于简朴DQN算法,训练中不涉及模拟环境,并且所述代理基于历史数据进行训练。例如,历史行程数据可以用作训练转换(训练数据)。由于DQN是一种离线算法,学习最优策略的值可以独立于代理的在线行为来执行,以生成训练数据。每次行程x定义所述代理状态(s0,a,r,s1)的转换,其中当前状态s0=(l0,t0)包括车辆驾驶员的位置和执行动作的时间,动作a包括指定的行程,奖励为该行程收取的总费用,并且下一个状态s1=(l1,t1)是下车地点和时间。由于场景是由一天定义的,s1可以在所有那些行程穿越午夜成为终端状态的转换中设置。所有状态向量可以被预处理,例如,用其总体均值和标准偏差进行归一化。这些转换(经验)可以从数据存储中逐一检索(就像它们是从模拟器中生成的一样),并可以存储在重放存储器中,并且每次迭代都会从该重放存储器中采样一个小批量。为了用作训练数据,转换可能不会从模拟器中产生,并且可能不会形成完整的场景。
如上所述,动作搜索可以结合到本发明所公开的系统和方法中,并且动作采用a=(l,t)的形式。由于GPS坐标和时间或多或少都是连续的,因此准确计算公式(1)中的max-Q项可能并不容易处理。另外,时间(t分量)依赖于位置(l分量),因为它反映了行程的持续时间。因此,从动作空间随机抽样可能不合适。在一些实施例中,通过构建动作的近似可行空间可以使用近似方案来计算动作“a”,其明确了动作空间对搜索开始时的状态“s”的依赖性。替代于在所有有效动作中进行搜索,可以搜索源自s附近(例如,距离s的阈值距离内)的历史行程:
其中χ是所有行程的集合,B(s)是s落入的离散化的时空箱。对于空间离散化,可以使用六角箱系统,这里,六角箱可以用其中心点坐标表示。是行程x的s0分量。对于更大的搜索空间,需要更多计算来评估每个动作结点处的值网络。可以调整动作搜索空间中允许的动作数量,如果需要,可以在不存在替换的情况下执行随机抽样。相同的搜索过程可用于策略评估,其中当天驾驶员的轨迹可以利用历史行程数据模拟。因此,在一些实施例中,对车辆行程进行建模可以包括:对第一车辆行程进行建模以获得与第一车辆行程相关联的第二状态,并且从时空空间中进行搜索以获得在第二状态下执行的动作,所述时空空间包括来自第二状态的空间阈值或时间阈值中的至少一个。
由于在某些时空区域(例如清晨的偏远区域)训练数据的稀疏性,上述动作搜索可能返回一个空集。因此,在一些实施例中,可以在空间和时间上同时执行扩展动作搜索。在一个例子中,第一搜索方向是停留在最后的下车位置并等待一段时间,这对应于保持l分量(sl)不变并且增加st,直到下列之一发生在s'为搜索状态时:(1)非空,(2)达到终止状态,或者(3)st′超过等待时间限制。对于(1),/>被返回;对于(2),返回终止状态;对于(3),返回st′。在另一个示例中,第二搜索方向是通过搜索s的相邻六角箱来进行空间扩展。扩展的动作搜索可以采用分层的方式,如图3C所示。在图3C中,圆圈线覆盖l0相邻六角箱的前两层,箭头表示在时间t1>t0时搜索以l1(第一层)为中心的六角箱以及在时间t2>t1时搜索以l2为中心的六角仓。由内部红色圆圈覆盖的时空箱为B′((l0,t0),1)。
对于六角箱的每一层L,可以在适当的时间间隔内执行搜索,以考虑从s到达目标六角箱所需的行进时间。行程时间估计可以从地图服务获得。邻接s的时空箱的L层(s的L层邻接时空带)可以用B′(s,L)表示,并且源自B′(s,L)中任何一个箱的历史行程集可以表示为:
当非空时,停止第二搜索方向上的L的增加,同时/>被返回。否则,B′(s,Lmax),六角箱的中心点及其相关的时间分量,将被返回。图3E中的算法2总结了动作搜索。
基于上面描述的终止状态的定义,无论sl是多少,Q(s,a)在场景结束附近的st都将接近零。因此,sl为终止状态的转换可以在训练开始时添加到重放缓冲区,以帮助在训练的早期正确获得终止状态动作值。这可以帮助提高模型准确性,因为DQN的小批量更新中的状态s0的目标值是通过引导暂时处于该状态后的状态的状态值来计算的。由于具有终止状态的训练样本可能形成整个数据集的一小部分,统一的抽样会导致远离终止的多个状态的值受到不正确目标的监督,从而减慢学习过程。因此,在一些实施例中,用于训练的数据包括多个车辆行程,每个车辆行程与测量周期(例如,场景)相关联,并且用于训练的数据包括一个或多个终止状态,每个终止状态与测量周期的结束(端)相关。
本段描述经验增强。在一些实施例中,原始训练数据是由给定历史策略产生的经验。历史策略可能不会很好地探索轨迹空间,并且可能包含极少数罕见但重要的情况,例如需要长时间等待的转换或者在行程开始前在没有乘客的情况下重新定位。这种转换是驾驶员处于一个历史上很少有行程起源的状态的典型经验。如果代理只接受原始行程数据的训练,当驾驶员将来进入罕见状态(例如,当车辆进入极少数人请求车辆服务并尝试获得车辆请求的区域)时,它不会学会做出正确的决定。因此,最初的训练经验可能会辅以通过行动搜索获得的转换。例如,对于每个时间箱,在考虑中的地理边界内的一组位置将被随机抽样。因此,可以对随机抽样状态执行上述动作搜索和扩展动作搜索,并且可以将要求扩展动作搜索的所得到的转换添加到重放存储器。
在一些实施例中,训练后的神经网络提供在累积奖励方面超过现有决策数据的策略,并且可以通过以下方法评估所述策略。由于转换数据是历史数据,并不一定会形成完整的场景,因此可以根据过去的行程数据构建单一驾驶员模拟器,以评估从学习到的值函数生成的策略。例如,可以假设驾驶员在目的地和目的地附近让乘客下车后,驾驶员将被分配到新的行程请求。在上述扩展动作搜索之后,搜索空间可以根据需要进行扩充,以涵盖在最后一个下车区域周围没有历史行程的情况。下一步是由动作搜索输出中的给定策略选择的,这可能包括收费行程、等待动作或重新定位动作。如果动作涉及历史行程,与动作相关的奖励就是实际的行程费用。否则,奖励为零(用于等待或重新定位)。模拟可以运行多个场景(天),累计奖励可以计算并在场景中进行平均。
上面已经描述了用于在单一代理环境中学习通用驾驶员的最优值函数的方法。由于真实环境本质上是多代理(多个司机在街道上徘徊以吸引客户),因此单一代理值函数可能过于乐观。也就是说,由于存在其他驾驶员,单个驾驶员可能无法获取由基于单一代理假设的机器学习确定的“最佳”行程订单。在一些实施例中,为了学习更接近现实的值函数,可以学习生成训练数据的Qπ(关于策略π的状态动作值函数Q)。为此,公式(2)中的“argmax”可以被替换为“mean”。所得到的算法类似于期望SARSA(状态动作奖励状态动作算法)。对值网络进行训练的目标是代表驾驶员根据策略采取的所有可能行动的平均值。下面显示的关于Q的贪心或共同贪心的调度策略是一步到位的策略改进。
在一些实施例中,在多个驾驶员同时完成乘客订单的多代理环境中,在每个决策点(调度),不是通过公式(5)将最佳订单分配给驾驶员
其中s是驾驶员的当前状态,a是可以分配给该驾驶员的潜在行程,并且A代表在驾驶员的广播半径范围内的所有符合条件的行程,在调度窗口内收集到的订单(例如,2秒)被分配给一组驾驶员以最大化分配的总价值。因此,公式(5)变为:
其中a(s)是将订单从订单池指派给驾驶员的分配函数,A是订单池的所有分配函数的空间,S是可用驾驶员(及其状态)的集合。匹配部分可以通过标准匹配算法来解决,例如匈牙利方法(KM算法)。也就是说,可以使用单个驾驶员值函数来计算KM算法的二分图的边权重。这种调度策略可能对Q问题“共同贪心”
在一些实施例中,可以学习表格形式的V值函数以计算对应于行程分配x=(s,a,r,s’)的边权重,其中s是驾驶员当前的时空状态(没有上下文特征),r是估计的行程费用,s'是目的地时空状态(没有上下文特征):Ax=r+V(B(s’))-V(B(s)).As r+V(B(s’))是Q(s,a)的样本近似,Ax被解释为与行程分配x相关的优势。B(s)是与s相关的时空箱。本发明所公开的方法能够从学习到的Q函数生成如下表格V函数:对于具有单元中心s的每个时空单元B(s)
and对于Q*
对于Qπ
在一些实施例中,可以使用转移学习来克服前面描述的跨越(在)不同城市的学习问题。车辆平台应该能够负责不同城市的不同地区的订单。由于现实的市场营销运作,每个城市都必须有单独的策略模式。然而,如果将整个调度作为一组针对不同城市的独立优化问题处理,则计算成本相当高。例如,使用6核CPU,单个GPU的计算资源设置,使用一个月的数据优化中国一个中等城市的调度策略模型将花费大约三十个小时的时间进行收敛。在这种情况下,转移一些先前的知识(例如,重新使用先前训练好的模型)是可行的解决方案。例如,源城市的训练后的网络权重是可以重复使用的。更重要的是,由于非凸性质,深度学习会受到局部最优解的影响,如果训练从一个更好的初始点开始,或者沿着一个更好的梯度方向开始(初始点和梯度方向来自知识转移),它可能会达到更高的收敛性能。
有三种方法可以用来帮助改善目标城市的训练:微调、渐进网络和相关特征渐进转移(CFPT)。这三种方法的相应网络结构如图3F所示。在该图中,仅显示了针对微调方法的目标城市网络训练(第二训练),而针对渐进网络方法和CFPT方法显示了源城市网络训练(第一训练)和目标城市网络训练(第二训练)。
对于微调方法,其源城市网络(尽管未示出)与其目标城市网络(在该图中示出)类似。在第一训练中训练源城市的网络后,训练后的权重完全转移到目标城市的网络进行第二训练。在第一训练期间,权重不会被冻结并且是可训练的。用于训练的源城市数据可以包括源城市的数据的“s”和“f”输入,其无差别地从源城市网络的输入层馈送到隐藏层。“s”和“f”的范围将在后面详细介绍。在第一训练之后,将训练后的权重转移到如图所示的目标城市网络,因此图中所示的图层标记为“2”,表示这些图层已用源城市数据训练并携带训练后的权重。类似于第一训练,用于第二训练的目标城市数据(以菱形标记)可以包括目标城市的数据的“s”和“f”输入,其无差别地从目标城市网络的输入层馈送到隐藏层。转移到目标城市网络的训练后权重被初始化并且可以在目标城市的数据上进行训练。然后,网络通过反向传播进行微调。
对于渐进式网络方法,经过训练的权重通过与目标网络的横向连接进行杠杆化。如图所示,源城市网络具有输入层、隐藏层和输出层的单个序列。在第一训练中,源城市数据的“s”和“f”输入(以三角形标记)无差别地从源城市网络的输入层馈送到隐藏层以训练相邻层之间的权重。之后,将源城市网络训练后的权重转移(通过带状箭头标记)到目标城市网络中的一些隐藏层(由“2O”标记)。“2O”代表这些隐藏层已经用源城市数据进行了训练。“O”代表冻结。在利用源城市的数据对源城市网络进行第一训练期间,权重(例如,)不被冻结并且可训练。训练后的权重转移到目标城市网络后,训练后的权重将被冻结。然后,在利用目标城市的数据对目标网络进行第二训练时,目标城市的数据(以菱形标记)的“s”和“f”输入无差别地从源城市网络的输入层馈送到两个隐藏层序列中的每一个。在第二训练中,冻结的权重(例如,/>)不可训练并且不可更新,而基于输入“s”和“f”获得的层“2O”的输出值以及冻结的权重被相应地馈送到层“1”和输出层中。在输入层、标有“1”的隐藏层以及输出层中的相邻层之间的权重(例如,Wi (t))将,例如,通过反向传播,更新。连接函数可以被定义为:
其中其中和/>分别表示目标网络和源网络中I层的输出,f()表示激活函数,Wi (t)表示当前网络的第i层的权重矩阵,/>表示来自源任务的网络的横向连接权重。
在一些实施例中,对于CFPT方法,经过训练的重量也通过与目标网络的横向连接进行杠杆化。如图所示,源城市网络和目标城市网络可以具有相同的结构:输入层(或者,两个输入部分“s”和“f”可以被视为两个不同的输入层)、两个隐藏层序列和一个输出层。不同的输入被馈送到输出到相同输出层的两个序列。来自一个序列的层输出被耦合并用于另一个序列中。
对于CFPT方法,在第一训练中,为了训练源城市网络的相邻层之间的权重,源城市的数据的“s”输入(以三角形标记的第四状态输入)被馈送到源城市网络的第四隐藏层序列(层D1、D2、D3,...),源城市的数据的“f”输入(以三角形标记的第三状态输入)被馈送到源城市网络的第三隐藏层序列(层C1、C2、C3,...)。第一训练可以遵循如上述图3A至图3B的描述。之后,将源城市网络训练后的权重转移(通过带状箭头标记)到目标城市网络中的第一隐藏层序列(由“2O”标记的层A1、A2、A3,......)。“2O”表示这些隐藏层已经用源城市数据进行了训练。“O”代表冻结。在利用源城市的数据对源城市网络进行第一训练期间,权重(例如,)不被冻结并且可被训练。将训练后的权重转移到目标城市网络后,训练后的权重将被冻结。然后,在利用目标城市的数据对目标网络进行第二训练中,为了训练目标城市网络的相邻层之间的权重(例如,Wi (t)),目标城市的数据的“s”输入(以菱形标记的第二状态输入)被馈送到目标城市网络的第二隐藏层序列(层B1、B2、B3、...),目标城市数据的“f”输入(以菱形标记的第一状态输入)被馈送到目标城市网络的第一隐藏层序列(层A1、A2、A3、...)。被冻结权重(例如,/>)在第二训练中不可训练并且不可更新,而基于输入“f”和被冻结权重获得的层A1,A2和A3的输出值将被馈送到层B2、B3和输出层。上面描述的连接函数(7)可以用于CFPT方法。在输入层、第二隐藏层序列以及输出层中的相邻层之间的权重(例如,Wi (t))将,例如,通过反向传播,更新。
CFPT方法可以解决跨不同地区的策略生成问题。在一些实施例中,由于状态空间的多样性,并非输入层的所有状态元素都适用于不同的区域。例如,与各种车辆相对应的历史地理位置和时间等一些状态因素是区域相关的,因此在不同地区是非适应性的,而车辆的历史位移是与区域无关的(即,不同城市间的平均值相似),因此适应于不同地区。相应地,输入层的网络输入可以分成两部分:s表示对于目标城市直观地不适用的元素,f表示适用的元素。网络输入s可以包括:与第二乘车订单调度数据相关联的时空矢量(例如,车辆的历史地理坐标和相关联的时间戳)。也就是说,第二状态输入包括时空矢量。网络输入f可以包括:时空位移矢量以及与第二乘车顺序调度数据相关联的一个或多个实时上下文特征。也就是说,f可以是时空位移矢量与实时上下文特征的串联(结合)。使用上述符号,三元时空位移矢量可以被计算为(s1-s0)。此外,对于每个si=(li,ti),五元实时上下文特征包含一个或多个实时事件计数:1)空闲驾驶员的实时数量,2)过去一个时间段内产生的实时订单数(例如,在过去一分钟内),3)客户应用程序(应用程序)使用的泡沫计数,4)过去一个时间段内乘客的平均上车等待时间(例如,在过去五分钟内),和/或5)过去一个时间段内(例如,在过去五分钟内)司机应答的订单数量。也就是说,第一状态输入包括时空位移矢量和一个或多个实时上下文特征。所述时空位移矢量包括模拟车辆的地理坐标的变化和时间上的变化、根据历史数据确定与时间关联的地理坐标。所述实时上下文特征包括以下中的至少一个:空闲驾驶员的实时数量;在过去一个时间段内创建的实时订单数量;客户应用程序使用的泡沫计数;过去另一时间段内乘客的平均上车等候时间;或者在再另一个过去的时间段内由司机应答的订单数量。与绝对GPS位置相比,上述8个相关特征与调度需求、供给和订单履行的统计有关,这可能更适应于跨城的输入。
因此,当跨不同地区(例如,城市)应用时,CFPT方法进一步改进了渐进网络方法。如渐进网络方法中一样,不使用全连接网络、在源城市训练和目标城市训练期间全部接受所有状态输入(包括“s”和“f”),可以为源城市网络和目标城市网络建立具有两个隐藏序列的并行渐进式结构。取决于它们的区域依赖性的不同输入可以被馈送到这两个序列,并且这两个序列将输出到相同的输出层(如实心圆圈所示)。CFPT方法的优点至少是因为:在源城市的训练阶段,网络已经被分成两个并行流程,接收基于区域依赖性的输入,而不是无差别地获取所有源城市数据。其中一个序列只处理与区域无关的输入f,因此相应地训练后的权重更适合重新用于另一地区的另一次训练。这可以显着提高其他地区的训练效率。目标城市网络的训练将从这种快速启动中受益,这意味着在训练开始时提高的初始性能。两个流程中每个同层次的神经元数量是原始全连接网络的一半,这将减少可训练参数的总数,从而提高学习效率。有效的学习意味着收敛将在训练期间提前发生。此外,收敛性能将得到改善。
在一些实施例中,上面描述的和图3F中所示的CFPT方法的目标城市网络可以被称为第二神经网络算法,并且CFPT方法的第一序列(源城市模型)可能已经被源城市网络训练,其可以被称为第一神经网络算法。第二神经网络算法可以用一个或多个第一网络权重(从源城市网络的训练中获得)以及在第二训练中与第二区域(例如,目标城市)相关联的第二乘车订单调度数据来训练以获得一个或多个第二网络权重(输入层、第二隐藏层序列和输出层中的相邻层之间的权重)。所述一个或多个第一网络权重(输入层、第一隐藏层序列和输出层中的相邻层之间的权重)是通过在第一训练中利用与第一区域相关联的第一乘车订单调度数据(例如,源城市)训练第一神经网络算法得到的。第二神经网络算法包括输入层、第二隐藏层序列(例如,图3F中CFPT的层B1、B2和B3的目标城市块1)、第一隐藏层序列(例如,图3F中的CFPT的层A1、A2和A3的源城市块2O)以及输出层。第一序列中的每一个隐藏层具有对应地耦合到第二序列中的一个隐藏层和输出层的输出。对于输入层,第二乘车订单调度数据包括(1)用于输入到第二隐藏层序列中的一个或多个第二状态输入(例如,输入子空间s)和(2)用于输入到第一隐藏层序列中一个或多个第一状态输入(例如输入子空间f)。第二序列和第一序列可以具有相同数量的隐藏层。在一些实施例中,所述第二状态输入包括与区域相关的状态输入(层之间的权重将根据应用训练数据的区域而不同),所述第一状态输入包括与区域无关的状态输入(层之间的权重不会因应用训练数据的区域而不同)。
在一些实施例中,所述第一序列包括一个或多个第一网络权重,在第二训练中所述一个或多个第一网络权重将被冻结,并且第一序列中的每个隐藏层的输出将基于第一序列中的对应隐藏层和对应的第一网络权重来确定。因此,在传递输入f之后,具有源城市数据的第一序列中先前学习的任务可以横向传输以便于利用目标城市数据训练第二序列。例如,在CFPT中,第二序列可以以随机权重(在训练期间被改变)开始。第一序列可能具有源城市网络先前训练的权重,但会用输入f进行更新。更新后的结果用于训练第二序列。例如,层B2可以从以下各项总和的函数中获得:(1)层B1乘以可训练权重以及(2)层A1乘以更新后的权重。
在一些实施例中,第一神经网络算法具有与第二神经网络算法相同的网络结构。所述第一神经网络算法包括另一输入层、第三隐藏层序列、第四隐藏层序列和另一输出层。第三序列中的每个隐藏层具有对应地耦合到第四序列中的一个隐藏层和所述另一输出层的另一个输出。对于所述另一输入层,所述第一乘车订单调度数据包括(1)用于输入到所述第三隐藏层序列中的一个或多个第三状态输入以及(2)用于输入到所述第四隐藏层序列中的一个或多个第四状态输入。在所述第一训练之前,所述一个或多个第一网络权重是所述另一输入层、所述第三层序列和所述另一输出层中的相邻层之间的可训练权重,并且在第一次训练之后,训练后的一个或多个第一网络权重相应地转移到用于第二训练的第一序列。源城市网络与目标城市网络之间的类似网络结构可以通过映射到目标城市网络来确保源城市网络的训练权重能随时用于另一训练。
在一些实施例中,图3B中的相同结构可应用于CFPT。也就是说,输入层可以包含状态输入和动作输入。例如,第二神经网络算法还包括输出到输出层的第三隐藏层序列(未示出),对于输入层,第二乘车订单调度数据还包括用于输入到第三隐藏层序列中的一个或多个动作输入。即,对于图3F中的CFPT方法,第三隐藏层序列可以类似于第二隐藏层序列:输入层在一端耦合到第三序列并且第三序列的另一端耦合到输出层。类似地,动作输入可以在第三序列中向下传递隐藏层,并且可以基于第一、第二和第三序列的最后层来获得输出层。或者,动作输入(根据目的地位置)可以包括在状态输入s=(s0,s1)中。在一些实施例中,动作输入与第二乘车订单调度数据相关联并且与停留、重新定位或接受分配中的至少一个相关联。状态输入与以下各项中的至少一个相关联:模拟车辆的地理坐标、时间或在距离地理坐标的距离范围内的需求、供应和订单履行的统计。输出层包括与累积奖励相关联的状态动作值输出。
参考图3F,在一些实施例中,第二隐藏层序列包括层Bx,X是1,2,...N。输入层耦合到层B1,层BN的输出耦合到输出层,层Bx的输出作为输入耦合到层Bx+1,除了层BN之外。第一隐藏层序列包括层Ax,输入层耦合到层A1,层AN的输出耦合到输出层,层Ax的输出作为输入耦合到到层Ax+1,除了层AN之外,层Ax的输出作为输入耦合到层Bx+1,除了层AN之外。层Bx基于层Ax-1和层Bx-1获得,输出层基于层AN和层BN获得的。输入层和层B1之间、第二序列中相邻层之间以及层BN和输出层之间的耦合都与第二网络权重相关联。输入层与层A1之间、第一序列中相邻层之间以及层AN与输出层之间的耦合都与第一网络权重相关联。
在一些实施例中,为了训练第一神经网络算法,第一网络权重将被更新以获得第一策略,所述第一策略最大化关于第一区域的累积奖励。为了训练第二神经网络算法,第二网络权重将被更新以获得第二策略,所述第二策略最大化关于第二区域的累积奖励。
在一些实施例中,本发明所公开的调度算法的性能是经过实证评估的,表明所公开的DQN策略网络能够优化订单收入。例如,性能评估显示算法2能够学习优化订单收入。下面介绍包括实验设置和结果的评估过程。对于评估过程,历史数据集被分为训练集(2/3)和测试集(1/3)。每个小批量可以看作是Q(状态动作)值函数中的一小组采样点。使用折扣因子γ=0.9。所有状态矢量都用它们的总体均值和标准偏差进行归一化。这种预处理对于稳定的训练是必需的。对于训练结果,使用1000场景的滑动窗口来计算奖励曲线,并且总训练持续时间是40000个场景。对于测试结果,训练期间设置了五个测试点:0%,25%,50%,75%,100%。在每个训练检查点,对当前网络进行快照并在测试数据集上评估对于具有随机初始状态的100个场景中的五次试验。
在一些实施例中,对于单一代理评估环境,由于转换数据完全是历史的并且不一定形成完整的场景,因此从过去的行程数据构建单个驾驶员调度环境,以直接和明确地评估从学习到的值函数生成的策略。假设驾驶员在目的地让乘客下车后,将从先前目的地附近开始为驾驶员分配新的出行请求。在扩大的搜索动作之后,搜索空间可以根据需要进行扩充,以覆盖最后一个下车区域周围没有历史行程的情况。下一步是由动作搜索输出中的给定策略选择的,这可能是收费行程或等待或重新定位动作的组合。如果动作涉及历史行程,与动作相关的奖励是实际行程费用,否则奖励为零(用于等待或重新定位)。缩放的奖励百分比(对于给定城市具有相同的归一化常数)被用作性能度量。模拟运行多个场景(天),累计获得的奖励在场景中计算和平均。为了绘制训练曲线,代理通过与训练步骤相同的速度使用关于所学习到的Q值函数的贪心策略逐步通过该环境。除了原始的时空输入空间之外,上下文特征可以有益于训练,如图3G所示。因此在接下来,扩展状态空间将用作网络输入。
在关于基线DQN训练的一些实施例中,本发明所公开的用于Q值函数的神经网络将利用以A、B、C和D表示的中国四个城市的一个月的行程数据进行训练。它们跨越不同大小的人口和地理区域,如表1中所示。
表1
城市 | 大小 | 区域 |
A | 大型 | 东北 |
B | 小型 | 东南 |
C | 中型 | 东南 |
D | 大型 | 西北 |
图3J示出了DQN和策略评估的训练曲线,其中前者是最大化累积奖励,而后者是学习评估当前生成如上所述的用于单一代理评估环境的历史数据的策略。具有标准偏差误差线的测试曲线显示在图3K中。“历史平均值”表示来自测试数据集的随机抽样转换的平均收入,其表明了真实调度系统的性能。
从所示的性能曲线可以看出,本发明所公开的算法2能够学习优化场景订单收入。图3H显示训练小批量的平均Q值,其中观察到所有情况下值函数的收敛。如前面所讨论的,120个随机采样的位置单元的状态值在图3I中由的时间id标绘。每个点表示由γ=0.9折扣后的潜在未来奖励,所以状态值是在衰退的未来范围内计算的。状态值函数正确地捕获折扣累积奖励的时间空间中递减的单调性。然而,不同城市的学习结果或改善情况并不相同。在本发明所公开的实验中,对于具有较少行程数据的那些较小的城市(由于这些区域中的用户较少),例如,如图3J(b)中所示的B,当DQN和策略评估进行比较时,优化改进不如C或D这样的大型城市意义重大。这是因为在这些订单需求较轻的城市,出行模式要简单得多,目前的订单调度系统几乎可以实现驾驶员与客户之间的最佳匹配,这意味着车辆改进没有太多优化余量可用。然而,在调度负载较重、行程数据量较大的城市,优化改进更为明显,如图3J(d)中所示的D。
在关于转移改进评估的一些实施例中,为了在目标城市上实现稳健和有效的网络训练,将执行两种类型的转移实验:空间转移和时间转移。对于空间转移,在上述四个实验城市中,城市A被用作源城市,而其他三个被用作目标城市。对于时间转移,将用一个月的数据训练的城市模型用作源,而将用另一个月的数据进行训练的同一城市的模型用作目标。先前基线DQN训练中训练后的网络权重将用作先验知识。在每种类型的转移实验中,将讨论三种转移方法的学习性能:微调、渐进网络和相关特征递进转移(CFPT)。
训练曲线和测试检查点如图3L所示。为了突出显示结果,在真实调度系统中从历史行程数据中采集的累计场景奖励的平均值被突出显示。与简朴DQN训练相比,本发明所公开方法的改进包括:1)目标城市将受益于起步阶段,这是起步时增加的初始性能;2)学习更有效率,这意味着在训练期间收敛会更早发生;3)收敛性能更好。但是,这三种方法的有效性是不同的。特别是,CFPT将优于其他两种转移方法,表明如果与绝对时空状态(l,t)分开使用,在线特征f将对不同城市的学习适应性更有帮助。原始渐进网络的缺点是它不考虑所有状态/特征元素之间的相关性差异。由于微调的严重的遗忘属性,随着权重的更新,先验知识将很容易被遗忘,观察到的收敛性能的改善并不明显。时间传递结果在图3M中示出。即使转移在同一城市进行,CFPT也显著优于基线微调方法,该方法直接复制上一个月的网络并继续进行训练。
为了深入了解知识转移如何帮助改善对于目标城市的训练,训练期间每个批次的平均Q值将被比较。以城市D为例,Q值曲线之间的明显区别如图3N所示。对于原始的DQN训练,即使平均Q值几乎收敛,仍然存在明显的方差。相比之下,对于CFPT,批次的方差要小得多。这种差异可能表明,通过前一次训练网络的横向连接,目标训练中“梯度下降”的方向更加明确。换句话说,传递先验知识可以有效地指导学习方向。
与简朴DQN训练相比,本发明所公开的关于CFPT的系统和方法至少在以下方面更为有利:1)目标城市将受益于起步时增加的初始表现,2)学习更加有效率,这意味着收敛在训练期间会更早发生,并且3)收敛性能更好。但是,这三种方法的有效性是不同的。例如,CFPT优于其他两种传输方法(微调方法和渐进网络方法),表明如果与绝对时空状态(l,t)分开使用,在线特征f将对不同城市的学习适应性更有帮助。与原始的DQN训练相比,CFPT训练批次的方差要小得多。这种差异可能表明,通过前一次训练网络的横向连接,目标训练中“梯度下降”的方向更加明确。换句话说,传递先验知识可以有效地指导学习方向。如前所述,由于不同城市之间的问题多样性,车辆平台需要优化大量的策略模型。考虑到计算成本,转移学习被用来帮助提高学习适应性和效率。通过将源城市的训练后的网络作为先验知识重复使用,多个目标城市的模型性能与未事先学习相比有显着提高。传递相关的先验知识(例如来自源城市)提供了一种有效的解决方案,以促进RL的学习过程,并有助于提高目标城市的训练性能。
如文中所描述的,车辆调度平台可以使用自适应的基于DQN的优化方法来确定订单调度。与具有可列举输出动作的简朴DQN不同,连续动作空间(行程目的地)可以被编码为输入状态空间的一部分,并且公开了相应的动作搜索方法。所公开的方法能够从单个驾驶员的角度或从多个驾驶员的角度来优化时空问题。由于各种城市交通模式带来的多样化学习结果,学习过程在跨不同的城市中是很重要的。作为解决这种差异的一种解决方案,提供了一种基于在线特征的自适应方法CFPT。结果证明,重复使用训练过的模型可以加快学习速度,并且提高处理新模式时的鲁棒性。特别是,通过关注不同领域的相关特征,CFPT实现了最有效的转移,并且优于其他现有方法。
图4A是根据本发明的多个实施例的所示的示例性方法400的流程图。方法400可以在各种环境中实现,包括例如图1所示的系统100。示例性方法400可以由系统102(例如,处理器104,存储器106)或计算设备111(例如,与车辆驾驶员相关联的移动电话)的一个或多个组件来实现。例如,非暂时性计算机可读存储介质可存储指令,所述指令在由处理器执行时使处理器执行方法400(也称为乘车订单调度方法)。示例性方法400可以由与系统102类似的多个系统来实现。下面呈现的方法400的操作旨在是说明性的。取决于实施方式,示例性方法400可以包括以各种顺序或并行执行的附加、更少或替代步骤。
在402处,可以将关于车辆的位置和时间(例如,车辆开始寻找乘车订单的时间或者在完成乘车订单之后的时间)的信息输入到经过训练的第二神经网络算法。在404处,基于从训练后的第二神经网络算法产生的策略,可以获得车辆的动作信息。例如,所述动作信息可以包括:车辆停留的当前位置(例如,当可能很快在当前位置接收到乘车订单时)、车辆重新定位(例如,至一个更有可能接受到乘车订单或具有更高收益的乘车订单的位置)或接受乘车订单(例如,当一个或多个乘车订单当前可用时)。用一个或多个第一网络权重以及第二次训练中的与第二区域相关联的第二乘车订单调度数据来训练第二神经网络算法以获得一个或多个第二网络权重。所述一个或多个第一网络权重是通过利用在第一次训练中用与第一区域相关联的第一乘车订单调度数据训练第一神经网络算法而获得的。第二神经网络算法包括输入层、第一隐藏层序列、第二隐藏层序列和输出层。第一序列中的每个隐藏层具有对应地耦合到第二序列中的一个隐藏层和输出层的输出。对于输入层,第二乘车订单调度数据包括(1)用于输入到第二隐藏层序列中的一个或多个第二状态输入和(2)用于输入到第一隐藏层序列中的一个或多个第一状态输入。
在一些实施例中,第二神经网络算法包括深度神经网络和强化学习算法。第二神经网络算法包括一个或多个动作输入、一个或多个状态输入以及状态动作值输出。第一神经网络算法可以类似于第二神经网络算法,除了第一神经网络算法可能不具有渐进网络。也就是说,第一神经网络算法可能没有传递学习。第一神经网络算法可以用这里描述的具有或不具有动作搜索的深度Q网络或另一种替代方法来训练。
图4B是根据本发明的的多个实施例的所示的示例性方法450的流程图。方法450可以在各种环境中实现,包括例如图1所示的系统100。示例性方法450可以由系统102(例如,处理器104,存储器106)或计算设备111(例如,与车辆驾驶员相关联的移动电话)的一个或多个组件来实现。例如,非暂时性计算机可读存储介质可存储指令,所述指令在由处理器执行时使处理器执行方法450(也称为乘车订单调度方法)。示例性方法450可以由与系统102类似的多个系统来实现。下面呈现的方法450的操作旨在是说明性的。取决于实施方式,示例性方法450可以包括以各种顺序或并行执行的附加、更少或替代步骤。下面描述的各种模块可能已经被训练,例如通过上面所讨论的方法
在452处,可获得输入到训练后的第二神经网络算法的车辆的位置信息和时间信息。在454处,基于从训练后的第二神经网络算法产生的策略,可以获得车辆的动作信息,所述动作信息包括:车辆停留的当前位置、重新定位车辆或接受乘车订单。在456处,可以使动作信息在与车辆的驾驶员相关联的设备上播放(例如,显示在移动电话的屏幕上、作为语音播放)。
这里描述的技术由一个或多个专用计算设备来实现。所述专用计算设备可以是硬连线的以执行这些技术,或者可以包括电路或数字电子设备,诸如一个或多个专用集成电路(ASICs)或现场可编程门阵列(FPGAs),被持续编程来执行这些技术,或者可以包括一个或多个硬件处理器,该一个或多个硬件处理器被编程为依照固件、内存、其他存储器或其组合中的程序指令来执行这些技术。这些专用计算设备还可以将自定义硬连线逻辑,ASICs或FPGAs与自定义编程组合以完成这些技术。所述专用计算设备可以是台式计算机系统、服务器计算机系统、便携式计算机系统、手持设备、联网设备或其他设备或包含硬连线和/或程序逻辑以实现该技术的任何设备的组合。计算设备通常由操作系统软件控制和协调。常规操作系统控制和调度用于执行的计算机程序、执行存储管理、提供文件系统、网络、I/O服务以及提供用户界面功能诸如图形用户界面(“GUI”)等等。
图5示出了可以在其上实现本文描述的任何实施例的计算机系统500的框图。系统500可对应于上述系统102。计算机系统500包括用于传送信息的总线502或其他通信机制,与总线502耦合的用于处理信息的一个或多个硬件处理器504。硬件处理器504可以是例如一个或多个通用微处理器。处理器504可以对应于上述的处理器104
计算机系统500还包括诸如随机存取存储器(RAM)、高速缓存和/或其他动态存储设备的主内存506,耦合到总线502用于存储要由处理器504执行的信息和指令。所述主内存506还可以用于在处理器504执行指令期间存储临时变量或其他中间信息。当存储在处理器504可访问的存储介质中时,这些指令将致使计算机系统500成为专用机器,其被定制为执行指令中指定的操作。计算机系统500还包括耦合到总线502的只读存储器(ROM)508或其他静态存储设备,用于存储用于处理器504的静态信息和指令。存储设备510,诸如磁盘、光盘或USB拇指驱动器U盘(闪存驱动器)等被提供并耦合到总线502以存储信息和指令。主内存506、ROM 508和/或存储装置510可以对应于上述的存储器106。
计算机系统500可以使用定制的硬连线逻辑、一个或多个ASICs或FPGAs、固件和/或程序逻辑来实现本文描述的技术,其与计算机系统结合使得计算机系统500成为专用机器。根据一个实施例,本文所描述的技术由计算机系统500响应于处理器504执行包含在主内存506中的一个或多个指令的一个或多个序列来执行。这样的指令可以从另一个存储器介质读入主内存506,例如存储设备510。包含在主内存506中的指令序列的执行导致处理器504执行本文描述的处理步骤。在替代的实施例中,可以使用硬连线电路来代替软件指令或与软件指令组合。
主内存506、ROM508和/或存储设备510可以包括非暂时性存储介质。这里使用的术语“非暂时性介质”和类似术语是指存储使机器以特定方式操作的数据和/或指令的任何介质。这种非暂时性介质可以包括非易失性介质和/或易失性介质。非易失性介质包括,例如光盘或磁盘,比如存储设备510。易失性介质包括动态存储器,比如主内存506。非易失性介质的常见形式包括,例如软盘、柔性磁盘、硬盘、固态硬盘、磁带或任何其他磁性数据存储介质、CD-ROM、任何其他光学数据存储介质、任何打孔模式的物理介质、RAM、PROM和EPROM、FLASH-EPROM、NVRAM、任何其他存储器芯片或盒式磁带以及相同的联网版本
计算机系统500还包括耦合到总线502的通信端口518。通信端口518提供耦合到连接一个或多个本地网络的一个或多个网络链路的双向数据通信。例如,通信端口518可以是综合业务数字网(ISDN)卡、电缆调制解调器、卫星调制解调器或向相应类型的电话线提供数据通信连接的调制解调器。又例如,通信端口518可以是局域网(LAN)卡,以提供到兼容的LAN(或与WAN通信的WAN组件)的数据通信连接。无线连接也可以被实现。在任何这样的实现中,通信端口518发送和接收承载表示各种类型信息的数字数据流的电信号、电磁信号或光信号。
计算机系统500可以通过网络、网络连接和通信端口口518发送消息和接收包括程序代码的数据。在互联网示例中,服务器可以通过互联网、ISP、本地网络和通信端口518发送针对应用程序的请求代码。
所接收的代码可以在由处理器504接收时执行,和/或存储在存储设备510或其他非易失性存储器中以供后续执行。
前述部分中每个流程、方法和算法可以体现在由一个或多个计算机系统或包括计算机硬件的计算机处理器执行的代码模块中,并且完全或部分自动化。所述流程程和算法可以部分地或全部地在专用电路中实现
上述各种特征和流程可以彼此独立地使用,或者可以以各种方式组合。所有可能的组合和次级组合均旨在落入本公开的范围内。另外,在一些实现中可以省略某些方法或流程块。然后,本文描述的方法和流程也不限于任何特定的序列,并且与其相关的块或状态可以以适当的其他序列执行。例如,所描述的块或状态可以以不同于具体公开的顺序执行,或者多个块或状态可以在单个块或状态中组合。示例块或状态可以串行、并行或以某种其他方式执行。可以将块或状态添加到所公开的示例实施例或从其中移除。这里描述的示例性系统和部件可以不同于所描述的来配置。例如,与公开的示例实施例相比,可以添加、移除或重新排列元素。
这里描述的示例性方法的各种操作可以至少部分地通过算法来执行。所述算法可以包含在存储在存储器中的程序代码或指令中(例如,上述非暂时性计算机可读存储介质)。这样的算法可以包括机器学习算法。在一些实施例中,机器学习算法可能没有明确地编程计算机以执行一个功能,但可以从训练数据中学习以制作执行该功能的预测模型。
本文描述的示例性方法的各种操作可以至少部分地由临时配置(例如,通过软件)或永久配置为执行相关操作的一个或多个处理器来执行。不管是临时配置还是永久配置,这样的处理器可以构成处理器实现的引擎,其操作来执行本文描述的一个或多个操作或功能
类似地,这里描述的方法可以至少部分地由处理器实现,特定的一个或多个处理器是硬件的示例。例如,方法的至少一些操作可以由一个或多个处理器或处理器实现的引擎执行。此外,一个或多个处理器还可以操作以支持“云计算”环境中的相关操作的执行或“软件即服务”(SaaS)。例如,至少一些操作可以由一组计算机(作为包括处理器的机器的示例)执行,这些操作可以经由网络(例如,互联网)并且经由一个或多个适当的接口(例如,应用程序接口(API))访问。
某些操作的性能可以分布在多个处理器中,不仅驻留在单个机器中,而且还部署在多个机器上。在一些示例实施例中,处理器或处理器实现的引擎可以位于单个地理位置(例如,在家庭环境、办公室环境或服务器机群内)。在其他示例实施例中,处理器或处理器实现的引擎可以分布在多个地理位置
在整个说明书中,多个实例可以实现被描述为单个实例的组件、操作或结构。尽管一个或多个方法的单独操作被图示和描述为单独的操作,但是单个操作中的一个或多个可以同时执行,并且不要求以所示的顺序执行操作。在示例配置中作为独立组件呈现的结构和功能可以实现为组合的结构或组件。类似地,呈现为单个组件的结构和功能可以被实现为单独的组件。这些以及其他变化、修改、添加和改进均落入本文主题的范围内。
虽然已经参考具体示例实施例描述了主题的概述,但是可以对这些实施例进行各种修改和改进而不偏离本发明所公开的实施例的更广范围。本文的主题的这些实施例可以单独地或共同地通过术语“发明”被提及,仅仅是为了方便,并且不意图将本申请的范围自愿地限制为任何单个披露或概念,如果实际上披露了不止一个。
本文所示的实施例被足够详细地描述以使本领域技术人员能够实践所公开的教导。其他实施例可以被使用并从中导出,使得可以在不脱离本发明公开的范围的情况下进行结构和逻辑上的替换和改变。因此,具体实施方式不应被视为具有限制意义,并且各种实施例的范围仅由所附权利要求以及这些权利要求所享有的等同物的全部范围来限定。
这里描述的和/或附图中描述的流程图中的任何流程描述、元素或块应当被理解为可能代表包括用于实现流程中特定逻辑功能或步骤的一个或多个可执行指令的模块、段或代码的一部分。替代实施方式被包括在本文描述的实施例的范围内,其中可以删除某些元件或功能,以不按所示或所讨论的顺序中执行,取决于所涉及的功能,包括大体上同时地或以相反的顺序,就如本领域技术人员所理解的那样。
如本文所使用的,术语“或”可以被解释为包含性或排他性意义。此外,可以为这里描述的作为单个实例的资源、操作或结构提供多个实例。另外,各种资源、操作、引擎和数据存储之间的边界是任意的,特定操作在具体说明性配置的上下文中进行说明。功能的其他分配可以被预期并且其可以落入本公开的各种实施例的范围内。通常,在示例配置中呈现为单独资源的结构和功能可以实现为组合结构或资源。类似地,呈现为单个资源的结构和功能可以被实现为单独的资源。这些和其他变形、修改、添加和改进落入由所附权利要求表示的本公开的实施例的范围内。因此,说明书和附图被认为是说明性的而不是限制性的。
除非另外具体说明,或者在所使用的上下文中以其他方式理解的条件语言,除其他之外,诸如“可以”、“能够”、“也许”或“可能”通常旨在表达某些实施例包括,而其他实施例不包括的某些特征、元件和/或步骤。因此,这样的条件语言通常并不意味着以任何方式要求的一个或多个实施例的特征、元素和/或步骤,或者一个或多个实施例必然包括用于在具有或不具有用户输入或提示的情况下决定是否这些特征、元件和/或步骤包括在任何特定实施例中或将在任何特定实施例中执行。
Claims (14)
1.一种用于乘车订单调度的方法,包括:
获取关于车辆的位置信息和时间信息以输入到训练后的第二神经网络算法中;以及
基于从训练后的第二神经网络算法产生的策略,获取车辆的动作信息,所述动作信息包括:停留在车辆的当前位置,重新定位车辆或接受乘车订单,其中,所述第二神经网络算法由一个或多个第一网络权重以及与第二区域相关联的第二乘车订单调度数据训练,以获取一个或多个第二网络权重;
所述一个或多个第一网络权重通过在第一训练中利用与第一区域相关联的第一乘车订单调度数据训练第一神经网络算法获取;其中,所述第一网络权重被更新以获得第一策略,所述第一策略最大化关于所述第一区域的累积奖励,所述第二网络权重被更新以获得第二策略,所述第二策略最大化关于所述第二区域的所述累积奖励;
所述第二神经网络算法包括输入层、第一隐藏层序列、第二隐藏层序列和输出层;
所述第一隐藏层序列中的每个隐藏层具有相应地耦合到所述第二隐藏层序列中的一个所述隐藏层和所述输出层的输出;以及
对于所述输入层,所述第二乘车订单调度数据包括(1)用于输入到所述第二隐藏层序列中的一个或多个第二状态输入和(2)用于输入到所述第一隐藏层序列中的一个或多个第一状态输入,第一状态与起点对应,第二状态与目的地对应;其中,所述第二状态输入包括时空矢量,所述时空矢量包括历史地理坐标和相关联的时间戳;以及所述第一状态输入包括时空位移矢量以及一个或多个实时上下文特征;所述时空位移矢量包括模拟车辆的地理坐标变化和时间变化,所述实时上下文特征包括以下至少一个:实时数量的闲置驾驶员的实时数量;或在一个过去时间段内创建的实时订单数量;
所述第二神经网络算法的训练方式包括:将深度神经网络和强化学习算法结合,执行扩展动作搜索,并且对于每个动作的动作值的多个输出,输出的最大值用于更新所述第二神经网络算法,获得所述训练后的所述第二神经网络算法。
2.根据权利要求1所述的方法,其特征在于,其中:
所述第一神经网络算法与所述第二神经网络算法具有相同的网络结构;
所述第一神经网络算法包括另一个输入层、第三隐藏层序列、第四隐藏层序列和另一个输出层;
第三隐藏层序列中的每个隐藏层具有相应地耦合到第四隐藏层序列中的一个隐藏层和所述另一个输出层的另一个输出;
对于所述另一个输入层,所述第一乘车订单调度数据包括(1)用于输入到所述第三隐藏层序列中的一个或多个第三状态输入以及(2)用于输入到所述第四隐藏层序列中的一个或多个第四状态输入;
在所述第一训练之前,所述一个或多个第一网络权重是所述另一个输入层、所述第三隐藏层序列和所述另一个输出层中的相邻层之间的可训练权重;以及
在第一训练之后,训练后的一个或多个第一网络权重相应地转移到所述第一隐藏层序列用于第二训练。
3.根据权利要求1所述的方法,其特征在于,其中:
所述第二状态输入包括与区域相关的状态输入;以及
所述第一状态输入包括与区域无关的状态输入。
4.根据权利要求1所述的方法,其特征在于,其中:
所述第二隐藏层序列包括层Bx,X为1、2、3…N;
所述输入层与层B1耦合;
层BN的输出耦合到所述输出层;
层Bx的输出作为一个输入耦合到层Bx+1,除了层BN以外;
所述第一隐藏层序列包括层Ax;
所述输入层与层A1耦合;
层AN的输出耦合到所述输出层;
层Ax的输出作为一个输入耦合到层Ax+1,除了层AN以外;
层Ax的输出作为一个输入耦合到层Bx+1,除了层AN以外;
所述输入层和层B1之间、第二隐藏层序列中相邻层之间以及层BN和所述输出层之间的耦合与所述第二网络权重相关联;以及
所述输入层和层A1之间、第一隐藏层序列中相邻层之间以及层AN和所述输出层之间的耦合与所述第一网络权重相关联。
5.根据权利要求4所述的方法,其特征在于,其中:
层Bx基于层Ax-1和层Bx-1获取;
所述输出层基于层AN和层BN获取。
6.根据权利要求1所述的方法,其特征在于,其中:
所述策略最大化车辆驾驶员的累积奖励。
7.一种用于乘车订单调度的系统,包括处理器和存储指令的非暂时性计算机可读存储介质,所述指令在由所述处理器执行时使所述系统执行一种方法,所述方法包括:
获取关于车辆的位置信息和时间信息以输入到训练后的第二神经网络算法中;以及
基于从训练后的第二神经网络算法产生的策略,获取车辆的动作信息,所述动作信息包括:停留在车辆的当前位置,重新定位车辆或接受乘车订单,其中,
所述第二神经网络算法由一个或多个第一网络权重以及与第二区域相关联的第二乘车订单调度数据训练,以获取一个或多个第二网络权重;
所述一个或多个第一网络权重通过在第一训练中利用与第一区域相关联的第一乘车订单调度数据训练第一神经网络算法获取;其中,所述第一网络权重被更新以获得第一策略,所述第一策略最大化关于所述第一区域的累积奖励,所述第二网络权重被更新以获得第二策略,所述第二策略最大化关于所述第二区域的所述累积奖励;
所述第二神经网络算法包括输入层、第一隐藏层序列、第二隐藏层序列和输出层;
第一隐藏层序列中的每个隐藏层具有相应地耦合到所述第二隐藏层序列中的一个所述隐藏层和所述输出层的输出;以及
对于输入层,所述第二乘车订单调度数据包括(1)用于输入到所述第二隐藏层序列中的一个或多个第二状态输入和(2)用于输入到所述第一隐藏层序列中的一个或多个第一状态输入,第一状态与起点对应,第二状态与目的地对应;其中,所述第二状态输入包括时空矢量,所述时空矢量包括历史地理坐标和相关联的时间戳;以及所述第一状态输入包括时空位移矢量以及一个或多个实时上下文特征;所述时空位移矢量包括模拟车辆的地理坐标变化和时间变化,所述实时上下文特征包括以下至少一个:实时数量的闲置驾驶员的实时数量;或在一个过去时间段内创建的实时订单数量;所述第二神经网络算法的训练方式包括:将深度神经网络和强化学习算法结合,执行扩展动作搜索,并且对于每个动作的动作值的多个输出,输出的最大值用于更新所述第二神经网络算法,获得所述训练后的所述第二神经网络算法。
8.根据权利要求7所述的系统,其特征在于,其中:
所述第一神经网络算法与所述第二神经网络算法具有相同的网络结构;
所述第一神经网络算法包括另一个输入层、第三隐藏层序列、第四隐藏层序列和另一个输出层;
第三隐藏层序列中的每个隐藏层具有相应地耦合到第四隐藏层序列中的一个隐藏层和所述另一个输出层的另一个输出;
对于所述另一个输入层,所述第一乘车订单调度数据包括(1)用于输入到所述第三隐藏层序列中的一个或多个第三状态输入以及(2)用于输入到所述第四隐藏层序列中的一个或多个第四状态输入;
在所述第一训练之前,所述一个或多个第一网络权重是所述另一个输入层、所述第三隐藏层序列和所述另一个输出层中的相邻层之间的可训练权重;以及
在第一训练之后,训练后的一个或多个第一网络权重相应地转移到所述第一隐藏层序列用于第二训练。
9.根据权利要求7所述的系统,其特征在于,其中:
所述第二状态输入包括与区域相关的状态输入;以及
所述第一状态输入包括与区域无关的状态输入。
10.根据权利要求7所述的系统,其特征在于,其中
所述第二隐藏层序列包括层Bx,X为1、2、3…N;
所述输入层与层B1耦合;
层BN的输出耦合到所述输出层;
层Bx的输出作为一个输入耦合到层Bx+1,除了层BN以外;
所述第一隐藏层序列包括层Ax;
所述输入层与层A1耦合;
层AN的输出耦合到所述输出层;
层Ax的输出作为一个输入耦合到层Ax+1,除了层AN以外;
层Ax的输出作为一个输入耦合到层Bx+1,除了层AN以外;
所述输入层和层B1之间、第二隐藏层序列中相邻层之间以及层BN和所述输出层之间的耦合与所述第二网络权重相关联;以及
所述输入层和层A1之间、第一隐藏层序列中相邻层之间以及层AN和所述输出层之间的耦合与所述第一网络权重相关联。
11.根据权利要求10所述的系统,其特征在于,其中:
层Bx基于层Ax-1和层Bx-1获取;
所述输出层基于层AN和层BN获取。
12.根据权利要求7所述的系统,其特征在于,其中:
所述策略最大化车辆驾驶员的累积奖励。
13.一种非暂时性计算机可读存储介质,用于存储指令,所述指令在由处理器执行时使所述处理器执行乘车订单调度方法,所述方法包括:
获取关于车辆的位置的信息和输入到训练后的第二神经网络算法中的时间;
基于从训练后的第二神经网络算法产生的策略,获取车辆的动作信息,所述动作信息包括:停留在车辆的当前位置,重新定位车辆或接受乘车订单;以及
使所述动作信息在与车辆的驾驶员相关联的设备上播放,其中:
所述第二神经网络算法由一个或多个第一网络权重以及与第二区域相关联的第二乘车订单调度数据训练,以获取一个或多个第二网络权重;
所述一个或多个第一网络权重通过在第一训练中利用与第一区域相关联的第一乘车订单调度数据训练第一神经网络算法获取;其中,所述第一网络权重被更新以获得第一策略,所述第一策略最大化关于所述第一区域的累积奖励,所述第二网络权重被更新以获得第二策略,所述第二策略最大化关于所述第二区域的所述累积奖励;
所述第二神经网络算法包括输入层、第一隐藏层序列、第二隐藏层序列和输出层;
所述第一隐藏层序列中的每个隐藏层具有相应地耦合到所述第二隐藏层序列中的一个所述隐藏层和所述输出层的输出;以及
对于输入层,所述第二乘车订单调度数据包括(1)用于输入到所述第二隐藏层序列中的一个或多个第二状态输入和(2)用于输入到所述第一隐藏层序列中的一个或多个第一状态输入,第一状态与起点对应,第二状态与目的地对应;其中,所述第二状态输入包括时空矢量,所述时空矢量包括历史地理坐标和相关联的时间戳;以及所述第一状态输入包括时空位移矢量以及一个或多个实时上下文特征;所述时空位移矢量包括模拟车辆的地理坐标变化和时间变化,所述实时上下文特征包括以下至少一个:实时数量的闲置驾驶员的实时数量;或在一个过去时间段内创建的实时订单数量;
所述第二神经网络算法的训练方式包括:将深度神经网络和强化学习算法结合,执行扩展动作搜索,并且对于每个动作的动作值的多个输出,输出的最大值用于更新所述第二神经网络算法,获得所述训练后的所述第二神经网络算法。
14.根据权利要求13所述的非暂时性计算机可读存储介质,其特征在于,其中:
所述第一神经网络算法与所述第二神经网络算法具有相同的网络结构;
所述第一神经网络算法包括另一个输入层、第三隐藏层序列、第四隐藏层序列和另一个输出层;
第三隐藏层序列中的每个隐藏层具有相应地耦合到第四隐藏层序列中的一个隐藏层和所述另一个输出层的另一个输出;
对于所述另一个输入层,所述第一乘车订单调度数据包括(1)用于输入到所述第三隐藏层序列中的一个或多个第三状态输入以及(2)用于输入到所述第四隐藏层序列中的一个或多个第四状态输入;
在所述第一训练之前,所述一个或多个第一网络权重是所述另一个输入层、所述第三隐藏层序列和所述另一个输出层中的相邻层之间的可训练权重;以及
在第一训练之后,训练后的一个或多个第一网络权重相应地转移到所述第一隐藏层序列用于第二训练。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2018/089931 WO2019232693A1 (en) | 2018-06-05 | 2018-06-05 | System and method for ride order dispatching |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111033535A CN111033535A (zh) | 2020-04-17 |
CN111033535B true CN111033535B (zh) | 2024-03-26 |
Family
ID=68769725
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880001535.7A Active CN111033535B (zh) | 2018-06-05 | 2018-06-05 | 用于乘车订单调度的系统和方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11514543B2 (zh) |
CN (1) | CN111033535B (zh) |
WO (1) | WO2019232693A1 (zh) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11568342B1 (en) * | 2019-08-16 | 2023-01-31 | Lyft, Inc. | Generating and communicating device balance graphical representations for a dynamic transportation system |
US11972378B2 (en) * | 2020-03-02 | 2024-04-30 | Ford Global Technologies, Llc | Vehicle dispatch using machine learning |
CN111432396B (zh) * | 2020-03-09 | 2023-02-21 | 安徽继远软件有限公司 | 保障NB-IoT可靠性的eSIM卡网络的配置方法、系统及存储介质 |
CN111626489B (zh) * | 2020-05-20 | 2023-04-18 | 杭州安恒信息技术股份有限公司 | 基于时序差分学习算法的最短路径规划方法和装置 |
EP3971780A1 (en) * | 2020-07-24 | 2022-03-23 | Tata Consultancy Services Limited | Method and system for dynamically predicting vehicle arrival time using a temporal difference learning technique |
CN112256653B (zh) * | 2020-11-06 | 2024-02-02 | 网易(杭州)网络有限公司 | 一种数据采样方法和装置 |
CN112396501B (zh) * | 2020-12-10 | 2024-03-19 | 中国科学院深圳先进技术研究院 | 一种基于交互式强化学习的订单分派方法及系统 |
CN112561104A (zh) * | 2020-12-10 | 2021-03-26 | 武汉科技大学 | 基于强化学习的车辆共享服务订单派遣方法及系统 |
CN112712251B (zh) * | 2020-12-28 | 2023-09-12 | 珠海港信息技术股份有限公司 | 一种应用于驳船管理系统中的船舶智能调度方法 |
CN112700049A (zh) * | 2020-12-30 | 2021-04-23 | 北京邮电大学 | 一种订单派发方法及装置 |
US20220261627A1 (en) * | 2021-02-12 | 2022-08-18 | GM Global Technology Operations LLC | Driving monitoring and scoring systems and methods |
KR102523056B1 (ko) * | 2021-03-17 | 2023-04-17 | 고려대학교 산학협력단 | 멀티에이전트 강화학습을 활용한 드론 택시 시스템 및 이를 이용한 드론 택시 운용 방법 |
CN113034206A (zh) * | 2021-04-20 | 2021-06-25 | 上海汽车集团股份有限公司 | 一种优惠券发放方法及相关装置 |
US20220366437A1 (en) * | 2021-04-27 | 2022-11-17 | Beijing Didi Infinity Technology And Development Co., Ltd. | Method and system for deep reinforcement learning and application at ride-hailing platform |
CN113705996A (zh) * | 2021-08-18 | 2021-11-26 | 南斗六星系统集成有限公司 | 一种相同起终点自动驾驶路线分类统计评分的方法 |
CN114119159B (zh) * | 2021-11-29 | 2024-05-28 | 武汉理工大学 | 一种网约车实时订单匹配和空闲车辆调度方法及系统 |
CN114995455A (zh) * | 2022-06-23 | 2022-09-02 | 中山大学·深圳 | 一种车辆全局路径规划方法及系统 |
US20240177003A1 (en) * | 2022-11-11 | 2024-05-30 | The Regents Of The University Of Michigan | Vehicle repositioning determination for vehicle pool |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105637540A (zh) * | 2013-10-08 | 2016-06-01 | 谷歌公司 | 用于强化学习的方法和设备 |
CN107491827A (zh) * | 2016-06-13 | 2017-12-19 | 滴滴(中国)科技有限公司 | 一种车辆资源调度处理方法及系统 |
CN108021983A (zh) * | 2016-10-28 | 2018-05-11 | 谷歌有限责任公司 | 神经架构搜索 |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6931308B2 (en) * | 2001-10-12 | 2005-08-16 | Lewis C. Read | Viable alternative to private vehicles in urban areas |
US8626565B2 (en) * | 2008-06-30 | 2014-01-07 | Autonomous Solutions, Inc. | Vehicle dispatching method and system |
WO2010048146A1 (en) * | 2008-10-20 | 2010-04-29 | Carnegie Mellon University | System, method and device for predicting navigational decision-making behavior |
US20100299177A1 (en) * | 2009-05-22 | 2010-11-25 | Disney Enterprises, Inc. | Dynamic bus dispatching and labor assignment system |
US20100332242A1 (en) * | 2009-06-25 | 2010-12-30 | Microsoft Corporation | Collaborative plan generation based on varying preferences and constraints |
WO2011125059A2 (en) * | 2010-04-08 | 2011-10-13 | Way Better Ltd | Public transport optimization |
WO2013072729A1 (en) | 2011-11-14 | 2013-05-23 | Way Better Ltd | System and method for ride sharing |
US20140088865A1 (en) * | 2012-09-27 | 2014-03-27 | Siemens Industry, Inc. | Apparatus and method for predicting arrival times in a transportation network |
US20150204684A1 (en) * | 2014-01-21 | 2015-07-23 | Abtin Rostamian | Methods and systems of multi-dimensional automated ride-sharing optimization |
US9776512B2 (en) * | 2014-11-10 | 2017-10-03 | Streetsmart Ltd. | Methods, circuits, devices, systems and associated computer executable code for driver decision support |
US10282684B2 (en) * | 2015-02-26 | 2019-05-07 | Uber Technologies, Inc. | Performing selective operations based on mobile device locations |
US10909450B2 (en) * | 2016-03-29 | 2021-02-02 | Microsoft Technology Licensing, Llc | Multiple-action computational model training and operation |
US20170305437A1 (en) * | 2016-04-26 | 2017-10-26 | Google Inc. | Crowd-sourced vehicle setting recommendations |
CN112950312A (zh) * | 2016-09-21 | 2021-06-11 | 北京嘀嘀无限科技发展有限公司 | 一种订单处理方法及装置 |
US10817775B2 (en) * | 2017-01-12 | 2020-10-27 | International Business Machines Corporation | Neural network computing systems for predicting vehicle requests |
KR20180106093A (ko) * | 2017-03-17 | 2018-10-01 | 현대자동차주식회사 | 내비게이션의 카풀 로드 자동 제어 방법 |
CN107480807A (zh) * | 2017-07-06 | 2017-12-15 | 中山大学 | 基于时空感知神经网络的共享单车目的地预测方法及装置 |
JP6946542B2 (ja) * | 2018-02-14 | 2021-10-06 | 株式会社Nttドコモ | 学習システム、推定システム及び学習済モデル |
-
2018
- 2018-06-05 CN CN201880001535.7A patent/CN111033535B/zh active Active
- 2018-06-05 US US16/314,458 patent/US11514543B2/en active Active
- 2018-06-05 WO PCT/CN2018/089931 patent/WO2019232693A1/en active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105637540A (zh) * | 2013-10-08 | 2016-06-01 | 谷歌公司 | 用于强化学习的方法和设备 |
CN107491827A (zh) * | 2016-06-13 | 2017-12-19 | 滴滴(中国)科技有限公司 | 一种车辆资源调度处理方法及系统 |
CN108021983A (zh) * | 2016-10-28 | 2018-05-11 | 谷歌有限责任公司 | 神经架构搜索 |
Non-Patent Citations (1)
Title |
---|
任建功.基于强化学习的自主式移动机器人导航控制.《中国优秀博硕士学位论文全文数据库 (硕士) 信息科技辑》.2012,(第02期),全文. * |
Also Published As
Publication number | Publication date |
---|---|
US11514543B2 (en) | 2022-11-29 |
CN111033535A (zh) | 2020-04-17 |
US20210233196A1 (en) | 2021-07-29 |
WO2019232693A1 (en) | 2019-12-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111033535B (zh) | 用于乘车订单调度的系统和方法 | |
CN111066048B (zh) | 用于乘车订单分派的系统和方法 | |
CN112470199B (zh) | 用于点对点流量预测的系统和方法 | |
US10639995B2 (en) | Methods, circuits, devices, systems and associated computer executable code for driver decision support | |
US20190339087A1 (en) | Deep reinforcement learning for optimizing carpooling policies | |
Liu et al. | How machine learning informs ride-hailing services: A survey | |
US11455578B2 (en) | System and method for ride order dispatching and vehicle repositioning | |
Tang et al. | Value function is all you need: A unified learning framework for ride hailing platforms | |
CN113287124A (zh) | 用于搭乘订单派遣的系统和方法 | |
CN113672846A (zh) | 网约车调度方法、装置、电子设备及存储介质 | |
CN115311860B (zh) | 一种交通流量预测模型的在线联邦学习方法 | |
CN110796317A (zh) | 一种基于需求预测的城市出租车调度方法 | |
CN116324838A (zh) | 用于通过叫车平台调度共享乘车的系统和方法 | |
Xu et al. | A taxi dispatch system based on prediction of demand and destination | |
US10769558B2 (en) | Systems and methods for managing dynamic transportation networks using simulated future scenarios | |
US20220277652A1 (en) | Systems and methods for repositioning vehicles in a ride-hailing platform | |
US20220270488A1 (en) | Systems and methods for order dispatching and vehicle repositioning | |
WO2022203597A1 (en) | Method and system for taxi demand prediction using a neural network model | |
WO2022006873A1 (en) | Vehicle repositioning on mobility-on-demand platforms | |
Xu et al. | TAML: A traffic-aware multi-task learning model for estimating travel time | |
US20220237639A1 (en) | System and method for data prediction using heat maps | |
Zhang et al. | Dynamic graph attention network for traveling officer problem | |
Shanthi et al. | GPS-based Arrival Time Prediction for Bus Schedules: Enhancing Commuter Experience | |
US20220277329A1 (en) | Systems and methods for repositioning vehicles in a ride-hailing platform | |
CN113450557B (zh) | 针对车辆客流量的预测模型进行更新的方法及装置 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |