CN110431544B - 行驶时间和距离预估***和方法 - Google Patents

行驶时间和距离预估***和方法 Download PDF

Info

Publication number
CN110431544B
CN110431544B CN201780088459.3A CN201780088459A CN110431544B CN 110431544 B CN110431544 B CN 110431544B CN 201780088459 A CN201780088459 A CN 201780088459A CN 110431544 B CN110431544 B CN 110431544B
Authority
CN
China
Prior art keywords
module
time
neurons
neuron
query
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
Application number
CN201780088459.3A
Other languages
English (en)
Other versions
CN110431544A (zh
Inventor
伊珊·金达尔
秦志伟
陈学文
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Didi Infinity Technology and Development Co Ltd
Original Assignee
Beijing Didi Infinity Technology and Development Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Didi Infinity Technology and Development Co Ltd filed Critical Beijing Didi Infinity Technology and Development Co Ltd
Publication of CN110431544A publication Critical patent/CN110431544A/zh
Application granted granted Critical
Publication of CN110431544B publication Critical patent/CN110431544B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/3453Special cost functions, i.e. other than distance or default speed limit of road segments
    • G01C21/3492Special cost functions, i.e. other than distance or default speed limit of road segments employing speed data or traffic data, e.g. real-time or historical
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/36Input/output arrangements for on-board computers
    • G01C21/3605Destination input or retrieval
    • G01C21/3617Destination input or retrieval using user history, behaviour, conditions or preferences, e.g. predicted or inferred from previous use or current movement
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/36Input/output arrangements for on-board computers
    • G01C21/3691Retrieval, searching and output of information related to real-time traffic, weather, or environmental conditions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • G06F18/2148Generating training patterns; Bootstrap methods, e.g. bagging or boosting characterised by the process organisation or structure, e.g. boosting cascade
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Automation & Control Theory (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Environmental & Geological Engineering (AREA)
  • Atmospheric Sciences (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Ecology (AREA)
  • Social Psychology (AREA)
  • Environmental Sciences (AREA)
  • Neurology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Navigation (AREA)
  • Traffic Control Systems (AREA)

Abstract

提供行驶时间和距离预估***和方法。这种方法可以包括获取车辆行程数据集,该车辆行程数据集包括与多个行程中的每个行程相关的起点、目的地、时刻、行程时间和行程距离,并且利用车辆行程数据集训练神经网络模型以获取训练后的模型。神经网络模型可以包括第一模块和第二模块,第一模块可以包括第一数量神经元层,第一模块可以用于获取起点和目的地作为第一输入以预估行驶距离,第二模块可以包括第二数量神经元层,第二模块可以用于获取第一模块的最后一层的信息和时刻作为第二输入来预估行驶时间。

Description

行驶时间和距离预估***和方法
技术领域
本申请一般涉及行驶时间和距离预估方法和装置。
背景技术
行驶时间是高效导航和更好的行程规划的重要交通措施之一。准确预估行驶时间是建立智能交通***的关键组成部分。
发明内容
本申请的各种实施例可包括被配置为预估行驶时间和距离的***、方法和非暂时性计算机可读介质。用于预估行程时间和距离的计算***可以包括一个或多个处理器和存储指令的存储器。当由一个或多个处理器执行时,指令可以使计算***获取车辆行程数据集,该车辆行程数据集包括与多个行程中的每一个行程相关的起点、目的地、时刻、行程时间和行程距离,并使用该车辆行程数据集训练神经网络模型以获取训练模型。神经网络模型可以包括第一模块和第二模块,每个模块与指令的至少一部分对应。第一模块可以包括第一数量的神经元层。第一模块可以被配置为获取起点和目的地作为第一输入以预估行驶距离。第二模块可包括第二数量的神经元层。第二模块可以被配置为获取第一模块的最后一层的信息和时刻作为第二输入以预估行驶时间。
在一些实施例中,存储器可以存储当由一个或多个处理器执行时可以使计算***接收包括查询起点、查询目的地和查询时刻的查询的指令,并将训练的模型应用于所接收的查询以预估在该查询时间从查询起点到查询目的地的行驶时间和行驶距离。
在一些实施例中,起点和目的地均可包括离散的GPS(全球定位***)坐标,并且行程时间可包括离散的行程时间。
在一些实施例中,为了训练具有车辆行程数据集的神经网络模型,可以使计算***将起点和目的地提供给第一模块以获取第一数量以及该第一数量神经元层的每一个神经元层中的神经元个数,并将预估行驶距离与行程距离进行比较,以调整第一数量以及该第一数量神经元层的每一个神经元层中的神经元个数。
在一些实施例中,为了训练具有车辆行程数据集的神经网络模型,可以进一步使计算***将第一模块的最后一层信息和时刻提供给第二模块以获取第二数量以及该第二数量神经元层的每一个神经元层中的神经元个数,并比较预估的行驶时间与行程时间来调整第二数量以及该第二数量神经元层的每一个神经元层中的神经元个数。
在一些实施例中,第一模块可以是包括三个神经元层的神经网络,第二模块可以是包括三个神经元层的另一神经网络。
在一些实施例中,第一模块可以包括包含20个神经元的第一神经元层、包含100个神经元的第二神经元层,以及包含20个神经元的第三神经元层。
在一些实施例中,第二模块可以包括包含64个神经元的第一神经元层、包含120个神经元的第二神经元层,以及包括20个神经元的第三神经元层。
本申请的另一方面提供了一种行驶时间和距离预估方法。该方法可以包括获取车辆行程数据集,该车辆行程数据集包括与多个行程中的每个行程相关的起点、目的地、时刻、行程时间和行程距离,并且利用车辆行程数据集训练神经网络模型以获取训练后的模型。神经网络模型可以包括第一模块和第二模块。第一模块包括第一数量的神经元层,并且被配置为获取起点和目的地作为第一输入以预估行驶距离。第二模块包括第二数量的神经元层,并且被配置为获取第一模块的最后一层的信息和时刻作为第二输入以预估行驶时间。
本申请的另一方面提供了一种用于预估行驶时间和距离的非暂时性计算机可读介质。该非暂时性计算机可读介质在其中存储指令,并且当由一个或多个处理器执行时,该指令使得一个或多个处理器执行获取包括与多个行程中的每一个行程相关的起点、目的地、时刻、行程时间和行程距离,并且利用车辆行程数据集训练神经网络模型以获取训练后的模型。神经网络模型可以包括第一模块和第二模块。第一模块包括第一数量的神经元层,并且被配置为获取起点和目的地作为第一输入以预估行驶距离。第二模块包括第二数量的神经元层,并且被配置为获取第一模块的最后一层信息和时刻作为第二输入以预估行驶时间。
本申请的另一方面提供了一种行驶时间预估方法。该方法包括将关于起点和目的地的信息输入到第一训练后的神经网络模块以获取行驶距离,并且将时间信息和第一训练后的神经网络模块最后一层的信息输入到第二训练神经网络模块以获取行驶时间。
本文公开的***、方法和非暂时性计算机可读介质的这些和其他特征,结构的相关元件的操作和功能以及部件和制造经济的组合,在参考附图考虑下面的描述和所附权利要求时将变得显而易见,所有这些都构成本说明书的一部分,其中相同的附图标记表示各个附图中的相应部分。然而,应该清楚地理解,附图仅用于说明和描述的目的,并不旨在作为本发明的限制的定义。
附图说明
在所附权利要求中具体阐述了本技术的各种实施例的某些特征。通过参考以下详细描述,将更好地理解本技术的特征和优点,所述详细描述阐述了利用本发明的原理的说明性实施例以及附图,其中:
图1是根据各实施例所示的预估行驶时间和距离的示例性环境。
图2是根据各实施例所示的预估行驶时间和距离的示例性***。
图3A是根据各实施例所示的预处理起点和目的地的示例性方法。
图3B是根据各实施例所示的预估行驶时间和距离的示例性神经网络框架。
图3C是根据各实施例所示的预估行驶时间和距离的示例性神经网络模型。
图4A是根据各实施例所示的预估行驶时间和距离的示例性方法的流程图。
图4B是根据各实施例所示的预估行驶时间的示例方法的流程图。
图5示出了示例性计算机***的框图,其中可以实现本文描述的任何实施例。
具体实施方式
预估从特定时刻(t)开始的起点(o)和目的地(d)之间的交通行程的行驶时间和时刻可能具有挑战性。用于预测时变起点-终点行驶时间和距离的传统的机器学***均行驶时间和距离信息的查找表。但是,这种解决方案有几个缺点。第一,由于GPS坐标是连续变量,因此形成如此大的查找表需要大量的存储空间来存储。第二,向用户提供预估行驶时间的大多数车辆服务应用程序旨在实时工作,即向用户更新剩余行驶时间。因此,经常从如此大的表格中查询将非常耗时。最后,鉴于非常稀少的历史行程数据,不可能有完整的起点×目的地×时刻的笛卡尔乘积。
所公开的***和方法可以在预测时变起点–终点行驶时间和距离的范围内克服上述问题。在示例性方法中,用于模型训练的行程pi可以包括5元组((oi,di,ti,Di,Ti),从时间ti前往目的地di的位置oi开始,其中Di是行驶距离,Ti是从起点到目的地的行驶时间。起点和目的地都可以用GPS(全球定位***)坐标(例如,oi=(Lati,Loni))或替代表示来表示。将时刻ti作为行程的一部分,可以在不同时间考虑不同的交通状况。例如,在高峰时段可能会遇到高于非高峰时段的高流量。在一些实施例中,可以假设中间位置或行进轨迹是未知的,并且仅端部位置可用。此外,所披露的***和方法可以接收查询qi作为输入的对(起点、目的地、时刻)i并获取对应的对(时间、距离)i作为输出。也就是说,给定N个行程的历史数据库
Figure BDA0002202604900000051
所披露的***和方法可以预估查询q=(oq,dq,tq)的行驶距离和时间(Dq,Tq)。
本申请的各种实施例包括被配置为预估行驶时间和距离的***、方法和非暂时性计算机可读介质。在一些实施例中,用于预估行程时间和距离的计算***可包括一个或多个处理器和存储指令的存储器。当由一个或多个处理器执行时,指令可以使计算***获取车辆行程数据集,该车辆行程数据集包括与多个行程中的每个行程相关的起点、目的地、时刻、行程时间和行程距离,并使用车辆行程数据集训练神经网络模型以获取训练模型。神经网络模型可以包括第一模块和第二模块,每个模块对应于指令的至少一部分。第一模块可包括第一数量的神经元层。第一模块可以被配置为获取起点和目的地作为第一输入以预估行驶距离。第二模块可以包括第二数量的神经元层。第二模块可以被配置为获取第一模块的最后一层的信息和时刻作为第二输入,以预估行驶时间。
在一些实施例中,计算***可以包括实现车辆信息平台的一个或多个服务器。平台可以被配置为接收运输请求(例如,来自平台用户的移动设备),将请求传递到各种车辆(例如,到车辆驾驶员的移动设备),并且将接受请求的车辆的信息转发给用户,用户和车辆可以在此基础上进行会面并进行运输。在任何时候,用户可以向计算***发送查询,使得计算***例如在车辆运输之前或运输时预测行驶时间和距离。
在一些实施例中,基于通过全球定位***(GPS)收集的车辆(例如,出租车、平台车辆)行程数据集,所披露的***可以训练模型以一起预测行驶时间和距离。下面更详细描述的模型可以称为统一神经网络(UnifiedNN)。该模型可以首先预测起点和目的地之间的行驶距离,然后将此信息与时刻一起用于预测行驶时间。UnifiedNN可能只使用起点和目的地的原始GPS坐标和时刻作为输入特征来一起预估行驶时间和距离。与其他行驶时间预估方法相比,UnifiedNN具有更强的泛化能力,可以显着降低预测的行驶时间和距离的平均绝对误差(MAE),并且对数据集中的异常值更加稳健。因此,所披露的***和方法可以更准确地预测行驶时间和距离。
图1示出了根据各种实施例的用于预估行驶时间和距离的示例环境100。如图1所示,示例环境100可以包括至少一个计算***102,其包括一个或多个处理器104和内存106。内存106可以是非暂时的和计算机可读的。内存106可以存储指令,当由一个或多个处理器104执行时,使得一个或多个处理器104执行本文描述的各种操作。***102可以在诸如移动电话、平板电脑、服务器、计算机、可穿戴设备(智能手表)等各种设备上实现。以上***102可以安装有适当的软件(例如,平台程序等)和/或硬件(例如,电线、无线连接等)以访问环境100的其他设备。
环境100可以包括***102可访问的一个或多个数据库(例如,数据库108)和一个或多个计算设备(例如,计算设备109)。在一些实施例中,***102可以被配置为从数据库108(例如,N个运输行程的历史数据库或数据集)和/或计算设备109(例如,计算机、服务器、驾驶员或骑车者使用的移动电话,其捕获诸如oi、di、ti、Di和Ti的运输行程信息)获取多个车辆运输行程中的每一个的数据(例如,oi、di、ti、Di和Ti)。***102可以使用所获取的数据来训练用于预估行驶时间和距离的模型。
环境100还可以包括连接到***102的一个或多个计算设备(例如,计算设备110和111)。计算设备110和111可以包括诸如手机、平板电脑、计算机、可穿戴设备(智能手表)等设备。计算设备110和111可以向***102发送数据或从***102接收数据(例如,用于预估行驶时间和距离的查询、预估的行驶时间和距离)。
在一些实施例中,***102可以实现在线信息或服务平台。该服务可以与车辆(例如,汽车、自行车、船、飞机等)相关,并且该平台可以被称为车辆(服务项目)平台。平台可以接受运输请求,识别满足要求的车辆,安排接送和处理交易。例如,用户可以使用计算设备110(例如,安装有与平台相关的应用程序的移动电话)来请求来自平台的传输。***102可以接收该请求并将其传递到各种车辆驾驶员(例如,通过将请求发布到由驾驶员携带的移动电话)。车辆驾驶员可以使用计算设备111(例如,安装有与平台相关的应用程序的另一个移动电话)来接受所发布的运输请求并获取接载位置信息和用户的信息。一些平台数据(例如,车辆信息、车辆驾驶员信息、地址信息)可以存储在内存106中,或者可以从数据库108和/或计算设备109中检索。如本文所述,***102可以接收查询q=(起点oq,目的地dq,时刻tq)并且相应地预估行驶距离和时间(Dq,Tq)。
在一些实施例中,***102和一个或多个计算设备(例如,计算设备109)可以集成在单个设备或***中。或者,***102和一个或多个计算设备可以作为单独的设备操作。数据库可以是***102可访问的任何地方,例如,在内存106中,在计算设备109中,在耦合到***102的另一设备(例如,网络存储设备)中,或另一个存储位置(例如,基于云的存储***、网络文件***等)等。尽管在该图中***102和计算设备109被示为单个组件,但是应当理解,***102和计算设备109可以实现为耦合在一起的单个设备或多个设备。***102可以实现为单个***或彼此耦合的多个***。通常,***102、计算设备109、数据库108以及计算设备110和111可以能够通过一个或多个有线或无线网络(例如,因特网)彼此通信,通过上述网络可以数据传达。以下参考图2至图5描述环境100的各个方面。
图2示出了根据各种实施例的用于预估时间和距离的示例***200。图2中所示和下面给出的操作旨在说明。在各种实施例中,***102可以从数据库108和/或计算设备109获取数据202。获取的数据202可以存储在内存106中。***102可以利用获取的数据202训练模型(例如,UnifiedNN)以获取用于预估行驶时间和距离的训练模型。计算设备110可以将查询204发送到***102,并且***102可以通过将训练的模型应用于来自查询204的至少一些信息来预测行驶时间和距离。预测的行驶时间和距离可以包括在待返回到计算设备110或一个或多个其他设备的数据207中。
在一些实施例中,所获取的数据202可以包括与各种车辆行程中的每一个相关的信息,例如qi=(oi,di,ti,Di,Ti),其分别是行程i的起点、目的地、时刻、距离和时间。起点和目的地可以用GPS坐标或其他表示来表示。距离可以是以英里或其他单位的行驶距离。时间可以是以秒或其他单位的行程时间。车辆行程可以是由出租车、呼叫服务车辆等车辆进行的。出于效率原因,可以假设车辆服务将驾驶员导航到起点和目的地之间具有最短距离的路径而不管时刻。此外,oi和di可以包括地理坐标,并且可以使用几种方法来提高地理坐标的精度。对于连续可变地理坐标和城市(例如纽约市),由于高层建筑和密集区域,在报告数据时可能包含错误的GPS坐标。错误记录GPS坐标的其他原因涉及大气效应、多径效应和星历,以及时钟误差。因此,为了对抗GPS记录中的不确定性并“清理”训练数据集,环境100的一个或多个设备(例如,***102、计算设备109)可以对原始GPS执行数据预处理,以删除错误的GPS坐标。在一个示例中,如图3A所示,原始GPS坐标可以被离散化为2-D方格单元(例如,经度(“Lon”)和纬度(“Lat”)为200米),并且方格单元内的所有GPS坐标都可以由该方格单元的左下角(或另一个预设点)表示。在其他一些例子中,任何满足以下任何条件的行程都可能被标记为异常并从训练数据中删除:在出租车中有超过七名或零乘客,缺少上车或下车GPS坐标,行驶时间为零秒而相应的行驶距离为非零时,,行驶距离为零里程,而相应的行驶时间不为零。可选地或另外地,可以使用其他方法来离散化或以其他方式预处理原始数据。
与位置映射类似,可以预处理时刻。例如,时刻可以被离散化为1-D时间单元。例如,一天3600*24秒可以通过10分钟单元离散化以获取3600*24/60/10=144个单元。每个单元可以对应于从相应的时刻行进的车辆的平均行程时间。此外,可以应用其他预处理方法。例如,乘坐出租车或服务车辆的乘客可能会有不同的模式,具体取决于星期几(例如,周末较晚的长途骑行)、季节(例如,在极冷或炎热的季节)、天气(例如,在恶劣天气期间骑行时间较长)、地理区域(例如,在更加分散的大城市地区骑行更长时间)等。采用星期几示例,工作日可以对应于144个小区,并且周末可以对应于另外144个小区,从而获取总共288个时间单元。
在各种实施例中,计算设备110可以进行针对***102的查询204。或者,另一设备或***102本身可以发起查询204。在任何情况下,***102可以在任何时间(例如,在用户在车辆中开始运输之前,当用户在车辆中运输时)接收查询。查询204可以包括起点,目的地和时刻,其可以由计算设备110发送,由***102收集或以其他方式获取。在一些实施例中,起点可以与用户的位置相关。如果用户正在移动(例如,骑在车辆中),则可以不断更新起点,并且可以相应地不断更新行驶时间和距离预估。
在各种实施例中,UnifiedNN可以从训练数据中学习特征表示并且最好地将特征映射到输出变量。此外,UnifiedNN可能能够学习从特征到输出的任何映射,并且可以近似任何非线性函数。UnifiedNN的主要框架可以基于神经网络,如下面参考图3B所描述的。在神经网络中,神经元可以作为基本构件。神经元可以接收输入信号(例如,输入数据),使用逻辑计算功能对其进行处理,并根据计算结果发送输出信号(例如,输出数据)。当这些神经元被安排到神经元的网络中时,它们被称为神经网络。网络中神经元的每一列称为一层,网络中每层可以有多层神经元。具有单层神经元的网络称为感知器,具有多层神经元的网络称为多层感知器(MLP)。图3B中示出了两个隐藏层多层感知器(A1层和A2层),其中输入层包括到网络的输入(X1,X2,X3,X4)。输入层也称为可见层,因为这可能是网络中唯一显露的部分。隐藏层以不同比例或分辨率从输入层导出特征以形成高级特征,并在输出层输出值或值向量。在每个隐藏层,网络可以将特征计算为:
A1=f(W1*X)
A2=f(W2*A1)
Figure BDA0002202604900000101
其中,f是激活函数,它采用权重(例如,W1、W2、W3)和前一层的输出的线性组合并输出一个值。对于所有隐藏层,函数f可以是相同的,也可以是不同的。A1、A2和
Figure BDA0002202604900000102
是第一隐藏层、第二隐藏层和最终输出层的连续输出。对于作为网络输入的给定行数据X,网络可以处理该输入以获取A1、A2并最终获取预测输出
Figure BDA0002202604900000104
这可以称为正向传播。然后可以将预测输出
Figure BDA0002202604900000105
与预期输出Y进行比较,以使用损失函数计算误差。预期输出Y可具有高精度(例如,独立验证的结果、手动获取的结果、交叉检查结果)。损失函数测量网络预估结果的置信水平。例如,在回归问题中,预测输出和预期输出之间的均方损失可以计算为:
Figure BDA0002202604900000103
其中,N是训练数据样本的数量,Yi代表第i个训练样本的预期输出。然后,该误差可以使用反向传播算法通过网络传播回来,以根据随机梯度下降更新每层的权重W1、W2、W3,一次一层。这可以称为反向传播。可以对训练数据中的所有数据样本重复正向传播和反向传播的过程,并且可以将整个训练数据集上的一次传播称为时期。因此,可以训练神经网络以最小化大量时期的损失。此外,可以使用交叉验证来调整所有超参数,例如网络中的层数、每层神经元的数量、神经元的激活、损失函数。因此,通过上述训练和调整,可以获取训练后的神经网络,用于从特征到输出的精确映射。并且在本申请中,特征可以包括起点、目的地、全球定位***坐标和时刻,并且输出可以包括预测的行驶时间和距离。
图3C是根据各实施例所示的预估行驶时间和距离的示例性统一神经网络(UnifiedNN)330。这里描述的UnifiedNN和各种模块(例如,距离DNN(深度神经网络)模块、时间DNN模块)可以实现为存储在上述内存106中的指令。当由处理器104执行时,该指令可以使***102执行本文描述的各种方法和步骤。
在一些实施例中,UnifiedNN可以包括用于预估行驶距离的“距离DNN模块”和用于预估行驶时间的“时间DNN模块”。距离DNN模块的输入可以包括在离散的GPS坐标中的起点oi和目的地di(起点纬度格、起点经度格、目的地纬度格、目的地经度格)。距离DNN模块可能不会显露于时刻信息,因为时刻信息与行驶距离预估无关并且可能误导网络。因此,距离DNN模块的输入可以仅包括起点纬度格、起点经度格、目的地纬度格和目的地经度格。距离DNN可以完成预测行驶距离。此外,时间DNN模块的输入可以包括第一模块的最后一层的信息(例如,距离DNN模块的最后隐藏层的激活或激活功能、距离DNN模块的最后隐藏层、所获取的从最后一层输出的行驶距离等)和时刻信息,因为时刻信息与动态交通状况信息有关,因此对于预估行驶时间很重要。因此,时间DNN模块可以完成预测行驶时间。
在一些实施例中,距离DNN模块和时间DNN模块都可以是每层具有不同数量的神经元的三层多层感知器。图3C示出了这两个模块的每层参数的神经元的交叉验证数量的示例,其被配置用于精确的行驶时间和距离预测的最佳性能。距离DNN模型可以包括三个隐藏层:20神经元的第一层、100个神经元的第二层、20的神经元的第三层。时间DNN模型可以包括三个隐藏层:64个神经元第一层,128个神经元的第二层,以及20个神经元的第三层。
Figure BDA0002202604900000113
Figure BDA0002202604900000114
是距离DNN模块和时间DNN模块的预测距离和时间。整个网络可以通过随机梯度下降与损失函数共同训练:
Figure BDA0002202604900000111
从等式(1)中,等式(2)的损失函数可写为:
Figure BDA0002202604900000112
所公开的方法(例如,UnifiedNN)可以比其他方法更准确地预测行驶时间和距离,例如:(1)时间线性回归(LRT),用于时间预估的简单线性回归方法,其对行驶时间进行建模作为由二维方格单元和一维时间单元数定义的起点和目的地的函数;(2)距离线性回归(LRD),一种用于距离预估的简单线性回归方法,它将行驶距离模拟为由二维方格单元定义的起点和目的地的函数;(3)时间DNN模块(TimeNN),一种仅使用UnifiedNN的时间DNN模块来学习行驶时间的方法,并且该模块的输入仅包括由二维方格单元和一维时间单元数定义的起点和目的地;和(4)距离DNN模块(DistNN),一种仅使用UnifiedNN的距离DNN模块来学习行驶距离的方法,并且该模块的输入仅包括由二维方格单元定义的原始起点和目的地。
所公开的方法优于行驶时间预估的简单线性回归方法(LRT),因为简单线性回归是不考虑不确定的交通状况并且仅试图找到原始起点-目的地GPS坐标和行驶时间之间线性关系的基线方法。考虑到时间差异,TimeNN可以通过将原始起点-目的地GPS坐标和时刻信息映射到行驶时间来改进时间线性回归的行驶时间预测。这可以使MAE提高约78%。所公开的方法可以将用于行驶时间预测的编码距离信息添加到TimeNN,从而进一步改善预测性能。从TimeNN到UnifiedNN可以将MAE提供大约13秒。由于MAE可能是数百万次车辆行程的平均值,因此MAE中大约13秒的改善是显着的。行驶时间和距离预测由UnifiedNN执行比TimeNN更准确,并且其差异可以随着更长的行程(例如,长于12分钟或720秒)而增加。在一些实施例中,特别是那些长达8-10分钟的短行程更容易受到时间条件的影响,所公开的方法在获取动态条件方面可能比其他方法更好。特别地,所公开的方法可以为短途行程提供相对于其他方法的显着益处。
与LRT类似,LRD的性能比UnifiedNN差,因为大多数车辆服务区域包括城市,并且很难找到从起点到目的地的直线路线。因此,尽管LRD总是试图争取线性模式,但找到线性距离模式并不是一种有效的方法。此外,DistNN和UnifiedNN之间的性能差异很小,但是DistNN不具有高性能的行驶时间预估,因为如本文进一步描述的那样DistNN方法仅使用距离数据来计算而没有时间条件上的输入。
图4A是根据本申请的各实施例所示的示例性方法400的流程图。方法400可以在各种环境中实现,包括例如图1的环境100。示例性方法400可以由***102的一个或多个组件(例如,处理器104、内存106)实现。示例性方法400可以由类似于***102的多个***实现。下面给出的方法400的操作旨在说明的目的。根据实现方式,示例性方法400可以包括以各种顺序或并行执行的附加、更少或替代步骤。
在过程402中,可以获取多个行程的车辆行程数据集,该数据集包括与多个行程中的每个行程相关的起点、目的地、时刻、行程时间和行程距离。在一些实施例中,可以如上所述预处理起点和目的地,例如,以获取离散的GPS(全球定位***)坐标。还可以如上所述预处理行程时间以获取离散的行程时间。在步骤404中,可以利用车辆行程数据集训练神经网络模型以获取训练后的模型。神经网络模型可以包括第一模块和第二模块,每个模块与存储在存储器中的指令的至少一部分对应。第一模块可包括第一数量的神经元层。第一模块可以被配置为获取起点和目的地作为第一输入以预估行驶距离。第二模块可以包括第二数量的神经元层。第二模块可以被配置为获取第一模块的最后一层的信息和时刻作为第二输入以预估行驶时间。在一些实施例中,为了利用车辆行程数据集训练神经网络模型,计算***102可以用于或被配置为将起点和目的地提供给第一模块以获取第一数量以及该第一数量神经元层的每一个神经元层中的神经元个数,并将预估行驶距离与行程距离进行比较,以调整第一数量以及该第一数量神经元层的每一个神经元层中的神经元个数,将第一模块的最后一层的信息和时刻提供给第二模块以获取第二数量以及该第二数量神经元层的每一个神经元层中的神经元个数,并比较预估的行驶时间与行程时间来调整第二数量以及该第二数量神经元层的每一个神经元层中的神经元个数。在步骤406中,可选地,可以接收查询,该查询包括查询起点、查询目的地和查询时刻(这里,起点、目的地和时刻被“查询”修改以区分上述训练数据集中的起点、目的地和时刻)。在步骤408中,可选地,可以将训练后的模型应用于所接收的查询以预估在查询时刻从查询起点到查询目的地的行驶时间和行驶距离。
在一些实施例中,第一模块和第二模块可以实现为存储在存储器(例如,上述内存106)中的各种指令。当由处理器(例如,上述处理器104)执行时,该指令可以使***(例如,***102)执行本文描述的各种步骤和方法。第一模块可以是包括三个神经元层的神经网络模型,第二模块可以是包括三个神经元层的另一神经网络模型。第一模块可以包括包含20个神经元的第一神经元层、包含100个神经元的第二神经元层,以及包含20个神经元的第三神经元层。第二模块可以包括包含64个神经元的第一神经元层、包含120个神经元的第二神经元层,以及包含20个神经元的第三神经元层。
在一些实施例中,步骤406和步骤408可以示出应用训练模型来预估行驶时间和距离。例如,用户可以在寻找从查询起点到查询目的地的交通运输(例如,通过出租车或其他车辆)时提交查询。返回给用户的预估的行驶时间和距离可以为用户提供重要信息,以决定何时按计划进行交通运输。又例如,被运输的用户(例如,通过出租车或其他车辆)可以在乘坐车辆时基于变化的查询起点(车辆或用户的实时位置)不断地接收更新的行驶时间和距离预估。用户可以基于更新的行驶时间和距离相应地调整时间表,在必要时对运输路线计划进行改变等。在任何情况下,用户可以主动地将起点和目的地(例如,输入的地址、地图上的固定位置)提交给计算***102,和/或计算***102可以主动获取起点和目的地(例如,查询计算设备110的当前位置以更新起点)。
图4B是根据本申请的各实施例所示的示例性方法450的流程图。方法450可以在各种环境中实现,包括例如图1的环境100。示例性方法450可以由***102的一个或多个组件(例如,处理器104、内存106)实现。示例性方法450可以由类似于***102的多个***实现。下面给出的方法450的操作旨在说明的目的。根据实现方式,示例性方法450可以包括以各种顺序或并行执行的附加、更少或替代步骤。可以例如通过上面讨论的方法训练下面描述的各种模块。
在步骤452中,可以将关于起点和目的地的信息输入到第一训练后的神经网络模块(例如,如上所述的距离DNN)以获取行驶距离。例如,用户可以直接将起点和目的地输入到设备中并发送到计算***102。又例如,计算***102可以查询与用户相关的设备(例如,移动电话)以获取或更新起点或目的地。在步骤454中,时间信息(例如,时刻信息)和第一训练后的神经网络模块的最后一层的信息(例如,距离DNN模块的最后隐藏层的激活或激活功能、距离DNN模块的最后隐藏层、所获取的从最后一层输出的行驶距离等)输入到第二训练后的神经网络模块(例如,如上所述的时间DNN)以获取行驶时间。计算***102可以将第一训练后的神经网络模块的最后一层的信息提供给第二训练后的神经网络模块。时刻信息可以由用户主动提交或者由计算***102主动获取。距离DNN模块的输入可以包括在离散的GPS坐标中的起点oi和目的地di(起点纬度格、起点经度格、目的地纬度格、目的地经度格)。距离DNN可以完成行驶距离预测。时间DNN模块的输入可以包括诸如距离DNN模块的最后隐藏层的激活和时刻信息的信息,因为时刻信息与动态交通状况信息有关,因此对于预估行驶时间很重要。因此,时间DNN可以完成行驶时间预测。
本文描述的技术由一个或多个专用计算设备实现。该专用计算设备可以是执行这些技术的硬连线,或者可以包括电路或数字电子设备,诸如一个或多个专用集成电路(ASIC)或可持续编程以执行这些技术的现场可编程门阵列(FPGA),或者可以包括一个或多个硬件处理器,其被编程为根据固件、存储器、其他存储器或组合中的程序指令执行技术。这种专用计算设备还可以将定制的硬连线逻辑、ASIC或FPGA与定制编程相结合以实现这些技术。专用计算设备可以是台式计算机***、服务器计算机***、便携式计算机***、手持设备、网络设备或包含硬连线和/或程序逻辑以实现该技术的任何其他设备或设备的组合。计算设备通常由操作***软件控制和协调。传统的操作***控制和调度用于执行的计算机进程,执行存储器管理,提供文件***、网络、输入/输出服务,以及提供用户界面功能,例如图形用户界面(“GUI”)等等。
图5示出计算机***500的框图,在该计算机***500上可以实现本文描述的任何实施例。***500可以对应于上述***102。计算机***500包括总线502或用于传送信息的其他通信机制、一个或多个与总线502耦合的硬件处理器504以处理信息。硬件处理器504可以是例如一个或多个通用微处理器。处理器504可以对应于上述处理器104。
计算机***500还包括主内存506,例如随机存取存储器(RAM)、高速缓存和/或其他动态存储设备,耦合到总线502以存储将由处理器504执行的信息和指令。主内存506还可以用于在执行要由处理器504执行的指令期间存储临时变量或其他中间信息。当存储在处理器504可访问的存储介质中时,这些指令使计算机***500成为专用机器中,该专用机器被定制以执行指令中指定的操作。计算机***500还包括只读存储器(ROM)508或耦合到总线502的其他静态存储设备,用于存储处理器504的静态信息和指令。提供诸如磁盘、光盘或USB拇指驱动器(闪存驱动器)等的存储设备510并将其耦合到总线502以存储信息和指令。主内存506、ROM 508和/或存储器510可以对应于上述内存106。
计算机***500可以使用定制的硬连线逻辑、一个或多个ASIC或FPGA、固件和/或程序逻辑来实现本文描述的技术,其与计算机***组合使计算机***500成为特殊用途机器。根据一个实施例,本文的技术由计算机***500响应于处理器504执行包含在主内存506中的一个或多个指令的一个或多个序列来执行。可以从诸如存储设备510的另一存储介质将这样的指令读入主内存506中。包含在主内存506中的指令序列的执行使处理器504执行本文所述的处理步骤。在替代实施例中,可以使用硬连线电路来代替软件指令或与软件指令组合。
主内存506、ROM 508和/或存储器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 (16)

1.一种用于预估行驶时间和距离的计算***,包括:
一个或多个处理器;以及
存储指令的存储器,当由所述一个或多个处理器执行所述指令时,使所述计算***:
获取包括与多个行程中的每个行程相关的起点、目的地、时刻、行程时间和行程距离的车辆行程数据集;以及
用所述车辆行程数据集训练神经网络模型,得到训练后的模型,其中:
所述神经网络模型包括第一模块和第二模块;
所述第一模块包括第一数量的神经元层;
所述第一模块配置为获取所述起点和所述目的地作为第一输
入来预估行驶距离;
所述第二模块包括第二数量神经元层;以及
所述第二模块用于获取所述第一模块最后一层的信息和所述
时刻作为第二输入以预估行驶时间,所述最后一层的所述信息包括所述第一模块的最后隐藏层和所述行驶距离;
所述用所述车辆行程数据集训练神经网络模型,使所述计算***:
将所述起点和所述目的地提供给所述第一模块以获取所述第
一数量和所述第一数量神经元层的每一个神经元层中的神经元个
数;
比较所述预估行驶距离与所述行程距离以调整所述第一数量
和所述第一数量神经元层的每一个神经元层中的神经元个数;
将所述第一模块的所述最后一层的所述信息和所述时刻提供
给所述第二模块以获取所述第二数量以及所述第二数量神经元层
的每一个神经元层中的神经元个数;以及
比较所述预估行驶时间与所述行程时间以调整所述第二数量
以及所述第二数量神经元层的每一个神经元层中的神经元个数。
2.根据权利要求1所述的计算***,其特征在于,所述存储器进一步存储指令,当所述一个或多个处理器执行所述指令时,使所述计算***:
接收包括查询起点、查询目的地和查询时刻的查询;以及
将所述训练后的模型应用于所述接收的查询以预估在所述查询时刻从所述查询起点到所述查询目的地的所述行驶时间和所述行驶距离。
3.根据权利要求1所述的计算***,其特征在于:
所述起点和所述目的地分别包括离散的GPS坐标;以及
所述行程时间包括离散的时间。
4.根据权利要求1所述的计算***,其特征在于:
所述第一模块是包含三个神经元层的神经网络;以及
所述第二模块是包含三个神经元层的另一神经网络。
5.根据权利要求4所述的计算***,其特征在于,所述第一模块包括:
包含20个神经元的第一神经元层;
包含100个神经元的第二个神经元层;以及
包含20个神经元的第三神经元层。
6.根据权利要求4所述的计算***,其特征在于,所述第二模块包括:
包含64个神经元的第一神经元层;
包含120个神经元的第二个神经元层;以及
包含20个神经元的第三神经元层。
7.一种行驶时间和距离预估方法,包括:
获取包括与多个行程中的每个行程相关的起点、目的地、时刻、行程时间和行程距离的车辆行程数据集;以及
用所述车辆行程数据集训练神经网络模型,得到训练后的模型,其中:
所述神经网络模型包括第一模块和第二模块;
所述第一模块包括第一数量神经元层;
所述第一模块用于获取所述起点和所述目的地作为第一输入来预估行驶距离;
所述第二模块包括第二数量神经元层;以及
所述第二模块用于获取所述第一模块的最后一层的信息和所述时刻作为第二输入以预估行驶时间,所述最后一层的所述信息包括所述第一模块的最后隐藏层和所述行驶距离;
所述用所述车辆行程数据集训练神经网络模型包括:
将所述起点和所述目的地提供给所述第一模块以获取所述第
一数量和所述第一数量神经元层的每一个神经元层中的神经元个
数;
比较所述预估行驶距离与所述行程距离以调整所述第一数量
和所述第一数量神经元层的每一个神经元层中的神经元个数;
将所述第一模块的所述最后一层的所述信息和所述时刻提供给所述第二模块以获取所述第二数量以及所述第二数量神经元层的每一个神经元层中的神经元个数;以及
比较所述预估行驶时间与所述行程时间以调整所述第二数量以及所述第二数量神经元层的每一个神经元层中的神经元个数。
8.根据权利要求7所述的方法,进一步包括:
接收包括查询起点、查询目的地和查询时刻的查询;以及
将所述训练后的模型应用于所述接收的查询以预估在所述查询时刻从所述查询起点到所述查询目的地的所述行驶时间和所述行驶距离。
9.根据权利要求7所述的方法,其特征在于:
所述起点和所述目的地分别包括离散的GPS坐标;以及
所述行程时间包括离散的时间。
10.根据权利要求7所述的方法,其特征在于:
所述第一模块是包含三个神经元层的神经网络;以及
所述第二模块是包含三个神经元层的另一神经网络。
11.根据权利要求10所述的方法,其特征在于,所述第一模块包括:
包含20个神经元的第一神经元层;
包含100个神经元的第二神经元层;以及
包含20个神经元的第三神经元层。
12.根据权利要求10所述的方法,其特征在于,所述第二模块包括:
包含64个神经元的第一神经元层;
包含120个神经元的第二神经元层;以及
包含20个神经元的第三神经元层。
13.一种用于预估行驶时间和距离的非暂时性计算机可读介质,包括存储在其中的指令,其中所述指令当由一个或多个处理器执行时,使所述一个或多个处理器执行以下步骤:
获取包括与多个行程中的每个行程相关的起点、目的地、时刻、行程时间和行程距离的车辆行程数据集;以及
用所述车辆行程数据集训练神经网络模型,得到训练后的模型,其中:
所述神经网络模型包括第一模块和第二模块;
所述第一模块包括第一数量神经元层;
所述第一模块用于获取诉述起点和所述目的地作为第一输入来预估行驶距离;
所述第二模块包括第二数量神经元层;以及
所述第二模块用于获取所述第一模块的最后一层的信息和所述时刻作为第二输入以预估行驶时间,所述最后一层的所述信息包括所述第一模块的最后隐藏层和所述行驶距离;
所述用所述车辆行程数据集训练神经网络模型包括:
将所述起点和所述目的地提供给所述第一模块以获取所述第
一数量和所述第一数量神经元层的每一个神经元层中的神经元个
数;
比较所述预估行驶距离与所述行程距离以调整所述第一数量和所述第一数量神经元层的每一个神经元层中的神经元个数;
将所述第一模块的所述最后一层的所述信息和所述时刻提供给所述第二模块以获取所述第二数量以及所述第二数量神经元层的每一个神经元层中的神经元个数;以及
比较所述预估行驶时间与所述行程时间以调整所述第二数量以及所述第二数量神经元层的每一个神经元层中的神经元个数。
14.根据权利要求13所述的非暂时性计算机可读介质,其特征在于,所述指令在由一个或多个处理器执行时,进一步执行以下步骤:
接收包括查询起点、查询目的地和查询时间的查询;以及
将所述训练后的模型应用于所述接收的查询以预估在所述查询时刻从所述查询起点到所述查询目的地的所述行驶时间和所述行驶距离。
15.根据权利要求13所述的非暂时性计算机可读介质,其特征在于:
所述第一模块是包含三个神经元层的神经网络;以及
所述第二模块是包含三个神经元层的另一神经网络。
16.根据权利要求13所述的非暂时性计算机可读介质,其特征在于:
所述第一模块包括:
包含20个神经元的第一神经元层;
包含100个神经元的第二神经元层;以及
包含20个神经元的第三神经元层;以及
所述第二模块包括:
包含64个神经元的第一神经元层;包含120个神经元的第二神经元层;以及
包含20个神经元的第三神经元层。
CN201780088459.3A 2017-08-10 2017-08-10 行驶时间和距离预估***和方法 Active CN110431544B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2017/096893 WO2019028763A1 (en) 2017-08-10 2017-08-10 SYSTEM AND METHOD FOR ESTIMATING ROUTE TIME AND DISTANCE

Publications (2)

Publication Number Publication Date
CN110431544A CN110431544A (zh) 2019-11-08
CN110431544B true CN110431544B (zh) 2023-04-18

Family

ID=65272934

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780088459.3A Active CN110431544B (zh) 2017-08-10 2017-08-10 行驶时间和距离预估***和方法

Country Status (4)

Country Link
US (1) US11536582B2 (zh)
CN (1) CN110431544B (zh)
TW (1) TW201911142A (zh)
WO (1) WO2019028763A1 (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11276071B2 (en) * 2017-08-31 2022-03-15 Paypal, Inc. Unified artificial intelligence model for multiple customer value variable prediction
US11893623B1 (en) 2020-05-29 2024-02-06 Walgreen Co. System for displaying dynamic pharmacy information on a graphical user interface
US12033110B1 (en) * 2020-05-29 2024-07-09 Walgreen Co. System and method for displaying dynamic pickup location information on a graphical user interface
TWI748514B (zh) * 2020-06-12 2021-12-01 中華電信股份有限公司 車流推估方法與系統
US20210390629A1 (en) * 2020-06-16 2021-12-16 Amadeus S.A.S. Expense fraud detection
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
CN112429044B (zh) * 2020-11-27 2023-02-28 株洲中车时代软件技术有限公司 一种基于非线性补偿的运行列车位置定位方法及其***
FR3124256A1 (fr) * 2021-06-21 2022-12-23 Psa Automobiles Sa Procede de prediction d’une position ou d’une trajectoire de destination d’un vehicule

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102081859A (zh) * 2009-11-26 2011-06-01 上海遥薇实业有限公司 一种公交车到站时间预测模型控制方法
JP2013013261A (ja) * 2011-06-30 2013-01-17 Hitachi Zosen Corp 鉄道車両の位置検出装置および位置検出方法
US9015093B1 (en) * 2010-10-26 2015-04-21 Michael Lamport Commons Intelligent control with hierarchical stacked neural networks
CN104715630A (zh) * 2014-10-06 2015-06-17 中华电信股份有限公司 一种到站时间预测***与方法
CN105636197A (zh) * 2014-11-06 2016-06-01 株式会社理光 距离估计方法和装置、以及节点定位方法和设备

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWM474994U (zh) 2011-06-08 2014-03-21 Univ Chaoyang Technology 車流量及行駛速度之預估系統
TW201324461A (zh) 2011-12-13 2013-06-16 Ind Tech Res Inst 車速預測方法與系統
CN104346926B (zh) 2013-07-31 2017-09-12 国际商业机器公司 行驶时间预测方法和装置、以及相关终端设备
CN103440768B (zh) 2013-09-12 2015-04-15 重庆大学 一种基于动态修正的公交车到达时间实时预测方法
US10848912B2 (en) 2014-05-30 2020-11-24 Apple Inc. Estimated time of arrival (ETA) based on calibrated distance
CN104637334B (zh) 2015-02-10 2017-07-07 中山大学 一种公交车到站时间实时预测方法
CN104900063B (zh) 2015-06-19 2017-10-27 中国科学院自动化研究所 一种短程行驶时间预测方法
CN108133611A (zh) * 2016-12-01 2018-06-08 中兴通讯股份有限公司 车辆行驶轨迹监测方法及***
EP3336571A1 (de) * 2017-04-05 2018-06-20 Siemens Healthcare GmbH Zuordnen von mr-fingerabdrücken auf basis neuronaler netze

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102081859A (zh) * 2009-11-26 2011-06-01 上海遥薇实业有限公司 一种公交车到站时间预测模型控制方法
US9015093B1 (en) * 2010-10-26 2015-04-21 Michael Lamport Commons Intelligent control with hierarchical stacked neural networks
JP2013013261A (ja) * 2011-06-30 2013-01-17 Hitachi Zosen Corp 鉄道車両の位置検出装置および位置検出方法
CN104715630A (zh) * 2014-10-06 2015-06-17 中华电信股份有限公司 一种到站时间预测***与方法
CN106022541A (zh) * 2014-10-06 2016-10-12 中华电信股份有限公司 一种到站时间预测方法
CN105636197A (zh) * 2014-11-06 2016-06-01 株式会社理光 距离估计方法和装置、以及节点定位方法和设备

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
A Cascade of Artificial Neural Networks to Predict Transformers Oil Parameters;Khaled Shaban;《IEEE Transactions on Dielectrics and Electrical Insulation》;20090417;第16卷(第2期);第516-523页 *
Accurate freeway travel time prediction with state-space neural networks under missing data;J.W.C. van Lint;《elsevier》;20051231;第347-369页 *
Traffic Speed Prediction Under Weekday, Time, and Neighboring Links’ Speed: Back Propagation NeuralNetwork Approach;Eun-Mi Lee;《Advanced Intelligent Computing Theories and Applications-With Aspects of Theoretical and Methodological Issues》;20071221;第626-635页 *
Urban link travel time estimation using large-scale taxi data with partial information;Xianyuan Zhan;《elsevier》;20131231;第37-49页 *

Also Published As

Publication number Publication date
US20210231454A1 (en) 2021-07-29
TW201911142A (zh) 2019-03-16
WO2019028763A1 (en) 2019-02-14
US11536582B2 (en) 2022-12-27
CN110431544A (zh) 2019-11-08

Similar Documents

Publication Publication Date Title
CN110431544B (zh) 行驶时间和距离预估***和方法
CN110073426B (zh) 估计到达时间的***和方法
US12002001B2 (en) Integrated multi-location scheduling, routing, and task management
CN111066048B (zh) 用于乘车订单分派的***和方法
CN112074845A (zh) 用于优化拼车策略的深度强化学习
WO2020001261A1 (en) Systems and methods for estimating an arriel time of a vehicle
TW201738811A (zh) 推薦預計到達時間的系統及方法
CN110998568A (zh) 寻觅乘客的可搭载车辆的导航确定***和方法
JP6965426B2 (ja) 到着時間を推定するためのシステムおよび方法
EP3794315B1 (en) Generating navigation routes and identifying carpooling options in view of calculated trade-offs between parameters
CN112106021B (zh) 提供车辆导航模拟环境的方法和装置
US10989546B2 (en) Method and device for providing vehicle navigation simulation environment
CN113924460B (zh) 确定服务请求的推荐信息的***和方法
WO2023244172A1 (en) Methods and systems for predicting journey time

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