CN110431597A - 用于优化在线按需服务的系统和方法 - Google Patents

用于优化在线按需服务的系统和方法 Download PDF

Info

Publication number
CN110431597A
CN110431597A CN201780088407.6A CN201780088407A CN110431597A CN 110431597 A CN110431597 A CN 110431597A CN 201780088407 A CN201780088407 A CN 201780088407A CN 110431597 A CN110431597 A CN 110431597A
Authority
CN
China
Prior art keywords
order
history
driver
time
record
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.)
Pending
Application number
CN201780088407.6A
Other languages
English (en)
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 CN110431597A publication Critical patent/CN110431597A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/40Business processes related to the transportation industry
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06311Scheduling, planning or task assignment for a person or group
    • G06Q10/063112Skill-based matching of a person or a group to a task
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Administration; Management
    • G06Q10/02Reservations, e.g. for tickets, services or events
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0633Lists, e.g. purchase orders, compilation or processing
    • G06Q30/0635Processing of requisition or of purchase orders
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/20Monitoring the location of vehicles belonging to a group, e.g. fleet of vehicles, countable or determined number of vehicles
    • G08G1/202Dispatching vehicles on the basis of a location, e.g. taxi dispatching
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W40/00Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
    • B60W40/08Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to drivers or passengers
    • B60W40/09Driving style or behaviour

Landscapes

  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Engineering & Computer Science (AREA)
  • Economics (AREA)
  • Strategic Management (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Tourism & Hospitality (AREA)
  • Development Economics (AREA)
  • Educational Administration (AREA)
  • Quality & Reliability (AREA)
  • Operations Research (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Game Theory and Decision Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Primary Health Care (AREA)
  • Traffic Control Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

提供了用于优化在线按需服务的系统和方法。一种方法可以包括:获取与至少两个历史订单相对应的司机信息;对于每个在预设时间段内的历史司机,根据决策过程基于订单信息和司机信息确定至少两个记录,每个记录包括司机的时空状态、司机的行为、司机的收益、以及司机的随后时空状态;并基于增强学习算法根据每个历史司机的至少两个记录确定价值函数。

Description

用于优化在线按需服务的系统和方法
技术领域
本申请一般涉及用于优化在线按需服务的系统和方法,尤其涉及用于优化在线按需服务中为新订单分配司机的系统和方法。
背景技术
按需运输服务,特别是在线汽车服务,已经越来越受欢迎。当服务请求者(例如,乘客)向在线汽车服务平台发送服务请求时,平台可以根据旨在使分配更有效和有利的人为规则为服务请求者分配服务提供者(例如,司机)。然而,将服务提供者分配给服务请求者的现有技术的问题在于,人为规则在适应服务的发展方面具有局限性,并且有时在不同的业务场景(例如,司机的上线和下线动作、拼车订单、预约订单、升级订单,等)上缺乏准确性。因此,希望提供用于优化为新订单分配司机以优化在线按需服务的系统和方法。
发明内容
根据本申请的一个方面,一种系统可以包括至少一个存储介质,该存储介质包括用于在在线按需服务器中分配订单的一组指令,以及与该存储介质通信的至少一个处理器,当执行该组指令时,所述至少一个处理器可以用于:获取与至少两个历史订单相关的订单信息;获取与至少两个历史订单相对应的至少两个历史司机的司机信息;对于每个在预设时间段内的历史司机,根据决策过程模型确定基于订单信息和司机信息的至少两个记录;根据增强学习算法,根据每个历史司机的至少两个记录确定价值函数。在一些实施例中,决策过程模型是马尔可夫决策过程(MDP)模型。在一些实施例中,每个记录包括司机的时间-空间状态(简称时空状态)、司机的行为,司机的收益和司机的随后时空状态。
在一些实施例中,增强学习算法是时序差分学习算法。
在一些实施例中,增强学习算法是动态规划算法。
在一些实施例中,对于每个在预设时间段内的历史司机内,为了确定至少两个记录,所述至少一个处理器还用于:确定一个或以上订单记录,每个订单记录对应于历史订单;并确定一个或以上空闲时间记录,每个空闲时间记录对应于未关联任何历史订单的一个闲置时间段。
在一些实施例中,对于每个在预设时间段内的历史司机,为了确定至少两个记录,所述至少一个处理器还用于:确定一个或以上订单记录,每个记录对应于历史订单;并根据司机信息获取预设时间段中历史司机的上线时间点和下线时间点;确定与所述上线时间点和接受第一历史订单的时间点之间的闲置时间段对应的至少一个空闲时间记录;并且,确定与完成最后历史订单的时间点和所述下线时间点之间的闲置时间段对应的至少另一个空闲时间记录。
在一些实施例中,至少两个记录可以包括至少一个订单记录和至少一个空闲时间记录,订单记录对应于历史订单并且包括以下中的至少一个:司机的时空状态,包括所述历史司机在接受所述历史订单时的时间和位置;司机的行为,包括接受所述历史订单;司机的收益,包括所述历史订单的价值;司机的随后时空状态,包括所述历史司机在完成所述历史订单时的时间和位置;或者空闲时间记录对应于未关联任何历史订单的闲置时间段,并且包括以下中的至少一个:司机的时空状态,包括所述历史司机在所述闲置时间段内的时间和位置;司机的行为,包括在所述闲置时间段为空闲;司机的收益,包括零;司机的随后时空状态,包括所述历史司机在所述闲置时间段结束时的随后时间和随后位置。在一些实施例中,所述闲置时间段是所述闲置时间的预设持续时长。
在一些实施例中,对于预设时间段的每个历史司机,为了确定至少两个记录,所述至少一个处理器还用于:基于订单信息识别随后订单的订单类型;响应于识别随后订单是预约订单,确定从所述预约订单的开始时间点起的预设缓冲时间之前的参考时间点;并且确定与完成所述历史订单的时间点和所述参考时间点之间的闲置时间段对应的至少一个空闲时间记录。
在一些实施例中,对于预设时间段的每个历史司机,为了确定至少两个记录,所述至少一个处理器还用于:识别历史司机的服务类型;根据订单信息识别随后订单的订单类型;响应于确定随后订单是历史司机的升级订单,识别所述历史司机接收与所述服务类型相关的正常订单的开始时间点;确定与完成所述历史订单和所述开始时间点之间的闲置时间段对应的至少一个空闲时间记录。
在一些实施例中,对于每个在预设时间段内的历史司机,为了确定至少两个记录,所述至少一个处理器还用于:对应于历史订单的订单记录,历史订单是组合了具有相同路线ID的至少两个拼车订单的普通拼车订单,历史司机的时间和位置分别是历史司机在第一次接受普通拼车订单时的时间和位置,以及历史订单的价值是拼车订单的价值总和。
在一些实施例中,当执行一组指令时,至少一个处理器还用于:基于价值函数优化针对新订单对司机的分配。
根据本申请的另一方面,一种用于在在线按需服务中分配订单的方法可以在具有至少一个处理器、至少一个存储介质和连接到网络的通信平台的计算设备上实现。该方法可以包括一个或以上以下操作:获取与至少两个历史订单相对应的至少两个历史司机的司机信息;对于每个在预设时间段内的历史司机,根据决策过程模型确定基于订单信息和司机信息的至少两个记录;根据增强学习算法,根据每个历史司机的至少两个记录确定一个价值函数。在一些实施例中,决策过程模型是马尔可夫决策过程(MDP)模型。在一些实施例中,每个记录包括司机的时空状态、司机的行为、司机的收益和司机的随后时空状态。
在一些实施例中,增强学习算法是时序差分学习算法。
在一些实施例中,增强学习算法是动态规划算法。
在一些实施例中,对于预设时间段的每个历史司机,确定至少两个记录可包括一个或以上以下操作:确定一个或以上订单记录,每个订单记录对应于一个历史订单;确定一个或以上空闲时间记录,每个空闲时间记录对应于未关联任何历史订单的一个闲置时间段。
在一些实施例中,对于在预设时间段的每个历史司机,确定至少两个记录可包括一个或以上以下操作:确定一个或以上订单记录,每个记录对应于历史订单;根据司机信息,获取历史司机在预设时间段的上线时间点和下线时间点;确定与所述上线时间点和接受第一历史订单的时间点之间的闲置时间段对应的至少一个的空闲时间记录;确定与完成最后历史订单的时间点和所述下线时间点之间的闲置时间段对应的至少另一个空闲时间记录。
在一些实施例中,至少两个记录包括至少一个订单记录和至少一个空闲时间记录,订单记录对应于历史订单并且可以包括以下中的至少一个:司机的时空状态,包括所述历史司机在接受所述历史订单时的时间和位置;司机的行为,包括接受所述历史订单;司机的收益,包括所述历史订单的价值;司机的随后时空状态,包括所述历史司机在完成所述历史订单时的时间和位置;并且空闲时间记录对应于未关联任何历史订单的闲置时间段,并且可以包括以下中的至少一个:司机的时空状态,包括所述历史司机在所述空闲时间段内的时间和位置;司机的行为,包括在所述闲置时间段为空闲;司机的收益,包括零;司机的随后时空状态,包括所述历史司机在所述闲置时间段结束时的随后时间和随后位置。在一些实施例中,所述闲置时间段是所述闲置时间的预设持续时长。
在一些实施例中,对于预设时间段的每个历史司机,确定至少两个记录可包括一个或以上以下操作:基于订单信息识别随后订单的订单类型;响应于识别随后订单是预约订单,确定从所述预约订单的开始时间点起的预设缓冲时间之前的参考时间点;确定与完成所述历史订单的时间点和所述参考时间点之间的闲置时间段对应的至少一个空闲时间记录。
在一些实施例中,对于预设时间段的每个历史司机,确定至少两个记录可包括一个或以上以下操作:识别历史司机的服务类型;根据订单信息识别随后订单的订单类型;响应于识别随后订单是历史司机的升级订单,识别所述历史司机接收与所述服务类型相关的正常订单的开始时间点;确定与完成所述历史订单和所述开始时间点之间的闲置时间段对应的至少一个空闲时间记录。
在一些实施例中,对于预设时间段的每个历史司机,确定至少两个记录可包括一个或以上以下操作:确定对应于历史订单的订单记录,历史订单是组合了具有相同路线ID的至少两个拼车订单的普通拼车订单,历史司机的时间和位置分别是历史司机第一次接受普通拼车订单时的时间和位置,历史订单的价值是拼车订单的总和值。
根据本申请的又一方面,一种非暂时性计算机可读介质,包括用于在在线按需服务器中分配订单的至少一组指令,当由计算机设备的至少一个处理器执行时,所述至少一组指令指示至少一个处理器:获取与至少两个历史订单相关联的订单信息;获取与至少两个历史订单相对应的至少两个历史司机的司机信息;对于每个在预设时间段内的历史司机,根据订单信息和司机信息根据决策过程(例如,MDP)模型确定至少两个记录,每个记录包括司机的时空状态、司机的行为、司机的收益、以及司机的随后时空状态;根据增强学习算法,根据每个历史司机的至少两个记录确定一个价值函数。
附图说明
本申请将通过示例性实施例进行进一步描述。与附图一起阅读时,下面的详细描述将更清楚的说明本申请的前述内容和实施例的其他方面。
图1是根据本申请的一些实施例所示的用于优化在线按需服务的示例性系统的框图;
图2是根据本申请的一些实施例所示的计算设备的示例性硬件和/或软件组件的示意图;
图3是根据本申请的一些实施例所示的移动设备的示例性硬件组件和/或软件组件的示意图;
图4是根据本申请的一些实施例所示的示例性处理引擎的框图;
图5是根据本申请的一些实施例所示的用于优化在线按需服务的示例性过程和/或方法的流程图。
图6-A是根据本申请的一些实施例所示的示例性状态的示意图;
图6-B是根据本申请的一些实施例所示的示例性状态的示意图;
图7是根据本申请的一些实施例所示的动态规划算法的示例性过程的示意图;
图8是根据本申请的一些实施例所示的用于获取至少两个记录的示例性过程和/或方法的流程图。
图9是根据本申请的一些实施例所示的用于确定至少两个记录的示例性过程和/或方法的流程图。
图10是根据本申请的一些实施例所示的用于确定至少两个记录的示例性过程和/或方法的流程图;以及
图11是根据本申请的一些实施例所示的用于确定至少两个记录的示例性过程和/或方法的流程图。
具体实施方式
以下描述是为了使本领域的普通技术人员能够实施和利用本申请,并且该描述是在特定的应用场景及其要求的环境下提供的。对于本领域的普通技术人员来讲,显然可以对所公开的实施例作出各种改变,并且在不偏离本申请的原则和范围的情况下,本申请中所定义的普遍原则可以适用于其他实施例和应用场景。因此,本申请并不限于所描述的实施例,而应该被给予与权利要求一致的最广泛的范围。
本申请中所使用的术语仅用于描述特定的示例性实施例,并不限制本申请的范围。如本申请使用的单数形式“一”、“一个”及“该”可以同样包括复数形式,除非上下文明确提示例外情形。还应当理解,如在本申请中所示,术语“包括”、“包含”仅提示存在所述特征、整体、步骤、操作、元件和/或部件,但并不排除存在或添加一个或以上其他特征、整体、步骤、操作、元件、部件和/或其组合的情况。
在考虑了作为本申请一部分的附图的描述内容后,本申请的特征和特点以及操作方法、结构的相关元素的功能、各部分的组合、制造的经济性变得显而易见。然而,应当理解,附图仅仅是为了说明和描述的目的,并不旨在限制本申请的范围。应当理解的是,附图并不是按比例绘制的。
本申请中使用了流程图用来说明根据本申请的一些实施例的系统所执行的操作。应当理解的是,流程图中的操作可以不按顺序执行。相反,可以按照倒序或同时处理各种步骤。同时,也可以将一个或以上其他操作添加到这些流程图中。一个或以上操作也可以从流程图中删除。
此外,尽管本申请中的系统和方法主要是关于在线汽车欢迎服务来描述的,但是还应该理解,这仅是一个示例性实施例。本申请的系统和方法可能适用于其他任一种按需服务。例如,本申请的系统和方法可以应用于不同的运输系统,包括陆地、海洋、航空航天等或其任意组合。所述运输系统的交通工具可以包括出租车、私家车、顺风车、公交车、火车、动车、高铁、地铁、船舶、飞机、飞船、热气球、无人驾驶的车辆等或其任意组合。例如,马匹、人力车(两轮自行车、三轮车等)、出租车、专车、顺风车、巴士、火车、动车、高铁、地铁、船舶、飞机、飞船、热气球、无人驾驶的交通工具、收/送快递等应用了管理和/或分配的运输系统。本申请的系统或方法的应用场景可以包括网页、浏览器插件、客户端、定制系统、内部分析系统、人工智能机器人等或其任意组合。
本申请中的位置和/或踪迹可以通过嵌入在用户终端(例如,乘客终端、司机终端)中的定位技术来获得。本申请中使用的定位技术可以包括全球定位系统(GlobalPositioning System,GPS)、全球卫星导航系统(Global Navigation Satellite System,GLONASS)、北斗导航系统(Compass Navigation System,COMPASS)、伽利略定位系统、准天顶卫星系统(Quasi-Zenith Satellite System,QZSS)、无线保真(Wireless Fidelity,Wi-Fi)定位技术等或其任意组合。以上定位技术中的一个或以上可以在本申请中交换使用。
本申请的一个方面涉及用于优化按需服务的在线系统和方法。根据本申请,系统和方法可以定义至少两个元素(例如,包括历史司机的时间和位置的状态、历史司机的行为、历史司机在所述状态下获取的收益、包括历史司机的随后时间和随后位置的随后状态,等),根据决策制定过程(例如,MDP)模型,并将至少两个元素输入到增强学习算法(例如,时差学习算法,动态规划算法)获取价值函数。该系统和方法可以基于价值函数为乘客分配司机,以优化在线按需服务中针对订单对司机的分配。根据本申请,系统和方法可以根据不同的业务场景定义至少两个元素(例如,历史司机的在线和离线动作、拼车订单、预定订单、升级订单等),并基于与不同业务场景相关联的至少两个元素确定价值函数。
图1是根据本申请的一些实施例所示的用于在在线按需服务中分配订单的示例性系统100的框图。例如,系统100可以是用于运输服务的在线运输服务平台,例如打车服务、司机服务、车辆递送服务、拼车服务、公交服务、司机雇请服务和班车服务等。系统100可以包括服务器110、乘客终端120、存储器130、司机终端140、网络150和信息源160。该服务器110可包含处理引擎112。
服务器110可以被配置为与在线按需服务有关的过程信息和/或数据,例如,司机到订单的分配。例如,服务器110可以确定分配方法的价值函数,并根据分配方法将每个订单分配给相应的司机终端140。在一些实施例中,服务器110可以是单个服务器,也可以是服务器组。所述服务器组可以是集中式的,也可以是分布式的(例如,服务器110可以是分布式的系统)。在一些实施例中,服务器110可以是本地的,也可以是远程的。例如,服务器110可以经由网络150访问存储在乘客终端120、司机终端140和/或存储器130中的信息和/或数据。又例如,服务器110可以直接连接到乘客终端120、司机终端140和/或存储器130以访问存储的信息和/或数据。在一些实施例中,服务器110可以在云平台上实施。仅作为示例,该云平台可以包括私有云、公共云、混合云、社区云、分布云、内部云、多层云等或其任意组合。在一些实施例中,服务器110可以在本申请中的图2描述的包含了一个或以上组件的计算设备上执行。
在一些实施例中,服务器110可以包括处理引擎112。处理引擎112可以处理与在线按需服务有关的信息和/或数据,例如,针对订单对司机的分配。例如,处理引擎112可以确定分配方法的价值函数,并根据分配方法将每个订单分配给相应的司机终端140。在一些实施例中,所述处理引擎112可包括一个或以上处理引擎(例如,单芯片处理引擎或多芯片处理引擎)。仅作为范例,处理引擎112可以包括中央处理单元(CPU)、特定应用集成电路(ASIC)、特定应用一组指令处理器(ASIP)、图形处理单元(GPU)、物理处理单元(PPU)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、可编程逻辑设备(PLD)、控制器、微控制器单元、精简一组指令计算机(RISC)、微处理器等或其任意组合。
在一些实施例中,乘客终端120和/或司机终端140可以是与订单直接相关的个人,工具或其他实体。乘客可以是服务请求者。在本申请中,“服务请求者”,“乘客终端”和“乘客”可以互换使用。司机可以是服务提供者。在本申请中,“司机”,“司机终端”和“服务提供者”可互换使用。在一些实施例中,乘客终端120可以包括移动设备120-1、平板电脑120-2、膝上型计算机120-3、以及机动车辆内置设备120-4等,或者任何组合。在一些实施例中,移动设备120-1可包括智能家居设备、可穿戴设备、智能移动设备、虚拟现实设备、增强实境设备等或其任意组合。在一些实施例中,智能家居设备可以包括智能照明设备、智能电器控制装置、智能监控设备、智能电视、智能摄像机、对讲机等,或其任意组合。在一些实施例中,该可穿戴设备可包括智能手镯、智能鞋袜、智能眼镜、智能头盔、智能手表、智能衣服、智能背包、智能配件等或其任意组合。在一些实施例中,智能移动设备可以包括智能电话、个人数字助理(PDA)、游戏设备、导航设备、销售点(POS)等,或其任意组合。在一些实施例中,虚拟现实设备和/或增强型虚拟现实设备可以包括虚拟现实头盔、虚拟现实眼镜、虚拟现实眼罩、增强现实头盔、增强现实眼镜、增强现实眼罩等,或其任意组合。例如,虚拟现实设备和/或增强实境设备可以包括Google Glass、Oculus Rift、HoloLens或Gear VR等。在一些实施例中,机动车辆内置设备120-4可以包括车载计算机、车载电视等。在一些实施例中,乘客终端120可以是具有定位技术的设备,用于定位用户和/或乘客终端120的位置。
在一些实施例中,司机终端140可以是一个与乘客终端120类似或者相同的设备。在一些实施例中,司机终端140可以是具有用来确定司机或者司机终端140位置的定位技术的设备。在一些实施例中,乘客终端120和/或司机终端140可以与另一个定位设备通信以确定用户、乘客终端120、司机和/或司机终端140的位置。在一些实施例中,乘客终端120和/或司机终端140可以将定位信息发送到服务器110。
存储器130可以存储与订单相关的数据和/或指令。在一些实施例中,存储器130可以存储从乘客终端120和/或司机终端140获得/获取的数据。在一些实施例中,存储器130可以存储服务器110用来执行或使用以完成本申请中描述的示例性方法的数据和/或指令。在一些实施例中,存储设备140可包括大容量存储器、可移动存储器、挥发性读写内存、只读内存(ROM)等或其任意组合。示例性的大容量存储器可以包括磁盘、光盘、固态磁盘等。示例性可移动存储器可以包括闪存驱动器、软盘、光盘、内存卡、压缩盘、磁带等。示例性易失性读写内存可以包括随机存取内存(RAM)。示例性RAM可包括动态随机存取存储器(DRAM)、双倍数据速率同步动态随机存取存储器(DDR SDRAM)、静态随机存取存储器(SRAM)、晶闸管随机存取存储器(T-RAM)和零电容随机存取存储器(Z-RAM)等。示例性只读存储器可以包括掩模型只读存储器(MROM)、可编程只读存储器(PROM)、可擦除可编程只读存储器(PEROM)、电可擦除可编程只读存储器(EEPROM)、光盘只读存储器(CD-ROM)和数字多功能磁盘只读存储器等。在一些实施例中,所述存储器130可在云平台上实现。仅作为示例,该云平台可以包括私有云、公共云、混合云、社区云、分布云、内部云、多层云等或其任意组合。
在一些实施例中,存储器130可以连接到网络150以与系统100中的一个或以上组件(例如,服务器110、乘客终端120、司机终端140)通信。系统100中的一个或以上部件可以通过网络150访问储存于存储器130中的数据或指令。在一些实施例中,存储器130可以直接连接到系统100中的一个或以上组件(例如,服务器110、乘客终端120、司机终端140等)或与之通信。在一些实施例中,存储器130可以是服务器110的一部分。
网络150可以促进信息和/或数据的交换。在一些实施例中,系统100中的一个或以上组件(例如,服务器110、乘客终端120、存储器130和司机终端140)可以通过网络150向/从系统100中其他组件发送和/或接收信息和/或数据。例如,服务器110可以经由网络150从乘客终端120获得/获取订单。在一些实施例中,网络150可以为任意形式的有线或无线网络,或其任意组合。仅作为示例,网络150可以包括有线网络、有线网络、光纤网络、远程通信网络、内联网、因特网、局域网(LAN)、广域网(WAN)、无线局域网(WLAN)、城域网(MAN)、广域网(WAN)、公共电话交换网(PSTN)、蓝牙TM网络、ZigBeeTM网络、近场通信(NFC)网络、全球移动通信系统(GSM)网络、码分多址(CDMA)网络、时分多址(TDMA)网络、通用分组无线电服务(GPRS)网络、增强数据GSM演进速率(EDGE)网络、宽带码分多址(WCDMA)网络、高速下行链路分组接入(HSDPA)网络、长期演进(LTE)网络、用户数据报协议(UDP)网络、传输控制协议/Internet协议(TCP/IP)网络、短消息服务(SMS)网络、无线应用协议(WAP)网络、超宽带(UWB)网络、红外线等,或其任何组合。在一些实施例中,系统100可以包括一个或以上网络接入点。例如,系统110可以包括有线或无线网络接入点,例如基站和/或无线接入点150-1,150-2,...,系统100的一个或以上组件可以通过网络150交换数据和/或信息。
信息源160是为系统提供其他信息的一个源。信息源160可以用于为系统提供与服务相关的信息,例如,天气情况、交通信息、法律法规信息、新闻事件、生活资讯、生活指南信息等。信息源160可以在单个中央服务器,通过通信链路连接的多个服务器或多个个人设备中实现。当信息源160在多个个人设备中实现时,个人设备可以生成内容(例如,被称为“用户生成的内容”),例如,通过将文本、语音、图像和视频上载到云服务器。信息源可以由多个个人设备和云服务器生成。
图2是根据服务器110的计算设备200的示例性硬件和软件组件所示的示意图,根据本申请的一些实施例,可以实现乘客终端120、存储器130、司机140和/或信息源160。本实施例中的特定系统利用功能框图解释了一个包含用户界面的硬件平台。这种计算机可以是一个通用目的计算机,也可以是一个有特定目的计算机。两种计算机都可以被用于实现本实施例中的特定系统。计算设备200可以被配置用于实现执行本申请中公开的一个或以上功能的任何组件。例如,计算设备200可以实现如本文所述的系统100的任何组件。在图1至图2中,仅出于方便的目的仅示出了一个这样的计算机设备。本申请中的一个普通技术人员在编写该应用程序时会理解,与所述的请求服务相关的计算机功能可以在多个类似的平台上以分布式方式实现,以分散处理负荷。
例如,计算设备200可以包括与网络相连接通信端口250,以实现数据通信。计算设备200还可以包括处理器(例如,处理器220),其形式为一个或以上处理器(例如,逻辑电路),用于执行程序指令。例如,处理器可以包括接口电路和其中的处理电路。接口电路可以被配置为从总线210接收电信号,其中电信号编码用于处理电路的结构化数据和/或指令。处理电路可以进行逻辑计算,然后将结论、结果和/或指令编码确定为电信号。然后,接口电路可以经由总线210从处理电路发出电信号。
示例性计算设备可以包括内部通信总线210,程序存储和不同形式的数据存储,包括例如盘270,以及只读内存(ROM)230或随机存取内存(RAM)240,用于由计算设备处理和/或传输的各种数据文件。示例性计算设备也可以包括储存在ROM 230、RAM 240和/或其他形式的非暂时性存储介质中的能够被处理器220执行的程序指令。本申请的方法和/或流程可以以程序指令的方式实现。计算设备200还包括I/O组件260,支持计算机和其他组件之间的输入/输出。计算设备200也可以通过网络通信接收编程和数据。
仅用于说明,图2中仅示出了一个CPU和/或处理器。还可以考虑多个CPU和/或处理器;因此,由本申请中描述的一个CPU和/或处理器执行的操作和/或方法步骤也可以由多个CPU和/或处理器联合或单独执行。例如,如果在本申请中,计算设备200的CPU和/或处理器执行步骤A和步骤B,应当理解的是,步骤A和步骤B也可以由计算设备200的两个不同的CPU和/或处理器共同地或独立地执行(例如,第一处理器执行步骤A,第二处理器执行步骤B,或者第一和第二处理器共同地执行步骤A和步骤B)。
图3是根据本申请的一些实施例所示的可以在其上实现乘客终端120或提供者终端140的示例性移动设备300的示例性硬件和/或软件组件的示意图。如图3所示,移动设备300可以包括通信单元310、显示器320、图形处理单元(GPU)330、中央处理单元(CPU)340、I/O 350、内存360和存储器390。CPU 340可以包括接口电路和类似于处理器220的处理电路。在一些实施例中,任何其他合适的组件,包括但不限于系统总线或控制器(未示出),也可包括在移动设备300内。在一些实施例中,移动操作系统370(例如,iOSTM、ANDROIDTM、WindowsPhoneTM等)和一个或以上应用程序380可以从存储器390以订单的形式加载到内存360中以由CPU 340执行。应用程序380可以包括浏览器或任何其他合适的移动应用程序,用于从移动设备300上的基于位置的服务提供系统接收和呈现与服务请求或其他信息有关的信息。用户与信息流的交互可以通过I/O设备350实现,并通过网络120提供给处理引擎112和/或系统100的其他组件。
在实现上述各种模块,单元及其功能的订单中,计算机硬件平台可以用作一个或以上元件(例如,图2中描述的服务器110的模块)的硬件平台。由于这些硬件元件,操作系统和程序语言是常见的,因此可以假设本领域技术人员熟悉这些技术并且他们可能能够根据本申请中描述的技术提供路线规划中所需的信息。具有用户界面的计算机可以用作个人计算机(PC)或其他类型的工作站或终端设备。在正确编程之后,具有用户界面的计算机可以用作服务器。可以认为本领域普通技术人员也可以熟悉这种类型的计算机设备的这种结构、程序或一般操作。因此,没有针对附图描述额外的解释。
图4是根据本申请的一些实施例所示的示例性处理引擎112的框图。在一些实施例中,处理引擎112可包括通信模块410、记录确定模块420、价值函数确定模块430和分配优化模块440。这些模块中的每个、部分或全部可以是处理引擎112的全部或部分的硬件电路。这些模块中的每个、部分或全部也可以实现为可以由处理引擎读取和执行的应用程序或一组指令。此外,模块可以是硬件电路和应用/指令的任何组合。例如,当处理引擎执行应用程序/一组指令时,模块可以是处理引擎112的一部分。
通信模块410可以被配置用于获取与在线按需服务相关的信息。例如,通信模块410可以被配置用于获取与一个或至少两个历史订单相关的订单信息。又例如,通信模块410可以被配置用于获取与对应于该一个或至少两个历史订单的一个或至少两个历史司机相关的司机信息。出于说明的目的,描述将参考“至少两个历史订单”和“至少两个历史司机”作为示例。应当注意,在一些实施例中,获取仅与一个历史司机相关的订单信息或仅与一个历史订单相关的司机信息。
本申请中的术语“订单信息”可以指与一个或至少两个历史订单相关的信息和/或特征的组合。例如,历史订单的订单信息可包括历史订单号,历史订单起始位置,历史订单目的地,历史订单开始时间,历史订单结束时间,发起历史订单的乘客,完成历史订单的历史司机,历史司机的司机类型,历史订单的订单类型,历史订单的订单价值等,或其任何组合。本申请中的术语“历史订单”可以指过去由服务请求者通过在线按需服务平台制作并且由服务提供者完成的订单。
本申请中的术语“司机信息”可以指与一个或至少两个历史司机相关的信息和/或特征的组合。例如,历史司机的司机信息可以包括历史司机的至少一个时空状态(包括位置和相应的时间),历史司机所采取的至少一个行为(例如,接受历史订单,在空闲时间段处于空闲状态等),历史司机的至少一个随后时空状态(包括随后位置和相应的随后时间),司机标识(例如,司机的注册号码),司机拥有的车辆的车辆类型,车辆标识(例如,车辆的车牌号),司机简档(例如,司机的服务分数)等,或其任何组合。本申请中的“历史司机”一词可指过去在平台上注册并提供服务的服务提供者。
记录确定模块420可以被配置用于确定多个记录。在一些实施例中,对于预设时间段的每个历史司机,记录确定模块420可以被配置为根据决策过程基于从通信模块410获取的订单信息和司机信息来确定至少两个记录,决策过程为例如但不限于马尔可夫决策过程(Markov Decision Process,MDP)模型。例如,记录确定模块420可以被配置为确定一个或以上订单记录和一个或以上空闲时间记录。每个订单记录可以对应于历史订单,并且每个空闲时间记录可以对应于未关联任何历史订单的闲置时间段。又例如,记录确定模块420可以被配置为基于历史司机的上线时间点和下线时间点确定对应于闲置时间段的至少一个空闲时间记录。作为又一示例,记录确定模块420可以被配置用于识别随后订单是预约订单(或升级订单),并且基于预约订单(或升级订单)确定对应于闲置时间段的至少一个空闲时间记录。作为又一示例,记录确定模块420可以被配置用于基于组合了具有相同行程ID的至少两个拼车订单的普通拼车订单来确定订单记录。
在一些实施例中,至少两个记录可包括至少一个订单记录和/或至少一个空闲时间记录。在一些实施例中,订单记录可以对应于历史司机接受并完成的历史订单。订单记录可以包括与历史订单相对应的一个或以上元素以及与历史订单相对应的历史司机。例如,订单记录可以包括司机的时空状态,包括历史司机在接受历史订单时的时间和位置;司机的行为,包括接受历史订单和服务(驾驶)历史订单;司机的收益,包括历史订单的价值;司机的随后时空状态,包括历史司机在完成历史订单时的时间和位置等,或其任何组合。在一些实施例中,空闲时间记录可以对应于未关联任何历史订单的闲置时间段。订单记录可以包括与闲置时间段和与所述闲置时间段对应的历史司机相关的至少一个元素。例如,空闲时间记录可以包括司机的时空状态,包括闲置时间段历史司机的时间和位置;闲置时间段期间司机的行为,包括处于空闲;司机的收益,包括零;司机的随后时空状态,包括空闲时间段结束时历史司机的随后时间和随后位置等,或其任何组合。
价值函数确定模块430可以被配置用于确定价值函数。例如,价值函数确定模块430可以被配置为根据增强学习算法,基于所确定的每个历史司机的至少两个记录确定价值函数。在与图5相关的描述中提供了对价值函数确定模块430的操作更详细的描述。
分配优化模块440可以被配置用于优化在线按需服务中针对新订单的分配。例如,分配优化模块440可以被配置用于基于由价值函数确定模块430确定的价值函数来优化针对新订单对司机的分配。在与图5相关联的描述中提供了对分配优化模块440的操作更详细的描述。
处理引擎112中的模块可以经由有线连接或无线连接彼此连接或通信。有线连接可以包括金属线缆、光缆、混合电缆等或其任意组合。无线连接可以包括局域网络(LAN)、广域网络(WAN)、蓝牙(BluetoothTM)、紫蜂网络(ZigBeeTM)、近场通讯(NFC)等或其任意组合。两个或以上模块可以合并成一个模块,以及任意一个模块可以被拆分成两个或以上单元。例如,记录确定模块420可以集成在价值函数确定模块440中作为单个模块,该模块可以确定至少两个记录和价值函数。又如,通信模块410可以分为两个单元:订单信息获取单元和司机信息获取单元,它们一起工作以分别实现通信模块420的功能。应当注意,图4仅示出了处理引擎112中的四个模块,处理引擎112可以进一步包括一个或以上其他模块。例如,处理引擎还可以包括用于获取至少一个新订单的新订单获取模块,以及用于为至少一个新订单中的每一个分配司机的订单分配模块。
图5是根据本申请的一些实施例所示的用于优化在线按需服务的示例性过程和/或方法500的流程图。在一些实施例中,过程500中的一个或以上步骤可以在图1所示的系统100中实现。例如,过程500中的一个或以上步骤可以作为指令的形式存储在存储器(例如,存储器130、ROM 230、RAM 240等)中,并且由服务器110调用和/或执行。(例如,服务器110中的处理引擎112,或服务器110中的处理引擎112的处理器220)。
在510中,处理器220(或通信模块410)可以获取与至少两个历史订单相关的订单信息。
本申请中的术语“历史订单”可以指过去在线按需服务平台上由服务请求者请求并且由服务提供者完成的订单。本申请中的术语“订单信息”可以指与一个或至少两个历史订单相关联的信息和/或特征的组合。例如,与历史订单相关联的订单信息可包括历史订单号、历史订单起始位置、历史订单目的地、历史订单开始时间、历史订单结束时间、发起历史订单的乘客、完成历史订单的历史司机、历史订单的订单类型、历史订单的订单价值等,或其任何组合。
在一些实施例中,一旦订单完成,则该订单被称为历史订单。请求历史订单的乘客终端120和/或完成历史订单的司机终端140可以通过网络150,将订单信息发送到系统100的存储介质(例如,存储器130、ROM 230、RAM 240等)。处理器220可以从系统100的存储介质获取订单信息。
在一些实施例中,至少两个历史订单可以包括至少一个在预设时间段(例如过去的1天、2天、3天、5天、7天、1个月、3个月、6个月、1年、2年、3年、5年等)中完成的历史订单。例如,处理器220可以获取与过去一年、过去一个月、过去一天、过去一小时等中或其任何组合中完成的至少一个历史订单相关联的订单信息。在一些实施例中,至少两个历史订单可包括在过去的最近一段时间内完成的预设数量的历史订单(例如,一百万个订单、100000个订单、10000个订单、1000订个单、100个订单、50个订单、10个订单、5个订单、1个订单等)。
在520中,处理器220(或通信模块410)可以获取与对应于至少两个历史订单的至少两个历史司机相关的司机信息。
本申请中的“历史司机”一词可指过去在平台上注册并提供服务的服务提供者。在一些实施例中,历史司机可以对应于至少一个历史订单,并且历史订单可以仅对应于一个历史订单。例如,历史司机过去可能已经完成了至少一个历史订单以提供服务,并且历史订单可以仅由一个历史司机完成。
本申请中的术语“司机信息”可以指与一个或至少两个历史司机相关联的信息和/或特征的组合。例如,历史司机的司机信息可以包括历史司机的至少一个时空状态(包括位置和相应的时间)、历史司机所采取的至少一个行为(例如,接受历史订单,在闲置时间段处于闲置状态等)、历史司机的至少一个随后时空状态(包括随后位置和相应的随后时间)、司机标识(例如,司机的注册号码)、司机拥有的车辆的车辆类型、车辆标识(例如,车辆的车牌号)、司机简档(例如,司机的服务分数)等,或其任何组合。
在一些实施例中,一旦司机在在线按需平台上注册和/或完成订单,与司机相关联的司机终端140可以经由网络150将相应的司机信息发送到系统100的存储介质(例如,存储器130、ROM 230、RAM 240等)。处理器220可以从系统100的存储介质获取司机信息。
在530中,对于预设时间段的每个历史司机,处理器220(或记录确定模块420)可以根据决策过程基于订单信息和司机信息确定至少两个记录,决策过程可以为例如但不限于马尔可夫决策过程(MDP)模型,出于说明的目的以其为示例。在一些实施例中,处理器220可以遍历至少两个历史司机中的每个历史司机,以根据MDP模型获取大量订单。
在一些实施例中,预设时间段可以指过去的预设时间段(例如,1天、2天、3天、5天、7天、1个月、3个月、6个月、1年、2年、3年,5年等),并根据不同的应用场景确定。例如,预设时间段可以是系统100预定的特定时间段,例如过去一年、过去一个月、过去一天、过去一小时等。在一些实施例中,处理器220可以基于订单时间(例如,订单开始时间,订单结束时间等)提取所述预设时间段期间的至少一个历史订单和至少一个对应的历史司机。例如,处理器可以获取与至少一个历史订单相关,以分别确定每个历史司机的至少两个记录。
在一些实施例中,对于历史司机,处理器220可以在预设时间段将订单信息和相应的司机信息输入到MDP模型中。MDP模型可以将历史司机定义为代理(agent),并且每个记录可以包括四个元素<S,A,R,P>。在一些实施例中,四个元素可包括司机的时空状态(S)、司机的行为(A)、司机的收益(R)、司机的随后时空状态(P)等,或其任意组合。例如,在MDP模型中,在每个时间步,一个过程(这里指的是在线按需平台上提供服务)处于状态S,决策者(这里是指历史司机)可以选择在状态S中可用的行为A。该过程通过随机进入随后状态P并给决策者一个相应的奖励R的方式在下一时间步做出响应。在一些实施例中,MDP模型的输出可以包括价值函数(V(S))。在一些实施例中,价值函数(V(S))可以指历史司机在司机的时空状态(S)下可以获取的累积收益的期望值。
在一些实施例中,司机的时空状态(S)可以指相应的历史司机位于特定时间的情况。例如,司机的时空状态可以包括时间和位置的组合。该时间可以是历史司机在该位置的时间点或时间段,并且该位置可以是历史司机在该时间点或时间段所处的位置或区域。在一些实施例中,位置可包括位置名称、区域名称、位置的坐标等,或其任何组合。
在一些实施例中,司机的行为(A)可以指对应的历史司机在司机的时空状态下采取的行为。例如,司机动作可能包括接受历史订单,拒绝历史订单,在历史订单下工作(驾驶),完成历史订单,处于空闲状态(既不接受任何历史订单也不服务于任何历史订单),处于离线状态等,或其任何组合。
在一些实施例中,司机的收益(R)可以指相应的历史司机由于司机的行为而产生的收益。例如,如果历史司机接受历史订单,则历史司机将产生历史订单的订单价值。因此,司机的收益可能是历史订单的订单价值。又如,如果历史司机拒绝历史订单(或处于空闲状态,处于离线状态),历史司机将不会产生任何价值。因此,司机的收益可能为零。
在一些实施例中,司机的随后时空状态(P)指的是相应的历史司机位于对应于先前状态的特定时间的随后时间的情况。例如,司机的随后时空状态可以包括随后时间和随后位置的组合。随后时间可以是历史司机位于随后位置的时间点或时间段,随后位置可以是历史司机在随后时间点或随后时间段的位置或区域。在一些实施例中,随后位置可以包括随后位置名称、随后区域名称、随后位置的坐标等,或其任何组合。在一些实施例中,随后位置可以与司机的时空状态中的位置相同。例如,历史司机可能会在停留在同一个地方不动。在一些实施例中,随后位置可以与司机的时空状态中的位置不同。例如,历史司机可能会在随后时间移动到另一个地方。
在一些实施例中,至少两个记录可以包括根据历史司机的不同状态和/或行为的不同类型的记录。例如,至少两个记录可以包括至少一个订单记录和至少一个空闲时间记录。在一些实施例中,订单记录可以指对应于历史订单的记录,该历史订单被相应的历史司机接受。例如,订单记录可以包括司机的时空状态,包括历史司机在接受历史订单时的时间和位置;司机的行为,包括接受历史订单和服务(驾驶)历史订单;司机的收益,包括历史订单的价值;司机的随后时空状态,包括历史司机在完成历史订单时的时间和位置等,或其任何组合。在一些实施例中,空闲时间订单可以指对应于未关联任何历史订单的闲置时间段的订单,其中对应的历史司机处于空闲状态,在任何历史订单时间段不接受任何历史订单或提供服务。例如,空闲时间订单可以包括司机的时空状态,其包括历史司机在闲置时间段的时间和位置;司机的行为,包括在闲置时间段处于空闲状态;司机的收益,包括零;司机随后时空状态,包括空闲时间结束时历史司机的随后时间和随后位置等,或其任何组合。在一些实施例中,闲置时间段可以是限制时间的预设持续时长。在一些实施例中,可以结合图8-11及其描述来描述包括一个或以上订单记录和/或一个或以上空闲时间记录的至少两个订单的获取。
在540中,处理器220(或价值函数确定模块430)可以根据增强学习算法并基于每个历史司机的至少两个订单确定价值函数。
在一些实施例中,价值函数可以指表示历史司机在司机的时空状态下可以获取的累积收益的期望值的函数。在一些实施例中,价值函数可以包括用于确定历史司机将产生的累积收益的期望值的算法、公式、方法、过程等。
在一些实施例中,增强学习算法可包括时间差(temporal-difference,TD)学习算法、动态规划算法、蒙特卡罗(Monte Carlo,MC)学习算法、SARSA算法、Q学习算法等,或任何组合它们。出于说明目的,本文将TD学习算法和动态规划算法描述为用于确定价值函数的示例。
在一些实施例中,TD学习算法可以模拟(或遍历)一系列行为期间的每个或几个步骤。TD学习算法可以根据产生的收益和随后状态的价值来估计该随后状态的前一个状态的价值。例如,处理器220可以将每个历史司机的至少两个订单(例如,<S,A,R,P>)输入到公式(1)中:
V(St)←V(St)+α[Rt+1+γV(St+1)-V(St)] (1),
其中t表示采取行为的时间点,t+1表示t的随后时间点,St表示采取行为前的状态,Rt+1表示历史司机在t+1赚取的收益,V(St)和V(St+1)分别表示状态St和状态St+1的价值函数,γ表示0和1之间的衰减因子,α表示学习率。
在一些实施例中,处理器220可以将每个历史司机的至少两个订单输入到公式(1)中,直到公式(1)收敛。然后处理器220可以确定价值函数(V(s))。应当注意公式(1)只是TD学习算法的一个步骤,其他包括至少两个步骤的公式可用于确定价值函数。
图6-A和图6-B是根据本申请的一些实施例所示的示例性状态的示意图。如图6-A所示,历史司机在时间点T0时位于位置X处(也称为状态S0)并且在随后时间点T1时位于位置X处(也称为状态S1),其结合其他信息,表示在从T0到T1的时间段内,历史司机处于空闲状态,并且未关联任何历史订单。处理器220可以将与状态S0和S1相关联的相应记录输入到公式(1)中,以确定S0的价值函数为公式(2):
V(S0)←V(St)+α[0+γV(S1)-V(S0)] (2),
其中历史司机在t+1产生的收益为0。
如图6-B所示,历史司机在时间点T0时位于位置X处(也称为状态S0)并且在随后时间点T2时位于位置Y处(也称为状态S2),其结合其他信息,表示在从T0到T2的时间段内,历史司机接受了历史订单。处理器220可以将与状态S0和S2相关联的相应记录输入到公式(3)中,以确定S0的价值函数:
V(S0)←V(S0)+α[R+γ3V(S2)-V(S0)] (3),
其中历史司机在t+2产生的收益是R.
图7是根据本申请的一些实施例所示的动态规划算法的示例性过程的示意图。如图7所示,动态规划算法可以从状态St开始,并且遍历每个可能的状态以确定价值函数。
在一些实施例中,动态规划算法可以将多阶段过程变为单阶段过程。动态规划算法可以根据每个阶段的关系逐个求解价值函数。例如,动态规划算法可以基于每个历史司机的至少两个订单来模拟状态转移概率。例如,处理器220可以将每个历史司机的至少两个订单输入到公式(4)中,以确定在时间线上从后向前的每个时间点的任何位置的价值函数:
Vk+1(S)=Eπ[Rt+1+γVk(St+1)|St=S] (4),
其中t表示采取行为前的时间点,t+1表示t的随后时间点,Rt+1表示在t+1历史司机赚取的收益,V(St)和V(St+1)分别表示在状态St和状态St+1的价值函数,γ表示0与1之间的衰减因子,以及Eπ表示数学期望。
在550中,处理器220(或分配优化模块440)可以基于价值函数来优化针对新订单对司机的分配。
在一些实施例中,新订单可以指系统100在当前时间获取的至少一个订单。处理器220可基于价值函数确定分配策略和/或方法,并基于分配策略和/或方法将新订单中的每个订单分配给司机。例如,处理器220可以确定司机如果被分配了新订单的各订单可以带来的估计价值,并且将对应于更高估计价值的订单分配给某个司机(例如,具有更高的服务分数的司机)。
应该注意的是,上述仅出于说明性目的而提供,并不旨在限制本申请的范围。对于本领域的普通技术人员来说,根据本申请的教导可以做出多种变化和修改。然而,变化和修改不会背离本申请的范围。例如,可以在示例性过程/方法500中的其他地方添加一个或以上其他可选步骤(例如,存储步骤,预处理步骤)。又例如,示例性过程/方法500中的所有步骤可以在包括一组指令的计算机可读介质中实现。指令可以以电流或电信号的形式传输。
图8是根据本申请的一些实施例所述的用于获取至少两个记录的示例性过程和/或方法800的流程图。在一些实施例中,过程800中的一个或以上步骤可以在图1所示的系统100中实现。例如,过程800中的一个或以上步骤可以作为指令的形式存储在存储器130和/或存储器(例如,ROM 230、RAM 240等)中,并且由其调用和/或执行。服务器110(例如,服务器110中的处理引擎112,或服务器110中的处理引擎112的处理器220)。
在一些实施例中,处理器220可以实现过程和/或方法800用于图5描述的获取至少两个记录。例如,处理器220可以根据决策过程模型(例如,MDP模型)实现用于确定一个或以上订单记录和/或一个或以上空闲时间记录的过程和/或方法800。在一些实施例中,在过程和/或方法800中确定的一个或以上订单记录和/或一个或以上空闲时间记录可用于根据图5的描述中根据增强学习算法确定价值函数。
在810中,处理器220(或记录确定模块420)可以确定一个或以上订单记录。在一些实施例中,每个订单记录可以对应于一个历史订单。在一些实施例中,在预设时间段,对于每个司机,处理器可以确定对应于每个历史订单的订单记录。
在一些实施例中,订单记录可以指对应于历史订单的记录,其中对应的历史司机接受历史订单。在一些实施例中,订单记录可以包括司机的时空状态,包括历史司机在接受历史订单时的时间和位置;司机的行为,包括接受历史订单和服务(驾驶)历史订单;司机的收益,包括历史订单的价值;司机的随后时空状态,包括历史司机在完成历史订单时的时间和位置等,或其任何组合。
在一些实施例中,历史订单是普通拼车订单。普通拼车订单可以指组合了至少两个拼车订单的订单,所述至少两个拼车订单在拼车订单的路线被处理和优化之前或之后具有相同的路线ID。每个拼车订单可以对应于一个服务请求。在一些实施例中,行程ID可以指驾驶路线的标识。处理器220可以为每个拼车订单分配行程ID。例如,可以在同一时间段由同一司机完成并且具有相同行驶路线的至少一部分的拼车订单可以被分配给相同行程ID。具有相同行程ID的拼车订单可以包括在普通拼车订单中,该拼车订单被分配给司机。在一些实施例中,处理器220可以生成对应于普通拼车订单的订单记录。订单记录可能包括:司机的时空状态,包括历史司机在第一次接受普通拼车订单时的时间和位置;司机的行为,包括接受普通拼车订单和服务(驾驶)普通拼车订单;司机的收益,包括拼车订单的价值之和;司机的随后时空状态的总和,包括历史司机在最后完成普通拼车订单时的时间和位置,或其任何组合。在一些实施例中,历史司机在第一次接受普通拼车订单时的时间和位置可以指具有相同路线ID的多个拼车订单中最早开始的拼车订单的时间和位置。拼车订单的价值之和可以指具有相同行程ID的拼车订单的订单价值之和。在一些实施例中,每个拼车订单的价值可以显示给用户的价值并且指用户可以为每个拼车订单支付的价值。历史司机在完成普通拼车订单时的时间和位置可以指具有相同路线ID的多个拼车订单中最晚结束的拼车订单的时间和位置。
在820中,处理器220(或记录确定模块420)可以确定一个或以上空闲时间记录。在一些实施例中,每个空闲时间订单可以对应于未与任何历史订单关联的一个闲置时间段。
在一些实施例中,可以根据不同的应用场景来确定闲置时间段。例如,闲置时间段可以根据不同的时间,不同的区域等或其任何组合而不同。又例如,闲置时间段可以是系统100确定的一段时间,例如10分钟、20分钟、45分钟等。仅作为示例,处理器220可以每10分钟生成一次空闲时间记录。历史司机D于8:00至8:20处于空闲状态,并于8:23接受历史订单。处理器可以在8:00到8:30之间产生两个空闲时间记录:记录1从8:00至8:10,从位置A开始,到8:10至8:20,在位置A结束,收益为0;记录2从8:10至8:20,从位置A开始,到8:20至8:30,在位置A结束,收益为0。
在一些实施例中,空闲时间订单可以指对应于未与任何历史订单关联的闲置时间段的记录,所述闲置时间段响应于对应的历史司机空闲而不接受任何历史订单或服务任何历史订单。在一些实施例中,空闲时间订单可以包括司机的时空状态,包括在闲置时间段历史司机的时间和位置;司机的行为,包括在空闲时间段处于空闲状态;司机的收益,包括零的;司机的随后时空状态,包括空闲时间结束时历史司机的随后时间和随后位置,或其任意组合。在一些实施例中,闲置时间段可以是闲置时间中的预设持续时长。
在一些实施例中,订单记录(或空闲时间记录)中的时间和位置可以是量化值。例如,时间可以量化为具有一定分钟数的间隔,例如1分钟、10分钟、30分钟、300分钟等。又例如,处理器220可以将区域划分为至少两个矩形网格或具有其他形状的网格。可以将位置量化为矩形网格的粒度。例如,矩形网格可以是1公里×1公里或700米×700米,位置可以是1个矩形网格、10个矩形网格、100个矩形网格等。
应该注意的是,上述仅出于说明性目的而提供,并不旨在限制本申请的范围。对于本领域的普通技术人员来说,根据本申请的教导可以做出多种变化和修改。然而,变化和修改不会背离本申请的范围。例如,可以在示例性过程/方法800中的其他地方添加一个或以上其他可选步骤(例如,存储步骤,预处理步骤)。又例如,示例性过程/方法800中的所有步骤可以在包括一组指令的计算机可读介质中实现。指令可以以电流或电信号的形式传输。
图9是根据本申请的一些实施例所述的用于确定至少两个记录的示例性过程和/或方法900的流程图。在一些实施例中,过程900中的一个或以上步骤可以在图1所示的系统100中实现。例如,过程900中的一个或以上步骤可以作为指令的形式存储在存储器130和/或存储器(例如,ROM 230、RAM 240等)中,并且由服务器110(例如,服务器110中的处理引擎112,或服务器110中的处理引擎112的处理器220)调用和/或执行。
在一些实施例中,处理器220可以实现过程和/或方法900用于图5描述的获取至少两个记录。例如,处理器220可以根据决策过程模型(例如,MDP模型)实现用于确定一个或以上订单记录和/或一个或以上空闲时间记录的过程和/或方法900。在一些实施例中,可以使用在过程和/或方法900中确定的一个或以上订单记录和/或一个或以上空闲时间记录来根据图5的描述中的增强学习算法来确定价值函数。
在910中,处理器220(或记录确定模块420)可以确定一个或以上订单记录。在一些实施例中,每个订单记录可以对应于历史订单。订单记录可以结合图8及其描述来描述。
在920中,处理器220(或记录确定模块420)可以基于司机信息获取历史司机在预设时间段中的上线时间点和下线时间点。
在一些实施例中,处理器220可从司机信息中提取预设时间段中的历史司机的上线时间点和下线时间点。可以根据不同的应用场景确定预设时间段。例如,预定时段可以是小时、几小时、一天、一周、一个月、一年等。
在一些实施例中,上线时间点可以指历史司机连接到在线平台并且准备被分配或接受订单,或者服务于历史订单的时间点。例如,上线时间点可以是历史司机经由网络150登录安装在司机的移动设备中的应用程序的时间点。作为又一示例,上线时间点可以是历史司机通过网络150打开应用中的开关以启动服务功能的时间点。
在一些实施例中,下线时间点可以指历史司机与在线平台断开并且不可被分配或接受订单的时间点。例如,下线时间点可以是历史司机经由网络150登出安装在司机的移动设备中的应用程序的时间点。作为又一示例,下线时间点可以是历史司机关闭应用中的开关以经由网络150关闭服务功能的时间点。
在930中,处理器220(或记录确定模块420)可以确定与所述上线时间点和接受第一历史订单的时间点之间的闲置时间段对应的至少一个空闲时间记录。在一些实施例中,所述空闲时间记录中的一个对应于司机登录之后和司机开始第一订单之前的时间段。
在一些实施例中,处理器220可以在预设时间段从订单信息和相应的司机信息获取接受第一历史订单的时间点。在上线时间点和接受第一历史订单的时间点,处理器220可以生成每个闲置时间段中的空闲时间记录。例如,历史司机在一天的7:55上线,在8:23,他/她接受(或被分配)历史订单。处理器220可以产生两个在8:00到8:30之间的空闲时间记录:记录1:“从8:00至8:10,从位置A开始”(司机的时空状态(S)),“到8:10至8:20,在位置A结束”(司机的随后时空状态(P)),“收益为0”(司机的收益(R));记录2:“从8:10至8:20,从位置A开始”(司机的时空状态(S)),“到8:20至8:30,在A位置结束”(司机的随后时空状态(P)),收益为0(司机的收益(R))。
在940中,处理器220(或记录确定模块420)可以确定与完成最后历史订单的时间点和所述下线时间点之间的闲置时间段对应的至少另一个空闲时间记录。在一些实施例中,另一个空闲时间记录对应于司机完成最后一次订单之后且在司机退出之前的时间段。
在一些实施例中,处理器220可以从订单信息和相应的司机信息获取在预设时间段完成最后历史订单的时间点。在完成最后的历史订单的时间点和下线时间点之间,处理器220可以生成每个闲置时间段中的空闲时间记录。例如,历史司机在一天的17:35接受(或被分配)最后的历史订单,并于18:01离线。处理器220可以产生两个在17:30到18:00之间的空闲时间记录:记录1:“从17:30至17:40,从位置C开始”(司机的时空状态(S))、“从17:40至17:50,在位置V结束”(司机的随后时空状态(P))、“收益为0”(司机的收益(R));和记录2:“从17:40至17:50,从位置C开始”(司机的时空状态(S)),“到17:50至18:00,在位置C结束”(司机的随后时空状态)(P)),“收益为0”(司机的收益(R))。
在一些实施例中,处理器220可以在上线时间点之前的时间段或者在完成最后的历史订单的时间点之后的时间段不确定(或生成)任何空闲时间记录。在某些实施例中,缺少这样的记录可以反映历史司机在登录或在最后的历史订单之后登出之后获取第一历史订单的迅速性。
应该注意的是,上述仅出于说明性目的而提供,并不旨在限制本申请的范围。对于本领域的普通技术人员来说,根据本申请的教导可以做出多种变化和修改。然而,变化和修改不会背离本申请的范围。例如,可以在示例性过程/方法900中的其他地方添加一个或以上其他可选步骤(例如,存储步骤、预处理步骤)。又例如,示例性过程/方法900中的所有步骤可以在包括一组指令的计算机可读介质中实现。指令可以以电流或电信号的形式传输。
图10是根据本申请的一些实施例所述的用于确定至少两个记录的示例性过程和/或方法1000的流程图。在一些实施例中,过程1000中的一个或以上步骤可以在图1所示的系统100中实现。例如,过程1000中的一个或以上步骤可以作为指令的形式存储在存储器130和/或存储器(例如,ROM 230、RAM 240等)中,并且由服务器110(例如,服务器110中的处理引擎112,或服务器110中的处理引擎112的处理器220)调用和/或执行。
在一些实施例中,处理器220可以实现过程和/或方法1000用于图5的描述获取至少两个记录。例如,处理器220可以根据决策过程模型(例如,MDP模型)实现用于确定一个或以上空闲时间记录的过程和/或方法1000,以便获取至少两个记录。在一些实施例中,在过程和/或方法1000中确定的一个或以上空闲时间记录可用于根据图5的描述中的增强学习算法确定价值函数。
在1010中,处理器220(或记录确定模块420)可以基于订单信息识别随后订单的订单类型。
在一些实施例中,订单类型可以指由在线按需平台提供的一种服务。例如,订单类型可以包括出租车订单、快车订购、私车订单、拼车订单、公交车订单、顺风车订单、预约订单、实时订单等,或任何其组合。在一些实施例中,特定车辆(以及因此其相关联的司机)只能处理某些订单类型。在一些实施例中,某些订单类型仅在特定时间段可用。在一些实施例中,订单可以属于一个或以上订单类型(例如,订单可以是拼车订单和私人汽车订单)。在一些实施例中,处理器220可以基于与随后订单相关联的车辆或随后订单的时间信息来识别订单类型。
在一些实施例中,随后订单可以指从特定历史订单的结束时间起最接近的时间开始的订单(也称为完成某个历史订单的时间)。例如,某个历史订单的结束时间是10:00,随后订单可以是在10:00之后最接近的时间点开始的订单,其间没有其他订单。
在1020,响应于识别随后订单为预约订单,处理器220(或记录确定模块420)可以确定从预约订单的开始时间点起的预设缓冲时间之前的参考时间点。
在一些实施例中,处理器220可以从订单信息获取预约订单的开始时间点。在一些实施例中,可以根据不同的应用场景来确定预设缓冲时间。例如,预设缓冲时间可以根据不同区域,预约订单的不同开始时间等或其任何组合而不同。又例如,预设缓冲时间可以是由系统100确定的特定时间段。例如,预设缓冲时间可以是1小时30分钟、10分钟、5分钟等。
在预约订单的开始时间点之前,处理器220可以确定从预约订单的开始时间点起的预设缓冲时间之前的参考时间点。例如,预设缓冲时间是30分钟,预约订单的开始时间点是13:45,参考时间点可以是13:15。
在1030中,处理器220(或记录确定模块420)可以确定与完成历史订单的时间点和参考时间点之间的闲置时间段对应的至少一个空闲时间记录。
从完成历史订单的时间点到参考时间点,处理器220可以产生每个闲置时间段的空闲时间记录。例如,历史司机在10:00完成历史订单,预约订单的开始时间点是13:45,参考时间点是13:15。从10:00到13:15,处理器220可以每10分钟生成一次空闲时间记录。
应该注意的是,上述仅出于说明性目的而提供,并不旨在限制本申请的范围。对于本领域的普通技术人员来说,根据本申请的教导可以做出多种变化和修改。然而,变化和修改不会背离本申请的范围。例如,可以在示例性过程/方法1000中的其他地方添加一个或以上其他可选步骤(例如,存储步骤、预处理步骤)。又例如,示例性过程/方法1000中的所有步骤可以在包括一组指令的计算机可读介质中实现。指令可以以电流或电信号的形式传输。
图11是根据本申请的一些实施例的用于确定每个司机-订单对的第一匹配值的示例性过程和/或方法700的流程图。在一些实施例中,过程1100中的一个或以上步骤可以在图1所示的系统100中实现。例如,过程1100中的一个或以上步骤可以作为指令的形式存储在存储器130和/或存储器(例如,ROM 230、RAM 240等)中,并且由其调用和/或执行。服务器110(例如,服务器110中的处理引擎112,或服务器110中的处理引擎112的处理器220)。
在一些实施例中,处理器220可以实现过程和/或方法1100用于图5描述的获取至少两个记录。例如,处理器220可以根据决策过程模型(例如,MDP模型)实现用于确定一个或以上空闲时间记录的过程和/或方法1100,以便获取至少两个记录。在一些实施例中,可以使用在过程和/或方法1100中确定的一个或以上空闲时间记录来根据图5的描述中的增强学习算法来确定价值函数。
在1110中,处理器220(或记录确定模块420)可以识别历史司机的服务类型。
在一些实施例中,服务类型可以指司机可以与他/她的车辆提供的一种服务。在一些实施例中,服务类型可以与司机的车辆相关联,因为允许特定车辆服务特定类型的订单。例如,历史司机的服务类型可以包括出租车服务、快车服务、私人汽车服务、公共汽车服务等,或其任何组合。在一些实施例中,处理器220可以基于司机的车辆信息识别服务类型。
在1120中,处理器220(或记录确定模块420)可以基于订单信息识别随后订单的订单类型。
例如,订单类型可以包括出租车订单、快车订购、私人车订单、公交订单等,或其任何组合。在一些实施例中,处理器220可基于与随后订单相关联的车辆识别订单类型。
在一些实施例中,随后订单可以指在某个历史订单的结束时间(也称为完成某个历史订单的时间)之后的最接近时间开始的订单。例如,某个历史订单的结束时间是10:00,随后订单可以是在10:00之后在最接近的时间点开始的订单,其间没有其他订单。
在1130,响应于识别随后订单作为历史司机的升级订单,处理器220(或记录确定模块420)可以识别历史司机接收与所述服务类型相关的正常订单的开始时间点。
在一些实施例中,升级订单可以指与司机不匹配的订单。例如,升级订单的订单类型与司机提供的服务类型的订单类型不同。又例如,当私家车司机收到(或被分配到)快车订单(或出租车订单)时,快车订单(或出租车订单)是私家车司机的升级订单。在一些实施例中,处理器220可以基于随后订单的订单类型和历史司机的服务类型来识别升级订单。
在一些实施例中,与相同服务类型相关联的正常订单可以指订单类型与历史司机的服务类型相同的订单。例如,历史司机是私家车司机,正常订单可能是私家车订单。
在一些实施例中,处理器220可基于订单信息和司机信息识别与相同服务类型相关联的正常订单。例如,处理器220可以基于订单信息和相应的司机信息首先确定历史司机接受(或被分配)升级订单的区域,以及历史司机完成历史订单的时间点。处理器220可以获取相同服务类型的至少两个正常订单,并比较接收至少两个正常订单的开始时间。最接近完成历史订单的时间点的时间点可以被识别为历史司机接收正常订单的起点。
在1140中,处理器220(或记录确定模块420)可以确定与完成历史订单和开始时间点之间的闲置时间段对应的至少一个空闲时间记录。
从完成历史订单的时间点到正常订单的开始时间点,处理器220可以在每个闲置时间段中生成空闲时间记录。例如,处理器220可以在完成历史订单的时间点和正常订单的开始时间点之间每10分钟生成一个空闲时间记录。
应该注意的是,上述仅出于说明性目的而提供,并不旨在限制本申请的范围。对于本领域的普通技术人员来说,根据本申请的教导可以做出多种变化和修改。然而,变化和修改不会背离本申请的范围。例如,可以在示例性过程/方法1100中的其他地方添加一个或以上其他可选步骤(例如,存储步骤、预处理步骤)。又例如,示例性过程/方法1100中的所有步骤可以在包括一组指令的计算机可读介质中实现。指令可以以电流或电信号的形式传输。
上文已对基本概念做了描述,显然,对于阅读此申请后的本领域的普通技术人员来说,上述发明披露仅作为示例,并不构成对本申请的限制。虽然此处并未明确说明,但本领域的普通技术人员可能会对本申请进行各种修改、改进和修正。这类修改、改进和修正在本申请中被建议,所以所述类修改、改进、修正仍属于本申请示范实施例的精神和范围。
同时,本申请使用了特定词语来描述本申请的实施例。例如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本申请至少一个实施例相关的某一特征、结构或特性。因此,应强调并注意的是,本说明书中在不同位置两个或以上提及的“一实施例”或“一个实施例”或“一替代性实施例”并不一定是指同一实施例。此外,本申请的一个或以上实施例中的某些特征、结构或特点可以进行适当的组合。
此外,本领域的普通技术人员可以理解,本申请的各方面可以通过若干具有可专利性的种类或情况进行说明和描述,包括任何新的和有用的过程、机器、产品或物质的组合,或对其任何新的和有用的改良。相应地,本申请的各个方面可以完全由硬件执行、可以完全由软件(包括固件、常驻软件、微码等)执行、也可以由硬件和软件组合执行。以上硬件或软件均可被称为“数据块”、“模块”、“引擎”、“单元”、“组件”或“系统”。此外,本申请的各方面可以采取体现在一个或以上计算机可读介质中的计算机程序产品的形式,其中计算机可读程序代码包含在其中。
计算机可读信号介质可能包含一个内含有计算机程序代码的传播数据信号,例如在基带上或作为载波的一部分。此类传播信号可以有多种形式,包括电磁形式、光形式等或任何合适的组合形式。计算机可读信号介质可以是除计算机可读存储介质之外的任何计算机可读介质,该介质可以通过连接至一个指令执行系统、装置或设备以实现通信、传播或传输供使用的程序。位于计算机可读信号介质上的程序代码可以通过任何合适的介质进行传播,包括无线电、电缆、光纤电缆、RF等,或任何上述介质的组合。
本申请各方面操作所需的计算机程序码可以用一种或多种程序语言的任意组合编写,包括面向对象程序设计,如Java、Scala、Smalltalk、Eiffel、JADE、Emerald、C++、C#、VB.NET,Python或类似的常规程序编程语言,如“C”编程语言,Visual Basic、Fortran1703、Perl,COBOL 1702、PHP、ABAP,动态编程语言如Python、Ruby和Groovy或其它编程语言。该程序代码可以完全在用户计算机上运行、或作为独立的软件包在用户计算机上运行、或部分在用户计算机上运行部分在远程计算机运行、或完全在远程计算机或服务器上运行。在后种情况下,远程计算机可以通过任何网络形式与用户计算机连接,比如局域网络(LAN)或广域网路(WAN),或连接至外部计算机(例如通过因特网服务提供者),或在云计算环境中,或作为服务使用如软件即服务(SaaS)。
此外,除非权利要求中明确说明,本申请所述处理元素和序列的顺序、数字字母的使用、或其他名称的使用,并非用于限定本申请流程和方法的顺序。尽管上述披露中通过各种示例讨论了一些目前认为有用的发明实施例,但应当理解的是,该类细节仅起到说明的目的,附加的权利要求并不仅限于披露的实施例,相反,权利要求旨在覆盖所有符合本申请实施例实质和范围的修正和等价组合。例如,虽然以上所描述的系统组件可以通过硬件设备实现,但是也可以只通过软件的解决方案得以实现,如在现有的服务器或移动设备上安装所描述的系统。
同理,应当注意的是,为了简化本申请披露的表述,从而帮助对一个或以上发明实施例的理解,前文对本申请实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。然而,本申请的该方法不应被解释为反映所声称的待扫描对象物质需要比每个权利要求中明确记载的更多特征的意图。实际上,实施例的特征要少于上述披露的单个实施例的全部特征。

Claims (20)

1.一种被配置用于优化在线按需服务的系统,包括:
至少一个存储介质,包括用于确定在线按需服务中的价值函数的一组指令;以及
至少一个与所述存储介质通信的处理器,其中当执行所述一组指令时,所述至少一个处理器用于:
获取与至少两个历史订单相关的订单信息;
获取与所述至少两个历史订单对应的至少两个历史司机相关的司机信息;
对于每个在预设时间段内的历史司机,根据决策过程模型基于所述订单信息和所述司机信息确定至少两个记录,其中每个记录包括司机的时空状态、司机的行为、司机的收益、以及司机的随后时空状态;以及
根据加强学习算法,根据每个历史司机的所述至少两个记录确定价值函数。
2.根据权利要求1所述的系统,其特征在于,所述决策过程模型是马尔可夫决策过程模型。
3.根据权利要求1所述的系统,其特征在于,所述增强学习算法是时序差分学习算法或动态规划算法。
4.根据权利要求1所述的系统,其特征在于,对于在所述预设时间段内的每个历史司机,为了确定所述至少两个记录,所述至少一个处理器进一步用于:
确定一个或以上订单记录,每个订单记录对应一个历史订单;以及
确定一个或以上空闲时间记录,每个空闲时间记录对应于未关联任何历史订单的一个闲置时间段。
5.根据权利要求1所述的系统,其特征在于,对于在所述预设时间段内的每个历史司机,为了确定所述至少两个记录,所述至少一个处理器进一步用于:
确定一个或以上订单记录,每个订单记录对应一个历史订单;
根据所述司机信息,获取所述历史司机在所述预设时间段内的上线时间点和下线时间点;
确定与所述上线时间点和接受第一历史订单的时间点之间的闲置时间段对应的至少一个空闲时间记录;以及
确定与完成最后历史订单的时间点和所述下线时间点之间的闲置时间段对应的至少另一个空闲时间记录。
6.根据权利要求1所述的系统,其特征在于,所述至少两个记录包括至少一个订单记录和至少一个空闲时间记录,
其中订单记录对应于历史订单并且包括以下中的至少一个:
司机的时空状态,包括所述历史司机在接受所述历史订单时的时间和位置,
司机的行为,包括接受所述历史订单,
司机的收益,包括所述历史订单的价值,或
司机的随后时空状态,包括所述历史司机在完成所述历史订单时的时间和位置;以及
其中,空闲时间记录对应于未关联任何历史订单的闲置时间段,并且包括以下中的至少一个:
司机的时空状态,包括所述历史司机在所述闲置时间段内的时间和位置,
司机的行为,包括在所述闲置时间段为空闲,
司机的收益,包括零,或
司机的随后时空状态,包括所述历史司机在所述闲置时间段结束时的随后时间和随后位置,
其中所述闲置时间段是所述闲置时间的预设持续时长。
7.根据权利要求6所述的系统,其特征在于,对于在所述预设时间段内的每个历史司机,为了确定所述至少两个记录,所述至少一个处理器进一步用于:
根据所述订单信息识别随后订单的订单类型;
响应于识别所述随后订单是预约订单,确定从所述预约订单的开始时间点起的预设缓冲时间之前的参考时间点;及
确定与完成所述历史订单的时间点和所述参考时间点之间的闲置时间段对应的至少一个空闲时间记录。
8.根据权利要求6所述的系统,其特征在于,对于在所述预设时间段内的每个历史司机,为了确定所述至少两个记录,所述至少一个处理器进一步用于:
确定所述历史司机的服务类型;
根据所述订单信息识别随后订单的订单类型;
响应于识别所述随后订单是所述历史司机的升级订单,识别所述历史司机接收与所述服务类型相关的正常订单的开始时间点;以及
确定与完成所述历史订单和所述开始时间点之间的闲置时间段对应的至少一个空闲时间记录。
9.根据权利要求6所述的系统,其特征在于,对于在所述预设时间段内的每个历史司机,为了确定所述至少两个记录,所述至少一个处理器进一步用于:
确定与所述历史订单对应的所述订单记录,其中所述历史订单是组合了具有相同路线ID的至少两个拼车订单的普通拼车订单,
所述历史司机的所述时间和所述位置分别是所述历史司机在第一次接受所述普通拼车订单时的时间和位置,以及
所述历史订单的所述价值是所述拼车订单的价值总和。
10.根据权利要求1所述的系统,其特征在于,在执行所述一组指令时,所述至少一个处理器还用于:
根据所述价值函数优化针对新订单对司机的分配。
11.一种优化在线按需服务的方法,所述方法在计算设备上实现,所述计算设备具有至少一个处理器,至少一个存储介质和连接到网络的通信平台,包括:
获取与所述至少两个历史订单对应的至少两个历史司机相关的司机信息;
对于每个在预设时间段内的历史司机,根据决策过程模型基于所述订单信息和所述司机
信息确定至少两个记录,其中每个记录包括司机的时空状态、司机的行为、司机的收益、以及司机的随后时空状态;以及
根据增强学习算法,基于每个历史司机的所述至少两个记录确定价值函数。
12.根据权利要求11所述的方法,其特征在于所述决策过程模型是马尔可夫决策过程模型。
13.根据权利要求11所述的方法,其特征在于,所述增强学习算法是时序差分学习算法或动态规划算法。
14.根据权利要求11所述的方法,其特征在于,对于在所述预设时间段内的每个历史司机,所述确定所述至少两个记录包括:
确定一个或以上订单记录,每个订单记录对应一个历史订单;以及
确定一个或以上空闲时间记录,每个空闲时间记录对应于未关联任何历史订单的一个闲置时间段。
15.根据权利要求11所述的方法,其特征在于,对于每个在所述预设时间段内的历史司机,所述确定所述至少两个记录包括:
确定一个或以上订单记录,每个订单记录对应一个历史订单;
根据所述司机信息,获取所述历史司机在所述预设时间段内的上线时间点和下线时间点;
确定与所述上线时间点和接受第一历史订单的时间点之间的闲置时间段对应的至少一个空闲时间记录;以及
确定与完成最后历史订单的时间点和所述下线时间点之间的闲置时间段对应的至少另一个空闲时间记录。
16.根据权利要求11所述的方法,其特征在于,所述至少两个记录包括至少一个订单记录和至少一个空闲时间记录,
其中订单记录对应于历史订单并且包括以下中的至少一个:
司机的时空状态,包括所述历史司机在接受所述历史订单时的时间和位置,
司机的行为,包括接受所述历史订单,
司机的收益,包括所述历史订单的价值,以及
司机的随后时空状态,包括所述历史司机在完成所述历史订单时的时间和位置;或
其中,空闲时间记录对应于未关联任何历史订单的闲置时间段,并且包括以下中的至少一个:
司机的时空状态,包括所述历史司机在所述空闲时间段内的时间和位置,
司机的行为,包括在所述闲置时间段为空闲,
司机的收益,包括零,或
司机的随后时空状态,包括所述历史司机在所述闲置时间段结束时的随后时间和随后位置,
其中所述闲置时间段是所述闲置时间的预设持续时长。
17.根据权利要求16所述的方法,其特征在于,对于在所述预设时间段内的每个历史司机,所述确定所述至少两个记录包括:
基于所述订单信息识别随后订单的订单类型;
响应于识别所述随后订单是预约订单,确定从所述预约订单的开始时间点起的预设缓冲时间之前的参考时间点;以及
确定与完成所述历史订单的时间点和所述参考时间点之间的闲置时间段对应的至少一个空闲时间记录。
18.根据权利要求16所述的方法,其特征在于,对于在所述预设时间段内的每个历史司机,所述确定所述至少两个记录包括:
识别所述历史司机的服务类型;
基于所述订单信息识别随后订单的订单类型;
响应于识别所述随后订单是所述历史司机的升级订单,识别所述历史司机接收与所述服务类型相关的正常订单的开始时间点;以及
确定与完成所述历史订单和所述开始时间点之间的闲置时间段对应的至少一个空闲时间记录。
19.根据权利要求16所述的方法,其特征在于,对于在所述预设时间段内的每个历史司机,所述确定所述至少两个记录包括:
确定所述历史订单对应的所述订单记录,其中
所述历史订单是组合了具有相同路线ID的至少两个拼车订单的普通拼车订单,
所述历史司机的所述时间和所述位置分别是所述历史司机在第一次接受所述普通拼车订单时的时间和位置,以及
所述历史订单的所述价值是所述拼车订单的价值总和。
20.一种非暂时性计算机可读介质,包括用于优化在线按需服务的至少一组指令,其中当执行所述一组指令时,所述至少一组指令指示所述至少一个处理器:
获取与至少两个历史订单相关的订单信息;
获取与所述至少两个历史订单对应的至少两个历史司机相关的司机信息;
对于每个在预设时间段内的历史司机,根据决策过程模型基于所述订单信息和所述司机信息确定至少两个记录,其中每个记录包括司机的时空状态、司机的行为、司机的收益、以及司机的随后时空状态;以及
根据增强学习算法,根据每个历史司机的所述至少两个记录确定一个价值函数。
CN201780088407.6A 2017-12-15 2017-12-15 用于优化在线按需服务的系统和方法 Pending CN110431597A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2017/116635 WO2019113976A1 (en) 2017-12-15 2017-12-15 Systems and methods for optimizing online on-demand and service

Publications (1)

Publication Number Publication Date
CN110431597A true CN110431597A (zh) 2019-11-08

Family

ID=66818867

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780088407.6A Pending CN110431597A (zh) 2017-12-15 2017-12-15 用于优化在线按需服务的系统和方法

Country Status (5)

Country Link
US (1) US11455582B2 (zh)
JP (1) JP2020532787A (zh)
CN (1) CN110431597A (zh)
TW (1) TWI720380B (zh)
WO (1) WO2019113976A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113393093A (zh) * 2021-05-27 2021-09-14 摩拜(北京)信息技术有限公司 基于网格的车辆调度方法和服务器

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8914290B2 (en) 2011-05-20 2014-12-16 Vocollect, Inc. Systems and methods for dynamically improving user intelligibility of synthesized speech in a work environment
US10909490B2 (en) * 2014-10-15 2021-02-02 Vocollect, Inc. Systems and methods for worker resource management
US10714121B2 (en) 2016-07-27 2020-07-14 Vocollect, Inc. Distinguishing user speech from background speech in speech-dense environments
US20230237389A1 (en) 2020-08-04 2023-07-27 Nippon Telegraph And Telephone Corporation Optimization method, optimization apparatus and program
CN112329962B (zh) * 2020-10-28 2024-03-29 北京嘀嘀无限科技发展有限公司 数据处理方法、装置、电子设备和存储介质
CN112418471B (zh) * 2021-01-25 2021-06-08 南京领行科技股份有限公司 网约车的行驶监测方法、装置、电子设备及存储介质
US11877239B2 (en) * 2021-04-19 2024-01-16 Toyota Motor North America, Inc. Systems and methods for optimizing a radio metric within a mesh network by waking up nodes
CN113269966B (zh) * 2021-07-21 2021-10-08 广东新中望信息科技有限公司 一种基于地磁大数据软硬件结合的时空态势感知模型
KR20230023925A (ko) * 2021-08-11 2023-02-20 현대자동차주식회사 택시 차량의 단말 시스템 및 이의 동작 방법

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101355714A (zh) * 2007-07-24 2009-01-28 梁宇杰 一种实时拼车系统和方法
CN105006145A (zh) * 2015-06-24 2015-10-28 淄博京科电气有限公司 一种出租车引导调度系统
CN106530188A (zh) * 2016-09-30 2017-03-22 百度在线网络技术(北京)有限公司 在线叫车服务平台中司机的接单意愿评价方法和装置
CN107464001A (zh) * 2016-06-06 2017-12-12 滴滴(中国)科技有限公司 预约单分配处理方法及服务器

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020107720A1 (en) * 2000-09-05 2002-08-08 Walt Disney Parks And Resorts Automated system and method of forecasting demand
US20030140088A1 (en) 2002-01-24 2003-07-24 Robinson Scott H. Context-based information processing
WO2009129106A1 (en) 2008-04-15 2009-10-22 The Uwm Research Foundation, Inc. Power management systems and methods in a hybrid vehicle
CN101739615A (zh) 2009-11-30 2010-06-16 交通部公路科学研究院 出租车智能综合监管与服务系统
CN102752393A (zh) * 2012-07-13 2012-10-24 王万秋 出租车订车系统及订车方法
TWI512668B (zh) * 2013-05-06 2015-12-11 Univ Nat Taiwan 智慧化雙向即時車輛派遣系統
US9434389B2 (en) 2013-11-18 2016-09-06 Mitsubishi Electric Research Laboratories, Inc. Actions prediction for hypothetical driving conditions
AU2015251350A1 (en) 2014-04-24 2016-11-10 Beijing Didi Infinity Technology And Development Co., Ltd. System and method for managing supply of service
WO2016019857A1 (zh) * 2014-08-04 2016-02-11 北京嘀嘀无限科技发展有限公司 服务派发系统及方法
CN104157133B (zh) * 2014-08-20 2016-10-05 北京嘀嘀无限科技发展有限公司 基于司机在线活跃情况的运力拉升系统
EP2998178B1 (en) 2014-09-17 2022-01-26 Volvo Car Corporation Vehicle control through machine learning
US9776512B2 (en) 2014-11-10 2017-10-03 Streetsmart Ltd. Methods, circuits, devices, systems and associated computer executable code for driver decision support
US9648579B2 (en) * 2014-11-21 2017-05-09 Calamp Corp. Systems and methods for driver and vehicle tracking
US10769742B2 (en) * 2015-01-20 2020-09-08 Beijing Didi Infinity Technology And Development Co., Ltd. Systems and methods for providing information for an on-demand service
SG11201706522VA (en) * 2015-02-10 2017-09-28 Beijing Didi Infinity Tech And Dev Co Ltd Methods and systems for pushing orders
US10204528B2 (en) * 2015-08-05 2019-02-12 Uber Technologies, Inc. Augmenting transport services using driver profiling
CN105489001A (zh) * 2015-12-11 2016-04-13 惠州Tcl移动通信有限公司 一种出租车调度优化方法及系统
CN106022577A (zh) * 2016-05-12 2016-10-12 西安电子科技大学 载客车辆的在线均衡调度方法
CN107153916A (zh) * 2017-04-30 2017-09-12 安徽中科美络信息技术有限公司 一种基于fcm聚类和bp神经网络的驾驶行为评价方法
CN107133697A (zh) * 2017-05-03 2017-09-05 百度在线网络技术(北京)有限公司 预估司机接单意愿的方法、装置、设备及存储介质
US11158020B2 (en) * 2017-12-29 2021-10-26 Lyft, Inc. Assigning rides based on probability of provider acceptance

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101355714A (zh) * 2007-07-24 2009-01-28 梁宇杰 一种实时拼车系统和方法
CN105006145A (zh) * 2015-06-24 2015-10-28 淄博京科电气有限公司 一种出租车引导调度系统
CN107464001A (zh) * 2016-06-06 2017-12-12 滴滴(中国)科技有限公司 预约单分配处理方法及服务器
CN106530188A (zh) * 2016-09-30 2017-03-22 百度在线网络技术(北京)有限公司 在线叫车服务平台中司机的接单意愿评价方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
HUIGUI RONG,ETC.: "The Rich and the Poor:A Markov Decision Process Approach to Optimizing Taxi Driver Revenue Efficiency", 《PROCEEDINGS OF THE 25TH ACM INTERNATIONAL ON CONFERENCE ON INFORMATION AND KNOWLEDGE MANAGEMENT》 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113393093A (zh) * 2021-05-27 2021-09-14 摩拜(北京)信息技术有限公司 基于网格的车辆调度方法和服务器

Also Published As

Publication number Publication date
US20200311650A1 (en) 2020-10-01
TWI720380B (zh) 2021-03-01
TW201935340A (zh) 2019-09-01
WO2019113976A1 (en) 2019-06-20
US11455582B2 (en) 2022-09-27
JP2020532787A (ja) 2020-11-12

Similar Documents

Publication Publication Date Title
CN110431597A (zh) 用于优化在线按需服务的系统和方法
CN110110871B (zh) 一种订单分配的方法和系统
TWI638320B (zh) 推薦預計到達時間的系統、方法及非暫態電腦可讀儲存媒體
JP6797943B2 (ja) サービスリクエストを割り振るシステムおよび方法
US20200221257A1 (en) System and method for destination predicting
US20200005420A1 (en) Systems and methods for transportation capacity dispatch
CN110447050A (zh) 用于在线按需服务中分配订单的系统和方法
CN110140135A (zh) 信息处理方法、信息处理系统和信息处理装置
JP6584640B2 (ja) リクエストの位置情報を変更する方法およびシステム
CN109478364A (zh) 确定预计到达时间的方法及系统
CN109313742A (zh) 确定预估到达时间的方法及系统
CN110537212A (zh) 确定预估到达时间的系统与方法
AU2016298981A1 (en) Method and system for determining transport service fee
CN109416823A (zh) 用于确定司机安全分的系统和方法
CN109313775A (zh) 用于分发服务请求的系统和方法
CN108701320A (zh) 拼车的系统和方法
CN110431573A (zh) 订单分配优化的系统和方法
CN108701403A (zh) 用于展示与服务请求相关的标识的系统及方法
CN109313845A (zh) 用于提供导航路线的系统和方法
TWI703526B (zh) 使用機器學習技術來估價的系統和方法
US11580451B2 (en) Systems and methods for determining estimated time of arrival
JP2018520400A (ja) 移動デバイスの経路を求めるシステム及び方法
CN108885726A (zh) 服务时间点预测系统和方法
CN110402370A (zh) 用于确定服务请求的推荐信息的系统和方法
US11029166B2 (en) Systems and methods for reserving a carpooling service

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20191108

RJ01 Rejection of invention patent application after publication