WO2020113614A1 - Systems and methods for estimating time of arrival of object - Google Patents

Systems and methods for estimating time of arrival of object Download PDF

Info

Publication number
WO2020113614A1
WO2020113614A1 PCT/CN2018/120182 CN2018120182W WO2020113614A1 WO 2020113614 A1 WO2020113614 A1 WO 2020113614A1 CN 2018120182 W CN2018120182 W CN 2018120182W WO 2020113614 A1 WO2020113614 A1 WO 2020113614A1
Authority
WO
WIPO (PCT)
Prior art keywords
service
arrival
location
service provider
potential
Prior art date
Application number
PCT/CN2018/120182
Other languages
French (fr)
Inventor
Meng AI
Baihu CHEN
Zhi Li
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 WO2020113614A1 publication Critical patent/WO2020113614A1/en

Links

Images

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
    • 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
    • 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

Definitions

  • This disclosure generally relates to online to offline (O2O) services, and more particularly to systems and methods for estimating time of arrival of an object.
  • O2O online to offline
  • O2O online to offline
  • a user can request an O2O service by an application installed in his/her mobile device (e.g., a smart phone) .
  • his/her mobile device e.g., a smart phone
  • the user may desire to determine whether to request a service based on an estimated time of arrival from a service provider’s location to his/her location. Therefore, it is desirable to develop systems and methods for estimating time of arrival of an object accurately, which may satisfy the user’s needs, and improve user experience.
  • a system for estimating time of arrival of an object may include at least one storage medium including a set of instructions, and at least one processor in communication with the at least one storage medium.
  • the at least one processor may detect a potential service request from a target service requester, wherein the potential service request includes a pick-up location and a drop-off location of a transportation service.
  • the at least one processor may obtain information of at least one potential target service provider from one or more candidate service providers.
  • the at least one processor may determine a recommended time of arrival based on a route from a corresponding location of each of the at least one potential target service provider to the pick-up location.
  • the at least one processor may send the recommended time of arrival to a mobile device of the target service requester.
  • the at least one processor may search one or more candidate service providers within a first threshold distance from the pick-up location, wherein each of the one or more candidate service providers is available to provide a carpool service upon the potential service request.
  • each of the at least one potential target service provider may have accepted and have been in service to at least one service order.
  • each of the at least one potential target service provider may be selected from the one or more candidate service providers based on a first predetermined selecting rule.
  • the first predetermined selecting rule may be associated with one or more factors including at least one of a driving direction of a candidate service provider, a detour distance, a detour time, the number of available seats, a distance from a location of a candidate service provider to the pick-up location, a billing rate of a candidate service provider, a relation between the drop-off location and a destination of a candidate service provider, or another pick-up location related to a service order of a candidate service provider.
  • the at least one processor may select, from the one or more candidate service providers, at least one potential target service provider that has no service order.
  • the at least one processor may select, from the one or more candidate service providers, one or more potential target service providers that have no service order.
  • each of the at least one potential target service provider that have no service order may be selected based on a second predetermined selecting rule.
  • the second predetermined selecting rule may be associated with one or more factors including at least one of a driving direction of a candidate service provider, a score of a candidate service provider, a distance from a location of a candidate service provider to the pick-up location, or an order cancellation rate of a candidate service provider.
  • the at least one processor may determine an estimated time of arrival based on a route from the corresponding location of each of the at least one potential target service provider to the pick-up location.
  • the at least one processor may determine a recommended time of arrival based on the at least one determined estimated time of arrival.
  • the at least one processor may designate a shortest time among the at least one determined estimated time of arrival or an average time of the at least one determined estimated time of arrival as the recommended time of arrival.
  • the at least one processor may determine a response rate of a plurality of historical service requests within a second threshold distance and occurred during a predetermined time period from the pick-up location.
  • the first threshold distance and the second threshold distance may be the same.
  • the predetermined time period may be before the potential service request occurs and render the response rate real-time or substantially real-time to when the potential service request occurs.
  • the at least one processor may determine whether to send the recommended time of arrival based on a probability value associated with the response rate. In response to a determination of sending the recommended time of arrival, the at least one processor may send the recommended time of arrival to the mobile device of the target service requester. In response to a determination of not sending the recommended time of arrival, the at least one processor may refrain from sending the recommended time of arrival to the mobile device of the target service requester.
  • the at least one processor may determine a recommended threshold according to the response rate.
  • the at least one processor may generate a random number.
  • the at least one processor may compare the random number and the recommended threshold. In response to a determination that the random number is no less than the recommended threshold, the at least one processor may determine to send the recommended time of arrival. In response to a determination that the random number is less than the recommended threshold, the at least one processor may determine not to send the recommended time of arrival.
  • the at least one processor may obtain a service order associated with the potential service request.
  • the at least one processor may send an instruction for causing display of information related to the service order on the mobile device of a determined target service provider of the at least one potential target service provider.
  • the at least one processor may send the instruction for causing display of information related to the service order on the mobile device of a potential target service provider that has been in service to at least one service order preferentially.
  • a method for estimating time of arrival of an object for an online to offline service may include one or more of the following operations.
  • At least one processor may detect a potential service request from a target service requester, the potential service request may include a pick-up location and a drop-off location of a transportation service.
  • the at least one processor may obtain information of at least one potential target service provider from one or more candidate service providers.
  • the at least one processor may determine a recommended time of arrival based on a route from a corresponding location of each of the at least one potential target service provider to the pick-up location.
  • the at least one processor may send the recommended time of arrival to a mobile device of the target service requester.
  • a non-transitory computer readable medium may comprise executable instructions that cause at least one processor to effectuate a method.
  • the method may include one or more of the following operations.
  • the at least one processor may detect a potential service request from a target service requester, the potential service request may include a pick-up location and a drop-off location of a transportation service.
  • the at least one processor may obtain information of at least one potential target service provider from one or more candidate service providers.
  • the at least one processor may determine a recommended time of arrival based on a route from a corresponding location of each of the at least one potential target service provider to the pick-up location.
  • the at least one processor may send the recommended time of arrival to a mobile device of the target service requester.
  • a system may include at least one storage medium including a set of instructions, and at least one processor in communication with the at least one storage medium.
  • the at least one processor may detect a potential service request from a target service requester, the potential service request includes a pick-up location of a transportation service.
  • the at least one processor may obtain information of at least one potential target service provider from one or more candidate service providers.
  • the at least one processor may determine a recommended time of arrival based on a route from a corresponding location of each of the at least one potential target service provider to the pick-up location.
  • the at least one processor may determine a response rate of a plurality of historical service requests within a first threshold distance and occurred during a predetermined time period from the pick-up location. The at least one processor may determine whether to send the recommended time of arrival based on a probability value associated with the response rate. In response to a determination of sending the recommended time of arrival, the at least one processor may send the recommended time of arrival to a mobile device of the target service requester. In response to a determination of not sending the recommended time of arrival, the at least one processor may refrain from sending the recommended time of arrival to the mobile device of the target service requester.
  • a method for estimating time of arrival of an object for an online to offline service may include one or more of the following operations.
  • At least one processor may detect a potential service request from a target service requester, the potential service request includes a pick-up location of a transportation service.
  • the at least one processor may obtain information of at least one potential target service provider from one or more candidate service providers.
  • the at least one processor may determine a recommended time of arrival based on a route from a corresponding location of each of the at least one potential target service provider to the pick-up location.
  • the at least one processor may determine a response rate of a plurality of historical service requests within a first threshold distance and occurred during a predetermined time period from the pick-up location. The at least one processor may determine whether to send the recommended time of arrival based on a probability value associated with the response rate. In response to a determination of sending the recommended time of arrival, the at least one processor may send the recommended time of arrival to a mobile device of the target service requester. In response to a determination of not sending the recommended time of arrival, the at least one processor may refrain from sending the recommended time of arrival to the mobile device of the target service requester.
  • a non-transitory computer readable medium may comprise executable instructions that cause at least one processor to effectuate a method.
  • the method may include one or more of the following operations.
  • the at least one processor may detect a potential service request from a target service requester, the potential service request includes a pick-up location of a transportation service.
  • the at least one processor may obtain information of at least one potential target service provider from one or more candidate service providers.
  • the at least one processor may determine a recommended time of arrival based on a route from a corresponding location of each of the at least one potential target service provider to the pick-up location.
  • the at least one processor may determine a response rate of a plurality of historical service requests within a first threshold distance and occurred during a predetermined time period from the pick-up location. The at least one processor may determine whether to send the recommended time of arrival based on a probability value associated with the response rate. In response to a determination of sending the recommended time of arrival, the at least one processor may send the recommended time of arrival to a mobile device of the target service requester. In response to a determination of not sending the recommended time of arrival, the at least one processor may refrain from sending the recommended time of arrival to the mobile device of the target service requester.
  • FIG. 1 is a schematic diagram illustrating an exemplary online to offline (O2O) service system according to some embodiments of the present disclosure
  • FIG. 2 is a schematic diagram illustrating exemplary components of a computing device according to some embodiments of the present disclosure
  • FIG. 3 is a block diagram illustrating exemplary hardware and/or software components of an exemplary mobile device according to some embodiments of the present disclosure
  • FIG. 4 is a block diagram illustrating an exemplary processing device according to some embodiments of the present disclosure.
  • FIG. 5 is a flowchart illustrating an exemplary process for determining a recommended time of arrival for an O2O service according to some embodiments of the present disclosure
  • FIG. 6 is a flowchart illustrating an exemplary process for determining a recommended time of arrival for an O2O service according to some embodiments of the present disclosure
  • FIG. 7 is a flowchart illustrating an exemplary process for determining a recommended time of arrival for an O2O service according to some embodiments of the present disclosure
  • FIG. 8 is a flowchart illustrating an exemplary process for determining whether to transmit a recommended time of arrival according to some embodiments of the present disclosure
  • FIG. 9 is a flowchart illustrating an exemplary process for determining a recommended time of arrival according to some embodiments of the present disclosure.
  • FIG. 10 is a flowchart illustrating an exemplary process of node A in FIG. 9 according to some embodiments of the present disclosure
  • FIG. 11 is a flowchart illustrating an exemplary process for determining whether to send a recommended time of arrival according to some embodiments of the present disclosure
  • FIG. 12 is a flowchart illustrating an exemplary process for generating a service order according to some embodiments of the present disclosure
  • FIG. 13 is a schematic diagram illustrating an exemplary interface of a carpool application according to some embodiments of the present disclosure.
  • FIG. 14 is a schematic diagram illustrating an exemplary interface of an application installed on a requester terminal according to some embodiments of the present disclosure.
  • the flowcharts used in the present disclosure illustrate operations that systems implement according to some embodiments in the present disclosure. It is to be expressly understood, the operations of the flowchart may be implemented not in order. Conversely, the operations may be implemented in inverted order, or simultaneously. Moreover, one or more other operations may be added to the flowcharts. One or more operations may be removed from the flowcharts.
  • system and method in the present disclosure is described primarily in regard to distributing a request for a transportation service, it should also be understood that the present disclosure is not intended to be limiting.
  • the system or method of the present disclosure may be applied to any other kind of O2O service.
  • the system or method of the present disclosure may be applied to transportation systems of different environments including land, ocean, aerospace, or the like, or any combination thereof.
  • the vehicle of the transportation systems may include a taxi, a private car, a hitch, a bus, a train, a bullet train, a high speed rail, a subway, a vessel, an aircraft, a spaceship, a hot-air balloon, a driverless vehicle, or the like, or any combination thereof.
  • the transportation system may also include any transportation system for management and/or distribution, for example, a system for transmitting and/or receiving an express.
  • the application of the system or method of the present disclosure may be implemented on a user device and include a webpage, a plug-in of a browser, a client terminal, a custom system, an internal analysis system, an artificial intelligence robot, or the like, or any combination thereof.
  • passenger " “requester, “ “service requester, “ and “customer” in the present disclosure are used interchangeably to refer to an individual, an entity, or a tool that may request or order a service.
  • driver “ “provider, “ and “service provider” in the present disclosure are used interchangeably to refer to an individual, an entity, or a tool that may provide a service or facilitate the providing of the service.
  • service request “ “request for a service, “ “requests, “ and “order” in the present disclosure are used interchangeably to refer to a request that may be initiated by a passenger, a service requester, a customer, a driver, a provider, a service provider, or the like, or any combination thereof.
  • the service request may be accepted by any one of a passenger, a service requester, a customer, a driver, a provider, or a service provider.
  • the service request may be chargeable or free.
  • service provider terminal and “driver terminal” in the present disclosure are used interchangeably to refer to a mobile terminal that is used by a service provider to provide a service or facilitate the providing of the service.
  • service requester terminal and “passenger terminal” in the present disclosure are used interchangeably to refer to a mobile terminal that is used by a service requester to request or order a service.
  • the positioning technology used in the present disclosure may be based on a global positioning system (GPS) , a global navigation satellite system (GLONASS) , a compass navigation system (COMPASS) , a Galileo positioning system, a quasi-zenith satellite system (QZSS) , a wireless fidelity (WiFi) positioning technology, or the like, or any combination thereof.
  • GPS global positioning system
  • GLONASS global navigation satellite system
  • COMPASS compass navigation system
  • Galileo positioning system Galileo positioning system
  • QZSS quasi-zenith satellite system
  • WiFi wireless fidelity positioning technology
  • the present disclosure is directed to systems and methods for estimating time of arrival of an object for an online to offline service (e.g., an on-demand transportation service) .
  • the system may determine at least one potential target service provider based on information related to a potential service request (e.g., a yet-to-be sent request) , such as a pick-up location and/or a drop-off location.
  • a potential service request e.g., a yet-to-be sent request
  • the at least one potential target service provider may have accepted and have been in service to at least one service order, which indicates the at least one potential target service provider may provide a carpool service.
  • the at least one potential target service providers may have no service order, which indicates the at least one potential target service provider may provide a non-carpool service.
  • the system may determine an ETA based on a route from the corresponding location of each of the at least one potential target service provider to the pick-up location.
  • the system may determine a recommended time of arrival based on the at least one determined estimated time of arrival.
  • the system may send the recommended time of arrival to a mobile device of a target service requester.
  • the system may determine whether to send the recommended time of arrival based on a probability value associated with the response rate.
  • the recommended time of arrival may be sent to the mobile device of the target service requester. Otherwise, the recommended time of arrival may be not sent to the mobile device of the target service requester.
  • the system may generate a service order and dispatch a target service provider of the at least one potential target service provider for the target service requester. In some embodiments, the system may preferentially dispatch the target service provider that can provide carpool service in response to the confirmed service request.
  • FIG. 1 is a schematic diagram illustrating an exemplary online to offline (O2O) service system according to some embodiments of the present disclosure.
  • the O2O service system 100 may be a platform for data and/or information processing, for example, processing a service request from a requestor.
  • the service may be a transportation service such as a taxi hailing service, a chauffeur service, a delivery vehicle service, a carpool service, a bus service, a driver hiring service, a shuttle service, etc.
  • the service may be any online service, such as booking a meal, shopping, or the like, or any combination thereof.
  • the O2O service system 100 may include an information exchange port system, a server 110, a storage device 120, one or more requester terminals 130, and one or more provider terminals 140.
  • the information exchange port system may include one or more first information exchange ports 1101, and/or one or more second information exchange ports 1102.
  • the first information exchange port (s) 1101 may be configured to facilitate the communication between the O2O service system 100 and the requester terminal (s) 130.
  • the second information exchange port (s) 1102 may be configured to facilitate the communication between the O2O service system 100 and the provider terminal (s) 140.
  • the first information exchange port 1101 and the second information exchange port 1102 may be separated and/or be part of different devices.
  • the first information exchange port 1101 may be a part of the requester terminal 130, while the second information exchange port 1102 may be part of the provider terminal 140.
  • the information exchange port system may include one or more third information exchange port (s) 1103 configured to facilitate the communication between the O2O service system 100 and the requester terminal (s) 130, and the communication between the O2O service system 100 and the provider terminal (s) 140.
  • the server 110 may include a processing device 112.
  • the requester terminal 130 may be associated with a service requester.
  • the provider terminal 140 may be associated with a service provider.
  • the O2O service system 100 may communicate with one or more service requesters and one or more service providers via the first information exchange port 1101 and the second information exchange port 1102, respectively.
  • the server 110 of the O2O service system 100 may access information and/or data related to an order request (also referred to as service request) or a potential order request (herein also referred to as “a yet-to-be sent request” ) from the requester terminal (s) 130 via the first information exchange port (s) 1101.
  • the server 110 of the O2O service system 100 may access information and/or data from the provider terminal (s) 140 via the second information exchange port (s) 1102. As a further example, the server 110 of the O2O service system 100 may transmit information and/or data to the requester terminal (s) 130 and/or the provider terminal (s) 140 via the information exchange port system.
  • the server 110 may process information and/or data relating to a service request or a potential service request.
  • a potential service request may be a yet-to-be sent request.
  • the potential service request may be in the form of a partially-entered request that is not sent or a complete request that is not sent. That is to say, if a service requester sends out or confirms a potential service request, the potential service request may be transformed into a valid (or regular) service request.
  • a potential service request may include a pick-up location and/or a drop-off location.
  • the server 110 may receive a potential service request from a mobile device of a service requester (e.g., the requester terminal 130) .
  • the server 110 may determine one or more candidate service providers based on a (potential) service request. In some embodiments, the server 110 may determine a recommended time of arrival to the pick-up location. In some embodiments, the server 110 may transmit the recommended time of arrival to a mobile device of a service requester via a first information exchange port 1101.
  • the server 110 may be a single server, or a server group.
  • the server group may be centralized, or distributed (e.g., the server 110 may be a distributed system) .
  • the server 110 may be implemented on a cloud platform.
  • the cloud platform may include a private cloud, a public cloud, a hybrid cloud, a community cloud, a distributed cloud, an inter-cloud, a multi-cloud, or the like, or any combination thereof.
  • the server 110 may be implemented on a computing device 200 having one or more components illustrated in FIG. 2 in the present disclosure.
  • the server 110 may include a processing device 112.
  • the processing device 112 may process information and/or data (e.g., information or data relating to a potential service request or a service request) to perform one or more functions described in the present disclosure. For example, the processing device 112 may obtain a pick-up location of a target service requester from a requester terminal 130, determine a potential target service provider from one or more candidate service providers, and/or determine a recommended time of arrival of the potential target service provider from a current location of the potential target service provider to the pick-up location. As another example, the processing device 112 may determine whether to transmit the recommended time of arrival to the target service requester based on a response rate of a plurality of historical service requests.
  • the processing device 112 may include one or more processors (e.g., single-core processing device (s) or multi-core processor (s) ) .
  • the processing device 112 may include a central processing unit (CPU) , an application-specific integrated circuit (ASIC) , an application-specific instruction-set processor (ASIP) , a graphics processing unit (GPU) , a physics processing unit (PPU) , a digital signal processor (DSP) , a field programmable gate array (FPGA) , a programmable logic device (PLD) , a controller, a microcontroller unit, a reduced instruction-set computer (RISC) , a microprocessor, or the like, or any combination thereof.
  • CPU central processing unit
  • ASIC application-specific integrated circuit
  • ASIP application-specific instruction-set processor
  • GPU graphics processing unit
  • PPU physics processing unit
  • DSP digital signal processor
  • FPGA field programmable gate array
  • PLD programmable logic device
  • controller
  • the storage device 120 may store data and/or instructions (e.g., data or instructions relating to a service request or a potential service request) .
  • the storage device 120 may store data obtained or acquired from the requester terminal (s) 130 and/or the provider terminal (s) 140.
  • the storage device 120 may store data and/or instructions that the server 110 may execute or use to perform exemplary methods and/or processes described in the present disclosure.
  • the storage device 120 may include a mass storage, a removable storage, a volatile read-and-write memory, a read-only memory (ROM) , or the like, or any combination thereof.
  • Exemplary mass storage may include a magnetic disk, an optical disk, a solid-state drive, etc.
  • Exemplary removable storage may include a flash drive, a floppy disk, an optical disk, a memory card, a zip disk, a magnetic tape, etc.
  • Exemplary volatile read-and-write memory may include a random-access memory (RAM) .
  • Exemplary RAM may include a dynamic RAM (DRAM) , a double date rate synchronous dynamic RAM (DDR SDRAM) , a static RAM (SRAM) , a thyristor RAM (T-RAM) , and a zero-capacitor RAM (Z-RAM) , etc.
  • DRAM dynamic RAM
  • DDR SDRAM double date rate synchronous dynamic RAM
  • SRAM static RAM
  • T-RAM thyristor RAM
  • Z-RAM zero-capacitor RAM
  • Exemplary ROM may include a mask ROM (MROM) , a programmable ROM (PROM) , an erasable programmable ROM (PEROM) , an electrically erasable programmable ROM (EEPROM) , a compact disk ROM (CD-ROM) , and a digital versatile disk ROM, etc.
  • the storage device 120 may be implemented on a cloud platform.
  • the cloud platform may include a private cloud, a public cloud, a hybrid cloud, a community cloud, a distributed cloud, an inter-cloud, a multi-cloud, or the like, or any combination thereof.
  • the storage device 120 may be connected to or communicate with the server 110.
  • the server 110 may access data or instructions stored in the storage device 120 directly or via a network.
  • the storage device 120 may be a part of the server 110.
  • a service requester may be a user of the requester terminal 130.
  • the user of the requester terminal 130 may be someone other than the service requester.
  • a user A of the requester terminal 130 may use the requester terminal 130 to send a service request for a user B, or receive service and/or information or instructions from the server 110.
  • a service provider may be a user of the provider terminal 140.
  • the user of the provider terminal 140 may be someone other than the service provider.
  • a user C of the provider terminal 140 may use the provider terminal 140 to receive an order request for a user D, and/or information or instructions from the server 110.
  • “requester” and “requester terminal” may be used interchangeably, “user” and “user terminal” may be used interchangeably, and “provider” and “provider terminal” may be used interchangeably.
  • a requester may be a passenger, and a provider may be a driver.
  • the requester terminal 130 may include a mobile device 130-1, a tablet computer 130-2, a laptop computer 130-3, a built-in device in a motor vehicle 130-4, or the like, or any combination thereof.
  • the mobile device 130-1 may include a smart home device, a wearable device, a smart mobile device, a virtual reality device, an augmented reality device, or the like, or any combination thereof.
  • the smart home device may include a smart lighting device, a control device of an intelligent electrical apparatus, a smart monitoring device, a smart television, a smart video camera, an interphone, or the like, or any combination thereof.
  • the wearable device may include a smart bracelet, a smart footgear, smart glasses, a smart helmet, a smart watch, smart clothing, a smart backpack, a smart accessory, or the like, or any combination thereof.
  • the smart mobile device may include a smartphone, a personal digital assistance (PDA) , a gaming device, a navigation device, a point of sale (POS) device, or the like, or any combination thereof.
  • the virtual reality device and/or the augmented reality device may include a virtual reality helmet, a virtual reality glass, a virtual reality patch, an augmented reality helmet, augmented reality glasses, an augmented reality patch, or the like, or any combination thereof.
  • the virtual reality device and/or the augmented reality device may include a Google TM Glass, an Oculus Rift, a HoloLens, a Gear VR, etc.
  • the built-in device in the vehicle 130-4 may include an onboard computer, an onboard television, etc.
  • the requester terminal 130 may be a device with positioning technology for locating the position of the passenger and/or the service requester.
  • the provider terminal 140 may be a device that is similar to, or the same as the requester terminal 130. In some embodiments, the provider terminal 140 may be a device utilizing positioning technology for locating the position of a user of the provider terminal 140 (e.g., a service provider) and/or the provider terminal 140. In some embodiments, the requester terminal 130 and/or the provider terminal 140 may communicate with one or more other positioning devices to determine the position of the requester, the requester terminal 130, the provider, and/or the provider terminal 140. In some embodiments, the requester terminal 130 and/or the provider terminal 140 may send positioning information to the server 110.
  • the server 110 may be a device that is similar to, or the same as the requester terminal 130. In some embodiments, the provider terminal 140 may be a device utilizing positioning technology for locating the position of a user of the provider terminal 140 (e.g., a service provider) and/or the provider terminal 140. In some embodiments, the requester terminal 130 and/or the provider terminal 140 may communicate with one or more other positioning
  • the requester terminal 130 and/or the provider terminal 140 may display information related to an order request (e.g., a pick-up location, a drop-off location, a route) .
  • the provider terminal 140 may periodically or real-time transmit an availability status to the server 110.
  • the availability status may indicate whether a vehicle 150 associated with the service provider is available to carry a service requester.
  • the provider terminal 140 may transmit the positioning information and/or the availability status to the server 110 every five mins (or 1 min, two mins, etc. ) .
  • the requester terminal 130 and/or the provider terminal 140 may transmit the positioning information and/or the availability status to the server 110 each time a user (e.g., a passenger, or a driver) logs into an application associated with the online to offline service (e.g., the on-demand transportation service) .
  • a user e.g., a passenger, or a driver
  • an application associated with the online to offline service e.g., the on-demand transportation service
  • the service provider may correspond to one or more vehicles 150.
  • the vehicles 150 may carry one or more passengers and travel to the drop-off location.
  • the vehicles 150 may include a plurality of vehicles 150-1, 150-2, 150-3, ..., etc.
  • One vehicle may correspond to one type of services (e.g., a taxi-hailing service, a chauffeur service, an express car service, a carpool service, a bus service, a driver hire service, or a shuttle service) .
  • a positioning system 160 may determine information associated with an object or a target, for example, the requester terminal 130, the provider terminal 140, the vehicles 150.
  • the positioning system 160 may be a global positioning system (GPS) , a global navigation satellite system (GLONASS) , a compass navigation system (COMPASS) , a BeiDou navigation satellite system, a Galileo positioning system, a quasi-zenith satellite system (QZSS) , etc.
  • the information may include a location, an elevation, a velocity, or an acceleration of the object, or a current time.
  • the positioning system 160 may include one or more satellites, for example, a satellite 160-1, a satellite 160-2, and/or a satellite 160-3, etc.
  • the satellites 160-1 through 160-3 may determine the information mentioned above independently or jointly.
  • the positioning system 160 may transmit the information mentioned above to the requester terminal 130, the provider terminal 140, or the vehicle 150 via wireless connections. In some embodiments, the positioning system 160 may transmit the information to the O2O service system 100 directly.
  • Networks 170-1 through 170-3 may facilitate exchange of information and/or data.
  • one or more components of the O2O service system 100 e.g., the server 110 and/or the storage device 120
  • the server 110 may obtain or acquire data relating to a potential service request via the network 170-1.
  • the server 110 may obtain availability status of a candidate service provider via the network 170-2.
  • the networks 170-1 through 170-3 may be any type of wired or wireless networks, or combination thereof.
  • the networks 170 may include a cable network, a wireline network, an optical fiber network, a tele communications network, an intranet, an Internet, a local area network (LAN) , a wide area network (WAN) , a wireless local area network (WLAN) , a metropolitan area network (MAN) , a wide area network (WAN) , a public telephone switched network (PSTN) , a Bluetooth TM network, a ZigBee TM network, a near field communication (NFC) network, a global system for mobile communications (GSM) network, a code-division multiple access (CDMA) network, a time-division multiple access (TDMA) network, a general packet radio service (GPRS) network, an enhanced data rate for GSM evolution (EDGE) network, a wideband code division multiple access (WCDMA) network, a high speed downlink packet access (HSDPA) network, a long term evolution (LTE) network, a user datagram protocol (UDP)
  • LAN local area
  • FIG. 2 is a schematic diagram illustrating exemplary components of a computing device according to some embodiments of the present disclosure.
  • the server 110, the storage device 120, the requester terminal 130 and/or the provider terminal 140 may be implemented on the computing device 200 according to some embodiments of the present disclosure.
  • the particular system may use a functional block diagram to explain the hardware platform containing one or more user interfaces.
  • the computer may be a computer with general or specific functions. Both types of the computers may be configured to implement any particular system according to some embodiments of the present disclosure.
  • the computing device 200 may be configured to implement any components that perform one or more functions disclosed in the present disclosure.
  • the computing device 200 may implement any component of the O2O service system 100 as described herein.
  • the computing device 200 may include one or more COM ports 250 connected to and from a network connected thereto to facilitate data communications.
  • the computing device 200 may also include a processor (e.g., the processor 220) , in the form of one or more processors (e.g., logic circuits) , for executing program instructions.
  • the processor may include interface circuits and processing circuits therein.
  • the interface circuits may be configured to receive electronic signals from a bus 210, wherein the electronic signals encode structured data and/or instructions for the processing circuits to process.
  • the processing circuits may conduct logic calculations, and then determine a conclusion, a result, and/or an instruction encoded as electronic signals. Then the interface circuits may transmit out the electronic signals from the processing circuits via the bus 210.
  • the exemplary computing device may include the internal communication bus 210, program storage and data storage of different forms including, for example, a disk 270, and a read-only memory (ROM) 230, or a random-access memory (RAM) 240, for various data files to be processed and/or transmitted by the computing device.
  • the exemplary computing device may also include program instructions stored in the ROM 230, RAM 240, and/or other type of non-transitory storage medium to be executed by the processor 220.
  • the methods and/or processes of the present disclosure may be implemented as the program instructions.
  • the computing device 200 also includes an I/O component 260, supporting input/output between the computer and other components.
  • the computing device 200 may also receive programming and data via network communications.
  • FIG. 2 Merely for illustration, only one processor and/or processor is illustrated in FIG. 2. Multiple CPUs and/or processors are also contemplated; thus operations and/or method steps performed by one CPU and/or processor as described in the present disclosure may also be jointly or separately performed by the multiple CPUs and/or processors.
  • the CPU and/or processor of the computing device 200 executes both operation A and operation B
  • operation A and operation B may also be performed by two different CPUs and/or processors jointly or separately in the computing device 200 (e.g., the first processor executes operation A and the second processor executes operation B, or the first and second processors jointly execute operations A and B) .
  • FIG. 3 is a block diagram illustrating exemplary hardware and/or software components of an exemplary mobile device according to some embodiments of the present disclosure.
  • the requester terminal 130 or the provider terminal 140 may be implemented on the mobile device 300 according to some embodiments of the present disclosure.
  • the mobile device 300 may include a communication module 310, a display 320, a graphic processing unit (GPU) 330, a central processing unit (CPU) 340, an I/O 350, a memory 360, and a storage 390.
  • the CPU 340 may include interface circuits and processing circuits similar to the processor 220.
  • any other suitable component including but not limited to a system bus or a controller (not shown) , may also be included in the mobile device 300.
  • a mobile operating system 370 e.g., iOS TM , Android TM , Windows Phone TM , etc.
  • the applications 380 may include a browser or any other suitable mobile apps for receiving and rendering information relating to a service request or other information from the O2O service system 100 on the mobile device 300.
  • User interactions with the information stream may be achieved via the I/O devices 350 and provided to the processing device 112 and/or other components of the O2O service system 100 via the network (e.g., the network 170-1, the network 170-2, or the network 170-3) .
  • a computer hardware platform may be used as hardware platforms of one or more elements (e.g., a component of the server 110 described in FIG. 1) . Since these hardware elements, operating systems, and program languages are common, it may be assumed that persons skilled in the art may be familiar with these techniques and they may be able to provide information required in the O2O service according to the techniques described in the present disclosure.
  • a computer with user interface may be used as a personal computer (PC) , or other types of workstations or terminal devices. After being properly programmed, a computer with user interface may be used as a server. It may be considered that those skilled in the art may also be familiar with such structures, programs, or general operations of this type of computer device. Thus, extra explanations are not described for the figures.
  • FIG. 4 is a block diagram illustrating an exemplary processing device according to some embodiments of the present disclosure.
  • the processing device 112 may include an acquisition module 410, a potential target service provider determination module 420, a recommended time of arrival determination module 430, a response rate determination module 440 and a transmitting module 450.
  • the modules may be hardware circuits of at least part of the processing device 112.
  • the modules may be implemented as an application or set of instructions read and executed by the processing device 112. Further, the modules may be any combination of the hardware circuits and the application/instructions.
  • the modules may be the part of the processing device 112 when the processing device 112 is executing the application/set of instructions.
  • the acquisition module 410 may detect a potential service request.
  • the potential service request may refer to a service request with a pick-up location and/or a drop-off location but has not been formally made (or sent) by a service requester.
  • the potential service request may be a yet-to-be sent request.
  • the potential service request may be in the form of a partially-entered request that is not sent or a complete request that is not sent.
  • the acquisition module 410 may use an application installed on the requester terminal 130 (e.g., the carpool application 1300 illustrated in FIG. 13) to detect the potential service request.
  • the acquisition module 410 may detect the potential service request by obtaining a status of an icon associated with a request confirmation operation, such as the “Confirm expresspool” shown in FIG. 13.
  • the acquisition module 410 may obtain the status of an icon associated with a request confirmation operation via the at least one first information exchange port 1101. If a target service requester inputs the pick-up location and/or the drop-off location, but does not activate the icon associated with the request confirmation operation (i.e., the status of the icon associated with the request confirmation operation is inactivated) , the acquisition module 410 may obtain the potential service request including the pick-up location and/or the drop-off location.
  • the potential target service provider determination module 420 may search one or more candidate service providers within a first threshold distance from the pick-up location.
  • the first threshold distance may be a predetermined distance, such as 50 m, 100 m, 1 km, 2 km, 2.5 km, 3 km, 5 km, 6 km, 10 km, etc.
  • the potential target service provider determination module 420 may select at least one potential target service provider from the one or more candidate service providers. For example, the potential target service provider determination module 420 may select the at least one potential target service provider from the one or more candidate service providers based on a first predetermined selecting rule.
  • the first predetermined selecting rule may be associated with a driving direction of a candidate service provider, a detour distance, a detour time, the number of available seats, a distance from a location of a candidate service provider to the pick-up location, a billing rate of a candidate service provider, a relation between the drop-off location and a destination of a candidate service provider, or another pick-up location related to a service order of a candidate service provider, or the like, or any combination thereof.
  • the potential target service provider determination module 420 may select the at least one potential target service provider from the one or more candidate service providers based on a second predetermined selecting rule.
  • the second predetermined selecting rule may be associated with a driving direction of a candidate service provider, a score of a candidate service provider, a distance from a location of a candidate service provider to the pick-up location, an order cancellation rate of a candidate service provider, or the like, or any combination thereof.
  • the potential target service provider determination module 420 may obtain information of at least one potential target service provider from one or more candidate service providers via at least one second information exchange port 1102.
  • the recommended time of arrival determination module 430 may determine a recommended time of arrival from a corresponding location of a target service provider to the pick-up location. More specifically, in some embodiments, the recommended time of arrival determination module 430 may determine an estimated time of arrival (ETA) based on a route from the corresponding location of each of the at least one potential target service provider to the pick-up location. The recommended time of arrival determination module 430 may plan the route from the corresponding location of each of the at least one potential target service provider to the pick-up location. In some embodiments, the recommended time of arrival determination module 430 may invoke a third party database (e.g., a map server) to obtain the route. In some embodiments, the recommended time of arrival determination module 430 may obtain information related to the planned route from the map server.
  • ETA estimated time of arrival
  • the information related to the planned route may include an estimated time of arrival to the pick-up location, a length of the route, a traffic condition, or the like, or any combination thereof.
  • the recommended time of arrival determination module 430 may determine a recommended time of arrival based on the at least one determined estimated time of arrival. For example, a shortest time among the at least one determined estimated time of arrival may be designated as the recommended time of arrival to the pick-up location.
  • the response rate determination module 440 may determine a response rate of a plurality of historical service requests.
  • the response rate may refer to a ratio of a first number (or count) of responded historical service requests and a second number (or count) of the plurality of historical service requests.
  • the plurality of historical service requests may be within a second threshold distance and/or occurred during a predetermined time period from the pick-up location.
  • the second threshold distance may be a predetermined distance, such as 2.5 km, 3 km, 5 km, 6 km, 10 km, etc. In some embodiments, the second threshold distance may be equal to the first threshold distance.
  • the predetermined time period may be before the potential service request occurs and/or render the response rate real-time or substantially real-time to when the potential service request occurs.
  • the response rate determination module 440 may determine a recommended threshold according to the response rate.
  • the recommended threshold may be a numerical value associated with the response rate.
  • the response rate determination module 440 may compare a random number with the recommended threshold.
  • the response rate determination module 440 may determine whether the random number is no less than the recommended threshold. If the random number is no less than the recommended threshold, the transmitting module 450 may determine to transmit a recommended time of arrival to the requester terminal 130.
  • the transmitting module 450 may transmit the recommended time of arrival. For example, the transmitting module 450 may transmit (or send) the recommended time of arrival to the interface of an application installed on a mobile device of the target service requester (e.g., the requester terminal 130) via the at least one first information exchange port 1101. In some embodiments, in response to a service order, the transmitting module 450 may send an instruction for causing display of information related to the service order (e.g., the pick-up location, the drop-off location, a route from the pick-up location to the drop-off location, etc. ) on the provider terminal 140 via the at least one second information exchange port 1102.
  • information related to the service order e.g., the pick-up location, the drop-off location, a route from the pick-up location to the drop-off location, etc.
  • processing device 112 may further include a storage module facilitating data storage.
  • a storage module facilitating data storage.
  • FIG. 5 is a flowchart illustrating an exemplary process for determining a recommended time of arrival for an O2O service according to some embodiments of the present disclosure.
  • process 500 may be executed by the O2O service system 100.
  • the process 500 may be stored in the storage device 120 and/or the storage (e.g., the ROM 230, the RAM 240, etc. ) as a form of instructions, and invoked and/or executed by the server 110 (e.g., the processing device 112 in the server 110, or the processor 220 of the processing device 112 in the server 110) .
  • the operations of the illustrated process presented below are intended to be illustrative. In some embodiments, the process 500 may be accomplished with one or more additional operations not described, and/or without one or more of the operations discussed. Additionally, the order in which the operations of the process 500 as illustrated in FIG. 5 and described below is not intended to be limiting.
  • the processor may detect a potential service request.
  • a target service requester may input the potential service request by an application installed on a mobile device of the target service requester (e.g., the requester terminal 130) .
  • the application may obtain user input (e.g., the potential service request) .
  • the processor may detect the potential service request according to the obtained user input via at least one first information exchange port 1101.
  • a potential service request may refer to a service request with a pick-up location and/or a drop-off location but has not been formally made (or sent) by a service requester.
  • the potential service request may be a yet-to-be sent request.
  • the potential service request may be in the form of a partially-entered request that is not sent or a complete-entered request that is not sent.
  • the target service requester desires to request a service (e.g., a transportation service)
  • the target service requester may input or select a pick-up location and/or a drop-off location by the application installed on the requester terminal 130 before confirming the service request (or before sending the service request to the server 110) .
  • the yet-to-be sent request in such cases may be regarded as a potential service request.
  • An exemplary application may be shown in FIGs. 13 and 14.
  • the potential service request may include a pick-up location and/or a drop-off location of a transportation service.
  • the transportation service may include a taxi hailing service, a chauffeur service, an express car service, a carpool service, a bus service, a driver hire service, a shuttle service, or the like.
  • a service request may be initiated by a user for himself/herself or other user. While the embodiments of the present disclosure, with minor modifications known by a person skilled in the art, can be applied to the request-service-for-others scenario, the descriptions hereinafter use the request-service-for-self scenario as examples.
  • the pick-up location may include any location that the target service requester inputs or selects.
  • the pick-up location and a current location of the target service requester may be the same or different.
  • the pick-up location may include a crossroad, a building, a bus station, a community gate, a park gate, a school gate, and/or any location that is easy to identify.
  • the pick-up location may be within a threshold distance from the current location of the target service requester.
  • the threshold distance may be any positive value, such as but not limited to 5 m, 10 m, 20 m, 50 m, 100 m, 200 m, 500 m, or 1000 m, or the like.
  • the threshold distance may be a default parameter stored in a storage device (e.g., the storage device 120) or be set by a user of the O2O service system 100. In some embodiments, the threshold distance may be determined by one or more components of the O2O service system 100 (e.g., the processing device 112) . In some embodiments, the threshold distance may vary with the request time, the service requester, the current location of the service requester, etc. Merely by way of example, a threshold distance with respect to a current location in a city may be less than a threshold distance with respect to the current location in a suburb. In some embodiments, the drop-off location may be a destination where a user wants and/or needs to go.
  • the target service requester may send the potential service request to the server 110 via a first information exchange port 1101, so as to form a valid (or regular) service request.
  • the requester terminal 130 may continuously or periodically transmit information related to the potential service request to the server 110 via the first information exchange port 1101.
  • the information related to the potential service request may include the pick-up location, the drop-off location, the current location of the target service requester, the number of passengers associated with the potential service request, or the like, or any combination thereof.
  • the server 110 (or the processing device 112) may determine whether there is a potential service request originated from the requester terminal 130 according to the received information.
  • the server 110 may perform the process 500 to determine a recommended time for a potential target service provider to arrive at the pick-up location of the target service requester (also referred to herein as a recommended time of arrival) .
  • the processor in response to the potential service request and before receiving a service request corresponding to the potential service request from the target service requester, the processor (e.g., the potential target service provider determination module 420 of the processing device 112) may obtain information of at least one potential target service provider from one or more candidate service providers via at least one second information exchange port 1102.
  • the information may include, for example, a location of each of the at least one potential service provider, an availability status of each of the at least one potential service provider, an ETA from a location of each of the at least one potential service provider to the pick-up location, etc.
  • a candidate service provider may be a service provider that is within a first threshold distance from the pick-up location and/or available to provide an O2O service (e.g., a transportation service) upon the potential service request.
  • O2O service e.g., a transportation service
  • a candidate service provider may be a service provider that is within a first threshold distance from the pick-up location and has no service order.
  • a candidate service provider may be a service provider that is within the first threshold distance from the pick-up location and has accepted and/or has been in service to at least one service order, but is still available to provide the carpool service.
  • the first threshold distance may be a predetermined distance, such as but not limited to 50 m, 100 m, 1 km, 2 km, 2.5 km, 3 km, 5 km, 6 km, 10 km, etc.
  • the first threshold distance may be a default parameter stored in a storage (e.g., the storage device 120) or be predetermined by the O2O service system 100.
  • the first threshold distance may be determined by one or more components of the O2O service system 100 (e.g., the processing device 112) .
  • the first threshold distance may vary with different situations, such as different request time, different service areas, different weather conditions, etc. Merely by way of example, the first threshold distance corresponding to a pick-up location in city may be smaller than that in a suburb.
  • the processor may select a potential target service provider from one or more candidate service providers.
  • the potential target service provider may be selected from the candidate service provider (s) based on one or more predetermined selecting rules.
  • the processor may select a candidate service provider that has accepted and/or has been in service to at least one service order as the potential target service provider. In this situation, the potential target service provider may be selected from the candidate service provider (s) based on a first predetermined selecting rule.
  • the first predetermined selecting rule may be associated with one or more factors including, for example, a driving direction of a candidate service provider, a detour distance, a detour time, the number of available seats, a distance from a location of a candidate service provider to the pick-up location, a billing rate of a candidate service provider, a relation between the drop-off location and a destination of a candidate service provider, another pick-up location related to a service order of a candidate service provider, or the like, or a combination thereof.
  • factors including, for example, a driving direction of a candidate service provider, a detour distance, a detour time, the number of available seats, a distance from a location of a candidate service provider to the pick-up location, a billing rate of a candidate service provider, a relation between the drop-off location and a destination of a candidate service provider, another pick-up location related to a service order of a candidate service provider, or the like, or a combination thereof.
  • the processor may determine whether the driving direction of the candidate service provider is consistent with a direction from a current location of the candidate service provider to the pick-up location. In some embodiments, if the driving direction of the candidate service provider is consistent with the direction from the current location of the candidate service provider to the pick-up location, the candidate service provider may be selected as a potential target service provider. In some embodiments, if the detour distance and/or detour time of a candidate service provider are within a threshold distance (e.g., 1 km, 3 km, 5 km, or the like) and/or a threshold time (e.g., 1 min, 1.5 mins, 2 mins, or the like) , the candidate service provider may be selected as a potential target service provider.
  • a threshold distance e.g., 1 km, 3 km, 5 km, or the like
  • a threshold time e.g., 1 min, 1.5 mins, 2 mins, or the like
  • the threshold distance and/or the threshold time may be default parameters stored in a storage device 120.
  • the processor may determine the detour distance based on a planned route associated with the potential service request (e.g., a planned route from the pick-up location to the drop-off location of the potential service request) and a planned route associated with the service order (e.g., a planned route from a pick-up location to a drop-off location of the service order) to which the candidate service provider is in service.
  • the processor may determine the detour time based on the detour distance, for example, by dividing a detour distance by an average speed of a vehicle corresponding to the candidate service provider.
  • the candidate service provider may be selected as a potential target service provider if the number of available seats of a vehicle corresponding to a candidate service provider is larger than the number of passengers associated with the potential service request. In some embodiments, if the distance from a current location of a candidate service provider to the pick-up location of the potential service request is within a threshold distance (e.g., 1 km, 2 km, 3 km, or the like) , the candidate service provider may be selected as a potential target service provider. In some embodiments, a billing rate may refer to a cost per kilometer, such as 2.2 RMB/km.
  • the processor may also take into consideration the relation between the drop-off location of the potential service request and a destination of a candidate service provider in selecting the potential target service provider (s) . For example, if the destination of a candidate service provider is within a predetermined range from the drop-off location, the processor may select the candidate service provider as a potential target service provider. In some embodiments, the processor may also take into consideration another pick-up location related to a service order of a candidate service provider in selecting the potential target service provider (s) . For example, if a candidate service provider has accepted a service order, and the pick-up location of the service order is located in a planned route associated with the potential service request, the candidate service provider may be selected as a potential target service provider.
  • the processor may take into consideration either all factors or one or more factors associated with the first predetermined selecting rule mentioned above.
  • the one or more candidate service providers that meet all factors associated with the first predetermined selecting rule may be selected as the potential target service provider (s) .
  • the one or more candidate service providers that meet at least one factor associated with the first predetermined selecting rule may be selected as the potential target service provider (s) .
  • the processor may sort the candidate service providers based on one or more factors illustrated above, and may select N (N ⁇ 1) candidate service providers as the potential target service provider (s) .
  • the processor may sort the billing rates of the five candidate service providers, and may select three candidate service providers that have relatively low billing rates as the potential target service providers (e.g., A, B and C) .
  • the way of selecting the potential target service provider (s) may be various. All such variations are within the protection scope of the present disclosure.
  • the processor may select a candidate service provider that has no service order as a potential target service provider.
  • the potential target service provider may be selected from the candidate service provider (s) based on a second predetermined selecting rule.
  • the second predetermined selecting rule may be associated with one or more factors including, for example, a driving direction of a candidate service provider, a score of a candidate service provider, a distance from a current location of a candidate service provider to the pick-up location, an order cancellation rate of a candidate service provider, or the like, or a combination thereof.
  • the processor may select the candidate service provider as a potential target service provider.
  • the candidate service provider may be selected as a potential target service provider.
  • the candidate service provider may be selected as a potential target service provider.
  • the candidate service provider may be selected as a potential target service provider.
  • the candidate service provider may be selected as a potential target service provider.
  • the candidate service provider may be selected as a potential target service provider.
  • the candidate service provider may be selected as a potential target service provider if the order cancellation rate of a candidate service provider is relatively low.
  • the information of the potential target service provider may include, for example, vehicle information, capacity information, price information, service information, location information, performance information, or the like, or any combination thereof.
  • the vehicle information and/or the capacity information may relate to a vehicle that corresponds to a candidate service provider and can be used for providing services.
  • the vehicle information may include a vehicle type, a brand of the vehicle, the age of the vehicle, or the like, or any combination thereof.
  • the capacity information may include the number of seats in the vehicle, a load capacity (e.g., a weight of products that the vehicle can carry) of the vehicle, or the like, or any combination thereof.
  • the price information may include a fundamental price for a candidate service provider to provide services, a unit price (e.g., a price per unit distance) , a dynamitic price rate, or the like, or any combination thereof.
  • the service information may include an order acceptance rate, an order completion rate, an order cancellation rate, a service response time, the number of historical service orders of the candidate service provider, or the like, or any combination thereof.
  • the location information may include a current location of the candidate service provider, a distance between the candidate service provider and the pick-up location of the potential service request, a number of crossroads along the route between the candidate service provider and the pick-up location, or the like, or any combination thereof.
  • the distance between the candidate service provider and the pick-up location may be a linear distance or a distance of the route therebetween.
  • the performance information may include a performance score evaluated by requesters, a number of complaints received from requesters, or the like, or any combination thereof.
  • the processor may determine a recommended time of arrival.
  • the processor may determine the recommended time of arrival based on a route from a corresponding location of each of the at least one potential target service provider to the pick-up location.
  • the corresponding location of a potential target service provider may be a current location of the potential target service provider at the time the processor detects the potential service request.
  • the recommended time of arrival may refer to a recommended time for a service provider to arrive at the pick-up location.
  • the processor may determine an estimated time of arrival (ETA) based on a route from the corresponding location of each potential target service provider to the pick-up location.
  • the ETA (s) may be determined based on a map service of the O2O service system 100.
  • the recommended time of arrival may be determined based on the determined ETA (s) .
  • the recommended time of arrival may be a shortest time among the determined ETA (s) .
  • the recommended time of arrival may be an average time of the determined ETA (s) . More descriptions of the determination of the recommended time of arrival and the ETA for each potential target service provider may be found elsewhere in the present disclosure (e.g., FIG. 6, and descriptions thereof) .
  • the processor may transmit the recommended time of arrival.
  • the processor may transmit the recommended time of arrival to a mobile device of the target service requester (e.g., the requester terminal 130) via the at least one first information exchange port 1101.
  • the requester terminal 130 may display the recommended time of arrival in various forms, such as a message, an audio, a video, an image, or the like, or any combination thereof.
  • the recommended time of arrival may be displayed as a message, such as “1 min” , “2 mins” , “5 mins” , on the interface of an application installed on the requester terminal 130 of the target service requester. As shown in FIG.
  • the interface of a carpool application 1300 displays the recommended time of arrival, that is, “Board after 2 mins” .
  • the recommended time of arrival may be broadcasted by the requester terminal 130 of the target service requester (e.g., via the application installed on the requester terminal 130) .
  • the processor may determine whether to send the recommended time of arrival before transmitting the recommended time of arrival. In some embodiments, the processor may determine whether to send the recommended time of arrival based on a comparison of a random number and a recommended threshold. In some embodiments, the processor may generate a random number within a certain range (e.g., from 1 to 100) . In some embodiments, the recommended threshold may be determined based on a response rate. In some embodiments, the processor may determine the response rate of a plurality of historical service requests within a second threshold distance from the pick-up location and/or occurred during a predetermined time period. The first threshold distance illustrated in 520 and the second threshold distance illustrated here may be the same or different.
  • the response rate of the plurality of historical service requests may be a ratio of responded historical service requests and the plurality of historical service requests.
  • the predetermined time period may be before the potential service request occurs. In some embodiments, the predetermined time period may render the response rate real-time or substantially real-time to when the potential service request occurs.
  • the processor may determine to transmit the recommended time of arrival. In some embodiments, if the random number is no greater than the recommended threshold, the processor may determine not to transmit the recommended time of arrival. More descriptions of the determination of whether to send the recommended time of arrival may be found elsewhere in the present disclosure (e.g., FIGs. 7, 8, 10, 11, and relevant descriptions thereof) .
  • the processor may transmit the recommended time of arrival to the mobile device of the target service requester. In some embodiments, if the processor determines not to send the recommended time of arrival, the processor may refrain from transmitting the recommended time of arrival.
  • operation 520 may be divided into an operation for searching one or more candidate service providers and an operation for obtaining information of at least one potential target service provider from the one or more candidate service providers.
  • FIG. 6 is a flowchart illustrating an exemplary process for determining a recommended time of arrival for an O2O service according to some embodiments of the present disclosure.
  • the process 600 may be implemented in the O2O service system 100.
  • the process 600 may be stored in the storage device 120 and/or the storage (e.g., the ROM 230, the RAM 240, etc. ) as a form of instructions, and invoked and/or executed by the server 110 (e.g., the processing device 112 in the server 110, or the processor 220 of the processing device 112 in the server 110) .
  • the operations of the illustrated process presented below are intended to be illustrative. In some embodiments, the process 600 may be accomplished with one or more additional operations not described, and/or without one or more of the operations discussed. Additionally, the order in which the operations of the process 600 as illustrated in FIG. 6 and described below is not intended to be limiting.
  • the processor may detect a potential service request.
  • a potential service request may be a yet-to-be sent request. If a service requester sends out or confirms the potential service request, the potential service request may be transformed into a valid (or regular) service request.
  • a potential service request may include a pick-up location and/or a drop-off location.
  • the potential service request may be a transportation service request. For example, as shown in FIG.
  • a target service requester inputs or selects a pick-up location 1302 and/or a drop-off location 1304 on the interface of a carpool application 1300, and desires to obtain an ExpressPool service
  • the desired ExpressPool service may be regarded as a potential service request. If the target service requester confirms the potential service request, for example, the target service requester activates “Confirm expresspool” on the interface of the carpool application 1300, the potential service request may be transformed into a valid service request.
  • the O2O service system 100 may further generate an order in response to the confirmation of the potential service request, and dispatch a target service provider for the target service requester according to the order.
  • the processor may use the application installed on the requester terminal 130 (e.g., the carpool application 1300 illustrated in FIG. 13) to detect the potential service request.
  • the processor may detect the potential service request by obtaining a status of an icon associated with a request confirmation operation, such as the “Confirm expresspool” shown in FIG. 13.
  • the processor may obtain the status of an icon associated with a request confirmation operation via the at least one first information exchange port 1101.
  • the processor may obtain the potential service request including the pick-up location and/or the drop-off location.
  • the processor may search one or more candidate service providers.
  • the processor may search the candidate service provider (s) within a first threshold distance from the pick-up location.
  • the first threshold distance may be a predetermined distance, such as 50 m, 100 m, 1 km, 2 km, 2.5 km, 3 km, 5 km, 6 km, 10 km, etc.
  • each of the candidate service provider (s) may be available to provide a carpool service upon the potential service request.
  • mobile device (s) of the candidate service provider (s) may transmit availability status to the server 110 in real time or periodically (e.g., every 5 mins) .
  • the availability status may indicate whether a vehicle 150 associated with a service provider is available to carry at least one passenger.
  • the processor may obtain the availability status of one or more service providers from the corresponding one or more provider terminals 140 via at least one second information exchange port 1102.
  • the processor may determine one or more candidate service providers based on the obtained availability status of the one or more service providers. For example, the processor may search one or more service providers within the first threshold distance from the pick-up location, and determine one or more service providers that are in availability status as the one or more candidate service providers.
  • the processor may select at least one potential target service provider from the one or more candidate service providers.
  • each of the at least one potential target service provider has accepted and/or has been in service to at least one service order. For example, if there are five candidate server providers, among which three candidate service providers have been in service to at least one service order, the processor may select the three candidate service providers as the potential target service providers.
  • the processor may select the at least one potential target service provider from the one or more candidate service providers based on a first predetermined selecting rule.
  • the first predetermined selecting rule may be associated with a driving direction of a candidate service provider, a detour distance, a detour time, the number of available seats, a distance from a location of a candidate service provider to the pick-up location, a billing rate of a candidate service provider, a relation between the drop-off location and a destination of a candidate service provider, or another pick-up location related to a service order of a candidate service provider, or the like, or any combination thereof.
  • the processor may select the candidate service provider as a potential target service provider. In some embodiments, the processor may plan the route from the pick-up location to the drop-off location upon detecting the potential service request.
  • the processor may determine the detour distance between the planned route associated with the potential service request and a planned route associated with the service order to which a candidate service provider is in service. If the detour distance associated with a candidate service provider is less than a predetermined detour distance threshold (e.g., 1 km, 2 km, 3 km, 4 km, 5 km, 7 km, 9 km, etc. ) , the processor may select the candidate service provider as a potential target service provider.
  • a predetermined detour distance threshold e.g., 1 km, 2 km, 3 km, 4 km, 5 km, 7 km, 9 km, etc.
  • the processor may determine the detour time based on the detour distance. For example, the processor may divide a detour distance by an average speed of the vehicle 150 corresponding to a candidate service provider. If the detour time is less than a predetermined detour time threshold (e.g., 1 min, 2 mins, 3 mins, 4 mins, 5 mins, 10 mins, 15 mins, etc. ) , the processor may select the candidate service provider as a potential target service provider.
  • a predetermined detour time threshold e.g., 1 min, 2 mins, 3 mins, 4 mins, 5 mins, 10 mins, 15 mins, etc.
  • the processor may select the candidate service provider as a potential target service provider.
  • the processor may determine a distance from a current location of a candidate service provider to the pick-up location. If the distance is less than a predetermined value (e.g., 1 km, 2 km, 3 km, 5 km, etc. ) , the processor may select the candidate service provider as a potential target service provider.
  • a predetermined value e.g. 1 km, 2 km, 3 km, 5 km, etc.
  • the processor may determine a billing rate of each of the one or more candidate service providers, and select one or more candidate service providers with relatively low billing rate as the potential target service provider.
  • the billing rate may refer to a cost per kilometer, such as 2.2 RMB/km. For example, if there are five candidate service providers (e.g., A, B, C, D and E) , the processor may sort the billing rates of the five candidate service providers, and may select three candidate service providers that have relatively low billing rates as the potential target service providers (e.g., A, B and C) .
  • the processor may also take into consideration the relation between the drop-off location of the potential service request and a destination of a candidate service provider in selecting the potential target service provider (s) . For example, if the destination of a candidate service provider is within a predetermined range from the drop-off location, the processor may select the candidate service provider as a potential target service provider.
  • the processor may also take into consideration another pick-up location related to a service order of a candidate service provider in selecting the potential target service provider (s) . For example, if a candidate service provider has accepted a service order, and the pick-up location of the service order is located in a planned route associated with the potential service request, the candidate service provider may be selected as a potential target service provider.
  • the processor may take into consideration either all factors or one or more factors associated with the first predetermined selecting rule mentioned above.
  • the one or more candidate service providers that meet all factors associated with the first predetermined selecting rule may be selected as the potential target service provider (s) .
  • the one or more candidate service providers that meet at least one factor associated with the first predetermined selecting rule may be selected as the potential target service provider (s) .
  • the way of selecting the potential target service provider (s) may be varied. All such variations are within the protection scope of the present disclosure.
  • the processor may determine an estimated time of arrival (ETA) based on a route from the corresponding location of each of the at least one potential target service provider to the pick-up location.
  • the processor e.g., the potential target service provider determination module 420
  • the processor may further plan a route from the corresponding location of each of the at least one potential target service provider to the pick-up location.
  • the processor may determine the ETA by dividing the length of the planned route by a speed of the each of the at least one potential target service provider (i.e., a speed of a vehicle 150 associated with the each of the at least one potential target service provider) .
  • the processor may directly obtain the route from a third party database (e.g., a map server) .
  • a third party database e.g., a map server
  • the processor may transmit information related to the potential service request (e.g., the pick-up location and/or the drop-off location of the potential service request) to the map server, and the map server may provide a route from the corresponding location of a potential target service provider to the pick-up location of the potential service request.
  • the processor may obtain information related to the planned route from the map server.
  • the information related to the planned route may include an estimated time of arrival to the pick-up location, a length of the route, a traffic condition, or the like, or any combination thereof.
  • the processor may further obtain the ETA based on the obtained information related to the planned route from the map server.
  • the map server may determine the ETA based on the route from the corresponding location of each of the at least one potential target service provider to the pick-up location, and the processor may obtain the ETA from the map server.
  • the processor may determine a recommended time of arrival based on the at least one determined estimated time of arrival. In some embodiments, the processor may determine a shortest time among the at least one determined estimated time of arrival, and/or designate the shortest time as the recommended time of arrival to the pick-up location.
  • the processor may transmit (or send) the recommended time of arrival to a mobile device of the target service requester (e.g., the requester terminal 130) via the at least one first information exchange port 1101.
  • the requester terminal 130 may display the recommended time of arrival in various forms, such as a message, an audio, a video, an image, or the like, or any combination thereof.
  • the recommended time of arrival may be displayed as a message, such as “1 min” , “2 mins” , “5 mins” , on the interface of an application installed on the requester terminal 130 of the target service requester. As shown in FIG.
  • the interface of a carpool application 1300 displays the recommended time of arrival, that is, “Board after 2 mins” .
  • the recommended time of arrival may be broadcasted by the requester terminal 130 of the target service requester (e.g., via the application installed on the requester terminal 130) .
  • the potential server request may be transformed into a valid service request.
  • the processor may generate a service order associated with the valid service request to a target service provider for providing the carpool service.
  • a potential target service provider having the recommended time of arrival may be determined as the target service provider.
  • the processor may send an instruction for causing display of information related to the service order (e.g., the pick-up location, the drop-off location, a route from the pick-up location to the drop-off location, etc. ) on a mobile device of the determined target service provider via the at least one second information exchange port 1102.
  • the determined target service provider before receiving the service order, may be available to provide carpool service and may have been in service to at least one other service order.
  • FIG. 7 is a flowchart illustrating an exemplary process for determining a recommended time of arrival for an O2O service according to some embodiments of the present disclosure.
  • the process 700 may be implemented in the O2O service system 100.
  • the process 700 may be stored in the storage device 120 and/or the storage (e.g., the ROM 230, the RAM 240, etc. ) as a form of instructions, and invoked and/or executed by the server 110 (e.g., the processing device 112 in the server 110, or the processor 220 of the processing device 112 in the server 110) .
  • the operations of the illustrated process presented below are intended to be illustrative. In some embodiments, the process 700 may be accomplished with one or more additional operations not described, and/or without one or more of the operations discussed. Additionally, the order in which the operations of the process 700 as illustrated in FIG. 7 and described below is not intended to be limiting.
  • Operations 702 and 704 may be similar to operations 602 and 604 of the process 600 described above, the detailed descriptions of which may be found in this disclosure in connection with FIG. 6.
  • the processor may select at least one potential target service provider from the one or more candidate service provider.
  • each of the at least one potential target service provider may have no service order. For example, if there are five candidate server providers, in which three candidate service providers have no service order, the processor may select the three candidate service providers as the potential target service providers.
  • the processor may select the at least one potential target service provider from the one or more candidate service providers based on a second predetermined selecting rule.
  • the second predetermined selecting rule may be associated with a driving direction of a candidate service provider, a score of a candidate service provider, a distance from a location of a candidate service provider to the pick-up location, an order cancellation rate of a candidate service provider, or the like, or any combination thereof.
  • the processor may select the candidate service provider as a potential target service provider. In some embodiments, the processor may plan the route from the pick-up location to the drop-off location upon detecting the potential service request.
  • the processor may obtain a score of a candidate service provider from the storage device 120 or the provider terminal 140.
  • the processor may select the candidate service provider (s) with relatively high score as the potential target service provider (s) .
  • the relatively high score of the service provider may indicate that the service provider is a premium service provider. For example, if there are five candidate service providers, such as A, B, C, D and E, the processor may sort the five scores corresponding to the five candidate service providers, and may select the three candidate service providers that have relatively high scores as the potential target service providers (e.g., A, B and C) .
  • the processor may determine a distance from a current location of a candidate service provider to the pick-up location. If the distance is less than a predetermined value (e.g., 1 km, 2 km, 3 km, 5 km, etc. ) , the processor may select the candidate service provider as a potential target service provider.
  • a predetermined value e.g. 1 km, 2 km, 3 km, 5 km, etc.
  • the processor may obtain an order cancellation rate of each candidate service provider from the storage device 120 or the provider terminal 140, and select the candidate service provider (s) with relatively low order cancellation rate as the potential target service provider (s) .
  • the order cancellation rate may refer to a ratio of a number (or count) of cancelled orders and a total number (or count) of assigned orders. For example, if the O2O system 100 assigns 50 service orders to a candidate service provider in total, and the candidate service provider cancels 5 orders therein, the order cancellation rate of the candidate service provider may be 10% (i.e., 5/50) .
  • the processor may sort the five order cancellation rates corresponding to the five candidate service providers, and may select the three candidate service providers that have relatively low order cancellation rates as the potential target service providers (e.g., A, B and C) .
  • the processor may take into consideration either all factors or one or more factors associated with the second predetermined selecting rule mentioned above.
  • the one or more candidate service providers that meet all factors associated with the second predetermined selecting rule may be selected as the potential target service provider (s) .
  • the one or more candidate service providers that meet at least one factor associated with the second predetermined selecting rule may be selected as the potential target service provider (s) .
  • the way of selecting the potential target service provider (s) may be varied. All such variations are within the protection scope of the present disclosure.
  • the processor may determine whether to transmit a recommended time of arrival to a mobile device of the target service requester (e.g., the requester terminal 130) . In some embodiments, the processor may determine whether to transmit the recommended time of arrival based on a probability value associated with a response rate. For example, if the response rate is 80%, the probability of transmitting the recommended time of arrival may be 80%. In some embodiments, the processor (e.g., the response rate determination module 440) may determine the response rate of a plurality of historical service requests within a second threshold distance and/or occurred during a predetermined time period from the pick-up location.
  • the second threshold distance may be a predetermined distance, such as 50 m, 100 m, 1 km, 2 km, 2.5 km, 3 km, 5 km, 6 km, 10 km, etc.
  • the predetermined time period may be before the potential service request occurs and/or render the response rate real-time or substantially real-time to when the potential service request occurs. Therefore, the predetermined time period may be relatively short so that the response rate is real-time or substantially real-time. In some embodiments, the predetermined time period may be one minute before the potential service request occurs.
  • the response rate may refer to a ratio of a first number (or count) of responded historical service requests and a second number (or count) of the plurality of historical service requests.
  • the O2O service system 100 may receive 100 service orders, for example, within the second threshold distance (e.g., 10 km) from the pick-up location, and 80 service orders therein may be answered (or responded) in this one minute.
  • the processor may determine that the response rate is 80% (i.e., 80/100) . More descriptions about the determination of whether to transmit the recommended time of arrival may be found elsewhere in the present disclosure (e.g., FIG. 8 and the descriptions thereof) .
  • the processor may proceed to 710. If the processor determines not to transmit the recommended time of arrival, the processor may proceed to 716, that is, the processor may refrain from transmitting the recommended time of arrival.
  • the processor e.g., the recommended time of arrival determination module 430 of the processing device 112 may determine an estimated time of arrival based on a route from the corresponding location of each of the at least one potential target service providers to the pick-up location. Operation 710 may be similar to operation 608 of the process 600 described above, the detailed descriptions of which may be found in this disclosure in connection with FIG. 6.
  • the processor may determine a recommended time of arrival based on the at least one determined estimated time of arrival. In some embodiments, the processor may determine a shortest time among the at least one determined estimated time of arrival, and designate the shortest time as the recommended time of arrival to the pick-up location. In some embodiments, the processor may determine an average time of the at least one determined estimated time of arrival, and designate the average time as the recommended time of arrival to the pick-up location.
  • the processor may transmit the recommended time of arrival to a mobile device of the target service requester (e.g., the requester terminal 130) via the at least one first information exchange port 1101.
  • the requester terminal 130 may display the recommended time of arrival in various forms, such as a message, an audio, a video, an image, or the like, or any combination thereof.
  • the recommended time of arrival may be displayed as a message, such as “1 min” , “2 mins” , “5 mins” , on the interface of an application installed on the requester terminal 130 of the target service requester. As shown in FIG.
  • the interface of a carpool application 1300 displays the recommended time of arrival, that is, “Board after 2 mins” .
  • the recommended time of arrival may be broadcasted by the requester terminal 130 of the target service requester (e.g., via the application installed on the requester terminal 130) .
  • operation 704 and operation 706 may be integrated into a single operation.
  • operation 712 and operation 714 may be integrated into a single operation.
  • operation 708 may be performed after operations 710 and/or 712.
  • these variations and modifications still remain in the scope of the present disclosure.
  • FIG. 8 is a flowchart illustrating an exemplary process for determining whether to transmit a recommended time of arrival according to some embodiments of the present disclosure.
  • the process 800 may be implemented in the O2O service system 100.
  • the process 800 may be stored in the storage device 120 and/or the storage (e.g., the ROM 230, the RAM 240, etc. ) as a form of instructions, and invoked and/or executed by the server 110 (e.g., the processing device 112 in the server 110, or the processor 220 of the processing device 112 in the server 110) .
  • the server 110 e.g., the processing device 112 in the server 110, or the processor 220 of the processing device 112 in the server 110.
  • the operations of the illustrated process presented below are intended to be illustrative.
  • the process 800 may be accomplished with one or more additional operations not described, and/or without one or more of the operations discussed. Additionally, the order in which the operations of the process 800 as illustrated in FIG. 8 and described below is not intended to be limiting. In some embodiments, operation 708 illustrated in FIG. 7 may be performed according to the process 800.
  • the processor may determine the response rate of a plurality of historical service requests.
  • the plurality of historical service requests may be within a second threshold distance and/or occurred during a predetermined time period from the pick-up location.
  • the second threshold distance may be a predetermined distance, such as 50 m, 100 m, 1 km, 2 km, 2.5 km, 3 km, 5 km, 6 km, 10 km, etc.
  • the second threshold distance may be equal to the first threshold distance.
  • the predetermined time period may be before the potential service request occurs and/or render the response rate real-time or substantially real-time to when the potential service request occurs.
  • the predetermined time period may be relatively short so that the response rate is real-time or substantially real-time.
  • the predetermined time period may be one minute before the potential service request occurs.
  • the response rate may refer to a ratio of a first number (or count) of responded historical service requests and a second number (or count) of the plurality of historical service requests.
  • the O2O service system 100 may receive 100 service orders, for example, within the second threshold distance (e.g., 10 km) from the pick-up location, 80 service orders therein may be answered (or responded) in this one minute.
  • the processor may determine that the response rate is 80% (i.e., 80/100) .
  • the processor may determine a recommended threshold according to the response rate.
  • the recommended threshold may be a numerical value associated with the response rate.
  • the recommended threshold may be set as an integer value within a range from 1 to 100.
  • the response rate may be expressed as a percentage.
  • the processor may determine whether a random number is greater than the recommended threshold. More specifically, the processor may generate a random number between 1 and 100. If the random number is greater than the recommended threshold, the process may proceed to 808. In 808, the processor may determine to transmit a recommended time of arrival. In some embodiments, if the processor determines to transmit the recommended time of arrival, the processor may determine the recommended time of arrival (see operations 710 and 712 in FIG. 7) and/or transmit the recommended time of arrival (see operation 714 in FIG. 7) . If the random number is less than the recommended threshold, the process may proceed to 810. In 810, the processor may determine not to transmit a recommended time of arrival.
  • the processor may refrain from transmitting the recommended time of arrival (see operation 716 in FIG. 7) .
  • the process 800 may proceed to 808 or 810 according to a rule.
  • the rule may be set by the O2O service system 100 according to a default setting thereof, or provided by a user, etc.
  • the process 800 may proceed to 808.
  • the process 800 may proceed to 810.
  • the processor may determine the recommended threshold as 30 according to a response rate 70%.
  • the processor may generate a random number (e.g., 50) .
  • the processor may determine to transmit the recommended time of arrival.
  • the processor may generate a random number (e.g., 20) .
  • the processor may determine not to transmit the recommended time of arrival. It should be understood that, in some embodiments, a probability that the random number is no less than the recommended threshold may be equal or closest to the response rate.
  • the processor may directly determine to transmit the recommended time of arrival. In some embodiments, if the response rate is 0, the processor may directly determine not to transmit the recommended time of arrival.
  • FIG. 9 is a flowchart illustrating an exemplary process for determining a recommended time of arrival according to some embodiments of the present disclosure.
  • FIG. 10 is a flowchart illustrating an exemplary process of node A in FIG. 9 according to some embodiments of the present disclosure.
  • the processes 900 and 1000 may be implemented in the O2O service system 100.
  • the processes 900 and 1000 may be stored in the storage device 120 and/or the storage (e.g., the ROM 230, the RAM 240, etc. ) as a form of instructions, and invoked and/or executed by the server 110 (e.g., the processing device 112 in the server 110, or the processor 220 of the processing device 112 in the server 110) .
  • the server 110 e.g., the processing device 112 in the server 110, or the processor 220 of the processing device 112 in the server 110.
  • the processor may perform operations 902 and 904 similar to operations 602 and 604 illustrated in FIG. 6 or operations 702 and 704 illustrated in FIG. 7, the detailed descriptions of which may be found in the present disclosure in connection with FIGs. 6 and 7.
  • the processor may search one or more candidate service providers within the first threshold distance from the pick-up location.
  • the one or more candidate service providers may include one or more service providers that are capable of providing transportation service, such as the service provide (s) that has accepted and has been in service to at least one service order and/or the service provider (s) that has no service order.
  • the processor may determine whether there is at least one candidate service provider that has accepted and has been in service to at least one service order. In other words, the processor may determine whether there is at least one candidate service provider that is capable of providing carpool service. If it is determined that there is at least one candidate service provider that is capable of providing carpool service among the one or more candidate service providers, the process may proceed to 908. In 908, the processor may select the at least one candidate service provider that has accepted and has been in service to at least one service order as potential target service provider (s) . Then the processor may perform operations 910-914.
  • the operations 910-914 may be similar to operations 608-612 of the process 600 described above, the detailed descriptions of which may be found in this disclosure in connection with FIG. 6.
  • the process may proceed to 1002 of the process 1000.
  • the processor may select at least one candidate service provider that has no service order as potential target service provider (s) .
  • the processor may determine whether to transmit a recommended time of arrival to a mobile device of the target service requester (e.g., the requester terminal 130) .
  • the processor may determine whether to transmit the recommended time of arrival according to the process 800 illustrated in FIG. 8. If the processor determines to transmit the recommended time of arrival, the processor may further perform operations 1006-1010.
  • the operations 1006-1010 may be similar to operations 710-714 of the process 700 described above, the detailed descriptions of which may be found in this disclosure in connection with FIG. 7. It should be noted that, if the condition illustrated in operation 906 is satisfied, the processor may perform operations 908-914 of the process 900 preferentially. In this case, in response to the potential service request, the processor may generate a service order and preferentially dispatch a target service provider of the at least one potential target service provider according to the generated service order. The target service provider may have been in service to at least one service order. The processor may send an instruction for causing display of information related to the service order on the mobile device of the target service provider (e.g., the provider terminal 140) . In some embodiments, the target service provider may perform the service order based on the displayed information.
  • the target service provider may perform the service order based on the displayed information.
  • FIG. 11 is a flowchart illustrating an exemplary process for determining whether to send a recommended time of arrival according to some embodiments of the present disclosure.
  • the process 1100 may be implemented in the O2O service system 100.
  • the process 1100 may be stored in the storage device 120 and/or the storage (e.g., the ROM 230, the RAM 240, etc. ) as a form of instructions, and invoked and/or executed by the server 110 (e.g., the processing device 112 in the server 110, or the processor 220 of the processing device 112 in the server 110) .
  • the operations of the illustrated process presented below are intended to be illustrative. In some embodiments, the process 1100 may be accomplished with one or more additional operations not described and/or without one or more of the operations discussed. Additionally, the order in which the operations of the process as illustrated in FIG. 11 and described below is not intended to be limiting.
  • the processor may detect a potential service request. More descriptions of the detection of the potential service request may be found elsewhere in the present disclosure (e.g., FIGs. 5-7 and the descriptions thereof) .
  • the potential service request may include a pick-up location and/or a drop-off location.
  • a target service requester may input the pick-up location, select the pick-up location recommended by GPS, or select the pick-up location stored in travel records on the application installed on a mobile device of the target service requester (e.g., via the I/O 350 illustrated in FIG. 3) .
  • the processor may use the application to detect the potential service request. For example, the processor may detect the potential service request by obtaining a status of an icon associated with a request confirmation operation, such as the “Confirm expresspool” shown in FIG. 13.
  • the processor may obtain the status of an icon associated with a request confirmation operation via the at least one first information exchange port 1101. If the target service requester inputs the pick-up location and/or the drop-off location, but does not activate the icon associated with the request confirmation operation (i.e., the status of the icon associated with the request confirmation operation is inactivated) , the processor may obtain the potential service request including the pick-up location and/or the drop-off location.
  • the processor may obtain information of at least one potential target service provider from one or more candidate service providers via at least one second information exchange port 1102.
  • the candidate service providers may refer to providers that can provide an O2O service (e.g., a transportation service) for the target service requester.
  • the processor may select a potential target service provider from one or more candidate service providers.
  • the processor in response to the potential service request, and before receiving a service request corresponding to the potential service request, the processor may select the at least one potential target service provider from one or more candidate service providers based on a predetermined selecting rule (e.g., the second predetermined selecting rule) . More descriptions of the second predetermined selecting rule and the selection of the at least one potential target service provider may be found elsewhere in the present disclosure (e.g., FIGs. 5-7 and the descriptions thereof) .
  • the processor may determine a recommended time of arrival based on a route from a corresponding location of each of the at least one potential target service provider to the pick-up location. In some embodiments, the processor may estimate the recommended time of arrival according to a map stored in the storage device 120 and/or the storage (e.g., the ROM 230, the RAM 240, etc. ) .
  • the recommended time of arrival may be determined based on a number (or count) of the traffic lights in the route from the corresponding location of each of the at least one potential target service provider to the pick-up location, condition (s) of the road, the weather, service provider’s experience, or the like, or any combination thereof.
  • the processor may rank the recommended time of arrival of the at least one potential target service provider.
  • the processor may determine an estimated time of arrival (ETA) based on a route from the corresponding location of each potential target service provider to the pick-up location.
  • the processor may designate a shortest time among the at least one determined estimated time of arrival as the recommended time of arrival.
  • the processor may designate an average time of the at least one determined estimated time of arrival as the recommended time of arrival. More descriptions of the determination of the recommended time of arrival may be found elsewhere in the present disclosure (e.g., FIGs. 5-7 and the descriptions thereof) .
  • the processor may determine a response rate of a plurality of historical service requests.
  • the plurality of historical service requests may be within a second threshold distance and/or occurred during a predetermined time-period from the pick-up location.
  • the response rate may be a ratio of a first number (or count) of responded historical service requests and a second number (or count) of the plurality of historical service requests.
  • the response rate may be stored in the storage device 120 and/or the storage (e.g., the ROM 230, the RAM 240, etc. ) .
  • the predetermined time-period may be before the potential service request occurs and/or render the response rate real-time or substantially real-time to when the potential service request occurs. More descriptions of the determination of the response rate may be found elsewhere in the present disclosure (e.g., FIG. 8 and the descriptions thereof) .
  • the processor e.g., the transmitting module 450 of the processing device 112 may determine whether to send (or transmit) the recommended time of arrival (e.g., based on the response rate determined in 1140) .
  • the processor may determine a recommended threshold according to the response rate.
  • the recommended threshold may be a numerical value associated with the response rate.
  • the recommended threshold may be set as an integer value within a range from 1 to 100.
  • the response rate may be expressed as a percentage.
  • the process may proceed to 1160.
  • the processor e.g., the transmitting module 450
  • the processor may send (or transmit) the recommended time of arrival to a mobile device of the target service requester (e.g., the requester terminal 130) .
  • the processor determines not to transmit the recommended time of arrival (e.g., the random number is no greater than the recommended threshold)
  • the process may proceed to 1170.
  • the processor may refrain from transmitting the recommended time of arrival.
  • the processor e.g., the transmitting module 450
  • the processor may refrain from sending the recommended time of arrival.
  • the processor e.g., the transmitting module 450
  • FIG. 12 is a flowchart illustrating an exemplary process for generating a service order according to some embodiments of the present disclosure.
  • the process 1200 may be implemented in the O2O service system 100.
  • the process 1200 may be stored in the storage device 120 and/or the storage (e.g., the ROM 230, the RAM 240, etc. ) as a form of instructions, and invoked and/or executed by the server 110 (e.g., the processing device 112 in the server 110, or the processor 220 of the processing device 112 in the server 110) .
  • the operations of the illustrated process presented below are intended to be illustrative. In some embodiments, the process 1200 may be accomplished with one or more additional operations not described and/or without one or more of the operations discussed. Additionally, the order in which the operations of the process as illustrated in FIG. 12 and described below is not intended to be limiting.
  • the processor may detect a potential service request from a mobile device of a target service requester (e.g., the requester terminal 130) .
  • the target service requester may input or select a pick-up location and/or a drop-off location by an application (e.g., the application 1300 or 1400) installed on the requester terminal 130 before sending or confirming a service request (e.g., a transportation service) .
  • the processor may detect the user input and obtain information associated with the input potential service request via at least one first information exchange port 1101. More descriptions of the detection of the potential service request may be found elsewhere in the present disclosure (e.g., FIGs. 5-7 and 11, and the descriptions thereof) .
  • the processor may obtain information of at least one potential target service provider from one or more candidate service providers via at least one second information exchange port 1102. More descriptions of the at least one potential target service provider may be found elsewhere in the present disclosure (e.g., FIGs. 5-7 and 11, and the descriptions thereof) .
  • the processor may determine a recommended time of arrival based on a route from a corresponding location of each of the at least one potential target service provider to the pick-up location. More descriptions of the determination of the recommended time of arrival may be found elsewhere in the present disclosure (e.g., FIGs. 5-7 and 11, and the descriptions thereof) .
  • the processor may transmit the recommended time of arrival to the mobile device of the target service requester (e.g., the requester terminal 130) .
  • the requester terminal 130 may receive the recommended time of arrival and display the recommended time of arrival on the application installed on the requester terminal 130.
  • the target service requester may determine whether to confirm a service request according to the displayed recommended time of arrival. If the service request is confirmed, the requester terminal 130 may transmit information relating to the service request (e.g., the pick-up location and/or the drop-off location) to the processor via the at least one first information exchange port 1101.
  • the processor may generate a service order associated with the potential service request in response to the confirmation of the potential service request.
  • the O2O service system 100 may dispatch a target service provider for the target service requester according to the service order.
  • the potential target service provider corresponding to the recommended time of arrival may be determined as the target service provider.
  • the processor e.g., the transmitting module 450
  • the instructions may direct the provider terminal 140 to display the information related to the service order (e.g., the pick-up location, the drop-off location, a route, etc. ) in various forms, such as a message, an audio, a video, an image, etc.
  • the service order e.g., the pick-up location, the drop-off location, a route, etc.
  • various forms such as a message, an audio, a video, an image, etc.
  • process 1200 is provided for the purpose of illustration, and not intended to limit the scope of the present disclosure.
  • the processor may determine whether to transmit the recommended time of arrival.
  • those variations and modifications may not depart from the spirit and scope of this disclosure.
  • FIG. 13 is a schematic diagram illustrating an exemplary interface of a carpool application according to some embodiments of the present disclosure.
  • a target service requester may initiate the carpool application 1300 on the requester terminal 130 (e.g., a smart phone) .
  • the target service requester may input or select a pick-up location 1302 and a drop-off location 1304 for a carpool service.
  • the pick-up location 1302 and the drop-off location 1304 may be inputted by way of typing, writing, using his/her voice, making a gesture, touching the interface of the application, or the like, or any combination thereof.
  • the target service requester can input the pick-up location by voice command (s) .
  • the requester terminal 130 may display a map 1308 on which the pick-up location 1302 is marked by a pin.
  • the target service requester may move the pick-up location by dragging the pin on the map 1308.
  • the target service requester may change the pick- up location by dragging the map 1308, and the changed pick-up location may be marked by the pin.
  • the pick-up location may be the same as or near the current location of the target service requester.
  • the pick-up location may be inputted (or selected) automatically by a GPS positioning technology implemented in the target service requester.
  • the pick-up location may be different from the current location of the target service requester.
  • the user may click “ExpressPool” for choosing a carpool service.
  • a potential service request including the pick-up location 1302 and/or the drop-off location 1304 may be generated and transmitted to the processor by the requester terminal 130 via a first information exchange port 1101.
  • the processor may select at least one potential target service provider from the candidate service provider (s) based on the first predetermined selecting rule, and each of the at least one potential target service provider has accepted and/or has been in service to at least one service order.
  • the interface of the carpool application 1300 shown in FIG. 13 there is no icons of the candidate service providers around the pick-up location because of the map display.
  • the map 1308 may be zoomed in and out by the target service requester.
  • the interface of the carpool application 1300 may display icons of the candidate service providers around the pick-up location 1302 on the map 1308.
  • the processor may determine an estimated time of arrival (ETA) based on a route from the corresponding location of each potential target service provider to the pick-up location according to a map service of the O2O service system 100.
  • the map service may determine a route from the current location of the each potential target service provider to the pick-up location.
  • the processor may obtain an average speed of the each potential target service provider.
  • the processor may determine an ETA based on the route from the current location of the each potential target service provider to the pick-up location, the average speed of the each potential target service provider, or the like, or a combination thereof.
  • the processor may determine a recommended time of arrival based on the at least one determined ETA. More descriptions of the determination of the recommended time of arrival may be found elsewhere in the present disclosure (e.g., FIGs. 5-7, 11 and 12, and the descriptions thereof) .
  • the processor may transmit the recommended time of arrival to a mobile device of the target service requester (e.g., the requester terminal 130) via the first information exchange port 1101. Then the recommended time of arrival may be displayed on the interface of the carpool application 1300 installed on the mobile device of the target service requester. For example, as shown in FIG. 13, the interface may display the recommended time of arrival, such as “2 mins” shown in 1306.
  • the recommended time of arrival may indicate a recommended time for a potential target service provider to arrive at the pick-up location 1302.
  • the “2 mins” may be an average time of the potential target service provider (s) or a shortest time of the potential target service provider (s) .
  • the interface may not display the recommended time of arrival if the processor determines not to transmit the recommended time of arrival to the target service requester.
  • FIG. 14 is a schematic diagram illustrating an exemplary interface of an application installed on a requester terminal according to some embodiments of the present disclosure.
  • the application 1400 shown in FIG. 14 is an application for providing a transportation service, such as a taxi hailing service, a chauffeur service, a delivery vehicle service, a carpool service, a bus service, a driver hiring service, a shuttle service, or the like.
  • a target service requester e.g., a passenger
  • the service requester may click the icon “Taxi” on the top of the interface for choosing the taxi hailing service.
  • the service request herein may be a potential service request.
  • the pick-up location 1402 may be inputted by way of typing, writing, using his/her voice, making a gesture, touching the interface of the application, or the like, or any combination thereof.
  • the target service requester can input the pick-up location by voice commands.
  • the target service requester can display the map 1408 on which the pick-up location 1402 is marked by a pin.
  • the target service requester may move the pick-up location by dragging the pin on the map 1408.
  • the target service requester may change the pick-up location by dragging the map 1408, and the changed pick-up location may be marked by the pin.
  • the pick-up location 1402 may be the same as or near the current location of the target service requester.
  • the pick-up location may be automatically inputted (or selected) by a GPS positioning technology implemented in the requester terminal.
  • the pick-up location may be different from the current location of the target service requester. In this case, the target service requester may walk to the pick-up location to accept the taxi service.
  • the processor may detect the potential service request from the target service requester by obtaining user input (e.g., the pick-up location and/or the drop-off location) via the first information exchange port 1101.
  • the processor may search one or more candidate service providers within a first threshold distance (e.g., 50 m, 100 m, 1 km, 2 km, 2.5 km, 3 km, 5 km, 6 km, 10 km, etc. ) .
  • a predetermined selecting rule e.g., a first predetermined selecting rule or a second predetermined selecting rule
  • the interface of the application 1400 shown in FIG. 14 there is no icons of the candidate service providers (i.e., taxis) around the pick-up location because of the map display.
  • the map 1408 may be zoomed in and out by the user.
  • the interface of the application 1400 may display icons of the candidate service providers around the pick-up location 1402 on the map 1408.
  • the processor may determine a recommended time of arrival based on a route from a current location of each potential target service provider to the pick-up location. More descriptions of the determination of the recommended time of arrival may be found elsewhere in the present disclosure (e.g., FIGs. 5-7, 11 and 12, and the descriptions thereof) .
  • the processor may determine whether to transmit the recommended time of arrival to the requester terminal 130 based on a probability value associated with a response rate of a plurality of historical service requests. More descriptions regarding the response rate and the determination of whether to send the recommended time of arrival may be found elsewhere in the present disclosure (e.g., FIGs. 7, 8 and 11, and the descriptions thereof) .
  • the processor may transmit the recommended time of arrival to the requester terminal 130.
  • the interface of the application 1400 may display the recommended time of arrival for the user. As shown in FIG. 14, the interface of the application 1400 installed on the requester terminal 130 may display “pick up after 3 mins” . That is, the recommended time for the potential target service provider to arrive at the pick-up location is 3 mins.
  • the processor may refrain from sending the recommended time of arrival to the requester terminal 130.
  • the interface of the application 1400 may not display the recommended time of arrival.
  • aspects of the present disclosure may be illustrated and described herein in any of a number of patentable classes or context including any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof. Accordingly, aspects of the present disclosure may be implemented entirely hardware, entirely software (including firmware, resident software, micro-code, etc. ) or combining software and hardware implementation that may all generally be referred to herein as a “module, ” “unit, ” “component, ” “device, ” or “system. ” Furthermore, aspects of the present disclosure may take the form of a computer program product embodied in one or more computer-readable media having computer readable program code embodied thereon. The one or more computer-readable media may include ROM, RAM, magnetic disk, optical disk, or the like, or any combination thereof.
  • a computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated signal may take any of a variety of forms, including electro-magnetic, optical, or the like, or any suitable combination thereof.
  • a computer readable signal medium may be any computer readable medium that is not a computer readable storage medium and that may communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
  • Program code embodied on a computer readable signal medium may be transmitted using any appropriate medium, including wireless, wireline, optical fiber cable, RF, or the like, or any suitable combination of the foregoing.
  • Computer program code for carrying out operations for aspects of the present disclosure may be written in any combination of one or more programming languages, including an object-oriented programming language such as Java, Scala, Smalltalk, Eiffel, JADE, Emerald, C++, C#, VB. NET, Python or the like, conventional procedural programming languages, such as the "C" programming language, Visual Basic, Fortran 2003, Perl, COBOL 2002, PHP, ABAP, dynamic programming languages such as Python, Ruby, and Groovy, or other programming languages.
  • the program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server.
  • the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN) , or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider) or in a cloud computing environment or offered as a service such as a Software as a Service (SaaS) .
  • LAN local area network
  • WAN wide area network
  • SaaS Software as a Service

Landscapes

  • Business, Economics & Management (AREA)
  • Tourism & Hospitality (AREA)
  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Economics (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • General Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Quality & Reliability (AREA)
  • Operations Research (AREA)
  • Development Economics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Primary Health Care (AREA)
  • Navigation (AREA)
  • Traffic Control Systems (AREA)

Abstract

Systems and methods for estimating time of arrival of an object are provided. The method may include detecting a potential service request from a target service requester. The method may include obtaining information of at least one potential target service provider from one or more candidate service providers. The method may include determining a recommended time of arrival based on a route from a corresponding location of each of the at least one potential target service provider to the pick-up location. The method may further include sending the recommended time of arrival to a mobile device of the target service requester.

Description

[Title established by the ISA under Rule 37.2] SYSTEMS AND METHODS FOR ESTIMATING TIME OF ARRIVAL OF OBJECT
CROSS-REFERENCE TO RELATED APPLICATIONS
This application claims priority of Chinese Patent Application No. 201811465551. X filed on December 3, 2018, the entire contents of which are hereby incorporated by reference.
TECHNICAL FIELD
This disclosure generally relates to online to offline (O2O) services, and more particularly to systems and methods for estimating time of arrival of an object.
BACKGROUND
With the rapid development of Internet, online to offline (O2O) service (e.g., an on-demand transportation service) have been more and more popular. Through an online service platform, a user can request an O2O service by an application installed in his/her mobile device (e.g., a smart phone) . In some occasions, the user may desire to determine whether to request a service based on an estimated time of arrival from a service provider’s location to his/her location. Therefore, it is desirable to develop systems and methods for estimating time of arrival of an object accurately, which may satisfy the user’s needs, and improve user experience.
SUMMARY
According to an aspect of the present disclosure, a system for estimating time of arrival of an object is provided. The system may include at least one storage medium including a set of instructions, and at least one processor in communication with the at least one storage medium. When executing the set of instructions, the at least one processor may detect a potential service request from a target service requester, wherein the potential service request includes a pick-up location and a drop-off location  of a transportation service. In response to the potential service request, the at least one processor may obtain information of at least one potential target service provider from one or more candidate service providers. The at least one processor may determine a recommended time of arrival based on a route from a corresponding location of each of the at least one potential target service provider to the pick-up location. The at least one processor may send the recommended time of arrival to a mobile device of the target service requester.
In some embodiments, the at least one processor may search one or more candidate service providers within a first threshold distance from the pick-up location, wherein each of the one or more candidate service providers is available to provide a carpool service upon the potential service request.
In some embodiments, each of the at least one potential target service provider may have accepted and have been in service to at least one service order.
In some embodiments, each of the at least one potential target service provider may be selected from the one or more candidate service providers based on a first predetermined selecting rule. The first predetermined selecting rule may be associated with one or more factors including at least one of a driving direction of a candidate service provider, a detour distance, a detour time, the number of available seats, a distance from a location of a candidate service provider to the pick-up location, a billing rate of a candidate service provider, a relation between the drop-off location and a destination of a candidate service provider, or another pick-up location related to a service order of a candidate service provider.
In some embodiments, in response to a determination that there is no potential target service provider that has accepted and has been in service to at least one service order, the at least one processor may select, from the one or more candidate service providers, at least one potential target service provider that has no service order.
In some embodiments, the at least one processor may select, from the one or  more candidate service providers, one or more potential target service providers that have no service order.
In some embodiments, each of the at least one potential target service provider that have no service order may be selected based on a second predetermined selecting rule. The second predetermined selecting rule may be associated with one or more factors including at least one of a driving direction of a candidate service provider, a score of a candidate service provider, a distance from a location of a candidate service provider to the pick-up location, or an order cancellation rate of a candidate service provider.
In some embodiments, the at least one processor may determine an estimated time of arrival based on a route from the corresponding location of each of the at least one potential target service provider to the pick-up location. The at least one processor may determine a recommended time of arrival based on the at least one determined estimated time of arrival.
In some embodiments, the at least one processor may designate a shortest time among the at least one determined estimated time of arrival or an average time of the at least one determined estimated time of arrival as the recommended time of arrival.
In some embodiments, the at least one processor may determine a response rate of a plurality of historical service requests within a second threshold distance and occurred during a predetermined time period from the pick-up location.
In some embodiments, the first threshold distance and the second threshold distance may be the same.
In some embodiments, the predetermined time period may be before the potential service request occurs and render the response rate real-time or substantially real-time to when the potential service request occurs.
In some embodiments, the at least one processor may determine whether to  send the recommended time of arrival based on a probability value associated with the response rate. In response to a determination of sending the recommended time of arrival, the at least one processor may send the recommended time of arrival to the mobile device of the target service requester. In response to a determination of not sending the recommended time of arrival, the at least one processor may refrain from sending the recommended time of arrival to the mobile device of the target service requester.
In some embodiments, the at least one processor may determine a recommended threshold according to the response rate. The at least one processor may generate a random number. The at least one processor may compare the random number and the recommended threshold. In response to a determination that the random number is no less than the recommended threshold, the at least one processor may determine to send the recommended time of arrival. In response to a determination that the random number is less than the recommended threshold, the at least one processor may determine not to send the recommended time of arrival.
In some embodiments, the at least one processor may obtain a service order associated with the potential service request. In response to the service order, the at least one processor may send an instruction for causing display of information related to the service order on the mobile device of a determined target service provider of the at least one potential target service provider.
In some embodiments, the at least one processor may send the instruction for causing display of information related to the service order on the mobile device of a potential target service provider that has been in service to at least one service order preferentially.
According to another aspect of the present disclosure, a method for estimating time of arrival of an object for an online to offline service is provided. The method may include one or more of the following operations. At least one processor may detect a  potential service request from a target service requester, the potential service request may include a pick-up location and a drop-off location of a transportation service. In response to the potential service request, the at least one processor may obtain information of at least one potential target service provider from one or more candidate service providers. The at least one processor may determine a recommended time of arrival based on a route from a corresponding location of each of the at least one potential target service provider to the pick-up location. The at least one processor may send the recommended time of arrival to a mobile device of the target service requester.
According to another aspect of the present disclosure, a non-transitory computer readable medium is provided. The non-transitory computer readable medium may comprise executable instructions that cause at least one processor to effectuate a method. The method may include one or more of the following operations. The at least one processor may detect a potential service request from a target service requester, the potential service request may include a pick-up location and a drop-off location of a transportation service. In response to the potential service request, the at least one processor may obtain information of at least one potential target service provider from one or more candidate service providers. The at least one processor may determine a recommended time of arrival based on a route from a corresponding location of each of the at least one potential target service provider to the pick-up location. The at least one processor may send the recommended time of arrival to a mobile device of the target service requester.
According to another aspect of the present disclosure, a system is provided. The system may include at least one storage medium including a set of instructions, and at least one processor in communication with the at least one storage medium. When executing the set of instructions, the at least one processor may detect a potential service request from a target service requester, the potential service request  includes a pick-up location of a transportation service. In response to the potential service request, the at least one processor may obtain information of at least one potential target service provider from one or more candidate service providers. The at least one processor may determine a recommended time of arrival based on a route from a corresponding location of each of the at least one potential target service provider to the pick-up location. The at least one processor may determine a response rate of a plurality of historical service requests within a first threshold distance and occurred during a predetermined time period from the pick-up location. The at least one processor may determine whether to send the recommended time of arrival based on a probability value associated with the response rate. In response to a determination of sending the recommended time of arrival, the at least one processor may send the recommended time of arrival to a mobile device of the target service requester. In response to a determination of not sending the recommended time of arrival, the at least one processor may refrain from sending the recommended time of arrival to the mobile device of the target service requester.
According to another aspect of the present disclosure, a method for estimating time of arrival of an object for an online to offline service is provided. The method may include one or more of the following operations. At least one processor may detect a potential service request from a target service requester, the potential service request includes a pick-up location of a transportation service. In response to the potential service request, the at least one processor may obtain information of at least one potential target service provider from one or more candidate service providers. The at least one processor may determine a recommended time of arrival based on a route from a corresponding location of each of the at least one potential target service provider to the pick-up location. The at least one processor may determine a response rate of a plurality of historical service requests within a first threshold distance and occurred during a predetermined time period from the pick-up location. The at least  one processor may determine whether to send the recommended time of arrival based on a probability value associated with the response rate. In response to a determination of sending the recommended time of arrival, the at least one processor may send the recommended time of arrival to a mobile device of the target service requester. In response to a determination of not sending the recommended time of arrival, the at least one processor may refrain from sending the recommended time of arrival to the mobile device of the target service requester.
According to another aspect of the present disclosure, a non-transitory computer readable medium is provided. The non-transitory computer readable medium may comprise executable instructions that cause at least one processor to effectuate a method. The method may include one or more of the following operations. The at least one processor may detect a potential service request from a target service requester, the potential service request includes a pick-up location of a transportation service. In response to the potential service request, the at least one processor may obtain information of at least one potential target service provider from one or more candidate service providers. The at least one processor may determine a recommended time of arrival based on a route from a corresponding location of each of the at least one potential target service provider to the pick-up location. The at least one processor may determine a response rate of a plurality of historical service requests within a first threshold distance and occurred during a predetermined time period from the pick-up location. The at least one processor may determine whether to send the recommended time of arrival based on a probability value associated with the response rate. In response to a determination of sending the recommended time of arrival, the at least one processor may send the recommended time of arrival to a mobile device of the target service requester. In response to a determination of not sending the recommended time of arrival, the at least one processor may refrain from sending the recommended time of arrival to the mobile device of the target service  requester.
Additional features will be set forth in part in the description which follows, and in part will become apparent to those skilled in the art upon examination of the following and the accompanying drawings or may be learned by production or operation of the examples. The features of the present disclosure may be realized and attained by practice or use of various aspects of the methodologies, instrumentalities and combinations set forth in the detailed examples discussed below.
BRIEF DESCRIPTION OF THE DRAWINGS
The present disclosure is further described in terms of exemplary embodiments. These exemplary embodiments are described in detail with reference to the drawings. The drawings are not to scale. These embodiments are non-limiting exemplary embodiments, in which like reference numerals represent similar structures throughout the several views of the drawings, and wherein:
FIG. 1 is a schematic diagram illustrating an exemplary online to offline (O2O) service system according to some embodiments of the present disclosure;
FIG. 2 is a schematic diagram illustrating exemplary components of a computing device according to some embodiments of the present disclosure;
FIG. 3 is a block diagram illustrating exemplary hardware and/or software components of an exemplary mobile device according to some embodiments of the present disclosure;
FIG. 4 is a block diagram illustrating an exemplary processing device according to some embodiments of the present disclosure;
FIG. 5 is a flowchart illustrating an exemplary process for determining a recommended time of arrival for an O2O service according to some embodiments of the present disclosure;
FIG. 6 is a flowchart illustrating an exemplary process for determining a recommended time of arrival for an O2O service according to some embodiments of the  present disclosure;
FIG. 7 is a flowchart illustrating an exemplary process for determining a recommended time of arrival for an O2O service according to some embodiments of the present disclosure;
FIG. 8 is a flowchart illustrating an exemplary process for determining whether to transmit a recommended time of arrival according to some embodiments of the present disclosure;
FIG. 9 is a flowchart illustrating an exemplary process for determining a recommended time of arrival according to some embodiments of the present disclosure;
FIG. 10 is a flowchart illustrating an exemplary process of node A in FIG. 9 according to some embodiments of the present disclosure;
FIG. 11 is a flowchart illustrating an exemplary process for determining whether to send a recommended time of arrival according to some embodiments of the present disclosure;
FIG. 12 is a flowchart illustrating an exemplary process for generating a service order according to some embodiments of the present disclosure;
FIG. 13 is a schematic diagram illustrating an exemplary interface of a carpool application according to some embodiments of the present disclosure; and
FIG. 14 is a schematic diagram illustrating an exemplary interface of an application installed on a requester terminal according to some embodiments of the present disclosure.
DETAILED DESCRIPTION
The following description is presented to enable any person skilled in the art to make and use the present disclosure, and is provided in the context of a particular application and its requirements. Various modifications to the disclosed embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be applied to other embodiments and applications without departing from  the spirit and scope of the present disclosure. Thus, the present disclosure is not limited to the embodiments shown, but is to be accorded the widest scope consistent with the claims.
The terminology used herein is to describe particular example embodiments only and is not intended to be limiting. As used herein, the singular forms "a, " "an, " and "the" may be intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms "comprise, " "comprises, " and/or "comprising, " "include, " "includes, " and/or "including, " when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
These and other features, and characteristics of the present disclosure, as well as the methods of operation and functions of the related elements of structure and the combination of parts and economies of manufacture, may become more apparent upon consideration of the following description with reference to the accompanying drawings, all of which form a part of this disclosure. It is to be expressly understood, however, that the drawings are for the purpose of illustration and description only and are not intended to limit the scope of the present disclosure. It is understood that the drawings are not to scale.
The flowcharts used in the present disclosure illustrate operations that systems implement according to some embodiments in the present disclosure. It is to be expressly understood, the operations of the flowchart may be implemented not in order. Conversely, the operations may be implemented in inverted order, or simultaneously. Moreover, one or more other operations may be added to the flowcharts. One or more operations may be removed from the flowcharts.
Moreover, while the system and method in the present disclosure is described  primarily in regard to distributing a request for a transportation service, it should also be understood that the present disclosure is not intended to be limiting. The system or method of the present disclosure may be applied to any other kind of O2O service. For example, the system or method of the present disclosure may be applied to transportation systems of different environments including land, ocean, aerospace, or the like, or any combination thereof. The vehicle of the transportation systems may include a taxi, a private car, a hitch, a bus, a train, a bullet train, a high speed rail, a subway, a vessel, an aircraft, a spaceship, a hot-air balloon, a driverless vehicle, or the like, or any combination thereof. The transportation system may also include any transportation system for management and/or distribution, for example, a system for transmitting and/or receiving an express. The application of the system or method of the present disclosure may be implemented on a user device and include a webpage, a plug-in of a browser, a client terminal, a custom system, an internal analysis system, an artificial intelligence robot, or the like, or any combination thereof.
The term "passenger, " "requester, " "service requester, " and "customer" in the present disclosure are used interchangeably to refer to an individual, an entity, or a tool that may request or order a service. Also, the term "driver, " "provider, " and "service provider" in the present disclosure are used interchangeably to refer to an individual, an entity, or a tool that may provide a service or facilitate the providing of the service.
The term "service request, " "request for a service, " "requests, " and "order" in the present disclosure are used interchangeably to refer to a request that may be initiated by a passenger, a service requester, a customer, a driver, a provider, a service provider, or the like, or any combination thereof. The service request may be accepted by any one of a passenger, a service requester, a customer, a driver, a provider, or a service provider. The service request may be chargeable or free.
The term "service provider terminal" and "driver terminal" in the present disclosure are used interchangeably to refer to a mobile terminal that is used by a  service provider to provide a service or facilitate the providing of the service. The term "service requester terminal" and "passenger terminal" in the present disclosure are used interchangeably to refer to a mobile terminal that is used by a service requester to request or order a service.
The positioning technology used in the present disclosure may be based on a global positioning system (GPS) , a global navigation satellite system (GLONASS) , a compass navigation system (COMPASS) , a Galileo positioning system, a quasi-zenith satellite system (QZSS) , a wireless fidelity (WiFi) positioning technology, or the like, or any combination thereof. One or more of the above positioning systems may be used interchangeably in the present disclosure.
In an aspect, the present disclosure is directed to systems and methods for estimating time of arrival of an object for an online to offline service (e.g., an on-demand transportation service) . For example, the system may determine at least one potential target service provider based on information related to a potential service request (e.g., a yet-to-be sent request) , such as a pick-up location and/or a drop-off location. In some embodiments, the at least one potential target service provider may have accepted and have been in service to at least one service order, which indicates the at least one potential target service provider may provide a carpool service. In some embodiments, the at least one potential target service providers may have no service order, which indicates the at least one potential target service provider may provide a non-carpool service. The system may determine an ETA based on a route from the corresponding location of each of the at least one potential target service provider to the pick-up location. The system may determine a recommended time of arrival based on the at least one determined estimated time of arrival. The system may send the recommended time of arrival to a mobile device of a target service requester. In some embodiments, the system may determine whether to send the recommended time of arrival based on a probability value associated with the response rate. In response to  a determination of sending the recommended time of arrival, the recommended time of arrival may be sent to the mobile device of the target service requester. Otherwise, the recommended time of arrival may be not sent to the mobile device of the target service requester. If the target service requester sends out or confirms the potential service request, the system may generate a service order and dispatch a target service provider of the at least one potential target service provider for the target service requester. In some embodiments, the system may preferentially dispatch the target service provider that can provide carpool service in response to the confirmed service request.
FIG. 1 is a schematic diagram illustrating an exemplary online to offline (O2O) service system according to some embodiments of the present disclosure. The O2O service system 100 may be a platform for data and/or information processing, for example, processing a service request from a requestor. In some embodiments, the service may be a transportation service such as a taxi hailing service, a chauffeur service, a delivery vehicle service, a carpool service, a bus service, a driver hiring service, a shuttle service, etc. In some embodiment, the service may be any online service, such as booking a meal, shopping, or the like, or any combination thereof.
The O2O service system 100 may include an information exchange port system, a server 110, a storage device 120, one or more requester terminals 130, and one or more provider terminals 140. In some embodiments, the information exchange port system may include one or more first information exchange ports 1101, and/or one or more second information exchange ports 1102. In some embodiments, the first information exchange port (s) 1101 may be configured to facilitate the communication between the O2O service system 100 and the requester terminal (s) 130. In some embodiments, the second information exchange port (s) 1102 may be configured to facilitate the communication between the O2O service system 100 and the provider terminal (s) 140. In some embodiments, the first information exchange port 1101 and the second information exchange port 1102 may be separated and/or be part of different  devices. For example, the first information exchange port 1101 may be a part of the requester terminal 130, while the second information exchange port 1102 may be part of the provider terminal 140. In some embodiments, the information exchange port system may include one or more third information exchange port (s) 1103 configured to facilitate the communication between the O2O service system 100 and the requester terminal (s) 130, and the communication between the O2O service system 100 and the provider terminal (s) 140.
In some embodiments, the server 110 may include a processing device 112. In some embodiments, the requester terminal 130 may be associated with a service requester. In some embodiments, the provider terminal 140 may be associated with a service provider. In some embodiments, the O2O service system 100 may communicate with one or more service requesters and one or more service providers via the first information exchange port 1101 and the second information exchange port 1102, respectively. For example, the server 110 of the O2O service system 100 may access information and/or data related to an order request (also referred to as service request) or a potential order request (herein also referred to as “a yet-to-be sent request” ) from the requester terminal (s) 130 via the first information exchange port (s) 1101. As another example, the server 110 of the O2O service system 100 may access information and/or data from the provider terminal (s) 140 via the second information exchange port (s) 1102. As a further example, the server 110 of the O2O service system 100 may transmit information and/or data to the requester terminal (s) 130 and/or the provider terminal (s) 140 via the information exchange port system.
In some embodiments, the server 110 may process information and/or data relating to a service request or a potential service request. A potential service request may be a yet-to-be sent request. In other words, the potential service request may be in the form of a partially-entered request that is not sent or a complete request that is not sent. That is to say, if a service requester sends out or confirms a potential service  request, the potential service request may be transformed into a valid (or regular) service request. In some embodiments, a potential service request may include a pick-up location and/or a drop-off location. In some embodiments, the server 110 may receive a potential service request from a mobile device of a service requester (e.g., the requester terminal 130) . In some embodiments, the server 110 may determine one or more candidate service providers based on a (potential) service request. In some embodiments, the server 110 may determine a recommended time of arrival to the pick-up location. In some embodiments, the server 110 may transmit the recommended time of arrival to a mobile device of a service requester via a first information exchange port 1101.
In some embodiments, the server 110 may be a single server, or a server group. The server group may be centralized, or distributed (e.g., the server 110 may be a distributed system) . In some embodiments, the server 110 may be implemented on a cloud platform. Merely by way of example, the cloud platform may include a private cloud, a public cloud, a hybrid cloud, a community cloud, a distributed cloud, an inter-cloud, a multi-cloud, or the like, or any combination thereof. In some embodiments, the server 110 may be implemented on a computing device 200 having one or more components illustrated in FIG. 2 in the present disclosure.
In some embodiments, the server 110 may include a processing device 112. The processing device 112 may process information and/or data (e.g., information or data relating to a potential service request or a service request) to perform one or more functions described in the present disclosure. For example, the processing device 112 may obtain a pick-up location of a target service requester from a requester terminal 130, determine a potential target service provider from one or more candidate service providers, and/or determine a recommended time of arrival of the potential target service provider from a current location of the potential target service provider to the pick-up location. As another example, the processing device 112 may determine  whether to transmit the recommended time of arrival to the target service requester based on a response rate of a plurality of historical service requests. In some embodiments, the processing device 112 may include one or more processors (e.g., single-core processing device (s) or multi-core processor (s) ) . Merely by way of example, the processing device 112 may include a central processing unit (CPU) , an application-specific integrated circuit (ASIC) , an application-specific instruction-set processor (ASIP) , a graphics processing unit (GPU) , a physics processing unit (PPU) , a digital signal processor (DSP) , a field programmable gate array (FPGA) , a programmable logic device (PLD) , a controller, a microcontroller unit, a reduced instruction-set computer (RISC) , a microprocessor, or the like, or any combination thereof.
The storage device 120 may store data and/or instructions (e.g., data or instructions relating to a service request or a potential service request) . In some embodiments, the storage device 120 may store data obtained or acquired from the requester terminal (s) 130 and/or the provider terminal (s) 140. In some embodiments, the storage device 120 may store data and/or instructions that the server 110 may execute or use to perform exemplary methods and/or processes described in the present disclosure. In some embodiments, the storage device 120 may include a mass storage, a removable storage, a volatile read-and-write memory, a read-only memory (ROM) , or the like, or any combination thereof. Exemplary mass storage may include a magnetic disk, an optical disk, a solid-state drive, etc. Exemplary removable storage may include a flash drive, a floppy disk, an optical disk, a memory card, a zip disk, a magnetic tape, etc. Exemplary volatile read-and-write memory may include a random-access memory (RAM) . Exemplary RAM may include a dynamic RAM (DRAM) , a double date rate synchronous dynamic RAM (DDR SDRAM) , a static RAM (SRAM) , a thyristor RAM (T-RAM) , and a zero-capacitor RAM (Z-RAM) , etc. Exemplary ROM may include a mask ROM (MROM) , a programmable ROM (PROM) , an erasable  programmable ROM (PEROM) , an electrically erasable programmable ROM (EEPROM) , a compact disk ROM (CD-ROM) , and a digital versatile disk ROM, etc. In some embodiments, the storage device 120 may be implemented on a cloud platform. Merely by way of example, the cloud platform may include a private cloud, a public cloud, a hybrid cloud, a community cloud, a distributed cloud, an inter-cloud, a multi-cloud, or the like, or any combination thereof.
In some embodiments, the storage device 120 may be connected to or communicate with the server 110. The server 110 may access data or instructions stored in the storage device 120 directly or via a network. In some embodiments, the storage device 120 may be a part of the server 110.
In some embodiments, a service requester may be a user of the requester terminal 130. In some embodiments, the user of the requester terminal 130 may be someone other than the service requester. For example, a user A of the requester terminal 130 may use the requester terminal 130 to send a service request for a user B, or receive service and/or information or instructions from the server 110. In some embodiments, a service provider may be a user of the provider terminal 140. In some embodiments, the user of the provider terminal 140 may be someone other than the service provider. For example, a user C of the provider terminal 140 may use the provider terminal 140 to receive an order request for a user D, and/or information or instructions from the server 110. In some embodiments, “requester” and “requester terminal” may be used interchangeably, “user” and “user terminal” may be used interchangeably, and “provider” and “provider terminal” may be used interchangeably. For an on-demand transportation service, a requester may be a passenger, and a provider may be a driver.
In some embodiments, the requester terminal 130 may include a mobile device 130-1, a tablet computer 130-2, a laptop computer 130-3, a built-in device in a motor vehicle 130-4, or the like, or any combination thereof. In some embodiments, the  mobile device 130-1 may include a smart home device, a wearable device, a smart mobile device, a virtual reality device, an augmented reality device, or the like, or any combination thereof. In some embodiments, the smart home device may include a smart lighting device, a control device of an intelligent electrical apparatus, a smart monitoring device, a smart television, a smart video camera, an interphone, or the like, or any combination thereof. In some embodiments, the wearable device may include a smart bracelet, a smart footgear, smart glasses, a smart helmet, a smart watch, smart clothing, a smart backpack, a smart accessory, or the like, or any combination thereof. In some embodiments, the smart mobile device may include a smartphone, a personal digital assistance (PDA) , a gaming device, a navigation device, a point of sale (POS) device, or the like, or any combination thereof. In some embodiments, the virtual reality device and/or the augmented reality device may include a virtual reality helmet, a virtual reality glass, a virtual reality patch, an augmented reality helmet, augmented reality glasses, an augmented reality patch, or the like, or any combination thereof. For example, the virtual reality device and/or the augmented reality device may include a Google TM Glass, an Oculus Rift, a HoloLens, a Gear VR, etc. In some embodiments, the built-in device in the vehicle 130-4 may include an onboard computer, an onboard television, etc. In some embodiments, the requester terminal 130 may be a device with positioning technology for locating the position of the passenger and/or the service requester.
In some embodiments, the provider terminal 140 may be a device that is similar to, or the same as the requester terminal 130. In some embodiments, the provider terminal 140 may be a device utilizing positioning technology for locating the position of a user of the provider terminal 140 (e.g., a service provider) and/or the provider terminal 140. In some embodiments, the requester terminal 130 and/or the provider terminal 140 may communicate with one or more other positioning devices to determine the position of the requester, the requester terminal 130, the provider, and/or the provider  terminal 140. In some embodiments, the requester terminal 130 and/or the provider terminal 140 may send positioning information to the server 110. In some embodiments, the requester terminal 130 and/or the provider terminal 140 may display information related to an order request (e.g., a pick-up location, a drop-off location, a route) . In some embodiments, the provider terminal 140 may periodically or real-time transmit an availability status to the server 110. The availability status may indicate whether a vehicle 150 associated with the service provider is available to carry a service requester. For example, the provider terminal 140 may transmit the positioning information and/or the availability status to the server 110 every five mins (or 1 min, two mins, etc. ) . In some embodiments, the requester terminal 130 and/or the provider terminal 140 may transmit the positioning information and/or the availability status to the server 110 each time a user (e.g., a passenger, or a driver) logs into an application associated with the online to offline service (e.g., the on-demand transportation service) .
In some embodiments, the service provider may correspond to one or more vehicles 150. The vehicles 150 may carry one or more passengers and travel to the drop-off location. The vehicles 150 may include a plurality of vehicles 150-1, 150-2, 150-3, …, etc. One vehicle may correspond to one type of services (e.g., a taxi-hailing service, a chauffeur service, an express car service, a carpool service, a bus service, a driver hire service, or a shuttle service) .
positioning system 160 may determine information associated with an object or a target, for example, the requester terminal 130, the provider terminal 140, the vehicles 150. In some embodiments, the positioning system 160 may be a global positioning system (GPS) , a global navigation satellite system (GLONASS) , a compass navigation system (COMPASS) , a BeiDou navigation satellite system, a Galileo positioning system, a quasi-zenith satellite system (QZSS) , etc. The information may include a location, an elevation, a velocity, or an acceleration of the object, or a current time. The positioning system 160 may include one or more satellites, for example, a  satellite 160-1, a satellite 160-2, and/or a satellite 160-3, etc. The satellites 160-1 through 160-3 may determine the information mentioned above independently or jointly. The positioning system 160 may transmit the information mentioned above to the requester terminal 130, the provider terminal 140, or the vehicle 150 via wireless connections. In some embodiments, the positioning system 160 may transmit the information to the O2O service system 100 directly.
Networks 170-1 through 170-3 may facilitate exchange of information and/or data. In some embodiments, one or more components of the O2O service system 100 (e.g., the server 110 and/or the storage device 120) may transmit and/or receive information and/or data to/from the requester terminal 130 and/or the provider terminal 140 via the networks 170-1 through 170-3. For example, the server 110 may obtain or acquire data relating to a potential service request via the network 170-1. As another example, the server 110 may obtain availability status of a candidate service provider via the network 170-2. In some embodiments, the networks 170-1 through 170-3 may be any type of wired or wireless networks, or combination thereof. Merely by way of example, the networks 170 may include a cable network, a wireline network, an optical fiber network, a tele communications network, an intranet, an Internet, a local area network (LAN) , a wide area network (WAN) , a wireless local area network (WLAN) , a metropolitan area network (MAN) , a wide area network (WAN) , a public telephone switched network (PSTN) , a Bluetooth TM network, a ZigBee TM network, a near field communication (NFC) network, a global system for mobile communications (GSM) network, a code-division multiple access (CDMA) network, a time-division multiple access (TDMA) network, a general packet radio service (GPRS) network, an enhanced data rate for GSM evolution (EDGE) network, a wideband code division multiple access (WCDMA) network, a high speed downlink packet access (HSDPA) network, a long term evolution (LTE) network, a user datagram protocol (UDP) network, a transmission control protocol/Internet protocol (TCP/IP) network, a short message service (SMS)  network, a wireless application protocol (WAP) network, an ultra wide band (UWB) network, an infrared ray, or the like, or any combination thereof.
FIG. 2 is a schematic diagram illustrating exemplary components of a computing device according to some embodiments of the present disclosure. The server 110, the storage device 120, the requester terminal 130 and/or the provider terminal 140 may be implemented on the computing device 200 according to some embodiments of the present disclosure. The particular system may use a functional block diagram to explain the hardware platform containing one or more user interfaces. The computer may be a computer with general or specific functions. Both types of the computers may be configured to implement any particular system according to some embodiments of the present disclosure. The computing device 200 may be configured to implement any components that perform one or more functions disclosed in the present disclosure. For example, the computing device 200 may implement any component of the O2O service system 100 as described herein. In FIGs. 1 and 2, only one such computer device is shown purely for convenience purposes. One of ordinary skill in the art would understood at the time of filing of this application that the computer functions relating to the service as described herein may be implemented in a distributed fashion on a number of similar platforms, to distribute the processing load.
The computing device 200, for example, may include one or more COM ports 250 connected to and from a network connected thereto to facilitate data communications. The computing device 200 may also include a processor (e.g., the processor 220) , in the form of one or more processors (e.g., logic circuits) , for executing program instructions. For example, the processor may include interface circuits and processing circuits therein. The interface circuits may be configured to receive electronic signals from a bus 210, wherein the electronic signals encode structured data and/or instructions for the processing circuits to process. The processing circuits may conduct logic calculations, and then determine a conclusion, a result, and/or an  instruction encoded as electronic signals. Then the interface circuits may transmit out the electronic signals from the processing circuits via the bus 210.
The exemplary computing device may include the internal communication bus 210, program storage and data storage of different forms including, for example, a disk 270, and a read-only memory (ROM) 230, or a random-access memory (RAM) 240, for various data files to be processed and/or transmitted by the computing device. The exemplary computing device may also include program instructions stored in the ROM 230, RAM 240, and/or other type of non-transitory storage medium to be executed by the processor 220. The methods and/or processes of the present disclosure may be implemented as the program instructions. The computing device 200 also includes an I/O component 260, supporting input/output between the computer and other components. The computing device 200 may also receive programming and data via network communications.
Merely for illustration, only one processor and/or processor is illustrated in FIG. 2. Multiple CPUs and/or processors are also contemplated; thus operations and/or method steps performed by one CPU and/or processor as described in the present disclosure may also be jointly or separately performed by the multiple CPUs and/or processors. For example, if in the present disclosure the CPU and/or processor of the computing device 200 executes both operation A and operation B, it should be understood that operation A and operation B may also be performed by two different CPUs and/or processors jointly or separately in the computing device 200 (e.g., the first processor executes operation A and the second processor executes operation B, or the first and second processors jointly execute operations A and B) .
FIG. 3 is a block diagram illustrating exemplary hardware and/or software components of an exemplary mobile device according to some embodiments of the present disclosure. The requester terminal 130 or the provider terminal 140 may be implemented on the mobile device 300 according to some embodiments of the present  disclosure. As illustrated in FIG. 3, the mobile device 300 may include a communication module 310, a display 320, a graphic processing unit (GPU) 330, a central processing unit (CPU) 340, an I/O 350, a memory 360, and a storage 390. The CPU 340 may include interface circuits and processing circuits similar to the processor 220. In some embodiments, any other suitable component, including but not limited to a system bus or a controller (not shown) , may also be included in the mobile device 300. In some embodiments, a mobile operating system 370 (e.g., iOS TM, Android TM, Windows Phone TM, etc. ) and one or more applications 380 may be loaded into the memory 360 from the storage 390 in order to be executed by the CPU 340. The applications 380 may include a browser or any other suitable mobile apps for receiving and rendering information relating to a service request or other information from the O2O service system 100 on the mobile device 300. User interactions with the information stream may be achieved via the I/O devices 350 and provided to the processing device 112 and/or other components of the O2O service system 100 via the network (e.g., the network 170-1, the network 170-2, or the network 170-3) .
In order to implement various modules, units and their functions described above, a computer hardware platform may be used as hardware platforms of one or more elements (e.g., a component of the server 110 described in FIG. 1) . Since these hardware elements, operating systems, and program languages are common, it may be assumed that persons skilled in the art may be familiar with these techniques and they may be able to provide information required in the O2O service according to the techniques described in the present disclosure. A computer with user interface may be used as a personal computer (PC) , or other types of workstations or terminal devices. After being properly programmed, a computer with user interface may be used as a server. It may be considered that those skilled in the art may also be familiar with such structures, programs, or general operations of this type of computer device. Thus, extra explanations are not described for the figures.
FIG. 4 is a block diagram illustrating an exemplary processing device according to some embodiments of the present disclosure. The processing device 112 may include an acquisition module 410, a potential target service provider determination module 420, a recommended time of arrival determination module 430, a response rate determination module 440 and a transmitting module 450. In some embodiments, the modules may be hardware circuits of at least part of the processing device 112. In some embodiments, the modules may be implemented as an application or set of instructions read and executed by the processing device 112. Further, the modules may be any combination of the hardware circuits and the application/instructions. For example, the modules may be the part of the processing device 112 when the processing device 112 is executing the application/set of instructions.
The acquisition module 410 may detect a potential service request. The potential service request may refer to a service request with a pick-up location and/or a drop-off location but has not been formally made (or sent) by a service requester. The potential service request may be a yet-to-be sent request. The potential service request may be in the form of a partially-entered request that is not sent or a complete request that is not sent. In some embodiments, the acquisition module 410 may use an application installed on the requester terminal 130 (e.g., the carpool application 1300 illustrated in FIG. 13) to detect the potential service request. For example, the acquisition module 410 may detect the potential service request by obtaining a status of an icon associated with a request confirmation operation, such as the “Confirm expresspool” shown in FIG. 13. The acquisition module 410 may obtain the status of an icon associated with a request confirmation operation via the at least one first information exchange port 1101. If a target service requester inputs the pick-up location and/or the drop-off location, but does not activate the icon associated with the request confirmation operation (i.e., the status of the icon associated with the request confirmation operation is inactivated) , the acquisition module 410 may obtain the  potential service request including the pick-up location and/or the drop-off location.
Upon the detection of the potential service request, the potential target service provider determination module 420 may search one or more candidate service providers within a first threshold distance from the pick-up location. The first threshold distance may be a predetermined distance, such as 50 m, 100 m, 1 km, 2 km, 2.5 km, 3 km, 5 km, 6 km, 10 km, etc. The potential target service provider determination module 420 may select at least one potential target service provider from the one or more candidate service providers. For example, the potential target service provider determination module 420 may select the at least one potential target service provider from the one or more candidate service providers based on a first predetermined selecting rule. The first predetermined selecting rule may be associated with a driving direction of a candidate service provider, a detour distance, a detour time, the number of available seats, a distance from a location of a candidate service provider to the pick-up location, a billing rate of a candidate service provider, a relation between the drop-off location and a destination of a candidate service provider, or another pick-up location related to a service order of a candidate service provider, or the like, or any combination thereof. As another example, the potential target service provider determination module 420 may select the at least one potential target service provider from the one or more candidate service providers based on a second predetermined selecting rule. The second predetermined selecting rule may be associated with a driving direction of a candidate service provider, a score of a candidate service provider, a distance from a location of a candidate service provider to the pick-up location, an order cancellation rate of a candidate service provider, or the like, or any combination thereof. In some embodiments, the potential target service provider determination module 420 may obtain information of at least one potential target service provider from one or more candidate service providers via at least one second information exchange port 1102.
The recommended time of arrival determination module 430 may determine a  recommended time of arrival from a corresponding location of a target service provider to the pick-up location. More specifically, in some embodiments, the recommended time of arrival determination module 430 may determine an estimated time of arrival (ETA) based on a route from the corresponding location of each of the at least one potential target service provider to the pick-up location. The recommended time of arrival determination module 430 may plan the route from the corresponding location of each of the at least one potential target service provider to the pick-up location. In some embodiments, the recommended time of arrival determination module 430 may invoke a third party database (e.g., a map server) to obtain the route. In some embodiments, the recommended time of arrival determination module 430 may obtain information related to the planned route from the map server. The information related to the planned route may include an estimated time of arrival to the pick-up location, a length of the route, a traffic condition, or the like, or any combination thereof. The recommended time of arrival determination module 430 may determine a recommended time of arrival based on the at least one determined estimated time of arrival. For example, a shortest time among the at least one determined estimated time of arrival may be designated as the recommended time of arrival to the pick-up location.
The response rate determination module 440 may determine a response rate of a plurality of historical service requests. The response rate may refer to a ratio of a first number (or count) of responded historical service requests and a second number (or count) of the plurality of historical service requests. The plurality of historical service requests may be within a second threshold distance and/or occurred during a predetermined time period from the pick-up location. The second threshold distance may be a predetermined distance, such as 2.5 km, 3 km, 5 km, 6 km, 10 km, etc. In some embodiments, the second threshold distance may be equal to the first threshold distance. In some embodiments, the predetermined time period may be before the potential service request occurs and/or render the response rate real-time or  substantially real-time to when the potential service request occurs. The response rate determination module 440 may determine a recommended threshold according to the response rate. The recommended threshold may be a numerical value associated with the response rate. The response rate determination module 440 may compare a random number with the recommended threshold. The response rate determination module 440 may determine whether the random number is no less than the recommended threshold. If the random number is no less than the recommended threshold, the transmitting module 450 may determine to transmit a recommended time of arrival to the requester terminal 130.
The transmitting module 450 may transmit the recommended time of arrival. For example, the transmitting module 450 may transmit (or send) the recommended time of arrival to the interface of an application installed on a mobile device of the target service requester (e.g., the requester terminal 130) via the at least one first information exchange port 1101. In some embodiments, in response to a service order, the transmitting module 450 may send an instruction for causing display of information related to the service order (e.g., the pick-up location, the drop-off location, a route from the pick-up location to the drop-off location, etc. ) on the provider terminal 140 via the at least one second information exchange port 1102.
It should be noted that the above description of the processing device 112 is merely provided for the purposes of illustration, and not intended to limit the scope of the present disclosure. For persons having ordinary skills in the art, multiple variations and modifications may be made under the teachings of the present disclosure. For example, the processing device 112 may further include a storage module facilitating data storage. However, those variations and modifications do not depart from the scope of the present disclosure.
FIG. 5 is a flowchart illustrating an exemplary process for determining a recommended time of arrival for an O2O service according to some embodiments of the  present disclosure. In some embodiments, process 500 may be executed by the O2O service system 100. For example, the process 500 may be stored in the storage device 120 and/or the storage (e.g., the ROM 230, the RAM 240, etc. ) as a form of instructions, and invoked and/or executed by the server 110 (e.g., the processing device 112 in the server 110, or the processor 220 of the processing device 112 in the server 110) . The operations of the illustrated process presented below are intended to be illustrative. In some embodiments, the process 500 may be accomplished with one or more additional operations not described, and/or without one or more of the operations discussed. Additionally, the order in which the operations of the process 500 as illustrated in FIG. 5 and described below is not intended to be limiting.
In 510, the processor (e.g., the acquisition module 410 of the processing device 112) may detect a potential service request. In some embodiments, a target service requester may input the potential service request by an application installed on a mobile device of the target service requester (e.g., the requester terminal 130) . The application may obtain user input (e.g., the potential service request) . In some embodiments, the processor may detect the potential service request according to the obtained user input via at least one first information exchange port 1101.
In some embodiments, a potential service request may refer to a service request with a pick-up location and/or a drop-off location but has not been formally made (or sent) by a service requester. The potential service request may be a yet-to-be sent request. The potential service request may be in the form of a partially-entered request that is not sent or a complete-entered request that is not sent. For example, if the target service requester desires to request a service (e.g., a transportation service) , the target service requester may input or select a pick-up location and/or a drop-off location by the application installed on the requester terminal 130 before confirming the service request (or before sending the service request to the server 110) . The yet-to-be sent request in such cases may be regarded as a potential service request. An  exemplary application may be shown in FIGs. 13 and 14.
In some embodiments, the potential service request may include a pick-up location and/or a drop-off location of a transportation service. The transportation service may include a taxi hailing service, a chauffeur service, an express car service, a carpool service, a bus service, a driver hire service, a shuttle service, or the like. In some embodiments, a service request may be initiated by a user for himself/herself or other user. While the embodiments of the present disclosure, with minor modifications known by a person skilled in the art, can be applied to the request-service-for-others scenario, the descriptions hereinafter use the request-service-for-self scenario as examples.
The pick-up location may include any location that the target service requester inputs or selects. The pick-up location and a current location of the target service requester may be the same or different. For example, the pick-up location may include a crossroad, a building, a bus station, a community gate, a park gate, a school gate, and/or any location that is easy to identify. In some embodiments, the pick-up location may be within a threshold distance from the current location of the target service requester. In some embodiments, the threshold distance may be any positive value, such as but not limited to 5 m, 10 m, 20 m, 50 m, 100 m, 200 m, 500 m, or 1000 m, or the like. In some embodiments, the threshold distance may be a default parameter stored in a storage device (e.g., the storage device 120) or be set by a user of the O2O service system 100. In some embodiments, the threshold distance may be determined by one or more components of the O2O service system 100 (e.g., the processing device 112) . In some embodiments, the threshold distance may vary with the request time, the service requester, the current location of the service requester, etc. Merely by way of example, a threshold distance with respect to a current location in a city may be less than a threshold distance with respect to the current location in a suburb. In some  embodiments, the drop-off location may be a destination where a user wants and/or needs to go.
In some embodiments, after inputting the pick-up location and/or the drop-off location, the target service requester may send the potential service request to the server 110 via a first information exchange port 1101, so as to form a valid (or regular) service request. Additionally or alternatively, the requester terminal 130 may continuously or periodically transmit information related to the potential service request to the server 110 via the first information exchange port 1101. The information related to the potential service request may include the pick-up location, the drop-off location, the current location of the target service requester, the number of passengers associated with the potential service request, or the like, or any combination thereof. The server 110 (or the processing device 112) may determine whether there is a potential service request originated from the requester terminal 130 according to the received information. In response to the received or determined potential service request, the server 110 may perform the process 500 to determine a recommended time for a potential target service provider to arrive at the pick-up location of the target service requester (also referred to herein as a recommended time of arrival) .
In 520, in response to the potential service request and before receiving a service request corresponding to the potential service request from the target service requester, the processor (e.g., the potential target service provider determination module 420 of the processing device 112) may obtain information of at least one potential target service provider from one or more candidate service providers via at least one second information exchange port 1102. The information may include, for example, a location of each of the at least one potential service provider, an availability status of each of the at least one potential service provider, an ETA from a location of each of the at least one potential service provider to the pick-up location, etc.
In some embodiments, a candidate service provider may be a service provider that is within a first threshold distance from the pick-up location and/or available to provide an O2O service (e.g., a transportation service) upon the potential service request. For example, in some embodiments, if the potential service request is associated with an express car service (or a chauffeur service, or a taxi hailing service, or the like) , a candidate service provider may be a service provider that is within a first threshold distance from the pick-up location and has no service order. As another example, if the potential service request is associated with a carpool service, a candidate service provider may be a service provider that is within the first threshold distance from the pick-up location and has accepted and/or has been in service to at least one service order, but is still available to provide the carpool service.
In some embodiments, the first threshold distance may be a predetermined distance, such as but not limited to 50 m, 100 m, 1 km, 2 km, 2.5 km, 3 km, 5 km, 6 km, 10 km, etc. The first threshold distance may be a default parameter stored in a storage (e.g., the storage device 120) or be predetermined by the O2O service system 100. In some embodiments, the first threshold distance may be determined by one or more components of the O2O service system 100 (e.g., the processing device 112) . In some embodiments, the first threshold distance may vary with different situations, such as different request time, different service areas, different weather conditions, etc. Merely by way of example, the first threshold distance corresponding to a pick-up location in city may be smaller than that in a suburb.
In some embodiments, the processor may select a potential target service provider from one or more candidate service providers. In some embodiments, the potential target service provider may be selected from the candidate service provider (s) based on one or more predetermined selecting rules. In some embodiments, if the candidate service provider (s) are available to provide a carpool service upon the potential service request and there is at least one candidate service provider that has  accepted and/or has been in service to at least one service order, the processor may select a candidate service provider that has accepted and/or has been in service to at least one service order as the potential target service provider. In this situation, the potential target service provider may be selected from the candidate service provider (s) based on a first predetermined selecting rule. In some embodiments, the first predetermined selecting rule may be associated with one or more factors including, for example, a driving direction of a candidate service provider, a detour distance, a detour time, the number of available seats, a distance from a location of a candidate service provider to the pick-up location, a billing rate of a candidate service provider, a relation between the drop-off location and a destination of a candidate service provider, another pick-up location related to a service order of a candidate service provider, or the like, or a combination thereof.
For example, the processor may determine whether the driving direction of the candidate service provider is consistent with a direction from a current location of the candidate service provider to the pick-up location. In some embodiments, if the driving direction of the candidate service provider is consistent with the direction from the current location of the candidate service provider to the pick-up location, the candidate service provider may be selected as a potential target service provider. In some embodiments, if the detour distance and/or detour time of a candidate service provider are within a threshold distance (e.g., 1 km, 3 km, 5 km, or the like) and/or a threshold time (e.g., 1 min, 1.5 mins, 2 mins, or the like) , the candidate service provider may be selected as a potential target service provider. In some embodiments, the threshold distance and/or the threshold time may be default parameters stored in a storage device 120. In some embodiments, the processor may determine the detour distance based on a planned route associated with the potential service request (e.g., a planned route from the pick-up location to the drop-off location of the potential service request) and a planned route associated with the service order (e.g., a planned route from a pick-up  location to a drop-off location of the service order) to which the candidate service provider is in service. In some embodiments, the processor may determine the detour time based on the detour distance, for example, by dividing a detour distance by an average speed of a vehicle corresponding to the candidate service provider. In some embodiments, if the number of available seats of a vehicle corresponding to a candidate service provider is larger than the number of passengers associated with the potential service request, the candidate service provider may be selected as a potential target service provider. In some embodiments, if the distance from a current location of a candidate service provider to the pick-up location of the potential service request is within a threshold distance (e.g., 1 km, 2 km, 3 km, or the like) , the candidate service provider may be selected as a potential target service provider. In some embodiments, a billing rate may refer to a cost per kilometer, such as 2.2 RMB/km.
In some embodiments, the processor may also take into consideration the relation between the drop-off location of the potential service request and a destination of a candidate service provider in selecting the potential target service provider (s) . For example, if the destination of a candidate service provider is within a predetermined range from the drop-off location, the processor may select the candidate service provider as a potential target service provider. In some embodiments, the processor may also take into consideration another pick-up location related to a service order of a candidate service provider in selecting the potential target service provider (s) . For example, if a candidate service provider has accepted a service order, and the pick-up location of the service order is located in a planned route associated with the potential service request, the candidate service provider may be selected as a potential target service provider.
It should be noted that in the selection of the potential target service provider (s) , the processor may take into consideration either all factors or one or more factors associated with the first predetermined selecting rule mentioned above. For example,  the one or more candidate service providers that meet all factors associated with the first predetermined selecting rule may be selected as the potential target service provider (s) . As another example, the one or more candidate service providers that meet at least one factor associated with the first predetermined selecting rule may be selected as the potential target service provider (s) . In some embodiments, the processor may sort the candidate service providers based on one or more factors illustrated above, and may select N (N≥1) candidate service providers as the potential target service provider (s) . For example, if there are five candidate service providers (e.g., A, B, C, D and E) , the processor may sort the billing rates of the five candidate service providers, and may select three candidate service providers that have relatively low billing rates as the potential target service providers (e.g., A, B and C) . For those skilled in the art, the way of selecting the potential target service provider (s) may be various. All such variations are within the protection scope of the present disclosure.
In some embodiments, if the candidate service provider (s) are available to provide a carpool service upon the potential service request and there is no candidate service provider that has accepted and/or has been in service to at least one service order, the processor may select a candidate service provider that has no service order as a potential target service provider. In this situation, the potential target service provider may be selected from the candidate service provider (s) based on a second predetermined selecting rule. In some embodiments, the second predetermined selecting rule may be associated with one or more factors including, for example, a driving direction of a candidate service provider, a score of a candidate service provider, a distance from a current location of a candidate service provider to the pick-up location, an order cancellation rate of a candidate service provider, or the like, or a combination thereof.
For example, if the driving direction of a candidate service provider is consistent with a direction from a current location of the candidate service provider to the pick-up  location, the processor may select the candidate service provider as a potential target service provider. As another example, if the score of a candidate service provider evaluated by service requesters is relatively high, the candidate service provider may be selected as a potential target service provider. As a further example, if the distance from a current location of a candidate service provider to the pick-up location is within a threshold distance (e.g., 1 km, 3 km, 5 km, or the like) , the candidate service provider may be selected as a potential target service provider. In some embodiments, if the order cancellation rate of a candidate service provider is relatively low, the candidate service provider may be selected as a potential target service provider.
In some embodiments, the information of the potential target service provider (s) may include, for example, vehicle information, capacity information, price information, service information, location information, performance information, or the like, or any combination thereof. In some embodiments, the vehicle information and/or the capacity information may relate to a vehicle that corresponds to a candidate service provider and can be used for providing services. In some embodiments, the vehicle information may include a vehicle type, a brand of the vehicle, the age of the vehicle, or the like, or any combination thereof. In some embodiments, the capacity information may include the number of seats in the vehicle, a load capacity (e.g., a weight of products that the vehicle can carry) of the vehicle, or the like, or any combination thereof. In some embodiments, the price information may include a fundamental price for a candidate service provider to provide services, a unit price (e.g., a price per unit distance) , a dynamitic price rate, or the like, or any combination thereof. In some embodiments, the service information may include an order acceptance rate, an order completion rate, an order cancellation rate, a service response time, the number of historical service orders of the candidate service provider, or the like, or any combination thereof. In some embodiments, the location information may include a  current location of the candidate service provider, a distance between the candidate service provider and the pick-up location of the potential service request, a number of crossroads along the route between the candidate service provider and the pick-up location, or the like, or any combination thereof. The distance between the candidate service provider and the pick-up location may be a linear distance or a distance of the route therebetween. In some embodiments, the performance information may include a performance score evaluated by requesters, a number of complaints received from requesters, or the like, or any combination thereof.
In 530, the processor (e.g., the recommended time of arrival determination module 430 of the processing device 112) may determine a recommended time of arrival. In some embodiments, the processor may determine the recommended time of arrival based on a route from a corresponding location of each of the at least one potential target service provider to the pick-up location. In some embodiments, the corresponding location of a potential target service provider may be a current location of the potential target service provider at the time the processor detects the potential service request. The recommended time of arrival may refer to a recommended time for a service provider to arrive at the pick-up location.
In some embodiments, for each potential target service provider, the processor may determine an estimated time of arrival (ETA) based on a route from the corresponding location of each potential target service provider to the pick-up location. In some embodiments, the ETA (s) may be determined based on a map service of the O2O service system 100. In some embodiments, the recommended time of arrival may be determined based on the determined ETA (s) . For example, the recommended time of arrival may be a shortest time among the determined ETA (s) . As another example, the recommended time of arrival may be an average time of the determined ETA (s) . More descriptions of the determination of the recommended time of arrival and  the ETA for each potential target service provider may be found elsewhere in the present disclosure (e.g., FIG. 6, and descriptions thereof) .
In 540, the processor (e.g., the transmitting module 450 of the processing device 112) may transmit the recommended time of arrival. In some embodiments, the processor may transmit the recommended time of arrival to a mobile device of the target service requester (e.g., the requester terminal 130) via the at least one first information exchange port 1101. The requester terminal 130 may display the recommended time of arrival in various forms, such as a message, an audio, a video, an image, or the like, or any combination thereof. For example, the recommended time of arrival may be displayed as a message, such as “1 min” , “2 mins” , “5 mins” , on the interface of an application installed on the requester terminal 130 of the target service requester. As shown in FIG. 13, the interface of a carpool application 1300 displays the recommended time of arrival, that is, “Board after 2 mins” . As another example, the recommended time of arrival may be broadcasted by the requester terminal 130 of the target service requester (e.g., via the application installed on the requester terminal 130) .
In some embodiments, the processor may determine whether to send the recommended time of arrival before transmitting the recommended time of arrival. In some embodiments, the processor may determine whether to send the recommended time of arrival based on a comparison of a random number and a recommended threshold. In some embodiments, the processor may generate a random number within a certain range (e.g., from 1 to 100) . In some embodiments, the recommended threshold may be determined based on a response rate. In some embodiments, the processor may determine the response rate of a plurality of historical service requests within a second threshold distance from the pick-up location and/or occurred during a predetermined time period. The first threshold distance illustrated in 520 and the second threshold distance illustrated here may be the same or different. In some embodiments, the response rate of the plurality of historical service requests may be a  ratio of responded historical service requests and the plurality of historical service requests. In some embodiments, the predetermined time period may be before the potential service request occurs. In some embodiments, the predetermined time period may render the response rate real-time or substantially real-time to when the potential service request occurs. In some embodiments, if the random number is no less than the recommended threshold, the processor may determine to transmit the recommended time of arrival. In some embodiments, if the random number is no greater than the recommended threshold, the processor may determine not to transmit the recommended time of arrival. More descriptions of the determination of whether to send the recommended time of arrival may be found elsewhere in the present disclosure (e.g., FIGs. 7, 8, 10, 11, and relevant descriptions thereof) . In some embodiments, if the processor determines to send the recommended time of arrival, the processor may transmit the recommended time of arrival to the mobile device of the target service requester. In some embodiments, if the processor determines not to send the recommended time of arrival, the processor may refrain from transmitting the recommended time of arrival.
It should be noted that the above description regarding the process 500 is merely provided for the purposes of illustration, and not intended to limit the scope of the present disclosure. For persons having ordinary skills in the art, multiple variations and modifications may be made under the teachings of the present disclosure. However, those variations and modifications do not depart from the scope of the present disclosure. For example, operation 520 may be divided into an operation for searching one or more candidate service providers and an operation for obtaining information of at least one potential target service provider from the one or more candidate service providers.
FIG. 6 is a flowchart illustrating an exemplary process for determining a recommended time of arrival for an O2O service according to some embodiments of the  present disclosure. In some embodiments, the process 600 may be implemented in the O2O service system 100. For example, the process 600 may be stored in the storage device 120 and/or the storage (e.g., the ROM 230, the RAM 240, etc. ) as a form of instructions, and invoked and/or executed by the server 110 (e.g., the processing device 112 in the server 110, or the processor 220 of the processing device 112 in the server 110) . The operations of the illustrated process presented below are intended to be illustrative. In some embodiments, the process 600 may be accomplished with one or more additional operations not described, and/or without one or more of the operations discussed. Additionally, the order in which the operations of the process 600 as illustrated in FIG. 6 and described below is not intended to be limiting.
In 602, the processor (e.g., the acquisition module 410 of the processing device 112) may detect a potential service request. A potential service request may be a yet-to-be sent request. If a service requester sends out or confirms the potential service request, the potential service request may be transformed into a valid (or regular) service request. In some embodiments, a potential service request may include a pick-up location and/or a drop-off location. In some embodiments, the potential service request may be a transportation service request. For example, as shown in FIG. 13, a target service requester inputs or selects a pick-up location 1302 and/or a drop-off location 1304 on the interface of a carpool application 1300, and desires to obtain an ExpressPool service, the desired ExpressPool service may be regarded as a potential service request. If the target service requester confirms the potential service request, for example, the target service requester activates “Confirm expresspool” on the interface of the carpool application 1300, the potential service request may be transformed into a valid service request. In some embodiments, the O2O service system 100 may further generate an order in response to the confirmation of the potential service request, and dispatch a target service provider for the target service requester according to the order.
In some embodiments, the processor may use the application installed on the requester terminal 130 (e.g., the carpool application 1300 illustrated in FIG. 13) to detect the potential service request. For example, the processor may detect the potential service request by obtaining a status of an icon associated with a request confirmation operation, such as the “Confirm expresspool” shown in FIG. 13. The processor may obtain the status of an icon associated with a request confirmation operation via the at least one first information exchange port 1101. If the target service requester inputs the pick-up location and/or the drop-off location, but does not activate the icon associated with the request confirmation operation (i.e., the status of the icon associated with the request confirmation operation is inactivated) , the processor may obtain the potential service request including the pick-up location and/or the drop-off location.
In 604, the processor (e.g., the potential target service provider determination module 420 of the processing device 112) may search one or more candidate service providers. In some embodiments, the processor may search the candidate service provider (s) within a first threshold distance from the pick-up location. The first threshold distance may be a predetermined distance, such as 50 m, 100 m, 1 km, 2 km, 2.5 km, 3 km, 5 km, 6 km, 10 km, etc. In some embodiments, each of the candidate service provider (s) may be available to provide a carpool service upon the potential service request. In some embodiments, mobile device (s) of the candidate service provider (s) may transmit availability status to the server 110 in real time or periodically (e.g., every 5 mins) . The availability status may indicate whether a vehicle 150 associated with a service provider is available to carry at least one passenger. In some embodiments, the processor may obtain the availability status of one or more service providers from the corresponding one or more provider terminals 140 via at least one second information exchange port 1102. The processor may determine one or more candidate service providers based on the obtained availability status of the one  or more service providers. For example, the processor may search one or more service providers within the first threshold distance from the pick-up location, and determine one or more service providers that are in availability status as the one or more candidate service providers.
In 606, the processor (e.g., the potential target service provider determination module 420 of the processing device 112) may select at least one potential target service provider from the one or more candidate service providers. In some embodiments, each of the at least one potential target service provider has accepted and/or has been in service to at least one service order. For example, if there are five candidate server providers, among which three candidate service providers have been in service to at least one service order, the processor may select the three candidate service providers as the potential target service providers.
In some embodiments, the processor may select the at least one potential target service provider from the one or more candidate service providers based on a first predetermined selecting rule. The first predetermined selecting rule may be associated with a driving direction of a candidate service provider, a detour distance, a detour time, the number of available seats, a distance from a location of a candidate service provider to the pick-up location, a billing rate of a candidate service provider, a relation between the drop-off location and a destination of a candidate service provider, or another pick-up location related to a service order of a candidate service provider, or the like, or any combination thereof.
In some embodiments, if the driving direction of a candidate service provider is consistent with the direction of a route from the pick-up location to the drop-off location, the processor may select the candidate service provider as a potential target service provider. In some embodiments, the processor may plan the route from the pick-up location to the drop-off location upon detecting the potential service request.
In some embodiments, the processor may determine the detour distance  between the planned route associated with the potential service request and a planned route associated with the service order to which a candidate service provider is in service. If the detour distance associated with a candidate service provider is less than a predetermined detour distance threshold (e.g., 1 km, 2 km, 3 km, 4 km, 5 km, 7 km, 9 km, etc. ) , the processor may select the candidate service provider as a potential target service provider.
In some embodiments, the processor may determine the detour time based on the detour distance. For example, the processor may divide a detour distance by an average speed of the vehicle 150 corresponding to a candidate service provider. If the detour time is less than a predetermined detour time threshold (e.g., 1 min, 2 mins, 3 mins, 4 mins, 5 mins, 10 mins, 15 mins, etc. ) , the processor may select the candidate service provider as a potential target service provider.
In some embodiments, if the number of available seats of the vehicle 150 corresponding to a candidate service provider meets the potential service request, the processor may select the candidate service provider as a potential target service provider.
In some embodiments, the processor may determine a distance from a current location of a candidate service provider to the pick-up location. If the distance is less than a predetermined value (e.g., 1 km, 2 km, 3 km, 5 km, etc. ) , the processor may select the candidate service provider as a potential target service provider.
In some embodiments, the processor may determine a billing rate of each of the one or more candidate service providers, and select one or more candidate service providers with relatively low billing rate as the potential target service provider. The billing rate may refer to a cost per kilometer, such as 2.2 RMB/km. For example, if there are five candidate service providers (e.g., A, B, C, D and E) , the processor may sort the billing rates of the five candidate service providers, and may select three candidate service providers that have relatively low billing rates as the potential target  service providers (e.g., A, B and C) .
In some embodiments, the processor may also take into consideration the relation between the drop-off location of the potential service request and a destination of a candidate service provider in selecting the potential target service provider (s) . For example, if the destination of a candidate service provider is within a predetermined range from the drop-off location, the processor may select the candidate service provider as a potential target service provider.
In some embodiments, the processor may also take into consideration another pick-up location related to a service order of a candidate service provider in selecting the potential target service provider (s) . For example, if a candidate service provider has accepted a service order, and the pick-up location of the service order is located in a planned route associated with the potential service request, the candidate service provider may be selected as a potential target service provider.
It should be noted that in the selection of the potential target service provider (s) , the processor may take into consideration either all factors or one or more factors associated with the first predetermined selecting rule mentioned above. For example, the one or more candidate service providers that meet all factors associated with the first predetermined selecting rule may be selected as the potential target service provider (s) . As another example, the one or more candidate service providers that meet at least one factor associated with the first predetermined selecting rule may be selected as the potential target service provider (s) . For those skilled in the art, the way of selecting the potential target service provider (s) may be varied. All such variations are within the protection scope of the present disclosure.
In 608, the processor (e.g., the recommended time of arrival determination module 430 of the processing device 112) may determine an estimated time of arrival (ETA) based on a route from the corresponding location of each of the at least one potential target service provider to the pick-up location. In some embodiments, the  processor (e.g., the potential target service provider determination module 420) may obtain the corresponding location of each of the at least one potential target service provider from the provider terminal (s) 140 via the second information exchange port 1102. The processor may further plan a route from the corresponding location of each of the at least one potential target service provider to the pick-up location. In some embodiments, the processor may determine the ETA by dividing the length of the planned route by a speed of the each of the at least one potential target service provider (i.e., a speed of a vehicle 150 associated with the each of the at least one potential target service provider) . In some embodiments, the processor may directly obtain the route from a third party database (e.g., a map server) . For example, if the processor detects the potential service request, the processor may transmit information related to the potential service request (e.g., the pick-up location and/or the drop-off location of the potential service request) to the map server, and the map server may provide a route from the corresponding location of a potential target service provider to the pick-up location of the potential service request. In some embodiments, the processor may obtain information related to the planned route from the map server. The information related to the planned route may include an estimated time of arrival to the pick-up location, a length of the route, a traffic condition, or the like, or any combination thereof. In some embodiments, the processor may further obtain the ETA based on the obtained information related to the planned route from the map server. In some embodiments, the map server may determine the ETA based on the route from the corresponding location of each of the at least one potential target service provider to the pick-up location, and the processor may obtain the ETA from the map server.
In 610, the processor (e.g., the recommended time of arrival determination module 430 of the processing device 112) may determine a recommended time of arrival based on the at least one determined estimated time of arrival. In some embodiments, the processor may determine a shortest time among the at least one  determined estimated time of arrival, and/or designate the shortest time as the recommended time of arrival to the pick-up location.
In 612, the processor (e.g., the transmitting module 450 of the processing device 112) may transmit (or send) the recommended time of arrival to a mobile device of the target service requester (e.g., the requester terminal 130) via the at least one first information exchange port 1101. The requester terminal 130 may display the recommended time of arrival in various forms, such as a message, an audio, a video, an image, or the like, or any combination thereof. For example, the recommended time of arrival may be displayed as a message, such as “1 min” , “2 mins” , “5 mins” , on the interface of an application installed on the requester terminal 130 of the target service requester. As shown in FIG. 13, the interface of a carpool application 1300 displays the recommended time of arrival, that is, “Board after 2 mins” . As another example, the recommended time of arrival may be broadcasted by the requester terminal 130 of the target service requester (e.g., via the application installed on the requester terminal 130) .
In some embodiments, if the target service requester confirms the potential server request, the potential server request may be transformed into a valid service request. In response to the valid service request, the processor may generate a service order associated with the valid service request to a target service provider for providing the carpool service. A potential target service provider having the recommended time of arrival may be determined as the target service provider. In some embodiments, in response to the service order, the processor may send an instruction for causing display of information related to the service order (e.g., the pick-up location, the drop-off location, a route from the pick-up location to the drop-off location, etc. ) on a mobile device of the determined target service provider via the at least one second information exchange port 1102. In some embodiments, before receiving the service order, the determined target service provider may be available to  provide carpool service and may have been in service to at least one other service order.
It should be noted that the above description is merely provided for the purposes of illustration, and not intended to limit the scope of the present disclosure. For persons having ordinary skills in the art, multiple variations and modifications may be made under the teachings of the present disclosure. For example,  operations  604 and 606 may be integrated into a single operation. As another example,  operations  608 and 610 may be integrated into a single operation. However, these variations and modifications still remain in the scope of the present disclosure.
FIG. 7 is a flowchart illustrating an exemplary process for determining a recommended time of arrival for an O2O service according to some embodiments of the present disclosure. In some embodiments, the process 700 may be implemented in the O2O service system 100. For example, the process 700 may be stored in the storage device 120 and/or the storage (e.g., the ROM 230, the RAM 240, etc. ) as a form of instructions, and invoked and/or executed by the server 110 (e.g., the processing device 112 in the server 110, or the processor 220 of the processing device 112 in the server 110) . The operations of the illustrated process presented below are intended to be illustrative. In some embodiments, the process 700 may be accomplished with one or more additional operations not described, and/or without one or more of the operations discussed. Additionally, the order in which the operations of the process 700 as illustrated in FIG. 7 and described below is not intended to be limiting.
Operations  702 and 704 may be similar to  operations  602 and 604 of the process 600 described above, the detailed descriptions of which may be found in this disclosure in connection with FIG. 6.
In 706, the processor (e.g., the potential target service provider determination module 420) may select at least one potential target service provider from the one or more candidate service provider. In some embodiments, each of the at least one  potential target service provider may have no service order. For example, if there are five candidate server providers, in which three candidate service providers have no service order, the processor may select the three candidate service providers as the potential target service providers.
In some embodiments, the processor may select the at least one potential target service provider from the one or more candidate service providers based on a second predetermined selecting rule. The second predetermined selecting rule may be associated with a driving direction of a candidate service provider, a score of a candidate service provider, a distance from a location of a candidate service provider to the pick-up location, an order cancellation rate of a candidate service provider, or the like, or any combination thereof.
In some embodiments, if the driving direction of a candidate service provider is consistent with the direction of a route from the pick-up location to the drop-off location, the processor may select the candidate service provider as a potential target service provider. In some embodiments, the processor may plan the route from the pick-up location to the drop-off location upon detecting the potential service request.
In some embodiments, the processor may obtain a score of a candidate service provider from the storage device 120 or the provider terminal 140. The processor may select the candidate service provider (s) with relatively high score as the potential target service provider (s) . The relatively high score of the service provider may indicate that the service provider is a premium service provider. For example, if there are five candidate service providers, such as A, B, C, D and E, the processor may sort the five scores corresponding to the five candidate service providers, and may select the three candidate service providers that have relatively high scores as the potential target service providers (e.g., A, B and C) .
In some embodiments, the processor may determine a distance from a current location of a candidate service provider to the pick-up location. If the distance is less  than a predetermined value (e.g., 1 km, 2 km, 3 km, 5 km, etc. ) , the processor may select the candidate service provider as a potential target service provider.
In some embodiments, the processor may obtain an order cancellation rate of each candidate service provider from the storage device 120 or the provider terminal 140, and select the candidate service provider (s) with relatively low order cancellation rate as the potential target service provider (s) . The order cancellation rate may refer to a ratio of a number (or count) of cancelled orders and a total number (or count) of assigned orders. For example, if the O2O system 100 assigns 50 service orders to a candidate service provider in total, and the candidate service provider cancels 5 orders therein, the order cancellation rate of the candidate service provider may be 10% (i.e., 5/50) . Merely for illustration, if there are five candidate service providers, such as A, B, C, D and E, the processor may sort the five order cancellation rates corresponding to the five candidate service providers, and may select the three candidate service providers that have relatively low order cancellation rates as the potential target service providers (e.g., A, B and C) .
Note that during selecting the at least one potential target service provider that has no service order in service, the processor may take into consideration either all factors or one or more factors associated with the second predetermined selecting rule mentioned above. For example, the one or more candidate service providers that meet all factors associated with the second predetermined selecting rule may be selected as the potential target service provider (s) . As another example, the one or more candidate service providers that meet at least one factor associated with the second predetermined selecting rule may be selected as the potential target service provider (s) . For those skilled in the art, the way of selecting the potential target service provider (s) may be varied. All such variations are within the protection scope of the present disclosure.
In 708, the processor (e.g., the transmitting module 450 of the processing  device 112) may determine whether to transmit a recommended time of arrival to a mobile device of the target service requester (e.g., the requester terminal 130) . In some embodiments, the processor may determine whether to transmit the recommended time of arrival based on a probability value associated with a response rate. For example, if the response rate is 80%, the probability of transmitting the recommended time of arrival may be 80%. In some embodiments, the processor (e.g., the response rate determination module 440) may determine the response rate of a plurality of historical service requests within a second threshold distance and/or occurred during a predetermined time period from the pick-up location. The second threshold distance may be a predetermined distance, such as 50 m, 100 m, 1 km, 2 km, 2.5 km, 3 km, 5 km, 6 km, 10 km, etc. The predetermined time period may be before the potential service request occurs and/or render the response rate real-time or substantially real-time to when the potential service request occurs. Therefore, the predetermined time period may be relatively short so that the response rate is real-time or substantially real-time. In some embodiments, the predetermined time period may be one minute before the potential service request occurs. The response rate may refer to a ratio of a first number (or count) of responded historical service requests and a second number (or count) of the plurality of historical service requests. Merely by way of example, during one minute before the potential service request occurs, the O2O service system 100 may receive 100 service orders, for example, within the second threshold distance (e.g., 10 km) from the pick-up location, and 80 service orders therein may be answered (or responded) in this one minute. The processor may determine that the response rate is 80% (i.e., 80/100) . More descriptions about the determination of whether to transmit the recommended time of arrival may be found elsewhere in the present disclosure (e.g., FIG. 8 and the descriptions thereof) .
If the processor determines to transmit the recommended time of arrival, the processor may proceed to 710. If the processor determines not to transmit the  recommended time of arrival, the processor may proceed to 716, that is, the processor may refrain from transmitting the recommended time of arrival.
In 710, the processor (e.g., the recommended time of arrival determination module 430 of the processing device 112) may determine an estimated time of arrival based on a route from the corresponding location of each of the at least one potential target service providers to the pick-up location. Operation 710 may be similar to operation 608 of the process 600 described above, the detailed descriptions of which may be found in this disclosure in connection with FIG. 6.
In 712, the processor (e.g., the recommended time of arrival determination module 430 of the processing device 112) may determine a recommended time of arrival based on the at least one determined estimated time of arrival. In some embodiments, the processor may determine a shortest time among the at least one determined estimated time of arrival, and designate the shortest time as the recommended time of arrival to the pick-up location. In some embodiments, the processor may determine an average time of the at least one determined estimated time of arrival, and designate the average time as the recommended time of arrival to the pick-up location.
In 714, the processor (e.g., the transmitting module 450 of the processing device 112) may transmit the recommended time of arrival to a mobile device of the target service requester (e.g., the requester terminal 130) via the at least one first information exchange port 1101. In some embodiments, the requester terminal 130 may display the recommended time of arrival in various forms, such as a message, an audio, a video, an image, or the like, or any combination thereof. For example, the recommended time of arrival may be displayed as a message, such as “1 min” , “2 mins” , “5 mins” , on the interface of an application installed on the requester terminal 130 of the target service requester. As shown in FIG. 13, the interface of a carpool application 1300 displays the recommended time of arrival, that is, “Board after 2 mins” .  As another example, the recommended time of arrival may be broadcasted by the requester terminal 130 of the target service requester (e.g., via the application installed on the requester terminal 130) .
It should be noted that the above description is merely provided for the purposes of illustration, and not intended to limit the scope of the present disclosure. For persons having ordinary skills in the art, multiple variations and modifications may be made under the teachings of the present disclosure. For example, operation 704 and operation 706 may be integrated into a single operation. As another example, operation 712 and operation 714 may be integrated into a single operation. As a further example, operation 708 may be performed after operations 710 and/or 712. However, these variations and modifications still remain in the scope of the present disclosure.
FIG. 8 is a flowchart illustrating an exemplary process for determining whether to transmit a recommended time of arrival according to some embodiments of the present disclosure. In some embodiments, the process 800 may be implemented in the O2O service system 100. For example, the process 800 may be stored in the storage device 120 and/or the storage (e.g., the ROM 230, the RAM 240, etc. ) as a form of instructions, and invoked and/or executed by the server 110 (e.g., the processing device 112 in the server 110, or the processor 220 of the processing device 112 in the server 110) . The operations of the illustrated process presented below are intended to be illustrative. In some embodiments, the process 800 may be accomplished with one or more additional operations not described, and/or without one or more of the operations discussed. Additionally, the order in which the operations of the process 800 as illustrated in FIG. 8 and described below is not intended to be limiting. In some embodiments, operation 708 illustrated in FIG. 7 may be performed according to the process 800.
In 802, the processor (e.g., the response rate determination module 440 of the  processing device 112) may determine the response rate of a plurality of historical service requests. In some embodiments, the plurality of historical service requests may be within a second threshold distance and/or occurred during a predetermined time period from the pick-up location. The second threshold distance may be a predetermined distance, such as 50 m, 100 m, 1 km, 2 km, 2.5 km, 3 km, 5 km, 6 km, 10 km, etc. In some embodiments, the second threshold distance may be equal to the first threshold distance. In some embodiments, the predetermined time period may be before the potential service request occurs and/or render the response rate real-time or substantially real-time to when the potential service request occurs. Therefore, the predetermined time period may be relatively short so that the response rate is real-time or substantially real-time. In some embodiments, the predetermined time period may be one minute before the potential service request occurs. The response rate may refer to a ratio of a first number (or count) of responded historical service requests and a second number (or count) of the plurality of historical service requests. Merely by way of example, during one minute before the potential service request occurs, the O2O service system 100 may receive 100 service orders, for example, within the second threshold distance (e.g., 10 km) from the pick-up location, 80 service orders therein may be answered (or responded) in this one minute. The processor may determine that the response rate is 80% (i.e., 80/100) .
In 804, the processor (e.g., the response rate determination module 440) may determine a recommended threshold according to the response rate. The recommended threshold may be a numerical value associated with the response rate. In some embodiments, the recommended threshold may be set as an integer value within a range from 1 to 100. In some embodiments, the response rate may be expressed as a percentage. In some embodiments, the recommended threshold may be set as the integer value that is equal or closest to a difference value between a denominator of the response rate and a numerator of the response rate. For example,  if the response rate is 80%, the recommended threshold may be set as 20 (i.e., 100-80=20) . As another example, if the response rate is 70%, the recommended threshold may be set as 30 (i.e., 100-70=30) . As a further example, if the response rate is 89.4%, the recommend threshold may be set as 11, an integer that is closest to the difference value (i.e., 100-89.4=10.6) between the denominator of the response rate and the numerator of the response rate.
In 806, the processor (e.g., the response rate determination module 440) may determine whether a random number is greater than the recommended threshold. More specifically, the processor may generate a random number between 1 and 100. If the random number is greater than the recommended threshold, the process may proceed to 808. In 808, the processor may determine to transmit a recommended time of arrival. In some embodiments, if the processor determines to transmit the recommended time of arrival, the processor may determine the recommended time of arrival (see  operations  710 and 712 in FIG. 7) and/or transmit the recommended time of arrival (see operation 714 in FIG. 7) . If the random number is less than the recommended threshold, the process may proceed to 810. In 810, the processor may determine not to transmit a recommended time of arrival. In some embodiments, if the processor determines not to transmit the recommended time of arrival, the processor may refrain from transmitting the recommended time of arrival (see operation 716 in FIG. 7) . If the random number is equal to the recommended threshold, the process 800 may proceed to 808 or 810 according to a rule. The rule may be set by the O2O service system 100 according to a default setting thereof, or provided by a user, etc. In some embodiments, if the random number is equal to the recommended threshold, the process 800 may proceed to 808. In some embodiments, if the random number is equal to the recommended threshold, the process 800 may proceed to 810.
For example, the processor may determine the recommended threshold as 30 according to a response rate 70%. In some embodiments, the processor may  generate a random number (e.g., 50) . In response to a determination that the generated random number is greater than the recommended threshold, the processor may determine to transmit the recommended time of arrival. In some embodiments, the processor may generate a random number (e.g., 20) . In response to a determination that the generated random number is less than the recommended threshold, the processor may determine not to transmit the recommended time of arrival. It should be understood that, in some embodiments, a probability that the random number is no less than the recommended threshold may be equal or closest to the response rate.
In some embodiments, if the response rate is 100%, the processor may directly determine to transmit the recommended time of arrival. In some embodiments, if the response rate is 0, the processor may directly determine not to transmit the recommended time of arrival.
FIG. 9 is a flowchart illustrating an exemplary process for determining a recommended time of arrival according to some embodiments of the present disclosure. FIG. 10 is a flowchart illustrating an exemplary process of node A in FIG. 9 according to some embodiments of the present disclosure. In some embodiments, the  processes  900 and 1000 may be implemented in the O2O service system 100. For example, the  processes  900 and 1000 may be stored in the storage device 120 and/or the storage (e.g., the ROM 230, the RAM 240, etc. ) as a form of instructions, and invoked and/or executed by the server 110 (e.g., the processing device 112 in the server 110, or the processor 220 of the processing device 112 in the server 110) . The operations of the illustrated process presented below are intended to be illustrative. In some embodiments, the  processes  900 and 1000 may be accomplished with one or more additional operations not described, and/or without one or more of the operations discussed. Additionally, the order in which the operations of the  processes  900 and 1000 as illustrated in FIGs. 9 and 10 and described below is not intended to be limiting.
In some embodiments, the processor (e.g., the server 110 or the processing device 112 in the server 110) may perform  operations  902 and 904 similar to  operations  602 and 604 illustrated in FIG. 6 or  operations  702 and 704 illustrated in FIG. 7, the detailed descriptions of which may be found in the present disclosure in connection with FIGs. 6 and 7. Upon detection of the potential service request, the processor may search one or more candidate service providers within the first threshold distance from the pick-up location. The one or more candidate service providers may include one or more service providers that are capable of providing transportation service, such as the service provide (s) that has accepted and has been in service to at least one service order and/or the service provider (s) that has no service order.
As illustrated in 906, the processor may determine whether there is at least one candidate service provider that has accepted and has been in service to at least one service order. In other words, the processor may determine whether there is at least one candidate service provider that is capable of providing carpool service. If it is determined that there is at least one candidate service provider that is capable of providing carpool service among the one or more candidate service providers, the process may proceed to 908. In 908, the processor may select the at least one candidate service provider that has accepted and has been in service to at least one service order as potential target service provider (s) . Then the processor may perform operations 910-914. The operations 910-914 may be similar to operations 608-612 of the process 600 described above, the detailed descriptions of which may be found in this disclosure in connection with FIG. 6.
If it is determined that there is no candidate service provider that has accepted and has been in service to at least one service order, the process may proceed to 1002 of the process 1000. In 1002, the processor may select at least one candidate service provider that has no service order as potential target service provider (s) . In 1004, the processor may determine whether to transmit a recommended time of arrival to a  mobile device of the target service requester (e.g., the requester terminal 130) . In some embodiments, the processor may determine whether to transmit the recommended time of arrival according to the process 800 illustrated in FIG. 8. If the processor determines to transmit the recommended time of arrival, the processor may further perform operations 1006-1010. The operations 1006-1010 may be similar to operations 710-714 of the process 700 described above, the detailed descriptions of which may be found in this disclosure in connection with FIG. 7. It should be noted that, if the condition illustrated in operation 906 is satisfied, the processor may perform operations 908-914 of the process 900 preferentially. In this case, in response to the potential service request, the processor may generate a service order and preferentially dispatch a target service provider of the at least one potential target service provider according to the generated service order. The target service provider may have been in service to at least one service order. The processor may send an instruction for causing display of information related to the service order on the mobile device of the target service provider (e.g., the provider terminal 140) . In some embodiments, the target service provider may perform the service order based on the displayed information.
FIG. 11 is a flowchart illustrating an exemplary process for determining whether to send a recommended time of arrival according to some embodiments of the present disclosure. In some embodiments, the process 1100 may be implemented in the O2O service system 100. For example, the process 1100 may be stored in the storage device 120 and/or the storage (e.g., the ROM 230, the RAM 240, etc. ) as a form of instructions, and invoked and/or executed by the server 110 (e.g., the processing device 112 in the server 110, or the processor 220 of the processing device 112 in the server 110) . The operations of the illustrated process presented below are intended to be illustrative. In some embodiments, the process 1100 may be accomplished with one or more additional operations not described and/or without one or more of the operations  discussed. Additionally, the order in which the operations of the process as illustrated in FIG. 11 and described below is not intended to be limiting.
In 1110, the processor (e.g., the acquisition module 410 of the processing device 112) may detect a potential service request. More descriptions of the detection of the potential service request may be found elsewhere in the present disclosure (e.g., FIGs. 5-7 and the descriptions thereof) .
In some embodiments, the potential service request may include a pick-up location and/or a drop-off location. As shown in FIG. 14, a target service requester may input the pick-up location, select the pick-up location recommended by GPS, or select the pick-up location stored in travel records on the application installed on a mobile device of the target service requester (e.g., via the I/O 350 illustrated in FIG. 3) . In some embodiments, the processor may use the application to detect the potential service request. For example, the processor may detect the potential service request by obtaining a status of an icon associated with a request confirmation operation, such as the “Confirm expresspool” shown in FIG. 13. In some embodiments, the processor may obtain the status of an icon associated with a request confirmation operation via the at least one first information exchange port 1101. If the target service requester inputs the pick-up location and/or the drop-off location, but does not activate the icon associated with the request confirmation operation (i.e., the status of the icon associated with the request confirmation operation is inactivated) , the processor may obtain the potential service request including the pick-up location and/or the drop-off location.
In 1120, the processor (e.g., the potential target service provider determination module 420 of the processing device 112) may obtain information of at least one potential target service provider from one or more candidate service providers via at least one second information exchange port 1102. In some embodiments, the candidate service providers may refer to providers that can provide an O2O service  (e.g., a transportation service) for the target service requester.
In some embodiments, the processor may select a potential target service provider from one or more candidate service providers. In some embodiments, in response to the potential service request, and before receiving a service request corresponding to the potential service request, the processor may select the at least one potential target service provider from one or more candidate service providers based on a predetermined selecting rule (e.g., the second predetermined selecting rule) . More descriptions of the second predetermined selecting rule and the selection of the at least one potential target service provider may be found elsewhere in the present disclosure (e.g., FIGs. 5-7 and the descriptions thereof) .
In 1130, the processor (e.g., the recommended time of arrival determination module 430 of the processing device 112) may determine a recommended time of arrival based on a route from a corresponding location of each of the at least one potential target service provider to the pick-up location. In some embodiments, the processor may estimate the recommended time of arrival according to a map stored in the storage device 120 and/or the storage (e.g., the ROM 230, the RAM 240, etc. ) .
In some embodiments, the recommended time of arrival may be determined based on a number (or count) of the traffic lights in the route from the corresponding location of each of the at least one potential target service provider to the pick-up location, condition (s) of the road, the weather, service provider’s experience, or the like, or any combination thereof. In some embodiments, the processor may rank the recommended time of arrival of the at least one potential target service provider. In some embodiments, for each potential target service provider, the processor may determine an estimated time of arrival (ETA) based on a route from the corresponding location of each potential target service provider to the pick-up location. In some embodiments, the processor may designate a shortest time among the at least one determined estimated time of arrival as the recommended time of arrival. In some  embodiments, the processor may designate an average time of the at least one determined estimated time of arrival as the recommended time of arrival. More descriptions of the determination of the recommended time of arrival may be found elsewhere in the present disclosure (e.g., FIGs. 5-7 and the descriptions thereof) .
In 1140, the processor (e.g., the response rate determination module 440 of the processing device 112) may determine a response rate of a plurality of historical service requests. In some embodiments, the plurality of historical service requests may be within a second threshold distance and/or occurred during a predetermined time-period from the pick-up location. The response rate may be a ratio of a first number (or count) of responded historical service requests and a second number (or count) of the plurality of historical service requests. In some embodiments, the response rate may be stored in the storage device 120 and/or the storage (e.g., the ROM 230, the RAM 240, etc. ) . The predetermined time-period may be before the potential service request occurs and/or render the response rate real-time or substantially real-time to when the potential service request occurs. More descriptions of the determination of the response rate may be found elsewhere in the present disclosure (e.g., FIG. 8 and the descriptions thereof) .
In 1150, the processor (e.g., the transmitting module 450 of the processing device 112) may determine whether to send (or transmit) the recommended time of arrival (e.g., based on the response rate determined in 1140) .
In some embodiments, the processor may determine a recommended threshold according to the response rate. In some embodiments, the recommended threshold may be a numerical value associated with the response rate. In some embodiments, the recommended threshold may be set as an integer value within a range from 1 to 100. In some embodiments, the response rate may be expressed as a percentage. In some embodiments, the recommended threshold may be set as the integer value that is equal or closest to a difference value between a denominator of the response rate  and a numerator of the response rate. For example, if the response rate is 80%, the recommended threshold may be set as 20 (i.e., 100-80=20) . As another example, if the response rate is 70%, the recommended threshold may be set as 30 (i.e., 100-70=30) . As a further example, if the response rate is 89.4%, the recommend threshold may be set as 11, an integer that is closest to the difference value (i.e., 100-89.4=10.6) between the denominator of the response rate and the numerator of the response rate.
If the processor determines to transmit the recommended time of arrival (e.g., the random number is no less than the recommended threshold) , the process may proceed to 1160. In 1160, the processor (e.g., the transmitting module 450) may send (or transmit) the recommended time of arrival to a mobile device of the target service requester (e.g., the requester terminal 130) . If the processor determines not to transmit the recommended time of arrival (e.g., the random number is no greater than the recommended threshold) , the process may proceed to 1170. In 1170, the processor may refrain from transmitting the recommended time of arrival.
For example, if the response rate is 70%, the recommended threshold is 70, and the random number is 30, accordingly, the random number 30 is no greater than the recommended threshold 70, then the processor (e.g., the transmitting module 450) may refrain from sending the recommended time of arrival. As another example, if the random number is 90, i.e., the random number 90 is no less than the recommended threshold 70, then the processor (e.g., the transmitting module 450) may transmit the recommended time of arrival.
It should be noted that the above description of the determination of whether to send the recommended time of arrival is provided for the purpose of illustration, and not intended to limit the scope of the present disclosure. For persons having ordinary skills in the art, multiple variations and modifications may be made under the teachings of the present disclosure. For example,  operations  1140 and 1150 may be performed before operation 1130. Accordingly, if the processor determines not to transmit the  recommended time of arrival, operation 1130 may be skipped (i.e., the processor may not determine the recommended time of arrival) . Those variations and modifications may not depart from the spirit and scope of this disclosure..
FIG. 12 is a flowchart illustrating an exemplary process for generating a service order according to some embodiments of the present disclosure. In some embodiments, the process 1200 may be implemented in the O2O service system 100. For example, the process 1200 may be stored in the storage device 120 and/or the storage (e.g., the ROM 230, the RAM 240, etc. ) as a form of instructions, and invoked and/or executed by the server 110 (e.g., the processing device 112 in the server 110, or the processor 220 of the processing device 112 in the server 110) . The operations of the illustrated process presented below are intended to be illustrative. In some embodiments, the process 1200 may be accomplished with one or more additional operations not described and/or without one or more of the operations discussed. Additionally, the order in which the operations of the process as illustrated in FIG. 12 and described below is not intended to be limiting.
In 1210, the processor (e.g., the acquisition module 410 of the processing device 112) may detect a potential service request from a mobile device of a target service requester (e.g., the requester terminal 130) . In some embodiments, the target service requester may input or select a pick-up location and/or a drop-off location by an application (e.g., the application 1300 or 1400) installed on the requester terminal 130 before sending or confirming a service request (e.g., a transportation service) . The processor may detect the user input and obtain information associated with the input potential service request via at least one first information exchange port 1101. More descriptions of the detection of the potential service request may be found elsewhere in the present disclosure (e.g., FIGs. 5-7 and 11, and the descriptions thereof) .
In 1220, the processor (e.g., the potential target service provider determination module 420 of the processing device 112) may obtain information of at least one  potential target service provider from one or more candidate service providers via at least one second information exchange port 1102. More descriptions of the at least one potential target service provider may be found elsewhere in the present disclosure (e.g., FIGs. 5-7 and 11, and the descriptions thereof) .
In 1230, the processor (e.g., the recommended time of arrival determination module 430 of the processing device 112) may determine a recommended time of arrival based on a route from a corresponding location of each of the at least one potential target service provider to the pick-up location. More descriptions of the determination of the recommended time of arrival may be found elsewhere in the present disclosure (e.g., FIGs. 5-7 and 11, and the descriptions thereof) .
In 1240, the processor (e.g., the transmitting module 450 of the processing device 112) may transmit the recommended time of arrival to the mobile device of the target service requester (e.g., the requester terminal 130) . In some embodiments, the requester terminal 130 may receive the recommended time of arrival and display the recommended time of arrival on the application installed on the requester terminal 130. In some embodiments, the target service requester may determine whether to confirm a service request according to the displayed recommended time of arrival. If the service request is confirmed, the requester terminal 130 may transmit information relating to the service request (e.g., the pick-up location and/or the drop-off location) to the processor via the at least one first information exchange port 1101.
In 1250, the processor (e.g., the acquisition module 410 of the processing device 112) may generate a service order associated with the potential service request in response to the confirmation of the potential service request. In some embodiments, the O2O service system 100 may dispatch a target service provider for the target service requester according to the service order. In some embodiments, the potential target service provider corresponding to the recommended time of arrival may be determined as the target service provider. In 1260, the processor (e.g., the  transmitting module 450) may send an instruction for causing display of information related to the service order to the mobile device of the determined target service provider (e.g., the provider terminal 140) via the at least one second information exchange port 1102. The instructions may direct the provider terminal 140 to display the information related to the service order (e.g., the pick-up location, the drop-off location, a route, etc. ) in various forms, such as a message, an audio, a video, an image, etc.
It should be noted that the above description of process 1200 is provided for the purpose of illustration, and not intended to limit the scope of the present disclosure. For persons having ordinary skills in the art, various variations and modifications may be conducted under the teaching of the present disclosure. For example, before the operation 1240, the processor may determine whether to transmit the recommended time of arrival. However, those variations and modifications may not depart from the spirit and scope of this disclosure.
FIG. 13 is a schematic diagram illustrating an exemplary interface of a carpool application according to some embodiments of the present disclosure. A target service requester may initiate the carpool application 1300 on the requester terminal 130 (e.g., a smart phone) . The target service requester may input or select a pick-up location 1302 and a drop-off location 1304 for a carpool service. The pick-up location 1302 and the drop-off location 1304 may be inputted by way of typing, writing, using his/her voice, making a gesture, touching the interface of the application, or the like, or any combination thereof. For example, the target service requester can input the pick-up location by voice command (s) .
Merely for illustration purposes, the requester terminal 130 may display a map 1308 on which the pick-up location 1302 is marked by a pin. In some embodiments, the target service requester may move the pick-up location by dragging the pin on the map 1308. In some embodiments, the target service requester may change the pick- up location by dragging the map 1308, and the changed pick-up location may be marked by the pin. As shown in FIG. 13, in some embodiments, the pick-up location may be the same as or near the current location of the target service requester. In some embodiments, the pick-up location may be inputted (or selected) automatically by a GPS positioning technology implemented in the target service requester. In some embodiments, the pick-up location may be different from the current location of the target service requester.
When the target service requester inputs the pick-up location 1302 and the drop-off location 1304, the user may click “ExpressPool” for choosing a carpool service. Before an icon associated with a confirmation operation (e.g., the “Confirm expresspool” button shown in FIG. 13) is clicked by the target service requester, a potential service request including the pick-up location 1302 and/or the drop-off location 1304 may be generated and transmitted to the processor by the requester terminal 130 via a first information exchange port 1101. Then, the processor may select at least one potential target service provider from the candidate service provider (s) based on the first predetermined selecting rule, and each of the at least one potential target service provider has accepted and/or has been in service to at least one service order. On the interface of the carpool application 1300 shown in FIG. 13, there is no icons of the candidate service providers around the pick-up location because of the map display. The map 1308 may be zoomed in and out by the target service requester. When the map 1308 is zoomed in, the interface of the carpool application 1300 may display icons of the candidate service providers around the pick-up location 1302 on the map 1308.
The processor may determine an estimated time of arrival (ETA) based on a route from the corresponding location of each potential target service provider to the pick-up location according to a map service of the O2O service system 100. The map service may determine a route from the current location of the each potential target service provider to the pick-up location. The processor may obtain an average speed  of the each potential target service provider. In some embodiments, the processor may determine an ETA based on the route from the current location of the each potential target service provider to the pick-up location, the average speed of the each potential target service provider, or the like, or a combination thereof. The processor may determine a recommended time of arrival based on the at least one determined ETA. More descriptions of the determination of the recommended time of arrival may be found elsewhere in the present disclosure (e.g., FIGs. 5-7, 11 and 12, and the descriptions thereof) .
In some embodiments, the processor may transmit the recommended time of arrival to a mobile device of the target service requester (e.g., the requester terminal 130) via the first information exchange port 1101. Then the recommended time of arrival may be displayed on the interface of the carpool application 1300 installed on the mobile device of the target service requester. For example, as shown in FIG. 13, the interface may display the recommended time of arrival, such as “2 mins” shown in 1306. The recommended time of arrival may indicate a recommended time for a potential target service provider to arrive at the pick-up location 1302. The “2 mins” may be an average time of the potential target service provider (s) or a shortest time of the potential target service provider (s) . In some embodiments, if the processor determines not to transmit the recommended time of arrival to the target service requester, the interface may not display the recommended time of arrival.
It should be noted that the above description regarding the figures, the words, and the interface of the carpool application 1300, are merely provided for the purposes of illustration, and not intended to limit the scope of the present disclosure. For persons having ordinary skills in the art, multiple variations and modifications may be made under the teachings of the present disclosure. However, those variations and modifications do not depart from the scope of the present disclosure. In some embodiments, the words on the interface, such as “ExpressPool” , “Express” , are merely  provided for the purposes of illustration, and may be replace by other words that can express the same meaning, such as “Carpool” .
FIG. 14 is a schematic diagram illustrating an exemplary interface of an application installed on a requester terminal according to some embodiments of the present disclosure. The application 1400 shown in FIG. 14 is an application for providing a transportation service, such as a taxi hailing service, a chauffeur service, a delivery vehicle service, a carpool service, a bus service, a driver hiring service, a shuttle service, or the like. As shown in FIG. 14, taking an application for providing a taxi hailing service as an example, a target service requester (e.g., a passenger) may initiate the application 1400 on the requester terminal 130. The service requester may click the icon “Taxi” on the top of the interface for choosing the taxi hailing service.
When the target service requester inputs a pick-up location 1402 without inputting a drop-off location, the service request herein may be a potential service request. The pick-up location 1402 may be inputted by way of typing, writing, using his/her voice, making a gesture, touching the interface of the application, or the like, or any combination thereof. For example, the target service requester can input the pick-up location by voice commands. Merely for illustration purposes, the target service requester can display the map 1408 on which the pick-up location 1402 is marked by a pin. In some embodiments, the target service requester may move the pick-up location by dragging the pin on the map 1408. In some embodiments, the target service requester may change the pick-up location by dragging the map 1408, and the changed pick-up location may be marked by the pin. In some embodiments, as shown in FIG. 14, the pick-up location 1402 may be the same as or near the current location of the target service requester. In some embodiments, the pick-up location may be automatically inputted (or selected) by a GPS positioning technology implemented in the requester terminal. In some embodiments, the pick-up location may be different from  the current location of the target service requester. In this case, the target service requester may walk to the pick-up location to accept the taxi service.
The processor may detect the potential service request from the target service requester by obtaining user input (e.g., the pick-up location and/or the drop-off location) via the first information exchange port 1101. In response to the potential service request (e.g., before inputting the drop-off location and/or confirming the potential service request) , the processor may search one or more candidate service providers within a first threshold distance (e.g., 50 m, 100 m, 1 km, 2 km, 2.5 km, 3 km, 5 km, 6 km, 10 km, etc. ) . Then, at least one potential target service provider may be selected from the one or more candidate service providers based on a predetermined selecting rule (e.g., a first predetermined selecting rule or a second predetermined selecting rule) . On the interface of the application 1400 shown in FIG. 14, there is no icons of the candidate service providers (i.e., taxis) around the pick-up location because of the map display. The map 1408 may be zoomed in and out by the user. When the map 1408 is zoomed in, the interface of the application 1400 may display icons of the candidate service providers around the pick-up location 1402 on the map 1408.
The processor may determine a recommended time of arrival based on a route from a current location of each potential target service provider to the pick-up location. More descriptions of the determination of the recommended time of arrival may be found elsewhere in the present disclosure (e.g., FIGs. 5-7, 11 and 12, and the descriptions thereof) . After the recommended time of arrival is determined, the processor may determine whether to transmit the recommended time of arrival to the requester terminal 130 based on a probability value associated with a response rate of a plurality of historical service requests. More descriptions regarding the response rate and the determination of whether to send the recommended time of arrival may be found elsewhere in the present disclosure (e.g., FIGs. 7, 8 and 11, and the descriptions thereof) .
In response to a determination of sending the recommended time of arrival, the processor may transmit the recommended time of arrival to the requester terminal 130. The interface of the application 1400 may display the recommended time of arrival for the user. As shown in FIG. 14, the interface of the application 1400 installed on the requester terminal 130 may display “pick up after 3 mins” . That is, the recommended time for the potential target service provider to arrive at the pick-up location is 3 mins.
In response to a determination of not sending the recommended time of arrival, the processor may refrain from sending the recommended time of arrival to the requester terminal 130. Thus, the interface of the application 1400 may not display the recommended time of arrival.
It should be noted that the above description regarding the figures, the words, and the interface of the application 1400, are merely provided for the purposes of illustration, and not intended to limit the scope of the present disclosure. For persons having ordinary skills in the art, multiple variations and modifications may be made under the teachings of the present disclosure. However, those variations and modifications do not depart from the scope of the present disclosure. In some embodiments, the words on the interface, such as “Taxi” , “Express” , are merely provided for the purposes of illustration, and may be replaced by other words.
Having thus described the basic concepts, it may be rather apparent to those skilled in the art after reading this detailed disclosure that the foregoing detailed disclosure is intended to be presented by way of example only and is not limiting. Various alterations, improvements, and modifications may occur and are intended to those skilled in the art, though not expressly stated herein. These alterations, improvements, and modifications are intended to be suggested by this disclosure, and are within the spirit and scope of the exemplary embodiments of this disclosure.
Moreover, certain terminology has been used to describe embodiments of the present disclosure. For example, the terms “one embodiment, ” “an embodiment, ” and  “some embodiments” mean that a particular feature, structure or characteristic described in connection with the embodiment is included in at least one embodiment of the present disclosure. Therefore, it is emphasized and should be appreciated that two or more references to “an embodiment” or “one embodiment” or “an alternative embodiment” in various portions of this specification are not necessarily all referring to the same embodiment. Furthermore, the particular features, structures or characteristics may be combined as suitable in one or more embodiments of the present disclosure.
Further, it will be appreciated by one skilled in the art, aspects of the present disclosure may be illustrated and described herein in any of a number of patentable classes or context including any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof. Accordingly, aspects of the present disclosure may be implemented entirely hardware, entirely software (including firmware, resident software, micro-code, etc. ) or combining software and hardware implementation that may all generally be referred to herein as a “module, ” “unit, ” “component, ” “device, ” or “system. ” Furthermore, aspects of the present disclosure may take the form of a computer program product embodied in one or more computer-readable media having computer readable program code embodied thereon. The one or more computer-readable media may include ROM, RAM, magnetic disk, optical disk, or the like, or any combination thereof.
A computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated signal may take any of a variety of forms, including electro-magnetic, optical, or the like, or any suitable combination thereof. A computer readable signal medium may be any computer readable medium that is not a computer readable storage medium and that may communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus,  or device. Program code embodied on a computer readable signal medium may be transmitted using any appropriate medium, including wireless, wireline, optical fiber cable, RF, or the like, or any suitable combination of the foregoing.
Computer program code for carrying out operations for aspects of the present disclosure may be written in any combination of one or more programming languages, including an object-oriented programming language such as Java, Scala, Smalltalk, Eiffel, JADE, Emerald, C++, C#, VB. NET, Python or the like, conventional procedural programming languages, such as the "C" programming language, Visual Basic, Fortran 2003, Perl, COBOL 2002, PHP, ABAP, dynamic programming languages such as Python, Ruby, and Groovy, or other programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN) , or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider) or in a cloud computing environment or offered as a service such as a Software as a Service (SaaS) .
Furthermore, the recited order of processing elements or sequences, or the use of numbers, letters, or other designations, therefore, is not intended to limit the claimed processes and methods to any order except as may be specified in the claims. Although the above disclosure discusses through various examples what is currently considered to be a variety of useful embodiments of the disclosure, it is to be understood that such detail is solely for that purpose and that the appended claims are not limited to the disclosed embodiments, but, on the contrary, are intended to cover modifications and equivalent arrangements that are within the spirit and scope of the disclosed embodiments. For example, although the implementation of various  components described above may be embodied in a hardware device, it may also be implemented as a software-only solution, e.g., an installation on an existing server or mobile device.
Similarly, it should be appreciated that in the foregoing description of embodiments of the present disclosure, various features are sometimes grouped together in a single embodiment, figure, or description thereof for the purpose of streamlining the disclosure aiding in the understanding of one or more of the various embodiments. This method of disclosure, however, is not to be interpreted as reflecting an intention that the claimed subject matter requires more features than are expressly recited in each claim. Rather, claim subject matter lie in less than all features of a single foregoing disclosed embodiment.

Claims (52)

  1. A system, comprising:
    at least one storage medium including a set of instructions;
    at least one processor in communication with the at least one storage medium, wherein when executing the set of instructions, the at least one processor is configured to cause the system to:
    detect a potential service request from a target service requester, wherein the potential service request includes a pick-up location and a drop-off location of a transportation service;
    in response to the potential service request:
    obtain information of at least one potential target service provider from one or more candidate service providers;
    determine a recommended time of arrival based on a route from a corresponding location of each of the at least one potential target service provider to the pick-up location; and
    send the recommended time of arrival to a mobile device of the target service requester.
  2. The system of claim 1, wherein the at least one processor is further configured to cause the system to:
    search one or more candidate service providers within a first threshold distance from the pick-up location, wherein each of the one or more candidate service providers is available to provide a carpool service upon the potential service request.
  3. The system of claim 1 or claim 2, wherein each of the at least one potential target service provider has accepted and has been in service to at least one service order.
  4. The system of claim 3, wherein each of the at least one potential target service provider is selected from the one or more candidate service providers based on a first predetermined selecting rule, and
    the first predetermined selecting rule is associated with one or more factors including at least one of a driving direction of a candidate service provider, a detour distance, a detour time, the number of available seats, a distance from a location of a candidate service provider to the pick-up location, a billing rate of a candidate service provider, a relation between the drop-off location and a destination of a candidate service provider, or another pick-up location related to a service order of a candidate service provider.
  5. The system of claim 3, wherein the at least one processor is further configured to cause the system to:
    in response to a determination that there is no potential target service provider that has accepted and has been in service to at least one service order,
    select, from the one or more candidate service providers, at least one potential target service provider that has no service order.
  6. The system of claim 1 or claim 2, wherein at least one of the one or more candidate service providers has no service order, and the at least one processor is further configured to cause the system to:
    select, from the one or more candidate service providers, one or more potential target service providers that have no service order.
  7. The system of claim 5 or claim 6, wherein each of the at least one potential target service provider that have no service order is selected based on a second predetermined selecting rule, and
    the second predetermined selecting rule is associated with one or more factors including at least one of a driving direction of a candidate service provider, a score of a candidate service provider, a distance from a location of a candidate service provider to the pick-up location, or an order cancellation rate of a candidate service provider.
  8. The system of any one of claims 1-7, wherein to determine a recommended time of arrival based on a route from a corresponding location of each of the at least one potential target service provider to the pick-up location, the at least one processor is further configured to cause the system to:
    determine an estimated time of arrival based on a route from the corresponding location of each of the at least one potential target service provider to the pick-up location; and
    determine a recommended time of arrival based on the at least one determined estimated time of arrival.
  9. The system of claim 8, wherein to determine a recommended time of arrival based on the at least one determined estimated time of arrival, the at least one processor is further configured to cause the system to:
    designate a shortest time among the at least one determined estimated time of arrival or an average time of the at least one determined estimated time of arrival as the recommended time of arrival.
  10. The system of claim 5 or claim 6, wherein the at least one processor is further configured to cause the system to:
    determine a response rate of a plurality of historical service requests within a second threshold distance and occurred during a predetermined time period from the pick-up location.
  11. The system of claim 10, wherein the first threshold distance and the second threshold distance are the same.
  12. The system of claim 10 or claim 11, wherein the response rate of the plurality of historical service requests is a ratio of a first count number of responded historical service requests and a second count number of the plurality of historical service requests, and
    the predetermined time period is before the potential service request occurs and renders the response rate real-time or substantially real-time to when the potential service request occurs.
  13. The system of any one of claims 10-12, wherein to send the recommended time of arrival to the target service requester, the at least one processor is further configured to cause the system to:
    determine whether to send the recommended time of arrival based on a probability value associated with the response rate;
    in response to a determination of sending the recommended time of arrival, send the recommended time of arrival to the mobile device of the target service requester; and
    in response to a determination of not sending the recommended time of arrival, refrain from sending the recommended time of arrival to the mobile device of the target service requester.
  14. The system of claim 13, wherein to determine whether to send the recommended time of arrival, the at least one processor is further configured to cause the system to:
    determine a recommended threshold according to the response rate;
    generate a random number;
    compare the random number and the recommended threshold;
    in response to a determination that the random number is no less than the recommended threshold, determine to send the recommended time of arrival; and
    in response to a determination that the random number is less than the recommended threshold, determine not to send the recommended time of arrival.
  15. The system of any one of claims 1-14, wherein the at least one processor is further configured to cause the system to:
    obtain a service order associated with the potential service request; and
    in response to the service order:
    send an instruction for causing display of information related to the service order on the mobile device of a determined target service provider of the at least one potential target service provider.
  16. The system of claim 15, wherein to send an instruction for causing display of information related to the service order on a determined target service provider of the at least one potential target service provider, the at least one processor is further configured to cause the system to:
    send the instruction for causing display of information related to the service order on the mobile device of a potential target service provider that has been in service to at least one service order preferentially.
  17. A method for estimating time of arrival of an object for an online to offline service, the method implemented on a computing device having at least one processor and at least one computer-readable storage medium, the method comprising:
    detecting a potential service request from a target service requester, wherein the  potential service request includes a pick-up location and a drop-off location of a transportation service;
    in response to the potential service request:
    obtaining information of at least one potential target service provider from one or more candidate service providers;
    determining a recommended time of arrival based on a route from a corresponding location of each of the at least one potential target service provider to the pick-up location; and
    sending the recommended time of arrival to a mobile device of the target service requester.
  18. The method of claim 17, wherein the method further comprising:
    searching one or more candidate service providers within a first threshold distance from the pick-up location, wherein each of the one or more candidate service providers is available to provide a carpool service upon the potential service request.
  19. The method of claim 17 or claim 18, wherein each of the at least one potential target service provider has accepted and has been in service to at least one service order.
  20. The method of claim 19, wherein each of the at least one potential target service provider is selected from the one or more candidate service providers based on a first predetermined selecting rule, and
    the first predetermined selecting rule is associated with one or more factors including at least one of a driving direction of a candidate service provider, a detour distance, a detour time, the number of available seats, a distance from a location of a candidate service provider to the pick-up location, a billing rate of a candidate service provider, a relation between the drop-off location and a destination of a candidate  service provider, or another pick-up location related to a service order of a candidate service provider.
  21. The method of claim 19, wherein the method further comprising:
    in response to a determination that there is no potential target service provider that has accepted and has been in service to at least one service order,
    selecting, from the one or more candidate service providers, at least one potential target service provider that has no service order.
  22. The method of claim 17 or claim 18, wherein at least one of the one or more candidate service providers has no service order, and the method further comprising:
    selecting, from the one or more candidate service providers, one or more potential target service providers that have no service order.
  23. The method of claim 21 or claim 22, wherein each of the at least one potential target service provider that have no service order is selected based on a second predetermined selecting rule, and
    the second predetermined selecting rule is associated with one or more factors including at least one of a driving direction of a candidate service provider, a score of a candidate service provider, a distance from a location of a candidate service provider to the pick-up location, or an order cancellation rate of a candidate service provider.
  24. The method of any one of claims 17-23, wherein the determining a recommended time of arrival based on a route from a corresponding location of each of the at least one potential target service provider to the pick-up location includes:
    determining an estimated time of arrival based on a route from the corresponding location of each of the at least one potential target service provider to the pick-up  location; and
    determining a recommended time of arrival based on the at least one determined estimated time of arrival.
  25. The method of claim 24, wherein the determining a recommended time of arrival based on the at least one determined estimated time of arrival includes:
    designating a shortest time among the at least one determined estimated time of arrival or an average time of the at least one determined estimated time of arrival as the recommended time of arrival.
  26. The method of claim 21 or claim 22, wherein the method further comprising:
    determining a response rate of a plurality of historical service requests within a second threshold distance and occurred during a predetermined time period from the pick-up location.
  27. The method of claim 26, wherein the first threshold distance and the second threshold distance are the same.
  28. The method of claim 26 or claim 27, wherein the response rate of the plurality of historical service requests is a ratio of a first count number of responded historical service requests and a second count number of the plurality of historical service requests, and
    the predetermined time period is before the potential service request occurs and renders the response rate real-time or substantially real-time to when the potential service request occurs.
  29. The method of any one of claims 26-28, wherein the sending the recommended  time of arrival to the target service requester includes:
    determining whether to send the recommended time of arrival based on a probability value associated with the response rate;
    in response to a determination of sending the recommended time of arrival, sending the recommended time of arrival to the mobile device of the target service requester; and
    in response to a determination of not sending the recommended time of arrival, refraining from sending the recommended time of arrival to the mobile device of the target service requester.
  30. The method of claim 29, wherein the determining whether to send the recommended time of arrival includes:
    determining a recommended threshold according to the response rate;
    generating a random number;
    comparing the random number and the recommended threshold;
    in response to a determination that the random number is no less than the recommended threshold, determining to send the recommended time of arrival; and
    in response to a determination that the random number is less than the recommended threshold, determining not to send the recommended time of arrival.
  31. The method of any one of claims 17-30, wherein the method further comprising:
    obtaining a service order associated with the potential service request; and
    in response to the service order:
    sending an instruction for causing display of information related to the service order on the mobile device of a determined target service provider of the at least one potential target service provider.
  32. The method of claim 31, wherein the sending an instruction for causing display of information related to the service order on a determined target service provider of the at least one potential target service provider includes:
    sending the instruction for causing display of information related to the service order on the mobile device of a potential target service provider that has been in service to at least one service order preferentially.
  33. A non-transitory computer readable medium, comprising at least one set of instructions for estimating time of arrival of an object for an online to offline service, wherein when executed by at least one processor of a computing device, the at least one set of instructions causes the computing device to perform a method, the method comprising:
    detecting a potential service request from a target service requester, wherein the potential service request includes a pick-up location and a drop-off location of a transportation service;
    in response to the potential service request:
    obtaining information of at least one potential target service provider from one or more candidate service providers;
    determining a recommended time of arrival based on a route from a corresponding location of each of the at least one potential target service provider to the pick-up location; and
    sending the recommended time of arrival to a mobile device of the target service requester.
  34. A system, comprising:
    at least one storage medium including a set of instructions;
    at least one processor in communication with the at least one storage medium,  wherein when executing the set of instructions, the at least one processor is configured to cause the system to:
    detect a potential service request from a target service requester, wherein the potential service request includes a pick-up location of a transportation service;
    in response to the potential service request:
    obtain information of at least one potential target service provider from one or more candidate service providers;
    determine a recommended time of arrival based on a route from a corresponding location of each of the at least one potential target service provider to the pick-up location;
    determine a response rate of a plurality of historical service requests within a first threshold distance and occurred during a predetermined time period from the pick-up location;
    determine whether to send the recommended time of arrival based on a probability value associated with the response rate;
    in response to a determination of sending the recommended time of arrival, send the recommended time of arrival to a mobile device of the target service requester; and
    in response to a determination of not sending the recommended time of arrival, refrain from sending the recommended time of arrival to the mobile device of the target service requester.
  35. The system of claim 34, wherein the at least one processor is further configured to cause the system to:
    search one or more candidate service providers within a second threshold distance from the pick-up location, wherein each of the one or more candidate service  providers is available to provide a transportation service upon the potential service request.
  36. The system of claim 34 or claim 35, wherein each of the at least one potential target service provider is selected from the one or more candidate service providers based on a predetermined selecting rule, and
    the predetermined selecting rule is associated with one or more factors including at least one of a driving direction of a candidate service provider, a score of a candidate service provider, a distance from a location of a candidate service provider to the pick-up location, or an order cancellation rate of a candidate service provider.
  37. The system of any one of claims 34-36, wherein to determine a recommended time of arrival based on a route from a corresponding location of each of the at least one potential target service provider to the pick-up location, the at least one processor is further configured to cause the system to:
    determine an estimated time of arrival based on a route from the corresponding location of each of the at least one potential target service provider to the pick-up location; and
    determine a recommended time of arrival based on the at least one determined estimated time of arrival.
  38. The system of claim 37, wherein to determine a recommended time of arrival based on the at least one determined estimated time of arrival, the at least one processor is further configured to cause the system to:
    designate a shortest time among the at least one determined estimated time of arrival or an average time of the at least one determined estimated time of arrival as the recommended time of arrival.
  39. The system of any one of claims 34-38, wherein the response rate of the plurality of historical service requests is a ratio of a first count number of responded historical service requests and a second count number of the plurality of historical service requests, and
    the predetermined time period is before the potential service request occurs and renders the response rate real-time or substantially real-time to when the potential service request occurs.
  40. The system of any one of claims 34-39, wherein to determine whether to send the recommended time of arrival, the at least one processor is further configured to cause the system to:
    determine a recommended threshold according to the response rate;
    generate a random number;
    compare the random number and the recommended threshold;
    in response to a determination that the random number is no less than the recommended threshold, determine to send the recommended time of arrival; and
    in response to a determination that the random number is less than the recommended threshold, determine not to send the recommended time of arrival.
  41. The system of any one of claims 34-40, wherein the at least one processor is further configured to cause the system to:
    obtain a service order associated with the potential service request; and
    in response to the service order:
    send an instruction for causing display of information related to the service order on the mobile device of a determined target service provider of the at least one potential target service provider.
  42. The system of claim 35, wherein the first threshold distance and the second threshold distance are the same.
  43. A method for estimating time of arrival of an object for an online to offline service, the method implemented on a computing device having at least one processor and at least one computer-readable storage medium, the method comprising:
    detecting a potential service request from a target service requester, wherein the potential service request includes a pick-up location of a transportation service;
    in response to the potential service request:
    obtaining information of at least one potential target service provider from one or more candidate service providers;
    determining a recommended time of arrival based on a route from a corresponding location of each of the at least one potential target service provider to the pick-up location;
    determining a response rate of a plurality of historical service requests within a first threshold distance and occurred during a predetermined time period from the pick-up location;
    determining whether to send the recommended time of arrival based on a probability value associated with the response rate;
    in response to a determination of sending the recommended time of arrival, sending the recommended time of arrival to the target service requester; and
    in response to a determination of not sending the recommended time of arrival, refraining from sending the recommended time of arrival to a mobile device of the target service requester.
  44. The method of claim 43, wherein the method further comprising:
    searching one or more candidate service providers within a second threshold distance from the pick-up location, wherein each of the one or more candidate service providers is available to provide a transportation service upon the potential service request.
  45. The method of claim 43 or claim 44, wherein each of the at least one potential target service provider is selected from the one or more candidate service providers based on a predetermined selecting rule, and
    the predetermined selecting rule is associated with one or more factors including at least one of a driving direction of a candidate service provider, a score of a candidate service provider, a distance from a location of a candidate service provider to the pick-up location, or an order cancellation rate of a candidate service provider
  46. The method of any one of claims 43-45, wherein the determining a recommended time of arrival based on a route from a corresponding location of each of the at least one potential target service provider to the pick-up location includes:
    determining an estimated time of arrival based on a route from the corresponding location of each of the at least one potential target service provider to the pick-up location; and
    determining a recommended time of arrival based on the at least one determined estimated time of arrival.
  47. The method of claim 46, wherein the determining a recommended time of arrival based on the at least one determined estimated time of arrival includes:
    designating a shortest time among the at least one determined estimated time of arrival or an average time of the at least one determined estimated time of arrival as the  recommended time of arrival.
  48. The method of any one of claims 43-47, wherein the response rate of the plurality of historical service requests is a ratio of a first count number of responded historical service requests and a second count number of the plurality of historical service requests, and
    the predetermined time period is before the potential service request occurs and renders the response rate real-time or substantially real-time to when the potential service request occurs.
  49. The method of any one of claims 43-48, wherein the determining whether to send the recommended time of arrival includes:
    determining a recommended threshold according to the response rate;
    generating a random number;
    comparing the random number and the recommended threshold;
    in response to a determination that the random number is no less than the recommended threshold, determining to send the recommended time of arrival; and
    in response to a determination that the random number is less than the recommended threshold, determining not to send the recommended time of arrival.
  50. The method of any one of claims 43-49, wherein the method further comprising:
    obtaining a service order associated with the potential service request; and
    in response to the service order:
    sending an instruction for causing display of information related to the service order on the mobile device of a determined target service provider of the at least one potential target service provider.
  51. The method of claim 44, wherein the first threshold distance and the second threshold distance are the same.
  52. A non-transitory computer readable medium, comprising at least one set of instructions for estimating time of arrival of an object for an online to offline service, wherein when executed by at least one processor of a computing device, the at least one set of instructions causes the computing device to perform a method, the method comprising:
    detecting a potential service request from a target service requester, wherein the potential service request includes a pick-up location of a transportation service;
    in response to the potential service request:
    obtaining information of at least one potential target service provider from one or more candidate service providers;
    determining a recommended time of arrival based on a route from a corresponding location of each of the at least one potential target service provider to the pick-up location;
    determining a response rate of a plurality of historical service requests within a first threshold distance and occurred during a predetermined time period from the pick-up location;
    determining whether to send the recommended time of arrival based on a probability value associated with the response rate;
    in response to a determination of sending the recommended time of arrival, sending the recommended time of arrival to the target service requester; and
    in response to a determination of not sending the recommended time of arrival, refraining from sending the recommended time of arrival to a mobile device of the target service requester.
PCT/CN2018/120182 2018-12-03 2018-12-11 Systems and methods for estimating time of arrival of object WO2020113614A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201811465551.X 2018-12-03
CN201811465551.XA CN111260092A (en) 2018-12-03 2018-12-03 System and method for predicting object arrival times

Publications (1)

Publication Number Publication Date
WO2020113614A1 true WO2020113614A1 (en) 2020-06-11

Family

ID=70948779

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/120182 WO2020113614A1 (en) 2018-12-03 2018-12-11 Systems and methods for estimating time of arrival of object

Country Status (2)

Country Link
CN (1) CN111260092A (en)
WO (1) WO2020113614A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111833145A (en) * 2020-07-02 2020-10-27 北京嘀嘀无限科技发展有限公司 Information display method and device, electronic equipment and storage medium
CN111859182A (en) * 2020-06-19 2020-10-30 北京嘀嘀无限科技发展有限公司 Method and system for evaluating recommended boarding points

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111882312B (en) * 2020-07-27 2022-07-12 北京嘀嘀无限科技发展有限公司 Method, device, electronic equipment and storage medium for managing vehicle service travel
CN112184161B (en) * 2020-09-25 2024-05-14 汉海信息技术(上海)有限公司 Countdown display method and device, electronic equipment and storage medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103188598A (en) * 2011-12-27 2013-07-03 中国电信股份有限公司 Intelligent group call answer taxi appointment method, intelligent group call answer taxi appointment system and taxi appointment platform
CN107862420A (en) * 2017-12-13 2018-03-30 广东机场白云信息科技有限公司 Intelligent stroke planning method and system
CN108668222A (en) * 2018-05-11 2018-10-16 京东方科技集团股份有限公司 A kind of about vehicle method and apparatus
US20180308191A1 (en) * 2017-04-25 2018-10-25 Lyft, Inc. Dynamic autonomous vehicle servicing and management
WO2018209551A1 (en) * 2017-05-16 2018-11-22 Beijing Didi Infinity Technology And Development Co., Ltd. Systems and methods for determining an estimated time of arrival

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114973677A (en) * 2016-04-18 2022-08-30 北京嘀嘀无限科技发展有限公司 Method and apparatus for determining estimated time of arrival
US9813510B1 (en) * 2016-09-26 2017-11-07 Uber Technologies, Inc. Network system to compute and transmit data based on predictive information
CN107749020A (en) * 2017-10-23 2018-03-02 重庆大学 A kind of commending system based on supposition cab-getter's trip purpose
CN108573314B (en) * 2018-04-09 2020-07-21 北京嘀嘀无限科技发展有限公司 Carpooling time determination method, system, computer device and computer storage medium

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103188598A (en) * 2011-12-27 2013-07-03 中国电信股份有限公司 Intelligent group call answer taxi appointment method, intelligent group call answer taxi appointment system and taxi appointment platform
US20180308191A1 (en) * 2017-04-25 2018-10-25 Lyft, Inc. Dynamic autonomous vehicle servicing and management
WO2018209551A1 (en) * 2017-05-16 2018-11-22 Beijing Didi Infinity Technology And Development Co., Ltd. Systems and methods for determining an estimated time of arrival
CN107862420A (en) * 2017-12-13 2018-03-30 广东机场白云信息科技有限公司 Intelligent stroke planning method and system
CN108668222A (en) * 2018-05-11 2018-10-16 京东方科技集团股份有限公司 A kind of about vehicle method and apparatus

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111859182A (en) * 2020-06-19 2020-10-30 北京嘀嘀无限科技发展有限公司 Method and system for evaluating recommended boarding points
CN111833145A (en) * 2020-07-02 2020-10-27 北京嘀嘀无限科技发展有限公司 Information display method and device, electronic equipment and storage medium

Also Published As

Publication number Publication date
CN111260092A (en) 2020-06-09

Similar Documents

Publication Publication Date Title
AU2017101872A4 (en) Systems and methods for distributing request for service
US10949780B2 (en) Online transportation reservation systems prioritizing reservations based on demand, regional transportation capacity, and historical driver scores
AU2019246881B2 (en) Systems and methods for determining a path of a moving device
US11263560B2 (en) Systems and methods for determining a reference direction related to a vehicle
US11546729B2 (en) System and method for destination predicting
AU2017101870A4 (en) Systems and methods for allocating appointment orders
WO2020113614A1 (en) Systems and methods for estimating time of arrival of object
EP3452787B1 (en) Systems and methods for route planning
AU2018280386B2 (en) Systems and methods for information processing
US20200141741A1 (en) Systems and methods for determining recommended information of a service request
US11029166B2 (en) Systems and methods for reserving a carpooling service
US20230266137A1 (en) Systems and methods for recommending points of interest

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18942589

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18942589

Country of ref document: EP

Kind code of ref document: A1